You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
14017 lines
657 KiB
14017 lines
657 KiB
window = global;
|
|
|
|
// 匿名函数主动加载 Jose
|
|
(function(e){
|
|
|
|
var c = {};
|
|
|
|
function r(n) {
|
|
|
|
window.code += "\"" + n + "\":" + e[n] + ",";
|
|
// console.log("当前调用数组-> ", n);
|
|
|
|
|
|
if (c[n]){
|
|
return c[n].exports;
|
|
}
|
|
var t = c[n] = {
|
|
i: n,
|
|
l: !1,
|
|
exports: {}
|
|
};
|
|
return e[n].call(t.exports, t, t.exports, r),
|
|
t.l = !0,
|
|
t.exports
|
|
}
|
|
|
|
r("088e");
|
|
|
|
|
|
})({
|
|
"2e21":function(t, e, n) {
|
|
(function(t) {
|
|
!function(t, r) {
|
|
r(e, n("2866"))
|
|
}(0, (function(e, n) {
|
|
"use strict";
|
|
function r(t) {
|
|
return t && "object" == typeof t && "default"in t ? t : {
|
|
default: t
|
|
}
|
|
}
|
|
var o, i, a, s = r(n), c = "undefined" != typeof globalThis ? globalThis : "undefined" != typeof window ? window : "undefined" != typeof t ? t : "undefined" != typeof self ? self : {};
|
|
!function() {
|
|
void 0 === c.window && (c.window = {
|
|
addEventListener: function() {},
|
|
removeEventListener: function() {},
|
|
setTimeout: function() {},
|
|
setInterval: function() {},
|
|
_WEBLOGGER_MOCKED_WINDOW_: !0,
|
|
global: c
|
|
}),
|
|
void 0 === c.document && (c.document = c.window.document || {
|
|
cookie: "",
|
|
addEventListener: function() {},
|
|
removeEventListener: function() {},
|
|
querySelector: function() {},
|
|
querySelectorAll: function() {}
|
|
},
|
|
void 0 === c.window.document && (c.window.document = c.document)),
|
|
void 0 === c.navigator && (c.navigator = c.window.navigator || {
|
|
userAgent: ""
|
|
},
|
|
void 0 === c.window.navigator && (c.window.navigator = c.navigator)),
|
|
void 0 === c.screen && (c.screen = c.window.screen || {},
|
|
void 0 === c.window.screen && (c.window.screen = c.screen)),
|
|
void 0 === c.history && (c.history = c.window.history || {},
|
|
void 0 === c.window.history && (c.window.history = c.history)),
|
|
void 0 === c.location && (c.location = c.window.location || {
|
|
hostname: "",
|
|
search: "",
|
|
href: "",
|
|
origin: ""
|
|
},
|
|
void 0 === c.window.location && (c.window.location = c.location));
|
|
try {
|
|
void 0 === c.localStorage && (c.localStorage = c.window.localStorage || {
|
|
getItem: function() {},
|
|
setItem: function() {}
|
|
},
|
|
void 0 === c.window.localStorage && (c.window.localStorage = c.localStorage))
|
|
} catch (e) {}
|
|
}(),
|
|
Object.defineProperty || (Object.defineProperty = function(t, e, n) {
|
|
t[e] = "[object Object]" === Object.prototype.toString.call(n) && n.hasOwnProperty("value") ? n.value : n
|
|
}
|
|
),
|
|
Object.assign || Object.defineProperty(Object, "assign", {
|
|
value: function(t) {
|
|
if (null === t)
|
|
throw new TypeError("Cannot convert undefined or null to object");
|
|
for (var e = Object(t), n = 1; n < arguments.length; n++) {
|
|
var r = arguments[n];
|
|
if (null !== r)
|
|
for (var o in r)
|
|
Object.prototype.hasOwnProperty.call(r, o) && (e[o] = r[o])
|
|
}
|
|
return e
|
|
},
|
|
writable: !0,
|
|
configurable: !0
|
|
}),
|
|
Function.prototype.bind || (Function.prototype.bind = function(t) {
|
|
if ("function" != typeof this)
|
|
throw new TypeError("Function.prototype.bind - what is trying to be bound is not callable");
|
|
var e = Array.prototype.slice.call(arguments, 1)
|
|
, n = this
|
|
, r = function() {}
|
|
, o = function() {
|
|
var o = this instanceof r ? this : t;
|
|
return n.apply(o, e.concat(Array.prototype.slice.call(arguments)))
|
|
};
|
|
return this.prototype && (r.prototype = this.prototype),
|
|
o.prototype = new r,
|
|
o
|
|
}
|
|
),
|
|
Array.prototype.indexOf || (Array.prototype.indexOf = function(t, e) {
|
|
var n;
|
|
if (null == this)
|
|
throw new TypeError('"this" is null or not defined');
|
|
var r = Object(this)
|
|
, o = r.length >>> 0;
|
|
if (0 === o)
|
|
return -1;
|
|
var i = +e || 0;
|
|
if (Math.abs(i) === 1 / 0 && (i = 0),
|
|
i >= o)
|
|
return -1;
|
|
for (n = Math.max(i >= 0 ? i : o - Math.abs(i), 0); n < o; ) {
|
|
if (n in r && r[n] === t)
|
|
return n;
|
|
n++
|
|
}
|
|
return -1
|
|
}
|
|
),
|
|
Object.keys || (Object.keys = (o = Object.prototype.hasOwnProperty,
|
|
i = !{
|
|
toString: null
|
|
}.propertyIsEnumerable("toString"),
|
|
a = ["toString", "toLocaleString", "valueOf", "hasOwnProperty", "isPrototypeOf", "propertyIsEnumerable", "constructor"],
|
|
function(t) {
|
|
if ("object" != typeof t && "function" != typeof t || null === t)
|
|
throw new TypeError("Object.keys called on non-object");
|
|
var e = [];
|
|
for (var n in t)
|
|
o.call(t, n) && e.push(n);
|
|
if (i)
|
|
for (var r = 0, s = a; r < s.length; r++) {
|
|
var c = s[r];
|
|
o.call(t, c) && e.push(c)
|
|
}
|
|
return e
|
|
}
|
|
)),
|
|
Array.prototype.forEach || (Array.prototype.forEach = function(t, e) {
|
|
var n, r;
|
|
if (null == this)
|
|
throw new TypeError(" this is null or not defined");
|
|
var o = Object(this)
|
|
, i = o.length >>> 0;
|
|
if ("function" != typeof t)
|
|
throw new TypeError(t + " is not a function");
|
|
for (arguments.length > 1 && (n = e),
|
|
r = 0; r < i; ) {
|
|
var a = void 0;
|
|
r in o && (a = o[r],
|
|
t.call(n, a, r, o)),
|
|
r++
|
|
}
|
|
}
|
|
);
|
|
var u = function(t, e) {
|
|
return (u = Object.setPrototypeOf || {
|
|
__proto__: []
|
|
}instanceof Array && function(t, e) {
|
|
t.__proto__ = e
|
|
}
|
|
|| function(t, e) {
|
|
for (var n in e)
|
|
e.hasOwnProperty(n) && (t[n] = e[n])
|
|
}
|
|
)(t, e)
|
|
};
|
|
function l(t, e) {
|
|
function n() {
|
|
this.constructor = t
|
|
}
|
|
u(t, e),
|
|
t.prototype = null === e ? Object.create(e) : (n.prototype = e.prototype,
|
|
new n)
|
|
}
|
|
var d = function() {
|
|
return (d = Object.assign || function(t) {
|
|
for (var e, n = 1, r = arguments.length; n < r; n++)
|
|
for (var o in e = arguments[n])
|
|
Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o]);
|
|
return t
|
|
}
|
|
).apply(this, arguments)
|
|
};
|
|
function p(t, e) {
|
|
var n = {};
|
|
for (var r in t)
|
|
Object.prototype.hasOwnProperty.call(t, r) && e.indexOf(r) < 0 && (n[r] = t[r]);
|
|
if (null != t && "function" == typeof Object.getOwnPropertySymbols) {
|
|
var o = 0;
|
|
for (r = Object.getOwnPropertySymbols(t); o < r.length; o++)
|
|
e.indexOf(r[o]) < 0 && Object.prototype.propertyIsEnumerable.call(t, r[o]) && (n[r[o]] = t[r[o]])
|
|
}
|
|
return n
|
|
}
|
|
function h(t, e, n, r) {
|
|
return new (n || (n = Promise))((function(o, i) {
|
|
function a(t) {
|
|
try {
|
|
c(r.next(t))
|
|
} catch (t) {
|
|
i(t)
|
|
}
|
|
}
|
|
function s(t) {
|
|
try {
|
|
c(r.throw(t))
|
|
} catch (t) {
|
|
i(t)
|
|
}
|
|
}
|
|
function c(t) {
|
|
var e;
|
|
t.done ? o(t.value) : (e = t.value,
|
|
e instanceof n ? e : new n((function(t) {
|
|
t(e)
|
|
}
|
|
))).then(a, s)
|
|
}
|
|
c((r = r.apply(t, e || [])).next())
|
|
}
|
|
))
|
|
}
|
|
function m(t, e) {
|
|
var n, r, o, i, a = {
|
|
label: 0,
|
|
sent: function() {
|
|
if (1 & o[0])
|
|
throw o[1];
|
|
return o[1]
|
|
},
|
|
trys: [],
|
|
ops: []
|
|
};
|
|
return i = {
|
|
next: s(0),
|
|
throw: s(1),
|
|
return: s(2)
|
|
},
|
|
"function" == typeof Symbol && (i[Symbol.iterator] = function() {
|
|
return this
|
|
}
|
|
),
|
|
i;
|
|
function s(i) {
|
|
return function(s) {
|
|
return function(i) {
|
|
if (n)
|
|
throw new TypeError("Generator is already executing.");
|
|
for (; a; )
|
|
try {
|
|
if (n = 1,
|
|
r && (o = 2 & i[0] ? r.return : i[0] ? r.throw || ((o = r.return) && o.call(r),
|
|
0) : r.next) && !(o = o.call(r, i[1])).done)
|
|
return o;
|
|
switch (r = 0,
|
|
o && (i = [2 & i[0], o.value]),
|
|
i[0]) {
|
|
case 0:
|
|
case 1:
|
|
o = i;
|
|
break;
|
|
case 4:
|
|
return a.label++,
|
|
{
|
|
value: i[1],
|
|
done: !1
|
|
};
|
|
case 5:
|
|
a.label++,
|
|
r = i[1],
|
|
i = [0];
|
|
continue;
|
|
case 7:
|
|
i = a.ops.pop(),
|
|
a.trys.pop();
|
|
continue;
|
|
default:
|
|
if (o = a.trys,
|
|
!((o = o.length > 0 && o[o.length - 1]) || 6 !== i[0] && 2 !== i[0])) {
|
|
a = 0;
|
|
continue
|
|
}
|
|
if (3 === i[0] && (!o || i[1] > o[0] && i[1] < o[3])) {
|
|
a.label = i[1];
|
|
break
|
|
}
|
|
if (6 === i[0] && a.label < o[1]) {
|
|
a.label = o[1],
|
|
o = i;
|
|
break
|
|
}
|
|
if (o && a.label < o[2]) {
|
|
a.label = o[2],
|
|
a.ops.push(i);
|
|
break
|
|
}
|
|
o[2] && a.ops.pop(),
|
|
a.trys.pop();
|
|
continue
|
|
}
|
|
i = e.call(t, a)
|
|
} catch (t) {
|
|
i = [6, t],
|
|
r = 0
|
|
} finally {
|
|
n = o = 0
|
|
}
|
|
if (5 & i[0])
|
|
throw i[1];
|
|
return {
|
|
value: i[0] ? i[1] : void 0,
|
|
done: !0
|
|
}
|
|
}([i, s])
|
|
}
|
|
}
|
|
}
|
|
function f() {
|
|
for (var t = 0, e = 0, n = arguments.length; e < n; e++)
|
|
t += arguments[e].length;
|
|
var r = Array(t)
|
|
, o = 0;
|
|
for (e = 0; e < n; e++)
|
|
for (var i = arguments[e], a = 0, s = i.length; a < s; a++,
|
|
o++)
|
|
r[o] = i[a];
|
|
return r
|
|
}
|
|
var g, y, v = {
|
|
unknown: 0,
|
|
none: 1,
|
|
wifi: 2,
|
|
"4g": 3,
|
|
"3g": 4,
|
|
"2g": 5,
|
|
"5g": 7,
|
|
"slow-2g": 5
|
|
};
|
|
!function(t) {
|
|
t.CLICK = "CLICK",
|
|
t.DOUBLE_CLICK = "DOUBLE_CLICK",
|
|
t.TRIPLE_CLICK = "TRIPLE_CLICK",
|
|
t.LONG_PRESS = "LONG_PRESS",
|
|
t.PULL = "PULL",
|
|
t.DRAG = "DRAG",
|
|
t.SCALE = "SCALE",
|
|
t.PULL_DOWN = "PULL_DOWN",
|
|
t.PULL_UP = "PULL_UP",
|
|
t.AUTO = "AUTO"
|
|
}(g || (g = {})),
|
|
function(t) {
|
|
t.PV = "PV",
|
|
t.SHOW = "SHOW",
|
|
t.VIDEO = "VIDEO",
|
|
t.CUSTOM = "CUSTOM",
|
|
t.RADAR = "RADAR"
|
|
}(y || (y = {}));
|
|
var b = {
|
|
sessionId: "",
|
|
appDevicePackageReady: !1,
|
|
identityPackageReady: !1
|
|
}
|
|
, S = function() {
|
|
function t(t, e) {
|
|
switch (this.page = "",
|
|
this.identity = "",
|
|
e) {
|
|
case "web":
|
|
this.page_type = 2;
|
|
break;
|
|
case "native":
|
|
this.page_type = 1;
|
|
break;
|
|
case "mina":
|
|
this.page_type = 3;
|
|
break;
|
|
default:
|
|
this.page_type = 0
|
|
}
|
|
this.update(t.page, t.params)
|
|
}
|
|
return t.prototype.update = function(t, e) {
|
|
void 0 === t && (t = ""),
|
|
t && t !== this.page && (this.page = t,
|
|
this.identity = this.generatePageId(t)),
|
|
e && (this.params = Object.assign(this.params || {}, e))
|
|
}
|
|
,
|
|
t.prototype.toJSON = function() {
|
|
return {
|
|
page: this.page,
|
|
identity: this.identity,
|
|
page_type: this.page_type,
|
|
params: JSON.stringify(this.params)
|
|
}
|
|
}
|
|
,
|
|
t.prototype.generatePageId = function(t) {
|
|
return t + (new Date).getTime()
|
|
}
|
|
,
|
|
t
|
|
}()
|
|
, w = ["Kwai", "Kwai_Lite", "Kwai_Pro", "livemate", "ksthanos", "ksNebula", "ksnebula", "kwaiying", "pearl", "kinder", "m2u", "LOLita", "XFunCore", "ACVideoCore", "ZIKZAK"].concat(["UVideo", "Vstatus", "Kwaigo", "MvMaster"]);
|
|
function L() {
|
|
for (var t = [], e = 0; e < arguments.length; e++)
|
|
t[e] = arguments[e];
|
|
try {
|
|
var n = null === console || void 0 === console ? void 0 : console.error;
|
|
return n && n.call.apply(n, f([console], t))
|
|
} catch (t) {
|
|
return
|
|
}
|
|
}
|
|
function k(t, e, n, r) {
|
|
return "attachEvent"in t ? t.attachEvent("on" + e, n) : t.addEventListener(e, n, r)
|
|
}
|
|
function x(t, e, n, r) {
|
|
return "attachEvent"in t ? t.detachEvent("on" + e, n) : t.removeEventListener(e, n, r)
|
|
}
|
|
function T(t, e, n) {
|
|
if (void 0 === n && (n = " "),
|
|
(e -= t.length) <= 0)
|
|
return t;
|
|
for (var r = ""; e; )
|
|
1 & e && (r += n),
|
|
e >>= 1,
|
|
n += n;
|
|
return r + t
|
|
}
|
|
var N = function() {
|
|
var t = null;
|
|
return function() {
|
|
try {
|
|
if (null === t)
|
|
for (var e = window.navigator.userAgent.toLowerCase(), n = 0; n < w.length; n++)
|
|
if (e.indexOf(w[n].toLowerCase()) > -1)
|
|
return t = !0
|
|
} catch (t) {
|
|
return !1
|
|
}
|
|
}
|
|
}();
|
|
function _(t) {
|
|
for (var e = {}, n = 0, r = t.split("&"); n < r.length; n++) {
|
|
var o = r[n].split("=")
|
|
, i = o[0]
|
|
, a = o[1];
|
|
i in e ? e[i]instanceof Array ? e[i].push(a) : e[i] = [e[i], a] : e[i] = a
|
|
}
|
|
return e
|
|
}
|
|
function P(t) {
|
|
void 0 === t && (t = location.href);
|
|
var e = t.lastIndexOf("?");
|
|
return -1 === e ? {
|
|
page: t
|
|
} : {
|
|
page: t.slice(0, e),
|
|
params: _(t.slice(e + 1))
|
|
}
|
|
}
|
|
var G = function(t) {
|
|
return t && "object" == typeof t && !Array.isArray(t)
|
|
};
|
|
function Z(t) {
|
|
return !t || !/^(https?:)?\/\//.test(t) || (L("[error 108]", "\u8bf7\u6ce8\u610f\u5f53\u524d\u57cb\u70b9\u9875\u9762\u4fe1\u606f\u4e3a " + t + "\uff0c\u4e0d\u7b26\u5408\u89c4\u8303\uff0c\u4e0a\u62a5\u5931\u8d25\uff01"),
|
|
!1)
|
|
}
|
|
var E, C = (E = "",
|
|
function() {
|
|
if (E)
|
|
return E;
|
|
try {
|
|
var t = window.devicePixelRatio || 1
|
|
, e = Math.floor(screen.width * t)
|
|
, n = Math.floor(screen.height * t);
|
|
return E = e + "x" + n
|
|
} catch (t) {
|
|
return ""
|
|
}
|
|
}
|
|
), I = function() {
|
|
return !(!((null === window || void 0 === window ? void 0 : window.Worker) && (null === window || void 0 === window ? void 0 : window.Uint8Array) && window.URL) || function() {
|
|
var t, e, n = (null === (t = null === window || void 0 === window ? void 0 : window.navigator) || void 0 === t ? void 0 : t.userAgent) || "", r = /mobile|tablet|ip(ad|hone|od)|android|(windows phone)/i.test(n), o = "MacIntel" === (null === window || void 0 === window ? void 0 : window.navigator.platform) && (null === (e = null === window || void 0 === window ? void 0 : window.navigator) || void 0 === e ? void 0 : e.maxTouchPoints) > 1;
|
|
return r || o
|
|
}())
|
|
}, K = function(t) {
|
|
try {
|
|
return Math.abs(Math.floor(t))
|
|
} catch (n) {
|
|
return t
|
|
}
|
|
}, X = function() {
|
|
function t() {
|
|
this.events = {}
|
|
}
|
|
return t.prototype.on = function(t, e) {
|
|
e && "function" == typeof e && (this.events[t] = this.events[t] || [],
|
|
this.events[t].push(e))
|
|
}
|
|
,
|
|
t.prototype.off = function(t, e) {
|
|
var n, r, o;
|
|
this.events[t] && (e && "function" == typeof e && (n = this.events[t],
|
|
r = e,
|
|
(o = n.indexOf(r)) > -1 && n.splice(o, 1)),
|
|
e || (this.events[t] = []))
|
|
}
|
|
,
|
|
t.prototype.emit = function(t) {
|
|
for (var e = [], n = 1; n < arguments.length; n++)
|
|
e[n - 1] = arguments[n];
|
|
this.events[t] && this.events[t].forEach((function(t) {
|
|
t.apply(void 0, e)
|
|
}
|
|
))
|
|
}
|
|
,
|
|
t
|
|
}(), W = 0, M = function(t) {
|
|
function e(n, r) {
|
|
var o, i = t.call(this) || this;
|
|
return i.version = "3.9.48",
|
|
i.plugins = {},
|
|
i.flush = function() {
|
|
i.logger.flush()
|
|
}
|
|
,
|
|
i.baseOption = d({}, r),
|
|
i.logConfig = (o = n,
|
|
d({
|
|
env: "production",
|
|
proto: "v3",
|
|
timeout: 3e4,
|
|
wait: 1e3,
|
|
maxBatchLength: 50,
|
|
sampleRate: 1,
|
|
yoda: "undefined" != typeof window && window.yoda,
|
|
forbidV2HttpUrlPage: !0
|
|
}, o || {})),
|
|
i.initUrlPackage(),
|
|
e.__instance || (e.__instance = i),
|
|
i
|
|
}
|
|
return l(e, t),
|
|
Object.defineProperty(e.prototype, "sessionId", {
|
|
get: function() {
|
|
return b.sessionId
|
|
},
|
|
enumerable: !1,
|
|
configurable: !0
|
|
}),
|
|
e.prototype.initUrlPackage = function() {
|
|
this.updateCurrentUrlPackage()
|
|
}
|
|
,
|
|
e.prototype.updateCurrentUrlPackage = function(t, e) {
|
|
if (void 0 === t && (t = {}),
|
|
void 0 === e && (e = "web"),
|
|
"object" == typeof t && t.page && this.currentUrlPackage && t.page === this.currentUrlPackage.page)
|
|
return this.currentUrlPackage.update(t.page, t.params);
|
|
this.currentUrlPackage = new S(t,e)
|
|
}
|
|
,
|
|
e.prototype.updateReferUrlPackage = function(t, e) {
|
|
void 0 === t && (t = this.currentUrlPackage),
|
|
void 0 === e && (e = "web"),
|
|
this.referUrlPackage = t instanceof S ? t : new S(t,e)
|
|
}
|
|
,
|
|
e.prototype.updateBase = function(t) {
|
|
this.updateCommonPackage(t)
|
|
}
|
|
,
|
|
e.prototype.updateCommonPackage = function(t) {
|
|
"object" == typeof t && this.commonPackage.update(t)
|
|
}
|
|
,
|
|
e.prototype.addPlugins = function() {
|
|
var t = this;
|
|
this.logConfig.plugins && this.logConfig.plugins.length && this.logConfig.plugins.forEach((function(e) {
|
|
"object" == typeof e && "function" == typeof e.apply && t.addPluginInstance(e)
|
|
}
|
|
))
|
|
}
|
|
,
|
|
e.prototype.addPluginInstance = function(t) {
|
|
if (t) {
|
|
var e = t.key || t.constructor && t.constructor.key || "plugin_auto_key_" + W++;
|
|
"function" != typeof t.apply || t.weblog && t.weblog === this || t.apply(this),
|
|
this.plugins[e] = t
|
|
}
|
|
}
|
|
,
|
|
e.prototype.plug = function(t, e) {
|
|
if (this.plugins[t.key])
|
|
return L("[code 301]", t.key + " \u63d2\u4ef6\u91cd\u590d\u52a0\u8f7d\uff01");
|
|
this.addPluginInstance(new t(this,e))
|
|
}
|
|
,
|
|
e.prototype.unplug = function(t) {
|
|
var e = this.plugins[t];
|
|
e && (e.destroy(),
|
|
delete this.plugins[t])
|
|
}
|
|
,
|
|
e.prototype.unplugAll = function() {
|
|
for (var t in this.plugins)
|
|
this.plugins[t] && this.unplug(t)
|
|
}
|
|
,
|
|
e.prototype.generateLog = function(t, e) {
|
|
return {}
|
|
}
|
|
,
|
|
e.prototype.send = function(t, e, n) {
|
|
void 0 === t && (t = g.CLICK);
|
|
var r = this.generateLog(t.toUpperCase(), e)
|
|
, o = "object" == typeof e && e.callback || void 0;
|
|
return "function" == typeof this.beforeSend && this.beforeSend(t, e, r),
|
|
this.logger.send(r, !!n, o)
|
|
}
|
|
,
|
|
e.prototype.collect = function(t, e) {
|
|
this.send(t, e)
|
|
}
|
|
,
|
|
e.prototype.sendImmediately = function(t, e) {
|
|
this.send(t, e, !0)
|
|
}
|
|
,
|
|
e.prototype.sendPackage = function(t, e) {
|
|
this.logger.sendPackage(t, e)
|
|
}
|
|
,
|
|
e.prototype.destroy = function() {
|
|
this.unplugAll()
|
|
}
|
|
,
|
|
e
|
|
}(X);
|
|
function O(t, e, n) {
|
|
var r = {};
|
|
if (t.length > 0)
|
|
for (var o = e ? decodeURIComponent : function(t) {
|
|
return t
|
|
}
|
|
, i = t.split(/;\s/g), a = null, s = null, c = null, u = 0, l = i.length; u < l; u++) {
|
|
if (null !== (c = i[u].match(/([^=]+)=/i)))
|
|
try {
|
|
a = decodeURIComponent(c[1]),
|
|
s = o(i[u].substring(c[1].length + 1))
|
|
} catch (t) {}
|
|
else
|
|
a = decodeURIComponent(i[u]),
|
|
s = "";
|
|
null !== a && (r[a] = s)
|
|
}
|
|
return r
|
|
}
|
|
var U, R = {};
|
|
function H(t, e, n) {
|
|
void 0 === e && (e = {}),
|
|
void 0 === n && (n = !1);
|
|
try {
|
|
if (!n && t in R)
|
|
return R[t];
|
|
if (!(null === window || void 0 === window ? void 0 : window.document))
|
|
return;
|
|
var r = document.cookie || "";
|
|
return r === U ? R[t] : (U = r,
|
|
(R = O(r, !e.raw))[t])
|
|
} catch (t) {}
|
|
}
|
|
function D(t, e, n) {
|
|
void 0 === n && (n = {});
|
|
try {
|
|
document.cookie = function(t, e, n, r) {
|
|
void 0 === r && (r = {});
|
|
var o = encodeURIComponent(t) + "=" + (n ? encodeURIComponent(e) : e)
|
|
, i = r.expires
|
|
, a = r.path || "/"
|
|
, s = r.domain || "";
|
|
return i instanceof Date && (o += "; expires=" + i.toUTCString()),
|
|
"number" == typeof i && (o += "; max-age==" + i),
|
|
"" !== a && (o += "; path=" + a),
|
|
"" !== s && (o += "; domain=" + s),
|
|
!0 === r.secure && (o += "; secure"),
|
|
o
|
|
}(t, e, !n.raw, n),
|
|
R[t] = e
|
|
} catch (t) {}
|
|
}
|
|
var Y = {
|
|
getCookie: H,
|
|
setCookie: D,
|
|
parseCookieString: O
|
|
};
|
|
function j() {
|
|
return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (function(t) {
|
|
var e = 16 * Math.random() | 0;
|
|
return ("x" == t ? e : 3 & e | 8).toString(16)
|
|
}
|
|
))
|
|
}
|
|
function V(t) {
|
|
if (void 0 === t && (t = "undefined" != typeof location ? location.hostname : ""),
|
|
!t)
|
|
return "";
|
|
var e = t.split(".")
|
|
, n = e.length;
|
|
return n <= 2 ? "" : "." + e[n - 2] + "." + e[n - 1]
|
|
}
|
|
var z = "";
|
|
function A() {
|
|
if (z)
|
|
return z;
|
|
try {
|
|
if (!(z = H("did") || H("_did"))) {
|
|
z = "web_" + function() {
|
|
for (var t = 1e9 * Math.random() >>> 0, e = [], n = 0; n < 7; n++)
|
|
e.push("0123456789ABCDEF".charAt(16 * Math.random()));
|
|
return t + e.join("")
|
|
}();
|
|
var t = new Date;
|
|
t.setFullYear(t.getFullYear() + 1),
|
|
D("_did", z, {
|
|
expires: t,
|
|
domain: V(),
|
|
path: "/"
|
|
})
|
|
}
|
|
return z
|
|
} catch (t) {
|
|
return ""
|
|
}
|
|
}
|
|
var J, F, B, Q = function(t) {
|
|
function e(e, n, r) {
|
|
var o = t.call(this, {}, n) || this;
|
|
if ("string" == typeof e) {
|
|
var i = P(e);
|
|
o.page = i.page,
|
|
o.params = i.params
|
|
} else
|
|
o.page = (e || {}).page || "",
|
|
o.params = (e || {}).params || void 0;
|
|
return o.identity = o.generatePageId(),
|
|
r && "string" == typeof e && o.init(e, r),
|
|
o
|
|
}
|
|
return l(e, t),
|
|
e.prototype.init = function(t, e) {
|
|
void 0 === e && (e = {});
|
|
var n = function(t, e) {
|
|
var n = t.url
|
|
, r = t.page
|
|
, o = t.params
|
|
, i = t.pageId;
|
|
if (!r && "string" == typeof n) {
|
|
var a = P(n);
|
|
r = a.page,
|
|
o = a.params
|
|
}
|
|
if ("function" == typeof e)
|
|
try {
|
|
var s = e({
|
|
url: n,
|
|
page: r,
|
|
params: o
|
|
});
|
|
"string" == typeof s ? r = s : "object" == typeof s && (s.page && (r = s.page),
|
|
s.params && (o = s.params),
|
|
s.pageId && (i = s.pageId))
|
|
} catch (t) {}
|
|
else if ("object" == typeof e) {
|
|
var c = "";
|
|
for (var u in e)
|
|
if ((n || r || "").indexOf(u) > -1) {
|
|
c = e[u];
|
|
break
|
|
}
|
|
c && (r = c)
|
|
}
|
|
return {
|
|
page: r,
|
|
params: o,
|
|
pageId: i
|
|
}
|
|
}({
|
|
url: t,
|
|
page: this.page,
|
|
params: this.params
|
|
}, e)
|
|
, r = n.page
|
|
, o = n.params;
|
|
this.update(r, o)
|
|
}
|
|
,
|
|
e.prototype.attachUrl = function() {
|
|
if (this.params || (this.params = {}),
|
|
null === location || void 0 === location ? void 0 : location.href) {
|
|
this.params.origin_url = this.params.origin_url || (null === location || void 0 === location ? void 0 : location.href);
|
|
var t = P(location.href).page
|
|
, e = void 0 === t ? "" : t;
|
|
this.params.origin_pathname = e
|
|
}
|
|
}
|
|
,
|
|
e.prototype.getRealUrlPackage = function() {
|
|
var t = P(location.href)
|
|
, e = t.page
|
|
, n = t.params;
|
|
return {
|
|
page: e,
|
|
params: JSON.stringify(d({
|
|
page_code: this.page,
|
|
url: location.href,
|
|
query: n
|
|
}, n)),
|
|
page_type: this.page_type,
|
|
identity: this.identity
|
|
}
|
|
}
|
|
,
|
|
e.prototype.generatePageId = function() {
|
|
return j()
|
|
}
|
|
,
|
|
e
|
|
}(S), q = function() {
|
|
function t(t) {
|
|
if (this.identity_package = {
|
|
device_id: void 0,
|
|
global_id: void 0,
|
|
user_id: void 0,
|
|
union_id: void 0,
|
|
open_id: void 0,
|
|
iu_id: void 0
|
|
},
|
|
this.app_package = {
|
|
product: void 0,
|
|
language: void 0,
|
|
platform: void 0,
|
|
container: "H5",
|
|
package_name: void 0,
|
|
product_name: void 0,
|
|
version_name: void 0,
|
|
channel: void 0,
|
|
version_code: void 0
|
|
},
|
|
this.experiment = void 0,
|
|
this.service_name = void 0,
|
|
this.safety_id = void 0,
|
|
this.sub_biz = void 0,
|
|
this.device_package = {
|
|
os_version: void 0,
|
|
model: void 0,
|
|
ua: void 0
|
|
},
|
|
this.need_encrypt = !1,
|
|
this.network_package = {
|
|
type: v.unknown
|
|
},
|
|
this.h5_extra_attr = {
|
|
sdk_name: "webLogger",
|
|
sdk_version: "3.9.48",
|
|
sdk_bundle: "log.hybrid.js"
|
|
},
|
|
this.global_attr = {
|
|
entry_tag: []
|
|
},
|
|
this.update(t),
|
|
this.app_package.version_name) {
|
|
var e = this.app_package.version_name.lastIndexOf(".");
|
|
this.app_package.version_code = +this.app_package.version_name.slice(e + 1) || 0
|
|
}
|
|
this.app_package.version_name || (this.app_package.version_name = void 0),
|
|
this.app_package.version_code || (this.app_package.version_code = void 0)
|
|
}
|
|
return t.prototype.getH5ExtraAttr = function(t) {
|
|
return Object.assign({}, this.h5_extra_attr, t)
|
|
}
|
|
,
|
|
t.prototype.update = function(t) {
|
|
if ("object" == typeof t) {
|
|
!function(t, e) {
|
|
if (G(t) && G(e)) {
|
|
var n = function(t, e, n) {
|
|
G(t[n]) && G(e[n]) ? Object.assign(t[n], e[n]) : G(t[n]) || G(e[n]) || (t[n] = e[n])
|
|
};
|
|
for (var r in e)
|
|
if (t.hasOwnProperty(r))
|
|
n(t, e, r);
|
|
else
|
|
for (var o in t)
|
|
G(t[o]) && t[o].hasOwnProperty(r) && n(t[o], e, r)
|
|
}
|
|
}(this, t);
|
|
var e = t.network_type;
|
|
e && v[e] && (this.network_package.type = v[e])
|
|
}
|
|
}
|
|
,
|
|
t.prototype.updateGlobalAttr = function(t) {
|
|
Object.assign(this.global_attr || {}, t)
|
|
}
|
|
,
|
|
t.prototype.toJSON = function() {
|
|
this.identity_package.user_id || (this.identity_package.user_id = void 0);
|
|
var t = d(d({}, this), {
|
|
toJSON: function() {
|
|
return d(d({}, t), {
|
|
h5_extra_attr: JSON.stringify(t.h5_extra_attr),
|
|
global_attr: JSON.stringify(t.global_attr)
|
|
})
|
|
}
|
|
});
|
|
return t.global_attr = d({}, this.global_attr),
|
|
this.global_attr.entry_tag && this.global_attr.entry_tag.length ? t.global_attr.entry_tag = this.global_attr.entry_tag.slice() : delete t.global_attr.entry_tag,
|
|
Object.keys(this.global_attr).length || delete t.global_attr,
|
|
t
|
|
}
|
|
,
|
|
t
|
|
}(), $ = "https://data-track.corp.kuaishou.com", tt = $ + "/", et = "production", nt = "logger", rt = "logger-oversea", ot = "rest/wd/common/log/collect/", it = [et, "test", "development", nt, "oversea"], at = "https://logsdk.kwai-pro.com/", st = {
|
|
v2: "rest/kd/log/collect?_json=1&biz=",
|
|
v3: ot + "misc2",
|
|
radar: ot + "radar"
|
|
}, ct = {
|
|
v2: {
|
|
production: ["https://wlog.ksapisrv.com/", "https://wlog.gifshow.com/"][Math.round(Math.random())],
|
|
development: tt,
|
|
test: tt,
|
|
oversea: at
|
|
},
|
|
v3: {
|
|
production: "https://log-sdk.ksapisrv.com/",
|
|
development: tt,
|
|
test: tt,
|
|
oversea: at
|
|
}
|
|
}, ut = function(t, e, n) {
|
|
return void 0 === t && (t = et),
|
|
void 0 === e && (e = !1),
|
|
void 0 === n && (n = "v3"),
|
|
-1 === it.indexOf(t) ? t + st[n] : e && ct.v3[t] ? ct.v3[t] + st.radar : ct[n][t] && st[n] ? ct[n][t] + st[n] : ct.v3.production + st.v3
|
|
}, lt = function(t, e) {
|
|
if (!e)
|
|
return t;
|
|
try {
|
|
return /\?(.+?)$/.test(t) ? t.replace(/\?(.+?)$/, "?" + e + "&$1") : t + "?" + e
|
|
} catch (e) {
|
|
return t
|
|
}
|
|
}, dt = function() {
|
|
function t(t, e) {
|
|
var n = this;
|
|
this.asyncQueue = [],
|
|
this.throttleQueue = [],
|
|
this.errorQueue = [],
|
|
this.sendingQueue = {},
|
|
this.url = "",
|
|
this.isV2 = !1,
|
|
this.isDebug = !1,
|
|
this.radarUrl = "",
|
|
this.drained = !1,
|
|
this.batchCount = 50,
|
|
this.sendingYield = null,
|
|
this.flush = function(t) {
|
|
n.sendLogs(n.throttleQueue.concat(n.asyncQueue), t),
|
|
n.throttleQueue = [],
|
|
n.asyncQueue = []
|
|
}
|
|
,
|
|
this.drain = function() {
|
|
n.drained = !0,
|
|
n.flush(),
|
|
n.flushErrorLogs(),
|
|
setTimeout((function() {
|
|
n.drained = !1
|
|
}
|
|
), 1e3)
|
|
}
|
|
,
|
|
this.config = t,
|
|
this.config.maxBatchLength && this.config.maxBatchLength > 1 && (this.batchCount = Math.min(50, this.config.maxBatchLength)),
|
|
this.commonPackage = e,
|
|
this.isDebug = this.config.logger || "logger" === this.config.env,
|
|
this.isV2 = "v2" === this.config.proto,
|
|
this.updateUrls()
|
|
}
|
|
return t.prototype.sendData = function(t, e) {
|
|
return "function" == typeof this.config.sender ? this.config.sender(t, e) : this.baseSendData(t, e)
|
|
}
|
|
,
|
|
t.prototype.updateUrls = function() {
|
|
var t = this.config.env;
|
|
t && /^(https?:)?\/\//.test(t) ? this.url = t : this.url = ut(t),
|
|
this.formatUrl()
|
|
}
|
|
,
|
|
t.prototype.formatUrl = function() {
|
|
this.radarUrl || (this.radarUrl = this.url.replace(-1 !== this.url.indexOf(st.v2) ? st.v2 : st.v3, st.radar),
|
|
-1 !== this.radarUrl.indexOf(ct.v2.production) && this.radarUrl.replace(ct.v2.production, ct.v3.production));
|
|
var t = this.commonPackage.app_package
|
|
, e = t.product_name
|
|
, n = t.product
|
|
, r = "v=3.9.48&kpn=" + (e || n);
|
|
this.url = lt(this.url, r),
|
|
this.radarUrl = lt(this.radarUrl, r)
|
|
}
|
|
,
|
|
t.prototype.getCommonPackageJSON = function() {
|
|
return this.commonPackage.toJSON()
|
|
}
|
|
,
|
|
t.prototype.send = function(t, e, n) {
|
|
if (void 0 === e && (e = !1),
|
|
n || this.drained)
|
|
return this.sendLogs([t], n);
|
|
e ? this.sendAsync(t, n) : this.sendThrottle(t)
|
|
}
|
|
,
|
|
t.prototype.sendAsync = function(t, e) {
|
|
return h(this, void 0, void 0, (function() {
|
|
return m(this, (function(e) {
|
|
switch (e.label) {
|
|
case 0:
|
|
return this.asyncQueue.push(t),
|
|
this.asyncQueue.length >= this.batchCount ? (this.flush(),
|
|
[2]) : this.sendingYield ? [4, this.sendingYield] : [3, 2];
|
|
case 1:
|
|
e.sent(),
|
|
this.sendingYield = null,
|
|
e.label = 2;
|
|
case 2:
|
|
return e.trys.push([2, 4, , 5]),
|
|
[4, Promise.resolve()];
|
|
case 3:
|
|
case 4:
|
|
return e.sent(),
|
|
[3, 5];
|
|
case 5:
|
|
return this.asyncQueue.length ? (this.flush(),
|
|
[2]) : [2]
|
|
}
|
|
}
|
|
))
|
|
}
|
|
))
|
|
}
|
|
,
|
|
t.prototype.sendThrottle = function(t) {
|
|
var e = this;
|
|
this.throttleQueue.push(t),
|
|
this.throttleQueue.length >= this.batchCount ? this.flush() : (clearTimeout(this.batchWaitTimer),
|
|
this.batchWaitTimer = setTimeout((function() {
|
|
e.flush()
|
|
}
|
|
), this.config.wait))
|
|
}
|
|
,
|
|
t.prototype.sendLogs = function(t, e) {
|
|
var n = this;
|
|
if (!t || !t.length)
|
|
return "function" == typeof e && e();
|
|
var r = this.buildLogPackage(t, this.url);
|
|
this.sendPackage(r, (function(t) {
|
|
t ? n.errHandler(r) : n.flushErrorLogs(),
|
|
"function" == typeof e && e(t)
|
|
}
|
|
))
|
|
}
|
|
,
|
|
t.prototype.sendPackage = function(t, e) {
|
|
var n = this.config.timeout;
|
|
try {
|
|
this.sendData(d(d({}, t), {
|
|
isDebug: this.isDebug,
|
|
timeout: n
|
|
}), e)
|
|
} catch (t) {
|
|
"function" == typeof e && e(t)
|
|
}
|
|
}
|
|
,
|
|
t.prototype.buildLogPackage = function(t, e) {
|
|
return this.isV2 ? this.buildV2Package(t, e) : this.buildV3Package(t, e)
|
|
}
|
|
,
|
|
t.prototype.buildV2Package = function(t, e) {
|
|
return {
|
|
url: e,
|
|
data: {
|
|
log: {
|
|
event: t
|
|
}
|
|
}
|
|
}
|
|
}
|
|
,
|
|
t.prototype.buildV3Package = function(t, e, n) {
|
|
var r = this.getCommonPackageJSON();
|
|
return n && Object.assign(r, n),
|
|
{
|
|
url: e,
|
|
data: {
|
|
common: r,
|
|
logs: t
|
|
}
|
|
}
|
|
}
|
|
,
|
|
t.prototype.errHandler = function(t) {
|
|
var e;
|
|
if (this.isV2)
|
|
this.errorQueue.unshift(t);
|
|
else {
|
|
var n = t.data;
|
|
if (n.logs.length) {
|
|
delete n.common.h5_extra_attr.http_seq_id,
|
|
delete n.common.h5_extra_attr.client_timestamp;
|
|
for (var r = !1, o = 0; o < this.errorQueue.length; o++) {
|
|
var i = this.errorQueue[o];
|
|
if (i.url === t.url && i.data.logs.length + n.logs.length <= 100 && JSON.stringify(i.data.common) === JSON.stringify(n.common)) {
|
|
r = !0,
|
|
(e = i.data.logs).push.apply(e, n.logs);
|
|
break
|
|
}
|
|
}
|
|
r || (this.errorQueue.length >= 5 && this.errorQueue.pop(),
|
|
this.errorQueue.unshift(t))
|
|
}
|
|
}
|
|
}
|
|
,
|
|
t.prototype.flushErrorLogs = function() {
|
|
var t = this;
|
|
this.errorQueue.forEach((function(e) {
|
|
t.sendPackage(e)
|
|
}
|
|
)),
|
|
this.errorQueue = []
|
|
}
|
|
,
|
|
t.prototype.destory = function() {
|
|
this.batchWaitTimer && clearTimeout(this.batchWaitTimer),
|
|
this.compensateTimer && clearTimeout(this.compensateTimer)
|
|
}
|
|
,
|
|
t.prototype.sendRadar = function(t, e) {
|
|
var n = e ? {
|
|
service_name: e
|
|
} : void 0
|
|
, r = this.buildV3Package([t], this.radarUrl || this.url, n);
|
|
this.sendPackage(r)
|
|
}
|
|
,
|
|
t
|
|
}(), pt = (null === (J = null === window || void 0 === window ? void 0 : window.navigator) || void 0 === J ? void 0 : J.userAgent) || "", ht = function() {
|
|
if (F)
|
|
return F;
|
|
var t = "unknow"
|
|
, e = /android/i
|
|
, n = "Mac OS"
|
|
, r = "Windows"
|
|
, o = "Android"
|
|
, i = "iPhone"
|
|
, a = "iPhone"
|
|
, s = "Windows Phone"
|
|
, c = "Linux";
|
|
F = {
|
|
os: {
|
|
name: t,
|
|
version: t
|
|
},
|
|
model: t
|
|
};
|
|
try {
|
|
var u = pt.match(/\((.*?)\)/);
|
|
if (!u)
|
|
return e.test(pt) && (F.os.name = o),
|
|
F;
|
|
var l = u[1] + ")"
|
|
, d = l.split(";").map((function(t) {
|
|
return t.trim()
|
|
}
|
|
))
|
|
, p = void 0
|
|
, h = void 0
|
|
, m = void 0;
|
|
if (pt.indexOf(s) > -1)
|
|
m = p = s,
|
|
(y = l.match(/Windows\sPhone\s(.*?)[;\)\s]/)) && (h = y[1]),
|
|
m = d[d.length - 1].replace(")", "");
|
|
else if (e.test(pt)) {
|
|
p = o;
|
|
var f = l.match(/android.*?;(.*?)build\//i);
|
|
f && (m = (m = f[1].split(";").pop()) && m.trim());
|
|
for (var g = 0; g < d.length; g++)
|
|
if (e.test(d[g])) {
|
|
h = d[g].replace(e, ""),
|
|
m || (m = d[g + 1]);
|
|
break
|
|
}
|
|
} else if (pt.indexOf(i) > -1 || pt.indexOf(a) > -1)
|
|
m = pt.indexOf(i) > -1 ? i : a,
|
|
p = "iOS",
|
|
(y = l.match(/OS\s(.*?)\slike/)) && (h = y[1]);
|
|
else if (pt.indexOf(n) > -1)
|
|
m = p = n,
|
|
(y = l.match(/OS\sX\s(.*?)[;\)\s]/)) && (h = y[1]);
|
|
else if (pt.indexOf(r) > -1) {
|
|
var y;
|
|
m = p = r,
|
|
(y = l.match(/Windows\s(.*?)[;\)]/)) && (h = y[1])
|
|
} else if (pt.indexOf("Nokia") > -1) {
|
|
p = "Symbian";
|
|
var v = pt.match(/Symbian.*?\/(.*?);/);
|
|
v && (h = v[1]);
|
|
var b = pt.match(/Nokia(.*?)\//);
|
|
b && (m = b[1])
|
|
} else
|
|
l.indexOf(c) > -1 && (p = m = c);
|
|
F = {
|
|
os: {
|
|
name: p || t,
|
|
version: h && h.replace(/_/g, ".").trim() || t
|
|
},
|
|
model: m || t
|
|
}
|
|
} catch (t) {}
|
|
return F
|
|
};
|
|
function mt() {
|
|
return void 0 === B && (B = N() && H("kpn") || function() {
|
|
if ("undefined" == typeof window)
|
|
return "";
|
|
for (var t = window.navigator.userAgent, e = [[/ Kwai\//, "KUAISHOU"], [/ ksthanos\//, "THANOS"], [/ ksNebula\//i, "NEBULA"]], n = 0; n < e.length; n++) {
|
|
var r = e[n]
|
|
, o = r[0]
|
|
, i = r[1];
|
|
if (o.exec(t))
|
|
return i
|
|
}
|
|
return ""
|
|
}() || ""),
|
|
B
|
|
}
|
|
var ft = {
|
|
supportsPushState: function() {
|
|
var t = window.navigator.userAgent;
|
|
return (-1 === t.indexOf("Android 2.") && -1 === t.indexOf("Android 4.0") || -1 === t.indexOf("Mobile Safari") || -1 !== t.indexOf("Chrome") || -1 !== t.indexOf("Windows Phone")) && window.history && "pushState"in window.history
|
|
},
|
|
getUAInfo: ht,
|
|
getDefaultKpn: mt
|
|
}
|
|
, gt = [["a7", "640x1136", ["iPhone 5", "iPhone 5s"]], ["a7", "1536x2048", ["iPad Air", "iPad Mini 2", "iPad Mini 3"]], ["a8", "640x1136", ["iPod touch (6th gen)"]], ["a8", "750x1334", ["iPhone 6"]], ["a8", "1242x2208", ["iPhone 6 Plus"]], ["a8", "1536x2048", ["iPad Air 2", "iPad Mini 4"]], ["a9", "640x1136", ["iPhone SE"]], ["a9", "750x1334", ["iPhone 6s"]], ["a9", "1242x2208", ["iPhone 6s Plus"]], ["a9x", "1536x2048", ["iPad Pro (1st gen 9.7-inch)"]], ["a9x", "2048x2732", ["iPad Pro (1st gen 12.9-inch)"]], ["a10", "750x1334", ["iPhone 7"]], ["a10", "1242x2208", ["iPhone 7 Plus"]], ["a10x", "1668x2224", ["iPad Pro (2th gen 10.5-inch)"]], ["a10x", "2048x2732", ["iPad Pro (2th gen 12.9-inch)"]], ["a11", "750x1334", ["iPhone 8"]], ["a11", "1242x2208", ["iPhone 8 Plus"]], ["a11", "1125x2436", ["iPhone X"]], ["a12", "828x1792", ["iPhone Xr"]], ["a12", "1125x2436", ["iPhone Xs"]], ["a12", "1242x2688", ["iPhone Xs Max"]], ["a12x", "1668x2388", ["iPad Pro (3rd gen 11-inch)"]], ["a12x", "2048x2732", ["iPad Pro (3rd gen 12.9-inch)"]]]
|
|
, yt = function() {
|
|
try {
|
|
var t = ht()
|
|
, e = N()
|
|
, n = t.model || t.os.name || "unknown";
|
|
if ("iOS" !== t.os.name || e)
|
|
return n;
|
|
var r = function() {
|
|
for (var t = C(), e = [], n = 0, r = gt; n < r.length; n++) {
|
|
var o = r[n];
|
|
t === o[1] && (e = e.concat(o[2]))
|
|
}
|
|
return e.length && e
|
|
}();
|
|
return r ? r.join(" or ") : n
|
|
} catch (t) {
|
|
return "unknown"
|
|
}
|
|
}
|
|
, vt = {}
|
|
, bt = function(t) {
|
|
try {
|
|
if (window && window.localStorage && "undefined" != typeof Storage && window.localStorage instanceof Storage) {
|
|
var e = Number(function(t) {
|
|
try {
|
|
if (window && window.localStorage) {
|
|
var e = window.localStorage.getItem(t);
|
|
if (e)
|
|
try {
|
|
return JSON.parse(e)
|
|
} catch (t) {
|
|
return e
|
|
}
|
|
}
|
|
} catch (t) {
|
|
return null
|
|
}
|
|
return null
|
|
}(t)) || 0;
|
|
return e + 1 > 1e8 && (e = 0),
|
|
function(t, e) {
|
|
try {
|
|
if (window && window.localStorage)
|
|
window.localStorage.setItem(t, JSON.stringify(e))
|
|
} catch (t) {
|
|
return !1
|
|
}
|
|
}(t, e + 1),
|
|
e
|
|
}
|
|
} catch (t) {}
|
|
return vt[t] || (vt[t] = 0),
|
|
vt[t]++
|
|
}
|
|
, St = 0
|
|
, wt = N();
|
|
function Lt() {
|
|
try {
|
|
var t = ht().os.name;
|
|
return St = t ? "Android" === t ? wt ? 6 : 8 : "iOS" === t ? wt ? 7 : 9 : 10 : 0
|
|
} catch (t) {
|
|
return 0
|
|
}
|
|
}
|
|
function kt() {
|
|
var t = "unknown"
|
|
, e = null === window || void 0 === window ? void 0 : window.navigator
|
|
, n = (null == e ? void 0 : e.connection) || (null == e ? void 0 : e.mozConnection) || (null == e ? void 0 : e.webkitConnection);
|
|
return n && (t = n.type || n.effectiveType),
|
|
t
|
|
}
|
|
var xt = function(t) {
|
|
function e(e) {
|
|
var n = t.call(this, d({
|
|
platform: Lt(),
|
|
container: 10 === St ? "WEB" : "H5",
|
|
version_name: wt && H("appver", void 0, !0) || "",
|
|
network_type: kt(),
|
|
device_id: A(),
|
|
global_id: wt && H("egid") || "",
|
|
app_package: {
|
|
language: navigator.language
|
|
},
|
|
device_package: {
|
|
os_version: ht().os.version,
|
|
model: yt(),
|
|
ua: navigator.userAgent
|
|
}
|
|
}, e)) || this;
|
|
return Object.assign(n.h5_extra_attr, {
|
|
host_product: mt(),
|
|
resolution: C(),
|
|
screen_with: K(screen.width),
|
|
screen_height: K(screen.height),
|
|
device_pixel_ratio: window.devicePixelRatio || 1,
|
|
domain: window.location.origin
|
|
}, e.h5_extra_attr),
|
|
n
|
|
}
|
|
return l(e, t),
|
|
e.prototype.getVersionName = function() {
|
|
return this.app_package.version_name
|
|
}
|
|
,
|
|
e.prototype.update = function(e) {
|
|
t.prototype.update.call(this, e);
|
|
var n = this.app_package.version_name;
|
|
if ("string" == typeof n) {
|
|
var r = n.lastIndexOf(".");
|
|
this.app_package.version_code = +n.slice(r + 1) || 0,
|
|
this.h5_extra_attr.app_version_name = n
|
|
}
|
|
}
|
|
,
|
|
e.prototype.setAdditionalSeqIdPackage = function(t) {
|
|
var e, n;
|
|
this.additional_seq_id_package = {
|
|
channel: 3,
|
|
channel_seq_id: (n = "NORMAL",
|
|
void 0 === n && (n = ""),
|
|
bt("WEBLOGGER_CHANNEL_SEQ_ID_" + n)),
|
|
custom_type: t,
|
|
custom_seq_id: (e = t,
|
|
bt("WEBLOGGER_V2_SEQ_ID_" + e))
|
|
}
|
|
}
|
|
,
|
|
e.prototype.increaseH5SeqId = function(t) {
|
|
this.h5_extra_attr.client_timestamp = K((new Date).valueOf()),
|
|
this.h5_extra_attr.seq_id = bt(t ? "WEBLOGGER_H5_CUSTOM_SEQ_ID" : "WEBLOGGER_H5_SEQ_ID")
|
|
}
|
|
,
|
|
e
|
|
}(q)
|
|
, Tt = function(t, e, n) {
|
|
return L("[error 400]", "\u57cb\u70b9\u4e0a\u62a5\u63a5\u53e3\u8bf7\u6c42\u62a5\u9519", "\nurl:", e, "\ndata", n, "\nerror:", t || "server decode log failed")
|
|
};
|
|
function Nt(t, e) {
|
|
var n = t.url
|
|
, r = t.data
|
|
, o = t.timeout
|
|
, i = new XMLHttpRequest;
|
|
i.open("POST", n),
|
|
i.setRequestHeader("Content-Type", "text/plain;charset=UTF-8"),
|
|
"object" != typeof r || r instanceof Uint8Array || (r = JSON.stringify(r)),
|
|
o && (i.timeout = o),
|
|
i.onload = function() {
|
|
var t = function(t, e, n, r) {
|
|
var o;
|
|
if (t < 200 || t >= 300 && 304 !== t)
|
|
;
|
|
else
|
|
try {
|
|
var i = JSON.parse(e)
|
|
, a = i.exception
|
|
, s = i.result
|
|
, c = i.error_msg;
|
|
a && (o = a),
|
|
1 !== s && (o = c || "result is " + s)
|
|
} catch (t) {
|
|
o = t.message
|
|
}
|
|
return o && Tt(o, n, r),
|
|
o
|
|
}(i.status, i.response, n, r);
|
|
e && e(t)
|
|
}
|
|
,
|
|
i.ontimeout = i.onerror = function(t) {
|
|
t && Tt(t, n, r),
|
|
e && e(t ? "networkTimeout" : "")
|
|
}
|
|
,
|
|
i.send(r)
|
|
}
|
|
var _t = function(t) {
|
|
var e = function(e) {
|
|
return L("[error 401]", "GET \u8bf7\u6c42\u51fa\u9519 url: " + t, e)
|
|
};
|
|
try {
|
|
var n = new XMLHttpRequest;
|
|
n.open("GET", t),
|
|
n.setRequestHeader("Content-Type", "text/plain;charset=UTF-8"),
|
|
n.send(),
|
|
n.onerror = e
|
|
} catch (t) {
|
|
e(t)
|
|
}
|
|
}
|
|
, Pt = null === window || void 0 === window ? void 0 : window.navigator
|
|
, Gt = Pt && -1 !== Pt.userAgent.indexOf("Chrome") && "function" == typeof Pt.sendBeacon;
|
|
function Zt(t, e) {
|
|
var n = t.url
|
|
, r = t.data
|
|
, o = t.timeout
|
|
, i = t.isDebug;
|
|
if (r = JSON.stringify(r),
|
|
!i && function(t) {
|
|
var e = t.url
|
|
, n = t.data;
|
|
if (!Gt)
|
|
return !1;
|
|
"object" == typeof n && n.fd && (n = n.fd);
|
|
try {
|
|
return Pt.sendBeacon(e, n)
|
|
} catch (t) {
|
|
return L("[error 403]", "navigator.sendBeacon \u62a5\u9519", t),
|
|
!1
|
|
}
|
|
}({
|
|
url: n,
|
|
data: r
|
|
}))
|
|
return e && e();
|
|
Nt({
|
|
url: n,
|
|
data: r,
|
|
timeout: o
|
|
}, e)
|
|
}
|
|
var Et, Ct = function(t, e, n) {
|
|
return void 0 === t && (t = $),
|
|
function() {
|
|
for (var t = [], e = 0; e < arguments.length; e++)
|
|
t[e] = arguments[e];
|
|
try {
|
|
var n = null === console || void 0 === console ? void 0 : console.log;
|
|
n && n.call.apply(n, f([console], t))
|
|
} catch (t) {
|
|
return
|
|
}
|
|
}("%c\u57cb\u70b9\u6293\u5305\u6821\u9a8c: %c" + t + "/#/logger/index?sessionId=" + n, "color:#1abf89;font-size:1.2em;line-height:2.4em;", "font-size:1.2em;"),
|
|
e + "/" + n + "/"
|
|
};
|
|
!function(t) {
|
|
t.loading = "loading",
|
|
t.loaded = "loaded"
|
|
}(Et || (Et = {}));
|
|
var It, Kt, Xt, Wt = Object.create(null), Mt = "weblogger_switch", Ot = function(t) {
|
|
var e = function() {
|
|
try {
|
|
var t = H(Mt) || "undefined" != typeof sessionStorage && sessionStorage.getItem(Mt);
|
|
if (!t)
|
|
return;
|
|
var e = JSON.parse(t)
|
|
, n = e.loggerSessionId
|
|
, r = e.reportHost
|
|
, o = e.loggerHost
|
|
, i = e.handshakeApi;
|
|
return n ? (_t(i || r + "/" + n),
|
|
Ct(o, r, n)) : ""
|
|
} catch (t) {
|
|
return ""
|
|
}
|
|
}() || function(t) {
|
|
void 0 === t && (t = location.href);
|
|
var e = t.lastIndexOf("?");
|
|
if (-1 === e)
|
|
return "";
|
|
var n = _(t.slice(e + 1)).webloggerSwitch;
|
|
if (!n)
|
|
return "";
|
|
try {
|
|
var r = decodeURIComponent(n)
|
|
, o = JSON.parse(r)
|
|
, i = o.loggerSessionId
|
|
, a = o.reportHost
|
|
, s = o.loggerHost
|
|
, c = o.handshakeApi;
|
|
return i ? ("undefined" != typeof sessionStorage && sessionStorage.setItem(Mt, r),
|
|
_t(c || a + "/" + i),
|
|
Ct(s, a, i)) : ""
|
|
} catch (t) {
|
|
return ""
|
|
}
|
|
}();
|
|
if (e)
|
|
return ut(e, !1, t)
|
|
}, Ut = function(t) {
|
|
function e(e, n) {
|
|
var r = t.call(this, e, n) || this;
|
|
return r.baseSendData = r.sendLog,
|
|
r
|
|
}
|
|
return l(e, t),
|
|
e.prototype.updateUrls = function() {
|
|
var t = this.config
|
|
, e = t.env
|
|
, n = void 0 === e ? et : e
|
|
, r = t.logger
|
|
, o = t.proto
|
|
, i = t.isBridge
|
|
, a = t.disableCompress
|
|
, s = Ot(o);
|
|
if (s)
|
|
this.url = s,
|
|
this.isDebug = !0;
|
|
else if (r || n === nt || n === rt) {
|
|
var c = function(t, e) {
|
|
void 0 === t && (t = A()),
|
|
void 0 === e && (e = !1);
|
|
var n = e ? "https://data-track-sgp.corp.kuaishou.com" : $;
|
|
return _t(n + "/rest/" + t),
|
|
Ct(n, n + "/rest", t)
|
|
}(this.commonPackage.identity_package.device_id, n === rt);
|
|
this.url = ut(c, !1, o),
|
|
this.isDebug = !0
|
|
} else
|
|
n && /^(https?:)?\/\//.test(n) ? this.url = n : (this.isDebug = n !== et,
|
|
this.url = ut(n, !1, o),
|
|
this.radarUrl = ut(n, !0, o));
|
|
this.enableAsyncGzip = !a && "v3" === o && !i && I() && n === et && !s && !r,
|
|
this.enableAsyncGzip && function(t, e, n) {
|
|
if (void 0 === e && (e = !0),
|
|
Wt[t])
|
|
return n && n(t + " load repeat");
|
|
var r = Wt[t] = {
|
|
state: Et.loading
|
|
}
|
|
, o = document.createElement("script");
|
|
o.src = t,
|
|
e && (o.async = !0);
|
|
var i = document.getElementsByTagName("script")[0];
|
|
i && i.parentNode ? i.parentNode.insertBefore(o, i) : document.head.appendChild(o),
|
|
o.onload = function() {
|
|
r.state = Et.loaded,
|
|
n && n()
|
|
}
|
|
,
|
|
o.onerror = function(e) {
|
|
r.state = Et.loaded,
|
|
n && n(t + " loaded failed, " + e)
|
|
}
|
|
}("https://static.yximgs.com/udata/pkg/ks-track-platform-new/weblogger/3.9.48/async/gzipper.min.js"),
|
|
this.formatUrl()
|
|
}
|
|
,
|
|
e.prototype.sendLog = function(t, e) {
|
|
!this.drained && this.enableAsyncGzip && this.sendGzip(t, e) || Zt(t, e)
|
|
}
|
|
,
|
|
e.prototype.sendGzip = function(t, n) {
|
|
var r;
|
|
return !!(null === (r = e.Gzipper) || void 0 === r ? void 0 : r.sendData) && e.Gzipper.sendData(t, (function(e) {
|
|
e && Zt(t, n)
|
|
}
|
|
))
|
|
}
|
|
,
|
|
e.prototype.getCommonPackageJSON = function() {
|
|
return this.commonPackage.toJSON()
|
|
}
|
|
,
|
|
e.prototype.send = function(e, n, r) {
|
|
void 0 === n && (n = !1),
|
|
this.isV2 && (this.commonPackage.setAdditionalSeqIdPackage(e.getEventType()),
|
|
e.common_package = this.getCommonPackageJSON()),
|
|
t.prototype.send.call(this, e, n, r)
|
|
}
|
|
,
|
|
e
|
|
}(dt);
|
|
!function(t) {
|
|
var e, n, r, o, i, a, s, c;
|
|
(e = t.ElementStatus || (t.ElementStatus = {}))[e.UNKNOWN_STATUS = 0] = "UNKNOWN_STATUS",
|
|
e[e.CHECKED = 1] = "CHECKED",
|
|
e[e.UNCHECKED = 2] = "UNCHECKED",
|
|
(n = t.PageShowAction || (t.PageShowAction = {}))[n.UNKNOWN_ACTION = 0] = "UNKNOWN_ACTION",
|
|
n[n.ENTER = 1] = "ENTER",
|
|
n[n.LEAVE = 2] = "LEAVE",
|
|
n[n.RESUME = 3] = "RESUME",
|
|
(r = t.ActionStatus || (t.ActionStatus = {}))[r.UNKNOWN_STATUS = 0] = "UNKNOWN_STATUS",
|
|
r[r.SUCCESS = 1] = "SUCCESS",
|
|
r[r.FAIL = 2] = "FAIL",
|
|
(o = t.ActionType || (t.ActionType = {}))[o.UNKNOWN_ACTION_TYPE = 0] = "UNKNOWN_ACTION_TYPE",
|
|
o[o.CLICK = 1] = "CLICK",
|
|
o[o.LEFT_PULL = 2] = "LEFT_PULL",
|
|
o[o.RIGHT_PULL = 3] = "RIGHT_PULL",
|
|
o[o.UP_PULL = 4] = "UP_PULL",
|
|
o[o.DOWN_PULL = 5] = "DOWN_PULL",
|
|
(i = t.SubAction || (t.SubAction = {}))[i.UNKNOWN_SUB_ACTION = 0] = "UNKNOWN_SUB_ACTION",
|
|
i[i.PAGE_ENTER = 1] = "PAGE_ENTER",
|
|
i[i.PAGE_LEAVE = 2] = "PAGE_LEAVE",
|
|
i[i.PAGE_RESUME = 3] = "PAGE_RESUME",
|
|
i[i.PAGE_PAUSE = 4] = "PAGE_PAUSE",
|
|
(a = t.Direction || (t.Direction = {}))[a.UNKNOWN2 = 0] = "UNKNOWN2",
|
|
a[a.UP = 1] = "UP",
|
|
a[a.DOWN = 2] = "DOWN",
|
|
a[a.LEFT = 3] = "LEFT",
|
|
a[a.RIGHT = 4] = "RIGHT",
|
|
(s = t.TaskStatus || (t.TaskStatus = {}))[s.UNKNOWN_STATUS = 0] = "UNKNOWN_STATUS",
|
|
s[s.START = 1] = "START",
|
|
s[s.RETRY = 2] = "RETRY",
|
|
s[s.PAUSE = 3] = "PAUSE",
|
|
s[s.RESUME = 4] = "RESUME",
|
|
s[s.PENDING = 5] = "PENDING",
|
|
s[s.PROCESSING = 6] = "PROCESSING",
|
|
s[s.SUCCESS = 7] = "SUCCESS",
|
|
s[s.FAIL = 8] = "FAIL",
|
|
s[s.CANCEL = 9] = "CANCEL",
|
|
s[s.FINISH = 10] = "FINISH",
|
|
(c = t.OperationType || (t.OperationType = {}))[c.UNKNOWN_OPERATION = 0] = "UNKNOWN_OPERATION",
|
|
c[c.CLICK = 1] = "CLICK",
|
|
c[c.DOUBLE_CLICK = 2] = "DOUBLE_CLICK",
|
|
c[c.TRIPLE_CLICK = 3] = "TRIPLE_CLICK",
|
|
c[c.LONG_PRESS = 4] = "LONG_PRESS",
|
|
c[c.PULL = 5] = "PULL",
|
|
c[c.DRAG = 6] = "DRAG",
|
|
c[c.SCALE = 7] = "SCALE",
|
|
c[c.PULL_DOWN = 8] = "PULL_DOWN",
|
|
c[c.PULL_UP = 9] = "PULL_UP",
|
|
c[c.RIGHT_CLICK = 10] = "RIGHT_CLICK",
|
|
c[c.AUTO = 11] = "AUTO"
|
|
}(It || (It = {})),
|
|
function(t) {
|
|
var e, n;
|
|
(e = t.ShowType || (t.ShowType = {}))[e.UNKNOWN_TYPE = 0] = "UNKNOWN_TYPE",
|
|
e[e.PAGE_AUTO = 10] = "PAGE_AUTO",
|
|
e[e.PAGE_CUSTOM = 11] = "PAGE_CUSTOM",
|
|
e[e.ELEMENT = 12] = "ELEMENT",
|
|
(n = t.TaskEventType || (t.TaskEventType = {}))[n.UNKNOWN_TYPE = 0] = "UNKNOWN_TYPE",
|
|
n[n.USER_OPERATION = 1] = "USER_OPERATION",
|
|
n[n.STAY_LENGTH_STAT_EVENT = 2] = "STAY_LENGTH_STAT_EVENT",
|
|
n[n.BACKGROUND_TASK_EVENT = 3] = "BACKGROUND_TASK_EVENT"
|
|
}(Kt || (Kt = {})),
|
|
function(t) {
|
|
var e;
|
|
(e = t.ShowType || (t.ShowType = {}))[e.UNKNOWN2 = 0] = "UNKNOWN2",
|
|
e[e.PAGE = 1] = "PAGE"
|
|
}(Xt || (Xt = {}));
|
|
var Rt, Ht, Dt = !0, Yt = (new Date).valueOf(), jt = function(t, e) {
|
|
var n, r;
|
|
void 0 === e && (e = !1);
|
|
var o = t.type
|
|
, i = t.currentUrlPackage
|
|
, a = t.referUrlPackage
|
|
, s = t.name
|
|
, c = void 0 === s ? "" : s
|
|
, u = t.action
|
|
, l = t.beginTime
|
|
, p = t.params
|
|
, h = t.contentPackage
|
|
, m = t.status
|
|
, f = t.actionType
|
|
, g = t.auto
|
|
, y = ((n = {
|
|
status: m ? It.ActionStatus[m] || It.ActionStatus.UNKNOWN_STATUS : It.ActionStatus.SUCCESS
|
|
})[e ? "show_type" : "action_type"] = f ? It.ActionType[f] || It.ActionType.UNKNOWN_ACTION_TYPE : It.ActionType.CLICK,
|
|
n.url_package = i,
|
|
n.refer_url_package = a,
|
|
n[e ? "content_wrapper" : "content_package"] = h,
|
|
n);
|
|
if ("PV" === o) {
|
|
var v = It.SubAction.PAGE_ENTER
|
|
, b = It.PageShowAction.ENTER
|
|
, S = Dt
|
|
, w = 0;
|
|
switch (Dt = !1,
|
|
u) {
|
|
case "leave":
|
|
b = It.PageShowAction.LEAVE,
|
|
v = It.SubAction.PAGE_LEAVE,
|
|
w = K((new Date).valueOf() - (l || Yt));
|
|
break;
|
|
case "enter":
|
|
b = It.PageShowAction.ENTER,
|
|
v = It.SubAction.PAGE_ENTER,
|
|
Yt = (new Date).valueOf();
|
|
break;
|
|
case "visible":
|
|
b = It.PageShowAction.RESUME,
|
|
v = It.SubAction.PAGE_RESUME,
|
|
Yt = (new Date).valueOf();
|
|
break;
|
|
case "hidden":
|
|
b = It.PageShowAction.LEAVE,
|
|
v = It.SubAction.PAGE_PAUSE,
|
|
w = K((new Date).valueOf() - (l || Yt))
|
|
}
|
|
var L = g ? Kt.ShowType.PAGE_AUTO : Kt.ShowType.PAGE_CUSTOM;
|
|
return e && (S = void 0,
|
|
L = Xt.ShowType.PAGE),
|
|
{
|
|
show_event: d({
|
|
action: b,
|
|
sub_action: v,
|
|
type: L,
|
|
first_load: S,
|
|
time_cost: 0,
|
|
stay_length: w
|
|
}, y)
|
|
}
|
|
}
|
|
return {
|
|
show_event: d({
|
|
action: e ? 0 : It.PageShowAction.ENTER,
|
|
type: e ? 0 : Kt.ShowType.ELEMENT,
|
|
sub_action: e ? 0 : It.SubAction.PAGE_ENTER,
|
|
element_package: (r = {},
|
|
r[e ? "action2" : "action"] = c,
|
|
r.params = JSON.stringify(p),
|
|
r)
|
|
}, y)
|
|
}
|
|
}, Vt = function(t, e) {
|
|
var n, r;
|
|
void 0 === e && (e = !1);
|
|
var o = t.sessionId
|
|
, i = t.currentUrlPackage
|
|
, a = t.referUrlPackage
|
|
, s = t.name
|
|
, c = t.params
|
|
, u = t.type
|
|
, l = t.contentPackage
|
|
, p = t.status
|
|
, h = t.taskType
|
|
, m = t.operationDirection
|
|
, f = ((n = {
|
|
url_package: i,
|
|
refer_url_package: a,
|
|
element_package: (r = {},
|
|
r[e ? "action2" : "action"] = s,
|
|
r.params = JSON.stringify(c),
|
|
r)
|
|
})[e ? "content_wrapper" : "content_package"] = l,
|
|
n);
|
|
return e ? "CLICK" === u ? {
|
|
click_event: d({
|
|
type: h && It.OperationType[h] || It.OperationType.CLICK,
|
|
direction: m && It.Direction[m] || It.Direction.UNKNOWN2
|
|
}, f)
|
|
} : {
|
|
task_event: d({
|
|
action2: u,
|
|
status: p && It.TaskStatus[p] || It.TaskStatus.UNKNOWN_STATUS
|
|
}, f)
|
|
} : {
|
|
task_event: d({
|
|
type: h && Kt.TaskEventType[h] || Kt.TaskEventType.USER_OPERATION,
|
|
status: p && It.TaskStatus[p] || It.TaskStatus.UNKNOWN_STATUS,
|
|
operation_type: It.OperationType[u] || It.OperationType.CLICK,
|
|
operation_direction: m && It.Direction[m] || It.Direction.UNKNOWN2,
|
|
session_id: o
|
|
}, f)
|
|
}
|
|
}, zt = function(t) {
|
|
var e = t.name
|
|
, n = t.params
|
|
, r = t.currentUrlPackage
|
|
, o = t.referUrlPackage
|
|
, i = p(t, ["name", "params", "currentUrlPackage", "referUrlPackage"]);
|
|
return {
|
|
key: e,
|
|
value: JSON.stringify(d(d({
|
|
url_package: r,
|
|
refer_url_package: o
|
|
}, n), i))
|
|
}
|
|
}, At = function(t) {
|
|
var e = t.currentUrlPackage
|
|
, n = t.referUrlPackage
|
|
, r = t.options;
|
|
return {
|
|
video_stat_event: d(d({}, r), {
|
|
url_package: e,
|
|
refer_url_package: n
|
|
})
|
|
}
|
|
}, Jt = (Rt = (new Date).getTimezoneOffset() / 60) <= 0 ? "GMT+" + T(-Rt + "", 2, "0") + ":00" : "GMT-" + T(Rt + "", 2, "0") + ":00", Ft = function() {
|
|
function t(t, e) {
|
|
void 0 === e && (e = !1),
|
|
this.client_timestamp = K((new Date).valueOf()),
|
|
this.client_increment_id = 0,
|
|
this.session_id = b.sessionId,
|
|
this.event_id = "",
|
|
e || (this.time_zone = Jt),
|
|
Object.assign(this, t),
|
|
this.genIncrementId()
|
|
}
|
|
return t.prototype.genIncrementId = function() {
|
|
this.client_increment_id = this.isCustomStatEvent() ? bt("WEBLOGGER_CUSTOM_INCREAMENT_ID_KEY") : bt("WEBLOGGER_INCREAMENT_ID_KEY")
|
|
}
|
|
,
|
|
t.prototype.isCustomStatEvent = function() {
|
|
return !(!this.stat_package || !("custom_stat_event"in this.stat_package))
|
|
}
|
|
,
|
|
t.prototype.getEventType = function() {
|
|
if (this.event_package) {
|
|
var t = this.event_package
|
|
, e = t.task_event
|
|
, n = t.show_event
|
|
, r = t.click_event
|
|
, o = t.custom_event;
|
|
if (n)
|
|
return "showEvent";
|
|
if (r)
|
|
return "clickEvent";
|
|
if (e)
|
|
return "taskEvent";
|
|
if (o)
|
|
return "customEvent"
|
|
}
|
|
return "customEvent"
|
|
}
|
|
,
|
|
t
|
|
}();
|
|
function Bt(t, e, n) {
|
|
var r;
|
|
void 0 === n && (n = !1);
|
|
var o, i = e.eventId, a = e.currentUrlPackage, s = e.referUrlPackage, c = e.contentPackage, u = e.name, l = e.params;
|
|
switch (n && "RADAR" !== t && "CUSTOM" !== t && (a && (a.page2 = a.page,
|
|
delete a.page),
|
|
s && (s.page2 = s.page,
|
|
delete s.page)),
|
|
t) {
|
|
case "PV":
|
|
case "SHOW":
|
|
return new Ft({
|
|
event_package: jt({
|
|
type: t,
|
|
status: e.status,
|
|
currentUrlPackage: a,
|
|
referUrlPackage: s,
|
|
action: e.type,
|
|
beginTime: e.beginTime,
|
|
actionType: e.actionType,
|
|
name: u,
|
|
params: l,
|
|
contentPackage: c,
|
|
operationDirection: e.operationDirection,
|
|
auto: e.auto
|
|
}, n),
|
|
event_id: i
|
|
},n);
|
|
case "CUSTOM":
|
|
case "CUSTOM_STAT_EVENT":
|
|
var d = zt({
|
|
name: u,
|
|
params: l,
|
|
currentUrlPackage: a,
|
|
referUrlPackage: s
|
|
});
|
|
return new Ft(n ? {
|
|
event_package: {
|
|
custom_event: d
|
|
},
|
|
event_id: i
|
|
} : {
|
|
stat_package: {
|
|
custom_stat_event: d
|
|
},
|
|
event_id: i
|
|
},n);
|
|
case "RADAR":
|
|
return new Ft({
|
|
stat_package: {
|
|
custom_stat_event: zt({
|
|
name: u,
|
|
params: l,
|
|
currentUrlPackage: a,
|
|
referUrlPackage: s
|
|
})
|
|
},
|
|
event_id: i
|
|
},n);
|
|
case "HEART_BEAT_EVENT":
|
|
case "LAUNCH_EVENT":
|
|
case "APP_USAGE_STAT_EVENT":
|
|
case "EXCEPTION_EVENT":
|
|
case "DEVICE_STAT_EVENT":
|
|
return new Ft({
|
|
stat_package: (r = {},
|
|
r[t.toLowerCase()] = (o = e,
|
|
o.currentUrlPackage,
|
|
o.referUrlPackage,
|
|
o.taskType,
|
|
p(o, ["currentUrlPackage", "referUrlPackage", "taskType"])),
|
|
r)
|
|
},n);
|
|
case "VIDEO":
|
|
return new Ft(n ? {
|
|
stat_package: At({
|
|
currentUrlPackage: a,
|
|
referUrlPackage: s,
|
|
options: l.params
|
|
})
|
|
} : {
|
|
event_package: Vt({
|
|
type: t,
|
|
status: e.status,
|
|
taskType: e.taskType,
|
|
sessionId: b.sessionId,
|
|
currentUrlPackage: a,
|
|
referUrlPackage: s,
|
|
name: u,
|
|
params: l.params,
|
|
contentPackage: c
|
|
}, n),
|
|
event_id: i
|
|
},n);
|
|
default:
|
|
return new Ft({
|
|
event_package: Vt({
|
|
type: t,
|
|
status: e.status,
|
|
taskType: e.taskType,
|
|
sessionId: b.sessionId,
|
|
currentUrlPackage: a,
|
|
referUrlPackage: s,
|
|
name: u,
|
|
params: l,
|
|
contentPackage: c
|
|
}, n),
|
|
event_id: i
|
|
},n)
|
|
}
|
|
}
|
|
var Qt, qt = null, $t = "tool", te = !1, ee = function(t) {
|
|
return void 0 === t && (t = Ht || "undefined" != typeof window && window.yoda),
|
|
Ht && Ht.isInYoda ? Ht : t && t.isInYoda ? Ht = t : null
|
|
}, ne = function() {
|
|
return h(void 0, void 0, void 0, (function() {
|
|
return m(this, (function(t) {
|
|
switch (t.label) {
|
|
case 0:
|
|
if (!Ht || te)
|
|
return [2];
|
|
t.label = 1;
|
|
case 1:
|
|
return t.trys.push([1, 6, , 7]),
|
|
qt ? [4, qt] : [3, 3];
|
|
case 2:
|
|
return t.sent(),
|
|
[3, 5];
|
|
case 3:
|
|
return [4, qt = Ht.ready()];
|
|
case 4:
|
|
t.sent(),
|
|
Ht.register({
|
|
namespace: "webview",
|
|
name: "getPageLoadData"
|
|
}),
|
|
Ht.register({
|
|
namespace: "tool",
|
|
name: "setClientLog"
|
|
}),
|
|
Ht.register({
|
|
namespace: "tool",
|
|
name: "sendRadarLog"
|
|
}),
|
|
Ht.register({
|
|
namespace: "tool",
|
|
name: "sendSummarizedLog"
|
|
}),
|
|
Ht.register({
|
|
namespace: "tool",
|
|
name: "getKswitchData"
|
|
}),
|
|
t.label = 5;
|
|
case 5:
|
|
return qt = null,
|
|
te = !0,
|
|
[3, 7];
|
|
case 6:
|
|
return t.sent(),
|
|
[3, 7];
|
|
case 7:
|
|
return [2]
|
|
}
|
|
}
|
|
))
|
|
}
|
|
))
|
|
}, re = function(t, e) {
|
|
return void 0 === e && (e = "tool"),
|
|
h(void 0, void 0, void 0, (function() {
|
|
var n, r, o;
|
|
return m(this, (function(i) {
|
|
switch (i.label) {
|
|
case 0:
|
|
return n = !1,
|
|
Ht ? te ? [3, 2] : [4, ne()] : [3, 5];
|
|
case 1:
|
|
i.sent(),
|
|
i.label = 2;
|
|
case 2:
|
|
return i.trys.push([2, 4, , 5]),
|
|
[4, Ht.tool.canIUse({
|
|
namespace: e,
|
|
name: t
|
|
})];
|
|
case 3:
|
|
return r = i.sent().canUse,
|
|
n = r,
|
|
[3, 5];
|
|
case 4:
|
|
return o = i.sent(),
|
|
L("[error 206]", "yoda.tool.canIUse({ '" + e + "', '" + t + "' }) \u62a5\u9519: " + o.message),
|
|
[3, 5];
|
|
case 5:
|
|
return [2, n]
|
|
}
|
|
}
|
|
))
|
|
}
|
|
))
|
|
}, oe = function(t, e) {
|
|
return h(void 0, void 0, void 0, (function() {
|
|
var n;
|
|
return m(this, (function(r) {
|
|
switch (r.label) {
|
|
case 0:
|
|
return Ht ? te ? [3, 2] : [4, ne()] : [2];
|
|
case 1:
|
|
r.sent(),
|
|
r.label = 2;
|
|
case 2:
|
|
return r.trys.push([2, 4, , 5]),
|
|
[4, Ht[$t].setClientLog({
|
|
type: t,
|
|
data: e
|
|
}, (function(n, r) {
|
|
n && 1 !== n.result && L("[error 203]", "yoda.tool.setClientLog \u57cb\u70b9\u53d1\u9001\u5931\u8d25", JSON.stringify({
|
|
type: t,
|
|
data: e
|
|
}), "result: " + n + ", message: " + r)
|
|
}
|
|
))];
|
|
case 3:
|
|
return [2, r.sent()];
|
|
case 4:
|
|
return n = r.sent(),
|
|
L("[error 209]", "yoda." + $t + ".setClientLog() \u62a5\u9519: " + n.message),
|
|
[3, 5];
|
|
case 5:
|
|
return [2]
|
|
}
|
|
}
|
|
))
|
|
}
|
|
))
|
|
}, ie = function() {
|
|
return h(void 0, void 0, void 0, (function() {
|
|
var t;
|
|
return m(this, (function(e) {
|
|
switch (e.label) {
|
|
case 0:
|
|
return Ht ? [4, re(t = "setClientLog", "tool")] : [2, !1];
|
|
case 1:
|
|
return e.sent() ? ($t = "tool",
|
|
[2, !0]) : [4, re(t, "platform")];
|
|
case 2:
|
|
return e.sent() ? ($t = "platform",
|
|
[2, !0]) : [2, !1]
|
|
}
|
|
}
|
|
))
|
|
}
|
|
))
|
|
}, ae = void 0, se = function(t, e) {
|
|
return h(void 0, void 0, void 0, (function() {
|
|
var n, r;
|
|
return m(this, (function(o) {
|
|
switch (o.label) {
|
|
case 0:
|
|
return Ht ? te ? [3, 2] : [4, ne()] : [2];
|
|
case 1:
|
|
o.sent(),
|
|
o.label = 2;
|
|
case 2:
|
|
return o.trys.push([2, 4, , 5]),
|
|
[4, null === (r = Ht.tool) || void 0 === r ? void 0 : r.handleEntryTag({
|
|
type: t,
|
|
params: e
|
|
})];
|
|
case 3:
|
|
return (n = o.sent()) && n.data && n.data.entryTag ? [2, n.data.entryTag] : [3, 5];
|
|
case 4:
|
|
return L("[error 213]", "\u64cd\u4f5c\u67d3\u8272\u53c2\u6570\u62a5\u9519", o.sent()),
|
|
[3, 5];
|
|
case 5:
|
|
return [2, null]
|
|
}
|
|
}
|
|
))
|
|
}
|
|
))
|
|
}, ce = {
|
|
isSupportBridgeLog: ie,
|
|
isSupportBridge: re,
|
|
getWebviewLoadPerf: function(t) {
|
|
return void 0 === t && (t = {}),
|
|
h(void 0, void 0, void 0, (function() {
|
|
var e;
|
|
return m(this, (function(n) {
|
|
switch (n.label) {
|
|
case 0:
|
|
return Ht ? te ? [3, 2] : [4, ne()] : [2];
|
|
case 1:
|
|
n.sent(),
|
|
n.label = 2;
|
|
case 2:
|
|
return n.trys.push([2, 4, , 5]),
|
|
[4, null === (e = Ht.webview) || void 0 === e ? void 0 : e.getPageLoadData(t)];
|
|
case 3:
|
|
return [2, n.sent()];
|
|
case 4:
|
|
return L("[error 207]", "yoda.webview.getPageLoadData() \u62a5\u9519: " + n.sent().message),
|
|
[3, 5];
|
|
case 5:
|
|
return [2]
|
|
}
|
|
}
|
|
))
|
|
}
|
|
))
|
|
},
|
|
sendRadarLog: function(t) {
|
|
return void 0 === t && (t = {}),
|
|
h(void 0, void 0, void 0, (function() {
|
|
var e;
|
|
return m(this, (function(n) {
|
|
switch (n.label) {
|
|
case 0:
|
|
return Ht ? te ? [3, 2] : [4, ne()] : [2];
|
|
case 1:
|
|
n.sent(),
|
|
n.label = 2;
|
|
case 2:
|
|
return n.trys.push([2, 4, , 5]),
|
|
[4, null === (e = Ht.tool) || void 0 === e ? void 0 : e.sendRadarLog(t, (function(e, n) {
|
|
e && 1 !== e.result && L("[error 205]", "yoda.tool.sendRadarLog \u57cb\u70b9\u53d1\u9001\u5931\u8d25", JSON.stringify(t), "result: " + e + ", message: " + n)
|
|
}
|
|
))];
|
|
case 3:
|
|
return [2, n.sent()];
|
|
case 4:
|
|
return L("[error 207]", "yoda.tool.sendRadarLog() \u62a5\u9519: " + n.sent().message),
|
|
[3, 5];
|
|
case 5:
|
|
return [2]
|
|
}
|
|
}
|
|
))
|
|
}
|
|
))
|
|
},
|
|
setClientLog: oe,
|
|
initYoda: ne,
|
|
yodaAlready: te,
|
|
getKDSWebviewLoadPerf: function(t) {
|
|
return void 0 === t && (t = {}),
|
|
h(void 0, void 0, void 0, (function() {
|
|
var e;
|
|
return m(this, (function(n) {
|
|
switch (n.label) {
|
|
case 0:
|
|
return Ht ? te ? [3, 2] : [4, ne()] : [2];
|
|
case 1:
|
|
n.sent(),
|
|
n.label = 2;
|
|
case 2:
|
|
return [4, re("getPageLoadData", "system")];
|
|
case 3:
|
|
if (!n.sent())
|
|
return [3, 7];
|
|
n.label = 4;
|
|
case 4:
|
|
return n.trys.push([4, 6, , 7]),
|
|
[4, null === (e = Ht.system) || void 0 === e ? void 0 : e.getPageLoadData(t)];
|
|
case 5:
|
|
return [2, n.sent()];
|
|
case 6:
|
|
return L("[error 212]", "yoda.system.getPageLoadData() \u62a5\u9519", n.sent().message),
|
|
[3, 7];
|
|
case 7:
|
|
return [2]
|
|
}
|
|
}
|
|
))
|
|
}
|
|
))
|
|
},
|
|
sendSummarizedLog: function(t) {
|
|
return void 0 === t && (t = {}),
|
|
h(void 0, void 0, void 0, (function() {
|
|
var e;
|
|
return m(this, (function(n) {
|
|
switch (n.label) {
|
|
case 0:
|
|
if (!Ht)
|
|
return [2];
|
|
n.label = 1;
|
|
case 1:
|
|
return n.trys.push([1, 5, , 6]),
|
|
te ? [3, 3] : [4, ne()];
|
|
case 2:
|
|
n.sent(),
|
|
n.label = 3;
|
|
case 3:
|
|
return [4, null === (e = Ht.tool) || void 0 === e ? void 0 : e.sendSummarizedLog(t)];
|
|
case 4:
|
|
return [2, n.sent()];
|
|
case 5:
|
|
return L("[error 208]", "yoda.tool.sendSummarizedLog() \u62a5\u9519: " + n.sent().message),
|
|
[3, 6];
|
|
case 6:
|
|
return [2]
|
|
}
|
|
}
|
|
))
|
|
}
|
|
))
|
|
}
|
|
}, ue = function(t, e, n, r) {
|
|
void 0 === t && (t = g.CLICK),
|
|
void 0 === e && (e = {}),
|
|
"string" != typeof t && (t = t.type),
|
|
t = t.toUpperCase();
|
|
var o = {};
|
|
return "string" == typeof e ? (o.contentPackage = r,
|
|
"CUSTOM" === t ? (o.key = e,
|
|
o.value = n) : (o.params = n,
|
|
"PV" === t ? o.page = e : o.action = e)) : o = e,
|
|
[t, o]
|
|
}, le = "WEBLOGGER_SILENCED";
|
|
"undefined" != typeof window && ("object" != typeof window._WEBLOGGER && (window._WEBLOGGER = {
|
|
_silenced: !1,
|
|
constructors: [],
|
|
instances: [],
|
|
silence: function(t) {
|
|
try {
|
|
t ? sessionStorage.setItem(le, "1") : sessionStorage.removeItem(le),
|
|
window._WEBLOGGER.instances.forEach((function(e) {
|
|
null == e || e.silence(t)
|
|
}
|
|
))
|
|
} catch (t) {}
|
|
}
|
|
}),
|
|
Qt = window._WEBLOGGER);
|
|
var de, pe, he = !1, me = Math.random(), fe = function(t) {
|
|
function e(e, n) {
|
|
void 0 === e && (e = {});
|
|
var r, o, i, a, s = t.call(this, e, n) || this;
|
|
return s.yoda = null,
|
|
s.SampledPageMap = {},
|
|
s.beforeUnload = function(t) {
|
|
if (!he) {
|
|
for (var e in s.logger.drain(),
|
|
s.plugins) {
|
|
var n = s.plugins[e];
|
|
"function" == typeof n.beforeUnload && n.beforeUnload(t)
|
|
}
|
|
he = !0,
|
|
setTimeout((function() {
|
|
he = !1
|
|
}
|
|
), 2e3)
|
|
}
|
|
}
|
|
,
|
|
s.isBridge = e.bridgeMode && e.yoda && e.yoda.isInYoda,
|
|
s.logConfig.isBridge = s.isBridge,
|
|
r = "sessionId",
|
|
o = n && n.session_id || H("sid") || (i = "",
|
|
N() && (i = H("session_id") || H("sid")) ? i : j()),
|
|
b[r] = o,
|
|
s.isV2 = "v2" === s.logConfig.proto,
|
|
s.getSampled(e),
|
|
s.presetBaseOption(s.baseOption),
|
|
s.commonPackage = new xt(s.baseOption),
|
|
s.logger = new Ut(s.logConfig,s.commonPackage),
|
|
s.initYoda(),
|
|
s.addPlugins(),
|
|
k(window, "pagehide", s.beforeUnload),
|
|
k(window, "beforeunload", s.beforeUnload),
|
|
a = s,
|
|
(null == Qt ? void 0 : Qt.instances) && a && -1 === Qt.instances.indexOf(a) && (Qt.instances.push(a),
|
|
Qt._silenced && (null == a || a.silence(!0))),
|
|
s
|
|
}
|
|
return l(e, t),
|
|
e.prototype.getSampled = function(t) {
|
|
"function" == typeof t.sampleRateFn ? this.sampled = !!t.sampleRateFn() : void 0 !== t.sampleRate && (this.sampled = me < Number(t.sampleRate))
|
|
}
|
|
,
|
|
e.prototype.presetBaseOption = function(t) {
|
|
this.isBridge || (this.isV2 ? ("number" != typeof t.product && L("[error 101]", "\u8bf7\u8bbe\u7f6e\u6709\u6548\u7684 product \u503c\uff0c\u503c\u7c7b\u578b\u4e3a number!"),
|
|
delete t.product_name) : (t.product_name && "string" == typeof t.product_name || L("[error 100]", "\u8bf7\u8bbe\u7f6e\u6709\u6548\u7684 product_name \u503c\uff0c\u503c\u7c7b\u578b\u4e3a string!"),
|
|
delete t.product),
|
|
t.user_id || (t.user_id = H("userId") || H("userName") || void 0,
|
|
t.user_id || function() {
|
|
for (var t = [], e = 0; e < arguments.length; e++)
|
|
t[e] = arguments[e];
|
|
try {
|
|
var n = null === console || void 0 === console ? void 0 : console.warn;
|
|
n && n.call.apply(n, f([console], t))
|
|
} catch (t) {
|
|
return
|
|
}
|
|
}("[warn 102]", "user_id \u4e3a\u7a7a\uff0c\u8bf7\u786e\u5b9a\u662f\u5426\u4f20\u5165\uff0c\u5982\u679c\u662f\u5f02\u6b65\u901a\u8fc7 updateCommonPackage \u63a5\u53e3\u4f20\u5165\uff0c\u53ef\u4ee5\u5ffd\u7565\u8be5\u63d0\u793a!")),
|
|
t.device_id || (t.device_id = A(),
|
|
t.device_id || L("[error 103]", "device_id \u4e3a\u7a7a\uff0c\u8bf7\u8bbe\u7f6e\u6709\u6548\u7684\u8bbe\u5907 id!")),
|
|
!t.global_id && N() && (t.global_id = H("egid") || ""))
|
|
}
|
|
,
|
|
Object.defineProperty(e.prototype, "Utils", {
|
|
get: function() {
|
|
return {
|
|
yoda: this.yoda && ce,
|
|
cookie: Y,
|
|
ua: ft,
|
|
io: {
|
|
sendData: Zt
|
|
}
|
|
}
|
|
},
|
|
enumerable: !1,
|
|
configurable: !0
|
|
}),
|
|
Object.defineProperty(e.prototype, "isKSwitchSampled", {
|
|
get: function() {
|
|
return void 0 !== typeof ae
|
|
},
|
|
enumerable: !1,
|
|
configurable: !0
|
|
}),
|
|
e.prototype.initYoda = function() {
|
|
return h(this, void 0, void 0, (function() {
|
|
var t = this;
|
|
return m(this, (function(e) {
|
|
switch (e.label) {
|
|
case 0:
|
|
return this.logConfig.yoda && !this.yoda && (this.yoda = ee(this.logConfig.yoda)),
|
|
this.yoda ? [4, ne()] : [3, 2];
|
|
case 1:
|
|
e.sent(),
|
|
e.label = 2;
|
|
case 2:
|
|
return h(void 0, void 0, void 0, (function() {
|
|
var t, e, n, r, o;
|
|
return m(this, (function(i) {
|
|
switch (i.label) {
|
|
case 0:
|
|
if (!Ht)
|
|
return [2, ae = null];
|
|
if (void 0 !== ae)
|
|
return [2, ae];
|
|
i.label = 1;
|
|
case 1:
|
|
return i.trys.push([1, 4, , 5]),
|
|
[4, re("getKswitchData", "tool")];
|
|
case 2:
|
|
return i.sent() ? [4, Ht.tool.getKswitchData({
|
|
keys: [{
|
|
key: "webloggerSampling"
|
|
}]
|
|
})] : [2, ae = null];
|
|
case 3:
|
|
if ((t = i.sent()) && t.data && ("string" == typeof (e = t.data[0]) && (e = JSON.parse(e)),
|
|
n = e ? e.value : null)) {
|
|
for (o in "string" == typeof n && (n = JSON.parse(n)),
|
|
r = "undefined" != typeof location ? location.host : "*",
|
|
n)
|
|
"*" !== o && -1 === o.indexOf(r) || (ae || (ae = {}),
|
|
ae[o] = n[o]);
|
|
if (ae)
|
|
return [2, ae]
|
|
}
|
|
return [3, 5];
|
|
case 4:
|
|
return L("[error 201]", "yoda.tool.getKswitchData \u91c7\u6837\u914d\u7f6e\u83b7\u53d6\u51fa\u9519", i.sent().message),
|
|
[3, 5];
|
|
case 5:
|
|
return [2, ae = null]
|
|
}
|
|
}
|
|
))
|
|
}
|
|
)).then((function() {
|
|
t.currentUrlPackage && (t.currentUrlPackage.sampled = t.getPageSampled())
|
|
}
|
|
)),
|
|
h(void 0, void 0, void 0, (function() {
|
|
var t;
|
|
return m(this, (function(e) {
|
|
switch (e.label) {
|
|
case 0:
|
|
return Ht ? [4, re("getDeviceInfo", "system")] : [2, null];
|
|
case 1:
|
|
if (!e.sent())
|
|
return [3, 5];
|
|
e.label = 2;
|
|
case 2:
|
|
return e.trys.push([2, 4, , 5]),
|
|
[4, null === (t = Ht.system) || void 0 === t ? void 0 : t.getDeviceInfo()];
|
|
case 3:
|
|
return [2, e.sent()];
|
|
case 4:
|
|
return L("[error 210]", "yoda.system.getDeviceInfo() \u62a5\u9519", e.sent().message),
|
|
[3, 5];
|
|
case 5:
|
|
return [2]
|
|
}
|
|
}
|
|
))
|
|
}
|
|
)).then((function(e) {
|
|
e && e.mod && (t.commonPackage.device_package.model = e.mod)
|
|
}
|
|
)),
|
|
h(void 0, void 0, void 0, (function() {
|
|
var t;
|
|
return m(this, (function(e) {
|
|
switch (e.label) {
|
|
case 0:
|
|
return Ht ? [4, re("getAppInfo", "system")] : [2, null];
|
|
case 1:
|
|
if (!e.sent())
|
|
return [3, 5];
|
|
e.label = 2;
|
|
case 2:
|
|
return e.trys.push([2, 4, , 5]),
|
|
[4, null === (t = Ht.system) || void 0 === t ? void 0 : t.getAppInfo()];
|
|
case 3:
|
|
return [2, e.sent()];
|
|
case 4:
|
|
return L("[error 209]", "yoda.system.getAppInfo() \u62a5\u9519", e.sent().message),
|
|
[3, 5];
|
|
case 5:
|
|
return [2]
|
|
}
|
|
}
|
|
))
|
|
}
|
|
)).then((function(e) {
|
|
e && (e.did && (t.commonPackage.identity_package.device_id = e.did),
|
|
e.userId && !t.commonPackage.identity_package.user_id && (t.commonPackage.identity_package.user_id = e.userId),
|
|
e.appver && (t.commonPackage.app_package.version_name = e.appver))
|
|
}
|
|
)),
|
|
[2]
|
|
}
|
|
}
|
|
))
|
|
}
|
|
))
|
|
}
|
|
,
|
|
e.prototype.initUrlPackage = function() {
|
|
t.prototype.initUrlPackage.call(this);
|
|
var e, n = this.logConfig.referer, r = "web";
|
|
n ? (e = n.value,
|
|
r = n.type && n.type || r) : "undefined" != typeof document && document.referrer && (e = document.referrer),
|
|
e && this.updateReferUrlPackage(e, r)
|
|
}
|
|
,
|
|
e.prototype.updateCurrentUrlPackage = function(t, e) {
|
|
if (void 0 === t && (t = (null === location || void 0 === location ? void 0 : location.href) || ""),
|
|
void 0 === e && (e = "web"),
|
|
"object" == typeof t && !t.force && this.currentUrlPackage) {
|
|
var n = t.page
|
|
, r = void 0 === n ? this.currentUrlPackage.page : n
|
|
, o = t.params
|
|
, i = void 0 === o ? {} : o;
|
|
if (r === this.currentUrlPackage.page)
|
|
return this.currentUrlPackage.update(r, i)
|
|
}
|
|
this.currentUrlPackage = new Q(t,e,this.logConfig.urlMap),
|
|
this.currentUrlPackage.sampled = this.getPageSampled(),
|
|
this.logConfig.attachUrl && this.currentUrlPackage.attachUrl()
|
|
}
|
|
,
|
|
e.prototype.updateReferUrlPackage = function(t, e) {
|
|
void 0 === t && (t = this.currentUrlPackage),
|
|
void 0 === e && (e = "web"),
|
|
this.referUrlPackage = t instanceof Q ? t : new Q(t,e,this.logConfig.urlMap)
|
|
}
|
|
,
|
|
e.prototype.getPageSampled = function() {
|
|
if (!ae)
|
|
return "boolean" != typeof this.sampled || this.sampled;
|
|
var t = "undefined" != typeof location ? location.href.replace(/https?:\/\//, "").split("?")[0] : "*";
|
|
if (this.SampledPageMap && void 0 !== this.SampledPageMap[t])
|
|
return this.SampledPageMap[t];
|
|
if (ae) {
|
|
var e = void 0
|
|
, n = 0
|
|
, r = null
|
|
, o = [];
|
|
for (var i in ae)
|
|
if (ae.hasOwnProperty(i)) {
|
|
var a = 0;
|
|
if ("*" === i ? a = 1 : 0 === t.indexOf(i) && (i === t ? a = 100 : "/" === i[i.length - 1] && (a = 11 - 1 / i.length)),
|
|
!a)
|
|
continue;
|
|
var s = ae[i]
|
|
, c = s.radar
|
|
, u = s.overwrite
|
|
, l = s.overall;
|
|
a += u ? 1e3 : 0,
|
|
c && o.push({
|
|
radar: c,
|
|
level: a
|
|
}),
|
|
a > n && (n = a,
|
|
e = l)
|
|
}
|
|
n && (r = {},
|
|
o.sort((function(t, e) {
|
|
return t.level - e.level
|
|
}
|
|
)).forEach((function(t) {
|
|
Object.assign(r, t.radar)
|
|
}
|
|
)));
|
|
var d = void 0;
|
|
d = n > 1e3 || void 0 === this.sampled ? Math.random() < Number(e) && (!r || {
|
|
radar: r
|
|
}) : "boolean" != typeof this.sampled || this.sampled,
|
|
this.SampledPageMap && (this.SampledPageMap[t] = d)
|
|
}
|
|
return this.SampledPageMap && this.SampledPageMap[t]
|
|
}
|
|
,
|
|
Object.defineProperty(e.prototype, "isSendSampled", {
|
|
get: function() {
|
|
return this.currentUrlPackage && this.currentUrlPackage.sampled || this.logger.isDebug
|
|
},
|
|
enumerable: !1,
|
|
configurable: !0
|
|
}),
|
|
e.prototype.generateLog = function(t, e, n) {
|
|
void 0 === n && (n = Bt);
|
|
var r, o = e, i = o.action, a = o.params, s = o.status, c = o.type, u = o.eventId, l = o.contentPackage, p = o.urlPage;
|
|
if (l && (l = "string" == typeof l ? l : JSON.stringify(l)),
|
|
t === y.PV) {
|
|
var h = e
|
|
, m = h.page
|
|
, f = h.type;
|
|
f || (e.type = f = "enter"),
|
|
"enter" === f && m ? this.updateCurrentUrlPackage({
|
|
page: m,
|
|
params: a
|
|
}) : this.currentUrlPackage.update(m, a)
|
|
} else
|
|
p && p.page && (r = {
|
|
page: p.page,
|
|
identity: p.identity || j(),
|
|
params: JSON.stringify(p.params),
|
|
page_type: this.currentUrlPackage.page_type
|
|
});
|
|
var g = {
|
|
currentUrlPackage: r || this.currentUrlPackage.toJSON(),
|
|
referUrlPackage: this.referUrlPackage ? this.referUrlPackage.toJSON() : void 0,
|
|
contentPackage: l
|
|
};
|
|
if (t !== y.RADAR && g.currentUrlPackage.page.indexOf("http"),
|
|
t === y.PV) {
|
|
var v = e.type;
|
|
return n(t, d(d(d({}, e), {
|
|
type: v
|
|
}), g), this.isV2)
|
|
}
|
|
if (t === y.SHOW)
|
|
return n(t, d(d(d({}, e), {
|
|
name: i
|
|
}), g), this.isV2);
|
|
if (t === y.VIDEO)
|
|
return n(t, d({
|
|
params: e,
|
|
name: "VIDEO"
|
|
}, g), this.isV2);
|
|
if (t === y.RADAR)
|
|
return n(t, e, this.isV2);
|
|
if (t === y.CUSTOM) {
|
|
var b = e
|
|
, S = b.key
|
|
, w = b.value
|
|
, L = b.eventId;
|
|
return n(t, d(d(d({}, e), {
|
|
params: w,
|
|
eventId: L,
|
|
name: S
|
|
}), g), this.isV2)
|
|
}
|
|
return n(t, d(d(d({}, e), {
|
|
params: a,
|
|
status: s,
|
|
taskType: c,
|
|
eventId: u,
|
|
name: i
|
|
}), g), this.isV2)
|
|
}
|
|
,
|
|
e.prototype.collect = function(t, e, n, r) {
|
|
var o = ue(t, e, n, r)
|
|
, i = o[0]
|
|
, a = o[1];
|
|
return this.send(i, a, !1)
|
|
}
|
|
,
|
|
e.prototype.sendImmediately = function(t, e, n, r) {
|
|
var o = ue(t, e, n, r)
|
|
, i = o[0]
|
|
, a = o[1];
|
|
return this.send(i, a, !0)
|
|
}
|
|
,
|
|
e.prototype.beforeSend = function(t, e, n) {
|
|
var r, o, i = this;
|
|
if (this.emit("event", {
|
|
type: t,
|
|
action: e.type || e.action,
|
|
data: n
|
|
}),
|
|
"CLICK" === t) {
|
|
var a = null === (r = e) || void 0 === r ? void 0 : r.entryTag;
|
|
this.yoda && a && se("setPendingEntryTag", {
|
|
entryTag: d({
|
|
page_name: this.currentUrlPackage.page,
|
|
element_action: null == e ? void 0 : e.action
|
|
}, a)
|
|
})
|
|
} else
|
|
"PV" === t && this.yoda && !this.isBridge && "enter" === ((null === (o = e) || void 0 === o ? void 0 : o.type) || "enter") && (this.logger.sendingYield = h(i, void 0, void 0, (function() {
|
|
var t, e;
|
|
return m(this, (function(n) {
|
|
switch (n.label) {
|
|
case 0:
|
|
return t = this.currentUrlPackage.identity,
|
|
[4, se("clearEntryTag", {
|
|
subPage: t
|
|
})];
|
|
case 1:
|
|
return n.sent(),
|
|
[4, se("consumeEntryTag", {
|
|
subPage: t
|
|
})];
|
|
case 2:
|
|
return e = n.sent(),
|
|
this.commonPackage.updateGlobalAttr({
|
|
entry_tag: e
|
|
}),
|
|
[2]
|
|
}
|
|
}
|
|
))
|
|
}
|
|
)))
|
|
}
|
|
,
|
|
e.prototype.send = function(t, e, n) {
|
|
if (!this._silenced) {
|
|
var r = this.generateLog(t, e);
|
|
if (this.beforeSend(t, e, r),
|
|
"RADAR" === t)
|
|
return this.logger.sendRadar(r, null == e ? void 0 : e.serviceName);
|
|
if ((!this.isV2 || !this.logConfig.forbidV2HttpUrlPage || Z(this.currentUrlPackage.page)) && this.isSendSampled) {
|
|
var o = "object" == typeof e && e.callback || void 0;
|
|
this.logger.send(r, !!n, o)
|
|
}
|
|
}
|
|
}
|
|
,
|
|
e.prototype.destroy = function() {
|
|
t.prototype.destroy.call(this),
|
|
x(window, "pagehide", this.beforeUnload),
|
|
x(window, "beforeunload", this.beforeUnload),
|
|
function(t) {
|
|
if (null == Qt ? void 0 : Qt.instances) {
|
|
var e = Qt.instances.indexOf(t);
|
|
-1 !== e && Qt.instances.splice(e, 1)
|
|
}
|
|
}(this)
|
|
}
|
|
,
|
|
e.prototype.silence = function(t) {
|
|
this._silenced = t
|
|
}
|
|
,
|
|
e.Logger = Ut,
|
|
e
|
|
}(M);
|
|
try {
|
|
pe = ee(s.default.default || s.default)
|
|
} catch (e) {
|
|
pe = ee("undefined" != typeof window && (window.yoda || window.KSYoda))
|
|
}
|
|
var ge, ye = null === (de = null === window || void 0 === window ? void 0 : window.navigator) || void 0 === de ? void 0 : de.platform, ve = ye && -1 !== ["iOS", "Android"].indexOf(ye), be = function(t) {
|
|
function e(e, n) {
|
|
var r = t.call(this, d(d({}, e), {
|
|
yoda: pe || void 0,
|
|
bridgeMode: !(null == e ? void 0 : e.disableBridge)
|
|
}), n) || this;
|
|
return r.entered = "",
|
|
r.checkYodaSupport(),
|
|
r
|
|
}
|
|
return l(e, t),
|
|
e.prototype.checkYodaSupport = function() {
|
|
return h(this, void 0, void 0, (function() {
|
|
var t, e = this;
|
|
return m(this, (function(n) {
|
|
switch (n.label) {
|
|
case 0:
|
|
return this.waitYodaQueue && this.yodaStatus ? [2] : (this.waitYodaQueue = [],
|
|
this.yodaStatus = "CHECKING",
|
|
this.logConfig.disableBridge ? (this.yodaStatus = "DISABLED",
|
|
[3, 3]) : [3, 1]);
|
|
case 1:
|
|
return [4, ie()];
|
|
case 2:
|
|
t = n.sent(),
|
|
this.yodaStatus = t ? "READY" : "DISABLED",
|
|
this.waitYodaQueue.forEach((function(t) {
|
|
var n = t.type
|
|
, r = t.options
|
|
, o = t.immediately;
|
|
e.send(n, r, o)
|
|
}
|
|
)),
|
|
this.waitYodaQueue = [],
|
|
n.label = 3;
|
|
case 3:
|
|
return [2]
|
|
}
|
|
}
|
|
))
|
|
}
|
|
))
|
|
}
|
|
,
|
|
e.prototype.sendByBridge = function(t, e, n) {
|
|
void 0 === t && (t = g.CLICK);
|
|
var r = e.contentPackage;
|
|
if (r && (r = "string" == typeof r ? r : JSON.stringify(r)),
|
|
"PV" === t) {
|
|
var o = e
|
|
, i = o.page
|
|
, a = o.type
|
|
, s = o.params
|
|
, c = o.coPage;
|
|
a || (e.type = a = "enter"),
|
|
"enter" === a ? ((i = i || this.currentUrlPackage.page) && (this.updateCurrentUrlPackage({
|
|
page: i,
|
|
params: s || this.currentUrlPackage.params,
|
|
force: !0
|
|
}),
|
|
this.entered = i),
|
|
c && (this.currentUrlPackage.coPage = c)) : this.currentUrlPackage.update(i, s)
|
|
}
|
|
var u = !!this.currentUrlPackage.coPage
|
|
, l = function(t, e) {
|
|
var n = e
|
|
, r = n.action
|
|
, o = n.params
|
|
, i = n.eventId
|
|
, a = n.contentPackage
|
|
, s = n.currentUrlPackage
|
|
, c = n.status;
|
|
n.name;
|
|
var u = n.feedLogCtx;
|
|
switch (t) {
|
|
case "PV":
|
|
var l = e
|
|
, p = l.type
|
|
, h = l.beginTime;
|
|
return d(d({}, s), {
|
|
actionType: p,
|
|
contentPackage: a,
|
|
pageType: "H5",
|
|
status: c || "SUCCESS",
|
|
beginTime: h,
|
|
eventId: i
|
|
});
|
|
case "SHOW":
|
|
return {
|
|
action: r,
|
|
params: JSON.stringify(o),
|
|
contentPackage: a,
|
|
feedLogCtx: u,
|
|
eventId: i
|
|
};
|
|
case "RADAR":
|
|
case "CUSTOM":
|
|
var m = e
|
|
, f = m.key
|
|
, g = m.value
|
|
, y = m.biz;
|
|
return {
|
|
key: f,
|
|
value: JSON.stringify(d(d({}, g), {
|
|
url_package: s
|
|
})),
|
|
biz: y,
|
|
eventId: i
|
|
};
|
|
default:
|
|
var v = e.type;
|
|
return {
|
|
action: r,
|
|
params: JSON.stringify(o),
|
|
contentPackage: a,
|
|
type: v || "USER_OPERATION",
|
|
status: c || "UNKNOWN_STATUS",
|
|
operationType: t,
|
|
operationDirection: "UNKNOWN2",
|
|
feedLogCtx: u,
|
|
eventId: i
|
|
}
|
|
}
|
|
}(t, d(d({}, e), {
|
|
contentPackage: r,
|
|
currentUrlPackage: this.currentUrlPackage.toJSON()
|
|
}))
|
|
, p = -1 !== ["CUSTOM", "RADAR"].indexOf(t);
|
|
this.commonPackage.increaseH5SeqId(p);
|
|
var h = this.baseOption
|
|
, m = h.service_name
|
|
, f = h.sub_biz
|
|
, y = h.need_encrypt;
|
|
if (l.h5ExtraAttr = JSON.stringify(this.commonPackage.getH5ExtraAttr({
|
|
bridge_info: (null == pe ? void 0 : pe.version) || !0,
|
|
coPage: u
|
|
})),
|
|
l.realtime = !!n,
|
|
l.serviceName = m || "",
|
|
l.subBiz = f || "",
|
|
l.needEncrypt = y || !1,
|
|
l.container = ve ? "REACT_NATIVE" : "H5",
|
|
this.emit("event", {
|
|
type: t,
|
|
action: e.type || e.action,
|
|
data: l
|
|
}),
|
|
"PV" !== t) {
|
|
if (this.currentUrlPackage && !this.logConfig.disablePV && (l.urlPage = {
|
|
page: this.currentUrlPackage.page,
|
|
params: JSON.stringify(this.currentUrlPackage.params),
|
|
identity: this.currentUrlPackage.identity,
|
|
coPage: u
|
|
}),
|
|
"SHOW" === t)
|
|
return oe("addElementShowEvent", l);
|
|
if (p) {
|
|
this.logConfig.biz && !l.biz && (l.biz = this.logConfig.biz);
|
|
var v = this.logConfig.customStatToCustom ? "addCustomEvent" : "addCustomStatEvent";
|
|
return oe(v, l)
|
|
}
|
|
return oe("addTaskEvent", l)
|
|
}
|
|
this.logConfig.disablePV || Z(this.currentUrlPackage.page) && ("enter" !== (a = e.type) && "visible" !== a || (l.coPage = u,
|
|
l.pageType = ve ? "NATIVE" : "H5",
|
|
oe("setCurrentPage", l)))
|
|
}
|
|
,
|
|
e.prototype.updateCurrentUrlPackage = function(t, e) {
|
|
if (void 0 === t && (t = (null === location || void 0 === location ? void 0 : location.href) || ""),
|
|
void 0 === e && (e = "web"),
|
|
"object" == typeof t && !t.force && this.currentUrlPackage) {
|
|
var n = t.page
|
|
, r = void 0 === n ? this.currentUrlPackage.page : n
|
|
, o = t.params
|
|
, i = void 0 === o ? {} : o;
|
|
if (!r || r === this.currentUrlPackage.page) {
|
|
this.currentUrlPackage.update(r, i);
|
|
var a = this.entered === r;
|
|
return void ("DISABLED" !== this.yodaStatus && a && this.send("PV", {
|
|
type: "visible",
|
|
page: r,
|
|
params: i
|
|
}, !0))
|
|
}
|
|
}
|
|
this.currentUrlPackage = new Q(t,e,this.logConfig.urlMap),
|
|
this.currentUrlPackage.sampled = this.getPageSampled(),
|
|
this.logConfig.attachUrl && this.currentUrlPackage.attachUrl()
|
|
}
|
|
,
|
|
e.prototype.sendByHttp = function(e, n, r) {
|
|
return void 0 === e && (e = g.CLICK),
|
|
t.prototype.send.call(this, e, n, r)
|
|
}
|
|
,
|
|
e.prototype.send = function(t, e, n) {
|
|
void 0 === t && (t = g.CLICK),
|
|
this.checkYodaSupport();
|
|
var r = "CUSTOM" === t && this.logConfig.enableV3CustomEvent;
|
|
return this.logConfig.openHttpSender || "DISABLED" === this.yodaStatus || r ? this.sendByHttp(t, e, n) : "CHECKING" !== this.yodaStatus ? "READY" === this.yodaStatus ? (this.beforeSend(t, e),
|
|
this.sendByBridge(t, e, n)) : void 0 : void this.waitYodaQueue.push({
|
|
type: t,
|
|
options: e,
|
|
immediately: n
|
|
})
|
|
}
|
|
,
|
|
e
|
|
}(fe), Se = function() {
|
|
function t() {}
|
|
return t.prototype.apply = function(t) {
|
|
this.weblog = t
|
|
}
|
|
,
|
|
t
|
|
}();
|
|
ge = be,
|
|
void 0 !== window._GLOBAL_KS_WEBLOGGER_ ? window._GLOBAL_KS_WEBLOGGER_.Factory = ge : window.Weblog = ge,
|
|
(null == Qt ? void 0 : Qt.constructors) && ge && -1 === Qt.constructors.indexOf(ge) && (ge._classId = Qt.constructors.length,
|
|
Qt.constructors.push(ge)),
|
|
function() {
|
|
if (null == Qt ? void 0 : Qt.silence)
|
|
try {
|
|
Qt._silenced = !!sessionStorage.getItem(le)
|
|
} catch (e) {}
|
|
}(),
|
|
e.BasePlugin = Se,
|
|
e.Weblog = be,
|
|
e.default = be,
|
|
Object.defineProperty(e, "__esModule", {
|
|
value: !0
|
|
})
|
|
}
|
|
))
|
|
}
|
|
).call(this, n("c8ba"))
|
|
},
|
|
"0181": function(t, e, n) {
|
|
(function(e) {
|
|
!function(e, n) {
|
|
t.exports = n()
|
|
}(0, (function() {
|
|
"use strict";
|
|
function t(t, e) {
|
|
if (!(t instanceof e))
|
|
throw new TypeError("Cannot call a class as a function")
|
|
}
|
|
function n(t, e) {
|
|
for (var n = 0; n < e.length; n++) {
|
|
var r = e[n];
|
|
r.enumerable = r.enumerable || !1,
|
|
r.configurable = !0,
|
|
"value"in r && (r.writable = !0),
|
|
Object.defineProperty(t, r.key, r)
|
|
}
|
|
}
|
|
function r(t, e, r) {
|
|
return e && n(t.prototype, e),
|
|
r && n(t, r),
|
|
t
|
|
}
|
|
function o(t, e) {
|
|
if ("function" != typeof e && null !== e)
|
|
throw new TypeError("Super expression must either be null or a function");
|
|
t.prototype = Object.create(e && e.prototype, {
|
|
constructor: {
|
|
value: t,
|
|
writable: !0,
|
|
configurable: !0
|
|
}
|
|
}),
|
|
e && a(t, e)
|
|
}
|
|
function i(t) {
|
|
return (i = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) {
|
|
return t.__proto__ || Object.getPrototypeOf(t)
|
|
}
|
|
)(t)
|
|
}
|
|
function a(t, e) {
|
|
return (a = Object.setPrototypeOf || function(t, e) {
|
|
return t.__proto__ = e,
|
|
t
|
|
}
|
|
)(t, e)
|
|
}
|
|
function s() {
|
|
if ("undefined" == typeof Reflect || !Reflect.construct)
|
|
return !1;
|
|
if (Reflect.construct.sham)
|
|
return !1;
|
|
if ("function" == typeof Proxy)
|
|
return !0;
|
|
try {
|
|
return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], (function() {}
|
|
))),
|
|
!0
|
|
} catch (t) {
|
|
return !1
|
|
}
|
|
}
|
|
function c(t, e, n) {
|
|
return (c = s() ? Reflect.construct : function(t, e, n) {
|
|
var r = [null];
|
|
r.push.apply(r, e);
|
|
var o = new (Function.bind.apply(t, r));
|
|
return n && a(o, n.prototype),
|
|
o
|
|
}
|
|
).apply(null, arguments)
|
|
}
|
|
function u(t, e) {
|
|
return !e || "object" != typeof e && "function" != typeof e ? function(t) {
|
|
if (void 0 === t)
|
|
throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
|
|
return t
|
|
}(t) : e
|
|
}
|
|
function l(t) {
|
|
var e = s();
|
|
return function() {
|
|
var n, r = i(t);
|
|
if (e) {
|
|
var o = i(this).constructor;
|
|
n = Reflect.construct(r, arguments, o)
|
|
} else
|
|
n = r.apply(this, arguments);
|
|
return u(this, n)
|
|
}
|
|
}
|
|
function d(t, e, n) {
|
|
return (d = "undefined" != typeof Reflect && Reflect.get ? Reflect.get : function(t, e, n) {
|
|
var r = function(t, e) {
|
|
for (; !Object.prototype.hasOwnProperty.call(t, e) && null !== (t = i(t)); )
|
|
;
|
|
return t
|
|
}(t, e);
|
|
if (r) {
|
|
var o = Object.getOwnPropertyDescriptor(r, e);
|
|
return o.get ? o.get.call(n) : o.value
|
|
}
|
|
}
|
|
)(t, e, n || t)
|
|
}
|
|
var p = function(t, e) {
|
|
return (p = Object.setPrototypeOf || {
|
|
__proto__: []
|
|
}instanceof Array && function(t, e) {
|
|
t.__proto__ = e
|
|
}
|
|
|| function(t, e) {
|
|
for (var n in e)
|
|
e.hasOwnProperty(n) && (t[n] = e[n])
|
|
}
|
|
)(t, e)
|
|
}
|
|
, h = function() {
|
|
return (h = Object.assign || function(t) {
|
|
for (var e, n = 1, r = arguments.length; n < r; n++)
|
|
for (var o in e = arguments[n])
|
|
Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o]);
|
|
return t
|
|
}
|
|
).apply(this, arguments)
|
|
};
|
|
function m(t, e) {
|
|
var n = {};
|
|
for (var r in t)
|
|
Object.prototype.hasOwnProperty.call(t, r) && e.indexOf(r) < 0 && (n[r] = t[r]);
|
|
if (null != t && "function" == typeof Object.getOwnPropertySymbols) {
|
|
var o = 0;
|
|
for (r = Object.getOwnPropertySymbols(t); o < r.length; o++)
|
|
e.indexOf(r[o]) < 0 && Object.prototype.propertyIsEnumerable.call(t, r[o]) && (n[r[o]] = t[r[o]])
|
|
}
|
|
return n
|
|
}
|
|
function f(t, e, n, r) {
|
|
return new (n || (n = Promise))((function(o, i) {
|
|
function a(t) {
|
|
try {
|
|
c(r.next(t))
|
|
} catch (t) {
|
|
i(t)
|
|
}
|
|
}
|
|
function s(t) {
|
|
try {
|
|
c(r.throw(t))
|
|
} catch (t) {
|
|
i(t)
|
|
}
|
|
}
|
|
function c(t) {
|
|
var e;
|
|
t.done ? o(t.value) : (e = t.value,
|
|
e instanceof n ? e : new n((function(t) {
|
|
t(e)
|
|
}
|
|
))).then(a, s)
|
|
}
|
|
c((r = r.apply(t, e || [])).next())
|
|
}
|
|
))
|
|
}
|
|
function g(t, e) {
|
|
var n, r, o, i, a = {
|
|
label: 0,
|
|
sent: function() {
|
|
if (1 & o[0])
|
|
throw o[1];
|
|
return o[1]
|
|
},
|
|
trys: [],
|
|
ops: []
|
|
};
|
|
return i = {
|
|
next: s(0),
|
|
throw: s(1),
|
|
return: s(2)
|
|
},
|
|
"function" == typeof Symbol && (i[Symbol.iterator] = function() {
|
|
return this
|
|
}
|
|
),
|
|
i;
|
|
function s(i) {
|
|
return function(s) {
|
|
return function(i) {
|
|
if (n)
|
|
throw new TypeError("Generator is already executing.");
|
|
for (; a; )
|
|
try {
|
|
if (n = 1,
|
|
r && (o = 2 & i[0] ? r.return : i[0] ? r.throw || ((o = r.return) && o.call(r),
|
|
0) : r.next) && !(o = o.call(r, i[1])).done)
|
|
return o;
|
|
switch (r = 0,
|
|
o && (i = [2 & i[0], o.value]),
|
|
i[0]) {
|
|
case 0:
|
|
case 1:
|
|
o = i;
|
|
break;
|
|
case 4:
|
|
return a.label++,
|
|
{
|
|
value: i[1],
|
|
done: !1
|
|
};
|
|
case 5:
|
|
a.label++,
|
|
r = i[1],
|
|
i = [0];
|
|
continue;
|
|
case 7:
|
|
i = a.ops.pop(),
|
|
a.trys.pop();
|
|
continue;
|
|
default:
|
|
if (o = a.trys,
|
|
!((o = o.length > 0 && o[o.length - 1]) || 6 !== i[0] && 2 !== i[0])) {
|
|
a = 0;
|
|
continue
|
|
}
|
|
if (3 === i[0] && (!o || i[1] > o[0] && i[1] < o[3])) {
|
|
a.label = i[1];
|
|
break
|
|
}
|
|
if (6 === i[0] && a.label < o[1]) {
|
|
a.label = o[1],
|
|
o = i;
|
|
break
|
|
}
|
|
if (o && a.label < o[2]) {
|
|
a.label = o[2],
|
|
a.ops.push(i);
|
|
break
|
|
}
|
|
o[2] && a.ops.pop(),
|
|
a.trys.pop();
|
|
continue
|
|
}
|
|
i = e.call(t, a)
|
|
} catch (t) {
|
|
i = [6, t],
|
|
r = 0
|
|
} finally {
|
|
n = o = 0
|
|
}
|
|
if (5 & i[0])
|
|
throw i[1];
|
|
return {
|
|
value: i[0] ? i[1] : void 0,
|
|
done: !0
|
|
}
|
|
}([i, s])
|
|
}
|
|
}
|
|
}
|
|
function y() {
|
|
for (var t = 0, e = 0, n = arguments.length; e < n; e++)
|
|
t += arguments[e].length;
|
|
var r = Array(t)
|
|
, o = 0;
|
|
for (e = 0; e < n; e++)
|
|
for (var i = arguments[e], a = 0, s = i.length; a < s; a++,
|
|
o++)
|
|
r[o] = i[a];
|
|
return r
|
|
}
|
|
function v() {
|
|
for (var t = [], e = 0; e < arguments.length; e++)
|
|
t[e] = arguments[e];
|
|
try {
|
|
var n = null === console || void 0 === console ? void 0 : console.error;
|
|
return n && n.call.apply(n, y([console], t))
|
|
} catch (t) {
|
|
return
|
|
}
|
|
}
|
|
function b(t, e, n, r) {
|
|
return "attachEvent"in t ? t.attachEvent("on" + e, n) : t.addEventListener(e, n, r)
|
|
}
|
|
function S(t, e, n, r) {
|
|
return "attachEvent"in t ? t.detachEvent("on" + e, n) : t.removeEventListener(e, n, r)
|
|
}
|
|
function w(t) {
|
|
for (var e = {}, n = 0, r = t.split("&"); n < r.length; n++) {
|
|
var o = r[n].split("=")
|
|
, i = o[0]
|
|
, a = o[1];
|
|
i in e ? e[i]instanceof Array ? e[i].push(a) : e[i] = [e[i], a] : e[i] = a
|
|
}
|
|
return e
|
|
}
|
|
function L(t) {
|
|
if (t === document.body)
|
|
return "HTML/" + t.tagName;
|
|
var e = 0;
|
|
if (t && t.parentNode)
|
|
for (var n = t.parentNode.childNodes, r = 0; r < n.length; r++) {
|
|
var o = n[r];
|
|
if (o === t)
|
|
return L(t.parentNode) + "/" + t.tagName + "[" + (e + 1) + "]";
|
|
1 === o.nodeType && o.tagName === t.tagName && e++
|
|
}
|
|
return ""
|
|
}
|
|
var k, x = function(t, e) {
|
|
var n = t.url
|
|
, r = t.page
|
|
, o = t.params
|
|
, i = t.pageId;
|
|
if (!r && "string" == typeof n) {
|
|
var a = function(t) {
|
|
void 0 === t && (t = location.href);
|
|
var e = t.lastIndexOf("?");
|
|
return -1 === e ? {
|
|
page: t
|
|
} : {
|
|
page: t.slice(0, e),
|
|
params: w(t.slice(e + 1))
|
|
}
|
|
}(n);
|
|
r = a.page,
|
|
o = a.params
|
|
}
|
|
if ("function" == typeof e)
|
|
try {
|
|
var s = e({
|
|
url: n,
|
|
page: r,
|
|
params: o
|
|
});
|
|
"string" == typeof s ? r = s : "object" == typeof s && (s.page && (r = s.page),
|
|
s.params && (o = s.params),
|
|
s.pageId && (i = s.pageId))
|
|
} catch (t) {}
|
|
else if ("object" == typeof e) {
|
|
var c = "";
|
|
for (var u in e)
|
|
if ((n || r || "").indexOf(u) > -1) {
|
|
c = e[u];
|
|
break
|
|
}
|
|
c && (r = c)
|
|
}
|
|
return {
|
|
page: r,
|
|
params: o,
|
|
pageId: i
|
|
}
|
|
}, T = (k = "",
|
|
function() {
|
|
if (k)
|
|
return k;
|
|
try {
|
|
var t = window.devicePixelRatio || 1
|
|
, e = Math.floor(screen.width * t)
|
|
, n = Math.floor(screen.height * t);
|
|
return k = e + "x" + n
|
|
} catch (t) {
|
|
return ""
|
|
}
|
|
}
|
|
), N = "undefined" != typeof window ? window.performance : null, _ = N && N.timing || null;
|
|
N && N.getEntriesByType && N.getEntriesByType("navigation")[0];
|
|
var P = function() {
|
|
function t() {}
|
|
return t.prototype.apply = function(t) {
|
|
this.weblog = t
|
|
}
|
|
,
|
|
t
|
|
}()
|
|
, G = "1.4.0"
|
|
, Z = {
|
|
test: {
|
|
appKey: "26",
|
|
secretKey: "4d987a04c739527acc8439696cd06913"
|
|
},
|
|
production: {
|
|
appKey: "10001001",
|
|
secretKey: "f2fff381c551a8dcdb765e316f3d44ac"
|
|
}
|
|
}
|
|
, E = {
|
|
test: "https://infra-gdfp.test.gifshow.com",
|
|
production: "https://gdfp.gifshow.com",
|
|
kwai: "https://g-gdfp.kwai-pro.com",
|
|
snack: "https://g-gdfp.snackvideo.com"
|
|
}
|
|
, C = "/p/z/s"
|
|
, I = "/s/u/v"
|
|
, K = function() {
|
|
function e() {
|
|
t(this, e)
|
|
}
|
|
return r(e, [{
|
|
key: "mixIn",
|
|
value: function(t) {
|
|
return Object.assign(this, t)
|
|
}
|
|
}, {
|
|
key: "clone",
|
|
value: function() {
|
|
var t = new this.constructor;
|
|
return Object.assign(t, this),
|
|
t
|
|
}
|
|
}], [{
|
|
key: "create",
|
|
value: function() {
|
|
for (var t = arguments.length, e = new Array(t), n = 0; n < t; n++)
|
|
e[n] = arguments[n];
|
|
return c(this, e)
|
|
}
|
|
}]),
|
|
e
|
|
}()
|
|
, X = function(e) {
|
|
o(a, e);
|
|
var n = l(a);
|
|
function a() {
|
|
var e, r = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : [], o = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 4 * r.length;
|
|
t(this, a),
|
|
e = n.call(this);
|
|
var i = r;
|
|
if (i instanceof ArrayBuffer && (i = new Uint8Array(i)),
|
|
(i instanceof Int8Array || i instanceof Uint8ClampedArray || i instanceof Int16Array || i instanceof Uint16Array || i instanceof Int32Array || i instanceof Uint32Array || i instanceof Float32Array || i instanceof Float64Array) && (i = new Uint8Array(i.buffer,i.byteOffset,i.byteLength)),
|
|
i instanceof Uint8Array) {
|
|
for (var s = i.byteLength, c = [], u = 0; u < s; u += 1)
|
|
c[u >>> 2] |= i[u] << 24 - u % 4 * 8;
|
|
e.words = c,
|
|
e.sigBytes = s
|
|
} else
|
|
e.words = r,
|
|
e.sigBytes = o;
|
|
return e
|
|
}
|
|
return r(a, [{
|
|
key: "toString",
|
|
value: function() {
|
|
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : W;
|
|
return t.stringify(this)
|
|
}
|
|
}, {
|
|
key: "concat",
|
|
value: function(t) {
|
|
var e = this.words
|
|
, n = t.words
|
|
, r = this.sigBytes
|
|
, o = t.sigBytes;
|
|
if (this.clamp(),
|
|
r % 4)
|
|
for (var i = 0; i < o; i += 1) {
|
|
var a = n[i >>> 2] >>> 24 - i % 4 * 8 & 255;
|
|
e[r + i >>> 2] |= a << 24 - (r + i) % 4 * 8
|
|
}
|
|
else
|
|
for (var s = 0; s < o; s += 4)
|
|
e[r + s >>> 2] = n[s >>> 2];
|
|
return this.sigBytes += o,
|
|
this
|
|
}
|
|
}, {
|
|
key: "clamp",
|
|
value: function() {
|
|
var t = this.words
|
|
, e = this.sigBytes;
|
|
t[e >>> 2] &= 4294967295 << 32 - e % 4 * 8,
|
|
t.length = Math.ceil(e / 4)
|
|
}
|
|
}, {
|
|
key: "clone",
|
|
value: function() {
|
|
var t = d(i(a.prototype), "clone", this).call(this);
|
|
return t.words = this.words.slice(0),
|
|
t
|
|
}
|
|
}], [{
|
|
key: "random",
|
|
value: function(t) {
|
|
for (var e, n = [], r = function(t) {
|
|
var e = t
|
|
, n = 987654321
|
|
, r = 4294967295;
|
|
return function() {
|
|
var t = ((n = 36969 * (65535 & n) + (n >> 16) & r) << 16) + (e = 18e3 * (65535 & e) + (e >> 16) & r) & r;
|
|
return t /= 4294967296,
|
|
(t += .5) * (Math.random() > .5 ? 1 : -1)
|
|
}
|
|
}, o = 0; o < t; o += 4) {
|
|
var i = r(4294967296 * (e || Math.random()));
|
|
e = 987654071 * i(),
|
|
n.push(4294967296 * i() | 0)
|
|
}
|
|
return new a(n,t)
|
|
}
|
|
}]),
|
|
a
|
|
}(K)
|
|
, W = {
|
|
stringify: function(t) {
|
|
for (var e = t.words, n = t.sigBytes, r = [], o = 0; o < n; o += 1) {
|
|
var i = e[o >>> 2] >>> 24 - o % 4 * 8 & 255;
|
|
r.push((i >>> 4).toString(16)),
|
|
r.push((15 & i).toString(16))
|
|
}
|
|
return r.join("")
|
|
},
|
|
parse: function(t) {
|
|
for (var e = t.length, n = [], r = 0; r < e; r += 2)
|
|
n[r >>> 3] |= parseInt(t.substr(r, 2), 16) << 24 - r % 8 * 4;
|
|
return new X(n,e / 2)
|
|
}
|
|
}
|
|
, M = function(t) {
|
|
for (var e = t.words, n = t.sigBytes, r = [], o = 0; o < n; o += 1) {
|
|
var i = e[o >>> 2] >>> 24 - o % 4 * 8 & 255;
|
|
r.push(String.fromCharCode(i))
|
|
}
|
|
return r.join("")
|
|
}
|
|
, O = function(t) {
|
|
for (var e = t.length, n = [], r = 0; r < e; r += 1)
|
|
n[r >>> 2] |= (255 & t.charCodeAt(r)) << 24 - r % 4 * 8;
|
|
return new X(n,e)
|
|
}
|
|
, U = function(t) {
|
|
try {
|
|
return decodeURIComponent(escape(M(t)))
|
|
} catch (t) {
|
|
throw new Error("Malformed UTF-8 data")
|
|
}
|
|
}
|
|
, R = function(t) {
|
|
return O(unescape(encodeURIComponent(t)))
|
|
}
|
|
, H = function(e) {
|
|
o(a, e);
|
|
var n = l(a);
|
|
function a(e) {
|
|
var r;
|
|
return t(this, a),
|
|
(r = n.call(this)).blockSize = 16,
|
|
r.cfg = Object.assign(new K, e),
|
|
r.reset(),
|
|
r
|
|
}
|
|
return r(a, [{
|
|
key: "reset",
|
|
value: function() {
|
|
d(i(a.prototype), "reset", this).call(this),
|
|
this._doReset()
|
|
}
|
|
}, {
|
|
key: "update",
|
|
value: function(t) {
|
|
return this._append(t),
|
|
this._process(),
|
|
this
|
|
}
|
|
}, {
|
|
key: "finalize",
|
|
value: function(t) {
|
|
return t && this._append(t),
|
|
this._doFinalize()
|
|
}
|
|
}], [{
|
|
key: "_createHelper",
|
|
value: function(t) {
|
|
return function(e, n) {
|
|
return new t(n).finalize(e)
|
|
}
|
|
}
|
|
}, {
|
|
key: "_createHmacHelper",
|
|
value: function(t) {
|
|
return function(e, n) {
|
|
return new D(t,n).finalize(e)
|
|
}
|
|
}
|
|
}]),
|
|
a
|
|
}(function(e) {
|
|
o(a, e);
|
|
var n = l(a);
|
|
function a() {
|
|
var e;
|
|
return t(this, a),
|
|
(e = n.call(this))._minBufferSize = 0,
|
|
e
|
|
}
|
|
return r(a, [{
|
|
key: "reset",
|
|
value: function() {
|
|
this._data = new X,
|
|
this._nDataBytes = 0
|
|
}
|
|
}, {
|
|
key: "_append",
|
|
value: function(t) {
|
|
var e = t;
|
|
"string" == typeof e && (e = R(e)),
|
|
this._data.concat(e),
|
|
this._nDataBytes += e.sigBytes
|
|
}
|
|
}, {
|
|
key: "_process",
|
|
value: function(t) {
|
|
var e, n = this._data, r = this.blockSize, o = n.words, i = n.sigBytes, a = i / (4 * r), s = (a = t ? Math.ceil(a) : Math.max((0 | a) - this._minBufferSize, 0)) * r, c = Math.min(4 * s, i);
|
|
if (s) {
|
|
for (var u = 0; u < s; u += r)
|
|
this._doProcessBlock(o, u);
|
|
e = o.splice(0, s),
|
|
n.sigBytes -= c
|
|
}
|
|
return new X(e,c)
|
|
}
|
|
}, {
|
|
key: "clone",
|
|
value: function() {
|
|
var t = d(i(a.prototype), "clone", this).call(this);
|
|
return t._data = this._data.clone(),
|
|
t
|
|
}
|
|
}]),
|
|
a
|
|
}(K))
|
|
, D = function(e) {
|
|
o(i, e);
|
|
var n = l(i);
|
|
function i(e, r) {
|
|
var o;
|
|
t(this, i),
|
|
o = n.call(this);
|
|
var a = new e;
|
|
o._hasher = a;
|
|
var s = r;
|
|
"string" == typeof s && (s = R(s));
|
|
var c = a.blockSize
|
|
, u = 4 * c;
|
|
s.sigBytes > u && (s = a.finalize(r)),
|
|
s.clamp();
|
|
var l = s.clone();
|
|
o._oKey = l;
|
|
var d = s.clone();
|
|
o._iKey = d;
|
|
for (var p = l.words, h = d.words, m = 0; m < c; m += 1)
|
|
p[m] ^= 1549556828,
|
|
h[m] ^= 909522486;
|
|
return l.sigBytes = u,
|
|
d.sigBytes = u,
|
|
o.reset(),
|
|
o
|
|
}
|
|
return r(i, [{
|
|
key: "reset",
|
|
value: function() {
|
|
var t = this._hasher;
|
|
t.reset(),
|
|
t.update(this._iKey)
|
|
}
|
|
}, {
|
|
key: "update",
|
|
value: function(t) {
|
|
return this._hasher.update(t),
|
|
this
|
|
}
|
|
}, {
|
|
key: "finalize",
|
|
value: function(t) {
|
|
var e = this._hasher
|
|
, n = e.finalize(t);
|
|
return e.reset(),
|
|
e.finalize(this._oKey.clone().concat(n))
|
|
}
|
|
}]),
|
|
i
|
|
}(K)
|
|
, Y = []
|
|
, j = function(e) {
|
|
o(a, e);
|
|
var n = l(a);
|
|
function a() {
|
|
return t(this, a),
|
|
n.apply(this, arguments)
|
|
}
|
|
return r(a, [{
|
|
key: "_doReset",
|
|
value: function() {
|
|
this._hash = new X([1732584193, 4023233417, 2562383102, 271733878, 3285377520])
|
|
}
|
|
}, {
|
|
key: "_doProcessBlock",
|
|
value: function(t, e) {
|
|
for (var n = this._hash.words, r = n[0], o = n[1], i = n[2], a = n[3], s = n[4], c = 0; c < 80; c += 1) {
|
|
if (c < 16)
|
|
Y[c] = 0 | t[e + c];
|
|
else {
|
|
var u = Y[c - 3] ^ Y[c - 8] ^ Y[c - 14] ^ Y[c - 16];
|
|
Y[c] = u << 1 | u >>> 31
|
|
}
|
|
var l = (r << 5 | r >>> 27) + s + Y[c];
|
|
l += c < 20 ? 1518500249 + (o & i | ~o & a) : c < 40 ? 1859775393 + (o ^ i ^ a) : c < 60 ? (o & i | o & a | i & a) - 1894007588 : (o ^ i ^ a) - 899497514,
|
|
s = a,
|
|
a = i,
|
|
i = o << 30 | o >>> 2,
|
|
o = r,
|
|
r = l
|
|
}
|
|
n[0] = n[0] + r | 0,
|
|
n[1] = n[1] + o | 0,
|
|
n[2] = n[2] + i | 0,
|
|
n[3] = n[3] + a | 0,
|
|
n[4] = n[4] + s | 0
|
|
}
|
|
}, {
|
|
key: "_doFinalize",
|
|
value: function() {
|
|
var t = this._data
|
|
, e = t.words
|
|
, n = 8 * this._nDataBytes
|
|
, r = 8 * t.sigBytes;
|
|
return e[r >>> 5] |= 128 << 24 - r % 32,
|
|
e[14 + (r + 64 >>> 9 << 4)] = Math.floor(n / 4294967296),
|
|
e[15 + (r + 64 >>> 9 << 4)] = n,
|
|
t.sigBytes = 4 * e.length,
|
|
this._process(),
|
|
this._hash
|
|
}
|
|
}, {
|
|
key: "clone",
|
|
value: function() {
|
|
var t = d(i(a.prototype), "clone", this).call(this);
|
|
return t._hash = this._hash.clone(),
|
|
t
|
|
}
|
|
}]),
|
|
a
|
|
}(H)
|
|
, V = H._createHelper(j);
|
|
H._createHmacHelper(j);
|
|
var z = {
|
|
stringify: function(t) {
|
|
var e = t.words
|
|
, n = t.sigBytes
|
|
, r = this._map;
|
|
t.clamp();
|
|
for (var o = [], i = 0; i < n; i += 3)
|
|
for (var a = (e[i >>> 2] >>> 24 - i % 4 * 8 & 255) << 16 | (e[i + 1 >>> 2] >>> 24 - (i + 1) % 4 * 8 & 255) << 8 | e[i + 2 >>> 2] >>> 24 - (i + 2) % 4 * 8 & 255, s = 0; s < 4 && i + .75 * s < n; s += 1)
|
|
o.push(r.charAt(a >>> 6 * (3 - s) & 63));
|
|
var c = r.charAt(64);
|
|
if (c)
|
|
for (; o.length % 4; )
|
|
o.push(c);
|
|
return o.join("")
|
|
},
|
|
parse: function(t) {
|
|
var e = t.length
|
|
, n = this._map
|
|
, r = this._reverseMap;
|
|
if (!r) {
|
|
this._reverseMap = [],
|
|
r = this._reverseMap;
|
|
for (var o = 0; o < n.length; o += 1)
|
|
r[n.charCodeAt(o)] = o
|
|
}
|
|
var i = n.charAt(64);
|
|
if (i) {
|
|
var a = t.indexOf(i);
|
|
-1 !== a && (e = a)
|
|
}
|
|
return function(t, e, n) {
|
|
for (var r = [], o = 0, i = 0; i < e; i += 1)
|
|
if (i % 4) {
|
|
var a = n[t.charCodeAt(i - 1)] << i % 4 * 2 | n[t.charCodeAt(i)] >>> 6 - i % 4 * 2;
|
|
r[o >>> 2] |= a << 24 - o % 4 * 8,
|
|
o += 1
|
|
}
|
|
return X.create(r, o)
|
|
}(t, e, r)
|
|
},
|
|
_map: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="
|
|
}
|
|
, A = "undefined" != typeof globalThis ? globalThis : "undefined" != typeof window ? window : "undefined" != typeof e ? e : "undefined" != typeof self ? self : {}
|
|
, J = function(t, e) {
|
|
return t(e = {
|
|
exports: {}
|
|
}, e.exports),
|
|
e.exports
|
|
}((function(t) {
|
|
!function(e) {
|
|
function n(t, e) {
|
|
var n = (65535 & t) + (65535 & e);
|
|
return (t >> 16) + (e >> 16) + (n >> 16) << 16 | 65535 & n
|
|
}
|
|
function r(t, e, r, o, i, a) {
|
|
return n((s = n(n(e, t), n(o, a))) << (c = i) | s >>> 32 - c, r);
|
|
var s, c
|
|
}
|
|
function o(t, e, n, o, i, a, s) {
|
|
return r(e & n | ~e & o, t, e, i, a, s)
|
|
}
|
|
function i(t, e, n, o, i, a, s) {
|
|
return r(e & o | n & ~o, t, e, i, a, s)
|
|
}
|
|
function a(t, e, n, o, i, a, s) {
|
|
return r(e ^ n ^ o, t, e, i, a, s)
|
|
}
|
|
function s(t, e, n, o, i, a, s) {
|
|
return r(n ^ (e | ~o), t, e, i, a, s)
|
|
}
|
|
function c(t, e) {
|
|
var r, c, u, l, d;
|
|
t[e >> 5] |= 128 << e % 32,
|
|
t[14 + (e + 64 >>> 9 << 4)] = e;
|
|
var p = 1732584193
|
|
, h = -271733879
|
|
, m = -1732584194
|
|
, f = 271733878;
|
|
for (r = 0; r < t.length; r += 16)
|
|
c = p,
|
|
u = h,
|
|
l = m,
|
|
d = f,
|
|
p = o(p, h, m, f, t[r], 7, -680876936),
|
|
f = o(f, p, h, m, t[r + 1], 12, -389564586),
|
|
m = o(m, f, p, h, t[r + 2], 17, 606105819),
|
|
h = o(h, m, f, p, t[r + 3], 22, -1044525330),
|
|
p = o(p, h, m, f, t[r + 4], 7, -176418897),
|
|
f = o(f, p, h, m, t[r + 5], 12, 1200080426),
|
|
m = o(m, f, p, h, t[r + 6], 17, -1473231341),
|
|
h = o(h, m, f, p, t[r + 7], 22, -45705983),
|
|
p = o(p, h, m, f, t[r + 8], 7, 1770035416),
|
|
f = o(f, p, h, m, t[r + 9], 12, -1958414417),
|
|
m = o(m, f, p, h, t[r + 10], 17, -42063),
|
|
h = o(h, m, f, p, t[r + 11], 22, -1990404162),
|
|
p = o(p, h, m, f, t[r + 12], 7, 1804603682),
|
|
f = o(f, p, h, m, t[r + 13], 12, -40341101),
|
|
m = o(m, f, p, h, t[r + 14], 17, -1502002290),
|
|
p = i(p, h = o(h, m, f, p, t[r + 15], 22, 1236535329), m, f, t[r + 1], 5, -165796510),
|
|
f = i(f, p, h, m, t[r + 6], 9, -1069501632),
|
|
m = i(m, f, p, h, t[r + 11], 14, 643717713),
|
|
h = i(h, m, f, p, t[r], 20, -373897302),
|
|
p = i(p, h, m, f, t[r + 5], 5, -701558691),
|
|
f = i(f, p, h, m, t[r + 10], 9, 38016083),
|
|
m = i(m, f, p, h, t[r + 15], 14, -660478335),
|
|
h = i(h, m, f, p, t[r + 4], 20, -405537848),
|
|
p = i(p, h, m, f, t[r + 9], 5, 568446438),
|
|
f = i(f, p, h, m, t[r + 14], 9, -1019803690),
|
|
m = i(m, f, p, h, t[r + 3], 14, -187363961),
|
|
h = i(h, m, f, p, t[r + 8], 20, 1163531501),
|
|
p = i(p, h, m, f, t[r + 13], 5, -1444681467),
|
|
f = i(f, p, h, m, t[r + 2], 9, -51403784),
|
|
m = i(m, f, p, h, t[r + 7], 14, 1735328473),
|
|
p = a(p, h = i(h, m, f, p, t[r + 12], 20, -1926607734), m, f, t[r + 5], 4, -378558),
|
|
f = a(f, p, h, m, t[r + 8], 11, -2022574463),
|
|
m = a(m, f, p, h, t[r + 11], 16, 1839030562),
|
|
h = a(h, m, f, p, t[r + 14], 23, -35309556),
|
|
p = a(p, h, m, f, t[r + 1], 4, -1530992060),
|
|
f = a(f, p, h, m, t[r + 4], 11, 1272893353),
|
|
m = a(m, f, p, h, t[r + 7], 16, -155497632),
|
|
h = a(h, m, f, p, t[r + 10], 23, -1094730640),
|
|
p = a(p, h, m, f, t[r + 13], 4, 681279174),
|
|
f = a(f, p, h, m, t[r], 11, -358537222),
|
|
m = a(m, f, p, h, t[r + 3], 16, -722521979),
|
|
h = a(h, m, f, p, t[r + 6], 23, 76029189),
|
|
p = a(p, h, m, f, t[r + 9], 4, -640364487),
|
|
f = a(f, p, h, m, t[r + 12], 11, -421815835),
|
|
m = a(m, f, p, h, t[r + 15], 16, 530742520),
|
|
p = s(p, h = a(h, m, f, p, t[r + 2], 23, -995338651), m, f, t[r], 6, -198630844),
|
|
f = s(f, p, h, m, t[r + 7], 10, 1126891415),
|
|
m = s(m, f, p, h, t[r + 14], 15, -1416354905),
|
|
h = s(h, m, f, p, t[r + 5], 21, -57434055),
|
|
p = s(p, h, m, f, t[r + 12], 6, 1700485571),
|
|
f = s(f, p, h, m, t[r + 3], 10, -1894986606),
|
|
m = s(m, f, p, h, t[r + 10], 15, -1051523),
|
|
h = s(h, m, f, p, t[r + 1], 21, -2054922799),
|
|
p = s(p, h, m, f, t[r + 8], 6, 1873313359),
|
|
f = s(f, p, h, m, t[r + 15], 10, -30611744),
|
|
m = s(m, f, p, h, t[r + 6], 15, -1560198380),
|
|
h = s(h, m, f, p, t[r + 13], 21, 1309151649),
|
|
p = s(p, h, m, f, t[r + 4], 6, -145523070),
|
|
f = s(f, p, h, m, t[r + 11], 10, -1120210379),
|
|
m = s(m, f, p, h, t[r + 2], 15, 718787259),
|
|
h = s(h, m, f, p, t[r + 9], 21, -343485551),
|
|
p = n(p, c),
|
|
h = n(h, u),
|
|
m = n(m, l),
|
|
f = n(f, d);
|
|
return [p, h, m, f]
|
|
}
|
|
function u(t) {
|
|
var e, n = "", r = 32 * t.length;
|
|
for (e = 0; e < r; e += 8)
|
|
n += String.fromCharCode(t[e >> 5] >>> e % 32 & 255);
|
|
return n
|
|
}
|
|
function l(t) {
|
|
var e, n = [];
|
|
for (n[(t.length >> 2) - 1] = void 0,
|
|
e = 0; e < n.length; e += 1)
|
|
n[e] = 0;
|
|
var r = 8 * t.length;
|
|
for (e = 0; e < r; e += 8)
|
|
n[e >> 5] |= (255 & t.charCodeAt(e / 8)) << e % 32;
|
|
return n
|
|
}
|
|
function d(t) {
|
|
var e, n, r = "0123456789abcdef", o = "";
|
|
for (n = 0; n < t.length; n += 1)
|
|
e = t.charCodeAt(n),
|
|
o += r.charAt(e >>> 4 & 15) + r.charAt(15 & e);
|
|
return o
|
|
}
|
|
function p(t) {
|
|
return unescape(encodeURIComponent(t))
|
|
}
|
|
function h(t) {
|
|
return function(t) {
|
|
return u(c(l(t), 8 * t.length))
|
|
}(p(t))
|
|
}
|
|
function m(t, e) {
|
|
return function(t, e) {
|
|
var n, r, o = l(t), i = [], a = [];
|
|
for (i[15] = a[15] = void 0,
|
|
o.length > 16 && (o = c(o, 8 * t.length)),
|
|
n = 0; n < 16; n += 1)
|
|
i[n] = 909522486 ^ o[n],
|
|
a[n] = 1549556828 ^ o[n];
|
|
return r = c(i.concat(l(e)), 512 + 8 * e.length),
|
|
u(c(a.concat(r), 640))
|
|
}(p(t), p(e))
|
|
}
|
|
function f(t, e, n) {
|
|
return e ? n ? m(e, t) : d(m(e, t)) : n ? h(t) : d(h(t))
|
|
}
|
|
t.exports ? t.exports = f : e.md5 = f
|
|
}(A)
|
|
}
|
|
));
|
|
function F(t) {
|
|
return z.stringify(R(t))
|
|
}
|
|
function B(t) {
|
|
var e = t.env || "production"
|
|
, n = E[e];
|
|
"production" === e && t.host && E[t.host] && (n = E[t.host]);
|
|
var r = Z[e]
|
|
, o = r.appKey
|
|
, i = r.secretKey
|
|
, a = ((new Date).valueOf() / 1e3).toFixed()
|
|
, s = J(o + i + a);
|
|
return "" + n + I + "?appkey=" + o + "&seckey=" + i + "&bussType=" + t.bussType + "×tamp=" + a + "&sign=" + s + "&type=SDK_INIT"
|
|
}
|
|
function Q() {
|
|
var t = navigator.userAgent
|
|
, e = t.indexOf("Android") > -1 || t.indexOf("Adr") > -1
|
|
, n = !!t.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/);
|
|
return e || n
|
|
}
|
|
function q() {
|
|
var t = -1 !== location.href.indexOf("sf2021=1")
|
|
, e = navigator.userAgent
|
|
, n = -1 !== e.indexOf("ISLP/1") || -1 !== e.indexOf("Kwai") && -1 === e.indexOf("ISLP/");
|
|
return t && n
|
|
}
|
|
function $(t) {
|
|
if (t.plugins && t.plugins.length > 0) {
|
|
for (var e = new Array, n = 0; n < t.plugins.length; n++) {
|
|
var r = {};
|
|
r.name = t.plugins[n].name,
|
|
r.filename = t.plugins[n].filename,
|
|
r.description = t.plugins[n].description,
|
|
e[n] = r
|
|
}
|
|
return JSON.stringify(e)
|
|
}
|
|
return ""
|
|
}
|
|
function tt(t) {
|
|
if (t.mimeTypes && t.mimeTypes.length > 0) {
|
|
for (var e = new Array, n = 0; n < t.mimeTypes.length; n++) {
|
|
var r = {};
|
|
r.type = t.mimeTypes[n].type,
|
|
r.description = t.mimeTypes[n].description,
|
|
e[n] = r
|
|
}
|
|
return JSON.stringify(e)
|
|
}
|
|
return ""
|
|
}
|
|
function et() {
|
|
var t = function() {
|
|
var t = document.createElement("canvas")
|
|
, e = null;
|
|
try {
|
|
e = t.getContext("webgl")
|
|
} catch (t) {}
|
|
return e || (e = null),
|
|
e
|
|
}();
|
|
if (!t)
|
|
return null;
|
|
var e = []
|
|
, n = t.createBuffer();
|
|
if (null != n) {
|
|
t.bindBuffer(t.ARRAY_BUFFER, n);
|
|
var r = new Float32Array([-.2, -.9, 0, .4, -.26, 0, 0, .732134444, 0]);
|
|
t.bufferData(t.ARRAY_BUFFER, r, t.STATIC_DRAW);
|
|
var o = t.createProgram()
|
|
, i = t.createShader(t.VERTEX_SHADER);
|
|
if (null != i && null != o) {
|
|
t.shaderSource(i, "attribute vec2 attrVertex;varying vec2 varyinTexCoordinate;uniform vec2 uniformOffset;void main(){varyinTexCoordinate=attrVertex+uniformOffset;gl_Position=vec4(attrVertex,0,1);}"),
|
|
t.compileShader(i);
|
|
var a = t.createShader(t.FRAGMENT_SHADER);
|
|
if (null != a) {
|
|
t.shaderSource(a, "precision mediump float;varying vec2 varyinTexCoordinate;void main() {gl_FragColor=vec4(varyinTexCoordinate,0,1);}"),
|
|
t.compileShader(a),
|
|
t.attachShader(o, i),
|
|
t.attachShader(o, a),
|
|
t.linkProgram(o),
|
|
t.useProgram(o);
|
|
var s = t.getAttribLocation(o, "attrVertex")
|
|
, c = t.getUniformLocation(o, "uniformOffset");
|
|
try {
|
|
t.enableVertexAttribArray(o.vertexPosArray),
|
|
t.vertexAttribPointer(s, 3, t.FLOAT, !1, 0, 0),
|
|
t.uniform2f(c, 1, 1),
|
|
t.drawArrays(t.TRIANGLE_STRIP, 0, 3);
|
|
var u = t.canvas;
|
|
e.push(u.toDataURL())
|
|
} catch (t) {}
|
|
return {
|
|
hash: J(e[0]),
|
|
rawData: e[0]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
return null
|
|
}
|
|
function nt() {
|
|
try {
|
|
var t = document.createElement("canvas");
|
|
t.width = 2e3,
|
|
t.height = 200,
|
|
t.style.display = "inline";
|
|
var e = t.getContext("2d");
|
|
if (null != e) {
|
|
e.textBaseline = "alphabetic",
|
|
e.fillStyle = "#f60",
|
|
e.fillRect(125, 1, 62, 20),
|
|
e.fillStyle = "#069",
|
|
e.font = "11pt Arial",
|
|
e.globalCompositeOperation = "multiply",
|
|
e.fillStyle = "rgb(255,255,0)",
|
|
e.beginPath(),
|
|
e.arc(75, 100, 50, 0, 2 * Math.PI, !0),
|
|
e.closePath(),
|
|
e.fill(),
|
|
e.fillStyle = "rgb(255,0,255)",
|
|
e.arc(75, 75, 75, 0, 2 * Math.PI, !0),
|
|
e.arc(75, 75, 25, 0, 2 * Math.PI, !0),
|
|
e.fill("evenodd");
|
|
var n = t.toDataURL();
|
|
return {
|
|
hash: J(n),
|
|
rawData: n
|
|
}
|
|
}
|
|
} catch (t) {}
|
|
return null
|
|
}
|
|
var rt = Math
|
|
, ot = function() {
|
|
return 0
|
|
};
|
|
function it() {
|
|
var t, e = rt.acos || ot, n = rt.acosh || ot, r = rt.asin || ot, o = rt.asinh || ot, i = rt.atanh || ot, a = rt.atan || ot, s = rt.sin || ot, c = rt.sinh || ot, u = rt.cos || ot, l = rt.cosh || ot, d = rt.tan || ot, p = rt.tanh || ot, h = rt.exp || ot, m = rt.expm1 || ot, f = rt.log1p || ot, g = {
|
|
acos: e(.12312423423423424),
|
|
acosh: n(1e308),
|
|
acoshPf: (t = 1e154,
|
|
rt.log(t + rt.sqrt(t * t - 1))),
|
|
asin: r(.12312423423423424),
|
|
asinh: o(1),
|
|
asinhPf: function(t) {
|
|
return rt.log(t + rt.sqrt(t * t + 1))
|
|
}(1),
|
|
atanh: i(.5),
|
|
atanhPf: function(t) {
|
|
return rt.log((1 + t) / (1 - t)) / 2
|
|
}(.5),
|
|
atan: a(.5),
|
|
sin: s(-1e300),
|
|
sinh: c(1),
|
|
sinhPf: function(t) {
|
|
return rt.exp(t) - 1 / rt.exp(t) / 2
|
|
}(1),
|
|
cos: u(10.000000000123),
|
|
cosh: l(1),
|
|
coshPf: function(t) {
|
|
return (rt.exp(t) + 1 / rt.exp(t)) / 2
|
|
}(1),
|
|
tan: d(-1e300),
|
|
tanh: p(1),
|
|
tanhPf: function(t) {
|
|
return (rt.exp(2 * t) - 1) / (rt.exp(2 * t) + 1)
|
|
}(1),
|
|
exp: h(1),
|
|
expm1: m(1),
|
|
expm1Pf: function(t) {
|
|
return rt.exp(t) - 1
|
|
}(1),
|
|
log1p: f(10),
|
|
log1pPf: function(t) {
|
|
return rt.log(1 + t)
|
|
}(10),
|
|
powPI: function(t) {
|
|
return rt.pow(rt.PI, t)
|
|
}(-100)
|
|
};
|
|
return {
|
|
h: J(JSON.stringify(g)),
|
|
d: g
|
|
}
|
|
}
|
|
function at(t) {
|
|
var e = 0;
|
|
for (var n in t)
|
|
e++;
|
|
return {
|
|
pc: Object.getOwnPropertyNames(t).length,
|
|
kc: Object.keys(t).length,
|
|
lc: e
|
|
}
|
|
}
|
|
function st() {
|
|
return new Promise((function(t, e) {
|
|
var n = ""
|
|
, r = ""
|
|
, o = {
|
|
timeout: 1e3,
|
|
excludeIOS11: !0
|
|
};
|
|
if (navigator.userAgent.match(/OS 11.+Version\/11.+Safari/))
|
|
return t(n);
|
|
var i = window.OfflineAudioContext;
|
|
if (null == i)
|
|
return t(r);
|
|
var a = new i(1,44100,44100)
|
|
, s = a.createOscillator();
|
|
s.type = "triangle",
|
|
s.frequency.setValueAtTime(1e4, a.currentTime);
|
|
var c = a.createDynamicsCompressor();
|
|
[["threshold", -50], ["knee", 40], ["ratio", 12], ["reduction", -20], ["attack", 0], ["release", .25]].forEach((function(t, e, n) {
|
|
var r = t[0]
|
|
, o = c[r];
|
|
void 0 !== o && "function" == typeof o.setValueAtTime && o.setValueAtTime(t[1], a && a.currentTime || 0)
|
|
}
|
|
)),
|
|
s.connect(c),
|
|
c.connect(a.destination),
|
|
s.start(0),
|
|
a.startRendering();
|
|
var u = setTimeout((function() {
|
|
return a = void 0,
|
|
t("audioTimeout")
|
|
}
|
|
), o.timeout);
|
|
a.oncomplete = function(e) {
|
|
var n;
|
|
try {
|
|
clearTimeout(u),
|
|
n = e.renderedBuffer.getChannelData(0).slice(4500, 5e3).reduce((function(t, e) {
|
|
return t + Math.abs(e)
|
|
}
|
|
), 0).toString(),
|
|
s.disconnect(),
|
|
c.disconnect()
|
|
} catch (e) {
|
|
return void t(e)
|
|
}
|
|
t(n)
|
|
}
|
|
}
|
|
)).then((function(t) {
|
|
return {
|
|
hash: J(t + ""),
|
|
rawData: t
|
|
}
|
|
}
|
|
))
|
|
}
|
|
function ct(t) {
|
|
var e = new (window.RTCPeerConnection || window.mozRTCPeerConnection || window.webkitRTCPeerConnection)({
|
|
iceServers: [{
|
|
urls: ["stun:stun.rapidnet.de:3478", "stun:stun.voipwise.com:3478", "stun:stun.voipzoom.com:3478", "stun:stun.voipstunt.com:3478", "stun:stun.voxgratia.org:3478", "stun:stun.l.google.com:19302"]
|
|
}]
|
|
});
|
|
e.createDataChannel(""),
|
|
e.createOffer().then((function(t) {
|
|
e.setLocalDescription(t)
|
|
}
|
|
));
|
|
var n = {
|
|
can: "",
|
|
sdp: ""
|
|
};
|
|
e.onicecandidate = function(e) {
|
|
if (e && e.candidate) {
|
|
var r = e.target.localDescription
|
|
, o = r && r.sdp;
|
|
n.can += ";" + e.candidate.candidate,
|
|
e.target && o ? n.sdp += ";" + o : n.sdp += ";",
|
|
t && t(n)
|
|
}
|
|
}
|
|
}
|
|
function ut() {
|
|
return Array.prototype.slice.apply(document.querySelectorAll("script")).filter((function(t) {
|
|
return t.src
|
|
}
|
|
)).map((function(t) {
|
|
return t.src
|
|
}
|
|
))
|
|
}
|
|
function lt() {
|
|
var t = (new Error).stack;
|
|
return null == (t = null == t ? void 0 : t.replace("Error\n", "")) ? void 0 : t.replace(/\s*/g, "")
|
|
}
|
|
function dt(t, e, n) {
|
|
var r = void 0 === e ? null : e
|
|
, o = function(t, e) {
|
|
var n = atob(t);
|
|
if (e) {
|
|
for (var r = new Uint8Array(n.length), o = 0, i = n.length; o < i; ++o)
|
|
r[o] = n.charCodeAt(o);
|
|
return String.fromCharCode.apply(null, new Uint16Array(r.buffer))
|
|
}
|
|
return n
|
|
}(t, void 0 !== n && n)
|
|
, i = o.indexOf("\n", 10) + 1
|
|
, a = o.substring(i) + (r ? "//# sourceMappingURL=" + r : "")
|
|
, s = new Blob([a],{
|
|
type: "application/javascript"
|
|
});
|
|
return URL.createObjectURL(s)
|
|
}
|
|
function pt(t, e, n) {
|
|
var r;
|
|
return function(o) {
|
|
return r = r || dt(t, e, n),
|
|
new Worker(r,o)
|
|
}
|
|
}
|
|
var ht = pt("Lyogcm9sbHVwLXBsdWdpbi13ZWItd29ya2VyLWxvYWRlciAqLwohZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gdCh0LGUpe2lmKCEodCBpbnN0YW5jZW9mIGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBjYWxsIGEgY2xhc3MgYXMgYSBmdW5jdGlvbiIpfWZ1bmN0aW9uIGUodCxlKXtmb3IodmFyIG49MDtuPGUubGVuZ3RoO24rKyl7dmFyIHI9ZVtuXTtyLmVudW1lcmFibGU9ci5lbnVtZXJhYmxlfHwhMSxyLmNvbmZpZ3VyYWJsZT0hMCwidmFsdWUiaW4gciYmKHIud3JpdGFibGU9ITApLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LHIua2V5LHIpfX1mdW5jdGlvbiBuKHQsbixyKXtyZXR1cm4gbiYmZSh0LnByb3RvdHlwZSxuKSxyJiZlKHQsciksdH1mdW5jdGlvbiByKHQsZSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIGUmJm51bGwhPT1lKXRocm93IG5ldyBUeXBlRXJyb3IoIlN1cGVyIGV4cHJlc3Npb24gbXVzdCBlaXRoZXIgYmUgbnVsbCBvciBhIGZ1bmN0aW9uIik7dC5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShlJiZlLnByb3RvdHlwZSx7Y29uc3RydWN0b3I6e3ZhbHVlOnQsd3JpdGFibGU6ITAsY29uZmlndXJhYmxlOiEwfX0pLGUmJmkodCxlKX1mdW5jdGlvbiBvKHQpe3JldHVybihvPU9iamVjdC5zZXRQcm90b3R5cGVPZj9PYmplY3QuZ2V0UHJvdG90eXBlT2Y6ZnVuY3Rpb24odCl7cmV0dXJuIHQuX19wcm90b19ffHxPYmplY3QuZ2V0UHJvdG90eXBlT2YodCl9KSh0KX1mdW5jdGlvbiBpKHQsZSl7cmV0dXJuKGk9T2JqZWN0LnNldFByb3RvdHlwZU9mfHxmdW5jdGlvbih0LGUpe3JldHVybiB0Ll9fcHJvdG9fXz1lLHR9KSh0LGUpfWZ1bmN0aW9uIGEoKXtpZigidW5kZWZpbmVkIj09dHlwZW9mIFJlZmxlY3R8fCFSZWZsZWN0LmNvbnN0cnVjdClyZXR1cm4hMTtpZihSZWZsZWN0LmNvbnN0cnVjdC5zaGFtKXJldHVybiExO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBQcm94eSlyZXR1cm4hMDt0cnl7cmV0dXJuIEJvb2xlYW4ucHJvdG90eXBlLnZhbHVlT2YuY2FsbChSZWZsZWN0LmNvbnN0cnVjdChCb29sZWFuLFtdLChmdW5jdGlvbigpe30pKSksITB9Y2F0Y2godCl7cmV0dXJuITF9fWZ1bmN0aW9uIHUodCxlLG4pe3JldHVybih1PWEoKT9SZWZsZWN0LmNvbnN0cnVjdDpmdW5jdGlvbih0LGUsbil7dmFyIHI9W251bGxdO3IucHVzaC5hcHBseShyLGUpO3ZhciBvPW5ldyhGdW5jdGlvbi5iaW5kLmFwcGx5KHQscikpO3JldHVybiBuJiZpKG8sbi5wcm90b3R5cGUpLG99KS5hcHBseShudWxsLGFyZ3VtZW50cyl9ZnVuY3Rpb24gcyh0LGUpe3JldHVybiFlfHwib2JqZWN0IiE9dHlwZW9mIGUmJiJmdW5jdGlvbiIhPXR5cGVvZiBlP2Z1bmN0aW9uKHQpe2lmKHZvaWQgMD09PXQpdGhyb3cgbmV3IFJlZmVyZW5jZUVycm9yKCJ0aGlzIGhhc24ndCBiZWVuIGluaXRpYWxpc2VkIC0gc3VwZXIoKSBoYXNuJ3QgYmVlbiBjYWxsZWQiKTtyZXR1cm4gdH0odCk6ZX1mdW5jdGlvbiBjKHQpe3ZhciBlPWEoKTtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgbixyPW8odCk7aWYoZSl7dmFyIGk9byh0aGlzKS5jb25zdHJ1Y3RvcjtuPVJlZmxlY3QuY29uc3RydWN0KHIsYXJndW1lbnRzLGkpfWVsc2Ugbj1yLmFwcGx5KHRoaXMsYXJndW1lbnRzKTtyZXR1cm4gcyh0aGlzLG4pfX1mdW5jdGlvbiBmKHQsZSxuKXtyZXR1cm4oZj0idW5kZWZpbmVkIiE9dHlwZW9mIFJlZmxlY3QmJlJlZmxlY3QuZ2V0P1JlZmxlY3QuZ2V0OmZ1bmN0aW9uKHQsZSxuKXt2YXIgcj1mdW5jdGlvbih0LGUpe2Zvcig7IU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0LGUpJiZudWxsIT09KHQ9byh0KSk7KTtyZXR1cm4gdH0odCxlKTtpZihyKXt2YXIgaT1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHIsZSk7cmV0dXJuIGkuZ2V0P2kuZ2V0LmNhbGwobik6aS52YWx1ZX19KSh0LGUsbnx8dCl9dmFyIGw9ZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7dCh0aGlzLGUpfXJldHVybiBuKGUsW3trZXk6Im1peEluIix2YWx1ZTpmdW5jdGlvbih0KXtyZXR1cm4gT2JqZWN0LmFzc2lnbih0aGlzLHQpfX0se2tleToiY2xvbmUiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIHQ9bmV3IHRoaXMuY29uc3RydWN0b3I7cmV0dXJuIE9iamVjdC5hc3NpZ24odCx0aGlzKSx0fX1dLFt7a2V5OiJjcmVhdGUiLHZhbHVlOmZ1bmN0aW9uKCl7Zm9yKHZhciB0PWFyZ3VtZW50cy5sZW5ndGgsZT1uZXcgQXJyYXkodCksbj0wO248dDtuKyspZVtuXT1hcmd1bWVudHNbbl07cmV0dXJuIHUodGhpcyxlKX19XSksZX0oKSxoPWZ1bmN0aW9uKGUpe3IoYSxlKTt2YXIgaT1jKGEpO2Z1bmN0aW9uIGEoKXt2YXIgZSxuPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTpbXSxyPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTo0Km4ubGVuZ3RoO3QodGhpcyxhKSxlPWkuY2FsbCh0aGlzKTt2YXIgbz1uO2lmKG8gaW5zdGFuY2VvZiBBcnJheUJ1ZmZlciYmKG89bmV3IFVpbnQ4QXJyYXkobykpLChvIGluc3RhbmNlb2YgSW50OEFycmF5fHxvIGluc3RhbmNlb2YgVWludDhDbGFtcGVkQXJyYXl8fG8gaW5zdGFuY2VvZiBJbnQxNkFycmF5fHxvIGluc3RhbmNlb2YgVWludDE2QXJyYXl8fG8gaW5zdGFuY2VvZiBJbnQzMkFycmF5fHxvIGluc3RhbmNlb2YgVWludDMyQXJyYXl8fG8gaW5zdGFuY2VvZiBGbG9hdDMyQXJyYXl8fG8gaW5zdGFuY2VvZiBGbG9hdDY0QXJyYXkpJiYobz1uZXcgVWludDhBcnJheShvLmJ1ZmZlcixvLmJ5dGVPZmZzZXQsby5ieXRlTGVuZ3RoKSksbyBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpe2Zvcih2YXIgdT1vLmJ5dGVMZW5ndGgscz1bXSxjPTA7Yzx1O2MrPTEpc1tjPj4+Ml18PW9bY108PDI0LWMlNCo4O2Uud29yZHM9cyxlLnNpZ0J5dGVzPXV9ZWxzZSBlLndvcmRzPW4sZS5zaWdCeXRlcz1yO3JldHVybiBlfXJldHVybiBuKGEsW3trZXk6InRvU3RyaW5nIix2YWx1ZTpmdW5jdGlvbigpe3ZhciB0PWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTp2O3JldHVybiB0LnN0cmluZ2lmeSh0aGlzKX19LHtrZXk6ImNvbmNhdCIsdmFsdWU6ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy53b3JkcyxuPXQud29yZHMscj10aGlzLnNpZ0J5dGVzLG89dC5zaWdCeXRlcztpZih0aGlzLmNsYW1wKCksciU0KWZvcih2YXIgaT0wO2k8bztpKz0xKXt2YXIgYT1uW2k+Pj4yXT4+PjI0LWklNCo4JjI1NTtlW3IraT4+PjJdfD1hPDwyNC0ocitpKSU0Kjh9ZWxzZSBmb3IodmFyIHU9MDt1PG87dSs9NCllW3IrdT4+PjJdPW5bdT4+PjJdO3JldHVybiB0aGlzLnNpZ0J5dGVzKz1vLHRoaXN9fSx7a2V5OiJjbGFtcCIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLndvcmRzLGU9dGhpcy5zaWdCeXRlczt0W2U+Pj4yXSY9NDI5NDk2NzI5NTw8MzItZSU0KjgsdC5sZW5ndGg9TWF0aC5jZWlsKGUvNCl9fSx7a2V5OiJjbG9uZSIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgdD1mKG8oYS5wcm90b3R5cGUpLCJjbG9uZSIsdGhpcykuY2FsbCh0aGlzKTtyZXR1cm4gdC53b3Jkcz10aGlzLndvcmRzLnNsaWNlKDApLHR9fV0sW3trZXk6InJhbmRvbSIsdmFsdWU6ZnVuY3Rpb24odCl7Zm9yKHZhciBlLG49W10scj1mdW5jdGlvbih0KXt2YXIgZT10LG49OTg3NjU0MzIxLHI9NDI5NDk2NzI5NTtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgdD0oKG49MzY5NjkqKDY1NTM1Jm4pKyhuPj4xNikmcik8PDE2KSsoZT0xOGUzKig2NTUzNSZlKSsoZT4+MTYpJnIpJnI7cmV0dXJuIHQvPTQyOTQ5NjcyOTYsKHQrPS41KSooTWF0aC5yYW5kb20oKT4uNT8xOi0xKX19LG89MDtvPHQ7bys9NCl7dmFyIGk9cig0Mjk0OTY3Mjk2KihlfHxNYXRoLnJhbmRvbSgpKSk7ZT05ODc2NTQwNzEqaSgpLG4ucHVzaCg0Mjk0OTY3Mjk2KmkoKXwwKX1yZXR1cm4gbmV3IGEobix0KX19XSksYX0obCksdj17c3RyaW5naWZ5OmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10LndvcmRzLG49dC5zaWdCeXRlcyxyPVtdLG89MDtvPG47bys9MSl7dmFyIGk9ZVtvPj4+Ml0+Pj4yNC1vJTQqOCYyNTU7ci5wdXNoKChpPj4+NCkudG9TdHJpbmcoMTYpKSxyLnB1c2goKDE1JmkpLnRvU3RyaW5nKDE2KSl9cmV0dXJuIHIuam9pbigiIil9LHBhcnNlOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10Lmxlbmd0aCxuPVtdLHI9MDtyPGU7cis9MiluW3I+Pj4zXXw9cGFyc2VJbnQodC5zdWJzdHIociwyKSwxNik8PDI0LXIlOCo0O3JldHVybiBuZXcgaChuLGUvMil9fSx5PWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10Lmxlbmd0aCxuPVtdLHI9MDtyPGU7cis9MSluW3I+Pj4yXXw9KDI1NSZ0LmNoYXJDb2RlQXQocikpPDwyNC1yJTQqODtyZXR1cm4gbmV3IGgobixlKX0scD1mdW5jdGlvbih0KXtyZXR1cm4geSh1bmVzY2FwZShlbmNvZGVVUklDb21wb25lbnQodCkpKX0sZD1mdW5jdGlvbihlKXtyKGEsZSk7dmFyIGk9YyhhKTtmdW5jdGlvbiBhKGUpe3ZhciBuO3JldHVybiB0KHRoaXMsYSksKG49aS5jYWxsKHRoaXMpKS5ibG9ja1NpemU9MTYsbi5jZmc9T2JqZWN0LmFzc2lnbihuZXcgbCxlKSxuLnJlc2V0KCksbn1yZXR1cm4gbihhLFt7a2V5OiJyZXNldCIsdmFsdWU6ZnVuY3Rpb24oKXtmKG8oYS5wcm90b3R5cGUpLCJyZXNldCIsdGhpcykuY2FsbCh0aGlzKSx0aGlzLl9kb1Jlc2V0KCl9fSx7a2V5OiJ1cGRhdGUiLHZhbHVlOmZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLl9hcHBlbmQodCksdGhpcy5fcHJvY2VzcygpLHRoaXN9fSx7a2V5OiJmaW5hbGl6ZSIsdmFsdWU6ZnVuY3Rpb24odCl7cmV0dXJuIHQmJnRoaXMuX2FwcGVuZCh0KSx0aGlzLl9kb0ZpbmFsaXplKCl9fV0sW3trZXk6Il9jcmVhdGVIZWxwZXIiLHZhbHVlOmZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihlLG4pe3JldHVybiBuZXcgdChuKS5maW5hbGl6ZShlKX19fSx7a2V5OiJfY3JlYXRlSG1hY0hlbHBlciIsdmFsdWU6ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUsbil7cmV0dXJuIG5ldyBnKHQsbikuZmluYWxpemUoZSl9fX1dKSxhfShmdW5jdGlvbihlKXtyKGEsZSk7dmFyIGk9YyhhKTtmdW5jdGlvbiBhKCl7dmFyIGU7cmV0dXJuIHQodGhpcyxhKSwoZT1pLmNhbGwodGhpcykpLl9taW5CdWZmZXJTaXplPTAsZX1yZXR1cm4gbihhLFt7a2V5OiJyZXNldCIsdmFsdWU6ZnVuY3Rpb24oKXt0aGlzLl9kYXRhPW5ldyBoLHRoaXMuX25EYXRhQnl0ZXM9MH19LHtrZXk6Il9hcHBlbmQiLHZhbHVlOmZ1bmN0aW9uKHQpe3ZhciBlPXQ7InN0cmluZyI9PXR5cGVvZiBlJiYoZT1wKGUpKSx0aGlzLl9kYXRhLmNvbmNhdChlKSx0aGlzLl9uRGF0YUJ5dGVzKz1lLnNpZ0J5dGVzfX0se2tleToiX3Byb2Nlc3MiLHZhbHVlOmZ1bmN0aW9uKHQpe3ZhciBlLG49dGhpcy5fZGF0YSxyPXRoaXMuYmxvY2tTaXplLG89bi53b3JkcyxpPW4uc2lnQnl0ZXMsYT1pLyg0KnIpLHU9KGE9dD9NYXRoLmNlaWwoYSk6TWF0aC5tYXgoKDB8YSktdGhpcy5fbWluQnVmZmVyU2l6ZSwwKSkqcixzPU1hdGgubWluKDQqdSxpKTtpZih1KXtmb3IodmFyIGM9MDtjPHU7Yys9cil0aGlzLl9kb1Byb2Nlc3NCbG9jayhvLGMpO2U9by5zcGxpY2UoMCx1KSxuLnNpZ0J5dGVzLT1zfXJldHVybiBuZXcgaChlLHMpfX0se2tleToiY2xvbmUiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIHQ9ZihvKGEucHJvdG90eXBlKSwiY2xvbmUiLHRoaXMpLmNhbGwodGhpcyk7cmV0dXJuIHQuX2RhdGE9dGhpcy5fZGF0YS5jbG9uZSgpLHR9fV0pLGF9KGwpKSxnPWZ1bmN0aW9uKGUpe3IoaSxlKTt2YXIgbz1jKGkpO2Z1bmN0aW9uIGkoZSxuKXt2YXIgcjt0KHRoaXMsaSkscj1vLmNhbGwodGhpcyk7dmFyIGE9bmV3IGU7ci5faGFzaGVyPWE7dmFyIHU9bjsic3RyaW5nIj09dHlwZW9mIHUmJih1PXAodSkpO3ZhciBzPWEuYmxvY2tTaXplLGM9NCpzO3Uuc2lnQnl0ZXM+YyYmKHU9YS5maW5hbGl6ZShuKSksdS5jbGFtcCgpO3ZhciBmPXUuY2xvbmUoKTtyLl9vS2V5PWY7dmFyIGw9dS5jbG9uZSgpO3IuX2lLZXk9bDtmb3IodmFyIGg9Zi53b3Jkcyx2PWwud29yZHMseT0wO3k8czt5Kz0xKWhbeV1ePTE1NDk1NTY4Mjgsdlt5XV49OTA5NTIyNDg2O3JldHVybiBmLnNpZ0J5dGVzPWMsbC5zaWdCeXRlcz1jLHIucmVzZXQoKSxyfXJldHVybiBuKGksW3trZXk6InJlc2V0Iix2YWx1ZTpmdW5jdGlvbigpe3ZhciB0PXRoaXMuX2hhc2hlcjt0LnJlc2V0KCksdC51cGRhdGUodGhpcy5faUtleSl9fSx7a2V5OiJ1cGRhdGUiLHZhbHVlOmZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLl9oYXNoZXIudXBkYXRlKHQpLHRoaXN9fSx7a2V5OiJmaW5hbGl6ZSIsdmFsdWU6ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5faGFzaGVyLG49ZS5maW5hbGl6ZSh0KTtyZXR1cm4gZS5yZXNldCgpLGUuZmluYWxpemUodGhpcy5fb0tleS5jbG9uZSgpLmNvbmNhdChuKSl9fV0pLGl9KGwpLF89W10sdz1mdW5jdGlvbihlKXtyKGEsZSk7dmFyIGk9YyhhKTtmdW5jdGlvbiBhKCl7cmV0dXJuIHQodGhpcyxhKSxpLmFwcGx5KHRoaXMsYXJndW1lbnRzKX1yZXR1cm4gbihhLFt7a2V5OiJfZG9SZXNldCIsdmFsdWU6ZnVuY3Rpb24oKXt0aGlzLl9oYXNoPW5ldyBoKFsxNzMyNTg0MTkzLDQwMjMyMzM0MTcsMjU2MjM4MzEwMiwyNzE3MzM4NzgsMzI4NTM3NzUyMF0pfX0se2tleToiX2RvUHJvY2Vzc0Jsb2NrIix2YWx1ZTpmdW5jdGlvbih0LGUpe2Zvcih2YXIgbj10aGlzLl9oYXNoLndvcmRzLHI9blswXSxvPW5bMV0saT1uWzJdLGE9blszXSx1PW5bNF0scz0wO3M8ODA7cys9MSl7aWYoczwxNilfW3NdPTB8dFtlK3NdO2Vsc2V7dmFyIGM9X1tzLTNdXl9bcy04XV5fW3MtMTRdXl9bcy0xNl07X1tzXT1jPDwxfGM+Pj4zMX12YXIgZj0ocjw8NXxyPj4+MjcpK3UrX1tzXTtmKz1zPDIwPzE1MTg1MDAyNDkrKG8maXx+byZhKTpzPDQwPzE4NTk3NzUzOTMrKG9eaV5hKTpzPDYwPyhvJml8byZhfGkmYSktMTg5NDAwNzU4ODoob15pXmEpLTg5OTQ5NzUxNCx1PWEsYT1pLGk9bzw8MzB8bz4+PjIsbz1yLHI9Zn1uWzBdPW5bMF0rcnwwLG5bMV09blsxXStvfDAsblsyXT1uWzJdK2l8MCxuWzNdPW5bM10rYXwwLG5bNF09bls0XSt1fDB9fSx7a2V5OiJfZG9GaW5hbGl6ZSIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLl9kYXRhLGU9dC53b3JkcyxuPTgqdGhpcy5fbkRhdGFCeXRlcyxyPTgqdC5zaWdCeXRlcztyZXR1cm4gZVtyPj4+NV18PTEyODw8MjQtciUzMixlWzE0KyhyKzY0Pj4+OTw8NCldPU1hdGguZmxvb3Iobi80Mjk0OTY3Mjk2KSxlWzE1KyhyKzY0Pj4+OTw8NCldPW4sdC5zaWdCeXRlcz00KmUubGVuZ3RoLHRoaXMuX3Byb2Nlc3MoKSx0aGlzLl9oYXNofX0se2tleToiY2xvbmUiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIHQ9ZihvKGEucHJvdG90eXBlKSwiY2xvbmUiLHRoaXMpLmNhbGwodGhpcyk7cmV0dXJuIHQuX2hhc2g9dGhpcy5faGFzaC5jbG9uZSgpLHR9fV0pLGF9KGQpO2QuX2NyZWF0ZUhlbHBlcih3KSxkLl9jcmVhdGVIbWFjSGVscGVyKHcpO3ZhciBiLGs9e3N0cmluZ2lmeTpmdW5jdGlvbih0KXt2YXIgZT10LndvcmRzLG49dC5zaWdCeXRlcyxyPXRoaXMuX21hcDt0LmNsYW1wKCk7Zm9yKHZhciBvPVtdLGk9MDtpPG47aSs9Mylmb3IodmFyIGE9KGVbaT4+PjJdPj4+MjQtaSU0KjgmMjU1KTw8MTZ8KGVbaSsxPj4+Ml0+Pj4yNC0oaSsxKSU0KjgmMjU1KTw8OHxlW2krMj4+PjJdPj4+MjQtKGkrMiklNCo4JjI1NSx1PTA7dTw0JiZpKy43NSp1PG47dSs9MSlvLnB1c2goci5jaGFyQXQoYT4+PjYqKDMtdSkmNjMpKTt2YXIgcz1yLmNoYXJBdCg2NCk7aWYocylmb3IoO28ubGVuZ3RoJTQ7KW8ucHVzaChzKTtyZXR1cm4gby5qb2luKCIiKX0scGFyc2U6ZnVuY3Rpb24odCl7dmFyIGU9dC5sZW5ndGgsbj10aGlzLl9tYXAscj10aGlzLl9yZXZlcnNlTWFwO2lmKCFyKXt0aGlzLl9yZXZlcnNlTWFwPVtdLHI9dGhpcy5fcmV2ZXJzZU1hcDtmb3IodmFyIG89MDtvPG4ubGVuZ3RoO28rPTEpcltuLmNoYXJDb2RlQXQobyldPW99dmFyIGk9bi5jaGFyQXQoNjQpO2lmKGkpe3ZhciBhPXQuaW5kZXhPZihpKTstMSE9PWEmJihlPWEpfXJldHVybiBmdW5jdGlvbih0LGUsbil7Zm9yKHZhciByPVtdLG89MCxpPTA7aTxlO2krPTEpaWYoaSU0KXt2YXIgYT1uW3QuY2hhckNvZGVBdChpLTEpXTw8aSU0KjJ8blt0LmNoYXJDb2RlQXQoaSldPj4+Ni1pJTQqMjtyW28+Pj4yXXw9YTw8MjQtbyU0Kjgsbys9MX1yZXR1cm4gaC5jcmVhdGUocixvKX0odCxlLHIpfSxfbWFwOiJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvPSJ9LG09InVuZGVmaW5lZCIhPXR5cGVvZiBnbG9iYWxUaGlzP2dsb2JhbFRoaXM6InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3c/d2luZG93OiJ1bmRlZmluZWQiIT10eXBlb2YgZ2xvYmFsP2dsb2JhbDoidW5kZWZpbmVkIiE9dHlwZW9mIHNlbGY/c2VsZjp7fTsoZnVuY3Rpb24odCl7IWZ1bmN0aW9uKGUpe2Z1bmN0aW9uIG4odCxlKXt2YXIgbj0oNjU1MzUmdCkrKDY1NTM1JmUpO3JldHVybih0Pj4xNikrKGU+PjE2KSsobj4+MTYpPDwxNnw2NTUzNSZufWZ1bmN0aW9uIHIodCxlLHIsbyxpLGEpe3JldHVybiBuKCh1PW4obihlLHQpLG4obyxhKSkpPDwocz1pKXx1Pj4+MzItcyxyKTt2YXIgdSxzfWZ1bmN0aW9uIG8odCxlLG4sbyxpLGEsdSl7cmV0dXJuIHIoZSZufH5lJm8sdCxlLGksYSx1KX1mdW5jdGlvbiBpKHQsZSxuLG8saSxhLHUpe3JldHVybiByKGUmb3xuJn5vLHQsZSxpLGEsdSl9ZnVuY3Rpb24gYSh0LGUsbixvLGksYSx1KXtyZXR1cm4gcihlXm5ebyx0LGUsaSxhLHUpfWZ1bmN0aW9uIHUodCxlLG4sbyxpLGEsdSl7cmV0dXJuIHIobl4oZXx+byksdCxlLGksYSx1KX1mdW5jdGlvbiBzKHQsZSl7dmFyIHIscyxjLGYsbDt0W2U+PjVdfD0xMjg8PGUlMzIsdFsxNCsoZSs2ND4+Pjk8PDQpXT1lO3ZhciBoPTE3MzI1ODQxOTMsdj0tMjcxNzMzODc5LHk9LTE3MzI1ODQxOTQscD0yNzE3MzM4Nzg7Zm9yKHI9MDtyPHQubGVuZ3RoO3IrPTE2KXM9aCxjPXYsZj15LGw9cCxoPW8oaCx2LHkscCx0W3JdLDcsLTY4MDg3NjkzNikscD1vKHAsaCx2LHksdFtyKzFdLDEyLC0zODk1NjQ1ODYpLHk9byh5LHAsaCx2LHRbcisyXSwxNyw2MDYxMDU4MTkpLHY9byh2LHkscCxoLHRbciszXSwyMiwtMTA0NDUyNTMzMCksaD1vKGgsdix5LHAsdFtyKzRdLDcsLTE3NjQxODg5NykscD1vKHAsaCx2LHksdFtyKzVdLDEyLDEyMDAwODA0MjYpLHk9byh5LHAsaCx2LHRbcis2XSwxNywtMTQ3MzIzMTM0MSksdj1vKHYseSxwLGgsdFtyKzddLDIyLC00NTcwNTk4MyksaD1vKGgsdix5LHAsdFtyKzhdLDcsMTc3MDAzNTQxNikscD1vKHAsaCx2LHksdFtyKzldLDEyLC0xOTU4NDE0NDE3KSx5PW8oeSxwLGgsdix0W3IrMTBdLDE3LC00MjA2Myksdj1vKHYseSxwLGgsdFtyKzExXSwyMiwtMTk5MDQwNDE2MiksaD1vKGgsdix5LHAsdFtyKzEyXSw3LDE4MDQ2MDM2ODIpLHA9byhwLGgsdix5LHRbcisxM10sMTIsLTQwMzQxMTAxKSx5PW8oeSxwLGgsdix0W3IrMTRdLDE3LC0xNTAyMDAyMjkwKSxoPWkoaCx2PW8odix5LHAsaCx0W3IrMTVdLDIyLDEyMzY1MzUzMjkpLHkscCx0W3IrMV0sNSwtMTY1Nzk2NTEwKSxwPWkocCxoLHYseSx0W3IrNl0sOSwtMTA2OTUwMTYzMikseT1pKHkscCxoLHYsdFtyKzExXSwxNCw2NDM3MTc3MTMpLHY9aSh2LHkscCxoLHRbcl0sMjAsLTM3Mzg5NzMwMiksaD1pKGgsdix5LHAsdFtyKzVdLDUsLTcwMTU1ODY5MSkscD1pKHAsaCx2LHksdFtyKzEwXSw5LDM4MDE2MDgzKSx5PWkoeSxwLGgsdix0W3IrMTVdLDE0LC02NjA0NzgzMzUpLHY9aSh2LHkscCxoLHRbcis0XSwyMCwtNDA1NTM3ODQ4KSxoPWkoaCx2LHkscCx0W3IrOV0sNSw1Njg0NDY0MzgpLHA9aShwLGgsdix5LHRbcisxNF0sOSwtMTAxOTgwMzY5MCkseT1pKHkscCxoLHYsdFtyKzNdLDE0LC0xODczNjM5NjEpLHY9aSh2LHkscCxoLHRbcis4XSwyMCwxMTYzNTMxNTAxKSxoPWkoaCx2LHkscCx0W3IrMTNdLDUsLTE0NDQ2ODE0NjcpLHA9aShwLGgsdix5LHRbcisyXSw5LC01MTQwMzc4NCkseT1pKHkscCxoLHYsdFtyKzddLDE0LDE3MzUzMjg0NzMpLGg9YShoLHY9aSh2LHkscCxoLHRbcisxMl0sMjAsLTE5MjY2MDc3MzQpLHkscCx0W3IrNV0sNCwtMzc4NTU4KSxwPWEocCxoLHYseSx0W3IrOF0sMTEsLTIwMjI1NzQ0NjMpLHk9YSh5LHAsaCx2LHRbcisxMV0sMTYsMTgzOTAzMDU2Miksdj1hKHYseSxwLGgsdFtyKzE0XSwyMywtMzUzMDk1NTYpLGg9YShoLHYseSxwLHRbcisxXSw0LC0xNTMwOTkyMDYwKSxwPWEocCxoLHYseSx0W3IrNF0sMTEsMTI3Mjg5MzM1MykseT1hKHkscCxoLHYsdFtyKzddLDE2LC0xNTU0OTc2MzIpLHY9YSh2LHkscCxoLHRbcisxMF0sMjMsLTEwOTQ3MzA2NDApLGg9YShoLHYseSxwLHRbcisxM10sNCw2ODEyNzkxNzQpLHA9YShwLGgsdix5LHRbcl0sMTEsLTM1ODUzNzIyMikseT1hKHkscCxoLHYsdFtyKzNdLDE2LC03MjI1MjE5NzkpLHY9YSh2LHkscCxoLHRbcis2XSwyMyw3NjAyOTE4OSksaD1hKGgsdix5LHAsdFtyKzldLDQsLTY0MDM2NDQ4NykscD1hKHAsaCx2LHksdFtyKzEyXSwxMSwtNDIxODE1ODM1KSx5PWEoeSxwLGgsdix0W3IrMTVdLDE2LDUzMDc0MjUyMCksaD11KGgsdj1hKHYseSxwLGgsdFtyKzJdLDIzLC05OTUzMzg2NTEpLHkscCx0W3JdLDYsLTE5ODYzMDg0NCkscD11KHAsaCx2LHksdFtyKzddLDEwLDExMjY4OTE0MTUpLHk9dSh5LHAsaCx2LHRbcisxNF0sMTUsLTE0MTYzNTQ5MDUpLHY9dSh2LHkscCxoLHRbcis1XSwyMSwtNTc0MzQwNTUpLGg9dShoLHYseSxwLHRbcisxMl0sNiwxNzAwNDg1NTcxKSxwPXUocCxoLHYseSx0W3IrM10sMTAsLTE4OTQ5ODY2MDYpLHk9dSh5LHAsaCx2LHRbcisxMF0sMTUsLTEwNTE1MjMpLHY9dSh2LHkscCxoLHRbcisxXSwyMSwtMjA1NDkyMjc5OSksaD11KGgsdix5LHAsdFtyKzhdLDYsMTg3MzMxMzM1OSkscD11KHAsaCx2LHksdFtyKzE1XSwxMCwtMzA2MTE3NDQpLHk9dSh5LHAsaCx2LHRbcis2XSwxNSwtMTU2MDE5ODM4MCksdj11KHYseSxwLGgsdFtyKzEzXSwyMSwxMzA5MTUxNjQ5KSxoPXUoaCx2LHkscCx0W3IrNF0sNiwtMTQ1NTIzMDcwKSxwPXUocCxoLHYseSx0W3IrMTFdLDEwLC0xMTIwMjEwMzc5KSx5PXUoeSxwLGgsdix0W3IrMl0sMTUsNzE4Nzg3MjU5KSx2PXUodix5LHAsaCx0W3IrOV0sMjEsLTM0MzQ4NTU1MSksaD1uKGgscyksdj1uKHYsYykseT1uKHksZikscD1uKHAsbCk7cmV0dXJuW2gsdix5LHBdfWZ1bmN0aW9uIGModCl7dmFyIGUsbj0iIixyPTMyKnQubGVuZ3RoO2ZvcihlPTA7ZTxyO2UrPTgpbis9U3RyaW5nLmZyb21DaGFyQ29kZSh0W2U+PjVdPj4+ZSUzMiYyNTUpO3JldHVybiBufWZ1bmN0aW9uIGYodCl7dmFyIGUsbj1bXTtmb3IoblsodC5sZW5ndGg+PjIpLTFdPXZvaWQgMCxlPTA7ZTxuLmxlbmd0aDtlKz0xKW5bZV09MDt2YXIgcj04KnQubGVuZ3RoO2ZvcihlPTA7ZTxyO2UrPTgpbltlPj41XXw9KDI1NSZ0LmNoYXJDb2RlQXQoZS84KSk8PGUlMzI7cmV0dXJuIG59ZnVuY3Rpb24gbCh0KXt2YXIgZSxuLHI9IjAxMjM0NTY3ODlhYmNkZWYiLG89IiI7Zm9yKG49MDtuPHQubGVuZ3RoO24rPTEpZT10LmNoYXJDb2RlQXQobiksbys9ci5jaGFyQXQoZT4+PjQmMTUpK3IuY2hhckF0KDE1JmUpO3JldHVybiBvfWZ1bmN0aW9uIGgodCl7cmV0dXJuIHVuZXNjYXBlKGVuY29kZVVSSUNvbXBvbmVudCh0KSl9ZnVuY3Rpb24gdih0KXtyZXR1cm4gZnVuY3Rpb24odCl7cmV0dXJuIGMocyhmKHQpLDgqdC5sZW5ndGgpKX0oaCh0KSl9ZnVuY3Rpb24geSh0LGUpe3JldHVybiBmdW5jdGlvbih0LGUpe3ZhciBuLHIsbz1mKHQpLGk9W10sYT1bXTtmb3IoaVsxNV09YVsxNV09dm9pZCAwLG8ubGVuZ3RoPjE2JiYobz1zKG8sOCp0Lmxlbmd0aCkpLG49MDtuPDE2O24rPTEpaVtuXT05MDk1MjI0ODZeb1tuXSxhW25dPTE1NDk1NTY4Mjheb1tuXTtyZXR1cm4gcj1zKGkuY29uY2F0KGYoZSkpLDUxMis4KmUubGVuZ3RoKSxjKHMoYS5jb25jYXQociksNjQwKSl9KGgodCksaChlKSl9ZnVuY3Rpb24gcCh0LGUsbil7cmV0dXJuIGU/bj95KGUsdCk6bCh5KGUsdCkpOm4/dih0KTpsKHYodCkpfXQuZXhwb3J0cz90LmV4cG9ydHM9cDplLm1kNT1wfShtKX0pKGI9e2V4cG9ydHM6e319LGIuZXhwb3J0cyksb25tZXNzYWdlPWZ1bmN0aW9uKHQpe3ZhciBlPWZ1bmN0aW9uKHQpe3JldHVybiBrLnN0cmluZ2lmeShwKHQpKX0odC5kYXRhKTtzZWxmLnBvc3RNZXNzYWdlKGUpLHNlbGYuY2xvc2UoKX19KCk7Cgo=", null, !1)
|
|
, mt = pt("Lyogcm9sbHVwLXBsdWdpbi13ZWItd29ya2VyLWxvYWRlciAqLwohZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gdCh0LGUpe2lmKCEodCBpbnN0YW5jZW9mIGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBjYWxsIGEgY2xhc3MgYXMgYSBmdW5jdGlvbiIpfWZ1bmN0aW9uIGUodCxlKXtmb3IodmFyIG49MDtuPGUubGVuZ3RoO24rKyl7dmFyIHI9ZVtuXTtyLmVudW1lcmFibGU9ci5lbnVtZXJhYmxlfHwhMSxyLmNvbmZpZ3VyYWJsZT0hMCwidmFsdWUiaW4gciYmKHIud3JpdGFibGU9ITApLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LHIua2V5LHIpfX1mdW5jdGlvbiBuKHQsbixyKXtyZXR1cm4gbiYmZSh0LnByb3RvdHlwZSxuKSxyJiZlKHQsciksdH1mdW5jdGlvbiByKHQsZSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIGUmJm51bGwhPT1lKXRocm93IG5ldyBUeXBlRXJyb3IoIlN1cGVyIGV4cHJlc3Npb24gbXVzdCBlaXRoZXIgYmUgbnVsbCBvciBhIGZ1bmN0aW9uIik7dC5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShlJiZlLnByb3RvdHlwZSx7Y29uc3RydWN0b3I6e3ZhbHVlOnQsd3JpdGFibGU6ITAsY29uZmlndXJhYmxlOiEwfX0pLGUmJmkodCxlKX1mdW5jdGlvbiBvKHQpe3JldHVybihvPU9iamVjdC5zZXRQcm90b3R5cGVPZj9PYmplY3QuZ2V0UHJvdG90eXBlT2Y6ZnVuY3Rpb24odCl7cmV0dXJuIHQuX19wcm90b19ffHxPYmplY3QuZ2V0UHJvdG90eXBlT2YodCl9KSh0KX1mdW5jdGlvbiBpKHQsZSl7cmV0dXJuKGk9T2JqZWN0LnNldFByb3RvdHlwZU9mfHxmdW5jdGlvbih0LGUpe3JldHVybiB0Ll9fcHJvdG9fXz1lLHR9KSh0LGUpfWZ1bmN0aW9uIGEoKXtpZigidW5kZWZpbmVkIj09dHlwZW9mIFJlZmxlY3R8fCFSZWZsZWN0LmNvbnN0cnVjdClyZXR1cm4hMTtpZihSZWZsZWN0LmNvbnN0cnVjdC5zaGFtKXJldHVybiExO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBQcm94eSlyZXR1cm4hMDt0cnl7cmV0dXJuIEJvb2xlYW4ucHJvdG90eXBlLnZhbHVlT2YuY2FsbChSZWZsZWN0LmNvbnN0cnVjdChCb29sZWFuLFtdLChmdW5jdGlvbigpe30pKSksITB9Y2F0Y2godCl7cmV0dXJuITF9fWZ1bmN0aW9uIHUodCxlLG4pe3JldHVybih1PWEoKT9SZWZsZWN0LmNvbnN0cnVjdDpmdW5jdGlvbih0LGUsbil7dmFyIHI9W251bGxdO3IucHVzaC5hcHBseShyLGUpO3ZhciBvPW5ldyhGdW5jdGlvbi5iaW5kLmFwcGx5KHQscikpO3JldHVybiBuJiZpKG8sbi5wcm90b3R5cGUpLG99KS5hcHBseShudWxsLGFyZ3VtZW50cyl9ZnVuY3Rpb24gcyh0LGUpe3JldHVybiFlfHwib2JqZWN0IiE9dHlwZW9mIGUmJiJmdW5jdGlvbiIhPXR5cGVvZiBlP2Z1bmN0aW9uKHQpe2lmKHZvaWQgMD09PXQpdGhyb3cgbmV3IFJlZmVyZW5jZUVycm9yKCJ0aGlzIGhhc24ndCBiZWVuIGluaXRpYWxpc2VkIC0gc3VwZXIoKSBoYXNuJ3QgYmVlbiBjYWxsZWQiKTtyZXR1cm4gdH0odCk6ZX1mdW5jdGlvbiBjKHQpe3ZhciBlPWEoKTtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgbixyPW8odCk7aWYoZSl7dmFyIGk9byh0aGlzKS5jb25zdHJ1Y3RvcjtuPVJlZmxlY3QuY29uc3RydWN0KHIsYXJndW1lbnRzLGkpfWVsc2Ugbj1yLmFwcGx5KHRoaXMsYXJndW1lbnRzKTtyZXR1cm4gcyh0aGlzLG4pfX1mdW5jdGlvbiBmKHQsZSxuKXtyZXR1cm4oZj0idW5kZWZpbmVkIiE9dHlwZW9mIFJlZmxlY3QmJlJlZmxlY3QuZ2V0P1JlZmxlY3QuZ2V0OmZ1bmN0aW9uKHQsZSxuKXt2YXIgcj1mdW5jdGlvbih0LGUpe2Zvcig7IU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0LGUpJiZudWxsIT09KHQ9byh0KSk7KTtyZXR1cm4gdH0odCxlKTtpZihyKXt2YXIgaT1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHIsZSk7cmV0dXJuIGkuZ2V0P2kuZ2V0LmNhbGwobik6aS52YWx1ZX19KSh0LGUsbnx8dCl9dmFyIGw9ZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7dCh0aGlzLGUpfXJldHVybiBuKGUsW3trZXk6Im1peEluIix2YWx1ZTpmdW5jdGlvbih0KXtyZXR1cm4gT2JqZWN0LmFzc2lnbih0aGlzLHQpfX0se2tleToiY2xvbmUiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIHQ9bmV3IHRoaXMuY29uc3RydWN0b3I7cmV0dXJuIE9iamVjdC5hc3NpZ24odCx0aGlzKSx0fX1dLFt7a2V5OiJjcmVhdGUiLHZhbHVlOmZ1bmN0aW9uKCl7Zm9yKHZhciB0PWFyZ3VtZW50cy5sZW5ndGgsZT1uZXcgQXJyYXkodCksbj0wO248dDtuKyspZVtuXT1hcmd1bWVudHNbbl07cmV0dXJuIHUodGhpcyxlKX19XSksZX0oKSxoPWZ1bmN0aW9uKGUpe3IoYSxlKTt2YXIgaT1jKGEpO2Z1bmN0aW9uIGEoKXt2YXIgZSxuPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTpbXSxyPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTo0Km4ubGVuZ3RoO3QodGhpcyxhKSxlPWkuY2FsbCh0aGlzKTt2YXIgbz1uO2lmKG8gaW5zdGFuY2VvZiBBcnJheUJ1ZmZlciYmKG89bmV3IFVpbnQ4QXJyYXkobykpLChvIGluc3RhbmNlb2YgSW50OEFycmF5fHxvIGluc3RhbmNlb2YgVWludDhDbGFtcGVkQXJyYXl8fG8gaW5zdGFuY2VvZiBJbnQxNkFycmF5fHxvIGluc3RhbmNlb2YgVWludDE2QXJyYXl8fG8gaW5zdGFuY2VvZiBJbnQzMkFycmF5fHxvIGluc3RhbmNlb2YgVWludDMyQXJyYXl8fG8gaW5zdGFuY2VvZiBGbG9hdDMyQXJyYXl8fG8gaW5zdGFuY2VvZiBGbG9hdDY0QXJyYXkpJiYobz1uZXcgVWludDhBcnJheShvLmJ1ZmZlcixvLmJ5dGVPZmZzZXQsby5ieXRlTGVuZ3RoKSksbyBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpe2Zvcih2YXIgdT1vLmJ5dGVMZW5ndGgscz1bXSxjPTA7Yzx1O2MrPTEpc1tjPj4+Ml18PW9bY108PDI0LWMlNCo4O2Uud29yZHM9cyxlLnNpZ0J5dGVzPXV9ZWxzZSBlLndvcmRzPW4sZS5zaWdCeXRlcz1yO3JldHVybiBlfXJldHVybiBuKGEsW3trZXk6InRvU3RyaW5nIix2YWx1ZTpmdW5jdGlvbigpe3ZhciB0PWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTp2O3JldHVybiB0LnN0cmluZ2lmeSh0aGlzKX19LHtrZXk6ImNvbmNhdCIsdmFsdWU6ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy53b3JkcyxuPXQud29yZHMscj10aGlzLnNpZ0J5dGVzLG89dC5zaWdCeXRlcztpZih0aGlzLmNsYW1wKCksciU0KWZvcih2YXIgaT0wO2k8bztpKz0xKXt2YXIgYT1uW2k+Pj4yXT4+PjI0LWklNCo4JjI1NTtlW3IraT4+PjJdfD1hPDwyNC0ocitpKSU0Kjh9ZWxzZSBmb3IodmFyIHU9MDt1PG87dSs9NCllW3IrdT4+PjJdPW5bdT4+PjJdO3JldHVybiB0aGlzLnNpZ0J5dGVzKz1vLHRoaXN9fSx7a2V5OiJjbGFtcCIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLndvcmRzLGU9dGhpcy5zaWdCeXRlczt0W2U+Pj4yXSY9NDI5NDk2NzI5NTw8MzItZSU0KjgsdC5sZW5ndGg9TWF0aC5jZWlsKGUvNCl9fSx7a2V5OiJjbG9uZSIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgdD1mKG8oYS5wcm90b3R5cGUpLCJjbG9uZSIsdGhpcykuY2FsbCh0aGlzKTtyZXR1cm4gdC53b3Jkcz10aGlzLndvcmRzLnNsaWNlKDApLHR9fV0sW3trZXk6InJhbmRvbSIsdmFsdWU6ZnVuY3Rpb24odCl7Zm9yKHZhciBlLG49W10scj1mdW5jdGlvbih0KXt2YXIgZT10LG49OTg3NjU0MzIxLHI9NDI5NDk2NzI5NTtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgdD0oKG49MzY5NjkqKDY1NTM1Jm4pKyhuPj4xNikmcik8PDE2KSsoZT0xOGUzKig2NTUzNSZlKSsoZT4+MTYpJnIpJnI7cmV0dXJuIHQvPTQyOTQ5NjcyOTYsKHQrPS41KSooTWF0aC5yYW5kb20oKT4uNT8xOi0xKX19LG89MDtvPHQ7bys9NCl7dmFyIGk9cig0Mjk0OTY3Mjk2KihlfHxNYXRoLnJhbmRvbSgpKSk7ZT05ODc2NTQwNzEqaSgpLG4ucHVzaCg0Mjk0OTY3Mjk2KmkoKXwwKX1yZXR1cm4gbmV3IGEobix0KX19XSksYX0obCksdj17c3RyaW5naWZ5OmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10LndvcmRzLG49dC5zaWdCeXRlcyxyPVtdLG89MDtvPG47bys9MSl7dmFyIGk9ZVtvPj4+Ml0+Pj4yNC1vJTQqOCYyNTU7ci5wdXNoKChpPj4+NCkudG9TdHJpbmcoMTYpKSxyLnB1c2goKDE1JmkpLnRvU3RyaW5nKDE2KSl9cmV0dXJuIHIuam9pbigiIil9LHBhcnNlOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10Lmxlbmd0aCxuPVtdLHI9MDtyPGU7cis9MiluW3I+Pj4zXXw9cGFyc2VJbnQodC5zdWJzdHIociwyKSwxNik8PDI0LXIlOCo0O3JldHVybiBuZXcgaChuLGUvMil9fSxwPWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10LndvcmRzLG49dC5zaWdCeXRlcyxyPVtdLG89MDtvPG47bys9MSl7dmFyIGk9ZVtvPj4+Ml0+Pj4yNC1vJTQqOCYyNTU7ci5wdXNoKFN0cmluZy5mcm9tQ2hhckNvZGUoaSkpfXJldHVybiByLmpvaW4oIiIpfSx5PWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10Lmxlbmd0aCxuPVtdLHI9MDtyPGU7cis9MSluW3I+Pj4yXXw9KDI1NSZ0LmNoYXJDb2RlQXQocikpPDwyNC1yJTQqODtyZXR1cm4gbmV3IGgobixlKX0sZD1mdW5jdGlvbih0KXt0cnl7cmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudChlc2NhcGUocCh0KSkpfWNhdGNoKHQpe3Rocm93IG5ldyBFcnJvcigiTWFsZm9ybWVkIFVURi04IGRhdGEiKX19LGc9ZnVuY3Rpb24odCl7cmV0dXJuIHkodW5lc2NhcGUoZW5jb2RlVVJJQ29tcG9uZW50KHQpKSl9LF89ZnVuY3Rpb24oZSl7cihhLGUpO3ZhciBpPWMoYSk7ZnVuY3Rpb24gYShlKXt2YXIgbjtyZXR1cm4gdCh0aGlzLGEpLChuPWkuY2FsbCh0aGlzKSkuYmxvY2tTaXplPTE2LG4uY2ZnPU9iamVjdC5hc3NpZ24obmV3IGwsZSksbi5yZXNldCgpLG59cmV0dXJuIG4oYSxbe2tleToicmVzZXQiLHZhbHVlOmZ1bmN0aW9uKCl7ZihvKGEucHJvdG90eXBlKSwicmVzZXQiLHRoaXMpLmNhbGwodGhpcyksdGhpcy5fZG9SZXNldCgpfX0se2tleToidXBkYXRlIix2YWx1ZTpmdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fYXBwZW5kKHQpLHRoaXMuX3Byb2Nlc3MoKSx0aGlzfX0se2tleToiZmluYWxpemUiLHZhbHVlOmZ1bmN0aW9uKHQpe3JldHVybiB0JiZ0aGlzLl9hcHBlbmQodCksdGhpcy5fZG9GaW5hbGl6ZSgpfX1dLFt7a2V5OiJfY3JlYXRlSGVscGVyIix2YWx1ZTpmdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oZSxuKXtyZXR1cm4gbmV3IHQobikuZmluYWxpemUoZSl9fX0se2tleToiX2NyZWF0ZUhtYWNIZWxwZXIiLHZhbHVlOmZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihlLG4pe3JldHVybiBuZXcgdyh0LG4pLmZpbmFsaXplKGUpfX19XSksYX0oZnVuY3Rpb24oZSl7cihhLGUpO3ZhciBpPWMoYSk7ZnVuY3Rpb24gYSgpe3ZhciBlO3JldHVybiB0KHRoaXMsYSksKGU9aS5jYWxsKHRoaXMpKS5fbWluQnVmZmVyU2l6ZT0wLGV9cmV0dXJuIG4oYSxbe2tleToicmVzZXQiLHZhbHVlOmZ1bmN0aW9uKCl7dGhpcy5fZGF0YT1uZXcgaCx0aGlzLl9uRGF0YUJ5dGVzPTB9fSx7a2V5OiJfYXBwZW5kIix2YWx1ZTpmdW5jdGlvbih0KXt2YXIgZT10OyJzdHJpbmciPT10eXBlb2YgZSYmKGU9ZyhlKSksdGhpcy5fZGF0YS5jb25jYXQoZSksdGhpcy5fbkRhdGFCeXRlcys9ZS5zaWdCeXRlc319LHtrZXk6Il9wcm9jZXNzIix2YWx1ZTpmdW5jdGlvbih0KXt2YXIgZSxuPXRoaXMuX2RhdGEscj10aGlzLmJsb2NrU2l6ZSxvPW4ud29yZHMsaT1uLnNpZ0J5dGVzLGE9aS8oNCpyKSx1PShhPXQ/TWF0aC5jZWlsKGEpOk1hdGgubWF4KCgwfGEpLXRoaXMuX21pbkJ1ZmZlclNpemUsMCkpKnIscz1NYXRoLm1pbig0KnUsaSk7aWYodSl7Zm9yKHZhciBjPTA7Yzx1O2MrPXIpdGhpcy5fZG9Qcm9jZXNzQmxvY2sobyxjKTtlPW8uc3BsaWNlKDAsdSksbi5zaWdCeXRlcy09c31yZXR1cm4gbmV3IGgoZSxzKX19LHtrZXk6ImNsb25lIix2YWx1ZTpmdW5jdGlvbigpe3ZhciB0PWYobyhhLnByb3RvdHlwZSksImNsb25lIix0aGlzKS5jYWxsKHRoaXMpO3JldHVybiB0Ll9kYXRhPXRoaXMuX2RhdGEuY2xvbmUoKSx0fX1dKSxhfShsKSksdz1mdW5jdGlvbihlKXtyKGksZSk7dmFyIG89YyhpKTtmdW5jdGlvbiBpKGUsbil7dmFyIHI7dCh0aGlzLGkpLHI9by5jYWxsKHRoaXMpO3ZhciBhPW5ldyBlO3IuX2hhc2hlcj1hO3ZhciB1PW47InN0cmluZyI9PXR5cGVvZiB1JiYodT1nKHUpKTt2YXIgcz1hLmJsb2NrU2l6ZSxjPTQqczt1LnNpZ0J5dGVzPmMmJih1PWEuZmluYWxpemUobikpLHUuY2xhbXAoKTt2YXIgZj11LmNsb25lKCk7ci5fb0tleT1mO3ZhciBsPXUuY2xvbmUoKTtyLl9pS2V5PWw7Zm9yKHZhciBoPWYud29yZHMsdj1sLndvcmRzLHA9MDtwPHM7cCs9MSloW3BdXj0xNTQ5NTU2ODI4LHZbcF1ePTkwOTUyMjQ4NjtyZXR1cm4gZi5zaWdCeXRlcz1jLGwuc2lnQnl0ZXM9YyxyLnJlc2V0KCkscn1yZXR1cm4gbihpLFt7a2V5OiJyZXNldCIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLl9oYXNoZXI7dC5yZXNldCgpLHQudXBkYXRlKHRoaXMuX2lLZXkpfX0se2tleToidXBkYXRlIix2YWx1ZTpmdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5faGFzaGVyLnVwZGF0ZSh0KSx0aGlzfX0se2tleToiZmluYWxpemUiLHZhbHVlOmZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuX2hhc2hlcixuPWUuZmluYWxpemUodCk7cmV0dXJuIGUucmVzZXQoKSxlLmZpbmFsaXplKHRoaXMuX29LZXkuY2xvbmUoKS5jb25jYXQobikpfX1dKSxpfShsKSxiPVtdLGs9ZnVuY3Rpb24oZSl7cihhLGUpO3ZhciBpPWMoYSk7ZnVuY3Rpb24gYSgpe3JldHVybiB0KHRoaXMsYSksaS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9cmV0dXJuIG4oYSxbe2tleToiX2RvUmVzZXQiLHZhbHVlOmZ1bmN0aW9uKCl7dGhpcy5faGFzaD1uZXcgaChbMTczMjU4NDE5Myw0MDIzMjMzNDE3LDI1NjIzODMxMDIsMjcxNzMzODc4LDMyODUzNzc1MjBdKX19LHtrZXk6Il9kb1Byb2Nlc3NCbG9jayIsdmFsdWU6ZnVuY3Rpb24odCxlKXtmb3IodmFyIG49dGhpcy5faGFzaC53b3JkcyxyPW5bMF0sbz1uWzFdLGk9blsyXSxhPW5bM10sdT1uWzRdLHM9MDtzPDgwO3MrPTEpe2lmKHM8MTYpYltzXT0wfHRbZStzXTtlbHNle3ZhciBjPWJbcy0zXV5iW3MtOF1eYltzLTE0XV5iW3MtMTZdO2Jbc109Yzw8MXxjPj4+MzF9dmFyIGY9KHI8PDV8cj4+PjI3KSt1K2Jbc107Zis9czwyMD8xNTE4NTAwMjQ5KyhvJml8fm8mYSk6czw0MD8xODU5Nzc1MzkzKyhvXmleYSk6czw2MD8obyZpfG8mYXxpJmEpLTE4OTQwMDc1ODg6KG9eaV5hKS04OTk0OTc1MTQsdT1hLGE9aSxpPW88PDMwfG8+Pj4yLG89cixyPWZ9blswXT1uWzBdK3J8MCxuWzFdPW5bMV0rb3wwLG5bMl09blsyXStpfDAsblszXT1uWzNdK2F8MCxuWzRdPW5bNF0rdXwwfX0se2tleToiX2RvRmluYWxpemUiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5fZGF0YSxlPXQud29yZHMsbj04KnRoaXMuX25EYXRhQnl0ZXMscj04KnQuc2lnQnl0ZXM7cmV0dXJuIGVbcj4+PjVdfD0xMjg8PDI0LXIlMzIsZVsxNCsocis2ND4+Pjk8PDQpXT1NYXRoLmZsb29yKG4vNDI5NDk2NzI5NiksZVsxNSsocis2ND4+Pjk8PDQpXT1uLHQuc2lnQnl0ZXM9NCplLmxlbmd0aCx0aGlzLl9wcm9jZXNzKCksdGhpcy5faGFzaH19LHtrZXk6ImNsb25lIix2YWx1ZTpmdW5jdGlvbigpe3ZhciB0PWYobyhhLnByb3RvdHlwZSksImNsb25lIix0aGlzKS5jYWxsKHRoaXMpO3JldHVybiB0Ll9oYXNoPXRoaXMuX2hhc2guY2xvbmUoKSx0fX1dKSxhfShfKTtfLl9jcmVhdGVIZWxwZXIoayksXy5fY3JlYXRlSG1hY0hlbHBlcihrKTt2YXIgbSxCPXtzdHJpbmdpZnk6ZnVuY3Rpb24odCl7dmFyIGU9dC53b3JkcyxuPXQuc2lnQnl0ZXMscj10aGlzLl9tYXA7dC5jbGFtcCgpO2Zvcih2YXIgbz1bXSxpPTA7aTxuO2krPTMpZm9yKHZhciBhPShlW2k+Pj4yXT4+PjI0LWklNCo4JjI1NSk8PDE2fChlW2krMT4+PjJdPj4+MjQtKGkrMSklNCo4JjI1NSk8PDh8ZVtpKzI+Pj4yXT4+PjI0LShpKzIpJTQqOCYyNTUsdT0wO3U8NCYmaSsuNzUqdTxuO3UrPTEpby5wdXNoKHIuY2hhckF0KGE+Pj42KigzLXUpJjYzKSk7dmFyIHM9ci5jaGFyQXQoNjQpO2lmKHMpZm9yKDtvLmxlbmd0aCU0OylvLnB1c2gocyk7cmV0dXJuIG8uam9pbigiIil9LHBhcnNlOmZ1bmN0aW9uKHQpe3ZhciBlPXQubGVuZ3RoLG49dGhpcy5fbWFwLHI9dGhpcy5fcmV2ZXJzZU1hcDtpZighcil7dGhpcy5fcmV2ZXJzZU1hcD1bXSxyPXRoaXMuX3JldmVyc2VNYXA7Zm9yKHZhciBvPTA7bzxuLmxlbmd0aDtvKz0xKXJbbi5jaGFyQ29kZUF0KG8pXT1vfXZhciBpPW4uY2hhckF0KDY0KTtpZihpKXt2YXIgYT10LmluZGV4T2YoaSk7LTEhPT1hJiYoZT1hKX1yZXR1cm4gZnVuY3Rpb24odCxlLG4pe2Zvcih2YXIgcj1bXSxvPTAsaT0wO2k8ZTtpKz0xKWlmKGklNCl7dmFyIGE9blt0LmNoYXJDb2RlQXQoaS0xKV08PGklNCoyfG5bdC5jaGFyQ29kZUF0KGkpXT4+PjYtaSU0KjI7cltvPj4+Ml18PWE8PDI0LW8lNCo4LG8rPTF9cmV0dXJuIGguY3JlYXRlKHIsbyl9KHQsZSxyKX0sX21hcDoiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLz0ifSxBPSJ1bmRlZmluZWQiIT10eXBlb2YgZ2xvYmFsVGhpcz9nbG9iYWxUaGlzOiJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P3dpbmRvdzoidW5kZWZpbmVkIiE9dHlwZW9mIGdsb2JhbD9nbG9iYWw6InVuZGVmaW5lZCIhPXR5cGVvZiBzZWxmP3NlbGY6e307KGZ1bmN0aW9uKHQpeyFmdW5jdGlvbihlKXtmdW5jdGlvbiBuKHQsZSl7dmFyIG49KDY1NTM1JnQpKyg2NTUzNSZlKTtyZXR1cm4odD4+MTYpKyhlPj4xNikrKG4+PjE2KTw8MTZ8NjU1MzUmbn1mdW5jdGlvbiByKHQsZSxyLG8saSxhKXtyZXR1cm4gbigodT1uKG4oZSx0KSxuKG8sYSkpKTw8KHM9aSl8dT4+PjMyLXMscik7dmFyIHUsc31mdW5jdGlvbiBvKHQsZSxuLG8saSxhLHUpe3JldHVybiByKGUmbnx+ZSZvLHQsZSxpLGEsdSl9ZnVuY3Rpb24gaSh0LGUsbixvLGksYSx1KXtyZXR1cm4gcihlJm98biZ+byx0LGUsaSxhLHUpfWZ1bmN0aW9uIGEodCxlLG4sbyxpLGEsdSl7cmV0dXJuIHIoZV5uXm8sdCxlLGksYSx1KX1mdW5jdGlvbiB1KHQsZSxuLG8saSxhLHUpe3JldHVybiByKG5eKGV8fm8pLHQsZSxpLGEsdSl9ZnVuY3Rpb24gcyh0LGUpe3ZhciByLHMsYyxmLGw7dFtlPj41XXw9MTI4PDxlJTMyLHRbMTQrKGUrNjQ+Pj45PDw0KV09ZTt2YXIgaD0xNzMyNTg0MTkzLHY9LTI3MTczMzg3OSxwPS0xNzMyNTg0MTk0LHk9MjcxNzMzODc4O2ZvcihyPTA7cjx0Lmxlbmd0aDtyKz0xNilzPWgsYz12LGY9cCxsPXksaD1vKGgsdixwLHksdFtyXSw3LC02ODA4NzY5MzYpLHk9byh5LGgsdixwLHRbcisxXSwxMiwtMzg5NTY0NTg2KSxwPW8ocCx5LGgsdix0W3IrMl0sMTcsNjA2MTA1ODE5KSx2PW8odixwLHksaCx0W3IrM10sMjIsLTEwNDQ1MjUzMzApLGg9byhoLHYscCx5LHRbcis0XSw3LC0xNzY0MTg4OTcpLHk9byh5LGgsdixwLHRbcis1XSwxMiwxMjAwMDgwNDI2KSxwPW8ocCx5LGgsdix0W3IrNl0sMTcsLTE0NzMyMzEzNDEpLHY9byh2LHAseSxoLHRbcis3XSwyMiwtNDU3MDU5ODMpLGg9byhoLHYscCx5LHRbcis4XSw3LDE3NzAwMzU0MTYpLHk9byh5LGgsdixwLHRbcis5XSwxMiwtMTk1ODQxNDQxNykscD1vKHAseSxoLHYsdFtyKzEwXSwxNywtNDIwNjMpLHY9byh2LHAseSxoLHRbcisxMV0sMjIsLTE5OTA0MDQxNjIpLGg9byhoLHYscCx5LHRbcisxMl0sNywxODA0NjAzNjgyKSx5PW8oeSxoLHYscCx0W3IrMTNdLDEyLC00MDM0MTEwMSkscD1vKHAseSxoLHYsdFtyKzE0XSwxNywtMTUwMjAwMjI5MCksaD1pKGgsdj1vKHYscCx5LGgsdFtyKzE1XSwyMiwxMjM2NTM1MzI5KSxwLHksdFtyKzFdLDUsLTE2NTc5NjUxMCkseT1pKHksaCx2LHAsdFtyKzZdLDksLTEwNjk1MDE2MzIpLHA9aShwLHksaCx2LHRbcisxMV0sMTQsNjQzNzE3NzEzKSx2PWkodixwLHksaCx0W3JdLDIwLC0zNzM4OTczMDIpLGg9aShoLHYscCx5LHRbcis1XSw1LC03MDE1NTg2OTEpLHk9aSh5LGgsdixwLHRbcisxMF0sOSwzODAxNjA4MykscD1pKHAseSxoLHYsdFtyKzE1XSwxNCwtNjYwNDc4MzM1KSx2PWkodixwLHksaCx0W3IrNF0sMjAsLTQwNTUzNzg0OCksaD1pKGgsdixwLHksdFtyKzldLDUsNTY4NDQ2NDM4KSx5PWkoeSxoLHYscCx0W3IrMTRdLDksLTEwMTk4MDM2OTApLHA9aShwLHksaCx2LHRbciszXSwxNCwtMTg3MzYzOTYxKSx2PWkodixwLHksaCx0W3IrOF0sMjAsMTE2MzUzMTUwMSksaD1pKGgsdixwLHksdFtyKzEzXSw1LC0xNDQ0NjgxNDY3KSx5PWkoeSxoLHYscCx0W3IrMl0sOSwtNTE0MDM3ODQpLHA9aShwLHksaCx2LHRbcis3XSwxNCwxNzM1MzI4NDczKSxoPWEoaCx2PWkodixwLHksaCx0W3IrMTJdLDIwLC0xOTI2NjA3NzM0KSxwLHksdFtyKzVdLDQsLTM3ODU1OCkseT1hKHksaCx2LHAsdFtyKzhdLDExLC0yMDIyNTc0NDYzKSxwPWEocCx5LGgsdix0W3IrMTFdLDE2LDE4MzkwMzA1NjIpLHY9YSh2LHAseSxoLHRbcisxNF0sMjMsLTM1MzA5NTU2KSxoPWEoaCx2LHAseSx0W3IrMV0sNCwtMTUzMDk5MjA2MCkseT1hKHksaCx2LHAsdFtyKzRdLDExLDEyNzI4OTMzNTMpLHA9YShwLHksaCx2LHRbcis3XSwxNiwtMTU1NDk3NjMyKSx2PWEodixwLHksaCx0W3IrMTBdLDIzLC0xMDk0NzMwNjQwKSxoPWEoaCx2LHAseSx0W3IrMTNdLDQsNjgxMjc5MTc0KSx5PWEoeSxoLHYscCx0W3JdLDExLC0zNTg1MzcyMjIpLHA9YShwLHksaCx2LHRbciszXSwxNiwtNzIyNTIxOTc5KSx2PWEodixwLHksaCx0W3IrNl0sMjMsNzYwMjkxODkpLGg9YShoLHYscCx5LHRbcis5XSw0LC02NDAzNjQ0ODcpLHk9YSh5LGgsdixwLHRbcisxMl0sMTEsLTQyMTgxNTgzNSkscD1hKHAseSxoLHYsdFtyKzE1XSwxNiw1MzA3NDI1MjApLGg9dShoLHY9YSh2LHAseSxoLHRbcisyXSwyMywtOTk1MzM4NjUxKSxwLHksdFtyXSw2LC0xOTg2MzA4NDQpLHk9dSh5LGgsdixwLHRbcis3XSwxMCwxMTI2ODkxNDE1KSxwPXUocCx5LGgsdix0W3IrMTRdLDE1LC0xNDE2MzU0OTA1KSx2PXUodixwLHksaCx0W3IrNV0sMjEsLTU3NDM0MDU1KSxoPXUoaCx2LHAseSx0W3IrMTJdLDYsMTcwMDQ4NTU3MSkseT11KHksaCx2LHAsdFtyKzNdLDEwLC0xODk0OTg2NjA2KSxwPXUocCx5LGgsdix0W3IrMTBdLDE1LC0xMDUxNTIzKSx2PXUodixwLHksaCx0W3IrMV0sMjEsLTIwNTQ5MjI3OTkpLGg9dShoLHYscCx5LHRbcis4XSw2LDE4NzMzMTMzNTkpLHk9dSh5LGgsdixwLHRbcisxNV0sMTAsLTMwNjExNzQ0KSxwPXUocCx5LGgsdix0W3IrNl0sMTUsLTE1NjAxOTgzODApLHY9dSh2LHAseSxoLHRbcisxM10sMjEsMTMwOTE1MTY0OSksaD11KGgsdixwLHksdFtyKzRdLDYsLTE0NTUyMzA3MCkseT11KHksaCx2LHAsdFtyKzExXSwxMCwtMTEyMDIxMDM3OSkscD11KHAseSxoLHYsdFtyKzJdLDE1LDcxODc4NzI1OSksdj11KHYscCx5LGgsdFtyKzldLDIxLC0zNDM0ODU1NTEpLGg9bihoLHMpLHY9bih2LGMpLHA9bihwLGYpLHk9bih5LGwpO3JldHVybltoLHYscCx5XX1mdW5jdGlvbiBjKHQpe3ZhciBlLG49IiIscj0zMip0Lmxlbmd0aDtmb3IoZT0wO2U8cjtlKz04KW4rPVN0cmluZy5mcm9tQ2hhckNvZGUodFtlPj41XT4+PmUlMzImMjU1KTtyZXR1cm4gbn1mdW5jdGlvbiBmKHQpe3ZhciBlLG49W107Zm9yKG5bKHQubGVuZ3RoPj4yKS0xXT12b2lkIDAsZT0wO2U8bi5sZW5ndGg7ZSs9MSluW2VdPTA7dmFyIHI9OCp0Lmxlbmd0aDtmb3IoZT0wO2U8cjtlKz04KW5bZT4+NV18PSgyNTUmdC5jaGFyQ29kZUF0KGUvOCkpPDxlJTMyO3JldHVybiBufWZ1bmN0aW9uIGwodCl7dmFyIGUsbixyPSIwMTIzNDU2Nzg5YWJjZGVmIixvPSIiO2ZvcihuPTA7bjx0Lmxlbmd0aDtuKz0xKWU9dC5jaGFyQ29kZUF0KG4pLG8rPXIuY2hhckF0KGU+Pj40JjE1KStyLmNoYXJBdCgxNSZlKTtyZXR1cm4gb31mdW5jdGlvbiBoKHQpe3JldHVybiB1bmVzY2FwZShlbmNvZGVVUklDb21wb25lbnQodCkpfWZ1bmN0aW9uIHYodCl7cmV0dXJuIGZ1bmN0aW9uKHQpe3JldHVybiBjKHMoZih0KSw4KnQubGVuZ3RoKSl9KGgodCkpfWZ1bmN0aW9uIHAodCxlKXtyZXR1cm4gZnVuY3Rpb24odCxlKXt2YXIgbixyLG89Zih0KSxpPVtdLGE9W107Zm9yKGlbMTVdPWFbMTVdPXZvaWQgMCxvLmxlbmd0aD4xNiYmKG89cyhvLDgqdC5sZW5ndGgpKSxuPTA7bjwxNjtuKz0xKWlbbl09OTA5NTIyNDg2Xm9bbl0sYVtuXT0xNTQ5NTU2ODI4Xm9bbl07cmV0dXJuIHI9cyhpLmNvbmNhdChmKGUpKSw1MTIrOCplLmxlbmd0aCksYyhzKGEuY29uY2F0KHIpLDY0MCkpfShoKHQpLGgoZSkpfWZ1bmN0aW9uIHkodCxlLG4pe3JldHVybiBlP24/cChlLHQpOmwocChlLHQpKTpuP3YodCk6bCh2KHQpKX10LmV4cG9ydHM/dC5leHBvcnRzPXk6ZS5tZDU9eX0oQSl9KShtPXtleHBvcnRzOnt9fSxtLmV4cG9ydHMpLG9ubWVzc2FnZT1mdW5jdGlvbih0KXt2YXIgZSxuPXQuZGF0YSxyPW4udHlwZSxvPW4uaW5mbzsiZW5jcnlwdCI9PT1yPyhvLmRhdGE9KGU9by5kYXRhLEIuc3RyaW5naWZ5KGcoZSkpKSxzZWxmLnBvc3RNZXNzYWdlKG8pKToiZGVjcnlwdCI9PT1yJiZzZWxmLnBvc3RNZXNzYWdlKEpTT04ucGFyc2UoZnVuY3Rpb24odCl7cmV0dXJuIGQoQi5wYXJzZSh0KSl9KG8pKSl9fSgpOwoK", null, !1)
|
|
, ft = "hashchange"
|
|
, gt = function(t) {
|
|
function e(e) {
|
|
var n = t.call(this) || this;
|
|
n.beginTime = _ && _.fetchStart || (new Date).valueOf(),
|
|
n.options = {},
|
|
n.touchStartObject = {},
|
|
n.touchMoveObject = {},
|
|
n.mousedown = !1,
|
|
n.mouseDownObject = {},
|
|
n.mouseMoveArray = [],
|
|
n.logQueue = [],
|
|
n.reportUrl = "",
|
|
n.firstSend = !0,
|
|
n.encryptFailedFunc = function() {}
|
|
,
|
|
n.encryptSuccessFunc = function() {}
|
|
,
|
|
n.decryptFailedFunc = function() {}
|
|
,
|
|
n.decryptSuccessFunc = function() {}
|
|
,
|
|
n.auH = "",
|
|
n.rtcH = "",
|
|
n.rtcS = "",
|
|
n.ts = {},
|
|
n.mouseDownEvent = function(t) {
|
|
n.mousedown = !0,
|
|
n.mouseDownObject = n.pickMouseEventProps(t),
|
|
n.ts.ms = (new Date).getTime()
|
|
}
|
|
,
|
|
n.mouseMoveEvent = function(t) {
|
|
n.mousedown && (n.mouseMoveArray.push(n.pickMouseEventProps(t)),
|
|
n.ts.mm = (new Date).getTime())
|
|
}
|
|
,
|
|
n.mouseUpEvent = function(t) {
|
|
if (n.mousedown) {
|
|
var e = n.pickMouseEventProps(t)
|
|
, r = {
|
|
mouseDown: {},
|
|
mouseMove: [],
|
|
mouseUp: {}
|
|
};
|
|
r.mouseDown = n.mouseDownObject,
|
|
r.mouseMove = n.mouseMoveArray,
|
|
r.mouseUp = e;
|
|
var o = n.dataFormat(t);
|
|
if (o) {
|
|
var i = void 0;
|
|
i = 0 === n.mouseMoveArray.length ? n.generateModuleSection(h({
|
|
type: "CLICK",
|
|
timestamp: (new Date).valueOf()
|
|
}, o), "19") : n.generateModuleSection(h(h({
|
|
type: "MOUSE",
|
|
timestamp: (new Date).valueOf()
|
|
}, o), {
|
|
mouseInfo: r
|
|
}), "22"),
|
|
n.send(i)
|
|
}
|
|
n.mousedown = !1,
|
|
n.mouseDownObject = {},
|
|
n.mouseMoveArray = [],
|
|
n.ts.me = (new Date).getTime()
|
|
}
|
|
}
|
|
,
|
|
n.pickMouseEventProps = function(t) {
|
|
var e = t.clientX
|
|
, n = t.clientY
|
|
, r = t.altKey
|
|
, o = t.button
|
|
, i = t.buttons
|
|
, a = t.ctrlKey
|
|
, s = t.metaKey;
|
|
t.pageX,
|
|
t.pageY;
|
|
var c = t.region
|
|
, u = t.relatedTarget
|
|
, l = t.shiftKey
|
|
, d = t.which
|
|
, p = t.webkitForce;
|
|
return {
|
|
clientX: Number(e.toFixed(2)),
|
|
clientY: Number(n.toFixed(2)),
|
|
altKey: r,
|
|
button: o,
|
|
buttons: i,
|
|
ctrlKey: a,
|
|
metaKey: s,
|
|
pageX: Number(e.toFixed(2)),
|
|
pageY: Number(n.toFixed(2)),
|
|
region: c,
|
|
relatedTarget: u,
|
|
shiftKey: l,
|
|
which: d,
|
|
webkitForce: p,
|
|
timestamp: (new Date).valueOf()
|
|
}
|
|
}
|
|
,
|
|
n.keyDownHandler = function(t) {
|
|
var e;
|
|
e = n.generateModuleSection({
|
|
type: "KEYBOARD",
|
|
timestamp: (new Date).valueOf(),
|
|
altKey: t.altKey,
|
|
code: t.code,
|
|
ctrlKey: t.ctrlKey,
|
|
isComposing: t.isComposing,
|
|
key: t.key,
|
|
locale: t.locale || "",
|
|
location: t.location,
|
|
metaKey: t.metaKey,
|
|
repeat: t.repeat,
|
|
shiftKey: t.shiftKey
|
|
}, "45"),
|
|
n.send(e)
|
|
}
|
|
,
|
|
n.gamepadConnectHandler = function(t) {
|
|
var e = n.generateModuleSection({
|
|
type: "GAMEPADCONNECTED",
|
|
game_pad_id: t.gamepad.id,
|
|
timestamp: (new Date).valueOf()
|
|
}, 44);
|
|
n.send(e)
|
|
}
|
|
,
|
|
n.getConfig = function(t) {
|
|
var e = {
|
|
data: JSON.stringify({
|
|
device_id: n.weblog.commonPackage.identity_package.device_id,
|
|
sdkver: G,
|
|
pver: "0.0.0",
|
|
hp: n.options.bussType,
|
|
platform: 3
|
|
}),
|
|
flag: 2,
|
|
url: B(n.options)
|
|
};
|
|
n.encryptFailedFunc = function(t, e) {
|
|
return function() {
|
|
var r = m(t, ["url"]);
|
|
r.data = F(r.data),
|
|
n.dataXhr(t, e)
|
|
}
|
|
}(e, t),
|
|
n.encryptSuccessFunc = function(t) {
|
|
return function(e) {
|
|
n.dataXhr(e, t)
|
|
}
|
|
}(t),
|
|
n.encryptDecryptWorker.postMessage({
|
|
type: "encrypt",
|
|
info: e
|
|
})
|
|
}
|
|
,
|
|
n.flush = function() {
|
|
n.sendLogs(n.logQueue),
|
|
n.logQueue = []
|
|
}
|
|
,
|
|
n.touchStartEvent = function(t) {
|
|
n.ts.ts = (new Date).getTime();
|
|
for (var e = t.touches, r = 0; r < e.length; r++) {
|
|
var o = e[r]
|
|
, i = o.clientX
|
|
, a = o.clientY
|
|
, s = o.identifier
|
|
, c = o.force;
|
|
if (n.touchStartObject[s])
|
|
return;
|
|
n.touchStartObject[s] = {
|
|
clientX: Number(i.toFixed(2)),
|
|
clientY: Number(a.toFixed(2)),
|
|
force: c,
|
|
timestamp: (new Date).valueOf()
|
|
}
|
|
}
|
|
}
|
|
,
|
|
n.touchMoveEvent = function(t) {
|
|
n.ts.tm = (new Date).getTime();
|
|
for (var e = t.changedTouches, r = 0; r < e.length; r++) {
|
|
var o = e[r]
|
|
, i = o.clientX
|
|
, a = o.clientY
|
|
, s = o.identifier
|
|
, c = o.force
|
|
, u = {
|
|
clientX: Number(i.toFixed(2)),
|
|
clientY: Number(a.toFixed(2)),
|
|
timestamp: (new Date).valueOf(),
|
|
force: c
|
|
};
|
|
if (n.touchMoveObject[s])
|
|
return void n.touchMoveObject[s].push(u);
|
|
n.touchMoveObject[s] = [u]
|
|
}
|
|
}
|
|
,
|
|
n.touchEndEvent = function(t) {
|
|
n.ts.te = (new Date).getTime();
|
|
for (var e = t.changedTouches, r = [], o = 0; o < e.length; o++) {
|
|
var i = e[o]
|
|
, a = i.clientX
|
|
, s = i.clientY
|
|
, c = i.identifier
|
|
, u = i.force
|
|
, l = {
|
|
touchStart: {},
|
|
touchMove: [],
|
|
touchEnd: {}
|
|
}
|
|
, d = n.touchStartObject[c]
|
|
, p = n.touchMoveObject[c];
|
|
d && (l.touchStart = d,
|
|
delete n.touchStartObject[c]),
|
|
p && (l.touchMove = p,
|
|
delete n.touchMoveObject[c]),
|
|
l.touchEnd = {
|
|
clientX: Number(a.toFixed(2)),
|
|
clientY: Number(s.toFixed(2)),
|
|
timestamp: (new Date).valueOf(),
|
|
force: u
|
|
},
|
|
r.push(l)
|
|
}
|
|
var m = r[0] && 0 === r[0].touchMove.length
|
|
, f = n.dataFormat(t);
|
|
if (f) {
|
|
var g = void 0;
|
|
g = m ? n.generateModuleSection(h(h({
|
|
type: "CLICK",
|
|
timestamp: (new Date).valueOf()
|
|
}, f), {
|
|
clientX: r[0].touchEnd.clientX,
|
|
clientY: r[0].touchEnd.clientY
|
|
}), "19") : n.generateModuleSection(h(h({
|
|
type: "TOUCH",
|
|
timestamp: (new Date).valueOf()
|
|
}, f), {
|
|
touchesInfo: r
|
|
}), "18"),
|
|
n.send(g)
|
|
}
|
|
}
|
|
,
|
|
n.urlChange = function() {
|
|
setTimeout((function() {
|
|
if (n.weblog && x({
|
|
url: location.href
|
|
}, n.weblog.logConfig.urlMap).page !== n.weblog.currentUrlPackage.page) {
|
|
var t = (new Date).valueOf()
|
|
, e = n.generateModuleSection({
|
|
type: "PAGE_LEAVE",
|
|
timestamp: t,
|
|
stay: t - n.beginTime
|
|
}, "23");
|
|
if (n.send(e),
|
|
q())
|
|
n.destroy();
|
|
else {
|
|
n.beginTime = t;
|
|
var r = n.generateModuleSection({
|
|
type: "PAGE_ENTER",
|
|
timestamp: t,
|
|
initTime: n.beginTime
|
|
}, "21");
|
|
n.send(r)
|
|
}
|
|
}
|
|
}
|
|
))
|
|
}
|
|
,
|
|
n.dataFormat = function(t) {
|
|
var e = t
|
|
, n = e.target
|
|
, r = e.clientX
|
|
, o = e.clientY;
|
|
if (n) {
|
|
var i = n.tagName;
|
|
if (-1 === ["html", "body"].indexOf(i.toLowerCase())) {
|
|
for (var a = L(n), s = n.innerText, c = n.nodeName, u = n.attributes, l = {}, d = 0; d < u.length; d++) {
|
|
var p = u[d]
|
|
, h = p.name
|
|
, m = p.value;
|
|
h.indexOf("data-"),
|
|
l[h] = m
|
|
}
|
|
return {
|
|
xpath: a,
|
|
innerText: s,
|
|
nodeName: c,
|
|
attributesSerialize: l,
|
|
clientX: r,
|
|
clientY: o,
|
|
customData: null
|
|
}
|
|
}
|
|
}
|
|
}
|
|
,
|
|
n.generateModuleSection = function(t, e) {
|
|
n.ts.gs = (new Date).getTime();
|
|
var r = n.weblog
|
|
, o = r.referUrlPackage
|
|
, i = r.Utils.cookie
|
|
, a = r.commonPackage
|
|
, s = a.network_package
|
|
, c = a.device_package
|
|
, u = a.h5_extra_attr
|
|
, l = a.app_package
|
|
, d = a.identity_package
|
|
, p = r.sessionId
|
|
, h = "";
|
|
n.estimate && void 0 !== n.estimate.usage && void 0 !== n.estimate.quota && (h = (n.estimate.usage / n.estimate.quota).toFixed(2));
|
|
var m = et()
|
|
, f = nt()
|
|
, g = function(t) {
|
|
try {
|
|
var e = t.createElement("canvas").getContext("webgl");
|
|
if (null != e) {
|
|
var n = e.getExtension("WEBGL_debug_renderer_info");
|
|
if (n) {
|
|
var r = e.getParameter(n.UNMASKED_VENDOR_WEBGL)
|
|
, o = e.getParameter(n.UNMASKED_RENDERER_WEBGL)
|
|
, i = {};
|
|
i[61] = r,
|
|
i[62] = o;
|
|
var a = e.getParameter(e.VENDOR)
|
|
, s = e.getParameter(e.VERSION);
|
|
i[64] = a,
|
|
i[65] = s;
|
|
var c = e.getParameter(e.SHADING_LANGUAGE_VERSION)
|
|
, u = e.getParameter(e.STENCIL_BITS);
|
|
i[66] = c,
|
|
i[67] = u;
|
|
var l = e.getContextAttributes();
|
|
if (null != l) {
|
|
var d = l.antialias ? "1" : "0";
|
|
i[63] = d
|
|
}
|
|
return i
|
|
}
|
|
}
|
|
} catch (t) {}
|
|
return {}
|
|
}(document)
|
|
, y = "";
|
|
try {
|
|
y = navigator.webdriver.toString()
|
|
} catch (t) {}
|
|
var v = !1;
|
|
try {
|
|
v = navigator.webdriver
|
|
} catch (t) {}
|
|
var b = void 0;
|
|
try {
|
|
b = navigator.webdriver
|
|
} catch (t) {}
|
|
n.ts.ge = (new Date).getTime();
|
|
var S, w = lt.toString(), L = et.toString(), k = nt.toString(), x = it.toString(), N = ut.toString(), _ = st.toString(), P = ct.toString(), G = eval.toString(), Z = Object.getOwnPropertyNames.toString(), E = Object.keys.toString(), C = document.cookie.toString(), I = {
|
|
1: o || "",
|
|
2: location.href,
|
|
3: s && s.ip,
|
|
4: u && u.domain,
|
|
5: p,
|
|
6: document && document.title || "",
|
|
7: i.parseCookieString(document && document.cookie || "", !0),
|
|
8: T(),
|
|
9: document && document.body && document.body.clientHeight || "",
|
|
10: document && document.body && document.body.clientWidth || "",
|
|
11: c && c.ua,
|
|
12: c && c.os_version,
|
|
13: l && l.language,
|
|
14: c && c.model,
|
|
16: d && d.user_id,
|
|
17: d && d.device_id,
|
|
24: n.options.taskType,
|
|
25: n.options.subTaskType,
|
|
26: "0",
|
|
28: (S = d.device_id + (o || "") + T() + c.ua + location.href,
|
|
V(S).toString()),
|
|
29: new URL(n.reportUrl).pathname,
|
|
30: n.options.host || "ks",
|
|
31: n.battery && n.battery.level,
|
|
32: h,
|
|
33: navigator.appCodeName,
|
|
34: navigator.appName,
|
|
35: navigator.appVersion,
|
|
36: navigator.platform,
|
|
37: JSON.stringify(navigator.languages),
|
|
39: navigator.oscpu,
|
|
40: navigator.buildID,
|
|
41: navigator.productSub,
|
|
42: navigator.vendor,
|
|
43: navigator.vendorSub,
|
|
44: navigator.hardwareConcurrency,
|
|
90: n.options.reserved ? n.options.reserved : "",
|
|
50: navigator.maxTouchPoints,
|
|
51: navigator.doNotTrack ? navigator.doNotTrack : "",
|
|
52: navigator.cookieEnabled ? 1 : 0,
|
|
53: navigator.product,
|
|
54: navigator.onLine,
|
|
55: v ? 1 : 0,
|
|
56: navigator.userAgent,
|
|
57: navigator.language ? navigator.language : "",
|
|
58: $(navigator),
|
|
59: tt(navigator),
|
|
61: g[61] ? g[61] : "",
|
|
62: g[62] ? g[62] : "",
|
|
63: g[63] ? g[63] : "",
|
|
64: g[64] ? g[64] : "",
|
|
65: g[65] ? g[65] : "",
|
|
66: g[66] ? g[66] : "",
|
|
67: g[67],
|
|
68: m ? m.hash : "",
|
|
69: f ? f.hash : "",
|
|
70: n.auH,
|
|
75: b ? "0" : "1",
|
|
76: y,
|
|
77: ut(),
|
|
78: {
|
|
w: at(window),
|
|
n: at(window.navigator)
|
|
},
|
|
79: lt(),
|
|
80: window.outerWidth - window.innerWidth + "",
|
|
81: window.outerHeight - window.innerHeight + "",
|
|
82: {
|
|
pc: w.length,
|
|
ph: J(w),
|
|
wf: L.length,
|
|
wh: J(L),
|
|
cf: k.length,
|
|
ch: J(k),
|
|
mf: x.length,
|
|
mh: J(x),
|
|
ff: N.length,
|
|
fh: J(N),
|
|
af: _.length,
|
|
ah: J(_),
|
|
gr: P.length,
|
|
gh: J(P),
|
|
el: G.length,
|
|
eh: J(G),
|
|
ow: Z.length,
|
|
oh: J(Z),
|
|
ky: E.length,
|
|
kh: J(E),
|
|
ci: C.length,
|
|
ih: J(C)
|
|
},
|
|
85: n.rtcH,
|
|
86: n.rtcS,
|
|
87: {
|
|
w: window.screen.width,
|
|
h: window.screen.height,
|
|
c: window.screen.colorDepth,
|
|
p: window.screen.pixelDepth
|
|
},
|
|
88: it().h,
|
|
89: n.ts
|
|
};
|
|
return e && (I[e] = t),
|
|
I
|
|
}
|
|
,
|
|
n.beforeunload = function() {
|
|
if (n.weblog) {
|
|
var t = (new Date).valueOf()
|
|
, e = n.generateModuleSection({
|
|
type: "PAGE_LEAVE",
|
|
timestamp: t,
|
|
stay: t - n.beginTime
|
|
}, "23");
|
|
n.send(e),
|
|
n.flush()
|
|
}
|
|
}
|
|
,
|
|
n.destroy = function() {
|
|
S(window, "onpagehide"in window ? "pagehide" : "beforeunload", n.beforeunload),
|
|
S(window, ft, n.urlChange),
|
|
Q() ? (window.removeEventListener("touchstart", n.touchStartEvent, !0),
|
|
window.removeEventListener("touchmove", n.touchMoveEvent, !0),
|
|
window.removeEventListener("touchend", n.touchEndEvent, !0)) : (window.removeEventListener("mousedown", n.mouseDownEvent, !0),
|
|
window.removeEventListener("mousemove", n.mouseMoveEvent, !0),
|
|
window.removeEventListener("mouseup", n.mouseUpEvent, !0)),
|
|
n.batchWaitTimer && clearTimeout(n.batchWaitTimer),
|
|
window.removeEventListener("keydown", n.keyDownHandler),
|
|
window.removeEventListener("gamepadconnected", n.gamepadConnectHandler)
|
|
}
|
|
,
|
|
n.options = e || {},
|
|
n.ts.cs = (new Date).getTime(),
|
|
st().then((function(t) {
|
|
var e = t.hash;
|
|
n.auH = e,
|
|
n.ts.cae = (new Date).getTime()
|
|
}
|
|
)).catch((function(t) {}
|
|
));
|
|
try {
|
|
ct((function(t) {
|
|
n.rtcH = t.can,
|
|
n.rtcS = t.sdp,
|
|
n.ts.cre = (new Date).getTime()
|
|
}
|
|
))
|
|
} catch (t) {}
|
|
return n.ts.ce = (new Date).getTime(),
|
|
n
|
|
}
|
|
return function(t, e) {
|
|
function n() {
|
|
this.constructor = t
|
|
}
|
|
p(t, e),
|
|
t.prototype = null === e ? Object.create(e) : (n.prototype = e.prototype,
|
|
new n)
|
|
}(e, t),
|
|
e.prototype.apply = function(t) {
|
|
var e = this;
|
|
if (this.ts.as = (new Date).getTime(),
|
|
this.verifyParams() && !q() && t && t.logger) {
|
|
this.weblog = t,
|
|
this.options.switch = !0,
|
|
this.options.wait = 0,
|
|
this.options.maxBatchLength = 10,
|
|
this.options.enableNative = !1;
|
|
try {
|
|
this.createEncryptDecryptWorker()
|
|
} catch (t) {}
|
|
var n = function() {
|
|
Q() ? (window.addEventListener("touchstart", e.touchStartEvent, !0),
|
|
window.addEventListener("touchmove", e.touchMoveEvent, !0),
|
|
window.addEventListener("touchend", e.touchEndEvent, !0)) : (window.addEventListener("mousedown", e.mouseDownEvent, !0),
|
|
window.addEventListener("mousemove", e.mouseMoveEvent, !0),
|
|
window.addEventListener("mouseup", e.mouseUpEvent, !0)),
|
|
ft = t.Utils.ua.supportsPushState() ? "popstate" : "hashchange",
|
|
b(window, ft, e.urlChange),
|
|
b(window, "onpagehide"in window ? "pagehide" : "beforeunload", e.beforeunload),
|
|
window.addEventListener("keydown", e.keyDownHandler, !0),
|
|
window.addEventListener("gamepadconnected", e.gamepadConnectHandler, !0)
|
|
}
|
|
, r = function() {
|
|
return f(e, void 0, void 0, (function() {
|
|
var t, e, r, o, i, a, s, c = this;
|
|
return g(this, (function(u) {
|
|
switch (u.label) {
|
|
case 0:
|
|
return u.trys.push([0, 3, , 4]),
|
|
navigator.getBattery ? [4, navigator.getBattery()] : [3, 2];
|
|
case 1:
|
|
(t = u.sent()) && (this.battery = t,
|
|
this.battery.addEventListener("chargingchange", (function() {
|
|
var t = c.generateModuleSection({
|
|
type: "CHARGINGCHANGGE",
|
|
level: c.battery.level,
|
|
timestamp: (new Date).valueOf()
|
|
}, 45);
|
|
c.send(t)
|
|
}
|
|
))),
|
|
u.label = 2;
|
|
case 2:
|
|
return [3, 4];
|
|
case 3:
|
|
return v(u.sent()),
|
|
[3, 4];
|
|
case 4:
|
|
return u.trys.push([4, 7, , 8]),
|
|
navigator.storage ? [4, navigator.storage.estimate()] : [3, 6];
|
|
case 5:
|
|
(e = u.sent()) && (this.estimate = e),
|
|
u.label = 6;
|
|
case 6:
|
|
return [3, 8];
|
|
case 7:
|
|
return v(u.sent()),
|
|
[3, 8];
|
|
case 8:
|
|
return this.options.switch ? (r = this.weblog.yoda,
|
|
this.options.enableNative && r && r.isInYoda ? [4, r.ready()] : [3, 11]) : [3, 12];
|
|
case 9:
|
|
return u.sent(),
|
|
r.register({
|
|
namespace: "weapon",
|
|
name: "recordJSScene"
|
|
}),
|
|
[4, r.tool.canIUse({
|
|
namespace: "weapon",
|
|
name: "recordJSScene"
|
|
})];
|
|
case 10:
|
|
o = u.sent(),
|
|
i = o.result,
|
|
a = o.canUse,
|
|
1 === i && a && r.weapon.recordJSScene({
|
|
bussType: this.options.bussType,
|
|
jsVersion: G,
|
|
taskType: this.options.taskType,
|
|
subTaskType: "1111"
|
|
}, (function() {}
|
|
)),
|
|
u.label = 11;
|
|
case 11:
|
|
this.reportUrl = function(t) {
|
|
var e = t.env || "production"
|
|
, n = E[e];
|
|
"production" === e && t.host && E[t.host] && (n = E[t.host]);
|
|
var r = Z[e]
|
|
, o = r.appKey
|
|
, i = r.secretKey
|
|
, a = ((new Date).valueOf() / 1e3).toFixed()
|
|
, s = J(o + i + a);
|
|
return "" + n + (t.reportUrls ? t.reportUrls[Math.floor(Math.random() * t.reportUrls.length)] : C) + "?appkey=" + o + "&seckey=" + i + "&bussType=" + t.bussType + "×tamp=" + a + "&sign=" + s
|
|
}(this.options),
|
|
s = this.generateModuleSection({
|
|
type: "PAGE_ENTER",
|
|
timestamp: (new Date).valueOf(),
|
|
initTime: this.beginTime
|
|
}, "21"),
|
|
this.send(s),
|
|
n(),
|
|
u.label = 12;
|
|
case 12:
|
|
return [2]
|
|
}
|
|
}
|
|
))
|
|
}
|
|
))
|
|
};
|
|
try {
|
|
this.options.switchAsync ? (r(),
|
|
this.getConfig((function() {}
|
|
))) : this.getConfig(r)
|
|
} catch (t) {}
|
|
this.ts.ae = (new Date).getTime()
|
|
}
|
|
}
|
|
,
|
|
e.prototype.verifyParams = function() {
|
|
return this.options.bussType && "string" == typeof this.options.bussType ? this.options.taskType && "string" == typeof this.options.taskType ? !(!this.options.subTaskType || "string" != typeof this.options.subTaskType) || (v("\u3010\u98ce\u63a7sdk\u3011\u8bf7\u8bbe\u7f6e\u6709\u6548\u7684subTaskType\u503c!"),
|
|
!1) : (v("\u3010\u98ce\u63a7sdk\u3011\u8bf7\u8bbe\u7f6e\u6709\u6548\u7684taskType\u503c!"),
|
|
!1) : (v("\u3010\u98ce\u63a7sdk\u3011\u8bf7\u8bbe\u7f6e\u6709\u6548\u7684bussType\u503c!"),
|
|
!1)
|
|
}
|
|
,
|
|
e.prototype.dataXhr = function(t, e) {
|
|
var n = this
|
|
, r = t.url
|
|
, o = m(t, ["url"])
|
|
, i = new XMLHttpRequest;
|
|
i.onreadystatechange = function() {
|
|
if (4 === i.readyState)
|
|
if (i.status >= 200 && i.status < 300 || 304 == i.status) {
|
|
if (i.responseText) {
|
|
var t = JSON.parse(i.responseText);
|
|
1 === t.result ? (n.decryptFailedFunc = function(t, e) {
|
|
return function() {
|
|
var r, o = JSON.parse(function(t) {
|
|
return U(z.parse(t))
|
|
}(t));
|
|
n.options.switch = o.switch,
|
|
n.options.maxBatchLength = o.maxBatchLength,
|
|
n.options.wait = o.wait,
|
|
n.options.reportUrls = null === (r = null == o ? void 0 : o.reportConfig) || void 0 === r ? void 0 : r.reportUrls,
|
|
n.options.enableNative = o.enableNative,
|
|
e()
|
|
}
|
|
}(t.antispamPluginRsp, e),
|
|
n.decryptSuccessFunc = function(t) {
|
|
return function(e) {
|
|
var r;
|
|
n.options.switch = e.switch,
|
|
n.options.maxBatchLength = e.maxBatchLength,
|
|
n.options.wait = e.wait,
|
|
n.options.reportUrls = null === (r = e.reportConfig) || void 0 === r ? void 0 : r.reportUrls,
|
|
n.options.enableNative = e.enableNative,
|
|
t()
|
|
}
|
|
}(e),
|
|
n.encryptDecryptWorker.postMessage({
|
|
type: "decrypt",
|
|
info: t.antispamPluginRsp
|
|
})) : e()
|
|
}
|
|
} else
|
|
e()
|
|
}
|
|
,
|
|
i.open("POST", r),
|
|
i.send(JSON.stringify(o))
|
|
}
|
|
,
|
|
e.prototype.send = function(t, e) {
|
|
var n, r = this;
|
|
void 0 === e && (e = !1),
|
|
this.options.switch && (e ? this.sendLogs([t]) : (this.batchWaitTimer && clearTimeout(this.batchWaitTimer),
|
|
this.logQueue.push(t),
|
|
this.logQueue.length >= ((null === (n = this.options) || void 0 === n ? void 0 : n.maxBatchLength) || 0) ? this.flush() : this.batchWaitTimer = setTimeout((function() {
|
|
r.flush()
|
|
}
|
|
), this.options.wait)))
|
|
}
|
|
,
|
|
e.prototype.sendLogs = function(t) {
|
|
t && t.length && this.buildLogPackage(this.logQueue)
|
|
}
|
|
,
|
|
e.prototype.createEncryptDecryptWorker = function() {
|
|
var t = this;
|
|
this.encryptDecryptWorker = mt();
|
|
var e = 0;
|
|
this.encryptDecryptWorker.onerror = function(n) {
|
|
v("worker onerror", n.message),
|
|
1 === ++e ? t.encryptFailedFunc() : 2 === e && (t.decryptFailedFunc(),
|
|
t.encryptDecryptWorker.terminate())
|
|
}
|
|
,
|
|
this.encryptDecryptWorker.onmessageerror = function(n) {
|
|
v("worker onmessageerror", n.message),
|
|
1 === ++e ? t.encryptFailedFunc() : 2 === e && (t.decryptFailedFunc(),
|
|
t.encryptDecryptWorker.terminate())
|
|
}
|
|
,
|
|
this.encryptDecryptWorker.onmessage = function(n) {
|
|
1 === ++e ? t.encryptSuccessFunc(n.data) : 2 === e && (t.decryptSuccessFunc(n.data),
|
|
t.encryptDecryptWorker.terminate())
|
|
}
|
|
}
|
|
,
|
|
e.prototype.buildLogPackage = function(t) {
|
|
var e = this;
|
|
this.ts.ls = (new Date).getTime();
|
|
var n, r = this.weblog.Utils.cookie, o = {}, i = {};
|
|
if (i[1] = this.weblog.commonPackage.identity_package.device_id,
|
|
i[2] = r.getCookie("kpn"),
|
|
i[3] = "10001001",
|
|
i[4] = this.weblog.commonPackage.app_package.version_name,
|
|
i[5] = r.getCookie("kpn"),
|
|
i[6] = this.options.bussType,
|
|
i[7] = this.weblog.commonPackage.app_package.platform,
|
|
i[8] = this.weblog.commonPackage.app_package.version_code,
|
|
i[9] = (new Date).valueOf(),
|
|
i[10] = "",
|
|
i[11] = this.options.primaryKey,
|
|
i[12] = (n = this.options.env,
|
|
Z[n = n || "production"]).appKey,
|
|
i[13] = this.options.pluginPackageName || "",
|
|
i[14] = G,
|
|
i.module_section = t,
|
|
o.flag = 2,
|
|
this.firstSend) {
|
|
this.firstSend = !1;
|
|
var a = ht();
|
|
a.onerror = function(t) {
|
|
v("worker onerror", t.message),
|
|
o.data = F(JSON.stringify(i)),
|
|
e.weblog.Utils.io.sendData({
|
|
data: o,
|
|
url: e.reportUrl,
|
|
format: "string"
|
|
})
|
|
}
|
|
,
|
|
a.onmessageerror = function(t) {
|
|
v("worker onmessageerror", t.message),
|
|
o.data = F(JSON.stringify(i)),
|
|
e.weblog.Utils.io.sendData({
|
|
data: o,
|
|
url: e.reportUrl,
|
|
format: "string"
|
|
})
|
|
}
|
|
,
|
|
a.onmessage = function(t) {
|
|
o.data = t.data,
|
|
e.weblog.Utils.io.sendData({
|
|
data: o,
|
|
url: e.reportUrl,
|
|
format: "string"
|
|
})
|
|
}
|
|
,
|
|
a.postMessage(JSON.stringify(i))
|
|
} else
|
|
o.data = F(JSON.stringify(i)),
|
|
this.weblog.Utils.io.sendData({
|
|
data: o,
|
|
url: this.reportUrl,
|
|
format: "string"
|
|
});
|
|
this.ts.le = (new Date).getTime()
|
|
}
|
|
,
|
|
e.key = "risk-mgt",
|
|
e
|
|
}(P);
|
|
return function(t, e, n) {
|
|
if ("undefined" != typeof window && void 0 !== window._GLOBAL_KS_WEBLOGGER_ && "function" == typeof t) {
|
|
var r = window._GLOBAL_KS_WEBLOGGER_
|
|
, o = r.weblog
|
|
, i = r.config
|
|
, a = e && i.plugins[e] ? i.plugins[e].options : void 0;
|
|
if ("radar" === e) {
|
|
var s = a || o.logConfig[e];
|
|
if (!s)
|
|
return;
|
|
if (s.sampling = s.sampling || 1,
|
|
!t.samplingControl(s))
|
|
return o.plug(n)
|
|
}
|
|
o.addPluginInstance(new t(a))
|
|
}
|
|
}(gt, "riskMgt"),
|
|
gt
|
|
}
|
|
))
|
|
}
|
|
).call(this, n("c8ba"))
|
|
},
|
|
"febe": function(t, e, n) {
|
|
!function(e, n) {
|
|
t.exports = n()
|
|
}(0, (function() {
|
|
"use strict";
|
|
var t = function(e, n) {
|
|
return (t = Object.setPrototypeOf || {
|
|
__proto__: []
|
|
}instanceof Array && function(t, e) {
|
|
t.__proto__ = e
|
|
}
|
|
|| function(t, e) {
|
|
for (var n in e)
|
|
e.hasOwnProperty(n) && (t[n] = e[n])
|
|
}
|
|
)(e, n)
|
|
};
|
|
function e(e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
t(e, n),
|
|
e.prototype = null === n ? Object.create(n) : (r.prototype = n.prototype,
|
|
new r)
|
|
}
|
|
var n = function() {
|
|
return (n = Object.assign || function(t) {
|
|
for (var e, n = 1, r = arguments.length; n < r; n++)
|
|
for (var o in e = arguments[n])
|
|
Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o]);
|
|
return t
|
|
}
|
|
).apply(this, arguments)
|
|
};
|
|
function r(t, e) {
|
|
var n = {};
|
|
for (var r in t)
|
|
Object.prototype.hasOwnProperty.call(t, r) && e.indexOf(r) < 0 && (n[r] = t[r]);
|
|
if (null != t && "function" == typeof Object.getOwnPropertySymbols) {
|
|
var o = 0;
|
|
for (r = Object.getOwnPropertySymbols(t); o < r.length; o++)
|
|
e.indexOf(r[o]) < 0 && Object.prototype.propertyIsEnumerable.call(t, r[o]) && (n[r[o]] = t[r[o]])
|
|
}
|
|
return n
|
|
}
|
|
function o(t, e, n, r) {
|
|
return new (n || (n = Promise))((function(o, i) {
|
|
function a(t) {
|
|
try {
|
|
c(r.next(t))
|
|
} catch (t) {
|
|
i(t)
|
|
}
|
|
}
|
|
function s(t) {
|
|
try {
|
|
c(r.throw(t))
|
|
} catch (t) {
|
|
i(t)
|
|
}
|
|
}
|
|
function c(t) {
|
|
var e;
|
|
t.done ? o(t.value) : (e = t.value,
|
|
e instanceof n ? e : new n((function(t) {
|
|
t(e)
|
|
}
|
|
))).then(a, s)
|
|
}
|
|
c((r = r.apply(t, e || [])).next())
|
|
}
|
|
))
|
|
}
|
|
function i(t, e) {
|
|
var n, r, o, i, a = {
|
|
label: 0,
|
|
sent: function() {
|
|
if (1 & o[0])
|
|
throw o[1];
|
|
return o[1]
|
|
},
|
|
trys: [],
|
|
ops: []
|
|
};
|
|
return i = {
|
|
next: s(0),
|
|
throw: s(1),
|
|
return: s(2)
|
|
},
|
|
"function" == typeof Symbol && (i[Symbol.iterator] = function() {
|
|
return this
|
|
}
|
|
),
|
|
i;
|
|
function s(i) {
|
|
return function(s) {
|
|
return function(i) {
|
|
if (n)
|
|
throw new TypeError("Generator is already executing.");
|
|
for (; a; )
|
|
try {
|
|
if (n = 1,
|
|
r && (o = 2 & i[0] ? r.return : i[0] ? r.throw || ((o = r.return) && o.call(r),
|
|
0) : r.next) && !(o = o.call(r, i[1])).done)
|
|
return o;
|
|
switch (r = 0,
|
|
o && (i = [2 & i[0], o.value]),
|
|
i[0]) {
|
|
case 0:
|
|
case 1:
|
|
o = i;
|
|
break;
|
|
case 4:
|
|
return a.label++,
|
|
{
|
|
value: i[1],
|
|
done: !1
|
|
};
|
|
case 5:
|
|
a.label++,
|
|
r = i[1],
|
|
i = [0];
|
|
continue;
|
|
case 7:
|
|
i = a.ops.pop(),
|
|
a.trys.pop();
|
|
continue;
|
|
default:
|
|
if (o = a.trys,
|
|
!((o = o.length > 0 && o[o.length - 1]) || 6 !== i[0] && 2 !== i[0])) {
|
|
a = 0;
|
|
continue
|
|
}
|
|
if (3 === i[0] && (!o || i[1] > o[0] && i[1] < o[3])) {
|
|
a.label = i[1];
|
|
break
|
|
}
|
|
if (6 === i[0] && a.label < o[1]) {
|
|
a.label = o[1],
|
|
o = i;
|
|
break
|
|
}
|
|
if (o && a.label < o[2]) {
|
|
a.label = o[2],
|
|
a.ops.push(i);
|
|
break
|
|
}
|
|
o[2] && a.ops.pop(),
|
|
a.trys.pop();
|
|
continue
|
|
}
|
|
i = e.call(t, a)
|
|
} catch (t) {
|
|
i = [6, t],
|
|
r = 0
|
|
} finally {
|
|
n = o = 0
|
|
}
|
|
if (5 & i[0])
|
|
throw i[1];
|
|
return {
|
|
value: i[0] ? i[1] : void 0,
|
|
done: !0
|
|
}
|
|
}([i, s])
|
|
}
|
|
}
|
|
}
|
|
function a() {
|
|
for (var t = 0, e = 0, n = arguments.length; e < n; e++)
|
|
t += arguments[e].length;
|
|
var r = Array(t)
|
|
, o = 0;
|
|
for (e = 0; e < n; e++)
|
|
for (var i = arguments[e], a = 0, s = i.length; a < s; a++,
|
|
o++)
|
|
r[o] = i[a];
|
|
return r
|
|
}
|
|
function s() {
|
|
for (var t = [], e = 0; e < arguments.length; e++)
|
|
t[e] = arguments[e];
|
|
try {
|
|
var n = null === console || void 0 === console ? void 0 : console.warn;
|
|
return n && n.call.apply(n, a([console], t))
|
|
} catch (t) {
|
|
return
|
|
}
|
|
}
|
|
function c() {
|
|
for (var t = [], e = 0; e < arguments.length; e++)
|
|
t[e] = arguments[e];
|
|
try {
|
|
var n = null === console || void 0 === console ? void 0 : console.error;
|
|
return n && n.call.apply(n, a([console], t))
|
|
} catch (t) {
|
|
return
|
|
}
|
|
}
|
|
function u(t, e, n, r) {
|
|
return "attachEvent"in t ? t.attachEvent("on" + e, n) : t.addEventListener(e, n, r)
|
|
}
|
|
function l(t, e, n, r) {
|
|
return "attachEvent"in t ? t.detachEvent("on" + e, n) : t.removeEventListener(e, n, r)
|
|
}
|
|
function d(t) {
|
|
for (var e = {}, n = 0, r = t.split("&"); n < r.length; n++) {
|
|
var o = r[n].split("=")
|
|
, i = o[0]
|
|
, a = o[1];
|
|
i in e ? e[i]instanceof Array ? e[i].push(a) : e[i] = [e[i], a] : e[i] = a
|
|
}
|
|
return e
|
|
}
|
|
function p(t) {
|
|
var e = "";
|
|
if ("string" == typeof t)
|
|
e = t;
|
|
else
|
|
try {
|
|
e = JSON.stringify(t)
|
|
} catch (n) {
|
|
e = String(t)
|
|
}
|
|
for (var n = 0, r = 0; r < e.length; r++) {
|
|
var o = e.charCodeAt(r);
|
|
n += o < 128 ? 1 : o < 2048 ? 2 : o < 65536 ? 3 : o < 1 << 21 ? 4 : o < 1 << 26 ? 5 : o < 1 << 31 ? 6 : Number.NaN
|
|
}
|
|
return n
|
|
}
|
|
var h, m, f, g = function() {
|
|
function t() {}
|
|
return t.prototype.apply = function(t) {
|
|
this.weblog = t
|
|
}
|
|
,
|
|
t
|
|
}(), y = function() {
|
|
var t = "undefined" != typeof window ? window.performance : null;
|
|
if (t && t.timing) {
|
|
if ("function" == typeof t.timing.toJSON) {
|
|
var e = t.timing.toJSON();
|
|
return e && !e.redirectStart && (e.redirectStart = e.navigationStart),
|
|
e
|
|
}
|
|
return t.timing
|
|
}
|
|
return null
|
|
}, v = "radar_log";
|
|
!function(t) {
|
|
t.LOAD = "load",
|
|
t.RES = "resource",
|
|
t.API = "api",
|
|
t.ERROR = "error",
|
|
t.SDK_ERROR = "sdk_error",
|
|
t.CUSTOM = "custom",
|
|
t.BATCH = "batch",
|
|
t.EVENT = "event"
|
|
}(h || (h = {})),
|
|
function(t) {
|
|
t.LOAD = "load_statistics",
|
|
t.RES = "resource_statistics",
|
|
t.API = "api_statistics",
|
|
t.ERROR = "error_statistics",
|
|
t.SDK_ERROR = "sdk_error",
|
|
t.CUSTOM = "custom_statistics"
|
|
}(m || (m = {})),
|
|
function(t) {
|
|
t.SCRIPT = "script",
|
|
t.RES = "res",
|
|
t.API = "api",
|
|
t.VIDEO = "video"
|
|
}(f || (f = {}));
|
|
var b, S, w = {
|
|
redirect: {
|
|
end: "fetchStart",
|
|
start: "navigationStart"
|
|
},
|
|
dns: {
|
|
end: "domainLookupEnd",
|
|
start: "domainLookupStart"
|
|
},
|
|
dns_start: {
|
|
end: "domainLookupEnd",
|
|
start: "navigationStart"
|
|
},
|
|
tcp: {
|
|
end: "connectEnd",
|
|
start: "connectStart"
|
|
},
|
|
tcp_start: {
|
|
end: "connectEnd",
|
|
start: "navigationStart"
|
|
},
|
|
redirect_count: {
|
|
custom: function(t, e) {
|
|
return e.redirectCount
|
|
}
|
|
},
|
|
ssl: {
|
|
custom: function(t, e) {
|
|
return 0 === e.secureConnectionStart ? 0 : e.connectEnd - e.secureConnectionStart
|
|
}
|
|
},
|
|
ssl_start: {
|
|
custom: function(t, e) {
|
|
return 0 === e.secureConnectionStart ? 0 : e.secureConnectionStart - e.redirectStart
|
|
}
|
|
},
|
|
ttfb: {
|
|
end: "responseStart",
|
|
start: "requestStart"
|
|
},
|
|
trans: {
|
|
end: "responseEnd",
|
|
start: "responseStart"
|
|
},
|
|
dom_parse: {
|
|
end: "domInteractive",
|
|
start: "responseEnd"
|
|
},
|
|
dom_parse_start: {
|
|
end: "domInteractive",
|
|
start: "navigationStart"
|
|
},
|
|
blank: {
|
|
end: "domLoading",
|
|
start: "navigationStart"
|
|
},
|
|
fb: {
|
|
end: "responseStart",
|
|
start: "navigationStart"
|
|
},
|
|
dom_ready: {
|
|
end: "domContentLoadedEventEnd",
|
|
start: "navigationStart"
|
|
},
|
|
total: {
|
|
end: "loadEventStart",
|
|
start: "navigationStart"
|
|
},
|
|
resource: {
|
|
end: "loadEventStart",
|
|
start: "domContentLoadedEventEnd"
|
|
},
|
|
fp: {
|
|
custom: function() {
|
|
if ("function" != typeof performance.getEntries)
|
|
return null;
|
|
var t = performance.getEntries().filter((function(t) {
|
|
return "first-paint" === t.name
|
|
}
|
|
))[0];
|
|
return t ? Math.ceil(t.startTime + t.duration) : null
|
|
}
|
|
},
|
|
js_cost: {
|
|
custom: function() {
|
|
if ("function" != typeof performance.getEntries)
|
|
return null;
|
|
var t = y()
|
|
, e = performance.getEntries()
|
|
, n = performance.getEntries().filter((function(t) {
|
|
return "navigation" === t.initiatorType
|
|
}
|
|
))[0]
|
|
, r = e.filter((function(t) {
|
|
return "script" === t.initiatorType
|
|
}
|
|
))[0]
|
|
, o = n ? n.domComplete : t.domComplete - t.navigationStart;
|
|
return r && o ? o - r.fetchStart : null
|
|
}
|
|
},
|
|
tti: {
|
|
end: "domInteractive",
|
|
start: "navigationStart"
|
|
},
|
|
protocol: {
|
|
custom: function(t, e) {
|
|
return e.nextHopProtocol
|
|
}
|
|
},
|
|
dom_num: {
|
|
custom: function() {
|
|
return "undefined" != typeof document ? document.all.length : null
|
|
}
|
|
}
|
|
}, L = {
|
|
fetch_start: {
|
|
custom: function(t, e) {
|
|
return Math.round(e.fetchStart)
|
|
}
|
|
},
|
|
dns: {
|
|
end: "domainLookupEnd",
|
|
start: "domainLookupStart",
|
|
cachedSkip: !0
|
|
},
|
|
tcp: {
|
|
end: "connectEnd",
|
|
start: "connectStart",
|
|
cachedSkip: !0
|
|
},
|
|
ssl: {
|
|
cachedSkip: !0,
|
|
custom: function(t, e) {
|
|
return 0 === e.secureConnectionStart ? 0 : e.connectEnd - e.secureConnectionStart
|
|
}
|
|
},
|
|
ttfb: {
|
|
end: "responseStart",
|
|
start: "requestStart",
|
|
cachedSkip: !0
|
|
},
|
|
trans: {
|
|
end: "responseEnd",
|
|
start: "responseStart",
|
|
cachedSkip: !0
|
|
},
|
|
fb: {
|
|
end: "responseStart",
|
|
start: "fetchStart",
|
|
cachedSkip: !0
|
|
},
|
|
total: {
|
|
end: "responseEnd",
|
|
start: "fetchStart"
|
|
},
|
|
duration: {
|
|
end: "responseEnd",
|
|
start: "fetchStart"
|
|
},
|
|
size: {
|
|
cachedSkip: !0,
|
|
custom: function(t, e) {
|
|
return e.encodedBodySize
|
|
},
|
|
noThrottle: !0
|
|
},
|
|
protocol: {
|
|
custom: function(t, e) {
|
|
return e.nextHopProtocol
|
|
}
|
|
},
|
|
file: {
|
|
custom: function(t, e) {
|
|
return e.name
|
|
},
|
|
noThrottle: !0
|
|
},
|
|
res_type: {
|
|
custom: function(t, e) {
|
|
return e.initiatorType
|
|
}
|
|
},
|
|
cached: {
|
|
custom: function(t, e) {
|
|
return 0 === e.transferSize || null == e.transferSize && 0 === e.domainLookupStart
|
|
},
|
|
noThrottle: !0
|
|
}
|
|
}, k = {
|
|
fetch_start: {
|
|
custom: function(t, e) {
|
|
return Math.round(e.fetchStart)
|
|
},
|
|
noThrottle: !0
|
|
},
|
|
dns: {
|
|
end: "domainLookupEnd",
|
|
start: "domainLookupStart",
|
|
cachedSkip: !0
|
|
},
|
|
tcp: {
|
|
end: "connectEnd",
|
|
start: "connectStart",
|
|
cachedSkip: !0
|
|
},
|
|
ssl: {
|
|
cachedSkip: !0,
|
|
custom: function(t, e) {
|
|
return 0 === e.secureConnectionStart ? 0 : e.connectEnd - e.secureConnectionStart
|
|
}
|
|
},
|
|
ttfb: {
|
|
end: "responseStart",
|
|
start: "requestStart",
|
|
cachedSkip: !0
|
|
},
|
|
trans: {
|
|
end: "responseEnd",
|
|
start: "responseStart",
|
|
cachedSkip: !0
|
|
},
|
|
fb: {
|
|
end: "responseStart",
|
|
start: "fetchStart",
|
|
cachedSkip: !0
|
|
},
|
|
total: {
|
|
end: "responseEnd",
|
|
start: "fetchStart"
|
|
},
|
|
duration: {
|
|
end: "responseEnd",
|
|
start: "fetchStart"
|
|
},
|
|
size: {
|
|
cachedSkip: !0,
|
|
custom: function(t, e) {
|
|
return e.encodedBodySize
|
|
},
|
|
noThrottle: !0
|
|
},
|
|
protocol: {
|
|
custom: function(t, e) {
|
|
return e.nextHopProtocol
|
|
}
|
|
},
|
|
file: {
|
|
custom: function(t, e) {
|
|
return e.name
|
|
},
|
|
noThrottle: !0
|
|
},
|
|
res_type: {
|
|
custom: function(t, e) {
|
|
return e.initiatorType
|
|
}
|
|
},
|
|
cached: {
|
|
custom: function(t, e) {
|
|
return 0 === e.transferSize || null == e.transferSize && 0 === e.domainLookupStart
|
|
},
|
|
noThrottle: !0
|
|
}
|
|
}, x = ["//wlog.kuaishou.com/rest/n/log/web/collect", "/rest/wd/common/log/collect/misc2", "/rest/wd/common/log/collect/radar", "/rest/kd/log/collect"], T = {
|
|
to_webview_page_start: {
|
|
end: "pageStart",
|
|
start: "userStart"
|
|
},
|
|
to_webview_page_show: {
|
|
end: "pageShow",
|
|
start: "userStart"
|
|
},
|
|
to_webview_pre_create: {
|
|
end: "preCreate",
|
|
start: "userStart"
|
|
},
|
|
to_webview_created: {
|
|
end: "created",
|
|
start: "userStart"
|
|
},
|
|
to_webview_start_load: {
|
|
end: "startLoad",
|
|
start: "userStart"
|
|
},
|
|
to_webview_did_start_load: {
|
|
end: "didStartLoad",
|
|
start: "userStart"
|
|
},
|
|
to_webview_did_end_load: {
|
|
end: "didEndLoad",
|
|
start: "userStart"
|
|
},
|
|
to_navigation_start: {
|
|
end: "navigationStart",
|
|
start: "userStart"
|
|
},
|
|
to_fetch_start: {
|
|
end: "fetchStart",
|
|
start: "userStart"
|
|
},
|
|
to_connect_start: {
|
|
end: "connectStart",
|
|
start: "userStart"
|
|
},
|
|
to_dom_ready: {
|
|
end: "domContentLoadedEventEnd",
|
|
start: "userStart"
|
|
},
|
|
to_total: {
|
|
end: "loadEventStart",
|
|
start: "userStart"
|
|
},
|
|
to_fmp: {
|
|
end: "radarFmp",
|
|
start: "userStart",
|
|
notCatchIfUndefined: !0
|
|
},
|
|
to_main_data_receive_end: {
|
|
end: "main_data_receive_end",
|
|
start: "userStart",
|
|
notCatchIfUndefined: !0
|
|
}
|
|
}, N = {
|
|
navigation_start_time: "navigationStart",
|
|
fetch_start_time: "fetchStart",
|
|
dns_start_time: "domainLookupStart",
|
|
dns_end_time: "domainLookupEnd",
|
|
connect_start_time: "connectStart",
|
|
ssl_start_time: "secureConnectionStart",
|
|
request_start_time: "requestStart",
|
|
response_start_time: "responseStart",
|
|
response_end_time: "responseEnd",
|
|
dom_interactive_time: "domInteractive",
|
|
dom_loading_time: "domLoading",
|
|
dom_ready_time: "domContentLoadedEventEnd",
|
|
load_event_time: "loadEventStart",
|
|
fmp_time: "radarFmp"
|
|
}, _ = function() {
|
|
return "".concat(Date.now(), "-").concat(Math.floor(8999999999999 * Math.random()) + 1e12)
|
|
}, P = function(t) {
|
|
var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : -1;
|
|
return {
|
|
name: t,
|
|
value: e,
|
|
delta: 0,
|
|
entries: [],
|
|
id: _(),
|
|
isFinal: !1
|
|
}
|
|
}, G = function(t, e) {
|
|
try {
|
|
if (PerformanceObserver.supportedEntryTypes.includes(t)) {
|
|
var n = new PerformanceObserver((function(t) {
|
|
return t.getEntries().map(e)
|
|
}
|
|
));
|
|
return n.observe({
|
|
type: t,
|
|
buffered: !0
|
|
}),
|
|
n
|
|
}
|
|
} catch (t) {}
|
|
}, Z = !1, E = !1, C = function(t) {
|
|
Z = !t.persisted
|
|
}, I = function() {
|
|
addEventListener("pagehide", C),
|
|
addEventListener("beforeunload", (function() {}
|
|
))
|
|
}, K = function(t) {
|
|
var e = arguments.length > 1 && void 0 !== arguments[1] && arguments[1];
|
|
E || (I(),
|
|
E = !0),
|
|
addEventListener("visibilitychange", (function(e) {
|
|
var n = e.timeStamp;
|
|
"hidden" === document.visibilityState && t({
|
|
timeStamp: n,
|
|
isUnloading: Z
|
|
})
|
|
}
|
|
), {
|
|
capture: !0,
|
|
once: e
|
|
})
|
|
}, X = function(t, e, n, r) {
|
|
var o;
|
|
return function() {
|
|
n && e.isFinal && n.disconnect(),
|
|
e.value >= 0 && (r || e.isFinal || "hidden" === document.visibilityState) && (e.delta = e.value - (o || 0),
|
|
(e.delta || e.isFinal || void 0 === o) && (t(e),
|
|
o = e.value))
|
|
}
|
|
}, W = function() {
|
|
return void 0 === b && (b = "hidden" === document.visibilityState ? 0 : 1 / 0,
|
|
K((function(t) {
|
|
var e = t.timeStamp;
|
|
return b = e
|
|
}
|
|
), !0)),
|
|
{
|
|
get timeStamp() {
|
|
return b
|
|
}
|
|
}
|
|
}, M = function() {
|
|
return S || (S = new Promise((function(t) {
|
|
return ["scroll", "keydown", "pointerdown"].map((function(e) {
|
|
addEventListener(e, t, {
|
|
once: !0,
|
|
passive: !0,
|
|
capture: !0
|
|
})
|
|
}
|
|
))
|
|
}
|
|
))),
|
|
S
|
|
}, O = /^(https?:)?\/\//;
|
|
function U(t) {
|
|
return "number" == typeof t ? t.toFixed() : t
|
|
}
|
|
function R(t) {
|
|
if ("string" != typeof t)
|
|
return "";
|
|
try {
|
|
var e = t.lastIndexOf(".");
|
|
return t.substr(e + 1)
|
|
} catch (t) {
|
|
return ""
|
|
}
|
|
}
|
|
function H(t, e) {
|
|
if (!t)
|
|
return !1;
|
|
var n = t.replace(O, "");
|
|
return e.some((function(t) {
|
|
return n.indexOf(t) >= 0
|
|
}
|
|
))
|
|
}
|
|
var D = {};
|
|
function Y(t, e) {
|
|
var n = D[t];
|
|
n ? n.endTime || (n.endTime = (new Date).getTime(),
|
|
n.duration = n.endTime - n.startTime,
|
|
delete n.startTime,
|
|
delete n.endTime) : D[t] = {
|
|
startTime: (new Date).getTime()
|
|
}
|
|
}
|
|
var j = {}
|
|
, V = [{
|
|
name: "fid",
|
|
collectFn: function(t) {
|
|
var e = P("FID")
|
|
, n = W()
|
|
, r = function(t) {
|
|
t.startTime < n.timeStamp && (e.value = t.processingStart - t.startTime,
|
|
e.entries.push(t),
|
|
e.isFinal = !0,
|
|
i())
|
|
}
|
|
, o = G("first-input", r)
|
|
, i = X(t, e, o);
|
|
o ? K((function() {
|
|
o.takeRecords().map(r),
|
|
o.disconnect()
|
|
}
|
|
), !0) : window.perfMetrics && window.perfMetrics.onFirstInputDelay && window.perfMetrics.onFirstInputDelay((function(t, r) {
|
|
r.timeStamp < n.timeStamp && (e.value = t,
|
|
e.isFinal = !0,
|
|
e.entries = [{
|
|
entryType: "first-input",
|
|
name: r.type,
|
|
target: r.target,
|
|
cancelable: r.cancelable,
|
|
startTime: r.timeStamp,
|
|
processingStart: r.timeStamp + t
|
|
}],
|
|
i())
|
|
}
|
|
))
|
|
}
|
|
}, {
|
|
name: "lcp",
|
|
collectFn: function(t) {
|
|
var e, n = arguments.length > 1 && void 0 !== arguments[1] && arguments[1], r = P("LCP"), o = W(), i = function(t) {
|
|
var n = t.startTime;
|
|
n < o.timeStamp ? (r.value = n,
|
|
r.entries.push(t)) : r.isFinal = !0,
|
|
e()
|
|
}, a = G("largest-contentful-paint", i);
|
|
if (a) {
|
|
e = X(t, r, a, n);
|
|
var s = function() {
|
|
r.isFinal || (a.takeRecords().map(i),
|
|
r.isFinal = !0,
|
|
e())
|
|
};
|
|
M().then(s),
|
|
K(s, !0)
|
|
}
|
|
}
|
|
}, {
|
|
name: "cls",
|
|
collectFn: function(t) {
|
|
var e, n = arguments.length > 1 && void 0 !== arguments[1] && arguments[1], r = P("CLS", 0), o = function(t) {
|
|
t.hadRecentInput || (r.value += t.value,
|
|
r.entries.push(t),
|
|
e())
|
|
}, i = G("layout-shift", o);
|
|
i && (e = X(t, r, i, n),
|
|
K((function(t) {
|
|
var n = t.isUnloading;
|
|
i.takeRecords().map(o),
|
|
n && (r.isFinal = !0),
|
|
e()
|
|
}
|
|
)))
|
|
}
|
|
}, {
|
|
name: "fcp",
|
|
collectFn: function(t) {
|
|
var e, n = P("FCP"), r = W(), o = G("paint", (function(t) {
|
|
"first-contentful-paint" === t.name && t.startTime < r.timeStamp && (n.value = t.startTime,
|
|
n.isFinal = !0,
|
|
n.entries.push(t),
|
|
e())
|
|
}
|
|
));
|
|
o && (e = X(t, n, o))
|
|
}
|
|
}]
|
|
, z = function(t) {
|
|
for (var e = [], n = 1; n < arguments.length; n++)
|
|
e[n - 1] = arguments[n];
|
|
var r = d(location.search.slice(1));
|
|
1 == +r.debug && s.apply(void 0, a(["[radar] " + t + ": "], e))
|
|
}
|
|
, A = function() {
|
|
var t = window.navigator.userAgent
|
|
, e = {};
|
|
return t.split(" ").map((function(t) {
|
|
var n = t.split("/");
|
|
e[n[0]] = n[1]
|
|
}
|
|
)),
|
|
e
|
|
}
|
|
, J = function() {
|
|
var t = window.navigator.userAgent;
|
|
if (-1 !== t.indexOf("Android"))
|
|
return "WebView";
|
|
if (-1 !== t.indexOf("iPhone")) {
|
|
var e = A();
|
|
return e.Yoda && "WK" === e.WebViewType ? "YodaWKWebView" : e.Yoda || "WKWebView" !== e.WebView ? "UIWebView" : "WKWebView"
|
|
}
|
|
return ""
|
|
}
|
|
, F = function(t, e) {
|
|
var n = {};
|
|
return Object.keys(e).forEach((function(r) {
|
|
t[e[r]] >= 0 && (n[r] = U(t[e[r]]))
|
|
}
|
|
)),
|
|
n
|
|
};
|
|
function B(t) {
|
|
return Array.isArray(t) ? t.map((function(t) {
|
|
var e = t.tagName
|
|
, n = void 0 === e ? "" : e
|
|
, r = t.id
|
|
, o = t.getAttribute ? t.getAttribute("class") : t.className || ""
|
|
, i = n.toLowerCase();
|
|
return r && (i += "#" + r),
|
|
o && (i += o.split(/\s+/g).map((function(t) {
|
|
return "." + t
|
|
}
|
|
)).join("")),
|
|
i
|
|
}
|
|
)).filter((function(t) {
|
|
return t
|
|
}
|
|
)).join(",") : ""
|
|
}
|
|
function Q(t) {
|
|
return JSON.parse(JSON.stringify(t))
|
|
}
|
|
var q = function(t) {
|
|
try {
|
|
if (window && window.localStorage && "undefined" != typeof Storage && window.localStorage instanceof Storage) {
|
|
var e = Number(function(t) {
|
|
try {
|
|
if (window && window.localStorage) {
|
|
var e = window.localStorage.getItem(t);
|
|
if (e)
|
|
try {
|
|
return JSON.parse(e)
|
|
} catch (t) {
|
|
return e
|
|
}
|
|
}
|
|
} catch (t) {
|
|
return null
|
|
}
|
|
return null
|
|
}(t)) || 0;
|
|
return e + 1 > 1e8 && (e = 0),
|
|
function(t, e) {
|
|
try {
|
|
if (window && window.localStorage)
|
|
window.localStorage.setItem(t, JSON.stringify(e))
|
|
} catch (t) {
|
|
return !1
|
|
}
|
|
}(t, e + 1),
|
|
e
|
|
}
|
|
} catch (t) {}
|
|
}
|
|
, $ = {}
|
|
, tt = function(t) {
|
|
return $[t] || ($[t] = 0),
|
|
$[t]++
|
|
};
|
|
function et(t) {
|
|
if (!(null == t ? void 0 : t.name))
|
|
throw new Error("[Radar] \u5173\u952e\u52a8\u4f5c\u4e0a\u62a5\u5fc5\u987b\u914d\u7f6ename");
|
|
if ((null == t ? void 0 : t.extra_info) && !(t.extra_info instanceof Object))
|
|
throw new Error("[Radar] \u5173\u952e\u52a8\u4f5c\u4e0a\u62a5 extra_info \u5fc5\u987b\u4e3a plain object")
|
|
}
|
|
function nt(t, e) {
|
|
if (!Array.isArray(e))
|
|
return -1;
|
|
var n = -1;
|
|
return e.forEach((function(e, r) {
|
|
new RegExp(e).test(t) && (n = r)
|
|
}
|
|
)),
|
|
n
|
|
}
|
|
var rt, ot, it = function() {
|
|
function t() {
|
|
for (var t, e = [], n = 0; n < arguments.length; n++)
|
|
e[n] = arguments[n];
|
|
this.middlewares = [],
|
|
(t = this.middlewares).push.apply(t, e)
|
|
}
|
|
return t.prototype.use = function() {
|
|
for (var t, e = [], n = 0; n < arguments.length; n++)
|
|
e[n] = arguments[n];
|
|
var r = this.middlewares.pop();
|
|
(t = this.middlewares).push.apply(t, e),
|
|
this.middlewares.push(r)
|
|
}
|
|
,
|
|
t.prototype.invoke = function(t) {
|
|
var e;
|
|
return (e = this.middlewares,
|
|
function(t, n) {
|
|
var r = -1;
|
|
return function o(i) {
|
|
if (i <= r)
|
|
return new Error("`next` \u88ab\u91cd\u590d\u8c03\u7528");
|
|
r = i;
|
|
var a = e[i];
|
|
if (i === e.length && (a = n),
|
|
a)
|
|
try {
|
|
return a(t, o.bind(null, i + 1))
|
|
} catch (t) {
|
|
return t
|
|
}
|
|
}(0)
|
|
}
|
|
)(t)
|
|
}
|
|
,
|
|
t
|
|
}(), at = ["KUAISHOU", "THANOS", "NEBULA"], st = function(t) {
|
|
function r(e, r) {
|
|
var o, i, s = t.call(this) || this;
|
|
return s.kpn = "",
|
|
s.plugins = [],
|
|
s.logQueue = [],
|
|
s.logQueueNext = [],
|
|
s.queueConfig = {
|
|
wait: 1e3,
|
|
maxBatchLength: 200
|
|
},
|
|
s.eventName = "onpagehide"in window ? "pagehide" : "beforeunload",
|
|
s.batchTimer = 0,
|
|
s.batchTimerNext = 0,
|
|
s.startedLoadReport = !1,
|
|
s.radarSessionId = "",
|
|
s.radarSessionIdNext = "",
|
|
s.chromeMetric = V,
|
|
s.isInKwai = !1,
|
|
s.isUsingBridge = null,
|
|
s.isUsingLegacy = null,
|
|
s.isUsingDetachedReport = null,
|
|
s.isSupportedYodaConcat = null,
|
|
s.customDimension = {},
|
|
s.webviewData = null,
|
|
s.webviewStart = null,
|
|
s.webviewStartTime = null,
|
|
s.finalSampling = {},
|
|
s.sampleData = null,
|
|
s.sampleList = [h.LOAD, h.API, h.CUSTOM, h.ERROR, h.EVENT, h.RES],
|
|
s.defaultSampleList = {
|
|
load: 1,
|
|
api: 1,
|
|
resource: .1,
|
|
error: 1,
|
|
event: 1,
|
|
custom: 1,
|
|
isHit: !0
|
|
},
|
|
s.ignoreList = ["https://web-trace.ksapisrv.com/ktrace/collect"],
|
|
s.lastRadarLogId = "",
|
|
s.computedSamplingAgain = !0,
|
|
s.realSampledList = [],
|
|
s.hasFmp = !1,
|
|
s.customPerfList = {},
|
|
s.mainApiList = [],
|
|
s.mainApiResult = [],
|
|
s.observeResource = function(t) {
|
|
t.getEntriesByType("resource").forEach((function(t) {
|
|
return s.reportPerformance(t)
|
|
}
|
|
))
|
|
}
|
|
,
|
|
s.asyncReportTiming = function() {
|
|
Y("radarCreatedToOnload"),
|
|
Y("onloadToFirstReport"),
|
|
setTimeout((function() {
|
|
Y("asyncReportTiming"),
|
|
s.reportPerformance(y()),
|
|
s.startedLoadReport = !0;
|
|
try {
|
|
s.observeResource(performance),
|
|
s.observeChromeMetrics(s.chromeMetric),
|
|
new PerformanceObserver(s.observeResource).observe({
|
|
entryTypes: ["resource"]
|
|
})
|
|
} catch (t) {}
|
|
Y("radarCreatedToFirstReport"),
|
|
Y("onloadToFirstReport"),
|
|
Y("asyncReportTiming")
|
|
}
|
|
), 0)
|
|
}
|
|
,
|
|
s.chromeMetricCallback = function(t) {
|
|
var e, n, r = t.name, o = t.value;
|
|
r = r.toLocaleLowerCase();
|
|
var i = {
|
|
key: h.CUSTOM,
|
|
value: (e = {},
|
|
e[r] = o,
|
|
e)
|
|
};
|
|
s.logCollect(i),
|
|
s.logCollectNext({
|
|
key: h.EVENT,
|
|
dimension: {
|
|
name: r
|
|
},
|
|
value: {
|
|
duration: o
|
|
}
|
|
}),
|
|
Y(r + "Collect"),
|
|
function(t) {
|
|
Object.assign(j, t)
|
|
}(((n = {})[r] = o,
|
|
n))
|
|
}
|
|
,
|
|
s.observeChromeMetrics = function(t) {
|
|
var e = s.options;
|
|
t.forEach((function(t) {
|
|
var n = t.name;
|
|
e && !e[n] || (Y(n + "Collect"),
|
|
t.collectFn(s.chromeMetricCallback))
|
|
}
|
|
))
|
|
}
|
|
,
|
|
s.asyncMetricCollectDone = function() {
|
|
var t = {};
|
|
Object.keys(D).forEach((function(e) {
|
|
var n = D[e];
|
|
!n.duration && n.startTime && (n.duration = 0,
|
|
delete n.startTime),
|
|
t[e] = n.duration
|
|
}
|
|
));
|
|
var e = {
|
|
key: h.CUSTOM,
|
|
value: t
|
|
};
|
|
s.logCollect(e),
|
|
s.flush(),
|
|
s.weblog.flush(),
|
|
l(window, s.eventName, s.asyncMetricCollectDone)
|
|
}
|
|
,
|
|
s.flush = function() {
|
|
if (s.beforeFlush(),
|
|
s.options && !(s.logQueue.length <= 0) && s.startedLoadReport) {
|
|
var t = JSON.stringify(n(n({}, s.weblog.commonPackage.getH5ExtraAttr()), {
|
|
url: location.href,
|
|
hash: location.hash,
|
|
webviewStart: s.webviewStart,
|
|
webviewStartTime: s.webviewStartTime,
|
|
sampling_list: s.finalSampling ? JSON.stringify(s.finalSampling) : ""
|
|
}))
|
|
, e = {
|
|
project_id: s.options.projectId,
|
|
radar_session_id: s.radarSessionId,
|
|
h5_extra_attr: t
|
|
}
|
|
, r = s.weblog.commonPackage
|
|
, o = r.service_name
|
|
, i = r.sub_biz
|
|
, c = r.need_encrypt
|
|
, u = r.app_package
|
|
, l = s.currentUrlPackage && s.currentUrlPackage.toJSON()
|
|
, d = null;
|
|
s.options.httpReportFirst || (d = s.addRadarStatEvent({
|
|
key: v,
|
|
value: n(n({}, e), {
|
|
data: a(s.logQueue),
|
|
url_package: l,
|
|
app_version_name: u.version_name
|
|
}),
|
|
serviceName: o || "",
|
|
subBiz: i || "",
|
|
needEncrypt: c || !1,
|
|
container: u.container,
|
|
realtime: !1,
|
|
h5ExtraAttr: t
|
|
})),
|
|
d && !s.options.httpReportFirst || s.weblog.collect("RADAR", {
|
|
name: v,
|
|
params: n(n({}, e), {
|
|
data: a(s.logQueue)
|
|
}),
|
|
currentUrlPackage: l,
|
|
referUrlPackage: s.referUrlPackage && s.referUrlPackage.toJSON(),
|
|
serviceName: o || "radar_service_name"
|
|
}),
|
|
s.logQueue = []
|
|
}
|
|
}
|
|
,
|
|
s.flushNext = function() {
|
|
if (s.options && !(s.logQueueNext.length <= 0)) {
|
|
var t = null;
|
|
s.options.httpReportFirst || (t = s.reportByBridge()),
|
|
t && !s.options.httpReportFirst || s.reportByHttp(),
|
|
s.logQueueNext = []
|
|
}
|
|
}
|
|
,
|
|
s.getCommonData = function() {
|
|
var t, e, r, o = s.weblog.commonPackage.app_package, i = JSON.stringify(n(n({}, s.weblog.commonPackage.getH5ExtraAttr()), {
|
|
app_version_name: o.version_name,
|
|
url: location.href,
|
|
hash: location.hash,
|
|
online: null === navigator || void 0 === navigator ? void 0 : navigator.onLine,
|
|
downlink: null === (t = null === navigator || void 0 === navigator ? void 0 : navigator.connection) || void 0 === t ? void 0 : t.downlink,
|
|
rtt: null === (e = null === navigator || void 0 === navigator ? void 0 : navigator.connection) || void 0 === e ? void 0 : e.rtt
|
|
})), a = s.currentUrlPackage && s.currentUrlPackage.toJSON(), c = null === (r = s.options) || void 0 === r ? void 0 : r.projectId;
|
|
return {
|
|
h5_extra_attr: i,
|
|
url_package: a,
|
|
app_version_name: o.version_name,
|
|
project_id: c
|
|
}
|
|
}
|
|
,
|
|
r && (o = r),
|
|
e && (e.logger ? s.apply(e) : o = e),
|
|
Y("radarCreatedToFirstReport"),
|
|
Y("radarCreatedToOnload"),
|
|
s.options = o,
|
|
s.queueConfig = n(n({}, s.queueConfig), s.options ? s.options.queue : {}),
|
|
s.options && "string" == typeof s.options.mainApi ? (s.mainApiList.push(s.options.mainApi),
|
|
s.mainApiResult.push({})) : s.options && Array.isArray(s.options.mainApi) && (s.options.mainApi.length,
|
|
s.mainApiList = s.options.mainApi.slice(0, 3),
|
|
s.mainApiList.forEach((function() {
|
|
return s.mainApiResult.push({})
|
|
}
|
|
))),
|
|
s.ignoreList = s.ignoreList.concat((void 0 === (i = s.options && s.options.ignoreList) && (i = []),
|
|
i.concat(x).map((function(t) {
|
|
return t.replace(O, "")
|
|
}
|
|
)))),
|
|
s
|
|
}
|
|
return e(r, t),
|
|
Object.defineProperty(r.prototype, "KSwitchSampled", {
|
|
get: function() {
|
|
return this.weblog.currentUrlPackage.sampled
|
|
},
|
|
enumerable: !1,
|
|
configurable: !0
|
|
}),
|
|
Object.defineProperty(r.prototype, "isKSwitchSampled", {
|
|
get: function() {
|
|
return this.weblog.isKSwitchSampled
|
|
},
|
|
enumerable: !1,
|
|
configurable: !0
|
|
}),
|
|
r.prototype.samplingControl = function(t) {
|
|
if (!t)
|
|
return !1;
|
|
var e = Math.random();
|
|
return "number" == typeof t ? e < t : e < t.sampling
|
|
}
|
|
,
|
|
r.prototype.use = function(t, e) {
|
|
var n = new t(e,this.options);
|
|
this.plugins.push(n),
|
|
this.weblog && n.created()
|
|
}
|
|
,
|
|
r.prototype.apply = function(t) {
|
|
var e, n;
|
|
this.weblog = t,
|
|
this.kpn = this.weblog.Utils.ua.getDefaultKpn(),
|
|
this.isInKwai = at.indexOf(this.kpn) >= 0,
|
|
this.upadteUrlPackage(),
|
|
this.register(),
|
|
this.ignoreList.push(null === (n = null === (e = this.weblog) || void 0 === e ? void 0 : e.logger) || void 0 === n ? void 0 : n.url),
|
|
this.created()
|
|
}
|
|
,
|
|
r.prototype.created = function() {
|
|
this.plugins.forEach((function(t) {
|
|
t.created()
|
|
}
|
|
))
|
|
}
|
|
,
|
|
r.prototype.destroy = function() {
|
|
l(window, "load", this.asyncReportTiming),
|
|
this.plugins.forEach((function(t) {
|
|
t.destroy()
|
|
}
|
|
))
|
|
}
|
|
,
|
|
r.prototype.computedRealSampled = function(t, e) {
|
|
if (this.isKSwitchSampled) {
|
|
var n = void 0;
|
|
if ("object" == typeof this.KSwitchSampled && this.KSwitchSampled.radar) {
|
|
var r = this.KSwitchSampled.radar.all;
|
|
r = "number" != typeof r ? 1 : r;
|
|
var o = this.KSwitchSampled.radar[e];
|
|
n = "number" != typeof o ? r : o * r
|
|
} else
|
|
n = this.KSwitchSampled ? 1 : 0;
|
|
return n * t
|
|
}
|
|
return 1
|
|
}
|
|
,
|
|
r.prototype.getWebviewData = function() {
|
|
if (window.__yodaCommonDataObject__ && window.__yodaCommonDataObject__.pageLoadData) {
|
|
var t = null;
|
|
try {
|
|
var e = window.__yodaCommonDataObject__.pageLoadData;
|
|
t = "string" == typeof e ? JSON.parse(e) : e
|
|
} catch (t) {
|
|
return
|
|
}
|
|
var r = t.created
|
|
, o = t.pageStart
|
|
, i = t.userStart;
|
|
this.webviewData = n({
|
|
webviewStart: i || o || r
|
|
}, t);
|
|
var a = {
|
|
key: h.EVENT,
|
|
value: null,
|
|
dimension: {
|
|
name: "\u5ba2\u6237\u7aef\u6570\u636e\u6ce8\u5165\u6210\u529f",
|
|
event_type: "radar_inject_success"
|
|
}
|
|
};
|
|
this.logCollect(a),
|
|
this.logCollectNext(a)
|
|
}
|
|
}
|
|
,
|
|
r.prototype.getSampleData = function() {
|
|
var t = this
|
|
, e = this.weblog.Utils.yoda;
|
|
if (e ? (this.sampleData = this.defaultSampleList,
|
|
window.updateYodaSampleRateWithParams = function(e) {
|
|
t.updateSampleData(e),
|
|
t.handleSample()
|
|
}
|
|
) : this.handleSample(),
|
|
window.__yodaCommonDataObject__ && window.__yodaCommonDataObject__.sampleData) {
|
|
this.updateSampleData(),
|
|
this.handleSample();
|
|
var n = {
|
|
key: h.EVENT,
|
|
value: null,
|
|
dimension: {
|
|
name: "\u5ba2\u6237\u7aef\u91c7\u6837\u7387\u6ce8\u5165\u6210\u529f",
|
|
event_type: "radar_sample_inject_success"
|
|
}
|
|
};
|
|
this.logCollect(n),
|
|
this.logCollectNext(n)
|
|
} else
|
|
e && e.getWebviewLoadPerf().then((function(e) {
|
|
e.sampleData && (t.updateSampleData(e.sampleData),
|
|
t.handleSample())
|
|
}
|
|
))
|
|
}
|
|
,
|
|
r.prototype.updateSampleData = function(t) {
|
|
var e = this
|
|
, n = null;
|
|
try {
|
|
var r = t || window.__yodaCommonDataObject__.sampleData;
|
|
n = "string" == typeof r ? JSON.parse(r) : r
|
|
} catch (t) {
|
|
return
|
|
}
|
|
this.sampleData = this.defaultSampleList,
|
|
n && Object.keys(n).forEach((function(t) {
|
|
e.sampleData[t] = n[t]
|
|
}
|
|
))
|
|
}
|
|
,
|
|
r.prototype.register = function() {
|
|
return o(this, void 0, void 0, (function() {
|
|
var t, e, n;
|
|
return i(this, (function(r) {
|
|
switch (r.label) {
|
|
case 0:
|
|
return y() ? ("undefined" != typeof window && window.yodaCollectErrorDataDestroy && window.yodaCollectErrorDataDestroy(),
|
|
performance.timing.loadEventStart > 0 ? this.asyncReportTiming() : u(window, "load", this.asyncReportTiming),
|
|
this.options && this.options.radarCost && u(window, this.eventName, this.asyncMetricCollectDone),
|
|
u(window, this.eventName, this.flush),
|
|
u(window, this.eventName, this.flushNext),
|
|
this.getSampleData(),
|
|
this.getWebviewData(),
|
|
this.radarSessionId = this.nanoId(),
|
|
this.radarSessionIdNext = this.uuid(),
|
|
(t = this.weblog.Utils.yoda) ? [3, 1] : (this.isUsingBridge = !1,
|
|
this.isSupportedYodaConcat = !1,
|
|
this.isUsingLegacy = !1,
|
|
[3, 6])) : [2];
|
|
case 1:
|
|
return null != this.isUsingBridge ? [3, 3] : (e = this,
|
|
[4, t.isSupportBridgeLog()]);
|
|
case 2:
|
|
e.isUsingBridge = r.sent(),
|
|
r.label = 3;
|
|
case 3:
|
|
return null != this.isSupportedYodaConcat ? [3, 5] : (n = this,
|
|
[4, t.isSupportBridge("sendRadarLog")]);
|
|
case 4:
|
|
n.isSupportedYodaConcat = r.sent(),
|
|
r.label = 5;
|
|
case 5:
|
|
this.isUsingLegacy = this.isUsingBridge && !this.isSupportedYodaConcat,
|
|
r.label = 6;
|
|
case 6:
|
|
return this.isUsingDetachedReport = this.isInKwai && !this.isUsingBridge || this.isUsingLegacy,
|
|
[2]
|
|
}
|
|
}
|
|
))
|
|
}
|
|
))
|
|
}
|
|
,
|
|
r.prototype.throttle = function(t, e, n, r) {
|
|
if (void 0 === r && (r = {}),
|
|
e.noThrottle || "number" != typeof t)
|
|
return t;
|
|
var o = r.startPoint
|
|
, i = r.endPoint;
|
|
if (t > 6e4 || t < 0 || isNaN(t)) {
|
|
if (Math.random() < .1) {
|
|
var a = "[" + n + " \u5f02\u5e38]: " + t + "\uff0c\u539f\u59cb\u6570\u636e\u4e3a\uff1a" + e.end + ": " + i + " - " + e.start + ": " + o
|
|
, s = {
|
|
key: h.EVENT,
|
|
value: null,
|
|
dimension: {
|
|
name: "\u96f7\u8fbe\u6570\u636e\u5f02\u5e38",
|
|
event_type: "radar_error",
|
|
message: a,
|
|
src: location.href,
|
|
webViewType: J(),
|
|
yoda_version: A().yoda_version || ""
|
|
}
|
|
};
|
|
this.logCollect(s),
|
|
this.logCollectNext(s)
|
|
}
|
|
return null
|
|
}
|
|
return Math.round(t)
|
|
}
|
|
,
|
|
r.prototype.reportPerformance = function(t) {
|
|
this.plugins.forEach((function(e) {
|
|
t && e.when(t) && e.onPerfReport(t)
|
|
}
|
|
))
|
|
}
|
|
,
|
|
r.prototype.calculate = function(t, e, n) {
|
|
var r = e[t];
|
|
if (r) {
|
|
if (r.cachedSkip && this.calculate("cached", e, n))
|
|
return;
|
|
if ("function" == typeof r.custom) {
|
|
var o = r.custom(t, n);
|
|
return this.throttle(o, r, t)
|
|
}
|
|
var i = r.end
|
|
, a = r.start
|
|
, s = +n[i] || performance.timing[i]
|
|
, u = +n[a] || performance.timing[a]
|
|
, l = s - u;
|
|
if (!r.notCatchIfUndefined || void 0 !== s && void 0 !== u)
|
|
return this.throttle(l, r, t, {
|
|
startPoint: u,
|
|
endPoint: s
|
|
})
|
|
} else
|
|
c("[warn 310]", "[Radar] perf key " + t + " is unexpected!")
|
|
}
|
|
,
|
|
r.prototype.calculateNext = function(t, e, n) {
|
|
var r = e[t];
|
|
if (r) {
|
|
if (r.cachedSkip && this.calculateNext("cached", e, n))
|
|
return;
|
|
if ("function" == typeof r.custom)
|
|
return U(r.custom(t, n));
|
|
var o = r.end
|
|
, i = r.start
|
|
, a = +n[o] || performance.timing[o]
|
|
, s = +n[i] || performance.timing[i]
|
|
, c = a - s;
|
|
if (!r.notCatchIfUndefined || void 0 !== a && void 0 !== s)
|
|
return U(c)
|
|
}
|
|
}
|
|
,
|
|
r.prototype.generateLog = function(t, e, n) {
|
|
var r = this;
|
|
void 0 === n && (n = !0);
|
|
var o = {};
|
|
return Object.keys(t).forEach((function(i) {
|
|
var a = i
|
|
, s = n ? r.calculate(a, t, e) : r.calculateNext(a, t, e);
|
|
null != s && (o[a] = s)
|
|
}
|
|
)),
|
|
o
|
|
}
|
|
,
|
|
r.prototype.subDimension = function(t) {
|
|
this.customDimension && (t.dimension || (t.dimension = {}),
|
|
Object.assign(t.dimension, this.customDimension))
|
|
}
|
|
,
|
|
r.prototype.nanoId = function() {
|
|
for (var t = 1e9 * Math.random() >>> 0, e = [], n = 0; n < 7; n++)
|
|
e.push("0123456789ABCDEF".charAt(16 * Math.random()));
|
|
return t + e.join("")
|
|
}
|
|
,
|
|
r.prototype.uuid = function() {
|
|
return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (function(t) {
|
|
var e = 16 * Math.random() | 0;
|
|
return ("x" === t ? e : 3 & e | 8).toString(16)
|
|
}
|
|
))
|
|
}
|
|
,
|
|
r.prototype.beforeFlush = function() {
|
|
var t = this;
|
|
if (this.computedSamplingAgain) {
|
|
var e = {
|
|
radarLoadSampling: {
|
|
sampling: 1,
|
|
type: "load"
|
|
},
|
|
radarApiSampling: {
|
|
sampling: this.options && this.options.apiSampling || 1,
|
|
type: "api"
|
|
},
|
|
radarErrorSampling: {
|
|
sampling: this.options && this.options.errorSampling || 1,
|
|
type: "error"
|
|
},
|
|
radarResourceSampling: {
|
|
sampling: this.options && this.options.resourceSampling || .1,
|
|
type: "resource"
|
|
},
|
|
radarCustomSampling: {
|
|
sampling: this.options && this.options.customSampling || 1,
|
|
type: "custom"
|
|
},
|
|
radarEventSampling: {
|
|
sampling: this.options && this.options.eventSampling || 1,
|
|
type: "event"
|
|
}
|
|
};
|
|
this.realSampledList = [],
|
|
Object.keys(e).forEach((function(n) {
|
|
var r = t.isKSwitchSampled ? t.computedRealSampled(e[n].sampling, e[n].type) : e[n]
|
|
, o = t.samplingControl(r);
|
|
t.finalSampling[e[n].type] = r,
|
|
o && t.realSampledList.push(e[n].type)
|
|
}
|
|
)),
|
|
this.isKSwitchSampled && (this.computedSamplingAgain = !1)
|
|
}
|
|
this.logQueue = this.logQueue.filter((function(e) {
|
|
return -1 !== t.realSampledList.indexOf(e.key)
|
|
}
|
|
))
|
|
}
|
|
,
|
|
r.prototype.upadteUrlPackage = function() {
|
|
this.weblog && (this.computedSamplingAgain = !0,
|
|
this.currentUrlPackage = this.weblog.currentUrlPackage,
|
|
this.referUrlPackage = this.weblog.referUrlPackage)
|
|
}
|
|
,
|
|
r.prototype.decorateLog = function(t) {
|
|
this.currentUrlPackage || this.upadteUrlPackage(),
|
|
this.customDimension && this.subDimension(t),
|
|
this.currentUrlPackage && this.currentUrlPackage.page !== this.weblog.currentUrlPackage.page && (this.flushNext(),
|
|
this.flush(),
|
|
this.upadteUrlPackage())
|
|
}
|
|
,
|
|
r.prototype.logCollect = function(t) {
|
|
var e = this;
|
|
if (this.options && !this.options.unuseOldRadar) {
|
|
this.decorateLog(t);
|
|
try {
|
|
window.dispatchEvent(new CustomEvent("get-radar-data",{
|
|
detail: {
|
|
kv: t
|
|
}
|
|
}))
|
|
} catch (t) {}
|
|
var n = !0;
|
|
if ("load" === t.key)
|
|
for (var r = 0; r < this.logQueue.length; r++) {
|
|
var o = this.logQueue[r];
|
|
if ("load" === o.key) {
|
|
Object.assign(o, t),
|
|
n = !1;
|
|
break
|
|
}
|
|
}
|
|
n && this.logQueue.push(t),
|
|
z("radarLog", JSON.parse(JSON.stringify(t))),
|
|
this.batchTimer || (this.logQueue.length > this.queueConfig.maxBatchLength ? this.flush() : this.batchTimer = window.setTimeout((function() {
|
|
e.flush(),
|
|
clearTimeout(e.batchTimer),
|
|
e.batchTimer = 0
|
|
}
|
|
), this.queueConfig.wait))
|
|
}
|
|
}
|
|
,
|
|
r.prototype.addRadarStatEvent = function(t) {
|
|
var e = this;
|
|
try {
|
|
var r = this.weblog.Utils.yoda;
|
|
if (!r)
|
|
return !1;
|
|
var o = function(t) {
|
|
var e, r;
|
|
if (!t.value)
|
|
return t;
|
|
var o = t.value
|
|
, i = function(t) {
|
|
var e, n = [];
|
|
return t.forEach((function(t) {
|
|
"load" === t.key ? e = t : n.push(t)
|
|
}
|
|
)),
|
|
[e, n]
|
|
}(o.data)
|
|
, a = i[0]
|
|
, s = i[1]
|
|
, c = {
|
|
project_id: o.project_id,
|
|
app_version_name: o.app_version_name,
|
|
url_package: o.url_package,
|
|
h5_extra_attr: t.h5ExtraAttr
|
|
};
|
|
return {
|
|
loadLog: a ? {
|
|
removeStashedLog: [],
|
|
sendImmediate: null !== (r = null === (e = a.dimension) || void 0 === e ? void 0 : e.sendImmediate) && void 0 !== r && r,
|
|
customData: n({
|
|
data: [a]
|
|
}, c)
|
|
} : null,
|
|
commonLog: s.length ? {
|
|
removeStashedLog: [],
|
|
sendImmediate: !0,
|
|
customData: n({
|
|
data: s
|
|
}, c)
|
|
} : null
|
|
}
|
|
}(t)
|
|
, i = o.loadLog
|
|
, a = o.commonLog;
|
|
if (i) {
|
|
if (this.lastRadarLogId && (i.removeStashedLog = [this.lastRadarLogId],
|
|
i.sendImmediate)) {
|
|
var s = {
|
|
removeStashedLog: [this.lastRadarLogId],
|
|
sendImmediate: !1,
|
|
customData: {
|
|
"": ""
|
|
}
|
|
};
|
|
r.sendRadarLog(s).then((function(t) {
|
|
t && t.logId && (e.lastRadarLogId = t.logId)
|
|
}
|
|
))
|
|
}
|
|
r.sendRadarLog(i).then((function(t) {
|
|
t && t.logId && (e.lastRadarLogId = t.logId)
|
|
}
|
|
))
|
|
}
|
|
return a && r.sendRadarLog(a),
|
|
!0
|
|
} catch (t) {
|
|
return !1
|
|
}
|
|
}
|
|
,
|
|
r.prototype.calculateSample = function(t) {
|
|
var e = (null == t ? void 0 : t.load) || 1
|
|
, n = {};
|
|
return t && Object.keys(t).forEach((function(r) {
|
|
var o = t[r] / e;
|
|
n[r] = o > 1 ? 1 : o
|
|
}
|
|
)),
|
|
n
|
|
}
|
|
,
|
|
r.prototype.handleSample = function() {
|
|
var t, e, n, r, o, i, a, s, c = this, u = this.weblog.Utils.yoda;
|
|
u || this.sampleData || (this.sampleData = {
|
|
load: (null === (t = this.options) || void 0 === t ? void 0 : t.sampling) || 1,
|
|
api: (null === (e = this.options) || void 0 === e ? void 0 : e.apiSampling) || 1,
|
|
resource: (null === (n = this.options) || void 0 === n ? void 0 : n.resourceSampling) || .1,
|
|
error: (null === (r = this.options) || void 0 === r ? void 0 : r.errorSampling) || 1,
|
|
event: (null === (o = this.options) || void 0 === o ? void 0 : o.eventSampling) || 1,
|
|
custom: (null === (i = this.options) || void 0 === i ? void 0 : i.customSampling) || 1
|
|
}),
|
|
s = this.calculateSample(this.sampleData),
|
|
a = {
|
|
radarLoadSampling: {
|
|
sampling: 1,
|
|
type: "load"
|
|
},
|
|
radarApiSampling: {
|
|
sampling: (null == s ? void 0 : s.api) || 1,
|
|
type: "api"
|
|
},
|
|
radarErrorSampling: {
|
|
sampling: (null == s ? void 0 : s.error) || 1,
|
|
type: "error"
|
|
},
|
|
radarResourceSampling: {
|
|
sampling: (null == s ? void 0 : s.resource) || .1,
|
|
type: "resource"
|
|
},
|
|
radarCustomSampling: {
|
|
sampling: (null == s ? void 0 : s.custom) || 1,
|
|
type: "custom"
|
|
},
|
|
radarEventSampling: {
|
|
sampling: (null == s ? void 0 : s.event) || 1,
|
|
type: "event"
|
|
}
|
|
},
|
|
this.sampleList = [],
|
|
Object.keys(a).forEach((function(t) {
|
|
var e = a[t];
|
|
c.samplingControl(e) && c.sampleList.push(a[t].type)
|
|
}
|
|
))
|
|
}
|
|
,
|
|
r.prototype.logCollectNext = function(t) {
|
|
var e = this
|
|
, r = Q(t);
|
|
if (this.options && (!this.sampleData || !1 !== this.sampleData.isHit) && this.sampleList.some((function(t) {
|
|
return t === r.key
|
|
}
|
|
))) {
|
|
this.decorateLog(r);
|
|
var o = this.getCommonData()
|
|
, i = o.app_version_name;
|
|
delete o.app_version_name;
|
|
var a = new it((function(t, r) {
|
|
return t.dimension.app_version_name = i,
|
|
n(n(n({}, t), o), {
|
|
event_client_timestamp: Date.now(),
|
|
event_trigger_source: "H5",
|
|
radar_session_id: e.radarSessionIdNext
|
|
})
|
|
}
|
|
));
|
|
if (a.use((function(t, e) {
|
|
return t.key && "load" === t.key && (t.dimension = n(n({}, t.dimension), {
|
|
load_device_increase_id: q("LOAD_DEVICE_INCREASE_ID"),
|
|
load_session_increase_id: tt("LOAD_SESSION_INCREASE_ID")
|
|
})),
|
|
t.key && "load" !== t.key && (t.dimension = n(n({}, t.dimension), {
|
|
other_device_increase_id: q("OTHER_DEVICE_INCREASE_ID"),
|
|
other_session_increase_id: tt("OTHER_SESSION_INCREASE_ID")
|
|
})),
|
|
e()
|
|
}
|
|
), (function(t, n) {
|
|
return t.dimension.sample_rate = e.sampleData && e.sampleData[t.key] || 1,
|
|
n()
|
|
}
|
|
)),
|
|
(r = a.invoke(r))instanceof Error)
|
|
throw r;
|
|
try {
|
|
window.dispatchEvent(new CustomEvent("get-radar-next-data",{
|
|
detail: {
|
|
kv: r
|
|
}
|
|
}))
|
|
} catch (t) {}
|
|
var s = !0;
|
|
if ("load" === r.key)
|
|
for (var c = 0; c < this.logQueueNext.length; c++) {
|
|
var u = this.logQueueNext[c];
|
|
if ("load" === u.key) {
|
|
Object.assign(u, r),
|
|
s = !1;
|
|
break
|
|
}
|
|
}
|
|
s && this.logQueueNext.push(r),
|
|
z("radarLogNext", JSON.parse(JSON.stringify(r))),
|
|
this.batchTimerNext || (this.logQueueNext.length > this.queueConfig.maxBatchLength ? this.flushNext() : this.batchTimerNext = window.setTimeout((function() {
|
|
e.flushNext(),
|
|
clearTimeout(e.batchTimerNext),
|
|
e.batchTimerNext = 0
|
|
}
|
|
), this.queueConfig.wait))
|
|
}
|
|
}
|
|
,
|
|
r.prototype.reportByHttp = function() {
|
|
var t, e = this.getCommonData(), n = {
|
|
project_id: null === (t = this.options) || void 0 === t ? void 0 : t.projectId,
|
|
radar_session_id: this.radarSessionIdNext,
|
|
h5_extra_attr: e.h5_extra_attr
|
|
}, r = this.logQueueNext.filter((function(t) {
|
|
return "load" === t.key
|
|
}
|
|
)), o = this.logQueueNext.filter((function(t) {
|
|
return "load" !== t.key
|
|
}
|
|
));
|
|
Array.isArray(r) && r.length && this.collectLog(n, r, "radarSDK"),
|
|
Array.isArray(o) && o.length && this.collectLog(n, o, "radarSDKSupplement")
|
|
}
|
|
,
|
|
r.prototype.collectLog = function(t, e, r) {
|
|
this.weblog.collect("RADAR", {
|
|
name: v,
|
|
params: n(n({}, t), {
|
|
data: a(e)
|
|
}),
|
|
serviceName: r
|
|
})
|
|
}
|
|
,
|
|
r.prototype.reportByBridge = function() {
|
|
var t = this.weblog.Utils.yoda;
|
|
if (!t)
|
|
return !1;
|
|
var e = this.logQueueNext.filter((function(t) {
|
|
return "load" === t.key
|
|
}
|
|
))
|
|
, n = this.logQueueNext.filter((function(t) {
|
|
return "load" !== t.key
|
|
}
|
|
));
|
|
if (!e.length && !n.length)
|
|
return !0;
|
|
try {
|
|
if (e.length) {
|
|
var r = e[0];
|
|
t.sendSummarizedLog({
|
|
key: "h5_load",
|
|
data: r
|
|
})
|
|
}
|
|
return n.length && t.sendRadarLog({
|
|
data: n
|
|
}),
|
|
!0
|
|
} catch (t) {
|
|
return !1
|
|
}
|
|
}
|
|
,
|
|
r
|
|
}(g), ct = function(t, e) {
|
|
this.radar = t,
|
|
this.options = e
|
|
}, ut = function(t) {
|
|
function n() {
|
|
var e = null !== t && t.apply(this, arguments) || this;
|
|
return e.key = "navigation",
|
|
e.logData = {},
|
|
e.logSended = !1,
|
|
e.saveWebviewEntry = {},
|
|
e.hasReportBase = !1,
|
|
e.record = {
|
|
fmp: !1,
|
|
base: !1,
|
|
webviewPerf: !1
|
|
},
|
|
e.loadTimeout = null,
|
|
e.gettingWebview = !1,
|
|
e.REPEAT_TIME = 5,
|
|
e.getWebviewTimes = e.REPEAT_TIME,
|
|
e.reportOnUnload = function(t) {
|
|
e.logSended || e.radar.isSupportedYodaConcat || (e.logSended = !0,
|
|
e.reportFirstScreen(Object.assign(e.logData, j)),
|
|
e.radar.logCollect(e.data),
|
|
"noflush" !== t && (e.radar.flush(),
|
|
e.radar.weblog.flush()))
|
|
}
|
|
,
|
|
e
|
|
}
|
|
return e(n, t),
|
|
Object.defineProperty(n.prototype, "sendImmediate", {
|
|
get: function() {
|
|
return this.record.fmp && this.record.base && this.record.webviewPerf && !(!(t = window.navigator.userAgent.match(/tbht\/([\w]+)/i)) || "0" === t[1]);
|
|
var t
|
|
},
|
|
enumerable: !1,
|
|
configurable: !0
|
|
}),
|
|
Object.defineProperty(n.prototype, "data", {
|
|
get: function() {
|
|
return this.sepDimension({
|
|
key: h.LOAD,
|
|
value: this.logData
|
|
})
|
|
},
|
|
enumerable: !1,
|
|
configurable: !0
|
|
}),
|
|
n.prototype.created = function() {
|
|
return o(this, void 0, void 0, (function() {
|
|
return i(this, (function(t) {
|
|
return [2]
|
|
}
|
|
))
|
|
}
|
|
))
|
|
}
|
|
,
|
|
n.prototype.when = function(t) {
|
|
if (t.custom) {
|
|
var e = (t.entry || {}).key;
|
|
return ["fmp", "play_clicked", "play_idr", "webViewPerf"].indexOf(e) > -1
|
|
}
|
|
return !t.entryType || "navigation" === t.entryType
|
|
}
|
|
,
|
|
n.prototype.getWebviewLoadData = function() {
|
|
return o(this, void 0, void 0, (function() {
|
|
var t, e, n, r, o, a, s;
|
|
return i(this, (function(i) {
|
|
switch (i.label) {
|
|
case 0:
|
|
return this.record.webviewPerf ? [2, !0] : (t = this.radar.weblog.Utils.yoda,
|
|
(n = t) ? [4, t.getWebviewLoadPerf()] : [3, 2]);
|
|
case 1:
|
|
n = i.sent(),
|
|
i.label = 2;
|
|
case 2:
|
|
return (e = n) && e.timeData ? (this.record.webviewPerf = !0,
|
|
r = e.timeData,
|
|
o = r.userStart,
|
|
a = r.pageStart,
|
|
s = r.created,
|
|
this.radar.webviewStart = "userStart",
|
|
this.radar.webviewStartTime = o,
|
|
o || (a ? (e.timeData.userStart = a,
|
|
this.radar.webviewStart = "pageStart",
|
|
this.radar.webviewStartTime = a) : (e.timeData.userStart = s,
|
|
this.radar.webviewStart = "created",
|
|
this.radar.webviewStartTime = s)),
|
|
this.onPerfReport({
|
|
custom: !0,
|
|
entry: {
|
|
key: "webViewPerf",
|
|
value: e.timeData
|
|
}
|
|
}),
|
|
[2, !0]) : [2, !1]
|
|
}
|
|
}
|
|
))
|
|
}
|
|
))
|
|
}
|
|
,
|
|
n.prototype.webviewPatch = function() {
|
|
return o(this, void 0, void 0, (function() {
|
|
return i(this, (function(t) {
|
|
switch (t.label) {
|
|
case 0:
|
|
return this.gettingWebview ? [2] : (this.gettingWebview = !0,
|
|
[4, this.repeatWebview()]);
|
|
case 1:
|
|
return t.sent(),
|
|
this.gettingWebview = !1,
|
|
[2]
|
|
}
|
|
}
|
|
))
|
|
}
|
|
))
|
|
}
|
|
,
|
|
n.prototype.repeatWebview = function() {
|
|
return o(this, void 0, void 0, (function() {
|
|
return i(this, (function(t) {
|
|
switch (t.label) {
|
|
case 0:
|
|
return [4, this.getWebviewLoadData()];
|
|
case 1:
|
|
return !t.sent() && this.getWebviewTimes > 0 ? (this.getWebviewTimes--,
|
|
[4, this.repeatWebview()]) : [3, 3];
|
|
case 2:
|
|
t.sent(),
|
|
t.label = 3;
|
|
case 3:
|
|
return this.getWebviewTimes = this.REPEAT_TIME,
|
|
[2]
|
|
}
|
|
}
|
|
))
|
|
}
|
|
))
|
|
}
|
|
,
|
|
n.prototype.onPerfReport = function(t) {
|
|
return o(this, void 0, void 0, (function() {
|
|
var e, n, r, o, a, s, c, u, l, d = this;
|
|
return i(this, (function(i) {
|
|
if (t.custom) {
|
|
if ((e = t.entry) && (n = e.key,
|
|
r = e.value,
|
|
o = t.renderTime,
|
|
"fmp" === n && (performance.timing.radarFmp = o,
|
|
this.record.fmp = !0,
|
|
u = F(performance.timing, N),
|
|
Object.assign(this.logData, ((l = {})[n] = r,
|
|
l), u),
|
|
this.webviewPatch(),
|
|
this.record.webviewPerf && (s = this.radar.generateLog(T, this.saveWebviewEntry),
|
|
Object.assign(this.logData, s))),
|
|
"webViewPerf" === n)) {
|
|
if (!(a = e.value))
|
|
return [2];
|
|
this.saveWebviewEntry = a,
|
|
s = this.radar.generateLog(T, a),
|
|
Object.assign(this.logData, s)
|
|
}
|
|
} else
|
|
c = this.radar.generateLog(w, t),
|
|
u = F(performance.timing, N),
|
|
Object.assign(this.logData, c, u),
|
|
this.record.base = !0;
|
|
return this.radar.isSupportedYodaConcat ? (this.webviewPatch(),
|
|
this.radar.logCollect(this.data)) : this.radar.isUsingDetachedReport && this.record.webviewPerf && this.record.fmp && this.record.base ? this.reportOnUnload("noflush") : this.record.fmp && this.record.base && !this.hasReportBase ? (clearTimeout(this.loadTimeout),
|
|
this.loadTimeout = null,
|
|
this.loadReport()) : !this.hasReportBase && this.record.base && (this.loadTimeout = setTimeout((function() {
|
|
d.loadReport(),
|
|
d.hasReportBase = !0
|
|
}
|
|
), 2e3)),
|
|
[2]
|
|
}
|
|
))
|
|
}
|
|
))
|
|
}
|
|
,
|
|
n.prototype.destroy = function() {
|
|
clearTimeout(this.delay)
|
|
}
|
|
,
|
|
n.prototype.sepDimension = function(t) {
|
|
var e = t.key
|
|
, n = t.value
|
|
, o = n.protocol;
|
|
return {
|
|
key: e,
|
|
value: r(n, ["protocol"]),
|
|
dimension: {
|
|
protocol: o,
|
|
sendImmediate: this.sendImmediate
|
|
}
|
|
}
|
|
}
|
|
,
|
|
n.prototype.reportFirstScreen = function(t) {
|
|
if (t.play_clicked && t.play_idr) {
|
|
var e = t.play_idr - t.play_clicked;
|
|
e > 0 && e < 6e4 && (this.logData.play_first_screen = e)
|
|
}
|
|
}
|
|
,
|
|
n.prototype.loadReport = function() {
|
|
Object.assign(this.logData, j),
|
|
this.radar.logCollect(Q(this.data)),
|
|
this.radar.flush(),
|
|
this.radar.weblog.flush()
|
|
}
|
|
,
|
|
n
|
|
}(ct);
|
|
!function(t) {
|
|
t.LOAD = "load",
|
|
t.RES = "resource",
|
|
t.API = "api",
|
|
t.ERROR = "error",
|
|
t.SDK_ERROR = "sdk_error",
|
|
t.CUSTOM = "custom",
|
|
t.BATCH = "batch",
|
|
t.EVENT = "event"
|
|
}(rt || (rt = {})),
|
|
function(t) {
|
|
t.SCRIPT = "script",
|
|
t.RES = "res",
|
|
t.API = "api",
|
|
t.VIDEO = "video"
|
|
}(ot || (ot = {}));
|
|
var lt = {
|
|
redirect: {
|
|
end: "redirectEnd",
|
|
start: "redirectStart"
|
|
},
|
|
dns: {
|
|
end: "domainLookupEnd",
|
|
start: "domainLookupStart"
|
|
},
|
|
dns_start: {
|
|
end: "domainLookupEnd",
|
|
start: "navigationStart"
|
|
},
|
|
tcp: {
|
|
end: "connectEnd",
|
|
start: "connectStart"
|
|
},
|
|
tcp_start: {
|
|
end: "connectEnd",
|
|
start: "navigationStart"
|
|
},
|
|
redirect_count: {
|
|
custom: function(t, e) {
|
|
return e.redirectCount
|
|
}
|
|
},
|
|
ssl: {
|
|
custom: function(t, e) {
|
|
var n = e;
|
|
return e.secureConnectionStart || e.requestStart || (n = performance.timing),
|
|
0 === n.secureConnectionStart ? 0 : n.requestStart - n.secureConnectionStart
|
|
}
|
|
},
|
|
ssl_start: {
|
|
custom: function(t, e) {
|
|
var n = e;
|
|
return e.secureConnectionStart || e.requestStart || (n = performance.timing),
|
|
0 === n.secureConnectionStart ? 0 : n.secureConnectionStart - n.redirectStart
|
|
}
|
|
},
|
|
ttfb: {
|
|
end: "responseStart",
|
|
start: "requestStart"
|
|
},
|
|
request_start: {
|
|
end: "requestStart",
|
|
start: "navigationStart"
|
|
},
|
|
trans: {
|
|
end: "responseEnd",
|
|
start: "responseStart"
|
|
},
|
|
dom_parse: {
|
|
end: "domInteractive",
|
|
start: "responseEnd"
|
|
},
|
|
dom_parse_start: {
|
|
end: "domInteractive",
|
|
start: "navigationStart"
|
|
},
|
|
blank: {
|
|
end: "domLoading",
|
|
start: "navigationStart"
|
|
},
|
|
fb: {
|
|
end: "responseStart",
|
|
start: "navigationStart"
|
|
},
|
|
dom_ready: {
|
|
end: "domContentLoadedEventEnd",
|
|
start: "navigationStart"
|
|
},
|
|
total: {
|
|
end: "loadEventStart",
|
|
start: "navigationStart"
|
|
},
|
|
resource: {
|
|
end: "loadEventStart",
|
|
start: "domInteractive"
|
|
},
|
|
fp: {
|
|
custom: function() {
|
|
if ("function" != typeof performance.getEntries)
|
|
return null;
|
|
var t = performance.getEntries().filter((function(t) {
|
|
return "first-paint" === t.name
|
|
}
|
|
))[0];
|
|
return t ? Math.ceil(t.startTime + t.duration) : null
|
|
}
|
|
},
|
|
js_cost: {
|
|
custom: function() {
|
|
if ("function" != typeof performance.getEntries)
|
|
return null;
|
|
var t = y()
|
|
, e = performance.getEntries()
|
|
, n = performance.getEntries().filter((function(t) {
|
|
return "navigation" === t.initiatorType
|
|
}
|
|
))[0]
|
|
, r = e.filter((function(t) {
|
|
return "script" === t.initiatorType
|
|
}
|
|
))[0]
|
|
, o = n ? n.domComplete : t.domComplete - t.navigationStart;
|
|
return r && o ? o - r.fetchStart : null
|
|
}
|
|
},
|
|
tti: {
|
|
end: "domInteractive",
|
|
start: "navigationStart"
|
|
},
|
|
protocol: {
|
|
custom: function(t, e) {
|
|
return e.nextHopProtocol
|
|
}
|
|
},
|
|
dom_num: {
|
|
custom: function() {
|
|
return "undefined" != typeof document ? document.all.length : null
|
|
}
|
|
}
|
|
}
|
|
, dt = {
|
|
fetch_start: {
|
|
custom: function(t, e) {
|
|
return Math.round(e.fetchStart)
|
|
},
|
|
noThrottle: !0
|
|
},
|
|
dns: {
|
|
end: "domainLookupEnd",
|
|
start: "domainLookupStart",
|
|
cachedSkip: !0
|
|
},
|
|
tcp: {
|
|
end: "connectEnd",
|
|
start: "connectStart",
|
|
cachedSkip: !0
|
|
},
|
|
ssl: {
|
|
cachedSkip: !0,
|
|
custom: function(t, e) {
|
|
return 0 === e.secureConnectionStart ? 0 : e.requestStart - e.secureConnectionStart
|
|
}
|
|
},
|
|
ttfb: {
|
|
end: "responseStart",
|
|
start: "requestStart",
|
|
cachedSkip: !0
|
|
},
|
|
trans: {
|
|
end: "responseEnd",
|
|
start: "responseStart",
|
|
cachedSkip: !0
|
|
},
|
|
fb: {
|
|
end: "responseStart",
|
|
start: "fetchStart",
|
|
cachedSkip: !0
|
|
},
|
|
total: {
|
|
end: "responseEnd",
|
|
start: "fetchStart"
|
|
},
|
|
duration: {
|
|
end: "responseEnd",
|
|
start: "fetchStart"
|
|
},
|
|
size: {
|
|
cachedSkip: !0,
|
|
custom: function(t, e) {
|
|
return e.encodedBodySize
|
|
},
|
|
noThrottle: !0
|
|
},
|
|
protocol: {
|
|
custom: function(t, e) {
|
|
return e.nextHopProtocol
|
|
}
|
|
},
|
|
file: {
|
|
custom: function(t, e) {
|
|
return e.name
|
|
},
|
|
noThrottle: !0
|
|
},
|
|
res_type: {
|
|
custom: function(t, e) {
|
|
return e.initiatorType
|
|
}
|
|
},
|
|
cached: {
|
|
custom: function(t, e) {
|
|
return 0 === e.transferSize || null == e.transferSize && 0 === e.domainLookupStart
|
|
},
|
|
noThrottle: !0
|
|
}
|
|
}
|
|
, pt = {
|
|
main_api: {
|
|
end: "apiEnd",
|
|
start: "apiStart"
|
|
},
|
|
main_api_offset: {
|
|
end: "apiStart",
|
|
start: "domLoading"
|
|
}
|
|
}
|
|
, ht = {
|
|
navigation_start_time: "navigationStart",
|
|
fetch_start_time: "fetchStart",
|
|
dns_start_time: "domainLookupStart",
|
|
dns_end_time: "domainLookupEnd",
|
|
connect_start_time: "connectStart",
|
|
ssl_start_time: "secureConnectionStart",
|
|
request_start_time: "requestStart",
|
|
response_start_time: "responseStart",
|
|
response_end_time: "responseEnd",
|
|
dom_interactive_time: "domInteractive",
|
|
dom_loading_time: "domLoading",
|
|
dom_ready_time: "domContentLoadedEventEnd",
|
|
load_event_time: "loadEventStart",
|
|
fmp_time: "radarFmp",
|
|
connect_end_time: "connectEnd",
|
|
load_event_end: "loadEventEnd",
|
|
dom_complete: "domComplete",
|
|
dom_content_loaded_event_start: "domContentLoadedEventStart",
|
|
redirect_start: "redirectStart",
|
|
redirect_end: "redirectEnd"
|
|
}
|
|
, mt = {
|
|
navigation_start: "startTime",
|
|
redirect_start: "redirectStart",
|
|
redirect_end: "redirectEnd",
|
|
dns_start: "domainLookupStart",
|
|
dns_end: "domainLookupEnd",
|
|
connect_start: "connectStart",
|
|
connect_end: "connectEnd",
|
|
ssl_start: "secureConnectionStart",
|
|
request_start: "requestStart",
|
|
response_start: "responseStart",
|
|
response_end: "responseEnd"
|
|
}
|
|
, ft = {
|
|
redirect_start: "redirectStart",
|
|
redirect_end: "redirectEnd",
|
|
dns_start: "domainLookupStart",
|
|
dns_end: "domainLookupEnd",
|
|
connect_start: "connectStart",
|
|
connect_end: "connectEnd",
|
|
ssl_start: "secureConnectionStart",
|
|
request_start: "requestStart",
|
|
response_start: "responseStart",
|
|
response_end: "responseEnd"
|
|
}
|
|
, gt = function(t) {
|
|
function n() {
|
|
var e = null !== t && t.apply(this, arguments) || this;
|
|
return e.key = "navigation-radar-plus",
|
|
e.logData = {},
|
|
e.isMainApi = !1,
|
|
e.hasReportMainApi = !1,
|
|
e
|
|
}
|
|
return e(n, t),
|
|
Object.defineProperty(n.prototype, "data", {
|
|
get: function() {
|
|
return this.sepDimension({
|
|
key: rt.LOAD,
|
|
value: this.logData
|
|
})
|
|
},
|
|
enumerable: !1,
|
|
configurable: !0
|
|
}),
|
|
n.prototype.created = function() {
|
|
return o(this, void 0, void 0, (function() {
|
|
return i(this, (function(t) {
|
|
return this.onPerfReport({
|
|
custom: !0,
|
|
entry: {
|
|
key: "radar_init",
|
|
value: null
|
|
}
|
|
}),
|
|
[2]
|
|
}
|
|
))
|
|
}
|
|
))
|
|
}
|
|
,
|
|
n.prototype.when = function(t) {
|
|
if (t.custom) {
|
|
var e = (t.entry || {}).key;
|
|
return ["fmp", "customPerf"].indexOf(e) > -1
|
|
}
|
|
return this.isMainApi = this.radar.mainApiResult.some((function(e) {
|
|
return e.url && t.name === e.url
|
|
}
|
|
)),
|
|
!(!this.isMainApi || "fetch" !== t.initiatorType && "xmlhttprequest" !== t.initiatorType || !this.radar.mainApiResult.filter((function(t) {
|
|
return t.url
|
|
}
|
|
)).every((function(t) {
|
|
return t.catch
|
|
}
|
|
)) || this.hasReportMainApi || (this.hasReportMainApi = !0,
|
|
!this.radar.hasFmp)) || (!t.entryType || "navigation" === t.entryType)
|
|
}
|
|
,
|
|
n.prototype.onPerfReport = function(t) {
|
|
return o(this, void 0, void 0, (function() {
|
|
var e, n, r, o, a, s, c, u = this;
|
|
return i(this, (function(i) {
|
|
if (t.custom) {
|
|
if ((e = t.entry) && (n = e.key,
|
|
r = e.value,
|
|
o = t.renderTime,
|
|
"radar_init" === n && Object.assign(this.logData, {
|
|
event_name: "radar_init"
|
|
}),
|
|
"fmp" === n && (performance.timing.radarFmp = o,
|
|
a = this.radar.generateLog(pt, performance.timing, !1),
|
|
Object.assign(this.logData, ((c = {})[n] = r,
|
|
c), {
|
|
event_name: "fmp"
|
|
}, a)),
|
|
"customPerf" === n && (s = {},
|
|
Object.keys(this.radar.customPerfList).forEach((function(t) {
|
|
s[t + "_time"] = u.radar.customPerfList[t].time
|
|
}
|
|
)),
|
|
Object.assign(this.logData, {
|
|
event_name: "h5_custom_metric",
|
|
custom_metric: JSON.stringify(s),
|
|
custom_metric_name: r,
|
|
custom_metric_timestamp: this.radar.customPerfList[r].time
|
|
}),
|
|
this.radar.customPerfList[r] && this.radar.customPerfList[r].options && !0 !== this.radar.customPerfList[r].options.sendTimeline)))
|
|
return [2]
|
|
} else
|
|
this.isMainApi ? Object.assign(this.logData, {
|
|
event_name: "main_api"
|
|
}) : Object.assign(this.logData, {
|
|
event_name: "h5_load"
|
|
});
|
|
return this.getCommonLog(t),
|
|
this.loadReport(),
|
|
[2]
|
|
}
|
|
))
|
|
}
|
|
))
|
|
}
|
|
,
|
|
n.prototype.destroy = function() {}
|
|
,
|
|
n.prototype.getCommonLog = function(t) {
|
|
var e = this.radar.generateLog(lt, t, !1)
|
|
, n = F(performance.timing, ht);
|
|
Object.assign(this.logData, e, n, {
|
|
main_api_list: this.radar.mainApiResult
|
|
})
|
|
}
|
|
,
|
|
n.prototype.sepDimension = function(t) {
|
|
var e = t.key
|
|
, n = t.value
|
|
, o = n.protocol
|
|
, i = n.event_name
|
|
, a = n.custom_metric
|
|
, s = n.custom_metric_name
|
|
, c = n.main_api_list;
|
|
return {
|
|
key: e,
|
|
value: r(n, ["protocol", "event_name", "custom_metric", "custom_metric_name", "main_api_list"]),
|
|
dimension: {
|
|
protocol: o,
|
|
event_name: i,
|
|
custom_metric: a,
|
|
custom_metric_name: s,
|
|
main_api_list: c
|
|
}
|
|
}
|
|
}
|
|
,
|
|
n.prototype.loadReport = function() {
|
|
Object.assign(this.logData, j),
|
|
this.collectAndFlush()
|
|
}
|
|
,
|
|
n.prototype.collectAndFlush = function() {
|
|
this.radar.logCollectNext(Q(this.data)),
|
|
this.radar.flushNext(),
|
|
this.radar.weblog.flush()
|
|
}
|
|
,
|
|
n
|
|
}(ct)
|
|
, yt = function(t) {
|
|
function n() {
|
|
var e = null !== t && t.apply(this, arguments) || this;
|
|
return e.key = "resource",
|
|
e.onResError = function(t) {
|
|
e.isScriptError(t) || e.radar.logCollect(e.sepDimension({
|
|
key: h.RES,
|
|
value: {
|
|
failed: !0,
|
|
file: t.target.src,
|
|
res_path: B(t.path || t.composedPath && t.composedPath())
|
|
}
|
|
}))
|
|
}
|
|
,
|
|
e
|
|
}
|
|
return e(n, t),
|
|
n.prototype.created = function() {
|
|
u(window, "error", this.onResError, !0)
|
|
}
|
|
,
|
|
n.prototype.when = function(t) {
|
|
return !H(t.name, this.radar.ignoreList) && "resource" === t.entryType && "fetch" !== t.initiatorType && "xmlhttprequest" !== t.initiatorType
|
|
}
|
|
,
|
|
n.prototype.isScriptError = function(t) {
|
|
return t.message || null != t.lineno
|
|
}
|
|
,
|
|
n.prototype.onPerfReport = function(t) {
|
|
var e = this.radar.generateLog(k, t);
|
|
this.radar.logCollect(this.sepDimension({
|
|
key: h.RES,
|
|
value: e
|
|
}))
|
|
}
|
|
,
|
|
n.prototype.destroy = function() {
|
|
l(window, "error", this.onResError, !0)
|
|
}
|
|
,
|
|
n.prototype.sepDimension = function(t) {
|
|
var e = t.key
|
|
, n = t.value
|
|
, o = n.protocol
|
|
, i = n.file
|
|
, a = n.cached
|
|
, s = n.res_path
|
|
, c = n.failed
|
|
, u = n.res_type;
|
|
return {
|
|
key: e,
|
|
value: r(n, ["protocol", "file", "cached", "res_path", "failed", "res_type"]),
|
|
dimension: {
|
|
protocol: o,
|
|
file: i,
|
|
cached: a,
|
|
failed: c,
|
|
res_path: s,
|
|
res_type: u
|
|
}
|
|
}
|
|
}
|
|
,
|
|
n
|
|
}(ct)
|
|
, vt = function(t) {
|
|
function o() {
|
|
var e = null !== t && t.apply(this, arguments) || this;
|
|
return e.key = "resource",
|
|
e.onResError = function(t) {
|
|
e.isScriptError(t) || e.radar.logCollectNext(e.sepDimension({
|
|
key: rt.RES,
|
|
value: {
|
|
failed: !0,
|
|
file: t.target.src || t.target.href,
|
|
res_path: B(t.path || t.composedPath && t.composedPath())
|
|
}
|
|
}))
|
|
}
|
|
,
|
|
e
|
|
}
|
|
return e(o, t),
|
|
o.prototype.created = function() {
|
|
u(window, "error", this.onResError, !0)
|
|
}
|
|
,
|
|
o.prototype.when = function(t) {
|
|
return !H(t.name, this.radar.ignoreList) && ("resource" === t.entryType && "fetch" !== t.initiatorType && "xmlhttprequest" !== t.initiatorType || "resource" === t.entryType && ("fetch" === t.initiatorType || "xmlhttprequest" === t.initiatorType) && ("js" === R(t.name) || "css" === R(t.name)))
|
|
}
|
|
,
|
|
o.prototype.isScriptError = function(t) {
|
|
return t.message || null != t.lineno
|
|
}
|
|
,
|
|
o.prototype.onPerfReport = function(t) {
|
|
var e = this.radar.generateLog(dt, t, !1)
|
|
, r = {
|
|
encoded_body_size: t.encodedBodySize + "",
|
|
decoded_body_size: t.decodedBodySize + ""
|
|
};
|
|
Object.keys(ft).forEach((function(e) {
|
|
r[e] = Number(t[ft[e]] + performance.timing.navigationStart).toFixed()
|
|
}
|
|
)),
|
|
this.radar.logCollectNext(this.sepDimension({
|
|
key: rt.RES,
|
|
value: n(n(n({}, e), r), {
|
|
failed: !1
|
|
})
|
|
}))
|
|
}
|
|
,
|
|
o.prototype.destroy = function() {
|
|
l(window, "error", this.onResError, !0)
|
|
}
|
|
,
|
|
o.prototype.sepDimension = function(t) {
|
|
var e = t.key
|
|
, n = t.value
|
|
, o = n.protocol
|
|
, i = n.file
|
|
, a = n.cached
|
|
, s = n.res_path
|
|
, c = n.failed
|
|
, u = n.res_type;
|
|
return {
|
|
key: e,
|
|
value: r(n, ["protocol", "file", "cached", "res_path", "failed", "res_type"]),
|
|
dimension: {
|
|
protocol: o,
|
|
file: i,
|
|
cached: a,
|
|
failed: c,
|
|
res_path: s,
|
|
res_type: u
|
|
}
|
|
}
|
|
}
|
|
,
|
|
o
|
|
}(ct);
|
|
function bt(t) {
|
|
return void 0 === t && (t = ""),
|
|
"__radar_" + t + Math.random().toString(36).substring(2, 8)
|
|
}
|
|
function St(t, e) {
|
|
var r = window.XMLHttpRequest;
|
|
return r ? (window.XMLHttpRequest = function() {
|
|
var o = new r;
|
|
o._radarRequest = Object.create(null),
|
|
o._radarResponse = Object.create(null);
|
|
var i = bt();
|
|
o._radarRequest.id = i;
|
|
var a = function() {
|
|
var t, e, n, r;
|
|
for (t in o._radarResponse.status = o.status,
|
|
o._radarResponse.statusText = o.statusText,
|
|
r = function(t, e) {
|
|
switch (null == e && (e = {}),
|
|
typeof t) {
|
|
case "object":
|
|
var n = [];
|
|
for (var r in t) {
|
|
var o = t[r]
|
|
, i = r.toLowerCase();
|
|
n.push(i + ":\t" + o)
|
|
}
|
|
return n.join("\n") + "\n";
|
|
case "string":
|
|
for (var a = 0, s = (n = t.split("\n")).length; a < s; a++) {
|
|
var c = n[a];
|
|
if (/([^:]+):\s*(.+)/.test(c)) {
|
|
var u = RegExp.$1
|
|
, l = null != u ? u.toLowerCase() : void 0;
|
|
o = RegExp.$2,
|
|
null == e[l] && (e[l] = o)
|
|
}
|
|
}
|
|
return e
|
|
}
|
|
}(o.getAllResponseHeaders()))
|
|
n = r[t],
|
|
o._radarResponse && o._radarResponse.headers && !o._radarResponse.headers[t] && (e = t.toLowerCase(),
|
|
o._radarResponse.headers[e] = n)
|
|
};
|
|
if (o.addEventListener("readystatechange", (function() {
|
|
switch (o.readyState) {
|
|
case 4:
|
|
"function" == typeof e && (a(),
|
|
function() {
|
|
if (o.responseType && "text" !== o.responseType)
|
|
"document" === o.responseType ? (o._radarResponse.xml = o.responseXML,
|
|
o._radarResponse.data = o.responseXML) : o._radarResponse.data = o.response;
|
|
else {
|
|
o._radarResponse.text = o.responseText,
|
|
o._radarResponse.data = o.responseText;
|
|
try {
|
|
o._radarResponse.xml = o.responseXML
|
|
} catch (t) {}
|
|
}
|
|
"responseURL"in o && (o._radarResponse.finalUrl = o.responseURL)
|
|
}(),
|
|
e(o._radarRequest, o._radarResponse))
|
|
}
|
|
}
|
|
)),
|
|
"function" == typeof o.open) {
|
|
var s = o.open;
|
|
o.open = function(t, e, r, o, i) {
|
|
var a = [].slice.call(arguments);
|
|
return this._radarRequest = n({
|
|
method: t,
|
|
url: e,
|
|
async: r,
|
|
user: o,
|
|
pass: i
|
|
}, this._radarRequest),
|
|
this._radarResponse.headers = {},
|
|
s.apply(this, a)
|
|
}
|
|
}
|
|
if ("function" == typeof o.send) {
|
|
var c = o.send;
|
|
o.send = function() {
|
|
var e = [].slice.call(arguments);
|
|
return "function" == typeof t && t(this._radarRequest),
|
|
c.apply(this, e)
|
|
}
|
|
}
|
|
return o
|
|
}
|
|
,
|
|
["DONE", "HEADERS_RECEIVED", "LOADING", "OPENED", "UNSENT"].forEach((function(t) {
|
|
window.XMLHttpRequest[t] = r[t]
|
|
}
|
|
)),
|
|
window.XMLHttpRequest.prototype = r.prototype,
|
|
function() {
|
|
r && (window.XMLHttpRequest = r)
|
|
}
|
|
) : (c("HAS NOT XMLHttpRequest!"),
|
|
!1)
|
|
}
|
|
function wt(t, e) {
|
|
var n = function(t) {
|
|
if ("function" != typeof t.fetch)
|
|
return null;
|
|
var e = t.fetch;
|
|
return t.fetch = function(t) {
|
|
return function() {
|
|
for (var e = [], n = 0; n < arguments.length; n++)
|
|
e[n] = arguments[n];
|
|
return kt.apply(void 0, a([t], e))
|
|
}
|
|
}(t.fetch),
|
|
{
|
|
register: function(t) {
|
|
return Lt.push(t),
|
|
function() {
|
|
var e = Lt.indexOf(t);
|
|
e >= 0 && Lt.splice(e, 1)
|
|
}
|
|
},
|
|
clear: function() {
|
|
Lt = []
|
|
},
|
|
unRegister: function() {
|
|
e && (t.fetch = e)
|
|
}
|
|
}
|
|
}("function" == typeof importScripts ? self : window);
|
|
return n && n.register({
|
|
request: function(e, n) {
|
|
"function" == typeof t && t(e)
|
|
},
|
|
response: function(t, n) {
|
|
"function" == typeof e && e(n, t)
|
|
},
|
|
responseError: function(t, n) {
|
|
"function" == typeof e && e(n, {
|
|
status: 0,
|
|
statusText: t
|
|
})
|
|
}
|
|
}),
|
|
null == n ? void 0 : n.unRegister
|
|
}
|
|
var Lt = [];
|
|
function kt(t) {
|
|
for (var e = [], n = 1; n < arguments.length; n++)
|
|
e[n - 1] = arguments[n];
|
|
var r = Lt.reduce((function(t, e) {
|
|
return [e].concat(t)
|
|
}
|
|
), [])
|
|
, o = "string" == typeof e[0] ? new Request(e[0],e[1]) : e[0];
|
|
o.id = bt(),
|
|
r.forEach((function(t) {
|
|
var e = t.request;
|
|
o = e(o) || o
|
|
}
|
|
));
|
|
var i = t.apply(void 0, e)
|
|
, a = null;
|
|
return i.then((function(t) {
|
|
t = t.clone(),
|
|
a = t;
|
|
var e = t.headers.get("content-type");
|
|
return e && (e.indexOf("application/json") > -1 || e.indexOf("text/html") > -1) ? t.clone().text() : "[object Object]"
|
|
}
|
|
)).then((function(t) {
|
|
var e = a.clone();
|
|
return e.data = t,
|
|
r.forEach((function(t) {
|
|
var n = t.response;
|
|
n && (e = n(e, o) || e)
|
|
}
|
|
)),
|
|
a.clone()
|
|
}
|
|
), (function(t) {
|
|
throw r.forEach((function(e) {
|
|
var n = e.responseError;
|
|
n && (t = n(t, o) || t)
|
|
}
|
|
)),
|
|
t
|
|
}
|
|
))
|
|
}
|
|
var xt = function(t) {
|
|
function o() {
|
|
var e = null !== t && t.apply(this, arguments) || this;
|
|
return e.queue = [],
|
|
e.key = "api",
|
|
e.logList = [],
|
|
e.perfList = [],
|
|
e.unhookXML = null,
|
|
e.unhookFetch = null,
|
|
e.beforeHook = function(t) {
|
|
if (!H(t.url, e.radar.ignoreList) && "js" !== R(t.url) && "css" !== R(t.url)) {
|
|
var n = {
|
|
api: e.requestURLCompletion(t.url),
|
|
method: t.method,
|
|
request: t,
|
|
startTime: Date.now()
|
|
};
|
|
e.queue.push(n)
|
|
}
|
|
}
|
|
,
|
|
e.afterHook = function(t, o) {
|
|
var i = e.queue.filter((function(e) {
|
|
return e.request === t
|
|
}
|
|
))[0];
|
|
if (i) {
|
|
var a = nt(i.api, e.radar.mainApiList);
|
|
a > -1 && !e.radar.hasFmp && (e.radar.mainApiResult[a].url = i.api),
|
|
delete i.request;
|
|
var s = i.startTime
|
|
, c = r(i, ["startTime"])
|
|
, u = Date.now()
|
|
, l = u - s + ""
|
|
, d = o.status;
|
|
"function" == typeof e.options.customizeRadarStatus && (d = e.options.customizeRadarStatus(o));
|
|
var p = e.customHook({
|
|
request: t,
|
|
response: o,
|
|
duration: l
|
|
})
|
|
, m = Tt(o.headers)
|
|
, f = n(n({
|
|
duration: l,
|
|
logTime: Date.now().toString(),
|
|
total: l,
|
|
status: d,
|
|
size: +m + "",
|
|
custom_failed: !(d >= 200 && d < 300)
|
|
}, c), p);
|
|
"string" == typeof o.text && (f.responseData = o.text);
|
|
var g = n(n({}, o), {
|
|
status: d
|
|
});
|
|
if (e.isResponseError(g))
|
|
e.radar.logCollect(e.sepDimension({
|
|
key: h.API,
|
|
value: f
|
|
})),
|
|
e.radar.logCollectNext(e.sepDimension({
|
|
key: h.API,
|
|
value: f
|
|
}));
|
|
else {
|
|
if (!e.radar.hasFmp) {
|
|
var y = performance.timing.apiStart;
|
|
performance.timing.apiStart = y ? Math.min(y, s) : s;
|
|
var v = performance.timing.apiEnd;
|
|
performance.timing.apiEnd = v ? Math.max(v, u) : u
|
|
}
|
|
!e.mergeAPIPerf(null, f) && e.logList.push(f)
|
|
}
|
|
e.queue = e.queue.filter((function(e) {
|
|
return e.request && e.request !== t
|
|
}
|
|
))
|
|
}
|
|
}
|
|
,
|
|
e
|
|
}
|
|
return e(o, t),
|
|
o.prototype.when = function(t) {
|
|
return !H(t.name, this.radar.ignoreList) && "resource" === t.entryType && ("fetch" === t.initiatorType || "xmlhttprequest" === t.initiatorType) && "js" !== R(t.name) && "css" !== R(t.name)
|
|
}
|
|
,
|
|
o.prototype.onPerfReport = function(t) {
|
|
var e = this.radar.generateLog(L, t, !1);
|
|
e.perfTime = Date.now().toString();
|
|
var r = {
|
|
encoded_body_size: t.encodedBodySize && t.encodedBodySize + "",
|
|
decoded_body_size: t.decodedBodySize && t.decodedBodySize + ""
|
|
};
|
|
Object.keys(mt).forEach((function(e) {
|
|
r[e] = Number(t[mt[e]] + performance.timing.navigationStart).toFixed()
|
|
}
|
|
));
|
|
var o = n(n({}, e), {
|
|
api: e.file,
|
|
apiTime: r
|
|
});
|
|
!this.mergeAPIPerf(o) && this.perfList.push(o)
|
|
}
|
|
,
|
|
o.prototype.mergeAPIPerf = function(t, e) {
|
|
var r = t || e
|
|
, o = t ? this.logList : this.perfList;
|
|
if (!r)
|
|
return !1;
|
|
for (var i = -1, a = 0, s = o.length; a < s; a++) {
|
|
var c = o[a]
|
|
, u = (r.api || "").replace(/\?.+$/, "")
|
|
, l = (c.api || "").replace(/\?.+$/, "")
|
|
, d = r.size;
|
|
if (u === l) {
|
|
Object.assign(r, c);
|
|
var m = nt(u, this.radar.mainApiList);
|
|
m > -1 && !0 !== this.radar.mainApiResult[m].catch && (this.radar.mainApiResult[m] = n(n({}, r.apiTime), {
|
|
url: r.api,
|
|
status: r.status,
|
|
size_radar: r.size,
|
|
cached: r.cached,
|
|
method: r.method,
|
|
catch: !0,
|
|
perfTime: r.perfTime
|
|
})),
|
|
Object.assign(r, r.apiTime),
|
|
delete r.file,
|
|
d && (r.size = d),
|
|
!r.size && r.responseData && (r.size = p(r.responseData)),
|
|
delete r.responseData,
|
|
i = a
|
|
}
|
|
}
|
|
return -1 !== i && (o.splice(i, 1),
|
|
this.radar.logCollect(this.sepDimension({
|
|
key: h.API,
|
|
value: r
|
|
})),
|
|
this.radar.logCollectNext(this.sepDimension(Q({
|
|
key: h.API,
|
|
value: r
|
|
}))),
|
|
!0)
|
|
}
|
|
,
|
|
o.prototype.sepDimension = function(t) {
|
|
var e = t.key
|
|
, n = t.value
|
|
, o = n.res_type
|
|
, i = n.protocol
|
|
, a = n.cached
|
|
, s = n.custom_failed
|
|
, c = n.status
|
|
, u = n.api
|
|
, l = n.method
|
|
, d = n.response_code
|
|
, p = n.response_msg;
|
|
return n.apiTime,
|
|
{
|
|
key: e,
|
|
value: r(n, ["res_type", "protocol", "cached", "custom_failed", "status", "api", "method", "response_code", "response_msg", "apiTime"]),
|
|
dimension: {
|
|
res_type: o,
|
|
protocol: i,
|
|
api: u,
|
|
custom_failed: s,
|
|
status: c,
|
|
cached: a,
|
|
method: l,
|
|
response_code: d,
|
|
response_msg: p
|
|
}
|
|
}
|
|
}
|
|
,
|
|
o.prototype.requestURLCompletion = function(t) {
|
|
var e = document.location
|
|
, n = e.protocol
|
|
, r = e.host;
|
|
return 0 === t.indexOf("//") ? n + t : 0 === t.indexOf("/") ? n + "//" + r + t : t
|
|
}
|
|
,
|
|
o.prototype.isResponseError = function(t) {
|
|
return 0 === t.status
|
|
}
|
|
,
|
|
o.prototype.created = function() {
|
|
this.unhookXML = St(this.beforeHook, this.afterHook),
|
|
this.unhookFetch = wt(this.beforeHook, this.afterHook)
|
|
}
|
|
,
|
|
o.prototype.destroy = function() {
|
|
this.unhookXML && this.unhookXML(),
|
|
this.unhookFetch && this.unhookFetch()
|
|
}
|
|
,
|
|
o.prototype.customHook = function(t) {
|
|
var e = {};
|
|
if ("function" != typeof this.options.APIHook)
|
|
return e;
|
|
var n = {};
|
|
try {
|
|
n = this.options.APIHook(t)
|
|
} catch (t) {
|
|
return {}
|
|
}
|
|
if (!n)
|
|
return e;
|
|
var r = n.response_msg
|
|
, o = n.response_code
|
|
, i = n.status
|
|
, a = n.custom_failed;
|
|
try {
|
|
e.response_msg = JSON.stringify(r).slice(0, 100)
|
|
} catch (t) {
|
|
e.response_msg = "radar error: \u4f20\u5165\u7684response_msg\u6709\u9519\u8bef"
|
|
}
|
|
return e.response_code = Number(o),
|
|
void 0 !== i && (e.status = i),
|
|
void 0 !== a && (e.custom_failed = a),
|
|
e
|
|
}
|
|
,
|
|
o
|
|
}(ct);
|
|
function Tt(t) {
|
|
return t ? "function" == typeof t.get ? +t.get("Content-Length") || 0 : +t["content-length"] || 0 : 0
|
|
}
|
|
var Nt = [];
|
|
function _t(t, e) {
|
|
Gt(e) >= 0 || (Nt.push(e),
|
|
setTimeout((function() {
|
|
Nt.splice(Gt(e), 1)
|
|
}
|
|
), 2e3),
|
|
Pt(t, e))
|
|
}
|
|
function Pt(t, e) {
|
|
var n = function(t) {
|
|
var e = h.ERROR
|
|
, n = t.error_cons_type
|
|
, o = t.file
|
|
, i = t.error_type
|
|
, a = t.msg
|
|
, s = t.col
|
|
, c = t.line
|
|
, u = t.stack
|
|
, l = r(t, ["error_cons_type", "file", "error_type", "msg", "col", "line", "stack"]);
|
|
return {
|
|
key: e,
|
|
value: l,
|
|
dimension: {
|
|
error_cons_type: n,
|
|
file: o,
|
|
error_type: i,
|
|
msg: a,
|
|
col: s,
|
|
line: c,
|
|
stack: u
|
|
}
|
|
}
|
|
}(e);
|
|
t.logCollect(n)
|
|
}
|
|
function Gt(t) {
|
|
for (var e = 0; e < Nt.length; e++)
|
|
if (n = Nt[e],
|
|
r = t,
|
|
n.msg === r.msg && n.stack === r.stack && n.file === r.file && n.line === r.line && n.col === r.col)
|
|
return e;
|
|
var n, r;
|
|
return -1
|
|
}
|
|
function Zt(t) {
|
|
return t.message || null != t.lineno
|
|
}
|
|
function Et(t, e, n) {
|
|
var r, o, i, a;
|
|
return (a = e) && (a instanceof Error || "object" == typeof a && "string" == typeof a.message) ? (r = e.name || "ErrorLikeObject",
|
|
o = e.message || "",
|
|
i = e.stack || void 0) : !function(t, e) {
|
|
return null == t && "Script error." === (null == e ? void 0 : e.message)
|
|
}(e, n) ? (r = null == e ? "" + e : typeof e,
|
|
o = "* " + t + " with value: " + function(t) {
|
|
var e;
|
|
try {
|
|
e = t.toString()
|
|
} catch (t) {}
|
|
return "string" != typeof e || "" === e ? e = null === t ? "<NULL>" : void 0 === t ? "<UNDEFINED>" : "" === e ? "<EMPTY>" : "<UNKNOWN>" : e.length > 2e3 && (e = e.substring(0, 2e3) + "<<< \u2026\u2026"),
|
|
e
|
|
}(e) + "\n -- by WebLogger Radar Plugin") : (r = "CrossOriginError",
|
|
o = "* cross origin " + t + " with message: " + ((null == n ? void 0 : n.message) || "<UNKNOWN>") + "\n -- by WebLogger Radar Plugin"),
|
|
{
|
|
error_type: f.SCRIPT,
|
|
error_cons_type: r,
|
|
msg: o,
|
|
stack: i
|
|
}
|
|
}
|
|
var Ct = function(t) {
|
|
function r() {
|
|
var e = null !== t && t.apply(this, arguments) || this;
|
|
return e.key = "error",
|
|
e.onError = function(t) {
|
|
if (Zt(t)) {
|
|
var r = n(n({}, Et("global error", t.error, t)), {
|
|
file: t.filename,
|
|
line: t.lineno,
|
|
col: t.colno
|
|
});
|
|
_t(e.radar, r)
|
|
}
|
|
}
|
|
,
|
|
e.onPromiseError = function(t) {
|
|
var n = Et("promise error", t.reason);
|
|
_t(e.radar, n)
|
|
}
|
|
,
|
|
e
|
|
}
|
|
return e(r, t),
|
|
r.prototype.when = function(t) {
|
|
if (t.custom) {
|
|
var e = (t.entry || {}).key;
|
|
if (["play_block", "play_error"].indexOf(e) > -1)
|
|
return !0
|
|
}
|
|
return !1
|
|
}
|
|
,
|
|
r.prototype.onPerfReport = function(t) {
|
|
if (t.custom) {
|
|
var e = t.entry || {}
|
|
, n = e.key
|
|
, r = e.value;
|
|
Pt(this.radar, {
|
|
error_type: f.VIDEO,
|
|
error_cons_type: n,
|
|
msg: r
|
|
})
|
|
}
|
|
}
|
|
,
|
|
r.prototype.created = function() {
|
|
u(window, "error", this.onError, !0),
|
|
u(window, "unhandledrejection", this.onPromiseError)
|
|
}
|
|
,
|
|
r.prototype.destroy = function() {
|
|
l(window, "error", this.onError, !0),
|
|
l(window, "unhandledrejection", this.onPromiseError)
|
|
}
|
|
,
|
|
r
|
|
}(ct)
|
|
, It = [];
|
|
function Kt(t, e) {
|
|
Wt(e) >= 0 || (It.push(e),
|
|
setTimeout((function() {
|
|
It.splice(Wt(e), 1)
|
|
}
|
|
), 2e3),
|
|
Xt(t, e))
|
|
}
|
|
function Xt(t, e) {
|
|
var n = function(t) {
|
|
var e = rt.ERROR
|
|
, n = t.error_cons_type
|
|
, o = t.file
|
|
, i = t.error_type
|
|
, a = t.msg
|
|
, s = t.col
|
|
, c = t.line
|
|
, u = t.stack
|
|
, l = r(t, ["error_cons_type", "file", "error_type", "msg", "col", "line", "stack"]);
|
|
return {
|
|
key: e,
|
|
value: l,
|
|
dimension: {
|
|
error_cons_type: n,
|
|
file: o,
|
|
error_type: i,
|
|
msg: a,
|
|
col: s,
|
|
line: c,
|
|
stack: u
|
|
}
|
|
}
|
|
}(e);
|
|
t.logCollectNext(n)
|
|
}
|
|
function Wt(t) {
|
|
for (var e = 0; e < It.length; e++)
|
|
if (n = It[e],
|
|
r = t,
|
|
n.msg === r.msg && n.stack === r.stack && n.file === r.file && n.line === r.line && n.col === r.col)
|
|
return e;
|
|
var n, r;
|
|
return -1
|
|
}
|
|
function Mt(t) {
|
|
return t.message || null != t.lineno
|
|
}
|
|
function Ot(t, e, n) {
|
|
var r, o, i, a;
|
|
return (a = e) && (a instanceof Error || "object" == typeof a && "string" == typeof a.message) ? (r = e.name || "ErrorLikeObject",
|
|
o = e.message || "",
|
|
i = e.stack || void 0) : !function(t, e) {
|
|
return null == t && "Script error." === (null == e ? void 0 : e.message)
|
|
}(e, n) ? null === e && (null == n ? void 0 : n.message) && "Uncaught null" !== n.message ? (r = "Error",
|
|
o = t + " - message: " + n.message) : (r = null == e ? "" + e : typeof e,
|
|
o = t + " - value: " + function(t) {
|
|
var e;
|
|
try {
|
|
e = t.toString()
|
|
} catch (t) {}
|
|
return "string" != typeof e || "" === e ? e = null === t ? "<NULL>" : void 0 === t ? "<UNDEFINED>" : "" === e ? "<EMPTY>" : "<UNKNOWN>" : e.length > 2e3 && (e = e.substring(0, 2e3) + "<<< \u2026\u2026"),
|
|
e
|
|
}(e)) : (r = "CrossOriginError",
|
|
o = t + " - message: " + ((null == n ? void 0 : n.message) || "<UNKNOWN>")),
|
|
{
|
|
error_type: ot.SCRIPT,
|
|
error_cons_type: r,
|
|
msg: o,
|
|
stack: i
|
|
}
|
|
}
|
|
var Ut = function(t) {
|
|
function r() {
|
|
var e = null !== t && t.apply(this, arguments) || this;
|
|
return e.key = "error",
|
|
e.onError = function(t) {
|
|
if (Mt(t)) {
|
|
var r = n(n({}, Ot("Global Uncaught Exception", t.error, t)), {
|
|
file: t.filename,
|
|
line: t.lineno,
|
|
col: t.colno
|
|
});
|
|
Kt(e.radar, r)
|
|
}
|
|
}
|
|
,
|
|
e.onPromiseError = function(t) {
|
|
var n = Ot("Unhandled Promise Rejection", t.reason);
|
|
Kt(e.radar, n)
|
|
}
|
|
,
|
|
e
|
|
}
|
|
return e(r, t),
|
|
r.prototype.when = function(t) {
|
|
if (t.custom) {
|
|
var e = (t.entry || {}).key;
|
|
if (["play_block", "play_error"].indexOf(e) > -1)
|
|
return !0
|
|
}
|
|
return !1
|
|
}
|
|
,
|
|
r.prototype.onPerfReport = function(t) {
|
|
if (t.custom) {
|
|
var e = t.entry || {}
|
|
, n = e.key
|
|
, r = e.value;
|
|
Xt(this.radar, {
|
|
error_type: ot.VIDEO,
|
|
error_cons_type: n,
|
|
msg: r
|
|
})
|
|
}
|
|
}
|
|
,
|
|
r.prototype.created = function() {
|
|
u(window, "error", this.onError, !0),
|
|
u(window, "unhandledrejection", this.onPromiseError)
|
|
}
|
|
,
|
|
r.prototype.destroy = function() {
|
|
l(window, "error", this.onError, !0),
|
|
l(window, "unhandledrejection", this.onPromiseError)
|
|
}
|
|
,
|
|
r
|
|
}(ct)
|
|
, Rt = ["play_block", "play_error"]
|
|
, Ht = ["c_dimension1", "c_dimension2", "c_dimension3"]
|
|
, Dt = ["main_data_receive_end"];
|
|
return function(t) {
|
|
function n(e, n) {
|
|
var r = t.call(this, e, n) || this;
|
|
return r.radarIgnoreList = ["https://web-trace.ksapisrv.com/ktrace/collect"],
|
|
r.radarFmp = 0,
|
|
r.customReported = [],
|
|
r.customKeyList = [],
|
|
r.timelineLastTime = null,
|
|
r.action = {
|
|
start: function(t) {
|
|
et(t),
|
|
r.event({
|
|
name: t.name,
|
|
extra_info: t.extra_info || "",
|
|
event_type: "radar_action_start"
|
|
})
|
|
},
|
|
end: function(t) {
|
|
et(t),
|
|
r.event({
|
|
name: t.name,
|
|
extra_info: t.extra_info || "",
|
|
result_type: t.result_type || "",
|
|
event_type: "radar_action_end"
|
|
})
|
|
}
|
|
},
|
|
r.validOption() ? (r.options && r.options.unuseResourcePlugin || (r.use(yt, r),
|
|
r.use(vt, r)),
|
|
r.options && r.options.unuseAPIPlugin || r.use(xt, r),
|
|
r.options && r.options.unuseErrorPlugin || (r.use(Ct, r),
|
|
r.use(Ut, r)),
|
|
r.use(ut, r),
|
|
r.use(gt, r),
|
|
r) : r
|
|
}
|
|
return e(n, t),
|
|
n.samplingControl = function(t) {
|
|
if (!t)
|
|
return !1;
|
|
var e = Math.random();
|
|
return "number" == typeof t ? e < t : e < t.sampling
|
|
}
|
|
,
|
|
n.prototype.collect = function(t, e) {
|
|
if (0 !== t.indexOf("c_") && Dt.indexOf(t) < 0)
|
|
c("[error 305]", "[Radar] \u4f20\u5165\u7684\u81ea\u5b9a\u4e49\u6307\u6807 " + t + " \u5fc5\u987b\u4e3a c_ \u5f00\u5934");
|
|
else if (Dt.indexOf(t) > -1)
|
|
this.handleCollectKey(t);
|
|
else {
|
|
s("[radar]:Radar+\u4e4b\u540e\u5c06\u4e0d\u518d\u652f\u6301collect\u65b9\u6cd5\uff0c\u8bf7\u7528event\u65b9\u6cd5\u66ff\u4ee3\u3002");
|
|
var n = {
|
|
key: h.CUSTOM,
|
|
value: {
|
|
metric_value: e
|
|
},
|
|
dimension: {
|
|
metric_name: t
|
|
}
|
|
};
|
|
this.logCollect(n),
|
|
this.logCollectNext({
|
|
key: h.EVENT,
|
|
value: {
|
|
duration: e
|
|
},
|
|
dimension: {
|
|
name: t
|
|
}
|
|
})
|
|
}
|
|
}
|
|
,
|
|
n.prototype.handleCollectKey = function(t) {
|
|
switch (t) {
|
|
case "main_data_receive_end":
|
|
var e = Date.now();
|
|
try {
|
|
performance.timing && (performance.timing[t] = e)
|
|
} catch (t) {}
|
|
z(t, e)
|
|
}
|
|
}
|
|
,
|
|
n.prototype.reportTimePoint = function(t, e) {
|
|
if (this.customReported.indexOf(t) > -1)
|
|
return null;
|
|
-1 === Rt.indexOf(t) && this.customReported.push(t);
|
|
var n = e;
|
|
if ("string" != typeof e) {
|
|
var r = function(t) {
|
|
var e = "undefined" != typeof window ? window.performance : null;
|
|
if (!e)
|
|
return {
|
|
value: null
|
|
};
|
|
if (null != t)
|
|
return {
|
|
value: t - e.timing.navigationStart,
|
|
detail: {
|
|
start: "navigationStart",
|
|
startPoint: e.timing.navigationStart,
|
|
end: "customTime",
|
|
endPoint: t
|
|
}
|
|
};
|
|
if ("function" == typeof e.now)
|
|
return {
|
|
value: e.now(),
|
|
detail: {
|
|
start: "navigationStart",
|
|
startPoint: e.timing.navigationStart,
|
|
end: "perfNowAPI",
|
|
endPoint: e.now()
|
|
}
|
|
};
|
|
var n = Date.now();
|
|
return {
|
|
value: n - e.timing.navigationStart,
|
|
detail: {
|
|
start: "navigationStart",
|
|
startPoint: e.timing.navigationStart,
|
|
end: "dateNow",
|
|
endPoint: n
|
|
}
|
|
}
|
|
}(e);
|
|
if (null == r.value)
|
|
return;
|
|
n = this.throttle(r.value, r.detail, "fmp", r.detail)
|
|
}
|
|
return null != n ? (this.reportPerformance({
|
|
custom: !0,
|
|
entry: {
|
|
key: t,
|
|
value: n
|
|
},
|
|
renderTime: e
|
|
}),
|
|
n) : void 0
|
|
}
|
|
,
|
|
n.prototype.fmp = function(t) {
|
|
if (t && "number" != typeof t)
|
|
c("[radar]: fmp\u65b9\u6cd5\u5165\u53c2\u8bf7\u4f20\u65f6\u95f4\u6233\uff0c\u6216\u9009\u62e9\u4e0d\u4f20\uff01");
|
|
else {
|
|
this.radarFmp = t || Date.now();
|
|
var e = this.reportTimePoint("fmp", this.radarFmp);
|
|
if (e) {
|
|
this.hasFmp = !0;
|
|
try {
|
|
performance.timing && (performance.timing.fmp = e,
|
|
performance.timing.radarFmp = this.radarFmp)
|
|
} catch (t) {}
|
|
z("fmp", e);
|
|
var n = {
|
|
key: h.CUSTOM,
|
|
value: {
|
|
fmp: e,
|
|
fmp_time: this.radarFmp,
|
|
merge: !0
|
|
}
|
|
};
|
|
this.logCollect(n),
|
|
this.logCollectNext({
|
|
key: h.EVENT,
|
|
value: {
|
|
duration: e
|
|
},
|
|
dimension: {
|
|
name: "fmp"
|
|
}
|
|
})
|
|
}
|
|
}
|
|
}
|
|
,
|
|
n.prototype.event = function(t, e) {
|
|
if (t && t.name)
|
|
if ("string" == typeof t.name) {
|
|
t.name.length > 127 && (c("[radar]:\u4e8b\u4ef6\u540d\u79f0\u957f\u5ea6\u4e0d\u80fd\u8d85\u8fc7127\u5b57\u7b26\uff0c\u8d85\u8fc7\u4f1a\u622a\u53d6\u540e\u4e0a\u62a5\uff0c\u8bf7\u9650\u5236"),
|
|
t.name = t.name.slice(0, 127));
|
|
var n = A();
|
|
t.extra_info && t.extra_info instanceof Object && (t.extra_info = JSON.stringify(t.extra_info)),
|
|
void 0 === t.yoda_version && (t.yoda_version = n.Yoda || ""),
|
|
void 0 === t.webview_type && (t.webview_type = J());
|
|
var r = {
|
|
key: h.EVENT,
|
|
value: e,
|
|
dimension: t
|
|
};
|
|
this.logCollect(r),
|
|
this.logCollectNext(r)
|
|
} else
|
|
c("[radar]:name\u5b57\u6bb5\u9700\u8981\u4e3aString\u7c7b\u578b");
|
|
else
|
|
c("[radar]:\u4e8b\u4ef6\u540d\u79f0\u4e3a\u5fc5\u586b\u5b57\u6bb5\uff0c\u7528\u4e8e\u76d1\u63a7\u5c55\u793a\u3001\u62a5\u8b66\u914d\u7f6e\uff0c\u8bf7\u586b\u5199")
|
|
}
|
|
,
|
|
n.prototype.customStage = function(t, e) {
|
|
if (!(this.customKeyList.length > 2)) {
|
|
if (e = e || {
|
|
sendTimeline: !0
|
|
},
|
|
this.customKeyList.indexOf(t) > -1)
|
|
return null;
|
|
this.customKeyList.push(t);
|
|
var n = Date.now();
|
|
"production" !== this.weblog.logConfig.env && (this.timelineLastTime ? this.timelineLastTime : this.timelineLastTime = n),
|
|
this.customPerfList[t] = {
|
|
options: e,
|
|
time: n
|
|
},
|
|
this.reportPerformance({
|
|
custom: !0,
|
|
entry: {
|
|
key: "customPerf",
|
|
value: t
|
|
},
|
|
renderTime: n
|
|
})
|
|
}
|
|
}
|
|
,
|
|
n.prototype.headlessTestReport = function() {
|
|
-1 === window.navigator.userAgent.indexOf("headless") || this.asyncReportTiming()
|
|
}
|
|
,
|
|
n.prototype.playClicked = function(t) {
|
|
this.reportTimePoint("play_clicked", t)
|
|
}
|
|
,
|
|
n.prototype.playIDR = function(t) {
|
|
this.reportTimePoint("play_idr", t)
|
|
}
|
|
,
|
|
n.prototype.playBlock = function(t) {
|
|
this.reportTimePoint("play_block", t)
|
|
}
|
|
,
|
|
n.prototype.playError = function(t) {
|
|
this.reportTimePoint("play_error", t)
|
|
}
|
|
,
|
|
n.prototype.setDimensions = function(t) {
|
|
var e = this
|
|
, n = Object.keys(t);
|
|
n.some((function(t) {
|
|
return -1 === Ht.indexOf(t)
|
|
}
|
|
)) && c("[error 306]", "[Radar] \u4f20\u5165\u7684\u81ea\u5b9a\u4e49\u7ef4\u5ea6\u53ea\u80fd\u4e3a " + Ht.join("\u3001") + "\uff0c\u76ee\u524d\u4f20\u5165\u7684\u662f\uff1a" + n.join("\u3001")),
|
|
n.forEach((function(n) {
|
|
var r = n;
|
|
null == t[r] ? delete e.customDimension[r] : e.customDimension[r] = t[r]
|
|
}
|
|
))
|
|
}
|
|
,
|
|
n.prototype.validOption = function() {
|
|
var t = this;
|
|
if (!this.options)
|
|
return !1;
|
|
var e = this.options
|
|
, n = e.sampling;
|
|
return "string" != typeof e.projectId ? (c("[error 303]", "[Radar] \u5fc5\u987b\u914d\u7f6e projectId \u5c5e\u6027\uff0c\u7c7b\u578b\u4e3a string!"),
|
|
!1) : n > 1 || n < 0 ? (c("[error 304]", "[Radar] \u91c7\u6837\u7387 sampling \u5fc5\u987b\u4e3a 0~1 \u4e4b\u95f4\u7684\u6570\u5b57"),
|
|
!1) : (["apiSampling", "errorSampling", "resourceSampling", "customSampling", "eventSampling"].forEach((function(e) {
|
|
var n = t.options[e];
|
|
"number" == typeof n && 0 === n && c("[error 304]", "[Radar] \u91c7\u6837\u7387 " + e + " \u4e0d\u80fd\u88ab\u8bbe\u7f6e\u4e3a 0\uff0c\u5c06\u6539\u7528\u9ed8\u8ba4\u503c")
|
|
}
|
|
)),
|
|
!0)
|
|
}
|
|
,
|
|
n.prototype.captureException = function(t) {
|
|
_t(this, Et("capture exception", t)),
|
|
Kt(this, Ot("Captured Exception", t))
|
|
}
|
|
,
|
|
n.__test__ = {
|
|
MORE_REPORTED: Rt,
|
|
CUSTOM_DIM_KEY: Ht,
|
|
CUSTOM_COLLECT_KEY: Dt
|
|
},
|
|
n.key = "radar",
|
|
n
|
|
}(st)
|
|
}
|
|
))
|
|
},
|
|
"088e":function(t, n, e) {
|
|
"use strict";
|
|
(function(t) {
|
|
e("a4d3"),
|
|
e("e01a"),
|
|
e("d3b7"),
|
|
e("d28b"),
|
|
e("e260"),
|
|
e("3ca3"),
|
|
e("ddb0"),
|
|
e("b0c0"),
|
|
e("25f0"),
|
|
e("ac1f"),
|
|
e("1276"),
|
|
e("a15b"),
|
|
e("4c53"),
|
|
e("a9e3"),
|
|
e("4d63"),
|
|
e("ace4"),
|
|
e("5cc6"),
|
|
e("9a8c"),
|
|
e("a975"),
|
|
e("735e"),
|
|
e("c1ac"),
|
|
e("d139"),
|
|
e("3a7b"),
|
|
e("d5d6"),
|
|
e("82f8"),
|
|
e("e91f"),
|
|
e("60bd"),
|
|
e("5f96"),
|
|
e("3280"),
|
|
e("3fcc"),
|
|
e("ca91"),
|
|
e("25a1"),
|
|
e("cd26"),
|
|
e("3c5d"),
|
|
e("2954"),
|
|
e("649e"),
|
|
e("219c"),
|
|
e("170b"),
|
|
e("b39a"),
|
|
e("72f7"),
|
|
e("baa5"),
|
|
e("fb6a"),
|
|
e("944a"),
|
|
e("0c47"),
|
|
e("23dc");
|
|
function n(t) {
|
|
return n = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) {
|
|
return typeof t
|
|
}
|
|
: function(t) {
|
|
return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t
|
|
}
|
|
,
|
|
n(t)
|
|
}
|
|
!function(r, o) {
|
|
r.Jose = o();
|
|
}(window, (function() {
|
|
return r = {},
|
|
t.m = e = [function(t, n) {
|
|
(function() {
|
|
var t = function(t) {
|
|
return t.constructor.prototype
|
|
}
|
|
, e = Object.create
|
|
, r = function(t, n) {
|
|
return Object.prototype.hasOwnProperty.call(t, n)
|
|
}
|
|
, o = Array.isArray
|
|
, i = function(t, n, e) {
|
|
return Object.defineProperty(t, n, e)
|
|
};
|
|
n.prototypeOf = t,
|
|
n.create = e,
|
|
n.hasProp = r,
|
|
n.isArray = o,
|
|
n.defProp = i
|
|
}
|
|
).call(this)
|
|
}
|
|
, function(t, n) {
|
|
(function() {
|
|
function t(t) {
|
|
this.elements = t,
|
|
this.index = 0
|
|
}
|
|
t.prototype.next = function() {
|
|
if (this.index >= this.elements.length)
|
|
throw new Error("array over");
|
|
return this.elements[this.index++]
|
|
}
|
|
,
|
|
n.ArrayIterator = t
|
|
}
|
|
).call(this)
|
|
}
|
|
, function(t, e, r) {
|
|
function o(t) {
|
|
return (o = "function" == typeof Symbol && "symbol" == n(Symbol.iterator) ? function(t) {
|
|
return n(t)
|
|
}
|
|
: function(t) {
|
|
return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : n(t)
|
|
}
|
|
)(t)
|
|
}
|
|
(function() {
|
|
var t = {}.hasOwnProperty
|
|
, n = r(0).isArray
|
|
, i = (u.prototype.run = function() {
|
|
for (var t = this.callStack[this.depth], n = t.error; 0 <= this.depth && t && !this.paused; )
|
|
if ((t = n ? this.unwind(n) : t).run(),
|
|
(n = t.error)instanceof Error && this.injectStackTrace(n),
|
|
t.done()) {
|
|
if (t.guards.length) {
|
|
var e = t.guards.pop();
|
|
if (e.finalizer) {
|
|
t.ip = e.finalizer,
|
|
t.exitIp = e.end,
|
|
t.paused = !1;
|
|
continue
|
|
}
|
|
}
|
|
!t.construct || "object" !== (e = o(this.rv)) && "function" !== e && (this.rv = t.scope.get(0)),
|
|
(t = this.popFrame()) && !n && (t.evalStack.push(this.rv),
|
|
this.rv = void 0)
|
|
} else
|
|
n = (t = this.callStack[this.depth]).error;
|
|
if (this.timedOut() && (n = new Error(this),
|
|
this.injectStackTrace(n)),
|
|
n)
|
|
throw n
|
|
}
|
|
,
|
|
u.prototype.unwind = function(t) {
|
|
for (var n = this.callStack[this.depth]; n; ) {
|
|
n.error = t;
|
|
var e = n.ip - 1
|
|
, r = n.guards.length;
|
|
if (r && (r = n.guards[r - 1],
|
|
r.start <= e && e <= r.end)) {
|
|
if (null !== r.handler)
|
|
if (e <= r.handler)
|
|
n.evalStack.push(t),
|
|
n.error = null,
|
|
n.ip = r.handler;
|
|
else {
|
|
if (!(r.finalizer && n.ip <= r.finalizer)) {
|
|
n = this.popFrame();
|
|
continue
|
|
}
|
|
n.ip = r.finalizer
|
|
}
|
|
else
|
|
n.ip = r.finalizer;
|
|
return n.paused = !1,
|
|
n
|
|
}
|
|
n = this.popFrame()
|
|
}
|
|
throw t
|
|
}
|
|
,
|
|
u.prototype.injectStackTrace = function(t) {
|
|
var e, r, o, i, u, p, s, c = [], a = 0;
|
|
for (this.depth > this.maxTraceDepth && (a = this.depth - this.maxTraceDepth),
|
|
r = o = u = this.depth,
|
|
p = a; u <= p ? o <= p : p <= o; r = u <= p ? ++o : --o)
|
|
"<anonymous>" === (i = (e = this.callStack[r]).script.name) && e.fname && (i = e.fname),
|
|
c.push({
|
|
at: {
|
|
name: i,
|
|
filename: e.script.filename
|
|
},
|
|
line: e.line,
|
|
column: e.column
|
|
});
|
|
if (t.trace) {
|
|
for (s = t.trace; n(s[s.length - 1]); )
|
|
s = s[s.length - 1];
|
|
s.push(c)
|
|
} else
|
|
t.trace = c;
|
|
return t.stack = t.toString()
|
|
}
|
|
,
|
|
u.prototype.pushFrame = function(t, n, e, r, o, i, u) {
|
|
if (null == i && (i = "<anonymous>"),
|
|
null == u && (u = !1),
|
|
this.checkCallStack())
|
|
return e = new f(e,t.localNames,t.localLength),
|
|
e.set(0, n),
|
|
u = new p(this,t,e,this.realm,i,u),
|
|
o && u.evalStack.push(o),
|
|
r && u.evalStack.push(r),
|
|
this.callStack[++this.depth] = u
|
|
}
|
|
,
|
|
u.prototype.checkCallStack = function() {
|
|
return this.depth !== this.maxDepth || (this.callStack[this.depth].error = new Error("maximum call stack size exceeded"),
|
|
this.pause(),
|
|
!1)
|
|
}
|
|
,
|
|
u.prototype.popFrame = function() {
|
|
var t = this.callStack[--this.depth];
|
|
return t && (t.paused = !1),
|
|
t
|
|
}
|
|
,
|
|
u.prototype.pause = function() {
|
|
return this.paused = this.callStack[this.depth].paused = !0
|
|
}
|
|
,
|
|
u.prototype.resume = function(t) {
|
|
if (this.timeout = null != t ? t : -1,
|
|
this.paused = !1,
|
|
this.callStack[this.depth].paused = !1,
|
|
this.run(),
|
|
!this.paused)
|
|
return this.rexp
|
|
}
|
|
,
|
|
u.prototype.timedOut = function() {
|
|
return 0 === this.timeout
|
|
}
|
|
,
|
|
u.prototype.send = function(t) {
|
|
return this.callStack[this.depth].evalStack.push(t)
|
|
}
|
|
,
|
|
u.prototype.done = function() {
|
|
return -1 === this.depth
|
|
}
|
|
,
|
|
u);
|
|
function u(t, n) {
|
|
this.realm = t,
|
|
this.timeout = null != n ? n : -1,
|
|
this.maxDepth = 1e3,
|
|
this.maxTraceDepth = 50,
|
|
this.callStack = [],
|
|
this.evalStack = null,
|
|
this.depth = -1,
|
|
this.yielded = this.rv = void 0,
|
|
this.paused = !1,
|
|
this.r1 = this.r2 = this.r3 = null,
|
|
this.rexp = null
|
|
}
|
|
var p = (s.prototype.run = function() {
|
|
for (var t = this.script.instructions; this.ip !== this.exitIp && !this.paused && 0 !== this.fiber.timeout; )
|
|
this.fiber.timeout--,
|
|
t[this.ip++].exec(this, this.evalStack, this.scope, this.realm);
|
|
0 === this.fiber.timeout && (this.paused = this.fiber.paused = !0);
|
|
var n = this.evalStack.len();
|
|
if (!this.paused && !this.error && 0 !== n)
|
|
throw new Error("Evaluation stack has " + n + " items after execution")
|
|
}
|
|
,
|
|
s.prototype.done = function() {
|
|
return this.ip === this.exitIp
|
|
}
|
|
,
|
|
s.prototype.setLine = function(t) {
|
|
this.line = t
|
|
}
|
|
,
|
|
s.prototype.setColumn = function(t) {
|
|
this.column = t
|
|
}
|
|
,
|
|
s);
|
|
function s(t, n, e, r, o, i) {
|
|
this.fiber = t,
|
|
this.script = n,
|
|
this.scope = e,
|
|
this.realm = r,
|
|
this.fname = o,
|
|
this.construct = null != i && i,
|
|
this.evalStack = new c(this.script.stackSize,this.fiber),
|
|
this.ip = 0,
|
|
this.exitIp = this.script.instructions.length,
|
|
this.paused = !1,
|
|
this.finalizer = null,
|
|
this.guards = [],
|
|
this.rv = void 0,
|
|
this.line = this.column = -1
|
|
}
|
|
var c = (a.prototype.push = function(t) {
|
|
if (this.idx === this.array.length)
|
|
throw new Error("maximum evaluation stack size exceeded");
|
|
return this.array[this.idx++] = t
|
|
}
|
|
,
|
|
a.prototype.pop = function() {
|
|
return this.array[--this.idx]
|
|
}
|
|
,
|
|
a.prototype.top = function() {
|
|
return this.array[this.idx - 1]
|
|
}
|
|
,
|
|
a.prototype.len = function() {
|
|
return this.idx
|
|
}
|
|
,
|
|
a.prototype.clear = function() {
|
|
return this.idx = 0
|
|
}
|
|
,
|
|
a);
|
|
function a(t, n) {
|
|
this.fiber = n,
|
|
this.array = new Array(t),
|
|
this.idx = 0
|
|
}
|
|
var f = (h.prototype.get = function(t) {
|
|
return this.data[t]
|
|
}
|
|
,
|
|
h.prototype.set = function(t, n) {
|
|
return this.data[t] = n
|
|
}
|
|
,
|
|
h.prototype.name = function(n) {
|
|
var e, r = this.names;
|
|
for (e in r)
|
|
if (t.call(r, e) && r[e] === n)
|
|
return parseInt(e);
|
|
return -1
|
|
}
|
|
,
|
|
h);
|
|
function h(t, n, e) {
|
|
this.parent = t,
|
|
this.names = n,
|
|
this.data = new Array(e)
|
|
}
|
|
var l = (d.prototype.get = function(t) {
|
|
return this.object[t]
|
|
}
|
|
,
|
|
d.prototype.set = function(t, n) {
|
|
return this.object[t] = n
|
|
}
|
|
,
|
|
d.prototype.has = function(t) {
|
|
return t in this.object
|
|
}
|
|
,
|
|
d);
|
|
function d(t, n) {
|
|
this.parent = t,
|
|
this.object = n
|
|
}
|
|
e.Fiber = i,
|
|
e.Scope = f,
|
|
e.WithScope = l
|
|
}
|
|
).call(this)
|
|
}
|
|
, function(t, n, e) {
|
|
e = new (e(4)),
|
|
e.eval('["<script>",0,[[21]\u010d75\u010b,false\u0112\u010f4,1,null\u011d16]\u011d\u0100\u0102\u0104\u0106\u0108\u010a\u0101anonymous\u0109\u010d[\u0114,28\u0117\u0119\u011b\u011d3\u010c\u010c43\u0127\u011d\u013f27\u0143\u011a\u011c\u010d\u0147\u011642\u014c\u0113\u011526\u0151\u0145\u0154\u0148,4\u0111\u010d\u0164\u013e\u015b\u0115\u0118\u0152\u0146\u016140\u0159\u0167\u0140\u011f\u016a\u015f[\u0155\u010c39\u0170\u014e3\u015e\u0153\u0176\u016138\u017b\u015b2\u017e\u016c\u01163\u0129\u0165\u014d\u015b\u0121\u0174\u017f\u0177,3\u0158\u018c\u015a\u0140\u010c\u0190\u0188\u0178\u0166\u0166\u013f19\u0187\u0160\u0189\u016f\u0196\u01711\u0142\u019a\u01a3\u010c2\u017a\u01a6\u019f\u0150\u01aa\u0180\u0116\u0141\u0184\u0120\u015d\u01b2\u0192\u014f\u01b61\u0169\u0144\u0191\u0161\u015c\u01bc\u0173\u01bf\u019b\u01405\u01bc\u017d\u01b9\u01c14\u01bc\u0186\u01cb\u01b4\u0195[\u019e\u01151\u018f\u01c5\u01ab\u0140\u019d\u018d\u0120\u0199\u01d8\u01b3\u01ac\u01a5\u01d3\u01dc\u01a1\u01d0\u010c\u01a0\u01b6\u01a9\u01df\u0192\u01a8\u01b6\u01b1\u01eb\u016117\u01b6\u01b8\u01f0\u0116\u0128\u01b6\u01be\u016b\u01d9\u01bd\u01b6\u01c4\u01fb\u01e0\u0120\u01cd\u01af\u0115\u01ca\u01f6\u01e7\u014b\u0204\u0140\u01a2\u02011\u01d2\u01d4\u0120\u020c\u01ec\u01db\u0197\u01de\u0200\u01ec\u01e2\u01662\u0216\u01757\u0148\u011d\u01ad\u01f7\u0220\u018b\u0201\u0209\u01d3\u0224\u0221\u01e7\u01e2\u021e,"$encode"\u0220\u01a1\u0178\u0127\u019d\u0219\u02261\u0203\u010f\u01f3\u0165\u0228\u0238\u0193\u0224\u022c\u022e\u0230\u0104y\u0107\u0236\u010d\u0229\u0193\u023a\u0127\u023c\u0127\u023f\u01bb\u0242\u0237\u0156\u019e\u010c\u022e\u0234\u024a\u024c\u0258\u0239\u0165\u023b\u0127\u023d\u0255\u0241\u0227\u014d\u0121\u01e2\u0192\u023f\u01f8\u0113\u0121\u0166\u0192\u01c8\u0257\u026f\u0140\u01c6\u0224\u026e\u013e\u0121\u0226\u0192\u0267\u0279\u022c502\u0283\u01bd\u023f\u022c\u0110096573\u0179\u014d\u01e786997\u014f0\u0286\u01e7\u02943\u014a84\u029e\u0290\u0120\u020e91376\u0267\u022c-\u02a566\u015707\u02a0\u0113\u0178\u029c\u0114\u02929\u0299\u01208\u01bd\u0293\u01639\u022b\u011f\u0183\u02b3,835\u029c\u021b\u02b2\u013e\u010c5\u0281\u0141\u028a6\u02c2\u02cb,-\u0110\u020e\u0114\u01795\u01d2\u022c\u02a5954\u02ad06\u022b\u01e7\u029f\u018a\u02e0\u02a5\u02d2\u02dc\u0141\u02a6\u01a8\u02e2\u0246\u010c-\u02bd\u02e1\u016e\u02a1\u02d53\u01f2\u029f8\u02a9\u02c1\u014d\u011f\u01d2\u0192\u02d2\u027f\u01e7\u0224\u0192\u01ae\u0268\u02c3\u01d6\u0128\u02c62\u016e\u02ea\u0291\u0294447\u0312\u025a\u0193\u02989\u0194\u02b5\u0316\u0179\u0288\u0289\u028c\u0226\u022c\u028a\u01a0\u02fb\u030b\u02a1\u01bd08\u0295\u0289\u0319\u02a1\u030d\u02c76\u02c6\u0314\u030f\u0140\u02fb\u02b0\u0331\u0284\u02a1\u018a\u030d\u01821\u0329\u02e4\u0193\u033e59\u029e0\u0316\u02e3\u02962\u02da\u02b1\u0327\u0157\u02d1\u02bb\u0344\u02a9\u029a\u034a\u02b0\u02c58\u0334\u01106\u021b\u02b1\u021b\u02f0\u01406\u023e\u0357\u02bb0\u0321\u0178\u030d8\u0283\u034a8\u0340\u0182\u02c6\u0179\u0298\u0346\u02a1\u016e\u0369\u030d7\u0314\u032e\u02ae\u02b5\u0355\u02a1\u02e3\u029f\u0337\u01b5\u02c3\u0376\u0282\u02cd\u0344\u0365\u0120\u030d\u02a4\u0281\u020e\u02db\u01e7\u02cd\u0281\u02bb\u0293\u038c\u0120\u0294\u02e3\u02ae\u0344\u035e\u034a\u02df\u0283\u0329\u0368\u032e\u0368\u01a8\u029c\u029c\u0307\u0287\u02de\u01ad\u028a\u036b\u0334\u0194\u033e\u02f8\u018a7\u031c\u028e\u028b\u03ae\u032a\u031c5\u029e\u02da\u0325\u0316\u01d6\u031d\u0293\u032d\u02c3\u028e\u0368\u0163\u032a\u0273\u02d3\u02ad\u0331\u02b0\u021b\u03c3\u022c\u0376\u030c\u0294\u020e\u0327\u01ad\u0313\u0320\u0296\u0327\u0179\u0360\u0368\u01ad\u03b9\u02935\u03a0\u021e\u0340\u0324\u03c5\u0342\u0316\u0110\u0382\u015c\u02c6\u0340\u032f\u03da\u02e3\u02a6\u032e\u028d\u02988\u0343\u0110\u039e\u021b\u0147\u030d\u01d6\u033a\u034a\u0295\u0147\u036b\u036c\u029c\u028c\u02ae\u0376\u03b4\u0128\u02e2\u03b5\u01f2\u033a\u02e3\u0364\u03b7\u0298\u0372\u02894\u028c\u01a0\u0289\u03ec\u039a\u028e\u0312\u0372\u03f4\u014f\u028d\u02b9\u0281\u02bd\u0292\u0303,\u028b\u02bf\u02e3\u02cd\u035e\u0357\u0179\u0295\u02fb\u0352,\u02de\u02bb\u02d9\u03ae\u03d4\u0283\u03d7\u0110\u0334\u01bd\u02a60\u0282\u02e2\u0386\u02f9\u02b1\u028d\u0376\u03a3\u029a\u038e\u035a\u0369\u032e\u0282\u0163\u03ee\u01fd\u02c3\u0369\u03cb\u0298\u02da\u032e\u018a\u01a8\u02da\u0157\u02b9\u030d\u0141\u014a\u03ff\u0451\u0114\u02a8\u029c\u01a8\u0428\u0194\u0370\u02f8\u0313\u043d\u0193\u0194\u0319\u034a\u01ad\u02ea\u011f\u02ae\u01c62\u023d\u0129\u012b\u0101\u0103\u0105\u0107\u013c"r\u010a\u010e\u021b,tru\u017f\u022c\u01e2\u024f\u021a\u0305\u01c1\u0127\u035e\u021a\u0244\u0480\u01c6\u046b\u011d\u0142\u047e\u0244\u01d2\u0221\u0121\u030d\u0220\u011f\u0121"B\u024d\u0201\u020f\u0243\u01b4\u0258\u0270\u0255\u0493\u022dp\u0497\u026c\u0483\u02a1\u048c\u0211\u02d2\u01c2\u0165\u0253\u02c3"slic\u0235\u0220\u0115\u025b\u04ae\u04b0\u04b2\u01d9\u03c3\u0279\u024f\u0255\u0244\u03c3\u048f\u0120\u04bf\u02ff\u022dA\u04a2\u0161\u0278\u049a\u010c\u049a\u0490\u04c2\u0211"D\u0497\u04c0\u023e\u0492\u04ce\u04a1\u01c6\u026d\u0484\u049c\u02c4\u0223\u0252\u0264\u02a1\u04ad\u04af\u04b1\u04d1\u04b4\u022d\u04b6\u04e2\u01c6\u04ba\u04c9\u0162\u0260,\u04bf\u01a1\u0270\u04cd\u0186"\u04c5\u0277\u04a4\u0275\u026b\u0161\u027e\u035e\u04a6\u04ca\u04dc\u02c3\u0479\u047b\u04da\u01ad\u04d4\u04f2k\u04c6\u0116\u04fa\u0269\u010b\u01c6\u0302\u04cb,\u0267\u024f\u02d2\u0226\u014a\u050c\u04f6\u010f\u04ef\u04eb\u024e\u0244\u0512\u011d\u0514\u01d9\u050d\u050a\u0485\u0211\u0226\u04a9\u010f\u011d\u02a8\u0429\u020f\u0327\u0435\u01c6\u0307\u027f\u0490\u04da\u0524\u0228\u0527\u0150\u033e\u0214\u02d3\u033e\u04f8\u01f7\u0219\u04d9\u0275\u048e\u0518\u023d\u0263\u0165\u0265\u04fe[\u051e\u01d3\u0544\u024e\u0509\u051a\u0116\u0460\u01b2\u04c0\u0503\u024e\u04c3"\u0506\u04ec\u051c\u010d\u0547\u0301\u0516\u047f\u0340\u054f\u0518\u0551\u011e\u020b\u0554\u04d1\u051b\u0146\u051d\u027c\u0161\u0520\u054c\u010c\u0510\u0565\u0154\u0567\u0515\u0274\u0176\u017d\u04cfat\u0235\u050b\u024e\u017d\u026b\u0574D\u0576\u0578\u0219\u04ab\u02d3"par\u011b\u04e3\u04d5\u0586\u0588\u052b\u052c\u0558\u035e\u055e\u0211\u0560\u030d\u0562\u0555\u056b\u04db\u056f\u0558\u0568\u0116\u056a\u027a\u0250\u0597\u0557\u0546\u059b\u010c\u059d\u03ae\u0519\u0517\u059c\u0566\u059a\u0571\u0308\u05a8\u05a4\u04da\u03ce\u0552\u04ced\u0507\u01e7\u019d\u04ea\u03f6\u05a0\u05aa\u05a2\u05ac\u04bb\u056e\u05a8\u0270\u021a\u049f"g\u05b5\u0598\u05ad\u0511\u04ec\u023d\u0582\u05a6\u04bf\u01d5\u0122\u0124\u0126\u0572\u02ad\u0198\u0300\u01f1\u0499\u04ec\u05b1\u05ae\u059f\u01d3\u05cc\u0121\u0228\u05cf\u0123\u0125\u0516\u0238\u012a\u010d\u011d\u05e2l\u05d0\u0125\u05eb\u05ea"a\u0131n\u0131t\u0131\u0578"o\u0131v\u0131f\u0131c\u0131u\u0131\u0474\u012b\u020e\u0393\u017d\u02ab\u05d5\u05e6\u032a\u010d"\u0131st\u0586tupR\u0133dom\u05fd\u0139n\u05f4\u022d\u0346\u0435\u061e0\u0131\u061f\u061f\u060du\u05fe\u022der\u0602\u05e7\u0579\u012c\u046f\u012f\u0472\u05c5\u013d\u0477\u0500\u047c\u021f\u0597\u0487\u01d9\u0489\u0113\u011f\u053a\u0149\u055b\u0244\u0524\u0540\u05c2\u04cex\u05c6\u04e9\u04dfl\u0230gth\u0564\u0116\u04bf\u053d\u0546\u04bd\u0650\u0545\u0192\u04c8\u04a5\u01c6\u054b\u05db\u0428"\u064an\u064c\u064e\u04ec\u0651\u0327\u051d\u023f\u03b5\u0527\u0142\u0360\u04ec\u056d\u0655\u024e\u04ea\u0224\u02c7\u066c\u011d\u0672\u0447\u02cd\u0674\u053f\u0508\u04ec\u026d\u0542\u0548\u0254\u0220\u065b\u024f\u027e\u020f\u03c3\u0163\u065a\u0170\u0446\u01e3\u010d\u05d4\u0525\u05d4\u03db\u04ec\u04ea\u066d\u063f\u0262\u04dd\u0543\u067f\u054a\u0640\u0156\u0531\u048e\u05c3E\u0497\u01cd\u011d\u05e8\u05d1\u05ed\u06a4\u0473\u0131\u05f0\u022d\u05f2\u022d\u061c"\u04b8[\u0112\u029c\u062c\u06af\u062d\u046e\u012e\u0471\u0131\u05b4\u0633\u010c\u0635\u0659\u0638\u0656\u0181\u0699\u0261\u05c0\u0341\u04d4\u0494\u0646\u04d7\u0516\u047d\u04e8\u06c9\u0637\u0201\u0658\u0597\u035e\u065e\u064b\u064d\u064f\u0693\u010f\u0671\u02d2\u02d1\u0162\u0642\u0116\u04ea\u0255\u0398\u0677\u010d\u044b\u0597\u03c3\u0513\u05a3\u04ed\u06c1\u041e\u0127\u0684\u051d\u0271\u04c7\u0688\u04ba\u0527\u015d\u0405\u068b\u015d\u028e\u0663\u032e\u06e1[\u02e3\u0534\u0162\u06d9\u015d\u0668\u06e4\u051d\u063e\u06e8\u0572\u02dc\u06f8\u0599\u05bc\u04b9\u06e9\u03c9\u01ac\u06fa\u06e3\u0201\u0648\u0702\u054c\u0270\u0524\u05c3\u05fc\u051d\u05e6\u06b3[\u05e9\u06a4\u071d\u06a6\u022d\u06a8"\u06aa"\u05f4\u06a1\u0140\u0150\u071b\u0112\u01e2\u06b5\u0470\u0130\u022d\u05fc\u06ba\u0478\u047a\u0636\u062d\u047f\u06bf\u0189\u06c9\u026a\u06c8\u0572\u024f\u0386\u01e25\u0224\u0528\u0147\u05ca\u0327\u06d8\u06fd\u01e8\u04f7\u06f2\u0198\u0521\u0746\u0745\u04aa\u04de\u04actoS\u0479i\u0660\u0589\u0494\u0753\u0755\u0105\u0758\u0570\u01d9\u04d8\u074b\u06f7\u053e\u073c\u05c8\u0244\u023f\u06a0\u06b2\u071d\u076b\u06a3\u0720\u05ef\u0497\u0112\u01f2\u060b\u0622\u0622\u0621\u0727\u072c\u012d\u072e\u0472\u04a1\u0732\u06bc\u02c3\u04fc\u0120\u0738\u06c2\u041d\u020e\u0512\u0574\u075c\u0757\u0632\u0581\u0751\u0583fr\u0617Ch\u0586C\u0233\u06ae\u034a\u04ce\u078e\u0790\u0792r\u0794\u0234\u06d5\u05dc\u06e6\u0488\u06cc\u022d\u065f\u0661\u079f\u0532\u0372\u051d\u0398\u075f\u0201\u0761\u0597\u0654\u0121\u0307\u02e0\u0146\u0574M\u0576\u064e\u062d\u033e\u078c\u0247\u04b1il\u0759\u022d\u07bd\u07bf\u06cb\u0706\u063d\u04f5\u0706\u06cd\u027d\u0170\u0682\u0708[\u0701\u06fb\u0142\u01bd\u03c9\u07c6\u0597\u0692\u06ea\u0694\u0750\u0696\u0165\u0266\u07a3\u0704\u0302\u0556\u04da\u0307\u07cf\u06da\u023e\u04ee\u067a\u02c3\u0468\u0558\u07e6\u05af\u02c3\u0768\u0685\u06dc\u0783\u05cc\u025bc\u079b\u079deA\u0726\u024e\u05cf"\u07f4\u0793\u0795\u07f8\u0497\u0287\u0768\u04a8\u0244\u0428\u07e9\u0546\u07eb\u05c7\u022c\u07ee\u07ac\u0707\u05ab\u0597\u05cb\u07bb\u07f3\u07f5\u07ff\u07f9\u010f\u07fb\u07fd\u079c\u0815\u0801\u0304\u051d\u02d2\u068f\u07d5\u037c\u080c\u05ba\u07ed\u051d\u07ef\u032e\u07ac\u073e\u0695\u067e\u04ac\u0819\u07f6\u0800\u04b3\u04ce\u082e\u081b\u02a1\u02d2\u029f\u0674\u0522\u056c\u0822\u0826\u07e0\u0825\u07ea\u080d\u06c2\u0547\u082a\u07d9\u082c\u0583\u0833\u0234\u0830\u07fa\u0832\u0814\u0848\u0816\u0820\u05db\u0804\u07e7\u05db\u0228\u0278\u067d\u02a5\u0697\u0240\u06e9\u0302\u06ec\u0558\u06ee\u05a9\u01a6\u0689\u0166\u068e\u06ff\u0120\u02c6\u0673\u0165\u085c\u0546\u085e\u083a\u0860\u06f1\u06f5\u0162\u01d2\u05d4\u07e5\u0649\u06d3\u0662\u0810\u0545\u04c0\u0460\u0823\u070a\u0538\u0666\u052d\u06e9\u0460\u0836\u070d\u0276\u03be\u0300\u07b5\u07b7\u010a\u078b\u07da\u0583pow\u0589\u04f2\u088d\u088f\u07aa\u07e1\u0828\u0558\u0654\u02cc\u0665\u0897\u0690\u0545\u05b9\u05dd\u078c\u04d3\u0698\u073d\u0518\u0460\u01d2\u0414\u0713\u087d\u089b\u06d0\u0878\u0305\u0887\u06d4\u07b9\u07f2\u0730loo\u062b\u0817\u0798\u08b3\u08b5\u064f\u07b1\u0896\u0653\u07cd\u080e\u08be\u08ab\u066f\u0251\u0844\u0857\u07db\u0680\u0880\u0835\u083c\u07ed\u03d0\u028a\u0296\u02de\u0678\u0895\u0309\u087e\u08a8\u08c0\u08a7\u0853\u089d\u0856\u0549\u0859\u08a3\u06dd\u0719\u0727\u071c\u06a3\u076c\u05ec\u076e\u0722\u0724\u06ac\u05f6\u05f8\u022d\u05fa\u0727\u01d6\u0142\u072a\u06b4\u0779\u0630\u0131\u04c5\u077d\u0734\u06bd\u05db\u0639\u0225\u07a3\u0839\u0781\u08c3\u0760\u06c9\u07d4\u0711\u07a3\u06d2\u0660\u06d4\u074f\u06d7\u01c6\u0279\u041d\u0704\u08a1\u068a\u08f9\u0898\u01b7\u0674\u06d9\u0142\u02a6\u0392\u090d\u086e\u08f9\u07e6\u08bc\u06e2\u0914\u04ed\u05b8\u0809\u090e\u0843\u0909\u08ff\u091a\u07cd\u089e\u07ba\u088b\u0922\u0681\u0486\u04ba\u0869\u0686\u01fc\u0919\u0861\u074b\u0560\u05d4\u07b3\u0714\u0429\u090a\u0919\u047f\u0883\u0807\u07e3\u07d1\u03f1\u0638\u0883\u08a6\u0911\u0664\u0938\u021b\u06c5\u022dM\u079f\u0689\u03ca\u08d4\u05db\u0946\u087c\u093c\u0327\u0685\u0945\u0878\u0518\u0749\u0561\u0494\u0618\u0829\u092d\u074e\u08aa\u0950\u0545\u0842\u095e\u08a8\u0928\u0582\u092b\u07a3\u0157\u02b8\u08ce\u01ad\u0921\u0809\u04ba\u08da\u0858\u0525\u0710\u08c6\u01d3\u07dc\u08dd\u038d\u06eb\u0127\u0685\u086b\u04c1\u06f0\u0170\u068e\u0307\u0872\u089e\u06ca\u07af\u0782\u07d7\u05ad\u08c0\u04bc\u0987\u065b\u0287\u067b\u0987\u05a5\u06c2\u098b\u0925\u0306\u0969\u098f\u0994\u01f1\u053c\u02a1\u0809\u06df\u090a\u05b7\u037c\u0997\u0924\u020d\u05d8\u0381\u09a1\u0525\u01ec\u063b\u02d3\u0918\u07cb\u0964\u03c4\u0667\u091e\u0452\u05d9\u07f0\u01dd\u05b0\u04a8\u05c3\u0893\u080f\u08f9\u0780\u089e\u047f\u0679\u0490\u0644\u0787\u069f\u09b3\u0689\u0550\u07a8\u09b9\u0953\u08a8\u0525\u0559\u01f1\u092c\u08de\u0938\u06f4\u095a\u022dy\u079f\u0691\u083d\u06c3\u0283\u04d4\u0574$\u09c2\u090a\u059d\u09bd\u090a\u09a9\u047f\u097d\u05da\u05be\u053b\u099e\u08c9\u0638\u0267\u0547\u080b\u08cd\u02a8\u096d\u08d1\u01fc\u099a\u0824\u0201\u052e\u09d5\u051f\u06e9\u0481\u0852\u09e5\u01e7\u07d6\u01ed\u09b9\u09ec\u096b\u09ee\u08d0\u06e2\u05d6\u09ce\u0766\u01f7\u092e\u097b\u06ed\u093a\u097f\u01a6\u0872\u0807\u068c\u0194\u08f8\u0993\u09a2\u024f\u0224\u09eb\u0149\u09ed\u08cf\u03c3\u0710\u0985\u05db\u067c\u082b\u0975\u0968\u07c8\u08fe\u0a1f\u0957\u0852\u0a18\u0870\u0a01\u0a1b\u09f0\u08a9\u0a26\u07d8\u089f\u092a\u0977\u0989\u01ac\u09a6\u04ea\u0836\u0386\u096a4\u096c\u0a03\u07ce\u0392\u0679\u06d6\u0966\u08a0\u0a33\u041d\u09b3\u099d\u0597\u07b2\u0a39\u0a1a\u09ef\u0a04\u033a\u09a1\u0a42\u0a32\u08c8\u0a24\u0911\u0a47\u09ba\u0840\u0a2a\u0a3b\u0a02\u0a1c\u0392\u0a54\u08c4\u0a31\u0845\u0a23\u0a34\u0705\u0a2f\u0a15\u0486\u0166\u0a29\u0a3a\u0a3c\u0a5b\u099b\u0a4f\u0971\u08c7\u08a2\u0a62\u06de\u0a27\u01e7\u08a6\u0a4a\u0a2b\u0a4c\u0a3e\u09a0\u0986\u0a30\u0929\u0a60\u0a44\u035e\u07d6\u0a55\u047f\u07a1\u08cc\u0a77\u0a3d\u0a1d\u086c\u0a64\u0a50\u0a7e\u0a52\u0a07\u02e5\u097a\u0165\u097c\u090a\u026d\u0a0a\u0a0e\u015d\u09d8\u086f\u033b\u09a1\u0769\u071b\u08e3\u05ea\u071f\u0474\u0721\u05f1\u05f3\u05f5\u0131\u08ea"\u05fa\u0730\u05fd\u05ff\u0131i\u0131\u07b8\u065e\u060d\u0131\u0632"\u05b4\u08ed\u0314\u06b2\u072b\u011d\u072d\u08f3\u0aa2\u08f6\u0501\u077f\u05d9\u0987\u09a9\u098a\u0486\u0987\u09a4\u05db\u0a40\u05dc\u0281\u04ec\u0392\u0a12\u0877\u0960\u0837\u06e2\u0a67\u071a\u06a2\u05ec\u0a9e\u022d\u08b6\u0771\u0121\u08f0\u0778\u062f\u06b7\u09d2\u0475\u010f\u06bb\u08f7\u0ac1\u06be\u0998\u0739\u0a24\u0aca\u06dc\u0270\u0228\u0553\u05f0\u03d4\u0908\u04d2\u0aee\u0562\u0af0\u06e2\u0386\u0a98\u05db\u0aec\u0912\u05b2\u04f2\u0af6\u07ce\u0513\u0ad5\u010d\u0ad8\u0aa0\u0770\u0865\u0ab9\u08f1\u0adf\u072f"\u088f\u0abf\u0735\u09bb\u0ac3\u07a3\u04ea\u0afb\u04bb\u0aef\u081c\u02a2\u0af2\u0958\u0af4\u0afe\u0497\u0675\u02d3\u034a\u0b19\u0211\u0b15\u0af5\u0b1d\u0b01\u08e0\u0b04\u076d\u0ada\u0b07\u0add\u0abb\u08f2\u0ae0"\u0618\u0b0e\u0a13\u0ac6\u0ae8\u0783\u0a80\u0b21\u0aed\u0504\u0aa2\u0327\u0851\u0992\u0b1a\u0b3a\u076f\u0674\u09b3\u0386\u0226\u0acc\u0af7\u08df\u076a\u08e2\u0b4a\u08e4\u0b2a\u0604\u0b2c\u060b\u0b2e\u0b0b\u094b\u0b32\u0ae6\u08f9\u0b11\u0a24\u09d0\u0923\u0af3\u0b40\u0aff\u02dc\u0307\u0b5a\u0b3f\u0afd\u0b3b\u0b47\u0ad0\u0538\u0740\u0740\u0b26\u0b49\u0ad7\u0b4b\u05ee\u0b4d\u0186\u0b4f\u062e\u06b6\u0b0bS\u0ae2\u0634\u0ae5\u09aa\u0ac2\u0b35\u05dc\u0784\u0b79\u09a2\u04a3\u0aea\u0b7d\u09a7\u0161\u0712\u0afa\u09a1\u0710\u0923\u02f5\u08a8\u0710\u0b1e\u0a9c\u0ad6\u0a9f\u0b6c\u0ad9\u06a7\u0aa3\u08ed\u0b6f\u0777\u0b2d\u0b0a\u0472\u09db\u0b54\u0b78\u0ae7\u0b7e\u06c0\u0b58\u0b81\u09f9\u0a41\u07ab\u0b9d\u0b82\u066e\u0a8e\u05dc\u0a14\u0b87\u0641\u07cd\u0b8b\u0a46\u0bad\u01d2\u0b8c\u0b02\u08e1\u0b6b\u0bb5\u0b6d\u0b92\u06a9\u0b06\u023e\u0b08\u0ade\u0b72\u0472\u0496\u0b9b\u0a1e\u0737\u0b7a\u09a9\u048b\u050a\u07de\u0901\u062d\u0995\u0a24\u0704\u0a94\u04ac\u07a5\u0907\u0b65\u0ba6\u04fd\u01a6\u0a14\u0a16\u0913\u0669\u01b7\u0a72\u0b65\u0a7d\u0975\u07bc\u084c\u07f7\u0816\u0797\u0494\u0847\u0be1\u0647\u070c\u03cf\u081f\u06d9\u0535\u0a3b\u08bf\u01e1\u0ad2\u07ce\u0beb\u0865\u0aca\u0883\u02cd\u01ad\u0747\u024e\u06fd\u0b46\u090f\u024f\u0bf5\u0418\u023f\u066b\u068b\u0535\u0329\u0a4f\u092f\u097d\u0bce\u01d3\u0b84\u022c\u028b\u0330\u0bee\u01dd\u046a\u0a2d\u02dc\u01e2\u0bf0\u0bd6\u0bac\u08c5\u0386\u07fc\u0be0\u0849\u08b7\u0be4\u0c1a\u0816\u0c12\u0c10\u0a4d\u0ad3\u07ac\u0272\u07a3\u030d\u0780\u0883\u09fe\u0546\u07e2\u03b9\u0380\u0961\u0309\u08a6\u0460\u0331\u0a2d\u084f\u02eb\u0b3d\u0a63\u0c0b\u051d\u0c32\u0b45\u0bb1\u0c2d\u0c37\u093d\u0c3c\u0838\u04ec\u052e\u08b1\u0584\u013a\u0876\u08b7\u011f\u0c46s\u0c48\u0279\u0872\u02f8\u032e\u0491\u08d5\u0a74\u0c3a\u0c42\u0c30\u0c3f\u0a7a\u0c2b\u037c\u0c41\u0c23\u0c57\u0c0e\u0c33\u0c22\u07ce\u08fd\u0c44\u0812\u04a0\u0c47\u0589\u0574p\u0c67\u0516\u0872\u0bf0\u0b5e\u0bf4\u0c59\u0bed\u0c5d\u0538\u0c2e\u0bfd\u0c5b\u0c34\u0c63\u0a21\u0c18\u0c6a\u0c4c\u0890\u0c66\u0c7d\u0c6c\u06f3\u0741\u07cd\u024f\u0c64\u088b\u0247\u0c7c\u0c48\u0be3\u0c7f\u0c4d\u0bdb\u01d3\u0c06\u0765\u019d\u0919\u068c\u0862\u0c82\u04fb\u0c91\u0874\u0906\u0c8a\u0244\u0b5f\u0ba2\u050f\u09ac\u069a\u0821\u091d\u0bd9\u021b\u08fd\u0911\u0c9d\u07b4\u022d\u0788\u0758\u08b0\u0c65"\u0799m\u0791\u07fe\u079e\u0831\u0494\u0cb0\u0cb2\u081a\u0cb4\u09f3\u0a84\u0201\u09de\u0767\u0a90\u0c09\u0a0b\u0900\u086d\u0980\u06f3\u0377\u086f\u01a0\u08fd\u0836\u0934\u0410\u09f1\u0516\u028e\u022dE\u062a\u08ba\u0736\u057b\u014d\u011d\u05e5\u0b27\u0b90\u0b05\u0abe\u0723\u0aa4\u0628\u0aa6\u05f9\u0601\u0497\u013e\u0198\u011f\u0607\u021b\u017a\u0112\u0344\u0773\u0b96\u0b50\u0b98\u0131\u04d0\u0bc1\u06cd\u0bc3\u0b9e\u0ae9\u0989\u073b\u0cc3\u0a62\u0704\u0919\u0247\u0bd0\u0c9b\u0cf7\u0bd3\u0c9f\u0bd5\u04be\u0867\u0bf1\u0bd9\u028d\u0c84\u0c16\u0a65\u0592\u0510\u05c3\u0600\u05bd\u0c97\u01d9\u0278\u0c99\u07a6\u09d6\u0d02\u052e\u089c\u0a48\u0bd8\u068b\u066a\u09b3\u0a37\u0656\u0787\u0756\u0cac\u088a\u0845\u0247\u0cb7\u0be0\u07c0\u0caf\u078f\u0cb1\u0d29\u09a1\u0cbc\u0b7f\u0ba8\u0278\u0c90\u0d13\u0a0d\u090f\u05d4\u018a\u074b\u0b1e\u0c76\u0868\u0a95\u086a\u07c4\u090f\u0933\u0cc8\u0267\u05d4\u0c60\u0a64\u0b8d\u0b03\u0cdb\u0b29\u0bb8\u0cde\u06ab\u0aa5\u022d\u0aa7\u08ec\u062c\u02f8\u0ced\u062c\u0bbd\u077a\u0aab\u0cf3\u0736\u0b34\u0cf6\u0b36\u02fe\u0bca\u016d\u07dd\u0d40\u09fb\u0c38\u01e7\u0674\u0982\u0142\u0930\u0b85\u0c53\u05c7\u040d\u0674\u03e7\u070f\u0c70\u0a7b\u01d3\u0a6e\u0976\u0a8d\u0d64\u0a09\u0a91\u0cc2\u0903\u0cc4\u0a96\u0387\u0762\u0ca6\u0b48\u0a9d\u0d4a\u0b4c\u0d4c\u05f2\u08ed\u01a1\u0b70\u0abc\u0b2f\u0600\u0d5a\u0b10\u0bc4\u0bc9\u0bcd\u07a3\u06e7\u093b\u0d05\u0b55\u0c01\u07d0\u06db\u0b21\u0899\u02c3\u0882\u0d6f\u06f9\u0a6b\u03be\u07cd\u08d7\u0a14\u0a8b\u0a22\u0a7f\u0927\u092f\u0a05\u0d9c\u0d41\u0c93\u06f3\u0871\u06f6\u0baf\u0558\u0bb3\u0b28\u0d85\u0cdd\u0d87\u062c\u0477\u0d8a\u0b51\u0472R\u0b75\u0ae4\u0ac0\u0b9c\u0b56\u0d90\u07c5\u0d60\u0ca1\u0cfb\u0d63\u04ea\u0883\u0b45\u0d68\u0162\u08fd\u09b3\u0883\u0d9e\u06e2\u0d70\u0da1\u0c2f\u0a8a\u0d75\u0a61\u0d78\u0cc0\u0689\u0d6a\u0c25\u0d7d\u0d37\u0daf\u0d80\u0a9b\u0db4\u0d84\u0bb7\u0db7\u0bba\u0d89\u0cee\u0b71\u0d58\u022d\u0506\u0d8e\u0ba1\u07a2\u0ba0\u0ba5\u0c9e\u07ae\u059e\u0cfc\u0d91\u07c7\u0ba8\u0c00\u0150\u0b20\u0bd2\u055f\u09b6\u04ce\u0dbe\u0df9\u0c4e\u06f6\u0780\u0afb\u0256\u09d1"\u0d10\u0d35\u0bcc\u0687\u0978\u0d03\u0583\u0cff\u09d4\u0545\u093f\u04ed\u0b5f\u0805\u0d1a\u0d0c\u0715\u0949\u0caf\u079f\u06e5\u0c24\u0b83\u06e9\u0683\u0d3e\u0ddd\u04f9\u0d36\u0c95\u0461\u074b\u0c72\u0dd6\u0d48\u0bb4\u0b8f\u0bb6\u0b91\u0de7\u0d4e\u0ce0\u0727\u0594\u0100\u0b06\u0d57\u0abd\u0725\u0dbf\u0733\u0dc1\u0bc2\u0d5c\u0d02\u09e1\u0d0b\u02dc\u08ad\u04a0\u058beI\u061b\u0889\u0b40\u0585\u0587\u0e48\u0e4a\u0c91\u0ba4\u0e11\u0875\u07a7\u0545\u098e\u058f\u08ca\u083f\u0154\u08ae\u07b8\u0d25\u0bde\u025b\u0892\u0c7e\u0584\u088e\u0be7\u0e0f\u0956\u0447\u0894\u08d3\u0960\u06fc\u0c02\u0245\u0e2a\u0d81\u08a8\u08d7\u0d31\u0d64\u0768\u0de4\u0e30\u0cdc\u076f\u0bb9\u0e35\u0b95\u0d56\u0b97\u0bbe\u0131\u0646\u0def\u0df3\u0df1\u0989\u0902\u0e73\u0d12\u0d7c\u0ba8\u0883\u0905\u0d16\u0bd2\u0bf8\u0d99\u0d6a\u0d3c\u0b1f\u0908\u0bdd\u0c18sub\u060e\u08b6\u0797\u04f2\u0e97\u0e99\u0479\u08bb\u0317\u0e1c\u0be2\u0cbf\u0c17\u04df\u0c89\u0d2a\u0ea8\u0c26\u07cd\u0d30\u0e21\u0d7e\u05da\u0d38\u0db2\u0546\u0e76\u0e2f\u0eb5\u0e31\u0e79\u0cde\u0e35\u010c\u0dbb\u0cf0\u0cd1\u0e3c\u077e\u0dc2\u0cf5\u0e41\u073a\u0dc6\u0ba3\u08f8\u0dde\u0e8a\u0d15\u0bd1\u0d6b\u09a2\u0e15\u0963\u0ba7\u0b5a\u06e0\u0dd5\u04d2\u0716\u0798\u05c6\u06cf\u08d8\u0d73\u0ead\u0dc7\u0dda\u0d3d\u0d7a\u085d\u0d63\u0d3e\u0e28\u0eb0\u0db1\u0de3\u0cda\u0e77\u0d4b\u0e32\u0e3b\u0d88\u0d55\u06b3\u0e39\u0b2f\u06aa\u0476\u0dc0\u0b0f\u0df0\u063a\u08fc\u0ef5\u07ad\u0eab\u0e83\u01d9\u0ac8\u0bc6\u0dfe\u0211\u050e\u0157\u0b40q\u0e65\u0e85\u0ec5\u0988\u0a45\u028d\u03f0\u02bf\u02df\u0502\u0e00\u0494\u0e02\u08c2\u0a5f\u0e5f\u07c1\u0135c\u0576\u0d2a\u0232\u0231\u0f18\u0e03\u035e\u0acf\u09d7\u0af4\u0be4\u0e13\u0ea6\u082d\u0f16\u0f1c\u084a\u0be4\u0f26\u0816\u0657\u0ec4\u04a6\u027b\u0644\u06c6\u0f23\u0f13\u0c18\u0f1a\u0f17\u0be2\u0818\u0f2a\u0ed7\u0969\u0289\u066d\u0490\u0f21\u07c1\u0f32\u0e95\u04df\u0f35\u0f27\u0c1c\u0f15\u0f1b\u0f2b\u06ef\u0a24\u0246\u0493\u0e19\u0f42\u0f25\u0f48\u0f19\u0f39\u0f1d\u04da\u02a9\u0270\u0674\u0742\u0150\u036b\u074b\u02c5\u050a\u0dab\u05a7\u0e74\u04da\u0b89\u0e09j\u0ea1\u0c75\u05c3\u0f11\u0ed9\u0f33\u0f43\u0f53\u0f28\u0f47\u0f36\u0f3a\u08dd\u0121\u07d3\u0a25\u0bd7\u0f24\u0846\u0f6d\u0f46\u07fc\u0f79\u0f2c\u0e0f\u091b\u0162\u047e\u05c3\u0f65\u0f0e\u0e1c\u0f69\u0f76\u0f6b\u0f50\u0f70\u0cb5\u0f6f\u0f45\u0f7d\u0a62\u0e8c\u0ecb\u0e92\u0525\u0550\u0f0f\u022d\u0f86\u0244\u0278\u0c45\u0f44\u0f37\u0832\u0f7c\u0f4a\u0ec9\u0f12\u0f4f\u0f78\u0f51\u0f8b\u0f7b\u0fa4\u0e0c\u0d32\u0acd\u0c7a\u050a\u0524\u05e1\u05d1\u0c81\u04c1\u06e7\u09cd\u0a89\u024f\u020f\u05de\u05a7\u0c8b\u05e9\u05e4\u050b\u0ee7\u0eb6\u0e78\u0722\u08e8\u0ce3\u0603\u0bec\u0ce7\u04f0\u014b\u0112\u028d\u060b\u0623\u0fcb\u0fcc\u06233\u0131\u02df\u02e0\u0131\u04621d\u028ea-\u0312e7\u0fd97f\u0fdca\u03602-\u0147\u01bd\u023eaa\u033ec8\u0625\u0627\u06ad\u062a\u0e38\u0e7e\u0dec"W\u0ebf\u0b77\u0e3f\u0222\u0dc4\u0f8f\u0e12\u0af2\u0df4\u06e9\u023f\u0cd0\u04f3\u062aa\u09d3\u0cd5\u0a25\u0ec8\u090c\u0f54\u0f12\u0baa\u091e\u0313\u0e19\u0923\u0fa2\u0bdf\u0cb3\u0be6\u0fa5\u0be5\u0c1b\u0f87\u0e92\u0da6\u08db\u0e08\u0d64\u0d33\u0e24\u097d\u0d14\u0edf\u0de0\u0393\u0762\u07d6\u0685\u0eb4\u071e\u0ee9\u0eb8\u08e7\u0b06\u046a\u0bbc\u0ff2\u0e3aY\u0ff6\u0e3e\u070e\u0e45\u1002r\u1004\u0e4b\u057a\u1007\u01e7\u0193\u098d\u07c9\u0b9f\u0ba8\u0af8\u0c83\u0ca3\u0d1d\u041e\u0e06\u0e51\u0e59\u0e89\u0edd\u0c8f\u0e24\u0f5f\u0932\u03c3\u06da\u0e91\u0ea5\u0a2e\u0bfb\u0a14\u08c0\u0710\u0743\u0e88\u0d38\u045b\u0344\u03689\u046a\u02ca\u0b1e\u0e87\u074b\u0959\u0c15\u0d01\u0540\u027e\u0dd8\u0da8\u0bdc\u0d34\u08fb\u0ddf\u0e28\u0982\u0700\u016f\u0fbd\u1029\u0db6\u102b\u102d\u015d\u0ebc\u0e7f\u022d\u0f65\u0e82\u0dc3\u0d5d\u0b7b\u0b13\u0527\u0286\u0cf9\u07ce\u0f59\u0865\u0908\u0a0f\u0b38\u0193\u0f95\u0ff4\u05c6\u0df5\u02aa\u097d\u0c0a\u025b\u0ffc\u0d73\u0d02\u0ed8\u0a1e\u07ca\u0f72\u103e\u0ca9\u0e0an\u0234f\u0757e\u06b9\u0740\u1088\u029c\u1025\u0531\u0b5f\u063d\u022d\u1032\u0d62\u09f7\u0e0f\u0c37\u0e8f\u06da\u03d3\u09f3\u0bd6\u0c9e\u0fb3\u0a63\u07cc\u0b64\u0b1f\u0d71\u0531\u0510\u0dca\u104a\u0bfb\u1063\u0eae\u0ba8\u085b\u101f\u05bd\u0ee2\u0e2a\u01e2\u0d45\u0d72\u0546\u0340\u0b67\u0d82\u0b8e\u1076\u0de6\u1078\u0e33\u06ad\u0ce1\u0727\u0194\u060b\u0e9a\u0789\u0ff1\u0cef\u107c\u10d8\u107f\u0ec2\u0c9e\u0ac4\u0d66\u0efb\u0ef9\u0b80\u10e8\u1008\u0224\u0efe\u0b1f\u0b43\u0fab\u04ac\u04e6\u0796\u07fb\u10f3\u0ea1\u0f01\u069c\u0562\u0f04\u100a\u0f6a\u1019\u0fb7\u047e\u0fae\u05e3\u05d3\u015d\u0d6e\u01d9\u10b9\u1026\u10f1\u059e\u021a\u1101\u05d2\u05ad\u0cd9\u0b6a\u0fbe\u102a\u08e6\u0cdf\u06a6\u0fc3\u0245\u02d4\u0121\u0d6e\u0112\u102e\u0100\u0e97\u0fee\u0629\u0b2a\u0eef\u0b0b\u0f04\u10e3\u0e40\u10e5\u0ef7\u10eb\u0d61\u0a24\u0194\u040d\u0329\u0331\u0307\u0155\u027b\u10e6\u041e\u033e\u02c5\u0295\u02a7\u0188\u027b\u1091\u0a19\u0741\u02b1\u0344\u0ccd\u01b3\u027b\u0b84\u0bd6\u06fd\u0dfd\u090f\u05a6\u0d92\u0a24\u0f90\u0d00\u06d6\u0d02\u1094\u0d7f\u08a8\u1001\u07b6\u08af\u0e5e\u0c18ma\u06c7\u084a\u04f2\u1157\u1159\u0573\u04c4\u1003\u1005\u047e\u017d\u1020\u10af\u0201\u1107\u0bad\u091e\u1138\u0b55\u10bb\u0a64\u0525\u1011\u0813\u1013\u1017\u0818\u0c1e\u079f\u07d6\u0855\u1109\u0dd9\u09f6\u104d\u1022\u0e25\u09fa\u10ca\u086f\u0937\u06fb\u015d\u02ad\u0ec7\u0e26\u0f7e\u0d06\u0a29\u05da\u0e15\u033e\u117a\u1018\u10c1\u0ca2\u0952\u0f98\u0a5e\u0fa2\u1179\u0d06\u09e4\u0a92\u1106\u0cc5\u050f\u1072\u0429\u0334\u0704\u1167\u083e\u0d07\u1046\u02bc\u0531\u0386\u0836\u0c37\u0428\u0768\u0d1f\u0e14\u085e\u1132\u0699\u113a\u104a\u0c14\u0e18\u11a1\u0ecf\u0bd4\u0ecd\u11ad\u0193\u0df5\u04c0\u0866\u0d9d\u081e\u0d06\u080b\u095d\u0a06\u0973\u11b8\u11bc\u0ba8\u0e23\u117c\u097d\u027e\u117f\u1182\u01dd\u119c\u023e\u0e88\u11bb\u0b45\u1088\u0128\u0ee3\u0807\u022c\u112c\u038f\u112f\u1139\u0e29\u0e0d\u0938\u10a8\u06e2\u11d3\u0293\u1065\u10b5\u03c4\u1135\u0179\u0376\u09f9\u11b0\u11dd\u06c3\u11c5\u1044\u06fb\u0535\u0376\u1065\u0f5b\u08cc\u113d\u032a\u036b\u1130\u103d\u11c5\u027f\u0e86\u0569\u1165\u109b\u11c6\u0eca\u114c\u0ba9\u10b3\u0142\u0110\u09b3\u07d6\u09c6\u06c3\u0842\u05c3z\u1175\u09d6\u101a\u0972\u11a0\u117b\u0cc1\u0ee0\u1199\u0eaf\u0292\u0ccc\u0809\u0ccb\u1075\u0ad8\u08e5\u0aa3\u10d7\u08e9\u0b06\u1060\u060bks-\u011b\u10a4\u10df\u0deb\u0e3a\u120d\u1125\u0ff9\u1081\u1133\u0110\u0313\u02e6\u0314\u0ffe\u0b58\u02b0\u02a6\u03c1\u11ee\u10ec\u0378\u029e\u02c6\u040d\u0512\u0f9f\u041d\u1232\u0333\u02e7\u0267\u11ff\u0784\u1238\u0314\u01a8\u0c21\u0cbd\u0c26\u02d1\u014a\u02df\u06fa\u0bcb\u0a62\u1244\u02e6\u02ae\u1241\u09e6\u112b\u0284\u0283\u02df\u11e4\u0213\u0f3b\u015c\u02c7\u01a8\u0f63\u01ec\u0ac8\u109a\u01f1\u0e42\u0523\u02b9\u0166\u0710\u01ec\u11ba\u0540\u0c29\u0a2d\u01ec\u114f\u090d\u0ed8\u047f\u0423\u0d1c\u0d99\u0fe6\u0b33\u0523\u0438\u0c34\u0d44\u0150\u028a\u11a5\u089a\u07ce\u0780\u0267\u126e\u11f9\u1133\u0f2e\u0193\u1272\u0c61\u028c\u06fd\u0f5d\u11de\u128e\u1286\u0c43\u1273\u11f9\u1275\u0a0c\u1103\u0429\u0f7f\u11c5\u0f87\u1058\u0b68\u05d9\u0c3d\u11db\u11fa\u0652\u1274\u0fb0\u02a5\u07b0\u11dc\u0a64\u12a0\u0b42\u05d9\u0740\u11c4\u128b\u0531\u126c\u1280\u0748\u0af9\u11bb\u12b4\u0dd3\u09d6\u1289\u126b\u11fe\u01f1\u0df5\u0c4f\u12aa\u11df\u0dd6\u12ad\u10bc\u09e2\u0c56\u1141\u11b9\u1128\u020d\u1270\u01f7\u127f\u0558\u0c37\u0922\u09ad\u0b1e\u084f\u09a8\u06e9\u090b\u106e\u01ec\u1021\u11cc\u0e2b\u0c6d\u10f0\u0638\u0b45\u06e7\u126a\u0841\u1028\u121d\u0aa1\u10d6\u0e3b\u0ce0\u0d50\u0ce2\u0aaa\u0f40\u022d\u0d8d"\u0aae\u022d\u0ab0\u07bf\u04e5\u0b06\u02ae\u102f\u10d3\u121d\u12f2"\u0ab0\u0d51\u0131\u12f5\u04ad\u0131C\u0ce3\u022d\u0ab4\u06b9\u0e1d\u04a0\u08f4\u0d4c\u1005\u0b0c\u0131\u0b31"\u0b53"\u0b74\u022d\u0b9a"b\u0131\u0bc0\u04cf\u0d59\u0e0a\u0131\u0dbe\u0ded\u1114\u0e81"\u069e\u022dG\u0131H\u0131I\u121f"T\u0131\u0ff5\u10ad\u0131\u107e\u10e2"\u1124"\u120d\u08ed\u0cd0\u0100\u0282\u0147\u01312\u1319vWTr0uRBGH\u018a6Y\u1318\u022d\u0fd15\u0ff1\u08e0\u0112\u011f\u0b2c'),
|
|
t.exports = e
|
|
}
|
|
, function(t, n, e) {
|
|
(function(n) {
|
|
var r = e(5)
|
|
, o = e(6)
|
|
, i = e(2).Fiber;
|
|
function u(t) {
|
|
this.realm = new r(t),
|
|
this.realm.global.startupRandom = Date.parse(new Date) / 1e3,
|
|
this.realm.global.count = 100
|
|
}
|
|
u.prototype.eval = function(t, n) {
|
|
return t = function(t) {
|
|
var n, e = {}, r = t.split(""), o = r[0], i = r[0], u = [o], p = 256;
|
|
for (t = 1; t < r.length; t++)
|
|
n = (n = r[t].charCodeAt(0)) < 256 ? r[t] : e[n] || i + o,
|
|
u.push(n),
|
|
o = n.charAt(0),
|
|
e[p] = i + o,
|
|
p++,
|
|
i = n;
|
|
return u.join("")
|
|
}(t),
|
|
this.run(u.fromJSON(JSON.parse(t)), n)
|
|
}
|
|
,
|
|
u.prototype.run = function(t, n) {
|
|
if (n = this.createFiber(t, n),
|
|
n.run(),
|
|
!n.paused)
|
|
return n.rexp
|
|
}
|
|
,
|
|
u.prototype.call = function(t, n) {
|
|
return this.realm.global[t].apply(this, n)
|
|
}
|
|
,
|
|
u.prototype.createFiber = function(t, n) {
|
|
return n = new i(this.realm,n),
|
|
n.pushFrame(t, this.realm.global),
|
|
n
|
|
}
|
|
,
|
|
u.fromJSON = o.fromJSON,
|
|
t.exports = u
|
|
}
|
|
).call(this)
|
|
}
|
|
, function(t, e, r) {
|
|
function o(t) {
|
|
return (o = "function" == typeof Symbol && "symbol" == n(Symbol.iterator) ? function(t) {
|
|
return n(t)
|
|
}
|
|
: function(t) {
|
|
return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : n(t)
|
|
}
|
|
)(t)
|
|
}
|
|
(function() {
|
|
var n = {}.hasOwnProperty
|
|
, e = r(0)
|
|
, i = e.prototypeOf
|
|
, u = e.hasProp
|
|
, p = (e = r(1),
|
|
e.ArrayIterator)
|
|
, s = e.StopIteration;
|
|
c.prototype.inv = function(t) {
|
|
return -t
|
|
}
|
|
,
|
|
c.prototype.lnot = function(t) {
|
|
return !t
|
|
}
|
|
,
|
|
c.prototype.not = function(t) {
|
|
return ~t
|
|
}
|
|
,
|
|
c.prototype.inc = function(t) {
|
|
return t + 1
|
|
}
|
|
,
|
|
c.prototype.dec = function(t) {
|
|
return t - 1
|
|
}
|
|
,
|
|
c.prototype.add = function(t, n) {
|
|
return n + t
|
|
}
|
|
,
|
|
c.prototype.sub = function(t, n) {
|
|
return n - t
|
|
}
|
|
,
|
|
c.prototype.mul = function(t, n) {
|
|
return n * t
|
|
}
|
|
,
|
|
c.prototype.div = function(t, n) {
|
|
return n / t
|
|
}
|
|
,
|
|
c.prototype.mod = function(t, n) {
|
|
return n % t
|
|
}
|
|
,
|
|
c.prototype.shl = function(t, n) {
|
|
return n << t
|
|
}
|
|
,
|
|
c.prototype.sar = function(t, n) {
|
|
return n >> t
|
|
}
|
|
,
|
|
c.prototype.shr = function(t, n) {
|
|
return n >>> t
|
|
}
|
|
,
|
|
c.prototype.or = function(t, n) {
|
|
return n | t
|
|
}
|
|
,
|
|
c.prototype.and = function(t, n) {
|
|
return n & t
|
|
}
|
|
,
|
|
c.prototype.xor = function(t, n) {
|
|
return n ^ t
|
|
}
|
|
,
|
|
c.prototype.ceq = function(t, n) {
|
|
return n == t
|
|
}
|
|
,
|
|
c.prototype.cneq = function(t, n) {
|
|
return n != t
|
|
}
|
|
,
|
|
c.prototype.cid = function(t, n) {
|
|
return n === t
|
|
}
|
|
,
|
|
c.prototype.cnid = function(t, n) {
|
|
return n !== t
|
|
}
|
|
,
|
|
c.prototype.lt = function(t, n) {
|
|
return n < t
|
|
}
|
|
,
|
|
c.prototype.lte = function(t, n) {
|
|
return n <= t
|
|
}
|
|
,
|
|
c.prototype.gt = function(t, n) {
|
|
return t < n
|
|
}
|
|
,
|
|
c.prototype.gte = function(t, n) {
|
|
return t <= n
|
|
}
|
|
,
|
|
e = c;
|
|
function c(t) {
|
|
var e, r, c = {
|
|
window: "undefined" == typeof window ? {} : window,
|
|
undefined: void 0,
|
|
Object: Object,
|
|
Function: Function,
|
|
Number: Number,
|
|
Boolean: Boolean,
|
|
String: String,
|
|
Array: Array,
|
|
Date: Date,
|
|
RegExp: RegExp,
|
|
Error: Error,
|
|
StopIteration: s,
|
|
Math: Math,
|
|
JSON: JSON,
|
|
console: console,
|
|
encodeURIComponent: encodeURIComponent,
|
|
unescape: unescape,
|
|
Uint8Array: Uint8Array,
|
|
parseInt: parseInt,
|
|
escape: escape,
|
|
decodeURIComponent: decodeURIComponent
|
|
};
|
|
for (e in c.global = c,
|
|
this.has = function(t, n) {
|
|
return null != t && (!!u(t, n) || this.has(i(t), n))
|
|
}
|
|
,
|
|
this.get = function(t, n) {
|
|
if (null != t)
|
|
return u(t, n) || "string" == typeof t && "number" == typeof n || "length" === n ? t[n] : this.get(i(t), n)
|
|
}
|
|
,
|
|
this.set = function(t, n, e) {
|
|
var r = o(t);
|
|
return ("object" === r || "function" === r) && (t[n] = e),
|
|
e
|
|
}
|
|
,
|
|
this.del = function(t, n) {
|
|
var e = o(t);
|
|
return "object" !== e && "function" !== e || delete t[n]
|
|
}
|
|
,
|
|
this.instanceOf = function(t, n) {
|
|
var e;
|
|
return null != n && ("object" === (e = o(n)) || "function" === e) && n instanceof t
|
|
}
|
|
,
|
|
this.enumerateKeys = function(t) {
|
|
var n, e = [];
|
|
for (n in t)
|
|
"__mdid__" !== n && e.push(n);
|
|
return new p(e)
|
|
}
|
|
,
|
|
t)
|
|
n.call(t, e) && (r = t[e],
|
|
c[e] = r);
|
|
this.global = c
|
|
}
|
|
t.exports = e
|
|
}
|
|
).call(this)
|
|
}
|
|
, function(t, n, e) {
|
|
(function() {
|
|
var n = e(7)
|
|
, r = function t(n) {
|
|
for (var e = o(n[2]), r = [], p = n[3], s = 0; s < p.length; s++) {
|
|
var c = p[s];
|
|
r.push(t(c))
|
|
}
|
|
for (var a = n[4], f = a.length, h = [], l = n[5], d = 0; d < l.length; d++) {
|
|
var y = l[d];
|
|
h.push({
|
|
start: -1 !== y[0] ? y[0] : null,
|
|
handler: -1 !== y[1] ? y[1] : null,
|
|
finalizer: -1 !== y[2] ? y[2] : null,
|
|
end: -1 !== y[3] ? y[3] : null
|
|
})
|
|
}
|
|
for (var w = n[6], m = n[7], b = [], g = n[8], v = 0; v < g.length; v++) {
|
|
var S = g[v];
|
|
b.push(i(S))
|
|
}
|
|
return new u(null,null,e,r,a,f,h,w,m,b,null)
|
|
}
|
|
, o = function(t) {
|
|
for (var e = [], r = 0; r < t.length; r++) {
|
|
for (var o = t[r], i = n[o[0]], u = [], p = 1, s = 1, c = o.length; 1 <= c ? s < c : c < s; p = 1 <= c ? ++s : --s)
|
|
u.push(o[p]);
|
|
i = new i(u.length ? u : null),
|
|
e.push(i)
|
|
}
|
|
return e
|
|
}
|
|
, i = function(t) {
|
|
var n = t.lastIndexOf("/")
|
|
, e = t.slice(0, n);
|
|
n = t.slice(n + 1);
|
|
return new RegExp(e,n)
|
|
}
|
|
, u = (p.fromJSON = r,
|
|
p);
|
|
function p(t, n, e, r, o, i, u, p, s, c, a) {
|
|
this.filename = t,
|
|
this.name = n,
|
|
this.instructions = e,
|
|
this.scripts = r,
|
|
this.localNames = o,
|
|
this.localLength = i,
|
|
this.guards = u,
|
|
this.stackSize = p,
|
|
this.strings = s,
|
|
this.regexps = c,
|
|
this.source = a
|
|
}
|
|
t.exports = u
|
|
}
|
|
).call(this)
|
|
}
|
|
, function(t, e, r) {
|
|
function o(t) {
|
|
return (o = "function" == typeof Symbol && "symbol" == n(Symbol.iterator) ? function(t) {
|
|
return n(t)
|
|
}
|
|
: function(t) {
|
|
return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : n(t)
|
|
}
|
|
)(t)
|
|
}
|
|
(function() {
|
|
var n, e, i = r(1).StopIteration, u = r(0), p = (u.defProp,
|
|
u.hasProp), s = (u = r(2),
|
|
u.Fiber), c = u.Scope, a = u.WithScope, f = (n = 0,
|
|
function(t, e, r) {
|
|
var o;
|
|
return o = function(t) {
|
|
t && (this.args = t)
|
|
}
|
|
,
|
|
Object.defineProperty(o, "name", {
|
|
writable: !0,
|
|
value: t
|
|
}),
|
|
o.prototype.id = n++,
|
|
o.prototype.name = t,
|
|
o.prototype.exec = e,
|
|
o.prototype.calculateFactor = r || function() {
|
|
return 2
|
|
}
|
|
,
|
|
o
|
|
}
|
|
), h = (u = [new (e = function(t, n, e) {
|
|
return f(t, n, e)
|
|
}
|
|
)("",(function(t, n, e) {
|
|
return b(t)
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
return n.pop()
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
return n.push(n.top())
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
var r = n.pop()
|
|
, o = n.pop();
|
|
return n.push(r),
|
|
n.push(o)
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
return t.fiber.rv = n.pop(),
|
|
b(t)
|
|
}
|
|
)), new e("",(function(t, n) {
|
|
return t.paused = !0
|
|
}
|
|
)), new e("",(function(t, n) {
|
|
return t.fiber.yielded = n.pop(),
|
|
t.fiber.pause()
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
return g(t, n.pop())
|
|
}
|
|
)), new e("",(function(t) {
|
|
return t.guards.push(t.script.guards[this.args[0]])
|
|
}
|
|
)), new e("",(function(t) {
|
|
var n = t.guards[t.guards.length - 1];
|
|
if (t.script.guards[this.args[0]] === n)
|
|
return t.guards.pop()
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
return t.fiber.r1 = n.pop()
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
return t.fiber.r2 = n.pop()
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
return t.fiber.r3 = n.pop()
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
return n.push(t.fiber.r1)
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
return n.push(t.fiber.r2)
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
return n.push(t.fiber.r3)
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
return n.fiber.rexp = n.pop()
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
return h(t, 0, "iterator", n.pop())
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.enumerateKeys(n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
if (h(t, 0, "next", n.pop()),
|
|
t.error instanceof i)
|
|
return t.error = null,
|
|
t.paused = !1,
|
|
t.ip = this.args[0]
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
if (e.set(1, n.pop()),
|
|
n = n.pop(),
|
|
this.args[0])
|
|
return e.set(2, n)
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.global)
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
var o = this.args[0]
|
|
, i = this.args[1]
|
|
, u = e.get(1);
|
|
if (o < u.length)
|
|
return e.set(i, Array.prototype.slice.call(u, o))
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
return l(t, this.args[0], n.pop(), null, null, !0)
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
return l(t, this.args[0], n.pop(), null, this.args[1])
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
return h(t, this.args[0], n.pop(), n.pop(), this.args[1])
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
var o = n.pop()
|
|
, i = n.pop();
|
|
return null == o ? g(t, new Error("Cannot read property '" + i + "' of " + o)) : n.push(r.get(o, i))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
var o = n.pop()
|
|
, i = n.pop()
|
|
, u = n.pop();
|
|
return null == o ? g(t, new Error("Cannot set property '" + i + "' of " + o)) : n.push(r.set(o, i, u))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
var o = n.pop()
|
|
, i = n.pop();
|
|
return null == o ? g(t, new Error("Cannot convert null to object")) : n.push(r.del(o, i))
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
for (var r = this.args[0], o = this.args[1], i = e; r--; )
|
|
i = i.parent;
|
|
return n.push(i.get(o))
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
for (var r = this.args[0], o = this.args[1], i = e; r--; )
|
|
i = i.parent;
|
|
return n.push(i.set(o, n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
for (var o, i = this.args[0]; e instanceof a; ) {
|
|
if (e.has(i))
|
|
return n.push(e.get(i));
|
|
e = e.parent
|
|
}
|
|
for (; e instanceof c; ) {
|
|
if (0 <= (o = e.name(i)))
|
|
return n.push(e.get(o));
|
|
e = e.parent
|
|
}
|
|
return p(r.global, i) || this.args[1] ? n.push(r.global[i]) : g(t, new Error(i + " is not defined"))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
for (var o, i = this.args[0], u = n.pop(); e instanceof a; ) {
|
|
if (e.has(i))
|
|
return n.push(e.set(i, u));
|
|
e = e.parent
|
|
}
|
|
for (; e instanceof c; ) {
|
|
if (0 <= (o = e.name(i)))
|
|
return n.push(e.set(o, u));
|
|
e = e.parent
|
|
}
|
|
return n.push(r.global[i] = u)
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return p(r.global, this.args[0]) || this.args[1] ? n.push(r.global[this.args[0]]) : g(t, new Error(this.args[0] + " is not defined"))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.global[this.args[0]] = n.pop())
|
|
}
|
|
)), new e("",(function(t) {
|
|
return t.scope = new c(t.scope,t.script.localNames,t.script.localLength)
|
|
}
|
|
)), new e("",(function(t) {
|
|
return t.scope = t.scope.parent
|
|
}
|
|
)), new e("",(function(t, n) {
|
|
return t.scope = new a(t.scope,n.pop())
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.inv(n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.lnot(n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.not(n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.inc(n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.dec(n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.add(n.pop(), n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.sub(n.pop(), n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.mul(n.pop(), n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.div(n.pop(), n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.mod(n.pop(), n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.shl(n.pop(), n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.sar(n.pop(), n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.shr(n.pop(), n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.or(n.pop(), n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.and(n.pop(), n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.xor(n.pop(), n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.ceq(n.pop(), n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.cneq(n.pop(), n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.cid(n.pop(), n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.cnid(n.pop(), n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.lt(n.pop(), n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.lte(n.pop(), n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.gt(n.pop(), n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.gte(n.pop(), n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.has(n.pop(), n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(r.instanceOf(n.pop(), n.pop()))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(o(n.pop()))
|
|
}
|
|
)), new e("",(function(t, n) {
|
|
return n.pop(),
|
|
n.push(void 0)
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
return t.ip = this.args[0]
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
if (n.pop())
|
|
return t.ip = this.args[0]
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
if (!n.pop())
|
|
return t.ip = this.args[0]
|
|
}
|
|
)), new e("",(function(t, n) {
|
|
return n.push(void 0)
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
return n.push(this.args[0])
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
return n.push(t.script.strings[this.args[0]])
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
return n.push(new RegExpProxy(t.script.regexps[this.args[0]],r))
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
for (var o = this.args[0], i = {}; o--; )
|
|
r.set(i, n.pop(), n.pop());
|
|
return n.push(i)
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
for (var o = this.args[0], i = new Array(o); o--; )
|
|
i[o] = n.pop();
|
|
return n.push(i)
|
|
}
|
|
)), new e("",(function(t, n, e, r) {
|
|
var o = this.args[0];
|
|
return n.push(d(t.script.scripts[o], e, r, this.args[1]))
|
|
}
|
|
)), new e("",(function(t) {
|
|
return t.setLine(this.args[0])
|
|
}
|
|
)), new e("",(function(t) {
|
|
return t.setColumn(this.args[0])
|
|
}
|
|
)), new e("",(function(t, n, e) {
|
|
return v()
|
|
}
|
|
))],
|
|
function(t, n, e, r, o) {
|
|
var i = t.evalStack
|
|
, u = t.realm;
|
|
if (null == r)
|
|
return g(t, new Error("Cannot call method '" + e + "' of " + (void 0 === r ? "undefined" : "null")));
|
|
var p = r.constructor.name || "Object";
|
|
u = u.get(r, e);
|
|
return u instanceof Function ? l(t, n, u, r, o) : null == u ? (i.pop(),
|
|
g(t, new Error("Object #<" + p + "> has no method '" + e + "'"))) : (i.pop(),
|
|
g(t, new Error("Property '" + e + "' of object #<" + p + "> is not a function")))
|
|
}
|
|
), l = function(t, n, e, r, o, i) {
|
|
if ("function" != typeof e)
|
|
return g(t, new Error("object is not a function"));
|
|
for (var u = t.evalStack, p = t.fiber, s = t.realm, c = {
|
|
length: n,
|
|
callee: e
|
|
}; n; )
|
|
c[--n] = u.pop();
|
|
r = r || s.global,
|
|
c = Array.prototype.slice.call(c);
|
|
try {
|
|
var a = i ? m(e, c) : e.apply(r, c);
|
|
if (!p.paused)
|
|
return u.push(a)
|
|
} catch (h) {
|
|
g(t, h)
|
|
}
|
|
}, d = function(t, n, e, r) {
|
|
return function r() {
|
|
var o, i, u, p = !1;
|
|
if ((i = r.__fiber__) ? (i.callStack[i.depth].paused = !0,
|
|
r.__fiber__ = null,
|
|
o = r.__construct__,
|
|
r.__construct__ = null) : (i = new s(e),
|
|
p = !0),
|
|
u = r.__callname__ || t.name,
|
|
r.__callname__ = null,
|
|
i.pushFrame(t, this, n, arguments, r, u, o),
|
|
p)
|
|
return i.run(),
|
|
i.rv
|
|
}
|
|
}, y = function(t) {
|
|
return 1 === t.length && (0 | t[0]) === t[0] ? new Array(t[0]) : t.slice()
|
|
}, w = function(t) {
|
|
return 1 === t.length ? new RegExp(t[0]) : new RegExp(t[0],t[1])
|
|
}, m = function(t, n) {
|
|
var e;
|
|
return t === Array ? y(n) : t === Date ? new Date : t === RegExp ? w(n) : t === Number ? new Number(n[0]) : t === Boolean ? new Boolean(n[0]) : t === Uint8Array ? new Uint8Array(n[0]) : ((e = function() {
|
|
return t.apply(this, n)
|
|
}
|
|
).prototype = t.prototype,
|
|
new e)
|
|
}, b = function(t) {
|
|
return t.evalStack.clear(),
|
|
t.exitIp = t.ip
|
|
}, g = function(t, n) {
|
|
return t.error = n,
|
|
t.paused = !0
|
|
}, v = function() {};
|
|
t.exports = u
|
|
}
|
|
).call(this)
|
|
}
|
|
],
|
|
t.c = r,
|
|
t.d = function(n, e, r) {
|
|
t.o(n, e) || Object.defineProperty(n, e, {
|
|
enumerable: !0,
|
|
get: r
|
|
})
|
|
}
|
|
,
|
|
t.r = function(t) {
|
|
"undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(t, Symbol.toStringTag, {
|
|
value: "Module"
|
|
}),
|
|
Object.defineProperty(t, "__esModule", {
|
|
value: !0
|
|
})
|
|
}
|
|
,
|
|
t.t = function(e, r) {
|
|
if (1 & r && (e = t(e)),
|
|
8 & r)
|
|
return e;
|
|
if (4 & r && "object" == n(e) && e && e.__esModule)
|
|
return e;
|
|
var o = Object.create(null);
|
|
if (t.r(o),
|
|
Object.defineProperty(o, "default", {
|
|
enumerable: !0,
|
|
value: e
|
|
}),
|
|
2 & r && "string" != typeof e)
|
|
for (var i in e)
|
|
t.d(o, i, function(t) {
|
|
return e[t]
|
|
}
|
|
.bind(null, i));
|
|
return o
|
|
}
|
|
,
|
|
t.n = function(n) {
|
|
var e = n && n.__esModule ? function() {
|
|
return n["default"]
|
|
}
|
|
: function() {
|
|
return n
|
|
}
|
|
;
|
|
return t.d(e, "a", e),
|
|
e
|
|
}
|
|
,
|
|
t.o = function(t, n) {
|
|
return Object.prototype.hasOwnProperty.call(t, n)
|
|
}
|
|
,
|
|
t.p = "",
|
|
t(t.s = 3);
|
|
function t(n) {
|
|
if (r[n])
|
|
return r[n].exports;
|
|
var o = r[n] = {
|
|
i: n,
|
|
l: !1,
|
|
exports: {}
|
|
};
|
|
return e[n].call(o.exports, o, o.exports, t),
|
|
o.l = !0,
|
|
o.exports
|
|
}
|
|
var e, r
|
|
}
|
|
))
|
|
}
|
|
).call(this, e("dd40")(t))
|
|
},
|
|
"dd40": function(e, n) {
|
|
e.exports = function(e) {
|
|
if (!e.webpackPolyfill) {
|
|
var n = Object.create(e);
|
|
n.children || (n.children = []),
|
|
Object.defineProperty(n, "loaded", {
|
|
enumerable: !0,
|
|
get: function() {
|
|
return n.l
|
|
}
|
|
}),
|
|
Object.defineProperty(n, "id", {
|
|
enumerable: !0,
|
|
get: function() {
|
|
return n.i
|
|
}
|
|
}),
|
|
Object.defineProperty(n, "exports", {
|
|
enumerable: !0
|
|
}),
|
|
n.webpackPolyfill = 1
|
|
}
|
|
return n
|
|
}
|
|
},
|
|
"a4d3": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("23e7")
|
|
, o = n("da84")
|
|
, i = n("d066")
|
|
, a = n("2ba4")
|
|
, c = n("c65b")
|
|
, u = n("e330")
|
|
, s = n("c430")
|
|
, f = n("83ab")
|
|
, l = n("4930")
|
|
, p = n("d039")
|
|
, d = n("1a2d")
|
|
, h = n("e8b5")
|
|
, v = n("1626")
|
|
, y = n("861d")
|
|
, x = n("3a9b")
|
|
, b = n("d9b5")
|
|
, g = n("825a")
|
|
, m = n("7b0b")
|
|
, w = n("fc6a")
|
|
, A = n("a04b")
|
|
, S = n("577e")
|
|
, _ = n("5c6c")
|
|
, O = n("7c73")
|
|
, j = n("df75")
|
|
, E = n("241c")
|
|
, k = n("057f")
|
|
, M = n("7418")
|
|
, T = n("06cf")
|
|
, N = n("9bf2")
|
|
, I = n("37e8")
|
|
, C = n("d1e7")
|
|
, R = n("f36a")
|
|
, P = n("6eeb")
|
|
, L = n("5692")
|
|
, D = n("f772")
|
|
, U = n("d012")
|
|
, F = n("90e3")
|
|
, $ = n("b622")
|
|
, B = n("e538")
|
|
, Y = n("746f")
|
|
, V = n("d44e")
|
|
, G = n("69f3")
|
|
, z = n("b727").forEach
|
|
, W = D("hidden")
|
|
, Z = "Symbol"
|
|
, H = "prototype"
|
|
, Q = $("toPrimitive")
|
|
, X = G.set
|
|
, J = G.getterFor(Z)
|
|
, q = Object[H]
|
|
, K = o.Symbol
|
|
, tt = K && K[H]
|
|
, et = o.TypeError
|
|
, nt = o.QObject
|
|
, rt = i("JSON", "stringify")
|
|
, ot = T.f
|
|
, it = N.f
|
|
, at = k.f
|
|
, ct = C.f
|
|
, ut = u([].push)
|
|
, st = L("symbols")
|
|
, ft = L("op-symbols")
|
|
, lt = L("string-to-symbol-registry")
|
|
, pt = L("symbol-to-string-registry")
|
|
, dt = L("wks")
|
|
, ht = !nt || !nt[H] || !nt[H].findChild
|
|
, vt = f && p((function() {
|
|
return 7 != O(it({}, "a", {
|
|
get: function() {
|
|
return it(this, "a", {
|
|
value: 7
|
|
}).a
|
|
}
|
|
})).a
|
|
}
|
|
)) ? function(t, e, n) {
|
|
var r = ot(q, e);
|
|
r && delete q[e],
|
|
it(t, e, n),
|
|
r && t !== q && it(q, e, r)
|
|
}
|
|
: it
|
|
, yt = function(t, e) {
|
|
var n = st[t] = O(tt);
|
|
return X(n, {
|
|
type: Z,
|
|
tag: t,
|
|
description: e
|
|
}),
|
|
f || (n.description = e),
|
|
n
|
|
}
|
|
, xt = function(t, e, n) {
|
|
t === q && xt(ft, e, n),
|
|
g(t);
|
|
var r = A(e);
|
|
return g(n),
|
|
d(st, r) ? (n.enumerable ? (d(t, W) && t[W][r] && (t[W][r] = !1),
|
|
n = O(n, {
|
|
enumerable: _(0, !1)
|
|
})) : (d(t, W) || it(t, W, _(1, {})),
|
|
t[W][r] = !0),
|
|
vt(t, r, n)) : it(t, r, n)
|
|
}
|
|
, bt = function(t, e) {
|
|
g(t);
|
|
var n = w(e)
|
|
, r = j(n).concat(St(n));
|
|
return z(r, (function(e) {
|
|
f && !c(mt, n, e) || xt(t, e, n[e])
|
|
}
|
|
)),
|
|
t
|
|
}
|
|
, gt = function(t, e) {
|
|
return void 0 === e ? O(t) : bt(O(t), e)
|
|
}
|
|
, mt = function(t) {
|
|
var e = A(t)
|
|
, n = c(ct, this, e);
|
|
return !(this === q && d(st, e) && !d(ft, e)) && (!(n || !d(this, e) || !d(st, e) || d(this, W) && this[W][e]) || n)
|
|
}
|
|
, wt = function(t, e) {
|
|
var n = w(t)
|
|
, r = A(e);
|
|
if (n !== q || !d(st, r) || d(ft, r)) {
|
|
var o = ot(n, r);
|
|
return !o || !d(st, r) || d(n, W) && n[W][r] || (o.enumerable = !0),
|
|
o
|
|
}
|
|
}
|
|
, At = function(t) {
|
|
var e = at(w(t))
|
|
, n = [];
|
|
return z(e, (function(t) {
|
|
d(st, t) || d(U, t) || ut(n, t)
|
|
}
|
|
)),
|
|
n
|
|
}
|
|
, St = function(t) {
|
|
var e = t === q
|
|
, n = at(e ? ft : w(t))
|
|
, r = [];
|
|
return z(n, (function(t) {
|
|
!d(st, t) || e && !d(q, t) || ut(r, st[t])
|
|
}
|
|
)),
|
|
r
|
|
};
|
|
if (l || (K = function() {
|
|
if (x(tt, this))
|
|
throw et("Symbol is not a constructor");
|
|
var t = arguments.length && void 0 !== arguments[0] ? S(arguments[0]) : void 0
|
|
, e = F(t)
|
|
, n = function(t) {
|
|
this === q && c(n, ft, t),
|
|
d(this, W) && d(this[W], e) && (this[W][e] = !1),
|
|
vt(this, e, _(1, t))
|
|
};
|
|
return f && ht && vt(q, e, {
|
|
configurable: !0,
|
|
set: n
|
|
}),
|
|
yt(e, t)
|
|
}
|
|
,
|
|
tt = K[H],
|
|
P(tt, "toString", (function() {
|
|
return J(this).tag
|
|
}
|
|
)),
|
|
P(K, "withoutSetter", (function(t) {
|
|
return yt(F(t), t)
|
|
}
|
|
)),
|
|
C.f = mt,
|
|
N.f = xt,
|
|
I.f = bt,
|
|
T.f = wt,
|
|
E.f = k.f = At,
|
|
M.f = St,
|
|
B.f = function(t) {
|
|
return yt($(t), t)
|
|
}
|
|
,
|
|
f && (it(tt, "description", {
|
|
configurable: !0,
|
|
get: function() {
|
|
return J(this).description
|
|
}
|
|
}),
|
|
s || P(q, "propertyIsEnumerable", mt, {
|
|
unsafe: !0
|
|
}))),
|
|
r({
|
|
global: !0,
|
|
wrap: !0,
|
|
forced: !l,
|
|
sham: !l
|
|
}, {
|
|
Symbol: K
|
|
}),
|
|
z(j(dt), (function(t) {
|
|
Y(t)
|
|
}
|
|
)),
|
|
r({
|
|
target: Z,
|
|
stat: !0,
|
|
forced: !l
|
|
}, {
|
|
for: function(t) {
|
|
var e = S(t);
|
|
if (d(lt, e))
|
|
return lt[e];
|
|
var n = K(e);
|
|
return lt[e] = n,
|
|
pt[n] = e,
|
|
n
|
|
},
|
|
keyFor: function(t) {
|
|
if (!b(t))
|
|
throw et(t + " is not a symbol");
|
|
if (d(pt, t))
|
|
return pt[t]
|
|
},
|
|
useSetter: function() {
|
|
ht = !0
|
|
},
|
|
useSimple: function() {
|
|
ht = !1
|
|
}
|
|
}),
|
|
r({
|
|
target: "Object",
|
|
stat: !0,
|
|
forced: !l,
|
|
sham: !f
|
|
}, {
|
|
create: gt,
|
|
defineProperty: xt,
|
|
defineProperties: bt,
|
|
getOwnPropertyDescriptor: wt
|
|
}),
|
|
r({
|
|
target: "Object",
|
|
stat: !0,
|
|
forced: !l
|
|
}, {
|
|
getOwnPropertyNames: At,
|
|
getOwnPropertySymbols: St
|
|
}),
|
|
r({
|
|
target: "Object",
|
|
stat: !0,
|
|
forced: p((function() {
|
|
M.f(1)
|
|
}
|
|
))
|
|
}, {
|
|
getOwnPropertySymbols: function(t) {
|
|
return M.f(m(t))
|
|
}
|
|
}),
|
|
rt) {
|
|
var _t = !l || p((function() {
|
|
var t = K();
|
|
return "[null]" != rt([t]) || "{}" != rt({
|
|
a: t
|
|
}) || "{}" != rt(Object(t))
|
|
}
|
|
));
|
|
r({
|
|
target: "JSON",
|
|
stat: !0,
|
|
forced: _t
|
|
}, {
|
|
stringify: function(t, e, n) {
|
|
var r = R(arguments)
|
|
, o = e;
|
|
if ((y(e) || void 0 !== t) && !b(t))
|
|
return h(e) || (e = function(t, e) {
|
|
if (v(o) && (e = c(o, this, t, e)),
|
|
!b(e))
|
|
return e
|
|
}
|
|
),
|
|
r[1] = e,
|
|
a(rt, null, r)
|
|
}
|
|
})
|
|
}
|
|
if (!tt[Q]) {
|
|
var Ot = tt.valueOf;
|
|
P(tt, Q, (function(t) {
|
|
return c(Ot, this)
|
|
}
|
|
))
|
|
}
|
|
V(K, Z),
|
|
U[W] = !0
|
|
},
|
|
"23e7": function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("06cf").f
|
|
, i = n("9112")
|
|
, a = n("6eeb")
|
|
, c = n("ce4e")
|
|
, u = n("e893")
|
|
, s = n("94ca");
|
|
t.exports = function(t, e) {
|
|
var n, f, l, p, d, h, v = t.target, y = t.global, x = t.stat;
|
|
if (f = y ? r : x ? r[v] || c(v, {}) : (r[v] || {}).prototype,
|
|
f)
|
|
for (l in e) {
|
|
if (d = e[l],
|
|
t.noTargetGet ? (h = o(f, l),
|
|
p = h && h.value) : p = f[l],
|
|
n = s(y ? l : v + (x ? "." : "#") + l, t.forced),
|
|
!n && void 0 !== p) {
|
|
if (typeof d == typeof p)
|
|
continue;
|
|
u(d, p)
|
|
}
|
|
(t.sham || p && p.sham) && i(d, "sham", !0),
|
|
a(f, l, d, t)
|
|
}
|
|
}
|
|
},
|
|
da84: function(t, e, n) {
|
|
(function(e) {
|
|
var n = function(t) {
|
|
return t && t.Math == Math && t
|
|
};
|
|
t.exports = n("object" == typeof globalThis && globalThis) || n("object" == typeof window && window) || n("object" == typeof self && self) || n("object" == typeof e && e) || function() {
|
|
return this
|
|
}() || Function("return this")()
|
|
}
|
|
).call(this, n("c8ba"))
|
|
},
|
|
c8ba: function(t, e) {
|
|
var n;
|
|
n = function() {
|
|
return this
|
|
}();
|
|
try {
|
|
n = n || new Function("return this")()
|
|
} catch (r) {
|
|
"object" === typeof window && (n = window)
|
|
}
|
|
t.exports = n
|
|
},
|
|
"06cf": function(t, e, n) {
|
|
var r = n("83ab")
|
|
, o = n("c65b")
|
|
, i = n("d1e7")
|
|
, a = n("5c6c")
|
|
, c = n("fc6a")
|
|
, u = n("a04b")
|
|
, s = n("1a2d")
|
|
, f = n("0cfb")
|
|
, l = Object.getOwnPropertyDescriptor;
|
|
e.f = r ? l : function(t, e) {
|
|
if (t = c(t),
|
|
e = u(e),
|
|
f)
|
|
try {
|
|
return l(t, e)
|
|
} catch (n) {}
|
|
if (s(t, e))
|
|
return a(!o(i.f, t, e), t[e])
|
|
}
|
|
},
|
|
"83ab": function(t, e, n) {
|
|
var r = n("d039");
|
|
t.exports = !r((function() {
|
|
return 7 != Object.defineProperty({}, 1, {
|
|
get: function() {
|
|
return 7
|
|
}
|
|
})[1]
|
|
}
|
|
))
|
|
},
|
|
d039: function(t, e) {
|
|
t.exports = function(t) {
|
|
try {
|
|
return !!t()
|
|
} catch (e) {
|
|
return !0
|
|
}
|
|
}
|
|
},
|
|
c65b: function(t, e) {
|
|
var n = Function.prototype.call;
|
|
t.exports = n.bind ? n.bind(n) : function() {
|
|
return n.apply(n, arguments)
|
|
}
|
|
},
|
|
d1e7: function(t, e, n) {
|
|
"use strict";
|
|
var r = {}.propertyIsEnumerable
|
|
, o = Object.getOwnPropertyDescriptor
|
|
, i = o && !r.call({
|
|
1: 2
|
|
}, 1);
|
|
e.f = i ? function(t) {
|
|
var e = o(this, t);
|
|
return !!e && e.enumerable
|
|
}
|
|
: r
|
|
},
|
|
"5c6c": function(t, e) {
|
|
t.exports = function(t, e) {
|
|
return {
|
|
enumerable: !(1 & t),
|
|
configurable: !(2 & t),
|
|
writable: !(4 & t),
|
|
value: e
|
|
}
|
|
}
|
|
},
|
|
fc6a: function(t, e, n) {
|
|
var r = n("44ad")
|
|
, o = n("1d80");
|
|
t.exports = function(t) {
|
|
return r(o(t))
|
|
}
|
|
},
|
|
"44ad": function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("e330")
|
|
, i = n("d039")
|
|
, a = n("c6b6")
|
|
, c = r.Object
|
|
, u = o("".split);
|
|
t.exports = i((function() {
|
|
return !c("z").propertyIsEnumerable(0)
|
|
}
|
|
)) ? function(t) {
|
|
return "String" == a(t) ? u(t, "") : c(t)
|
|
}
|
|
: c
|
|
},
|
|
e330: function(t, e) {
|
|
var n = Function.prototype
|
|
, r = n.bind
|
|
, o = n.call
|
|
, i = r && r.bind(o, o);
|
|
t.exports = r ? function(t) {
|
|
return t && i(t)
|
|
}
|
|
: function(t) {
|
|
return t && function() {
|
|
return o.apply(t, arguments)
|
|
}
|
|
}
|
|
},
|
|
c6b6: function(t, e, n) {
|
|
var r = n("e330")
|
|
, o = r({}.toString)
|
|
, i = r("".slice);
|
|
t.exports = function(t) {
|
|
return i(o(t), 8, -1)
|
|
}
|
|
},
|
|
"1d80": function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = r.TypeError;
|
|
t.exports = function(t) {
|
|
if (void 0 == t)
|
|
throw o("Can't call method on " + t);
|
|
return t
|
|
}
|
|
},
|
|
a04b: function(t, e, n) {
|
|
var r = n("c04e")
|
|
, o = n("d9b5");
|
|
t.exports = function(t) {
|
|
var e = r(t, "string");
|
|
return o(e) ? e : e + ""
|
|
}
|
|
},
|
|
c04e: function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("c65b")
|
|
, i = n("861d")
|
|
, a = n("d9b5")
|
|
, c = n("dc4a")
|
|
, u = n("485a")
|
|
, s = n("b622")
|
|
, f = r.TypeError
|
|
, l = s("toPrimitive");
|
|
t.exports = function(t, e) {
|
|
if (!i(t) || a(t))
|
|
return t;
|
|
var n, r = c(t, l);
|
|
if (r) {
|
|
if (void 0 === e && (e = "default"),
|
|
n = o(r, t, e),
|
|
!i(n) || a(n))
|
|
return n;
|
|
throw f("Can't convert object to primitive value")
|
|
}
|
|
return void 0 === e && (e = "number"),
|
|
u(t, e)
|
|
}
|
|
},
|
|
"861d": function(t, e, n) {
|
|
var r = n("1626");
|
|
t.exports = function(t) {
|
|
return "object" == typeof t ? null !== t : r(t)
|
|
}
|
|
},
|
|
1626: function(t, e) {
|
|
t.exports = function(t) {
|
|
return "function" == typeof t
|
|
}
|
|
},
|
|
d9b5: function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("d066")
|
|
, i = n("1626")
|
|
, a = n("3a9b")
|
|
, c = n("fdbf")
|
|
, u = r.Object;
|
|
t.exports = c ? function(t) {
|
|
return "symbol" == typeof t
|
|
}
|
|
: function(t) {
|
|
var e = o("Symbol");
|
|
return i(e) && a(e.prototype, u(t))
|
|
}
|
|
},
|
|
d066: function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("1626")
|
|
, i = function(t) {
|
|
return o(t) ? t : void 0
|
|
};
|
|
t.exports = function(t, e) {
|
|
return arguments.length < 2 ? i(r[t]) : r[t] && r[t][e]
|
|
}
|
|
},
|
|
"3a9b": function(t, e, n) {
|
|
var r = n("e330");
|
|
t.exports = r({}.isPrototypeOf)
|
|
},
|
|
fdbf: function(t, e, n) {
|
|
var r = n("4930");
|
|
t.exports = r && !Symbol.sham && "symbol" == typeof Symbol.iterator
|
|
},
|
|
4930: function(t, e, n) {
|
|
var r = n("2d00")
|
|
, o = n("d039");
|
|
t.exports = !!Object.getOwnPropertySymbols && !o((function() {
|
|
var t = Symbol();
|
|
return !String(t) || !(Object(t)instanceof Symbol) || !Symbol.sham && r && r < 41
|
|
}
|
|
))
|
|
},
|
|
"2d00": function(t, e, n) {
|
|
var r, o, i = n("da84"), a = n("342f"), c = i.process, u = i.Deno, s = c && c.versions || u && u.version, f = s && s.v8;
|
|
f && (r = f.split("."),
|
|
o = r[0] > 0 && r[0] < 4 ? 1 : +(r[0] + r[1])),
|
|
!o && a && (r = a.match(/Edge\/(\d+)/),
|
|
(!r || r[1] >= 74) && (r = a.match(/Chrome\/(\d+)/),
|
|
r && (o = +r[1]))),
|
|
t.exports = o
|
|
},
|
|
"342f": function(t, e, n) {
|
|
var r = n("d066");
|
|
t.exports = r("navigator", "userAgent") || ""
|
|
},
|
|
dc4a: function(t, e, n) {
|
|
var r = n("59ed");
|
|
t.exports = function(t, e) {
|
|
var n = t[e];
|
|
return null == n ? void 0 : r(n)
|
|
}
|
|
},
|
|
"59ed": function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("1626")
|
|
, i = n("0d51")
|
|
, a = r.TypeError;
|
|
t.exports = function(t) {
|
|
if (o(t))
|
|
return t;
|
|
throw a(i(t) + " is not a function")
|
|
}
|
|
},
|
|
"0d51": function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = r.String;
|
|
t.exports = function(t) {
|
|
try {
|
|
return o(t)
|
|
} catch (e) {
|
|
return "Object"
|
|
}
|
|
}
|
|
},
|
|
"485a": function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("c65b")
|
|
, i = n("1626")
|
|
, a = n("861d")
|
|
, c = r.TypeError;
|
|
t.exports = function(t, e) {
|
|
var n, r;
|
|
if ("string" === e && i(n = t.toString) && !a(r = o(n, t)))
|
|
return r;
|
|
if (i(n = t.valueOf) && !a(r = o(n, t)))
|
|
return r;
|
|
if ("string" !== e && i(n = t.toString) && !a(r = o(n, t)))
|
|
return r;
|
|
throw c("Can't convert object to primitive value")
|
|
}
|
|
},
|
|
b622: function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("5692")
|
|
, i = n("1a2d")
|
|
, a = n("90e3")
|
|
, c = n("4930")
|
|
, u = n("fdbf")
|
|
, s = o("wks")
|
|
, f = r.Symbol
|
|
, l = f && f["for"]
|
|
, p = u ? f : f && f.withoutSetter || a;
|
|
t.exports = function(t) {
|
|
if (!i(s, t) || !c && "string" != typeof s[t]) {
|
|
var e = "Symbol." + t;
|
|
c && i(f, t) ? s[t] = f[t] : s[t] = u && l ? l(e) : p(e)
|
|
}
|
|
return s[t]
|
|
}
|
|
},
|
|
5692: function(t, e, n) {
|
|
var r = n("c430")
|
|
, o = n("c6cd");
|
|
(t.exports = function(t, e) {
|
|
return o[t] || (o[t] = void 0 !== e ? e : {})
|
|
}
|
|
)("versions", []).push({
|
|
version: "3.20.2",
|
|
mode: r ? "pure" : "global",
|
|
copyright: "\xa9 2022 Denis Pushkarev (zloirock.ru)"
|
|
})
|
|
},
|
|
c430: function(t, e) {
|
|
t.exports = !1
|
|
},
|
|
c6cd: function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("ce4e")
|
|
, i = "__core-js_shared__"
|
|
, a = r[i] || o(i, {});
|
|
t.exports = a
|
|
},
|
|
ce4e: function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = Object.defineProperty;
|
|
t.exports = function(t, e) {
|
|
try {
|
|
o(r, t, {
|
|
value: e,
|
|
configurable: !0,
|
|
writable: !0
|
|
})
|
|
} catch (n) {
|
|
r[t] = e
|
|
}
|
|
return e
|
|
}
|
|
},
|
|
"1a2d": function(t, e, n) {
|
|
var r = n("e330")
|
|
, o = n("7b0b")
|
|
, i = r({}.hasOwnProperty);
|
|
t.exports = Object.hasOwn || function(t, e) {
|
|
return i(o(t), e)
|
|
}
|
|
},
|
|
"7b0b": function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("1d80")
|
|
, i = r.Object;
|
|
t.exports = function(t) {
|
|
return i(o(t))
|
|
}
|
|
},
|
|
"90e3": function(t, e, n) {
|
|
var r = n("e330")
|
|
, o = 0
|
|
, i = Math.random()
|
|
, a = r(1..toString);
|
|
t.exports = function(t) {
|
|
return "Symbol(" + (void 0 === t ? "" : t) + ")_" + a(++o + i, 36)
|
|
}
|
|
},
|
|
"0cfb": function(t, e, n) {
|
|
var r = n("83ab")
|
|
, o = n("d039")
|
|
, i = n("cc12");
|
|
t.exports = !r && !o((function() {
|
|
return 7 != Object.defineProperty(i("div"), "a", {
|
|
get: function() {
|
|
return 7
|
|
}
|
|
}).a
|
|
}
|
|
))
|
|
},
|
|
cc12: function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("861d")
|
|
, i = r.document
|
|
, a = o(i) && o(i.createElement);
|
|
t.exports = function(t) {
|
|
return a ? i.createElement(t) : {}
|
|
}
|
|
},
|
|
9112: function(t, e, n) {
|
|
var r = n("83ab")
|
|
, o = n("9bf2")
|
|
, i = n("5c6c");
|
|
t.exports = r ? function(t, e, n) {
|
|
return o.f(t, e, i(1, n))
|
|
}
|
|
: function(t, e, n) {
|
|
return t[e] = n,
|
|
t
|
|
}
|
|
},
|
|
"9bf2": function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("83ab")
|
|
, i = n("0cfb")
|
|
, a = n("aed9")
|
|
, c = n("825a")
|
|
, u = n("a04b")
|
|
, s = r.TypeError
|
|
, f = Object.defineProperty
|
|
, l = Object.getOwnPropertyDescriptor
|
|
, p = "enumerable"
|
|
, d = "configurable"
|
|
, h = "writable";
|
|
e.f = o ? a ? function(t, e, n) {
|
|
if (c(t),
|
|
e = u(e),
|
|
c(n),
|
|
"function" === typeof t && "prototype" === e && "value"in n && h in n && !n[h]) {
|
|
var r = l(t, e);
|
|
r && r[h] && (t[e] = n.value,
|
|
n = {
|
|
configurable: d in n ? n[d] : r[d],
|
|
enumerable: p in n ? n[p] : r[p],
|
|
writable: !1
|
|
})
|
|
}
|
|
return f(t, e, n)
|
|
}
|
|
: f : function(t, e, n) {
|
|
if (c(t),
|
|
e = u(e),
|
|
c(n),
|
|
i)
|
|
try {
|
|
return f(t, e, n)
|
|
} catch (r) {}
|
|
if ("get"in n || "set"in n)
|
|
throw s("Accessors not supported");
|
|
return "value"in n && (t[e] = n.value),
|
|
t
|
|
}
|
|
},
|
|
aed9: function(t, e, n) {
|
|
var r = n("83ab")
|
|
, o = n("d039");
|
|
t.exports = r && o((function() {
|
|
return 42 != Object.defineProperty((function() {}
|
|
), "prototype", {
|
|
value: 42,
|
|
writable: !1
|
|
}).prototype
|
|
}
|
|
))
|
|
},
|
|
"825a": function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("861d")
|
|
, i = r.String
|
|
, a = r.TypeError;
|
|
t.exports = function(t) {
|
|
if (o(t))
|
|
return t;
|
|
throw a(i(t) + " is not an object")
|
|
}
|
|
},
|
|
"6eeb": function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("1626")
|
|
, i = n("1a2d")
|
|
, a = n("9112")
|
|
, c = n("ce4e")
|
|
, u = n("8925")
|
|
, s = n("69f3")
|
|
, f = n("5e77").CONFIGURABLE
|
|
, l = s.get
|
|
, p = s.enforce
|
|
, d = String(String).split("String");
|
|
(t.exports = function(t, e, n, u) {
|
|
var s, l = !!u && !!u.unsafe, h = !!u && !!u.enumerable, v = !!u && !!u.noTargetGet, y = u && void 0 !== u.name ? u.name : e;
|
|
o(n) && ("Symbol(" === String(y).slice(0, 7) && (y = "[" + String(y).replace(/^Symbol\(([^)]*)\)/, "$1") + "]"),
|
|
(!i(n, "name") || f && n.name !== y) && a(n, "name", y),
|
|
s = p(n),
|
|
s.source || (s.source = d.join("string" == typeof y ? y : ""))),
|
|
t !== r ? (l ? !v && t[e] && (h = !0) : delete t[e],
|
|
h ? t[e] = n : a(t, e, n)) : h ? t[e] = n : c(e, n)
|
|
}
|
|
)(Function.prototype, "toString", (function() {
|
|
return o(this) && l(this).source || u(this)
|
|
}
|
|
))
|
|
},
|
|
8925: function(t, e, n) {
|
|
var r = n("e330")
|
|
, o = n("1626")
|
|
, i = n("c6cd")
|
|
, a = r(Function.toString);
|
|
o(i.inspectSource) || (i.inspectSource = function(t) {
|
|
return a(t)
|
|
}
|
|
),
|
|
t.exports = i.inspectSource
|
|
},
|
|
"69f3": function(t, e, n) {
|
|
var r, o, i, a = n("7f9a"), c = n("da84"), u = n("e330"), s = n("861d"), f = n("9112"), l = n("1a2d"), p = n("c6cd"), d = n("f772"), h = n("d012"), v = "Object already initialized", y = c.TypeError, x = c.WeakMap, b = function(t) {
|
|
return i(t) ? o(t) : r(t, {})
|
|
}, g = function(t) {
|
|
return function(e) {
|
|
var n;
|
|
if (!s(e) || (n = o(e)).type !== t)
|
|
throw y("Incompatible receiver, " + t + " required");
|
|
return n
|
|
}
|
|
};
|
|
if (a || p.state) {
|
|
var m = p.state || (p.state = new x)
|
|
, w = u(m.get)
|
|
, A = u(m.has)
|
|
, S = u(m.set);
|
|
r = function(t, e) {
|
|
if (A(m, t))
|
|
throw new y(v);
|
|
return e.facade = t,
|
|
S(m, t, e),
|
|
e
|
|
}
|
|
,
|
|
o = function(t) {
|
|
return w(m, t) || {}
|
|
}
|
|
,
|
|
i = function(t) {
|
|
return A(m, t)
|
|
}
|
|
} else {
|
|
var _ = d("state");
|
|
h[_] = !0,
|
|
r = function(t, e) {
|
|
if (l(t, _))
|
|
throw new y(v);
|
|
return e.facade = t,
|
|
f(t, _, e),
|
|
e
|
|
}
|
|
,
|
|
o = function(t) {
|
|
return l(t, _) ? t[_] : {}
|
|
}
|
|
,
|
|
i = function(t) {
|
|
return l(t, _)
|
|
}
|
|
}
|
|
t.exports = {
|
|
set: r,
|
|
get: o,
|
|
has: i,
|
|
enforce: b,
|
|
getterFor: g
|
|
}
|
|
},
|
|
"7f9a": function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("1626")
|
|
, i = n("8925")
|
|
, a = r.WeakMap;
|
|
t.exports = o(a) && /native code/.test(i(a))
|
|
},
|
|
f772: function(t, e, n) {
|
|
var r = n("5692")
|
|
, o = n("90e3")
|
|
, i = r("keys");
|
|
t.exports = function(t) {
|
|
return i[t] || (i[t] = o(t))
|
|
}
|
|
},
|
|
d012: function(t, e) {
|
|
t.exports = {}
|
|
},
|
|
"5e77": function(t, e, n) {
|
|
var r = n("83ab")
|
|
, o = n("1a2d")
|
|
, i = Function.prototype
|
|
, a = r && Object.getOwnPropertyDescriptor
|
|
, c = o(i, "name")
|
|
, u = c && "something" === function() {}
|
|
.name
|
|
, s = c && (!r || r && a(i, "name").configurable);
|
|
t.exports = {
|
|
EXISTS: c,
|
|
PROPER: u,
|
|
CONFIGURABLE: s
|
|
}
|
|
},
|
|
e893: function(t, e, n) {
|
|
var r = n("1a2d")
|
|
, o = n("56ef")
|
|
, i = n("06cf")
|
|
, a = n("9bf2");
|
|
t.exports = function(t, e, n) {
|
|
for (var c = o(e), u = a.f, s = i.f, f = 0; f < c.length; f++) {
|
|
var l = c[f];
|
|
r(t, l) || n && r(n, l) || u(t, l, s(e, l))
|
|
}
|
|
}
|
|
},
|
|
"56ef": function(t, e, n) {
|
|
var r = n("d066")
|
|
, o = n("e330")
|
|
, i = n("241c")
|
|
, a = n("7418")
|
|
, c = n("825a")
|
|
, u = o([].concat);
|
|
t.exports = r("Reflect", "ownKeys") || function(t) {
|
|
var e = i.f(c(t))
|
|
, n = a.f;
|
|
return n ? u(e, n(t)) : e
|
|
}
|
|
},
|
|
"241c": function(t, e, n) {
|
|
var r = n("ca84")
|
|
, o = n("7839")
|
|
, i = o.concat("length", "prototype");
|
|
e.f = Object.getOwnPropertyNames || function(t) {
|
|
return r(t, i)
|
|
}
|
|
},
|
|
ca84: function(t, e, n) {
|
|
var r = n("e330")
|
|
, o = n("1a2d")
|
|
, i = n("fc6a")
|
|
, a = n("4d64").indexOf
|
|
, c = n("d012")
|
|
, u = r([].push);
|
|
t.exports = function(t, e) {
|
|
var n, r = i(t), s = 0, f = [];
|
|
for (n in r)
|
|
!o(c, n) && o(r, n) && u(f, n);
|
|
while (e.length > s)
|
|
o(r, n = e[s++]) && (~a(f, n) || u(f, n));
|
|
return f
|
|
}
|
|
},
|
|
"4d64": function(t, e, n) {
|
|
var r = n("fc6a")
|
|
, o = n("23cb")
|
|
, i = n("07fa")
|
|
, a = function(t) {
|
|
return function(e, n, a) {
|
|
var c, u = r(e), s = i(u), f = o(a, s);
|
|
if (t && n != n) {
|
|
while (s > f)
|
|
if (c = u[f++],
|
|
c != c)
|
|
return !0
|
|
} else
|
|
for (; s > f; f++)
|
|
if ((t || f in u) && u[f] === n)
|
|
return t || f || 0;
|
|
return !t && -1
|
|
}
|
|
};
|
|
t.exports = {
|
|
includes: a(!0),
|
|
indexOf: a(!1)
|
|
}
|
|
},
|
|
"23cb": function(t, e, n) {
|
|
var r = n("5926")
|
|
, o = Math.max
|
|
, i = Math.min;
|
|
t.exports = function(t, e) {
|
|
var n = r(t);
|
|
return n < 0 ? o(n + e, 0) : i(n, e)
|
|
}
|
|
},
|
|
5926: function(t, e) {
|
|
var n = Math.ceil
|
|
, r = Math.floor;
|
|
t.exports = function(t) {
|
|
var e = +t;
|
|
return e !== e || 0 === e ? 0 : (e > 0 ? r : n)(e)
|
|
}
|
|
},
|
|
"07fa": function(t, e, n) {
|
|
var r = n("50c4");
|
|
t.exports = function(t) {
|
|
return r(t.length)
|
|
}
|
|
},
|
|
"50c4": function(t, e, n) {
|
|
var r = n("5926")
|
|
, o = Math.min;
|
|
t.exports = function(t) {
|
|
return t > 0 ? o(r(t), 9007199254740991) : 0
|
|
}
|
|
},
|
|
7839: function(t, e) {
|
|
t.exports = ["constructor", "hasOwnProperty", "isPrototypeOf", "propertyIsEnumerable", "toLocaleString", "toString", "valueOf"]
|
|
},
|
|
7418: function(t, e) {
|
|
e.f = Object.getOwnPropertySymbols
|
|
},
|
|
"94ca": function(t, e, n) {
|
|
var r = n("d039")
|
|
, o = n("1626")
|
|
, i = /#|\.prototype\./
|
|
, a = function(t, e) {
|
|
var n = u[c(t)];
|
|
return n == f || n != s && (o(e) ? r(e) : !!e)
|
|
}
|
|
, c = a.normalize = function(t) {
|
|
return String(t).replace(i, ".").toLowerCase()
|
|
}
|
|
, u = a.data = {}
|
|
, s = a.NATIVE = "N"
|
|
, f = a.POLYFILL = "P";
|
|
t.exports = a
|
|
},
|
|
"2ba4": function(t, e) {
|
|
var n = Function.prototype
|
|
, r = n.apply
|
|
, o = n.bind
|
|
, i = n.call;
|
|
t.exports = "object" == typeof Reflect && Reflect.apply || (o ? i.bind(r) : function() {
|
|
return i.apply(r, arguments)
|
|
}
|
|
)
|
|
},
|
|
e8b5: function(t, e, n) {
|
|
var r = n("c6b6");
|
|
t.exports = Array.isArray || function(t) {
|
|
return "Array" == r(t)
|
|
}
|
|
},
|
|
"577e": function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("f5df")
|
|
, i = r.String;
|
|
t.exports = function(t) {
|
|
if ("Symbol" === o(t))
|
|
throw TypeError("Cannot convert a Symbol value to a string");
|
|
return i(t)
|
|
}
|
|
},
|
|
f5df: function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("00ee")
|
|
, i = n("1626")
|
|
, a = n("c6b6")
|
|
, c = n("b622")
|
|
, u = c("toStringTag")
|
|
, s = r.Object
|
|
, f = "Arguments" == a(function() {
|
|
return arguments
|
|
}())
|
|
, l = function(t, e) {
|
|
try {
|
|
return t[e]
|
|
} catch (n) {}
|
|
};
|
|
t.exports = o ? a : function(t) {
|
|
var e, n, r;
|
|
return void 0 === t ? "Undefined" : null === t ? "Null" : "string" == typeof (n = l(e = s(t), u)) ? n : f ? a(e) : "Object" == (r = a(e)) && i(e.callee) ? "Arguments" : r
|
|
}
|
|
},
|
|
"00ee": function(t, e, n) {
|
|
var r = n("b622")
|
|
, o = r("toStringTag")
|
|
, i = {};
|
|
i[o] = "z",
|
|
t.exports = "[object z]" === String(i)
|
|
},
|
|
"7c73": function(t, e, n) {
|
|
var r, o = n("825a"), i = n("37e8"), a = n("7839"), c = n("d012"), u = n("1be4"), s = n("cc12"), f = n("f772"), l = ">", p = "<", d = "prototype", h = "script", v = f("IE_PROTO"), y = function() {}, x = function(t) {
|
|
return p + h + l + t + p + "/" + h + l
|
|
}, b = function(t) {
|
|
t.write(x("")),
|
|
t.close();
|
|
var e = t.parentWindow.Object;
|
|
return t = null,
|
|
e
|
|
}, g = function() {
|
|
var t, e = s("iframe"), n = "java" + h + ":";
|
|
return e.style.display = "none",
|
|
u.appendChild(e),
|
|
e.src = String(n),
|
|
t = e.contentWindow.document,
|
|
t.open(),
|
|
t.write(x("document.F=Object")),
|
|
t.close(),
|
|
t.F
|
|
}, m = function() {
|
|
try {
|
|
r = new ActiveXObject("htmlfile")
|
|
} catch (e) {}
|
|
m = "undefined" != typeof document ? document.domain && r ? b(r) : g() : b(r);
|
|
var t = a.length;
|
|
while (t--)
|
|
delete m[d][a[t]];
|
|
return m()
|
|
};
|
|
c[v] = !0,
|
|
t.exports = Object.create || function(t, e) {
|
|
var n;
|
|
return null !== t ? (y[d] = o(t),
|
|
n = new y,
|
|
y[d] = null,
|
|
n[v] = t) : n = m(),
|
|
void 0 === e ? n : i.f(n, e)
|
|
}
|
|
},
|
|
"37e8": function(t, e, n) {
|
|
var r = n("83ab")
|
|
, o = n("aed9")
|
|
, i = n("9bf2")
|
|
, a = n("825a")
|
|
, c = n("fc6a")
|
|
, u = n("df75");
|
|
e.f = r && !o ? Object.defineProperties : function(t, e) {
|
|
a(t);
|
|
var n, r = c(e), o = u(e), s = o.length, f = 0;
|
|
while (s > f)
|
|
i.f(t, n = o[f++], r[n]);
|
|
return t
|
|
}
|
|
},
|
|
df75: function(t, e, n) {
|
|
var r = n("ca84")
|
|
, o = n("7839");
|
|
t.exports = Object.keys || function(t) {
|
|
return r(t, o)
|
|
}
|
|
},
|
|
"1be4": function(t, e, n) {
|
|
var r = n("d066");
|
|
t.exports = r("document", "documentElement")
|
|
},
|
|
"057f": function(t, e, n) {
|
|
var r = n("c6b6")
|
|
, o = n("fc6a")
|
|
, i = n("241c").f
|
|
, a = n("4dae")
|
|
, c = "object" == typeof window && window && Object.getOwnPropertyNames ? Object.getOwnPropertyNames(window) : []
|
|
, u = function(t) {
|
|
try {
|
|
return i(t)
|
|
} catch (e) {
|
|
return a(c)
|
|
}
|
|
};
|
|
t.exports.f = function(t) {
|
|
return c && "Window" == r(t) ? u(t) : i(o(t))
|
|
}
|
|
},
|
|
"4dae": function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("23cb")
|
|
, i = n("07fa")
|
|
, a = n("8418")
|
|
, c = r.Array
|
|
, u = Math.max;
|
|
t.exports = function(t, e, n) {
|
|
for (var r = i(t), s = o(e, r), f = o(void 0 === n ? r : n, r), l = c(u(f - s, 0)), p = 0; s < f; s++,
|
|
p++)
|
|
a(l, p, t[s]);
|
|
return l.length = p,
|
|
l
|
|
}
|
|
},
|
|
8418: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("a04b")
|
|
, o = n("9bf2")
|
|
, i = n("5c6c");
|
|
t.exports = function(t, e, n) {
|
|
var a = r(e);
|
|
a in t ? o.f(t, a, i(0, n)) : t[a] = n
|
|
}
|
|
},
|
|
f36a: function(t, e, n) {
|
|
var r = n("e330");
|
|
t.exports = r([].slice)
|
|
},
|
|
e538: function(t, e, n) {
|
|
var r = n("b622");
|
|
e.f = r
|
|
},
|
|
"746f": function(t, e, n) {
|
|
var r = n("428f")
|
|
, o = n("1a2d")
|
|
, i = n("e538")
|
|
, a = n("9bf2").f;
|
|
t.exports = function(t) {
|
|
var e = r.Symbol || (r.Symbol = {});
|
|
o(e, t) || a(e, t, {
|
|
value: i.f(t)
|
|
})
|
|
}
|
|
},
|
|
"428f": function(t, e, n) {
|
|
var r = n("da84");
|
|
t.exports = r
|
|
},
|
|
d44e: function(t, e, n) {
|
|
var r = n("9bf2").f
|
|
, o = n("1a2d")
|
|
, i = n("b622")
|
|
, a = i("toStringTag");
|
|
t.exports = function(t, e, n) {
|
|
t && !n && (t = t.prototype),
|
|
t && !o(t, a) && r(t, a, {
|
|
configurable: !0,
|
|
value: e
|
|
})
|
|
}
|
|
},
|
|
b727: function(t, e, n) {
|
|
var r = n("0366")
|
|
, o = n("e330")
|
|
, i = n("44ad")
|
|
, a = n("7b0b")
|
|
, c = n("07fa")
|
|
, u = n("65f0")
|
|
, s = o([].push)
|
|
, f = function(t) {
|
|
var e = 1 == t
|
|
, n = 2 == t
|
|
, o = 3 == t
|
|
, f = 4 == t
|
|
, l = 6 == t
|
|
, p = 7 == t
|
|
, d = 5 == t || l;
|
|
return function(h, v, y, x) {
|
|
for (var b, g, m = a(h), w = i(m), A = r(v, y), S = c(w), _ = 0, O = x || u, j = e ? O(h, S) : n || p ? O(h, 0) : void 0; S > _; _++)
|
|
if ((d || _ in w) && (b = w[_],
|
|
g = A(b, _, m),
|
|
t))
|
|
if (e)
|
|
j[_] = g;
|
|
else if (g)
|
|
switch (t) {
|
|
case 3:
|
|
return !0;
|
|
case 5:
|
|
return b;
|
|
case 6:
|
|
return _;
|
|
case 2:
|
|
s(j, b)
|
|
}
|
|
else
|
|
switch (t) {
|
|
case 4:
|
|
return !1;
|
|
case 7:
|
|
s(j, b)
|
|
}
|
|
return l ? -1 : o || f ? f : j
|
|
}
|
|
};
|
|
t.exports = {
|
|
forEach: f(0),
|
|
map: f(1),
|
|
filter: f(2),
|
|
some: f(3),
|
|
every: f(4),
|
|
find: f(5),
|
|
findIndex: f(6),
|
|
filterReject: f(7)
|
|
}
|
|
},
|
|
"0366": function(t, e, n) {
|
|
var r = n("e330")
|
|
, o = n("59ed")
|
|
, i = r(r.bind);
|
|
t.exports = function(t, e) {
|
|
return o(t),
|
|
void 0 === e ? t : i ? i(t, e) : function() {
|
|
return t.apply(e, arguments)
|
|
}
|
|
}
|
|
},
|
|
"65f0": function(t, e, n) {
|
|
var r = n("0b42");
|
|
t.exports = function(t, e) {
|
|
return new (r(t))(0 === e ? 0 : e)
|
|
}
|
|
},
|
|
"0b42": function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("e8b5")
|
|
, i = n("68ee")
|
|
, a = n("861d")
|
|
, c = n("b622")
|
|
, u = c("species")
|
|
, s = r.Array;
|
|
t.exports = function(t) {
|
|
var e;
|
|
return o(t) && (e = t.constructor,
|
|
i(e) && (e === s || o(e.prototype)) ? e = void 0 : a(e) && (e = e[u],
|
|
null === e && (e = void 0))),
|
|
void 0 === e ? s : e
|
|
}
|
|
},
|
|
"68ee": function(t, e, n) {
|
|
var r = n("e330")
|
|
, o = n("d039")
|
|
, i = n("1626")
|
|
, a = n("f5df")
|
|
, c = n("d066")
|
|
, u = n("8925")
|
|
, s = function() {}
|
|
, f = []
|
|
, l = c("Reflect", "construct")
|
|
, p = /^\s*(?:class|function)\b/
|
|
, d = r(p.exec)
|
|
, h = !p.exec(s)
|
|
, v = function(t) {
|
|
if (!i(t))
|
|
return !1;
|
|
try {
|
|
return l(s, f, t),
|
|
!0
|
|
} catch (e) {
|
|
return !1
|
|
}
|
|
}
|
|
, y = function(t) {
|
|
if (!i(t))
|
|
return !1;
|
|
switch (a(t)) {
|
|
case "AsyncFunction":
|
|
case "GeneratorFunction":
|
|
case "AsyncGeneratorFunction":
|
|
return !1
|
|
}
|
|
try {
|
|
return h || !!d(p, u(t))
|
|
} catch (e) {
|
|
return !0
|
|
}
|
|
};
|
|
y.sham = !0,
|
|
t.exports = !l || o((function() {
|
|
var t;
|
|
return v(v.call) || !v(Object) || !v((function() {
|
|
t = !0
|
|
}
|
|
)) || t
|
|
}
|
|
)) ? y : v
|
|
},
|
|
e01a: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("23e7")
|
|
, o = n("83ab")
|
|
, i = n("da84")
|
|
, a = n("e330")
|
|
, c = n("1a2d")
|
|
, u = n("1626")
|
|
, s = n("3a9b")
|
|
, f = n("577e")
|
|
, l = n("9bf2").f
|
|
, p = n("e893")
|
|
, d = i.Symbol
|
|
, h = d && d.prototype;
|
|
if (o && u(d) && (!("description"in h) || void 0 !== d().description)) {
|
|
var v = {}
|
|
, y = function() {
|
|
var t = arguments.length < 1 || void 0 === arguments[0] ? void 0 : f(arguments[0])
|
|
, e = s(h, this) ? new d(t) : void 0 === t ? d() : d(t);
|
|
return "" === t && (v[e] = !0),
|
|
e
|
|
};
|
|
p(y, d),
|
|
y.prototype = h,
|
|
h.constructor = y;
|
|
var x = "Symbol(test)" == String(d("test"))
|
|
, b = a(h.toString)
|
|
, g = a(h.valueOf)
|
|
, m = /^Symbol\((.*)\)[^)]+$/
|
|
, w = a("".replace)
|
|
, A = a("".slice);
|
|
l(h, "description", {
|
|
configurable: !0,
|
|
get: function() {
|
|
var t = g(this)
|
|
, e = b(t);
|
|
if (c(v, t))
|
|
return "";
|
|
var n = x ? A(e, 7, -1) : w(e, m, "$1");
|
|
return "" === n ? void 0 : n
|
|
}
|
|
}),
|
|
r({
|
|
global: !0,
|
|
forced: !0
|
|
}, {
|
|
Symbol: y
|
|
})
|
|
}
|
|
},
|
|
d3b7: function(t, e, n) {
|
|
var r = n("00ee")
|
|
, o = n("6eeb")
|
|
, i = n("b041");
|
|
r || o(Object.prototype, "toString", i, {
|
|
unsafe: !0
|
|
})
|
|
},
|
|
b041: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("00ee")
|
|
, o = n("f5df");
|
|
t.exports = r ? {}.toString : function() {
|
|
return "[object " + o(this) + "]"
|
|
}
|
|
},
|
|
d28b: function(t, e, n) {
|
|
var r = n("746f");
|
|
r("iterator")
|
|
},
|
|
e260: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("fc6a")
|
|
, o = n("44d2")
|
|
, i = n("3f8c")
|
|
, a = n("69f3")
|
|
, c = n("9bf2").f
|
|
, u = n("7dd0")
|
|
, s = n("c430")
|
|
, f = n("83ab")
|
|
, l = "Array Iterator"
|
|
, p = a.set
|
|
, d = a.getterFor(l);
|
|
t.exports = u(Array, "Array", (function(t, e) {
|
|
p(this, {
|
|
type: l,
|
|
target: r(t),
|
|
index: 0,
|
|
kind: e
|
|
})
|
|
}
|
|
), (function() {
|
|
var t = d(this)
|
|
, e = t.target
|
|
, n = t.kind
|
|
, r = t.index++;
|
|
return !e || r >= e.length ? (t.target = void 0,
|
|
{
|
|
value: void 0,
|
|
done: !0
|
|
}) : "keys" == n ? {
|
|
value: r,
|
|
done: !1
|
|
} : "values" == n ? {
|
|
value: e[r],
|
|
done: !1
|
|
} : {
|
|
value: [r, e[r]],
|
|
done: !1
|
|
}
|
|
}
|
|
), "values");
|
|
var h = i.Arguments = i.Array;
|
|
if (o("keys"),
|
|
o("values"),
|
|
o("entries"),
|
|
!s && f && "values" !== h.name)
|
|
try {
|
|
c(h, "name", {
|
|
value: "values"
|
|
})
|
|
} catch (v) {}
|
|
},
|
|
"44d2": function(t, e, n) {
|
|
var r = n("b622")
|
|
, o = n("7c73")
|
|
, i = n("9bf2")
|
|
, a = r("unscopables")
|
|
, c = Array.prototype;
|
|
void 0 == c[a] && i.f(c, a, {
|
|
configurable: !0,
|
|
value: o(null)
|
|
}),
|
|
t.exports = function(t) {
|
|
c[a][t] = !0
|
|
}
|
|
},
|
|
"3f8c": function(t, e) {
|
|
t.exports = {}
|
|
},
|
|
"7dd0": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("23e7")
|
|
, o = n("c65b")
|
|
, i = n("c430")
|
|
, a = n("5e77")
|
|
, c = n("1626")
|
|
, u = n("9ed3")
|
|
, s = n("e163")
|
|
, f = n("d2bb")
|
|
, l = n("d44e")
|
|
, p = n("9112")
|
|
, d = n("6eeb")
|
|
, h = n("b622")
|
|
, v = n("3f8c")
|
|
, y = n("ae93")
|
|
, x = a.PROPER
|
|
, b = a.CONFIGURABLE
|
|
, g = y.IteratorPrototype
|
|
, m = y.BUGGY_SAFARI_ITERATORS
|
|
, w = h("iterator")
|
|
, A = "keys"
|
|
, S = "values"
|
|
, _ = "entries"
|
|
, O = function() {
|
|
return this
|
|
};
|
|
t.exports = function(t, e, n, a, h, y, j) {
|
|
u(n, e, a);
|
|
var E, k, M, T = function(t) {
|
|
if (t === h && P)
|
|
return P;
|
|
if (!m && t in C)
|
|
return C[t];
|
|
switch (t) {
|
|
case A:
|
|
return function() {
|
|
return new n(this,t)
|
|
}
|
|
;
|
|
case S:
|
|
return function() {
|
|
return new n(this,t)
|
|
}
|
|
;
|
|
case _:
|
|
return function() {
|
|
return new n(this,t)
|
|
}
|
|
}
|
|
return function() {
|
|
return new n(this)
|
|
}
|
|
}, N = e + " Iterator", I = !1, C = t.prototype, R = C[w] || C["@@iterator"] || h && C[h], P = !m && R || T(h), L = "Array" == e && C.entries || R;
|
|
if (L && (E = s(L.call(new t)),
|
|
E !== Object.prototype && E.next && (i || s(E) === g || (f ? f(E, g) : c(E[w]) || d(E, w, O)),
|
|
l(E, N, !0, !0),
|
|
i && (v[N] = O))),
|
|
x && h == S && R && R.name !== S && (!i && b ? p(C, "name", S) : (I = !0,
|
|
P = function() {
|
|
return o(R, this)
|
|
}
|
|
)),
|
|
h)
|
|
if (k = {
|
|
values: T(S),
|
|
keys: y ? P : T(A),
|
|
entries: T(_)
|
|
},
|
|
j)
|
|
for (M in k)
|
|
(m || I || !(M in C)) && d(C, M, k[M]);
|
|
else
|
|
r({
|
|
target: e,
|
|
proto: !0,
|
|
forced: m || I
|
|
}, k);
|
|
return i && !j || C[w] === P || d(C, w, P, {
|
|
name: h
|
|
}),
|
|
v[e] = P,
|
|
k
|
|
}
|
|
},
|
|
"9ed3": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("ae93").IteratorPrototype
|
|
, o = n("7c73")
|
|
, i = n("5c6c")
|
|
, a = n("d44e")
|
|
, c = n("3f8c")
|
|
, u = function() {
|
|
return this
|
|
};
|
|
t.exports = function(t, e, n, s) {
|
|
var f = e + " Iterator";
|
|
return t.prototype = o(r, {
|
|
next: i(+!s, n)
|
|
}),
|
|
a(t, f, !1, !0),
|
|
c[f] = u,
|
|
t
|
|
}
|
|
},
|
|
ae93: function(t, e, n) {
|
|
"use strict";
|
|
var r, o, i, a = n("d039"), c = n("1626"), u = n("7c73"), s = n("e163"), f = n("6eeb"), l = n("b622"), p = n("c430"), d = l("iterator"), h = !1;
|
|
[].keys && (i = [].keys(),
|
|
"next"in i ? (o = s(s(i)),
|
|
o !== Object.prototype && (r = o)) : h = !0);
|
|
var v = void 0 == r || a((function() {
|
|
var t = {};
|
|
return r[d].call(t) !== t
|
|
}
|
|
));
|
|
v ? r = {} : p && (r = u(r)),
|
|
c(r[d]) || f(r, d, (function() {
|
|
return this
|
|
}
|
|
)),
|
|
t.exports = {
|
|
IteratorPrototype: r,
|
|
BUGGY_SAFARI_ITERATORS: h
|
|
}
|
|
},
|
|
e163: function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("1a2d")
|
|
, i = n("1626")
|
|
, a = n("7b0b")
|
|
, c = n("f772")
|
|
, u = n("e177")
|
|
, s = c("IE_PROTO")
|
|
, f = r.Object
|
|
, l = f.prototype;
|
|
t.exports = u ? f.getPrototypeOf : function(t) {
|
|
var e = a(t);
|
|
if (o(e, s))
|
|
return e[s];
|
|
var n = e.constructor;
|
|
return i(n) && e instanceof n ? n.prototype : e instanceof f ? l : null
|
|
}
|
|
},
|
|
e177: function(t, e, n) {
|
|
var r = n("d039");
|
|
t.exports = !r((function() {
|
|
function t() {}
|
|
return t.prototype.constructor = null,
|
|
Object.getPrototypeOf(new t) !== t.prototype
|
|
}
|
|
))
|
|
},
|
|
d2bb: function(t, e, n) {
|
|
var r = n("e330")
|
|
, o = n("825a")
|
|
, i = n("3bbe");
|
|
t.exports = Object.setPrototypeOf || ("__proto__"in {} ? function() {
|
|
var t, e = !1, n = {};
|
|
try {
|
|
t = r(Object.getOwnPropertyDescriptor(Object.prototype, "__proto__").set),
|
|
t(n, []),
|
|
e = n instanceof Array
|
|
} catch (a) {}
|
|
return function(n, r) {
|
|
return o(n),
|
|
i(r),
|
|
e ? t(n, r) : n.__proto__ = r,
|
|
n
|
|
}
|
|
}() : void 0)
|
|
},
|
|
"3bbe": function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("1626")
|
|
, i = r.String
|
|
, a = r.TypeError;
|
|
t.exports = function(t) {
|
|
if ("object" == typeof t || o(t))
|
|
return t;
|
|
throw a("Can't set " + i(t) + " as a prototype")
|
|
}
|
|
},
|
|
"3ca3": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("6547").charAt
|
|
, o = n("577e")
|
|
, i = n("69f3")
|
|
, a = n("7dd0")
|
|
, c = "String Iterator"
|
|
, u = i.set
|
|
, s = i.getterFor(c);
|
|
a(String, "String", (function(t) {
|
|
u(this, {
|
|
type: c,
|
|
string: o(t),
|
|
index: 0
|
|
})
|
|
}
|
|
), (function() {
|
|
var t, e = s(this), n = e.string, o = e.index;
|
|
return o >= n.length ? {
|
|
value: void 0,
|
|
done: !0
|
|
} : (t = r(n, o),
|
|
e.index += t.length,
|
|
{
|
|
value: t,
|
|
done: !1
|
|
})
|
|
}
|
|
))
|
|
},
|
|
6547: function(t, e, n) {
|
|
var r = n("e330")
|
|
, o = n("5926")
|
|
, i = n("577e")
|
|
, a = n("1d80")
|
|
, c = r("".charAt)
|
|
, u = r("".charCodeAt)
|
|
, s = r("".slice)
|
|
, f = function(t) {
|
|
return function(e, n) {
|
|
var r, f, l = i(a(e)), p = o(n), d = l.length;
|
|
return p < 0 || p >= d ? t ? "" : void 0 : (r = u(l, p),
|
|
r < 55296 || r > 56319 || p + 1 === d || (f = u(l, p + 1)) < 56320 || f > 57343 ? t ? c(l, p) : r : t ? s(l, p, p + 2) : f - 56320 + (r - 55296 << 10) + 65536)
|
|
}
|
|
};
|
|
t.exports = {
|
|
codeAt: f(!1),
|
|
charAt: f(!0)
|
|
}
|
|
},
|
|
ddb0: function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("fdbc")
|
|
, i = n("785a")
|
|
, a = n("e260")
|
|
, c = n("9112")
|
|
, u = n("b622")
|
|
, s = u("iterator")
|
|
, f = u("toStringTag")
|
|
, l = a.values
|
|
, p = function(t, e) {
|
|
if (t) {
|
|
if (t[s] !== l)
|
|
try {
|
|
c(t, s, l)
|
|
} catch (r) {
|
|
t[s] = l
|
|
}
|
|
if (t[f] || c(t, f, e),
|
|
o[e])
|
|
for (var n in a)
|
|
if (t[n] !== a[n])
|
|
try {
|
|
c(t, n, a[n])
|
|
} catch (r) {
|
|
t[n] = a[n]
|
|
}
|
|
}
|
|
};
|
|
for (var d in o)
|
|
p(r[d] && r[d].prototype, d);
|
|
p(i, "DOMTokenList")
|
|
},
|
|
fdbc: function(t, e) {
|
|
t.exports = {
|
|
CSSRuleList: 0,
|
|
CSSStyleDeclaration: 0,
|
|
CSSValueList: 0,
|
|
ClientRectList: 0,
|
|
DOMRectList: 0,
|
|
DOMStringList: 0,
|
|
DOMTokenList: 1,
|
|
DataTransferItemList: 0,
|
|
FileList: 0,
|
|
HTMLAllCollection: 0,
|
|
HTMLCollection: 0,
|
|
HTMLFormElement: 0,
|
|
HTMLSelectElement: 0,
|
|
MediaList: 0,
|
|
MimeTypeArray: 0,
|
|
NamedNodeMap: 0,
|
|
NodeList: 1,
|
|
PaintRequestList: 0,
|
|
Plugin: 0,
|
|
PluginArray: 0,
|
|
SVGLengthList: 0,
|
|
SVGNumberList: 0,
|
|
SVGPathSegList: 0,
|
|
SVGPointList: 0,
|
|
SVGStringList: 0,
|
|
SVGTransformList: 0,
|
|
SourceBufferList: 0,
|
|
StyleSheetList: 0,
|
|
TextTrackCueList: 0,
|
|
TextTrackList: 0,
|
|
TouchList: 0
|
|
}
|
|
},
|
|
"785a": function(t, e, n) {
|
|
var r = n("cc12")
|
|
, o = r("span").classList
|
|
, i = o && o.constructor && o.constructor.prototype;
|
|
t.exports = i === Object.prototype ? void 0 : i
|
|
},
|
|
b0c0: function(t, e, n) {
|
|
var r = n("83ab")
|
|
, o = n("5e77").EXISTS
|
|
, i = n("e330")
|
|
, a = n("9bf2").f
|
|
, c = Function.prototype
|
|
, u = i(c.toString)
|
|
, s = /function\b(?:\s|\/\*[\S\s]*?\*\/|\/\/[^\n\r]*[\n\r]+)*([^\s(/]*)/
|
|
, f = i(s.exec)
|
|
, l = "name";
|
|
r && !o && a(c, l, {
|
|
configurable: !0,
|
|
get: function() {
|
|
try {
|
|
return f(s, u(this))[1]
|
|
} catch (t) {
|
|
return ""
|
|
}
|
|
}
|
|
})
|
|
},
|
|
"25f0": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("e330")
|
|
, o = n("5e77").PROPER
|
|
, i = n("6eeb")
|
|
, a = n("825a")
|
|
, c = n("3a9b")
|
|
, u = n("577e")
|
|
, s = n("d039")
|
|
, f = n("ad6d")
|
|
, l = "toString"
|
|
, p = RegExp.prototype
|
|
, d = p[l]
|
|
, h = r(f)
|
|
, v = s((function() {
|
|
return "/a/b" != d.call({
|
|
source: "a",
|
|
flags: "b"
|
|
})
|
|
}
|
|
))
|
|
, y = o && d.name != l;
|
|
(v || y) && i(RegExp.prototype, l, (function() {
|
|
var t = a(this)
|
|
, e = u(t.source)
|
|
, n = t.flags
|
|
, r = u(void 0 === n && c(p, t) && !("flags"in p) ? h(t) : n);
|
|
return "/" + e + "/" + r
|
|
}
|
|
), {
|
|
unsafe: !0
|
|
})
|
|
},
|
|
ad6d: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("825a");
|
|
t.exports = function() {
|
|
var t = r(this)
|
|
, e = "";
|
|
return t.global && (e += "g"),
|
|
t.ignoreCase && (e += "i"),
|
|
t.multiline && (e += "m"),
|
|
t.dotAll && (e += "s"),
|
|
t.unicode && (e += "u"),
|
|
t.sticky && (e += "y"),
|
|
e
|
|
}
|
|
},
|
|
ac1f: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("23e7")
|
|
, o = n("9263");
|
|
r({
|
|
target: "RegExp",
|
|
proto: !0,
|
|
forced: /./.exec !== o
|
|
}, {
|
|
exec: o
|
|
})
|
|
},
|
|
9263: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("c65b")
|
|
, o = n("e330")
|
|
, i = n("577e")
|
|
, a = n("ad6d")
|
|
, c = n("9f7f")
|
|
, u = n("5692")
|
|
, s = n("7c73")
|
|
, f = n("69f3").get
|
|
, l = n("fce3")
|
|
, p = n("107c")
|
|
, d = u("native-string-replace", String.prototype.replace)
|
|
, h = RegExp.prototype.exec
|
|
, v = h
|
|
, y = o("".charAt)
|
|
, x = o("".indexOf)
|
|
, b = o("".replace)
|
|
, g = o("".slice)
|
|
, m = function() {
|
|
var t = /a/
|
|
, e = /b*/g;
|
|
return r(h, t, "a"),
|
|
r(h, e, "a"),
|
|
0 !== t.lastIndex || 0 !== e.lastIndex
|
|
}()
|
|
, w = c.BROKEN_CARET
|
|
, A = void 0 !== /()??/.exec("")[1]
|
|
, S = m || A || w || l || p;
|
|
S && (v = function(t) {
|
|
var e, n, o, c, u, l, p, S = this, _ = f(S), O = i(t), j = _.raw;
|
|
if (j)
|
|
return j.lastIndex = S.lastIndex,
|
|
e = r(v, j, O),
|
|
S.lastIndex = j.lastIndex,
|
|
e;
|
|
var E = _.groups
|
|
, k = w && S.sticky
|
|
, M = r(a, S)
|
|
, T = S.source
|
|
, N = 0
|
|
, I = O;
|
|
if (k && (M = b(M, "y", ""),
|
|
-1 === x(M, "g") && (M += "g"),
|
|
I = g(O, S.lastIndex),
|
|
S.lastIndex > 0 && (!S.multiline || S.multiline && "\n" !== y(O, S.lastIndex - 1)) && (T = "(?: " + T + ")",
|
|
I = " " + I,
|
|
N++),
|
|
n = new RegExp("^(?:" + T + ")",M)),
|
|
A && (n = new RegExp("^" + T + "$(?!\\s)",M)),
|
|
m && (o = S.lastIndex),
|
|
c = r(h, k ? n : S, I),
|
|
k ? c ? (c.input = g(c.input, N),
|
|
c[0] = g(c[0], N),
|
|
c.index = S.lastIndex,
|
|
S.lastIndex += c[0].length) : S.lastIndex = 0 : m && c && (S.lastIndex = S.global ? c.index + c[0].length : o),
|
|
A && c && c.length > 1 && r(d, c[0], n, (function() {
|
|
for (u = 1; u < arguments.length - 2; u++)
|
|
void 0 === arguments[u] && (c[u] = void 0)
|
|
}
|
|
)),
|
|
c && E)
|
|
for (c.groups = l = s(null),
|
|
u = 0; u < E.length; u++)
|
|
p = E[u],
|
|
l[p[0]] = c[p[1]];
|
|
return c
|
|
}
|
|
),
|
|
t.exports = v
|
|
},
|
|
"9f7f": function(t, e, n) {
|
|
var r = n("d039")
|
|
, o = n("da84")
|
|
, i = o.RegExp
|
|
, a = r((function() {
|
|
var t = i("a", "y");
|
|
return t.lastIndex = 2,
|
|
null != t.exec("abcd")
|
|
}
|
|
))
|
|
, c = a || r((function() {
|
|
return !i("a", "y").sticky
|
|
}
|
|
))
|
|
, u = a || r((function() {
|
|
var t = i("^r", "gy");
|
|
return t.lastIndex = 2,
|
|
null != t.exec("str")
|
|
}
|
|
));
|
|
t.exports = {
|
|
BROKEN_CARET: u,
|
|
MISSED_STICKY: c,
|
|
UNSUPPORTED_Y: a
|
|
}
|
|
},
|
|
fce3: function(t, e, n) {
|
|
var r = n("d039")
|
|
, o = n("da84")
|
|
, i = o.RegExp;
|
|
t.exports = r((function() {
|
|
var t = i(".", "s");
|
|
return !(t.dotAll && t.exec("\n") && "s" === t.flags)
|
|
}
|
|
))
|
|
},
|
|
"107c": function(t, e, n) {
|
|
var r = n("d039")
|
|
, o = n("da84")
|
|
, i = o.RegExp;
|
|
t.exports = r((function() {
|
|
var t = i("(?<a>b)", "g");
|
|
return "b" !== t.exec("b").groups.a || "bc" !== "b".replace(t, "$<a>c")
|
|
}
|
|
))
|
|
},
|
|
1276: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("2ba4")
|
|
, o = n("c65b")
|
|
, i = n("e330")
|
|
, a = n("d784")
|
|
, c = n("44e7")
|
|
, u = n("825a")
|
|
, s = n("1d80")
|
|
, f = n("4840")
|
|
, l = n("8aa5")
|
|
, p = n("50c4")
|
|
, d = n("577e")
|
|
, h = n("dc4a")
|
|
, v = n("4dae")
|
|
, y = n("14c3")
|
|
, x = n("9263")
|
|
, b = n("9f7f")
|
|
, g = n("d039")
|
|
, m = b.UNSUPPORTED_Y
|
|
, w = 4294967295
|
|
, A = Math.min
|
|
, S = [].push
|
|
, _ = i(/./.exec)
|
|
, O = i(S)
|
|
, j = i("".slice)
|
|
, E = !g((function() {
|
|
var t = /(?:)/
|
|
, e = t.exec;
|
|
t.exec = function() {
|
|
return e.apply(this, arguments)
|
|
}
|
|
;
|
|
var n = "ab".split(t);
|
|
return 2 !== n.length || "a" !== n[0] || "b" !== n[1]
|
|
}
|
|
));
|
|
a("split", (function(t, e, n) {
|
|
var i;
|
|
return i = "c" == "abbc".split(/(b)*/)[1] || 4 != "test".split(/(?:)/, -1).length || 2 != "ab".split(/(?:ab)*/).length || 4 != ".".split(/(.?)(.?)/).length || ".".split(/()()/).length > 1 || "".split(/.?/).length ? function(t, n) {
|
|
var i = d(s(this))
|
|
, a = void 0 === n ? w : n >>> 0;
|
|
if (0 === a)
|
|
return [];
|
|
if (void 0 === t)
|
|
return [i];
|
|
if (!c(t))
|
|
return o(e, i, t, a);
|
|
var u, f, l, p = [], h = (t.ignoreCase ? "i" : "") + (t.multiline ? "m" : "") + (t.unicode ? "u" : "") + (t.sticky ? "y" : ""), y = 0, b = new RegExp(t.source,h + "g");
|
|
while (u = o(x, b, i)) {
|
|
if (f = b.lastIndex,
|
|
f > y && (O(p, j(i, y, u.index)),
|
|
u.length > 1 && u.index < i.length && r(S, p, v(u, 1)),
|
|
l = u[0].length,
|
|
y = f,
|
|
p.length >= a))
|
|
break;
|
|
b.lastIndex === u.index && b.lastIndex++
|
|
}
|
|
return y === i.length ? !l && _(b, "") || O(p, "") : O(p, j(i, y)),
|
|
p.length > a ? v(p, 0, a) : p
|
|
}
|
|
: "0".split(void 0, 0).length ? function(t, n) {
|
|
return void 0 === t && 0 === n ? [] : o(e, this, t, n)
|
|
}
|
|
: e,
|
|
[function(e, n) {
|
|
var r = s(this)
|
|
, a = void 0 == e ? void 0 : h(e, t);
|
|
return a ? o(a, e, r, n) : o(i, d(r), e, n)
|
|
}
|
|
, function(t, r) {
|
|
var o = u(this)
|
|
, a = d(t)
|
|
, c = n(i, o, a, r, i !== e);
|
|
if (c.done)
|
|
return c.value;
|
|
var s = f(o, RegExp)
|
|
, h = o.unicode
|
|
, v = (o.ignoreCase ? "i" : "") + (o.multiline ? "m" : "") + (o.unicode ? "u" : "") + (m ? "g" : "y")
|
|
, x = new s(m ? "^(?:" + o.source + ")" : o,v)
|
|
, b = void 0 === r ? w : r >>> 0;
|
|
if (0 === b)
|
|
return [];
|
|
if (0 === a.length)
|
|
return null === y(x, a) ? [a] : [];
|
|
var g = 0
|
|
, S = 0
|
|
, _ = [];
|
|
while (S < a.length) {
|
|
x.lastIndex = m ? 0 : S;
|
|
var E, k = y(x, m ? j(a, S) : a);
|
|
if (null === k || (E = A(p(x.lastIndex + (m ? S : 0)), a.length)) === g)
|
|
S = l(a, S, h);
|
|
else {
|
|
if (O(_, j(a, g, S)),
|
|
_.length === b)
|
|
return _;
|
|
for (var M = 1; M <= k.length - 1; M++)
|
|
if (O(_, k[M]),
|
|
_.length === b)
|
|
return _;
|
|
S = g = E
|
|
}
|
|
}
|
|
return O(_, j(a, g)),
|
|
_
|
|
}
|
|
]
|
|
}
|
|
), !E, m)
|
|
},
|
|
d784: function(t, e, n) {
|
|
"use strict";
|
|
n("ac1f");
|
|
var r = n("e330")
|
|
, o = n("6eeb")
|
|
, i = n("9263")
|
|
, a = n("d039")
|
|
, c = n("b622")
|
|
, u = n("9112")
|
|
, s = c("species")
|
|
, f = RegExp.prototype;
|
|
t.exports = function(t, e, n, l) {
|
|
var p = c(t)
|
|
, d = !a((function() {
|
|
var e = {};
|
|
return e[p] = function() {
|
|
return 7
|
|
}
|
|
,
|
|
7 != ""[t](e)
|
|
}
|
|
))
|
|
, h = d && !a((function() {
|
|
var e = !1
|
|
, n = /a/;
|
|
return "split" === t && (n = {},
|
|
n.constructor = {},
|
|
n.constructor[s] = function() {
|
|
return n
|
|
}
|
|
,
|
|
n.flags = "",
|
|
n[p] = /./[p]),
|
|
n.exec = function() {
|
|
return e = !0,
|
|
null
|
|
}
|
|
,
|
|
n[p](""),
|
|
!e
|
|
}
|
|
));
|
|
if (!d || !h || n) {
|
|
var v = r(/./[p])
|
|
, y = e(p, ""[t], (function(t, e, n, o, a) {
|
|
var c = r(t)
|
|
, u = e.exec;
|
|
return u === i || u === f.exec ? d && !a ? {
|
|
done: !0,
|
|
value: v(e, n, o)
|
|
} : {
|
|
done: !0,
|
|
value: c(n, e, o)
|
|
} : {
|
|
done: !1
|
|
}
|
|
}
|
|
));
|
|
o(String.prototype, t, y[0]),
|
|
o(f, p, y[1])
|
|
}
|
|
l && u(f[p], "sham", !0)
|
|
}
|
|
},
|
|
"44e7": function(t, e, n) {
|
|
var r = n("861d")
|
|
, o = n("c6b6")
|
|
, i = n("b622")
|
|
, a = i("match");
|
|
t.exports = function(t) {
|
|
var e;
|
|
return r(t) && (void 0 !== (e = t[a]) ? !!e : "RegExp" == o(t))
|
|
}
|
|
},
|
|
4840: function(t, e, n) {
|
|
var r = n("825a")
|
|
, o = n("5087")
|
|
, i = n("b622")
|
|
, a = i("species");
|
|
t.exports = function(t, e) {
|
|
var n, i = r(t).constructor;
|
|
return void 0 === i || void 0 == (n = r(i)[a]) ? e : o(n)
|
|
}
|
|
},
|
|
5087: function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("68ee")
|
|
, i = n("0d51")
|
|
, a = r.TypeError;
|
|
t.exports = function(t) {
|
|
if (o(t))
|
|
return t;
|
|
throw a(i(t) + " is not a constructor")
|
|
}
|
|
},
|
|
"8aa5": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("6547").charAt;
|
|
t.exports = function(t, e, n) {
|
|
return e + (n ? r(t, e).length : 1)
|
|
}
|
|
},
|
|
"14c3": function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("c65b")
|
|
, i = n("825a")
|
|
, a = n("1626")
|
|
, c = n("c6b6")
|
|
, u = n("9263")
|
|
, s = r.TypeError;
|
|
t.exports = function(t, e) {
|
|
var n = t.exec;
|
|
if (a(n)) {
|
|
var r = o(n, t, e);
|
|
return null !== r && i(r),
|
|
r
|
|
}
|
|
if ("RegExp" === c(t))
|
|
return o(u, t, e);
|
|
throw s("RegExp#exec called on incompatible receiver")
|
|
}
|
|
},
|
|
a15b: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("23e7")
|
|
, o = n("e330")
|
|
, i = n("44ad")
|
|
, a = n("fc6a")
|
|
, c = n("a640")
|
|
, u = o([].join)
|
|
, s = i != Object
|
|
, f = c("join", ",");
|
|
r({
|
|
target: "Array",
|
|
proto: !0,
|
|
forced: s || !f
|
|
}, {
|
|
join: function(t) {
|
|
return u(a(this), void 0 === t ? "," : t)
|
|
}
|
|
})
|
|
},
|
|
a640: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("d039");
|
|
t.exports = function(t, e) {
|
|
var n = [][t];
|
|
return !!n && r((function() {
|
|
n.call(null, e || function() {
|
|
throw 1
|
|
}
|
|
, 1)
|
|
}
|
|
))
|
|
}
|
|
},
|
|
"4c53": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("23e7")
|
|
, o = n("857a")
|
|
, i = n("af03");
|
|
r({
|
|
target: "String",
|
|
proto: !0,
|
|
forced: i("sub")
|
|
}, {
|
|
sub: function() {
|
|
return o(this, "sub", "", "")
|
|
}
|
|
})
|
|
},
|
|
"857a": function(t, e, n) {
|
|
var r = n("e330")
|
|
, o = n("1d80")
|
|
, i = n("577e")
|
|
, a = /"/g
|
|
, c = r("".replace);
|
|
t.exports = function(t, e, n, r) {
|
|
var u = i(o(t))
|
|
, s = "<" + e;
|
|
return "" !== n && (s += " " + n + '="' + c(i(r), a, """) + '"'),
|
|
s + ">" + u + "</" + e + ">"
|
|
}
|
|
},
|
|
af03: function(t, e, n) {
|
|
var r = n("d039");
|
|
t.exports = function(t) {
|
|
return r((function() {
|
|
var e = ""[t]('"');
|
|
return e !== e.toLowerCase() || e.split('"').length > 3
|
|
}
|
|
))
|
|
}
|
|
},
|
|
a9e3: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("83ab")
|
|
, o = n("da84")
|
|
, i = n("e330")
|
|
, a = n("94ca")
|
|
, c = n("6eeb")
|
|
, u = n("1a2d")
|
|
, s = n("7156")
|
|
, f = n("3a9b")
|
|
, l = n("d9b5")
|
|
, p = n("c04e")
|
|
, d = n("d039")
|
|
, h = n("241c").f
|
|
, v = n("06cf").f
|
|
, y = n("9bf2").f
|
|
, x = n("408a")
|
|
, b = n("58a8").trim
|
|
, g = "Number"
|
|
, m = o[g]
|
|
, w = m.prototype
|
|
, A = o.TypeError
|
|
, S = i("".slice)
|
|
, _ = i("".charCodeAt)
|
|
, O = function(t) {
|
|
var e = p(t, "number");
|
|
return "bigint" == typeof e ? e : j(e)
|
|
}
|
|
, j = function(t) {
|
|
var e, n, r, o, i, a, c, u, s = p(t, "number");
|
|
if (l(s))
|
|
throw A("Cannot convert a Symbol value to a number");
|
|
if ("string" == typeof s && s.length > 2)
|
|
if (s = b(s),
|
|
e = _(s, 0),
|
|
43 === e || 45 === e) {
|
|
if (n = _(s, 2),
|
|
88 === n || 120 === n)
|
|
return NaN
|
|
} else if (48 === e) {
|
|
switch (_(s, 1)) {
|
|
case 66:
|
|
case 98:
|
|
r = 2,
|
|
o = 49;
|
|
break;
|
|
case 79:
|
|
case 111:
|
|
r = 8,
|
|
o = 55;
|
|
break;
|
|
default:
|
|
return +s
|
|
}
|
|
for (i = S(s, 2),
|
|
a = i.length,
|
|
c = 0; c < a; c++)
|
|
if (u = _(i, c),
|
|
u < 48 || u > o)
|
|
return NaN;
|
|
return parseInt(i, r)
|
|
}
|
|
return +s
|
|
};
|
|
if (a(g, !m(" 0o1") || !m("0b1") || m("+0x1"))) {
|
|
for (var E, k = function(t) {
|
|
var e = arguments.length < 1 ? 0 : m(O(t))
|
|
, n = this;
|
|
return f(w, n) && d((function() {
|
|
x(n)
|
|
}
|
|
)) ? s(Object(e), n, k) : e
|
|
}, M = r ? h(m) : "MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,isFinite,isInteger,isNaN,isSafeInteger,parseFloat,parseInt,fromString,range".split(","), T = 0; M.length > T; T++)
|
|
u(m, E = M[T]) && !u(k, E) && y(k, E, v(m, E));
|
|
k.prototype = w,
|
|
w.constructor = k,
|
|
c(o, g, k)
|
|
}
|
|
},
|
|
7156: function(t, e, n) {
|
|
var r = n("1626")
|
|
, o = n("861d")
|
|
, i = n("d2bb");
|
|
t.exports = function(t, e, n) {
|
|
var a, c;
|
|
return i && r(a = e.constructor) && a !== n && o(c = a.prototype) && c !== n.prototype && i(t, c),
|
|
t
|
|
}
|
|
},
|
|
"408a": function(t, e, n) {
|
|
var r = n("e330");
|
|
t.exports = r(1..valueOf)
|
|
},
|
|
"58a8": function(t, e, n) {
|
|
var r = n("e330")
|
|
, o = n("1d80")
|
|
, i = n("577e")
|
|
, a = n("5899")
|
|
, c = r("".replace)
|
|
, u = "[" + a + "]"
|
|
, s = RegExp("^" + u + u + "*")
|
|
, f = RegExp(u + u + "*$")
|
|
, l = function(t) {
|
|
return function(e) {
|
|
var n = i(o(e));
|
|
return 1 & t && (n = c(n, s, "")),
|
|
2 & t && (n = c(n, f, "")),
|
|
n
|
|
}
|
|
};
|
|
t.exports = {
|
|
start: l(1),
|
|
end: l(2),
|
|
trim: l(3)
|
|
}
|
|
},
|
|
5899: function(t, e) {
|
|
t.exports = "\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"
|
|
},
|
|
"4d63": function(t, e, n) {
|
|
var r = n("83ab")
|
|
, o = n("da84")
|
|
, i = n("e330")
|
|
, a = n("94ca")
|
|
, c = n("7156")
|
|
, u = n("9112")
|
|
, s = n("9bf2").f
|
|
, f = n("241c").f
|
|
, l = n("3a9b")
|
|
, p = n("44e7")
|
|
, d = n("577e")
|
|
, h = n("ad6d")
|
|
, v = n("9f7f")
|
|
, y = n("6eeb")
|
|
, x = n("d039")
|
|
, b = n("1a2d")
|
|
, g = n("69f3").enforce
|
|
, m = n("2626")
|
|
, w = n("b622")
|
|
, A = n("fce3")
|
|
, S = n("107c")
|
|
, _ = w("match")
|
|
, O = o.RegExp
|
|
, j = O.prototype
|
|
, E = o.SyntaxError
|
|
, k = i(h)
|
|
, M = i(j.exec)
|
|
, T = i("".charAt)
|
|
, N = i("".replace)
|
|
, I = i("".indexOf)
|
|
, C = i("".slice)
|
|
, R = /^\?<[^\s\d!#%&*+<=>@^][^\s!#%&*+<=>@^]*>/
|
|
, P = /a/g
|
|
, L = /a/g
|
|
, D = new O(P) !== P
|
|
, U = v.MISSED_STICKY
|
|
, F = v.UNSUPPORTED_Y
|
|
, $ = r && (!D || U || A || S || x((function() {
|
|
return L[_] = !1,
|
|
O(P) != P || O(L) == L || "/a/i" != O(P, "i")
|
|
}
|
|
)))
|
|
, B = function(t) {
|
|
for (var e, n = t.length, r = 0, o = "", i = !1; r <= n; r++)
|
|
e = T(t, r),
|
|
"\\" !== e ? i || "." !== e ? ("[" === e ? i = !0 : "]" === e && (i = !1),
|
|
o += e) : o += "[\\s\\S]" : o += e + T(t, ++r);
|
|
return o
|
|
}
|
|
, Y = function(t) {
|
|
for (var e, n = t.length, r = 0, o = "", i = [], a = {}, c = !1, u = !1, s = 0, f = ""; r <= n; r++) {
|
|
if (e = T(t, r),
|
|
"\\" === e)
|
|
e += T(t, ++r);
|
|
else if ("]" === e)
|
|
c = !1;
|
|
else if (!c)
|
|
switch (!0) {
|
|
case "[" === e:
|
|
c = !0;
|
|
break;
|
|
case "(" === e:
|
|
M(R, C(t, r + 1)) && (r += 2,
|
|
u = !0),
|
|
o += e,
|
|
s++;
|
|
continue;
|
|
case ">" === e && u:
|
|
if ("" === f || b(a, f))
|
|
throw new E("Invalid capture group name");
|
|
a[f] = !0,
|
|
i[i.length] = [f, s],
|
|
u = !1,
|
|
f = "";
|
|
continue
|
|
}
|
|
u ? f += e : o += e
|
|
}
|
|
return [o, i]
|
|
};
|
|
if (a("RegExp", $)) {
|
|
for (var V = function(t, e) {
|
|
var n, r, o, i, a, s, f = l(j, this), h = p(t), v = void 0 === e, y = [], x = t;
|
|
if (!f && h && v && t.constructor === V)
|
|
return t;
|
|
if ((h || l(j, t)) && (t = t.source,
|
|
v && (e = "flags"in x ? x.flags : k(x))),
|
|
t = void 0 === t ? "" : d(t),
|
|
e = void 0 === e ? "" : d(e),
|
|
x = t,
|
|
A && "dotAll"in P && (r = !!e && I(e, "s") > -1,
|
|
r && (e = N(e, /s/g, ""))),
|
|
n = e,
|
|
U && "sticky"in P && (o = !!e && I(e, "y") > -1,
|
|
o && F && (e = N(e, /y/g, ""))),
|
|
S && (i = Y(t),
|
|
t = i[0],
|
|
y = i[1]),
|
|
a = c(O(t, e), f ? this : j, V),
|
|
(r || o || y.length) && (s = g(a),
|
|
r && (s.dotAll = !0,
|
|
s.raw = V(B(t), n)),
|
|
o && (s.sticky = !0),
|
|
y.length && (s.groups = y)),
|
|
t !== x)
|
|
try {
|
|
u(a, "source", "" === x ? "(?:)" : x)
|
|
} catch (b) {}
|
|
return a
|
|
}, G = function(t) {
|
|
t in V || s(V, t, {
|
|
configurable: !0,
|
|
get: function() {
|
|
return O[t]
|
|
},
|
|
set: function(e) {
|
|
O[t] = e
|
|
}
|
|
})
|
|
}, z = f(O), W = 0; z.length > W; )
|
|
G(z[W++]);
|
|
j.constructor = V,
|
|
V.prototype = j,
|
|
y(o, "RegExp", V)
|
|
}
|
|
m("RegExp")
|
|
},
|
|
2626: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("d066")
|
|
, o = n("9bf2")
|
|
, i = n("b622")
|
|
, a = n("83ab")
|
|
, c = i("species");
|
|
t.exports = function(t) {
|
|
var e = r(t)
|
|
, n = o.f;
|
|
a && e && !e[c] && n(e, c, {
|
|
configurable: !0,
|
|
get: function() {
|
|
return this
|
|
}
|
|
})
|
|
}
|
|
},
|
|
ace4: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("23e7")
|
|
, o = n("e330")
|
|
, i = n("d039")
|
|
, a = n("621a")
|
|
, c = n("825a")
|
|
, u = n("23cb")
|
|
, s = n("50c4")
|
|
, f = n("4840")
|
|
, l = a.ArrayBuffer
|
|
, p = a.DataView
|
|
, d = p.prototype
|
|
, h = o(l.prototype.slice)
|
|
, v = o(d.getUint8)
|
|
, y = o(d.setUint8)
|
|
, x = i((function() {
|
|
return !new l(2).slice(1, void 0).byteLength
|
|
}
|
|
));
|
|
r({
|
|
target: "ArrayBuffer",
|
|
proto: !0,
|
|
unsafe: !0,
|
|
forced: x
|
|
}, {
|
|
slice: function(t, e) {
|
|
if (h && void 0 === e)
|
|
return h(c(this), t);
|
|
var n = c(this).byteLength
|
|
, r = u(t, n)
|
|
, o = u(void 0 === e ? n : e, n)
|
|
, i = new (f(this, l))(s(o - r))
|
|
, a = new p(this)
|
|
, d = new p(i)
|
|
, x = 0;
|
|
while (r < o)
|
|
y(d, x++, v(a, r++));
|
|
return i
|
|
}
|
|
})
|
|
},
|
|
"621a": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("da84")
|
|
, o = n("e330")
|
|
, i = n("83ab")
|
|
, a = n("a981")
|
|
, c = n("5e77")
|
|
, u = n("9112")
|
|
, s = n("e2cc")
|
|
, f = n("d039")
|
|
, l = n("19aa")
|
|
, p = n("5926")
|
|
, d = n("50c4")
|
|
, h = n("0b25")
|
|
, v = n("77a7")
|
|
, y = n("e163")
|
|
, x = n("d2bb")
|
|
, b = n("241c").f
|
|
, g = n("9bf2").f
|
|
, m = n("81d5")
|
|
, w = n("4dae")
|
|
, A = n("d44e")
|
|
, S = n("69f3")
|
|
, _ = c.PROPER
|
|
, O = c.CONFIGURABLE
|
|
, j = S.get
|
|
, E = S.set
|
|
, k = "ArrayBuffer"
|
|
, M = "DataView"
|
|
, T = "prototype"
|
|
, N = "Wrong length"
|
|
, I = "Wrong index"
|
|
, C = r[k]
|
|
, R = C
|
|
, P = R && R[T]
|
|
, L = r[M]
|
|
, D = L && L[T]
|
|
, U = Object.prototype
|
|
, F = r.Array
|
|
, $ = r.RangeError
|
|
, B = o(m)
|
|
, Y = o([].reverse)
|
|
, V = v.pack
|
|
, G = v.unpack
|
|
, z = function(t) {
|
|
return [255 & t]
|
|
}
|
|
, W = function(t) {
|
|
return [255 & t, t >> 8 & 255]
|
|
}
|
|
, Z = function(t) {
|
|
return [255 & t, t >> 8 & 255, t >> 16 & 255, t >> 24 & 255]
|
|
}
|
|
, H = function(t) {
|
|
return t[3] << 24 | t[2] << 16 | t[1] << 8 | t[0]
|
|
}
|
|
, Q = function(t) {
|
|
return V(t, 23, 4)
|
|
}
|
|
, X = function(t) {
|
|
return V(t, 52, 8)
|
|
}
|
|
, J = function(t, e) {
|
|
g(t[T], e, {
|
|
get: function() {
|
|
return j(this)[e]
|
|
}
|
|
})
|
|
}
|
|
, q = function(t, e, n, r) {
|
|
var o = h(n)
|
|
, i = j(t);
|
|
if (o + e > i.byteLength)
|
|
throw $(I);
|
|
var a = j(i.buffer).bytes
|
|
, c = o + i.byteOffset
|
|
, u = w(a, c, c + e);
|
|
return r ? u : Y(u)
|
|
}
|
|
, K = function(t, e, n, r, o, i) {
|
|
var a = h(n)
|
|
, c = j(t);
|
|
if (a + e > c.byteLength)
|
|
throw $(I);
|
|
for (var u = j(c.buffer).bytes, s = a + c.byteOffset, f = r(+o), l = 0; l < e; l++)
|
|
u[s + l] = f[i ? l : e - l - 1]
|
|
};
|
|
if (a) {
|
|
var tt = _ && C.name !== k;
|
|
if (f((function() {
|
|
C(1)
|
|
}
|
|
)) && f((function() {
|
|
new C(-1)
|
|
}
|
|
)) && !f((function() {
|
|
return new C,
|
|
new C(1.5),
|
|
new C(NaN),
|
|
tt && !O
|
|
}
|
|
)))
|
|
tt && O && u(C, "name", k);
|
|
else {
|
|
R = function(t) {
|
|
return l(this, P),
|
|
new C(h(t))
|
|
}
|
|
,
|
|
R[T] = P;
|
|
for (var et, nt = b(C), rt = 0; nt.length > rt; )
|
|
(et = nt[rt++])in R || u(R, et, C[et]);
|
|
P.constructor = R
|
|
}
|
|
x && y(D) !== U && x(D, U);
|
|
var ot = new L(new R(2))
|
|
, it = o(D.setInt8);
|
|
ot.setInt8(0, 2147483648),
|
|
ot.setInt8(1, 2147483649),
|
|
!ot.getInt8(0) && ot.getInt8(1) || s(D, {
|
|
setInt8: function(t, e) {
|
|
it(this, t, e << 24 >> 24)
|
|
},
|
|
setUint8: function(t, e) {
|
|
it(this, t, e << 24 >> 24)
|
|
}
|
|
}, {
|
|
unsafe: !0
|
|
})
|
|
} else
|
|
R = function(t) {
|
|
l(this, P);
|
|
var e = h(t);
|
|
E(this, {
|
|
bytes: B(F(e), 0),
|
|
byteLength: e
|
|
}),
|
|
i || (this.byteLength = e)
|
|
}
|
|
,
|
|
P = R[T],
|
|
L = function(t, e, n) {
|
|
l(this, D),
|
|
l(t, P);
|
|
var r = j(t).byteLength
|
|
, o = p(e);
|
|
if (o < 0 || o > r)
|
|
throw $("Wrong offset");
|
|
if (n = void 0 === n ? r - o : d(n),
|
|
o + n > r)
|
|
throw $(N);
|
|
E(this, {
|
|
buffer: t,
|
|
byteLength: n,
|
|
byteOffset: o
|
|
}),
|
|
i || (this.buffer = t,
|
|
this.byteLength = n,
|
|
this.byteOffset = o)
|
|
}
|
|
,
|
|
D = L[T],
|
|
i && (J(R, "byteLength"),
|
|
J(L, "buffer"),
|
|
J(L, "byteLength"),
|
|
J(L, "byteOffset")),
|
|
s(D, {
|
|
getInt8: function(t) {
|
|
return q(this, 1, t)[0] << 24 >> 24
|
|
},
|
|
getUint8: function(t) {
|
|
return q(this, 1, t)[0]
|
|
},
|
|
getInt16: function(t) {
|
|
var e = q(this, 2, t, arguments.length > 1 ? arguments[1] : void 0);
|
|
return (e[1] << 8 | e[0]) << 16 >> 16
|
|
},
|
|
getUint16: function(t) {
|
|
var e = q(this, 2, t, arguments.length > 1 ? arguments[1] : void 0);
|
|
return e[1] << 8 | e[0]
|
|
},
|
|
getInt32: function(t) {
|
|
return H(q(this, 4, t, arguments.length > 1 ? arguments[1] : void 0))
|
|
},
|
|
getUint32: function(t) {
|
|
return H(q(this, 4, t, arguments.length > 1 ? arguments[1] : void 0)) >>> 0
|
|
},
|
|
getFloat32: function(t) {
|
|
return G(q(this, 4, t, arguments.length > 1 ? arguments[1] : void 0), 23)
|
|
},
|
|
getFloat64: function(t) {
|
|
return G(q(this, 8, t, arguments.length > 1 ? arguments[1] : void 0), 52)
|
|
},
|
|
setInt8: function(t, e) {
|
|
K(this, 1, t, z, e)
|
|
},
|
|
setUint8: function(t, e) {
|
|
K(this, 1, t, z, e)
|
|
},
|
|
setInt16: function(t, e) {
|
|
K(this, 2, t, W, e, arguments.length > 2 ? arguments[2] : void 0)
|
|
},
|
|
setUint16: function(t, e) {
|
|
K(this, 2, t, W, e, arguments.length > 2 ? arguments[2] : void 0)
|
|
},
|
|
setInt32: function(t, e) {
|
|
K(this, 4, t, Z, e, arguments.length > 2 ? arguments[2] : void 0)
|
|
},
|
|
setUint32: function(t, e) {
|
|
K(this, 4, t, Z, e, arguments.length > 2 ? arguments[2] : void 0)
|
|
},
|
|
setFloat32: function(t, e) {
|
|
K(this, 4, t, Q, e, arguments.length > 2 ? arguments[2] : void 0)
|
|
},
|
|
setFloat64: function(t, e) {
|
|
K(this, 8, t, X, e, arguments.length > 2 ? arguments[2] : void 0)
|
|
}
|
|
});
|
|
A(R, k),
|
|
A(L, M),
|
|
t.exports = {
|
|
ArrayBuffer: R,
|
|
DataView: L
|
|
}
|
|
},
|
|
a981: function(t, e) {
|
|
t.exports = "undefined" != typeof ArrayBuffer && "undefined" != typeof DataView
|
|
},
|
|
e2cc: function(t, e, n) {
|
|
var r = n("6eeb");
|
|
t.exports = function(t, e, n) {
|
|
for (var o in e)
|
|
r(t, o, e[o], n);
|
|
return t
|
|
}
|
|
},
|
|
"19aa": function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("3a9b")
|
|
, i = r.TypeError;
|
|
t.exports = function(t, e) {
|
|
if (o(e, t))
|
|
return t;
|
|
throw i("Incorrect invocation")
|
|
}
|
|
},
|
|
"0b25": function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("5926")
|
|
, i = n("50c4")
|
|
, a = r.RangeError;
|
|
t.exports = function(t) {
|
|
if (void 0 === t)
|
|
return 0;
|
|
var e = o(t)
|
|
, n = i(e);
|
|
if (e !== n)
|
|
throw a("Wrong length or index");
|
|
return n
|
|
}
|
|
},
|
|
"77a7": function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = r.Array
|
|
, i = Math.abs
|
|
, a = Math.pow
|
|
, c = Math.floor
|
|
, u = Math.log
|
|
, s = Math.LN2
|
|
, f = function(t, e, n) {
|
|
var r, f, l, p = o(n), d = 8 * n - e - 1, h = (1 << d) - 1, v = h >> 1, y = 23 === e ? a(2, -24) - a(2, -77) : 0, x = t < 0 || 0 === t && 1 / t < 0 ? 1 : 0, b = 0;
|
|
t = i(t),
|
|
t != t || t === 1 / 0 ? (f = t != t ? 1 : 0,
|
|
r = h) : (r = c(u(t) / s),
|
|
l = a(2, -r),
|
|
t * l < 1 && (r--,
|
|
l *= 2),
|
|
t += r + v >= 1 ? y / l : y * a(2, 1 - v),
|
|
t * l >= 2 && (r++,
|
|
l /= 2),
|
|
r + v >= h ? (f = 0,
|
|
r = h) : r + v >= 1 ? (f = (t * l - 1) * a(2, e),
|
|
r += v) : (f = t * a(2, v - 1) * a(2, e),
|
|
r = 0));
|
|
while (e >= 8)
|
|
p[b++] = 255 & f,
|
|
f /= 256,
|
|
e -= 8;
|
|
r = r << e | f,
|
|
d += e;
|
|
while (d > 0)
|
|
p[b++] = 255 & r,
|
|
r /= 256,
|
|
d -= 8;
|
|
return p[--b] |= 128 * x,
|
|
p
|
|
}
|
|
, l = function(t, e) {
|
|
var n, r = t.length, o = 8 * r - e - 1, i = (1 << o) - 1, c = i >> 1, u = o - 7, s = r - 1, f = t[s--], l = 127 & f;
|
|
f >>= 7;
|
|
while (u > 0)
|
|
l = 256 * l + t[s--],
|
|
u -= 8;
|
|
n = l & (1 << -u) - 1,
|
|
l >>= -u,
|
|
u += e;
|
|
while (u > 0)
|
|
n = 256 * n + t[s--],
|
|
u -= 8;
|
|
if (0 === l)
|
|
l = 1 - c;
|
|
else {
|
|
if (l === i)
|
|
return n ? NaN : f ? -1 / 0 : 1 / 0;
|
|
n += a(2, e),
|
|
l -= c
|
|
}
|
|
return (f ? -1 : 1) * n * a(2, l - e)
|
|
};
|
|
t.exports = {
|
|
pack: f,
|
|
unpack: l
|
|
}
|
|
},
|
|
"81d5": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("7b0b")
|
|
, o = n("23cb")
|
|
, i = n("07fa");
|
|
t.exports = function(t) {
|
|
var e = r(this)
|
|
, n = i(e)
|
|
, a = arguments.length
|
|
, c = o(a > 1 ? arguments[1] : void 0, n)
|
|
, u = a > 2 ? arguments[2] : void 0
|
|
, s = void 0 === u ? n : o(u, n);
|
|
while (s > c)
|
|
e[c++] = t;
|
|
return e
|
|
}
|
|
},
|
|
"5cc6": function(t, e, n) {
|
|
var r = n("74e8");
|
|
r("Uint8", (function(t) {
|
|
return function(e, n, r) {
|
|
return t(this, e, n, r)
|
|
}
|
|
}
|
|
))
|
|
},
|
|
"74e8": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("23e7")
|
|
, o = n("da84")
|
|
, i = n("c65b")
|
|
, a = n("83ab")
|
|
, c = n("8aa7")
|
|
, u = n("ebb5")
|
|
, s = n("621a")
|
|
, f = n("19aa")
|
|
, l = n("5c6c")
|
|
, p = n("9112")
|
|
, d = n("eac5")
|
|
, h = n("50c4")
|
|
, v = n("0b25")
|
|
, y = n("182d")
|
|
, x = n("a04b")
|
|
, b = n("1a2d")
|
|
, g = n("f5df")
|
|
, m = n("861d")
|
|
, w = n("d9b5")
|
|
, A = n("7c73")
|
|
, S = n("3a9b")
|
|
, _ = n("d2bb")
|
|
, O = n("241c").f
|
|
, j = n("a078")
|
|
, E = n("b727").forEach
|
|
, k = n("2626")
|
|
, M = n("9bf2")
|
|
, T = n("06cf")
|
|
, N = n("69f3")
|
|
, I = n("7156")
|
|
, C = N.get
|
|
, R = N.set
|
|
, P = M.f
|
|
, L = T.f
|
|
, D = Math.round
|
|
, U = o.RangeError
|
|
, F = s.ArrayBuffer
|
|
, $ = F.prototype
|
|
, B = s.DataView
|
|
, Y = u.NATIVE_ARRAY_BUFFER_VIEWS
|
|
, V = u.TYPED_ARRAY_CONSTRUCTOR
|
|
, G = u.TYPED_ARRAY_TAG
|
|
, z = u.TypedArray
|
|
, W = u.TypedArrayPrototype
|
|
, Z = u.aTypedArrayConstructor
|
|
, H = u.isTypedArray
|
|
, Q = "BYTES_PER_ELEMENT"
|
|
, X = "Wrong length"
|
|
, J = function(t, e) {
|
|
Z(t);
|
|
var n = 0
|
|
, r = e.length
|
|
, o = new t(r);
|
|
while (r > n)
|
|
o[n] = e[n++];
|
|
return o
|
|
}
|
|
, q = function(t, e) {
|
|
P(t, e, {
|
|
get: function() {
|
|
return C(this)[e]
|
|
}
|
|
})
|
|
}
|
|
, K = function(t) {
|
|
var e;
|
|
return S($, t) || "ArrayBuffer" == (e = g(t)) || "SharedArrayBuffer" == e
|
|
}
|
|
, tt = function(t, e) {
|
|
return H(t) && !w(e) && e in t && d(+e) && e >= 0
|
|
}
|
|
, et = function(t, e) {
|
|
return e = x(e),
|
|
tt(t, e) ? l(2, t[e]) : L(t, e)
|
|
}
|
|
, nt = function(t, e, n) {
|
|
return e = x(e),
|
|
!(tt(t, e) && m(n) && b(n, "value")) || b(n, "get") || b(n, "set") || n.configurable || b(n, "writable") && !n.writable || b(n, "enumerable") && !n.enumerable ? P(t, e, n) : (t[e] = n.value,
|
|
t)
|
|
};
|
|
a ? (Y || (T.f = et,
|
|
M.f = nt,
|
|
q(W, "buffer"),
|
|
q(W, "byteOffset"),
|
|
q(W, "byteLength"),
|
|
q(W, "length")),
|
|
r({
|
|
target: "Object",
|
|
stat: !0,
|
|
forced: !Y
|
|
}, {
|
|
getOwnPropertyDescriptor: et,
|
|
defineProperty: nt
|
|
}),
|
|
t.exports = function(t, e, n) {
|
|
var a = t.match(/\d+$/)[0] / 8
|
|
, u = t + (n ? "Clamped" : "") + "Array"
|
|
, s = "get" + t
|
|
, l = "set" + t
|
|
, d = o[u]
|
|
, x = d
|
|
, b = x && x.prototype
|
|
, g = {}
|
|
, w = function(t, e) {
|
|
var n = C(t);
|
|
return n.view[s](e * a + n.byteOffset, !0)
|
|
}
|
|
, S = function(t, e, r) {
|
|
var o = C(t);
|
|
n && (r = (r = D(r)) < 0 ? 0 : r > 255 ? 255 : 255 & r),
|
|
o.view[l](e * a + o.byteOffset, r, !0)
|
|
}
|
|
, M = function(t, e) {
|
|
P(t, e, {
|
|
get: function() {
|
|
return w(this, e)
|
|
},
|
|
set: function(t) {
|
|
return S(this, e, t)
|
|
},
|
|
enumerable: !0
|
|
})
|
|
};
|
|
Y ? c && (x = e((function(t, e, n, r) {
|
|
return f(t, b),
|
|
I(function() {
|
|
return m(e) ? K(e) ? void 0 !== r ? new d(e,y(n, a),r) : void 0 !== n ? new d(e,y(n, a)) : new d(e) : H(e) ? J(x, e) : i(j, x, e) : new d(v(e))
|
|
}(), t, x)
|
|
}
|
|
)),
|
|
_ && _(x, z),
|
|
E(O(d), (function(t) {
|
|
t in x || p(x, t, d[t])
|
|
}
|
|
)),
|
|
x.prototype = b) : (x = e((function(t, e, n, r) {
|
|
f(t, b);
|
|
var o, c, u, s = 0, l = 0;
|
|
if (m(e)) {
|
|
if (!K(e))
|
|
return H(e) ? J(x, e) : i(j, x, e);
|
|
o = e,
|
|
l = y(n, a);
|
|
var p = e.byteLength;
|
|
if (void 0 === r) {
|
|
if (p % a)
|
|
throw U(X);
|
|
if (c = p - l,
|
|
c < 0)
|
|
throw U(X)
|
|
} else if (c = h(r) * a,
|
|
c + l > p)
|
|
throw U(X);
|
|
u = c / a
|
|
} else
|
|
u = v(e),
|
|
c = u * a,
|
|
o = new F(c);
|
|
R(t, {
|
|
buffer: o,
|
|
byteOffset: l,
|
|
byteLength: c,
|
|
length: u,
|
|
view: new B(o)
|
|
});
|
|
while (s < u)
|
|
M(t, s++)
|
|
}
|
|
)),
|
|
_ && _(x, z),
|
|
b = x.prototype = A(W)),
|
|
b.constructor !== x && p(b, "constructor", x),
|
|
p(b, V, x),
|
|
G && p(b, G, u),
|
|
g[u] = x,
|
|
r({
|
|
global: !0,
|
|
forced: x != d,
|
|
sham: !Y
|
|
}, g),
|
|
Q in x || p(x, Q, a),
|
|
Q in b || p(b, Q, a),
|
|
k(u)
|
|
}
|
|
) : t.exports = function() {}
|
|
},
|
|
"8aa7": function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("d039")
|
|
, i = n("1c7e")
|
|
, a = n("ebb5").NATIVE_ARRAY_BUFFER_VIEWS
|
|
, c = r.ArrayBuffer
|
|
, u = r.Int8Array;
|
|
t.exports = !a || !o((function() {
|
|
u(1)
|
|
}
|
|
)) || !o((function() {
|
|
new u(-1)
|
|
}
|
|
)) || !i((function(t) {
|
|
new u,
|
|
new u(null),
|
|
new u(1.5),
|
|
new u(t)
|
|
}
|
|
), !0) || o((function() {
|
|
return 1 !== new u(new c(2),1,void 0).length
|
|
}
|
|
))
|
|
},
|
|
"1c7e": function(t, e, n) {
|
|
var r = n("b622")
|
|
, o = r("iterator")
|
|
, i = !1;
|
|
try {
|
|
var a = 0
|
|
, c = {
|
|
next: function() {
|
|
return {
|
|
done: !!a++
|
|
}
|
|
},
|
|
return: function() {
|
|
i = !0
|
|
}
|
|
};
|
|
c[o] = function() {
|
|
return this
|
|
}
|
|
,
|
|
Array.from(c, (function() {
|
|
throw 2
|
|
}
|
|
))
|
|
} catch (u) {}
|
|
t.exports = function(t, e) {
|
|
if (!e && !i)
|
|
return !1;
|
|
var n = !1;
|
|
try {
|
|
var r = {};
|
|
r[o] = function() {
|
|
return {
|
|
next: function() {
|
|
return {
|
|
done: n = !0
|
|
}
|
|
}
|
|
}
|
|
}
|
|
,
|
|
t(r)
|
|
} catch (u) {}
|
|
return n
|
|
}
|
|
},
|
|
ebb5: function(t, e, n) {
|
|
"use strict";
|
|
var r, o, i, a = n("a981"), c = n("83ab"), u = n("da84"), s = n("1626"), f = n("861d"), l = n("1a2d"), p = n("f5df"), d = n("0d51"), h = n("9112"), v = n("6eeb"), y = n("9bf2").f, x = n("3a9b"), b = n("e163"), g = n("d2bb"), m = n("b622"), w = n("90e3"), A = u.Int8Array, S = A && A.prototype, _ = u.Uint8ClampedArray, O = _ && _.prototype, j = A && b(A), E = S && b(S), k = Object.prototype, M = u.TypeError, T = m("toStringTag"), N = w("TYPED_ARRAY_TAG"), I = w("TYPED_ARRAY_CONSTRUCTOR"), C = a && !!g && "Opera" !== p(u.opera), R = !1, P = {
|
|
Int8Array: 1,
|
|
Uint8Array: 1,
|
|
Uint8ClampedArray: 1,
|
|
Int16Array: 2,
|
|
Uint16Array: 2,
|
|
Int32Array: 4,
|
|
Uint32Array: 4,
|
|
Float32Array: 4,
|
|
Float64Array: 8
|
|
}, L = {
|
|
BigInt64Array: 8,
|
|
BigUint64Array: 8
|
|
}, D = function(t) {
|
|
if (!f(t))
|
|
return !1;
|
|
var e = p(t);
|
|
return "DataView" === e || l(P, e) || l(L, e)
|
|
}, U = function(t) {
|
|
if (!f(t))
|
|
return !1;
|
|
var e = p(t);
|
|
return l(P, e) || l(L, e)
|
|
}, F = function(t) {
|
|
if (U(t))
|
|
return t;
|
|
throw M("Target is not a typed array")
|
|
}, $ = function(t) {
|
|
if (s(t) && (!g || x(j, t)))
|
|
return t;
|
|
throw M(d(t) + " is not a typed array constructor")
|
|
}, B = function(t, e, n, r) {
|
|
if (c) {
|
|
if (n)
|
|
for (var o in P) {
|
|
var i = u[o];
|
|
if (i && l(i.prototype, t))
|
|
try {
|
|
delete i.prototype[t]
|
|
} catch (a) {
|
|
try {
|
|
i.prototype[t] = e
|
|
} catch (s) {}
|
|
}
|
|
}
|
|
E[t] && !n || v(E, t, n ? e : C && S[t] || e, r)
|
|
}
|
|
}, Y = function(t, e, n) {
|
|
var r, o;
|
|
if (c) {
|
|
if (g) {
|
|
if (n)
|
|
for (r in P)
|
|
if (o = u[r],
|
|
o && l(o, t))
|
|
try {
|
|
delete o[t]
|
|
} catch (i) {}
|
|
if (j[t] && !n)
|
|
return;
|
|
try {
|
|
return v(j, t, n ? e : C && j[t] || e)
|
|
} catch (i) {}
|
|
}
|
|
for (r in P)
|
|
o = u[r],
|
|
!o || o[t] && !n || v(o, t, e)
|
|
}
|
|
};
|
|
for (r in P)
|
|
o = u[r],
|
|
i = o && o.prototype,
|
|
i ? h(i, I, o) : C = !1;
|
|
for (r in L)
|
|
o = u[r],
|
|
i = o && o.prototype,
|
|
i && h(i, I, o);
|
|
if ((!C || !s(j) || j === Function.prototype) && (j = function() {
|
|
throw M("Incorrect invocation")
|
|
}
|
|
,
|
|
C))
|
|
for (r in P)
|
|
u[r] && g(u[r], j);
|
|
if ((!C || !E || E === k) && (E = j.prototype,
|
|
C))
|
|
for (r in P)
|
|
u[r] && g(u[r].prototype, E);
|
|
if (C && b(O) !== E && g(O, E),
|
|
c && !l(E, T))
|
|
for (r in R = !0,
|
|
y(E, T, {
|
|
get: function() {
|
|
return f(this) ? this[N] : void 0
|
|
}
|
|
}),
|
|
P)
|
|
u[r] && h(u[r], N, r);
|
|
t.exports = {
|
|
NATIVE_ARRAY_BUFFER_VIEWS: C,
|
|
TYPED_ARRAY_CONSTRUCTOR: I,
|
|
TYPED_ARRAY_TAG: R && N,
|
|
aTypedArray: F,
|
|
aTypedArrayConstructor: $,
|
|
exportTypedArrayMethod: B,
|
|
exportTypedArrayStaticMethod: Y,
|
|
isView: D,
|
|
isTypedArray: U,
|
|
TypedArray: j,
|
|
TypedArrayPrototype: E
|
|
}
|
|
},
|
|
eac5: function(t, e, n) {
|
|
var r = n("861d")
|
|
, o = Math.floor;
|
|
t.exports = Number.isInteger || function(t) {
|
|
return !r(t) && isFinite(t) && o(t) === t
|
|
}
|
|
},
|
|
"182d": function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("f8cd")
|
|
, i = r.RangeError;
|
|
t.exports = function(t, e) {
|
|
var n = o(t);
|
|
if (n % e)
|
|
throw i("Wrong offset");
|
|
return n
|
|
}
|
|
},
|
|
f8cd: function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("5926")
|
|
, i = r.RangeError;
|
|
t.exports = function(t) {
|
|
var e = o(t);
|
|
if (e < 0)
|
|
throw i("The argument can't be less than 0");
|
|
return e
|
|
}
|
|
},
|
|
a078: function(t, e, n) {
|
|
var r = n("0366")
|
|
, o = n("c65b")
|
|
, i = n("5087")
|
|
, a = n("7b0b")
|
|
, c = n("07fa")
|
|
, u = n("9a1f")
|
|
, s = n("35a1")
|
|
, f = n("e95a")
|
|
, l = n("ebb5").aTypedArrayConstructor;
|
|
t.exports = function(t) {
|
|
var e, n, p, d, h, v, y = i(this), x = a(t), b = arguments.length, g = b > 1 ? arguments[1] : void 0, m = void 0 !== g, w = s(x);
|
|
if (w && !f(w)) {
|
|
h = u(x, w),
|
|
v = h.next,
|
|
x = [];
|
|
while (!(d = o(v, h)).done)
|
|
x.push(d.value)
|
|
}
|
|
for (m && b > 2 && (g = r(g, arguments[2])),
|
|
n = c(x),
|
|
p = new (l(y))(n),
|
|
e = 0; n > e; e++)
|
|
p[e] = m ? g(x[e], e) : x[e];
|
|
return p
|
|
}
|
|
},
|
|
"9a1f": function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("c65b")
|
|
, i = n("59ed")
|
|
, a = n("825a")
|
|
, c = n("0d51")
|
|
, u = n("35a1")
|
|
, s = r.TypeError;
|
|
t.exports = function(t, e) {
|
|
var n = arguments.length < 2 ? u(t) : e;
|
|
if (i(n))
|
|
return a(o(n, t));
|
|
throw s(c(t) + " is not iterable")
|
|
}
|
|
},
|
|
"35a1": function(t, e, n) {
|
|
var r = n("f5df")
|
|
, o = n("dc4a")
|
|
, i = n("3f8c")
|
|
, a = n("b622")
|
|
, c = a("iterator");
|
|
t.exports = function(t) {
|
|
if (void 0 != t)
|
|
return o(t, c) || o(t, "@@iterator") || i[r(t)]
|
|
}
|
|
},
|
|
e95a: function(t, e, n) {
|
|
var r = n("b622")
|
|
, o = n("3f8c")
|
|
, i = r("iterator")
|
|
, a = Array.prototype;
|
|
t.exports = function(t) {
|
|
return void 0 !== t && (o.Array === t || a[i] === t)
|
|
}
|
|
},
|
|
"9a8c": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("e330")
|
|
, o = n("ebb5")
|
|
, i = n("145e")
|
|
, a = r(i)
|
|
, c = o.aTypedArray
|
|
, u = o.exportTypedArrayMethod;
|
|
u("copyWithin", (function(t, e) {
|
|
return a(c(this), t, e, arguments.length > 2 ? arguments[2] : void 0)
|
|
}
|
|
))
|
|
},
|
|
"145e": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("7b0b")
|
|
, o = n("23cb")
|
|
, i = n("07fa")
|
|
, a = Math.min;
|
|
t.exports = [].copyWithin || function(t, e) {
|
|
var n = r(this)
|
|
, c = i(n)
|
|
, u = o(t, c)
|
|
, s = o(e, c)
|
|
, f = arguments.length > 2 ? arguments[2] : void 0
|
|
, l = a((void 0 === f ? c : o(f, c)) - s, c - u)
|
|
, p = 1;
|
|
s < u && u < s + l && (p = -1,
|
|
s += l - 1,
|
|
u += l - 1);
|
|
while (l-- > 0)
|
|
s in n ? n[u] = n[s] : delete n[u],
|
|
u += p,
|
|
s += p;
|
|
return n
|
|
}
|
|
},
|
|
a975: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("ebb5")
|
|
, o = n("b727").every
|
|
, i = r.aTypedArray
|
|
, a = r.exportTypedArrayMethod;
|
|
a("every", (function(t) {
|
|
return o(i(this), t, arguments.length > 1 ? arguments[1] : void 0)
|
|
}
|
|
))
|
|
},
|
|
"735e": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("ebb5")
|
|
, o = n("c65b")
|
|
, i = n("81d5")
|
|
, a = r.aTypedArray
|
|
, c = r.exportTypedArrayMethod;
|
|
c("fill", (function(t) {
|
|
var e = arguments.length;
|
|
return o(i, a(this), t, e > 1 ? arguments[1] : void 0, e > 2 ? arguments[2] : void 0)
|
|
}
|
|
))
|
|
},
|
|
c1ac: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("ebb5")
|
|
, o = n("b727").filter
|
|
, i = n("1448")
|
|
, a = r.aTypedArray
|
|
, c = r.exportTypedArrayMethod;
|
|
c("filter", (function(t) {
|
|
var e = o(a(this), t, arguments.length > 1 ? arguments[1] : void 0);
|
|
return i(this, e)
|
|
}
|
|
))
|
|
},
|
|
1448: function(t, e, n) {
|
|
var r = n("dfb9")
|
|
, o = n("b6b7");
|
|
t.exports = function(t, e) {
|
|
return r(o(t), e)
|
|
}
|
|
},
|
|
dfb9: function(t, e, n) {
|
|
var r = n("07fa");
|
|
t.exports = function(t, e) {
|
|
var n = 0
|
|
, o = r(e)
|
|
, i = new t(o);
|
|
while (o > n)
|
|
i[n] = e[n++];
|
|
return i
|
|
}
|
|
},
|
|
b6b7: function(t, e, n) {
|
|
var r = n("ebb5")
|
|
, o = n("4840")
|
|
, i = r.TYPED_ARRAY_CONSTRUCTOR
|
|
, a = r.aTypedArrayConstructor;
|
|
t.exports = function(t) {
|
|
return a(o(t, t[i]))
|
|
}
|
|
},
|
|
d139: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("ebb5")
|
|
, o = n("b727").find
|
|
, i = r.aTypedArray
|
|
, a = r.exportTypedArrayMethod;
|
|
a("find", (function(t) {
|
|
return o(i(this), t, arguments.length > 1 ? arguments[1] : void 0)
|
|
}
|
|
))
|
|
},
|
|
"3a7b": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("ebb5")
|
|
, o = n("b727").findIndex
|
|
, i = r.aTypedArray
|
|
, a = r.exportTypedArrayMethod;
|
|
a("findIndex", (function(t) {
|
|
return o(i(this), t, arguments.length > 1 ? arguments[1] : void 0)
|
|
}
|
|
))
|
|
},
|
|
d5d6: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("ebb5")
|
|
, o = n("b727").forEach
|
|
, i = r.aTypedArray
|
|
, a = r.exportTypedArrayMethod;
|
|
a("forEach", (function(t) {
|
|
o(i(this), t, arguments.length > 1 ? arguments[1] : void 0)
|
|
}
|
|
))
|
|
},
|
|
"82f8": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("ebb5")
|
|
, o = n("4d64").includes
|
|
, i = r.aTypedArray
|
|
, a = r.exportTypedArrayMethod;
|
|
a("includes", (function(t) {
|
|
return o(i(this), t, arguments.length > 1 ? arguments[1] : void 0)
|
|
}
|
|
))
|
|
},
|
|
e91f: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("ebb5")
|
|
, o = n("4d64").indexOf
|
|
, i = r.aTypedArray
|
|
, a = r.exportTypedArrayMethod;
|
|
a("indexOf", (function(t) {
|
|
return o(i(this), t, arguments.length > 1 ? arguments[1] : void 0)
|
|
}
|
|
))
|
|
},
|
|
"60bd": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("da84")
|
|
, o = n("d039")
|
|
, i = n("e330")
|
|
, a = n("ebb5")
|
|
, c = n("e260")
|
|
, u = n("b622")
|
|
, s = u("iterator")
|
|
, f = r.Uint8Array
|
|
, l = i(c.values)
|
|
, p = i(c.keys)
|
|
, d = i(c.entries)
|
|
, h = a.aTypedArray
|
|
, v = a.exportTypedArrayMethod
|
|
, y = f && f.prototype
|
|
, x = !o((function() {
|
|
y[s].call([1])
|
|
}
|
|
))
|
|
, b = !!y && y.values && y[s] === y.values && "values" === y.values.name
|
|
, g = function() {
|
|
return l(h(this))
|
|
};
|
|
v("entries", (function() {
|
|
return d(h(this))
|
|
}
|
|
), x),
|
|
v("keys", (function() {
|
|
return p(h(this))
|
|
}
|
|
), x),
|
|
v("values", g, x || !b, {
|
|
name: "values"
|
|
}),
|
|
v(s, g, x || !b, {
|
|
name: "values"
|
|
})
|
|
},
|
|
"5f96": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("ebb5")
|
|
, o = n("e330")
|
|
, i = r.aTypedArray
|
|
, a = r.exportTypedArrayMethod
|
|
, c = o([].join);
|
|
a("join", (function(t) {
|
|
return c(i(this), t)
|
|
}
|
|
))
|
|
},
|
|
3280: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("ebb5")
|
|
, o = n("2ba4")
|
|
, i = n("e58c")
|
|
, a = r.aTypedArray
|
|
, c = r.exportTypedArrayMethod;
|
|
c("lastIndexOf", (function(t) {
|
|
var e = arguments.length;
|
|
return o(i, a(this), e > 1 ? [t, arguments[1]] : [t])
|
|
}
|
|
))
|
|
},
|
|
e58c: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("2ba4")
|
|
, o = n("fc6a")
|
|
, i = n("5926")
|
|
, a = n("07fa")
|
|
, c = n("a640")
|
|
, u = Math.min
|
|
, s = [].lastIndexOf
|
|
, f = !!s && 1 / [1].lastIndexOf(1, -0) < 0
|
|
, l = c("lastIndexOf")
|
|
, p = f || !l;
|
|
t.exports = p ? function(t) {
|
|
if (f)
|
|
return r(s, this, arguments) || 0;
|
|
var e = o(this)
|
|
, n = a(e)
|
|
, c = n - 1;
|
|
for (arguments.length > 1 && (c = u(c, i(arguments[1]))),
|
|
c < 0 && (c = n + c); c >= 0; c--)
|
|
if (c in e && e[c] === t)
|
|
return c || 0;
|
|
return -1
|
|
}
|
|
: s
|
|
},
|
|
"3fcc": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("ebb5")
|
|
, o = n("b727").map
|
|
, i = n("b6b7")
|
|
, a = r.aTypedArray
|
|
, c = r.exportTypedArrayMethod;
|
|
c("map", (function(t) {
|
|
return o(a(this), t, arguments.length > 1 ? arguments[1] : void 0, (function(t, e) {
|
|
return new (i(t))(e)
|
|
}
|
|
))
|
|
}
|
|
))
|
|
},
|
|
ca91: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("ebb5")
|
|
, o = n("d58f").left
|
|
, i = r.aTypedArray
|
|
, a = r.exportTypedArrayMethod;
|
|
a("reduce", (function(t) {
|
|
var e = arguments.length;
|
|
return o(i(this), t, e, e > 1 ? arguments[1] : void 0)
|
|
}
|
|
))
|
|
},
|
|
d58f: function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("59ed")
|
|
, i = n("7b0b")
|
|
, a = n("44ad")
|
|
, c = n("07fa")
|
|
, u = r.TypeError
|
|
, s = function(t) {
|
|
return function(e, n, r, s) {
|
|
o(n);
|
|
var f = i(e)
|
|
, l = a(f)
|
|
, p = c(f)
|
|
, d = t ? p - 1 : 0
|
|
, h = t ? -1 : 1;
|
|
if (r < 2)
|
|
while (1) {
|
|
if (d in l) {
|
|
s = l[d],
|
|
d += h;
|
|
break
|
|
}
|
|
if (d += h,
|
|
t ? d < 0 : p <= d)
|
|
throw u("Reduce of empty array with no initial value")
|
|
}
|
|
for (; t ? d >= 0 : p > d; d += h)
|
|
d in l && (s = n(s, l[d], d, f));
|
|
return s
|
|
}
|
|
};
|
|
t.exports = {
|
|
left: s(!1),
|
|
right: s(!0)
|
|
}
|
|
},
|
|
"25a1": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("ebb5")
|
|
, o = n("d58f").right
|
|
, i = r.aTypedArray
|
|
, a = r.exportTypedArrayMethod;
|
|
a("reduceRight", (function(t) {
|
|
var e = arguments.length;
|
|
return o(i(this), t, e, e > 1 ? arguments[1] : void 0)
|
|
}
|
|
))
|
|
},
|
|
cd26: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("ebb5")
|
|
, o = r.aTypedArray
|
|
, i = r.exportTypedArrayMethod
|
|
, a = Math.floor;
|
|
i("reverse", (function() {
|
|
var t, e = this, n = o(e).length, r = a(n / 2), i = 0;
|
|
while (i < r)
|
|
t = e[i],
|
|
e[i++] = e[--n],
|
|
e[n] = t;
|
|
return e
|
|
}
|
|
))
|
|
},
|
|
"3c5d": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("da84")
|
|
, o = n("c65b")
|
|
, i = n("ebb5")
|
|
, a = n("07fa")
|
|
, c = n("182d")
|
|
, u = n("7b0b")
|
|
, s = n("d039")
|
|
, f = r.RangeError
|
|
, l = r.Int8Array
|
|
, p = l && l.prototype
|
|
, d = p && p.set
|
|
, h = i.aTypedArray
|
|
, v = i.exportTypedArrayMethod
|
|
, y = !s((function() {
|
|
var t = new Uint8ClampedArray(2);
|
|
return o(d, t, {
|
|
length: 1,
|
|
0: 3
|
|
}, 1),
|
|
3 !== t[1]
|
|
}
|
|
))
|
|
, x = y && i.NATIVE_ARRAY_BUFFER_VIEWS && s((function() {
|
|
var t = new l(2);
|
|
return t.set(1),
|
|
t.set("2", 1),
|
|
0 !== t[0] || 2 !== t[1]
|
|
}
|
|
));
|
|
v("set", (function(t) {
|
|
h(this);
|
|
var e = c(arguments.length > 1 ? arguments[1] : void 0, 1)
|
|
, n = u(t);
|
|
if (y)
|
|
return o(d, this, n, e);
|
|
var r = this.length
|
|
, i = a(n)
|
|
, s = 0;
|
|
if (i + e > r)
|
|
throw f("Wrong length");
|
|
while (s < i)
|
|
this[e + s] = n[s++]
|
|
}
|
|
), !y || x)
|
|
},
|
|
2954: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("ebb5")
|
|
, o = n("b6b7")
|
|
, i = n("d039")
|
|
, a = n("f36a")
|
|
, c = r.aTypedArray
|
|
, u = r.exportTypedArrayMethod
|
|
, s = i((function() {
|
|
new Int8Array(1).slice()
|
|
}
|
|
));
|
|
u("slice", (function(t, e) {
|
|
var n = a(c(this), t, e)
|
|
, r = o(this)
|
|
, i = 0
|
|
, u = n.length
|
|
, s = new r(u);
|
|
while (u > i)
|
|
s[i] = n[i++];
|
|
return s
|
|
}
|
|
), s)
|
|
},
|
|
"649e": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("ebb5")
|
|
, o = n("b727").some
|
|
, i = r.aTypedArray
|
|
, a = r.exportTypedArrayMethod;
|
|
a("some", (function(t) {
|
|
return o(i(this), t, arguments.length > 1 ? arguments[1] : void 0)
|
|
}
|
|
))
|
|
},
|
|
"219c": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("da84")
|
|
, o = n("e330")
|
|
, i = n("d039")
|
|
, a = n("59ed")
|
|
, c = n("addb")
|
|
, u = n("ebb5")
|
|
, s = n("04d1")
|
|
, f = n("d998")
|
|
, l = n("2d00")
|
|
, p = n("512c")
|
|
, d = r.Array
|
|
, h = u.aTypedArray
|
|
, v = u.exportTypedArrayMethod
|
|
, y = r.Uint16Array
|
|
, x = y && o(y.prototype.sort)
|
|
, b = !!x && !(i((function() {
|
|
x(new y(2), null)
|
|
}
|
|
)) && i((function() {
|
|
x(new y(2), {})
|
|
}
|
|
)))
|
|
, g = !!x && !i((function() {
|
|
if (l)
|
|
return l < 74;
|
|
if (s)
|
|
return s < 67;
|
|
if (f)
|
|
return !0;
|
|
if (p)
|
|
return p < 602;
|
|
var t, e, n = new y(516), r = d(516);
|
|
for (t = 0; t < 516; t++)
|
|
e = t % 4,
|
|
n[t] = 515 - t,
|
|
r[t] = t - 2 * e + 3;
|
|
for (x(n, (function(t, e) {
|
|
return (t / 4 | 0) - (e / 4 | 0)
|
|
}
|
|
)),
|
|
t = 0; t < 516; t++)
|
|
if (n[t] !== r[t])
|
|
return !0
|
|
}
|
|
))
|
|
, m = function(t) {
|
|
return function(e, n) {
|
|
return void 0 !== t ? +t(e, n) || 0 : n !== n ? -1 : e !== e ? 1 : 0 === e && 0 === n ? 1 / e > 0 && 1 / n < 0 ? 1 : -1 : e > n
|
|
}
|
|
};
|
|
v("sort", (function(t) {
|
|
return void 0 !== t && a(t),
|
|
g ? x(this, t) : c(h(this), m(t))
|
|
}
|
|
), !g || b)
|
|
},
|
|
addb: function(t, e, n) {
|
|
var r = n("4dae")
|
|
, o = Math.floor
|
|
, i = function(t, e) {
|
|
var n = t.length
|
|
, u = o(n / 2);
|
|
return n < 8 ? a(t, e) : c(t, i(r(t, 0, u), e), i(r(t, u), e), e)
|
|
}
|
|
, a = function(t, e) {
|
|
var n, r, o = t.length, i = 1;
|
|
while (i < o) {
|
|
r = i,
|
|
n = t[i];
|
|
while (r && e(t[r - 1], n) > 0)
|
|
t[r] = t[--r];
|
|
r !== i++ && (t[r] = n)
|
|
}
|
|
return t
|
|
}
|
|
, c = function(t, e, n, r) {
|
|
var o = e.length
|
|
, i = n.length
|
|
, a = 0
|
|
, c = 0;
|
|
while (a < o || c < i)
|
|
t[a + c] = a < o && c < i ? r(e[a], n[c]) <= 0 ? e[a++] : n[c++] : a < o ? e[a++] : n[c++];
|
|
return t
|
|
};
|
|
t.exports = i
|
|
},
|
|
"04d1": function(t, e, n) {
|
|
var r = n("342f")
|
|
, o = r.match(/firefox\/(\d+)/i);
|
|
t.exports = !!o && +o[1]
|
|
},
|
|
d998: function(t, e, n) {
|
|
var r = n("342f");
|
|
t.exports = /MSIE|Trident/.test(r)
|
|
},
|
|
"512c": function(t, e, n) {
|
|
var r = n("342f")
|
|
, o = r.match(/AppleWebKit\/(\d+)\./);
|
|
t.exports = !!o && +o[1]
|
|
},
|
|
"170b": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("ebb5")
|
|
, o = n("50c4")
|
|
, i = n("23cb")
|
|
, a = n("b6b7")
|
|
, c = r.aTypedArray
|
|
, u = r.exportTypedArrayMethod;
|
|
u("subarray", (function(t, e) {
|
|
var n = c(this)
|
|
, r = n.length
|
|
, u = i(t, r)
|
|
, s = a(n);
|
|
return new s(n.buffer,n.byteOffset + u * n.BYTES_PER_ELEMENT,o((void 0 === e ? r : i(e, r)) - u))
|
|
}
|
|
))
|
|
},
|
|
b39a: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("da84")
|
|
, o = n("2ba4")
|
|
, i = n("ebb5")
|
|
, a = n("d039")
|
|
, c = n("f36a")
|
|
, u = r.Int8Array
|
|
, s = i.aTypedArray
|
|
, f = i.exportTypedArrayMethod
|
|
, l = [].toLocaleString
|
|
, p = !!u && a((function() {
|
|
l.call(new u(1))
|
|
}
|
|
))
|
|
, d = a((function() {
|
|
return [1, 2].toLocaleString() != new u([1, 2]).toLocaleString()
|
|
}
|
|
)) || !a((function() {
|
|
u.prototype.toLocaleString.call([1, 2])
|
|
}
|
|
));
|
|
f("toLocaleString", (function() {
|
|
return o(l, p ? c(s(this)) : s(this), c(arguments))
|
|
}
|
|
), d)
|
|
},
|
|
"72f7": function(t, e, n) {
|
|
"use strict";
|
|
var r = n("ebb5").exportTypedArrayMethod
|
|
, o = n("d039")
|
|
, i = n("da84")
|
|
, a = n("e330")
|
|
, c = i.Uint8Array
|
|
, u = c && c.prototype || {}
|
|
, s = [].toString
|
|
, f = a([].join);
|
|
o((function() {
|
|
s.call({})
|
|
}
|
|
)) && (s = function() {
|
|
return f(this)
|
|
}
|
|
);
|
|
var l = u.toString != s;
|
|
r("toString", s, l)
|
|
},
|
|
baa5: function(t, e, n) {
|
|
var r = n("23e7")
|
|
, o = n("e58c");
|
|
r({
|
|
target: "Array",
|
|
proto: !0,
|
|
forced: o !== [].lastIndexOf
|
|
}, {
|
|
lastIndexOf: o
|
|
})
|
|
},
|
|
fb6a: function(t, e, n) {
|
|
"use strict";
|
|
var r = n("23e7")
|
|
, o = n("da84")
|
|
, i = n("e8b5")
|
|
, a = n("68ee")
|
|
, c = n("861d")
|
|
, u = n("23cb")
|
|
, s = n("07fa")
|
|
, f = n("fc6a")
|
|
, l = n("8418")
|
|
, p = n("b622")
|
|
, d = n("1dde")
|
|
, h = n("f36a")
|
|
, v = d("slice")
|
|
, y = p("species")
|
|
, x = o.Array
|
|
, b = Math.max;
|
|
r({
|
|
target: "Array",
|
|
proto: !0,
|
|
forced: !v
|
|
}, {
|
|
slice: function(t, e) {
|
|
var n, r, o, p = f(this), d = s(p), v = u(t, d), g = u(void 0 === e ? d : e, d);
|
|
if (i(p) && (n = p.constructor,
|
|
a(n) && (n === x || i(n.prototype)) ? n = void 0 : c(n) && (n = n[y],
|
|
null === n && (n = void 0)),
|
|
n === x || void 0 === n))
|
|
return h(p, v, g);
|
|
for (r = new (void 0 === n ? x : n)(b(g - v, 0)),
|
|
o = 0; v < g; v++,
|
|
o++)
|
|
v in p && l(r, o, p[v]);
|
|
return r.length = o,
|
|
r
|
|
}
|
|
})
|
|
},
|
|
"1dde": function(t, e, n) {
|
|
var r = n("d039")
|
|
, o = n("b622")
|
|
, i = n("2d00")
|
|
, a = o("species");
|
|
t.exports = function(t) {
|
|
return i >= 51 || !r((function() {
|
|
var e = []
|
|
, n = e.constructor = {};
|
|
return n[a] = function() {
|
|
return {
|
|
foo: 1
|
|
}
|
|
}
|
|
,
|
|
1 !== e[t](Boolean).foo
|
|
}
|
|
))
|
|
}
|
|
},
|
|
"944a": function(t, e, n) {
|
|
var r = n("746f");
|
|
r("toStringTag")
|
|
},
|
|
"0c47": function(t, e, n) {
|
|
var r = n("da84")
|
|
, o = n("d44e");
|
|
o(r.JSON, "JSON", !0)
|
|
},
|
|
"23dc": function(t, e, n) {
|
|
var r = n("d44e");
|
|
r(Math, "Math", !0)
|
|
},
|
|
});
|
|
|
|
|
|
|
|
// o
|
|
function h(e) {
|
|
var n = {};
|
|
n.yDzpE = function (e, n) {
|
|
return e < n
|
|
}
|
|
for (var t = e.length, c = new Uint8Array(t), a = 0; n.yDzpE(a, t); a++)
|
|
c[a] = e.charCodeAt(a);
|
|
return c
|
|
}
|
|
|
|
|
|
function v(n){
|
|
var t = n.length;
|
|
e = new Uint8Array(t);
|
|
for (var c = 0; c < t; c += 1)
|
|
e[c] = 255 & n[c];
|
|
return e;
|
|
}
|
|
|
|
function toBase64(u){
|
|
return btoa(String.fromCharCode.apply(null, u));
|
|
}
|
|
|
|
|
|
function getJose(data){
|
|
let o = h(data);
|
|
let res;
|
|
|
|
window.Jose.call("$encrypt", [o, "c7b645db-65e8-401f-b38c-4c07c5fff247", {
|
|
suc: function(t){
|
|
res = toBase64(v(t));
|
|
},
|
|
err: function(u){
|
|
res = "error";
|
|
}
|
|
}])
|
|
|
|
return res;
|
|
}
|
|
|
|
// '3sCt3iAAAAAAAAAAAAAAAwEQBjoIdCECzuPsx6wdAABEDYcfnH++Zl0UHFi8w4KsylFni3n/IM0Nj1pA+W2amnyEe76Br6Uoe4lFbvut0FbUy7ikOIvSm2mzKsKKjJqHpb1C4Q8CGKW87HNNfL5vG7S1uIzOlLWOp4y3uEpPq5+T5HyQg65PooIWIJmcnHigCxJjvZjTnKtsdNyk/LS4msbSgy2OSdD4fJD5tYgEkQbNQZWffa0u+rk/vQxBS8v/ULS5oK89vYoeWoq8NnuWl7NV1yjfr0kN1pAPuXWKupyvoruk4f/uZZv7Yqi1jpTuZEgllqUdcchSYkNCOFtp33xfnvK1gKDDvtRpopO/UuiUj4qSy8/iamC5IJ7fj5rTi1b/1JDeQqhxWZpPbZSsm8aropdV5pqx+3uqm9FvqQ7VDKprK9xRW/z6x5tcu62MngSN2piexZSw6MWKboiRyZeV3m6Hqbq6iH6Or2qImOWl+53rd/6q0VXblr20sb2oS4JKwwj3oIiBg6osp1KPxZDi+ZLJkA7poGNXpm/46yRKtWxeWG2sPIzbvUWpx+B3CQybua/IstuZ3QbKKourmfJ5lL+LL4mcnU+WPRSBkxSmUJvPB/+61K2IYLjBv6iplHWrqFUwvBaRRYaSqtHs3/o5bKGkm0Tfu7RBdTaImq2CVCTIjbW0jaipl5TKWoLNUwPaDeH5XtxQtY2XF4TaWojLwqEZH0aMjyNQFi4bnYK3VEoL/726DVNWDYFDjYmjDxpSCcKGqZKGupoR/pfyHakuFV1btsbjdsGbjgKP+lubgZP1l8WJi8WARNfKzNfKwnxsF+wtXAfJ+Fr31tj4CqXEXASaAdetmdIxgL3sisnOz7zaHgC+pgrLmvsoFtepn8rXyKzW0/2+BS3Ww8kd1mb6DqXWm/5azQzUSeFkVgebqbzGEhK//QXf2sSMDNPAGbzAedx3/sqC2c9q5tgHWhql3vzGzMql/QxTy8UfzlY5gHpqA8P9ya8s7g2wSdvOCopC2g6mCMwC3JWx0K4SA93fwgic1UtX1ql/hfXcUZzkEg60Saf5aMUIDdWSILfn06j0zvfGg8TcQk+8EArf0hBqDB3E2N1/+NvOu9mmIBYNuP/X2zfUvN/V7/6uvN7aHlrKF8oezKTe3s/4ULj2/Mpq3fsPEE+sDksROAm+r/mob8ngwVvltf/I605YfcqDbvodyANB1/21zfza/oCdwvteGPnArdTp1Y4GCNrIGtzry9P7sE3d19hd3FzvydoONIvH/RfTsdXTrxnrpM3rzOnFve4H2P2xxADr68y/4quX6BGZnevSDqXLz88DqXf83s3aU7pOVNrIidrGy9LNsKfiZ/v4vMws2vm10874isbQQQPN19icxsw7yLrDKMLZ7vzUwxE72FHV7tzbugeaC9vlv/7q2NPQtP7+CaB009OQym6+VOwMFnut183a7o7RAxOKrP3Ey0w6+aQMx+uAX8l4+hbsreme++oAvhfA3Eh4D0jB/vyMK9UtQtuwy+TI65HLrALSzVABycr3y5DNy9PEtF2HovYJ9MCsfNarlevdm8ycWV/W2B96YKqPythkKM0K7Mgs2eWB6h08/MiYGCyaCOncBDYq49Xfod3Mj8pc6bwHyxjQZf4ULvoM+v6u39rIeEiBEsvwyqfgGg16VcsLG8GwHg3cKv/ryv8YLaxe+N7/4bH/zXLEL8rW7Nzd3K3CL97BscxLWi5x+YjTwil63c5KM9JqKgDKhLruxgna66TA68nqyLWqbVuQLgrIzFPdUMXJ1dgkGt/N6sQ+2MXWnq2wfs8J+Mv2D8xefigKhs7qho/NqO66DHyu+DjMeYP3l9j7Jdbkz8L7ud7KOuiq/GfM0kycSynbeCmQTdSO6FXE3soT1Kwd1pda7sWs6AzK/oC/+Q4PvIyRwcT9tmm6asY6SZ+o39YTyd3sxQ8ZrIyoBcJMJfv8nuxbt6vM1TZOj8Xf28Tkz1NM/Hi+AQXnm/wZ1sBb7KXFyuvD1r3FK/ra+7TW+BPkpMrY3TJBfOtIGfZOpej8wACc4wLNEtzU68nHW8xsTdxcCFQBdZqxgXrtpt16GCTIAuoSj/jfQdLFXCmiB75efCjI/+msycDq2NtvzMrLadG/y4vegLHYF0za1vjt+kJ56L3LqIraZCAO19KFncoLFtYljuoT/8q5+ARc/u9QRcjDWpBYHgFCGAoICg8S+Iwe+9nfP6m6AsXM06qwoOpbu9196sUU3BguFP0cwDgTx0i22LHo+NQ8WLX+p9wQZsvLqgPBf8XPg+rED6hGglu1qOmFCuUngA7Y2lKsSgu8Caz9zy88D7xI8Fcb2GTjzTuAii6s9tbB2s/fHH/7lf//nCv+yMcbClb4DQLM28x/wsLQ6L+kDYbL3THL/iHc0nnV09uMfBHGzbLLpe1J7dJAt+7Ta/uVysgOGM9QB83+S8p6DdDC0G3zCFa+H7Xoj+EYLn/nzPvrjO/rzLzpOgcTVevMcBYZ+ipn0v3fAsG5663CakGk/doZ2D/06R/CXN3nzsKh3B3dqA4FCcBex/nd6get3QPPU8QkBNITyH3zovXMKZzQ0YA7wbqW2h/EliNfCBDdUdHdaNr4PejqssS8HuvHwo+my+gUwgpu7MoKDY2L0v7Z1SQK+FHWzLBqT8IpjdzADtoFpaMOGdJOff/Pvu5dn93bFl1cqcXGwNC/x8g/wFymAwnoXT5fC/bcyboYChrs6ODaibmtrgHKx9wYrkjS2Pp16v39lvm34cX89gp+1s7cbHp2RkAb/fxSpRjB+DQGDh5JuOJWFfwEj6MjZu7ELs2qwgiP3qsEytjckvTsO/mW3voawbQESMXfU48TgEOfSAZry4nYXMz8NZsYmZica/qE1ukd8g+N2K9osPnVd5Yi+/8DMp4O2bDIDw+b1K/cKykcWXEceoqQGOgd2WqhulvNzqSSvQWUS9v8jrnuplyty8Zwi5W6n4taBVL/ixuB1svU2vheTA3lmpC4d2JaDsbD1PeAULmTivYfyb6gnvMaybBWWyd6WruYcsPfwy1szN+Wgf6+7VemXkFfZyLolfbDyMl4rJhumpBXvejGm657w9p+1lzO//2EmJCUotnGw5PV/uglCvuE3dYLXtv82IxYonpPvLiCgJuwQMjc5V/kiJn+/vm8UZBZ2f5JD3uVWmEXrQTujs6moImcI/wLIwZVBsucwc3b1v353lrJUH2Jja5cmj4LGK0Gmd6pqIjAvI3d6asAqk2+GQ0Yz/fqDc+rnYSAlaGew9VVi/0LFo3L0cDjn7+4ll2qoGp22iqx3usHdJc7T57ZhdTrhq/cQd9QbPfI67TpxtXix/CvrKZNw9XgyNSMrElu21eFltiSVBDQfbDvjORA3NHCbMzOVJb31LNiKezPpcpXKVC2BBoIVNl4rg61/MrNppqG/4+3jUieWdiBfcyspsGm3O/VY/YEy26OWa7pkGxbrVIE0dLU+dmt/8KFKhhN/I7Xt7+/q5u1AVgtTMxNvgrv/Z79g5BTV9O2SZHoSUS8Dcc8RR2ESHymnLsD7H/bzCX6C8ammImKX25LItqY/kiLD9Osu6DvbJbeg8gDrNbfpszT6czBweq7ls6QjOQSjKwQx3brcR76E71HhNPNH4rN9aaWiYOr2kF/798tAM2knkGhT1ybnHSU2NXGQsDPdJ1hkZpZ28WpLhfi4s0YyREHmY0Mqv+JXEy1vA9c35j4FypA+f3N95m2E5aNi1aDmEWYkfzeR+/eDLJbyw6zmLA63pUcyBXrQ83cuclMlq7xsEYPgPzryy0WLNOSQKzknv+uqdwhSRgHdNpLLbxHYr+QYVylku1DzSXClbIZzP/HG+n5bCu61sDZSVt+jZCdhYZrgc28rZwC/ay+nZZ6dblYWtDE1cnVZfjO/oueSk60u1GRrnhAyi/P7A/aHA/Ej5+JlHv4LMf6/Z7sANScOA1zK3qK04z6LNbDwLYKDNUtRn+tug4EwJPNWJYBj4icnZrbn1oKt6WXlbqAl5a+AQ/7xZvZzcmsraCau+rNVNre3u/BrZhafN6O+kGZqXt2WgnZzezrztXQJcEZRYlqfMpNDsLsjBLum7y1D/+SvU+PpZ1Bdm26Mr0e/gzA2sqIutT9U/6TQYAbwU8yzV3C7R6Zm52xrJ2FQ7iqqpi9AWvejdPct5rPTVn4A7x6mNTN6Cy50c8GhV+ImIvPnsPW/TIeiHhui8/4R8DZr4jT60SXoJJVsImP6CspA9+N3gVV/p/RxpWs6u3Pm4HU3gBVDhla+oxSDPTR0dr/6B+Oxp6rwoTOs8iwHg8J63yEob68Eo5bsxbUxOrMulvBifzHy8mfi+7pSOHN7CVczsD7n56e2Zu9k5+Bm8IejvnUmpYbxQDrCvlp8kzR9kjBvImfM42frEzrtUHnzRDBspDI3enHXBUO3o8/3nkdqAeLUJK62L6aHZaN1HWcSYV3D5oIj8LbBUHJjrv9Kd5yqvPAWJVHyOoR2VMEDuzeVPjP3r7umwRdqqhGfAfAz9POxToNp95M3L+/oJGarbBXDkcPQg0HQCp+EhUBohjJzs5bHQz+yMRY/dLTQtfH29SrrvxD9J2xugLLhtbp+taBPq1wS937n5/XZd5ep7pP6TtOiVWfq6mvclWTc5VbwOtYIHYzzsEKEsWHg8T5/FeU2JHakASc+ULoqgecrcSf7479yiHF2XYTyW2TxY3+TxS4v5NRcg2vmkKAq6GbgMzD35fWRtUC+qjXCqp8U/pQSUFYjMBZL5aEUYXXvcQtC68Xw8f+krg8Ac/CDXD6BcuaW6eRV42zrJVLWLBDgcKVZU+boa09hRP9aZvIrhPNSfvDxMpYiuP5xAqJh++mxCn8GCgArob4J0Vjnc6pVF+U3frO6z7A8LPMrZxeoUiuSGuQhU1GpQPWzNLtjIwhzS7ULYRaVk5IaCb/2MbLR9fqxkjshlp/1u0Wq+uLCl3xadrJZvqrXBrdzIj6XouS2Iieo/7dthWeiqyOzsajQ+mFmQvEjhoszNatr1HYBkQMVwcJKdXQDo3G/YHH1iPMf+zTklCAr8lP31zL1cPtetmBq0vMm6gI/KTd79T+XSjeyba8BPjCaoKYI9bQULnF/u+fUc3V0+yKx9ZfjdoIfVWa4KnQzM/aRNXxwZ5DzVSKgoT9i3Bva7P+J5Oo2ZnkjZ1P+hzE+4pyQ+0BAlHD/ddfwMUHA1irhZFJ/jSaThqXQr+oCv1Jgu5L23+JHN3/V8Ce6lTku5yZ3rMMHIrWoRT337LbzesNqM8YmubLxUfPepIcBS4CmIgPrHvpzsTI/oFbqFHNvZDKFwHI7ThLwdudvaWbhZyPWV+jrqxuooiloauyVVhe3tvGs+wL1euoxNYbmIrbUcrdCQbHe5LrhO4o3cRVL1Peq/hY3Xja3b/Bfuj+senuyVmdgpNQ86gSsDE6/18azHzS393Gz4fLhLXLS9LXy30rptWVzAOKwRQUm7qYz03QkZL8gZfbjqjXwb7Lyeuayr66sl0NX6ZDQhKVSYtSWUuPm0INDtaGvrvB6wfdqkrDiK6pRMnUeIsmFJF+gy2/tR2cjH+XhUGFhNz6xhvU1/wPtpYM3NGAUK/Q1IRHvaULyOvr6m/Q/afv2kpMIALMq13Jrtj1598fqoN9PnyKVvxKrH2Ltrzs6uvYyQHY6Xr7293pvDvxs7ynl15eja8Bo6FHuA3N/hR/6B7Vzt2jmeHPBZrTr8sMC8WZDI/awHuyUpviQpUKlqNLzea3PlTFAga8FsUXH96omrGhTRWdoJGQ8coPS1joGhoA3++JHJjjCs9f4apencmJUSKGyyJNvhOvBPtVrd5M+askT7uOgQPBrGr+7rWs7qStVpigs8zB1oFcCL32WUzUwAvqk55V+MXQeMarrC2b7sOISc8M107TpPotRYDMJuw7z4z33YwKq0igTo2v/qzPypw2S4FvS7ZegfIV/Jio/d36Z10BxL+GVMmfzQ1bItrK4p+LzwsBHSn31gDU0iy6GJ7W/HKSaxPA6cHOMt7I88bE/Aj3qsbp4+BO5Lw81MGSegoV28UBatRaQC/BfiYGk4lTXZ7MtU7Xyvglz0zrRvOYfBeCubGUczn6ux7UhIJXUTif6Amjs/6YFhTJhr3Z1cOxy+UE6tswV85sSfr+xhjU1VKuh4UqC7add9otyo60xspo0tjatkH7yk2Kp7VNemq71IpaDXyCjlX528tHclxVmADJ/M/czv/Wdo6JyFmKDqGH2Afby0V83N7qDddODp2uobQaJJFKWEA3BAjZ1M7eVL3Mq898W7YLm8bV6pW2F88OhOsnDeNV1wQZqwycFT2//uWnk4OqwslL1/5Yyi0lgQ7iunjr/QHTjWfezO+wAufF+e0JdsqI79VcsM6YndZb3OD43fDqBMk0jEPQNkngzA+9yCiuyWjbsBbW3ISqB8vqDQ/AAP/iD2a+fK/2xNUVqoYO3NUE3le+wqz01tbVfDrHBfe7op3vAszMzl64RswIEgF+FvzPPdmeTd/+ayzaxeWeGo/ADYoa/8yUnI6MzR7OjT6EjPrK/Litnh4JRaSCT+5kEADEk8pm9soozuuP1sD5cJmil9jO/eSKmHf+wfzB28G8OvzsmZ4fzuzOARu6Kl3bxUaXKske1sPoJhnd6fKOvEPO+xC4l/4R2NUt7BotqMCtJfwJzY62B8PIVk3L/NWs/hPFvHIu/5GrjC7E3H7Bm9jeOs573gB36e88HF1/mauP7h/Y7MHXjpgZzokWgCNZ57C8+0zSWGDtBPgOyUJtisPabRxAXsvBfuv5C1Zfn/1UPlSNEkQO08pdwuue/gyw68zvcJnWFvz2SV1aDa7Axoseeoj2AYwbnRallrTJAbjczRDproPJpNPSizL5etLtfVJcl8jpHCutPApn9/rsnGGLAsyQnADMhquG3SP4BcXsHr5LyGUWTDPW/KfCb6t8lkWVq0jZFtaKjuv6uPLVAfJBpf/R2g3+69yt3l5+m86PycPltcM8/WfN+RoNZ84ImsHBzZZNsA5A1d/s19vtWjgrwfjWy3HHzPixwOupiy051L38oR2bjLH4r+PZqa7IjXfoCc/XNn0lwtprudzK76/G3t0oz/6lOn96Av3xEcEdqaneCZ5LnvheSVvr7VoWqQzcEEaULhoBnqrbyhYOHqtXwdTQ0uU6J93M+81xlyEav75hW9fB+d0S4V/6FdXZ0/yO/fPJ1cCFX//D2Clt2xkJ0imM3CHHGslxm+WWi5hNqsg7wNbZ/abby3zaHpb8XswsrmhaxNMeGcV8zalFEsFkFa3H3i66Fz2qi1xfs8xW4c0/zzXCQO7Z6fysBvAPaE7QrgEr3v2+x60Bw9i5+M6n0FV0g0yYnKiArCPb4Us76bQ6y8vQOY+qItms/AX6wO/n+kCkDftYw8s9lhSOwsesQ61CjZOOgnwQ34nD3KY8DdTNN8VV18rLvt/JqiDK2a2OLM8vwsk+/uxW3vycA6t8u/+EiAjTpMzL5JgW4N3O+El9/8qXugeNrt7sy8u1jusE7CWxr6+lVs2krx1K4wiNgcgeFNXSzV3poMT9jvrBJavYDYwPyazKrdpfZczVyeve/chMStbOtY6LVs7bv5AI060by8Gs+6H8wvwXpW+tw+iIjMrS/umYDXHN3oZX1I3WDcfaBTClXPu/coVRgurXlR4Mj9ul7v/+/9S639wB2OTF+1X5FuyNwErBw8aoVQQhAgELF5z/s83e1Bzbi9zu0+38/YQTqM1KS33oz8MbyJ3V7gozgM67zopKVQHCy1Or3KoLxLz+LEqgzIP+ncxPDrobr81ow9v4yxIVfd4uy8vAViSv/bZVcP3oAOfgGtuMVdbL0gF8DqpMM91U8la/st7NSMjqrLjoPsiKwI3cVwnexZnXjhXo1KfOr8rqFP0eAXgI1WjWbBPrLsbDr1/6CBDN7FZIvsun1Ff8sAvm+TLB1t4UqjvdTUgEwg2Ox+wEv/xb/h/cFs1egKnJwB9cz1UrusD928y/380szpbBzKXuaEyk7cvRlsEDy2XpBnnb+XHszMhbzv7cDNrCDMudL1ysuAISK1pEeaP4nuzHv4JZycPJn8LB19oL2/AsjDn+zVdXm+umD9otpd2h0+nd3E019wfeG6TWSfnPzX/QLonW/MvOxVvdrgIXx7AIA9jP5OAvxdurb673B8vhnA3j+BaEz1xddMutxsTEOh+PiNzUkBACA1sVz5Yn29992/dC3s1cKf/T8sEN/MlvwhXJ1Qv4reX/08SOya4Cz94B2o/czKgt9S/qHIzLAgfczNTCXLjBwdfc3hx92u/Q66hL+ujNH6jv5txtLdcLzALLfvsBy9pVy/nhutwNqx3Q9kWlxlzLrMnZwQ9o+tHT2aV+Xwbf6hS4gPrG6l9Xw/843tTejcLQpL3uHE68K9pZ6OogD0vp4I3Y3PvcF/3N0GrYjejQzXwa11XtF1v9cMb7iYorwgHSylwEXFvXbh0LLXqLXc3SLGwvrOiovMPdwNTX2Em9zdvNccz6BcHWykYIQ+VciwHKul18wPvY6Ask0gC8GI7tAMsMwbpIMNUwi87/x/rB091r1Y5BCwrKzZruzAfcK+XaAJgcye9Iz7zO5KQY61zaCgvT1+Mu0MnJOH7BzejEjdUmzP7W/Nmrj/5dSQAPwYWozHz9d6/n/dJJjfTa2F0+IOxo1JwOl8nD19zJ/WXYLoHWLh4grI/2xXwFL9bj0Mul3uyvOI1AWAS8eMDLF8UkbIuWgrqfS+DKAf7W3z3b7ckG0wIssc/KwKnClAJ82JfFzN5Ivi0t1g10/Mr/3MaYltUPxLOMicjrzNXaxTHryyn/ytGGuh/W+XDJ3sYKAMd/6thPJtP53sS91eb4y/60D0ELy7u+2YEKjXzfwb/6jozV7/fN+Nzo+LwZR/vJxQEi7lIFjOjm3PuaeYpO6Mu4HK2WRpKsrsv+DS0JnJq6BQjsBOr/ugYcILr5T8Ks2ufc3Enrp5kJ3oa8oN7LSgHcD4GJ746pTlXb3Q7aVWXA3sXKoRwMuA7p1KSf7gPsxK0vptIon5tIVl6oBMf9VgyUi00eRdSsmNVf1dn3wXf2VdV4zhnGr8JaC2wo9HroKw/X+bgrvfiDHCl+oUfNO9yMqRa7lp3MnA7K5QsJ35hcKwH6wspWpeg6AaogpkjDyY2KyuwBcNP7EuW4BcpXGM1dv5WKT/hNsZbTyUfeHL3aDtv9j9gFj82ID1hRF8YryMv4/tHE+dPr1k+P1Mz/2ond66sDnpeN/9j73ciBgbTZnP3PzZutjKe22b34wtz6wSnIyg/LjgoHE/213df+3Nys7o+fl328vv0zi0/TlR38/VUbD5+MpC3MboxQ1Ezb/F/DXN5FLhbEasPJtCTey9KHKJYdPfv81MLPG8k/1V5Etc/dxkP7gNcR/hsIg/4IwAW8zqbL2Mu8g01WjK4tmhXq/M7SCLvCjXG6BpcEl5yt9xrMzcJEDMPZvfLIdsmOrMLL/YyaQADAOuD9CsZ/+8p+1kp7XH7Q0MEbcIOL1M7KVcWWCf6z0Fla4i2CLXzYy9+mgk7+zuzer5+q+MLINRn/Fo6Uv89HqxbKmsX93BS4Hg3XyC7KDXAN28l41fvZLtnX2xoMx/vXzrTODg5z/US4Tbe6Bd7G7tKLhkmCzvwd4QPptdvXwdMB2I+x18PPD8jgKAnFf0XUOu24rNPDlqwIwlzBy8z26fjC/tU/vUO9duSc+BKh61vEJ+xPJQ0fWh8MzMIEjP1O1tBrzd9A38y53gSbvo1wpfZPE93pXgKayN6QQ8TBFExsqMy/6y7q/Lw8zHHYEj8a7I/Bi8+VuIf/wJmFgcIBthxujVPL8/n/HLxLBLxZsC4J6/3I69qnyhgs0su9GdB2u9yqaqEJcayECcpZ5uTaSFKaFRmZX/kBU8UG+NyWIdLM06+HhV7+wVioyP9E/jitCB3FSAndwTrNJejdJ5exhtYI3A/V6tS40p7AgWzdDt/Gx+Kg/63O6tgKCd4PSA/fC4espI7smg/fy8qSTdi71KY6y/tUGcvM2NHtTJjPvA3CATr7/P1Smafo5Qmu3/wcd9PUzrS0K5mc37yqjIkxxOsKK83yDqTe7t1UlkyB9vxbGJrluErcyLo='
|
|
// captchaSn=Cgp6dC5jYXB0Y2hhEr4CUeB7lamXZgEFxQMr7b2_KY_Tvf2J19dRltVZl64quSQ_JpZMPbxlnR7fRDJUzMy3qfoyEwpw3oq9sN1gDU8kXcj7xDKMqwnFNt2HLcarK1kmLSo-v9rwXFdzH6JBF3fU4DnkdSvdAY-fTYOLedLcDVAPnB-ihbBDgfSYaiScYYgbyRfkm7s1Rajpj1aYTmk2t01fC-NIy4RgMimha2hpwl195Q_FGMesVhtaCbwAXWBjWpIqWT5GQJHUSO4eFi6Ytw26gV7Enu16cdjdb9ezptjjYZL6kYrVCSkfaYkeVEo4GHQntZSdOrl1u6J4hnACKUtqg85QYGzO36L6AcnYVv5OAwSDJIS5vItPKmmKwRi-BvV8-XzEgVP1Nid4Y53ldTMFgaD6EUdpmP-oZiAog4cXfftwsw2SgUkHOWrIGhJxat9v18_vGhz0w0fGzFHTlSooBTAC&bgDisWidth=316&bgDisHeight=184&cutDisWidth=56&cutDisHeight=56&relativeX=145&relativeY=67&trajectory=0%7C9%7C0%2C0%7C9%7C197%2C3%7C9%7C206%2C7%7C9%7C213%2C7%7C9%7C223%2C14%7C9%7C229%2C18%7C9%7C238%2C25%7C9%7C245%2C178%7C100%7C254%2C39%7C9%7C262%2C47%7C9%7C270%2C61%7C9%7C281%2C68%7C9%7C286%2C79%7C9%7C295%2C90%7C9%7C302%2C105%7C9%7C312%2C112%7C9%7C319%2C123%7C9%7C340%2C126%7C9%7C362%2C144%7C10%7C363%2C155%7C10%7C368%2C163%7C10%7C379%2C714%7C104%7C384%2C177%7C11%7C396%2C181%7C11%7C400%2C192%7C11%7C412%2C199%7C11%7C416%2C202%7C11%7C430%2C206%7C11%7C432%2C213%7C11%7C446%2C217%7C11%7C449%2C221%7C11%7C463%2C224%7C12%7C465%2C228%7C12%7C474%2C228%7C12%7C481%2C231%7C12%7C491%2C990%7C106%7C498%2C235%7C12%7C509%2C239%7C12%7C514%2C242%7C12%7C525%2C246%7C12%7C530%2C250%7C12%7C539%2C253%7C12%7C546%2C253%7C12%7C556%2C257%7C12%7C563%2C260%7C13%7C572%2C260%7C13%7C580%2C260%7C13%7C588%2C260%7C13%7C597%2C264%7C13%7C605%2C1106%7C108%7C613%2C264%7C13%7C631%2C264%7C13%7C638%2C268%7C13%7C645%2C268%7C13%7C654%2C271%7C13%7C662%2C275%7C13%7C670%2C278%7C13%7C683%2C282%7C14%7C686%2C293%7C14%7C694%2C300%7C14%7C702%2C315%7C14%7C713%2C329%7C14%7C719%2C340%7C14%7C730%2C1438%7C110%7C736%2C362%7C14%7C747%2C373%7C14%7C751%2C384%7C14%7C762%2C394%7C14%7C768%2C398%7C14%7C778%2C405%7C14%7C784%2C413%7C14%7C795%2C416%7C14%7C801%2C423%7C14%7C811%2C431%7C14%7C818%2C438%7C15%7C827%2C442%7C15%7C834%2C449%7C15%7C843%2C1858%7C112%7C850%2C460%7C15%7C858%2C463%7C15%7C867%2C467%7C15%7C875%2C471%7C15%7C883%2C474%7C15%7C893%2C474%7C15%7C900%2C478%7C15%7C906%2C478%7C15%7C916%2C481%7C15%7C923%2C481%7C15%7C933%2C481%7C15%7C939%2C485%7C15%7C948%2C485%7C15%7C967&gpuInfo=%7B%22glRenderer%22%3A%22WebKit%20WebGL%22%2C%22glVendor%22%3A%22WebKit%22%2C%22unmaskRenderer%22%3A%22ANGLE%20%28Intel%20Inc.%2C%20Intel%28R%29%20Iris%28TM%29%20Graphics%20550%2C%20OpenGL%204.1%29%22%2C%22unmaskVendor%22%3A%22Google%20Inc.%20%28Intel%20Inc.%29%22%7D&captchaExtraParam=%7B%22ua%22%3A%22Mozilla%2F5.0%20%28Macintosh%3B%20Intel%20Mac%20OS%20X%2010_15_7%29%20AppleWebKit%2F537.36%20%28KHTML%2C%20like%20Gecko%29%20Chrome%2F118.0.0.0%20Safari%2F537.36%22%2C%22userAgent%22%3A%22Mozilla%2F5.0%20%28Macintosh%3B%20Intel%20Mac%20OS%20X%2010_15_7%29%20AppleWebKit%2F537.36%20%28KHTML%2C%20like%20Gecko%29%20Chrome%2F118.0.0.0%20Safari%2F537.36%22%2C%22timeZone%22%3A%22UTC%2B8%22%2C%22language%22%3A%22zh-CN%22%2C%22cpuCoreCnt%22%3A%224%22%2C%22platform%22%3A%22MacIntel%22%2C%22riskBrowser%22%3A%22false%22%2C%22webDriver%22%3A%22false%22%2C%22exactRiskBrowser%22%3A%22false%22%2C%22webDriverDeep%22%3A%22false%22%2C%22exactRiskBrowser2%22%3A%22false%22%2C%22webDriverDeep2%22%3A%22false%22%2C%22battery%22%3A%221%22%2C%22plugins%22%3A%221a68ba429dd293b14e41a28b6535aa590%22%2C%22resolution%22%3A%221440x900%22%2C%22pixelDepth%22%3A%2230%22%2C%22colorDepth%22%3A%2230%22%2C%22canvasGraphFingerPrint%22%3A%221e6996f5577fd78898532e1dabec9e896%22%2C%22canvasGraph%22%3A%221e6996f5577fd78898532e1dabec9e896%22%2C%22canvasTextFingerPrintEn%22%3A%221568e95eac464c3f6e7ec3b726b29814e%22%2C%22canvasTextEn%22%3A%221568e95eac464c3f6e7ec3b726b29814e%22%2C%22canvasTextFingerPrintZh%22%3A%221167ce17792318903112955880b7f9cb2%22%2C%22canvasTextZh%22%3A%221167ce17792318903112955880b7f9cb2%22%2C%22webglGraphFingerPrint%22%3A%2214dc51ccd006f78c818999c374ac62402%22%2C%22webglGraph%22%3A%2214dc51ccd006f78c818999c374ac62402%22%2C%22webglGPUFingerPrint%22%3A%221703d96640facb71fe1ed5c742fd5f4df%22%2C%22webglGpu%22%3A%221703d96640facb71fe1ed5c742fd5f4df%22%2C%22cssFontFingerPrintEn%22%3A%221329bb845104882a7754a3bdf007ff6fc%22%2C%22fontListEn%22%3A%221329bb845104882a7754a3bdf007ff6fc%22%2C%22cssFontFingerPrintZh%22%3A%2211997d7fc5c7f90fad6abcbadabebb249%22%2C%22fontListZh%22%3A%2211997d7fc5c7f90fad6abcbadabebb249%22%2C%22voiceFingerPrint%22%3A%22129d646e8a0c62f5c09bead9ff4a0f29d%22%2C%22audioTriangle%22%3A%22129d646e8a0c62f5c09bead9ff4a0f29d%22%2C%22nativeFunc%22%3A%221973dcbb27a04c3a2ee240d9d2549e105%22%2C%22key1%22%3A%22web_9f7ddba78029fa27b8061f68de662259%22%2C%22key2%22%3A1698732951797%2C%22key3%22%3A%22Mozilla%2F5.0%20%28Macintosh%3B%20Intel%20Mac%20OS%20X%2010_15_7%29%20AppleWebKit%2F537.36%20%28KHTML%2C%20like%20Gecko%29%20Chrome%2F118.0.0.0%20Safari%2F537.36%22%2C%22key4%22%3A%2220030107%22%2C%22key5%22%3A%22zh-CN%22%2C%22key6%22%3A%22Gecko%22%2C%22key7%22%3A1440%2C%22key8%22%3A900%2C%22key9%22%3A1380%2C%22key10%22%3A877%2C%22key11%22%3A360%2C%22key12%22%3A360%2C%22key13%22%3A877%2C%22key14%22%3A1368%2C%22key15%22%3A%2200000111%22%2C%22key16%22%3A1%2C%22key17%22%3A1%2C%22key18%22%3A%5B%5D%2C%22key19%22%3A%7B%7D%2C%22key20%22%3A%5B%5D%2C%22key21%22%3A%7B%7D%2C%22key22%22%3A%5B%5D%2C%22key23%22%3A%7B%7D%2C%22key24%22%3A%5B%5D%2C%22key25%22%3A%7B%7D%2C%22key26%22%3A%7B%22key27%22%3A%5B%220%2C4%2C34525%2C226%2C128%22%2C%221%2C4%2C35644%2C226%2C128%22%2C%222%2C1%2C36288%2C226%2C128%2Cprepare1%22%2C%223%2C1%2C36319%2C226%2C128%2Cprepare1%22%2C%224%2C1%2C36335%2C226%2C128%2Cprepare1%22%2C%225%2C1%2C36343%2C226%2C129%2Cprepare1%22%2C%226%2C1%2C36360%2C226%2C129%2Cprepare1%22%2C%227%2C1%2C36368%2C226%2C129%2Cprepare1%22%2C%228%2C1%2C36376%2C226%2C130%2Cprepare1%22%2C%229%2C1%2C36386%2C226%2C132%2Cprepare1%22%2C%2210%2C1%2C36393%2C225%2C134%2Cprepare1%22%2C%2211%2C1%2C36400%2C225%2C139%2Cprepare1%22%2C%2212%2C1%2C37422%2C333%2C218%22%2C%2213%2C1%2C37430%2C310%2C215%22%2C%2214%2C1%2C37691%2C309%2C215%22%2C%2215%2C1%2C37699%2C305%2C215%22%2C%2216%2C1%2C37707%2C299%2C214%22%2C%2217%2C1%2C37717%2C289%2C210%22%2C%2218%2C1%2C37723%2C267%2C204%22%2C%2219%2C1%2C37732%2C210%2C185%22%2C%2220%2C1%2C37740%2C156%2C170%22%2C%2221%2C1%2C37749%2C88%2C152%22%2C%2222%2C1%2C55643337%2C285%2C255%22%2C%2223%2C1%2C55643338%2C285%2C255%22%2C%2224%2C1%2C55643341%2C284%2C255%22%2C%2225%2C1%2C55643350%2C283%2C255%22%2C%2226%2C1%2C55643357%2C282%2C255%22%2C%2227%2C1%2C55643365%2C282%2C255%22%2C%2228%2C1%2C55643373%2C282%2C255%22%2C%2229%2C1%2C55643391%2C281%2C255%22%2C%2230%2C1%2C55643398%2C281%2C255%22%2C%2231%2C1%2C55643416%2C281%2C255%22%2C%2232%2C3%2C69156185%2C43%2C292%22%2C%2233%2C1%2C69156198%2C43%2C292%2Cprepare2%22%2C%2234%2C1%2C69156396%2C43%2C292%2Cprepare2%22%2C%2235%2C1%2C69156405%2C44%2C292%2Cprepare2%22%2C%2236%2C1%2C69156411%2C45%2C292%2Cprepare2%22%2C%2237%2C1%2C69156421%2C45%2C292%2Cprepare2%22%2C%2238%2C1%2C69156428%2C47%2C292%2Cprepare2%22%2C%2239%2C1%2C69156436%2C48%2C292%2Cprepare2%22%2C%2240%2C1%2C69156444%2C50%2C292%2Cprepare2%22%2C%2241%2C1%2C69156453%2C52%2C292%2Cprepare2%22%2C%2242%2C1%2C69156461%2C54%2C292%2Cprepare2%22%2C%2243%2C4%2C69157385%2C177%2C298%22%2C%2244%2C2%2C69157605%2C177%2C298%2Cprepare3%22%5D%2C%22key28%22%3A%5B%5D%2C%22key29%22%3A%5B%5D%2C%22key30%22%3A%5B%5D%2C%22key31%22%3A%7B%22prepare1%22%3A%2211%2C1%2C36400%2C225%2C139%22%2C%22prepare2%22%3A%2242%2C1%2C69156461%2C54%2C292%22%2C%22prepare3%22%3A%2244%2C2%2C69157605%2C177%2C298%22%7D%2C%22key32%22%3A%7B%7D%2C%22key33%22%3A%7B%7D%2C%22key34%22%3A%7B%7D%7D%2C%22key35%22%3A%22fa4256579a6615b0bd06dd4437cfe427%22%2C%22key36%22%3A%22f22a94013fc94e90e2af2798023a1985%22%2C%22key37%22%3A2%2C%22key38%22%3A%22not%20support%22%2C%22key39%22%3A4%7D
|
|
//
|
|
|
|
|
|
// let info = "captchaSn=Cgp6dC5jYXB0Y2hhEr4CUeB7lamXZgEFxQMr7b2_KY_Tvf2J19dRltVZl64quSQ_JpZMPbxlnR7fRDJUzMy3qfoyEwpw3oq9sN1gDU8kXcj7xDKMqwnFNt2HLcarK1kmLSo-v9rwXFdzH6JBF3fU4DnkdSvdAY-fTYOLedLcDVAPnB-ihbBDgfSYaiScYYgbyRfkm7s1Rajpj1aYTmk2t01fC-NIy4RgMimha2hpwl195Q_FGMesVhtaCbwAXWBjWpIqWT5GQJHUSO4eFi6Ytw26gV7Enu16cdjdb9ezptjjYZL6kYrVCSkfaYkeVEo4GHQntZSdOrl1u6J4hnACKUtqg85QYGzO36L6AcnYVv5OAwSDJIS5vItPKmmKwRi-BvV8-XzEgVP1Nid4Y53ldTMFgaD6EUdpmP-oZiAog4cXfftwsw2SgUkHOWrIGhJxat9v18_vGhz0w0fGzFHTlSooBTAC&bgDisWidth=316&bgDisHeight=184&cutDisWidth=56&cutDisHeight=56&relativeX=145&relativeY=67&trajectory=0%7C9%7C0%2C0%7C9%7C197%2C3%7C9%7C206%2C7%7C9%7C213%2C7%7C9%7C223%2C14%7C9%7C229%2C18%7C9%7C238%2C25%7C9%7C245%2C178%7C100%7C254%2C39%7C9%7C262%2C47%7C9%7C270%2C61%7C9%7C281%2C68%7C9%7C286%2C79%7C9%7C295%2C90%7C9%7C302%2C105%7C9%7C312%2C112%7C9%7C319%2C123%7C9%7C340%2C126%7C9%7C362%2C144%7C10%7C363%2C155%7C10%7C368%2C163%7C10%7C379%2C714%7C104%7C384%2C177%7C11%7C396%2C181%7C11%7C400%2C192%7C11%7C412%2C199%7C11%7C416%2C202%7C11%7C430%2C206%7C11%7C432%2C213%7C11%7C446%2C217%7C11%7C449%2C221%7C11%7C463%2C224%7C12%7C465%2C228%7C12%7C474%2C228%7C12%7C481%2C231%7C12%7C491%2C990%7C106%7C498%2C235%7C12%7C509%2C239%7C12%7C514%2C242%7C12%7C525%2C246%7C12%7C530%2C250%7C12%7C539%2C253%7C12%7C546%2C253%7C12%7C556%2C257%7C12%7C563%2C260%7C13%7C572%2C260%7C13%7C580%2C260%7C13%7C588%2C260%7C13%7C597%2C264%7C13%7C605%2C1106%7C108%7C613%2C264%7C13%7C631%2C264%7C13%7C638%2C268%7C13%7C645%2C268%7C13%7C654%2C271%7C13%7C662%2C275%7C13%7C670%2C278%7C13%7C683%2C282%7C14%7C686%2C293%7C14%7C694%2C300%7C14%7C702%2C315%7C14%7C713%2C329%7C14%7C719%2C340%7C14%7C730%2C1438%7C110%7C736%2C362%7C14%7C747%2C373%7C14%7C751%2C384%7C14%7C762%2C394%7C14%7C768%2C398%7C14%7C778%2C405%7C14%7C784%2C413%7C14%7C795%2C416%7C14%7C801%2C423%7C14%7C811%2C431%7C14%7C818%2C438%7C15%7C827%2C442%7C15%7C834%2C449%7C15%7C843%2C1858%7C112%7C850%2C460%7C15%7C858%2C463%7C15%7C867%2C467%7C15%7C875%2C471%7C15%7C883%2C474%7C15%7C893%2C474%7C15%7C900%2C478%7C15%7C906%2C478%7C15%7C916%2C481%7C15%7C923%2C481%7C15%7C933%2C481%7C15%7C939%2C485%7C15%7C948%2C485%7C15%7C967&gpuInfo=%7B%22glRenderer%22%3A%22WebKit%20WebGL%22%2C%22glVendor%22%3A%22WebKit%22%2C%22unmaskRenderer%22%3A%22ANGLE%20%28Intel%20Inc.%2C%20Intel%28R%29%20Iris%28TM%29%20Graphics%20550%2C%20OpenGL%204.1%29%22%2C%22unmaskVendor%22%3A%22Google%20Inc.%20%28Intel%20Inc.%29%22%7D&captchaExtraParam=%7B%22ua%22%3A%22Mozilla%2F5.0%20%28Macintosh%3B%20Intel%20Mac%20OS%20X%2010_15_7%29%20AppleWebKit%2F537.36%20%28KHTML%2C%20like%20Gecko%29%20Chrome%2F118.0.0.0%20Safari%2F537.36%22%2C%22userAgent%22%3A%22Mozilla%2F5.0%20%28Macintosh%3B%20Intel%20Mac%20OS%20X%2010_15_7%29%20AppleWebKit%2F537.36%20%28KHTML%2C%20like%20Gecko%29%20Chrome%2F118.0.0.0%20Safari%2F537.36%22%2C%22timeZone%22%3A%22UTC%2B8%22%2C%22language%22%3A%22zh-CN%22%2C%22cpuCoreCnt%22%3A%224%22%2C%22platform%22%3A%22MacIntel%22%2C%22riskBrowser%22%3A%22false%22%2C%22webDriver%22%3A%22false%22%2C%22exactRiskBrowser%22%3A%22false%22%2C%22webDriverDeep%22%3A%22false%22%2C%22exactRiskBrowser2%22%3A%22false%22%2C%22webDriverDeep2%22%3A%22false%22%2C%22battery%22%3A%221%22%2C%22plugins%22%3A%221a68ba429dd293b14e41a28b6535aa590%22%2C%22resolution%22%3A%221440x900%22%2C%22pixelDepth%22%3A%2230%22%2C%22colorDepth%22%3A%2230%22%2C%22canvasGraphFingerPrint%22%3A%221e6996f5577fd78898532e1dabec9e896%22%2C%22canvasGraph%22%3A%221e6996f5577fd78898532e1dabec9e896%22%2C%22canvasTextFingerPrintEn%22%3A%221568e95eac464c3f6e7ec3b726b29814e%22%2C%22canvasTextEn%22%3A%221568e95eac464c3f6e7ec3b726b29814e%22%2C%22canvasTextFingerPrintZh%22%3A%221167ce17792318903112955880b7f9cb2%22%2C%22canvasTextZh%22%3A%221167ce17792318903112955880b7f9cb2%22%2C%22webglGraphFingerPrint%22%3A%2214dc51ccd006f78c818999c374ac62402%22%2C%22webglGraph%22%3A%2214dc51ccd006f78c818999c374ac62402%22%2C%22webglGPUFingerPrint%22%3A%221703d96640facb71fe1ed5c742fd5f4df%22%2C%22webglGpu%22%3A%221703d96640facb71fe1ed5c742fd5f4df%22%2C%22cssFontFingerPrintEn%22%3A%221329bb845104882a7754a3bdf007ff6fc%22%2C%22fontListEn%22%3A%221329bb845104882a7754a3bdf007ff6fc%22%2C%22cssFontFingerPrintZh%22%3A%2211997d7fc5c7f90fad6abcbadabebb249%22%2C%22fontListZh%22%3A%2211997d7fc5c7f90fad6abcbadabebb249%22%2C%22voiceFingerPrint%22%3A%22129d646e8a0c62f5c09bead9ff4a0f29d%22%2C%22audioTriangle%22%3A%22129d646e8a0c62f5c09bead9ff4a0f29d%22%2C%22nativeFunc%22%3A%221973dcbb27a04c3a2ee240d9d2549e105%22%2C%22key1%22%3A%22web_9f7ddba78029fa27b8061f68de662259%22%2C%22key2%22%3A1698732951797%2C%22key3%22%3A%22Mozilla%2F5.0%20%28Macintosh%3B%20Intel%20Mac%20OS%20X%2010_15_7%29%20AppleWebKit%2F537.36%20%28KHTML%2C%20like%20Gecko%29%20Chrome%2F118.0.0.0%20Safari%2F537.36%22%2C%22key4%22%3A%2220030107%22%2C%22key5%22%3A%22zh-CN%22%2C%22key6%22%3A%22Gecko%22%2C%22key7%22%3A1440%2C%22key8%22%3A900%2C%22key9%22%3A1380%2C%22key10%22%3A877%2C%22key11%22%3A360%2C%22key12%22%3A360%2C%22key13%22%3A877%2C%22key14%22%3A1368%2C%22key15%22%3A%2200000111%22%2C%22key16%22%3A1%2C%22key17%22%3A1%2C%22key18%22%3A%5B%5D%2C%22key19%22%3A%7B%7D%2C%22key20%22%3A%5B%5D%2C%22key21%22%3A%7B%7D%2C%22key22%22%3A%5B%5D%2C%22key23%22%3A%7B%7D%2C%22key24%22%3A%5B%5D%2C%22key25%22%3A%7B%7D%2C%22key26%22%3A%7B%22key27%22%3A%5B%220%2C4%2C34525%2C226%2C128%22%2C%221%2C4%2C35644%2C226%2C128%22%2C%222%2C1%2C36288%2C226%2C128%2Cprepare1%22%2C%223%2C1%2C36319%2C226%2C128%2Cprepare1%22%2C%224%2C1%2C36335%2C226%2C128%2Cprepare1%22%2C%225%2C1%2C36343%2C226%2C129%2Cprepare1%22%2C%226%2C1%2C36360%2C226%2C129%2Cprepare1%22%2C%227%2C1%2C36368%2C226%2C129%2Cprepare1%22%2C%228%2C1%2C36376%2C226%2C130%2Cprepare1%22%2C%229%2C1%2C36386%2C226%2C132%2Cprepare1%22%2C%2210%2C1%2C36393%2C225%2C134%2Cprepare1%22%2C%2211%2C1%2C36400%2C225%2C139%2Cprepare1%22%2C%2212%2C1%2C37422%2C333%2C218%22%2C%2213%2C1%2C37430%2C310%2C215%22%2C%2214%2C1%2C37691%2C309%2C215%22%2C%2215%2C1%2C37699%2C305%2C215%22%2C%2216%2C1%2C37707%2C299%2C214%22%2C%2217%2C1%2C37717%2C289%2C210%22%2C%2218%2C1%2C37723%2C267%2C204%22%2C%2219%2C1%2C37732%2C210%2C185%22%2C%2220%2C1%2C37740%2C156%2C170%22%2C%2221%2C1%2C37749%2C88%2C152%22%2C%2222%2C1%2C55643337%2C285%2C255%22%2C%2223%2C1%2C55643338%2C285%2C255%22%2C%2224%2C1%2C55643341%2C284%2C255%22%2C%2225%2C1%2C55643350%2C283%2C255%22%2C%2226%2C1%2C55643357%2C282%2C255%22%2C%2227%2C1%2C55643365%2C282%2C255%22%2C%2228%2C1%2C55643373%2C282%2C255%22%2C%2229%2C1%2C55643391%2C281%2C255%22%2C%2230%2C1%2C55643398%2C281%2C255%22%2C%2231%2C1%2C55643416%2C281%2C255%22%2C%2232%2C3%2C69156185%2C43%2C292%22%2C%2233%2C1%2C69156198%2C43%2C292%2Cprepare2%22%2C%2234%2C1%2C69156396%2C43%2C292%2Cprepare2%22%2C%2235%2C1%2C69156405%2C44%2C292%2Cprepare2%22%2C%2236%2C1%2C69156411%2C45%2C292%2Cprepare2%22%2C%2237%2C1%2C69156421%2C45%2C292%2Cprepare2%22%2C%2238%2C1%2C69156428%2C47%2C292%2Cprepare2%22%2C%2239%2C1%2C69156436%2C48%2C292%2Cprepare2%22%2C%2240%2C1%2C69156444%2C50%2C292%2Cprepare2%22%2C%2241%2C1%2C69156453%2C52%2C292%2Cprepare2%22%2C%2242%2C1%2C69156461%2C54%2C292%2Cprepare2%22%2C%2243%2C4%2C69157385%2C177%2C298%22%2C%2244%2C2%2C69157605%2C177%2C298%2Cprepare3%22%5D%2C%22key28%22%3A%5B%5D%2C%22key29%22%3A%5B%5D%2C%22key30%22%3A%5B%5D%2C%22key31%22%3A%7B%22prepare1%22%3A%2211%2C1%2C36400%2C225%2C139%22%2C%22prepare2%22%3A%2242%2C1%2C69156461%2C54%2C292%22%2C%22prepare3%22%3A%2244%2C2%2C69157605%2C177%2C298%22%7D%2C%22key32%22%3A%7B%7D%2C%22key33%22%3A%7B%7D%2C%22key34%22%3A%7B%7D%7D%2C%22key35%22%3A%22fa4256579a6615b0bd06dd4437cfe427%22%2C%22key36%22%3A%22f22a94013fc94e90e2af2798023a1985%22%2C%22key37%22%3A2%2C%22key38%22%3A%22not%20support%22%2C%22key39%22%3A4%7D"
|
|
// console.log(getJose(info))
|
|
|
|
module.exports = {
|
|
getJose
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|