Files
discord-decomp/_bundle/Module4508.js
T
2026-11-01 12:12:55 +02:00

1283 lines
44 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
// Metro module 4508 (f4509).
import { $forInKeys } from "../_hermes/prelude";
(function() {
"use strict";
let _this, c14278_1, c14278_2, hasOwnProperty, toString2, forOwn2, getClassOf2, qualify2, reduce2, trim2, c14278_11, parse2;
const format2 = function format(a0) {
const r9 = String(a0).replace(/^ +| +$/g, "");
const r12 = /^(?:webOS|i(?:OS|P))/.test(r9);
let r13 = r9;
if (!r12) {
const r15 = String(r9);
r13 = r15.charAt(0).toUpperCase() + r15.slice(1);
}
return r13;
};
forOwn2 = function forOwn(a0, a1) {
for (const key in a0) {
const call = hasOwnProperty.call;
if (hasOwnProperty.call(a0, key)) {
a1(a0[key], key, a0);
}
}
};
getClassOf2 = function getClassOf(a0) {
let r10;
if (a0 == null) {
const r6 = String(a0);
r10 = r6.charAt(0).toUpperCase() + r6.slice(1);
} else {
const call = toString2.call;
r10 = toString2.call(a0).slice(8, -1);
}
return r10;
};
qualify2 = function qualify(a0) {
return String(a0).replace(/([ -])(?!$)/g, "$1?");
};
reduce2 = function reduce(a0, a1) {
let r6, r17;
L13: {
const length = a0.length;
if (typeof length === "number" && length > -1 && length <= c14278_1) {
let r26 = 0;
const r4 = 0 < length;
let r27 = null;
r6 = null;
if (!r4) {
break L13;
}
while (true) {
r27 = a1(r27, a0[r26], r26, a0);
r26 = r26 + 1;
r6 = r27;
if (!(r26 < length)) {
break L13;
}
}
}
let r7 = null;
r6 = null;
for (const key in a0) {
r17 = r7;
r6 = r17;
const call = hasOwnProperty.call;
r7 = hasOwnProperty.call(a0, key) ? a1(r17, a0[key], key, a0) : r17;
}
r17 = r7;
r6 = r17;
}
return r6;
};
trim2 = function trim(a0) {
return String(a0).replace(/^ +| +$/g, "");
};
const r12 = {
function: true,
object: true
};
let r9 = r12[typeof globalThis.window] && window || this;
_this = r9;
const r14 = r12[typeof exports] && exports;
const r27 = r12[typeof module] && module && !module.nodeType && module;
const r29 = r14 && r27 && typeof global === "object" && global;
if (!(r29 ? r29.global !== r29 && r29.window !== r29 && r29.self !== r29 : !r29)) {
_this = r29;
r9 = r29;
}
L40: {
c14278_1 = Math.pow(2, 53) - 1;
c14278_2 = /\bOpera/;
const prototype = Object.prototype;
hasOwnProperty = prototype.hasOwnProperty;
toString2 = prototype.toString;
parse2 = function parse(a0) {
let r234, r358, r398, r399, r452, r453, r454, r455, r569, r704, r705, r707, r730, r731, r803, r825, r954, r956, manufacturer, manufacturer2, product3;
let c25174_1, product;
let c25174_0 = a0;
let r23 = _this;
const r5 = (a0 ? typeof a0 === "object" : a0) && getClassOf2(a0) != "String";
let description = a0;
if (r5) {
c25174_0 = null;
r23 = a0;
description = null;
}
const r20 = r23.navigator || {};
const r56 = r20.userAgent || "";
if (!description) {
c25174_0 = r56;
description = r56;
}
const r59 = r5 ? !!r20.likeChrome : /\bChrome\b/.test(description) && !/internal|\n/i.test(toString2.toString());
const r35 = r5 ? "Object" : "ScriptBridgingProxyObject";
const r65 = r5 ? "Object" : "Environment";
const r67 = r5 ? r23.java ? "JavaPackage" : getClassOf2(r23.java) : getClassOf2(r23.java);
const r25 = r5 ? "Object" : "RuntimeObject";
const r38 = /\bJava/.test(r67) && r23.java;
const r37 = r38 && getClassOf2(r23.environment) == r65;
let r28 = r38 ? "a" : "α";
const r32 = r38 ? "b" : "β";
const r44 = r23.document || {};
const r76 = r23.operamini || r23.opera;
const r80 = r5 && r76 ? r76["[[Class]]"] : getClassOf2(r76);
const r81 = c14278_2.test(r80);
let r83 = null;
let r34 = null;
if (r81) {
r83 = r76;
r34 = r80;
}
let r16 = description == r56;
const r84 = (r16 ? r83 : r16) && typeof r83.version === "function" && r83.version();
const getProduct = function getProduct(a0) {
return reduce2(a0, function(a0, a1) {
const r8 = a1.pattern || String(a1).replace(/([ -])(?!$)/g, "$1?");
let r10 = a0;
let r17 = !a0;
if (!a0) {
const r23 = RegExp("\\b" + r8 + " *\\d+[.\\w_]*", "i");
r17 = r23.exec(c25174_0) || RegExp("\\b" + r8 + " *\\w+-[\\w]*", "i").exec(c25174_0) || RegExp("\\b" + r8 + "(?:; *(?:[a-z]+[_-])?[a-z]+\\d+|[^ ();-]*)", "i").exec(c25174_0);
r10 = r17;
}
let r38 = r10;
if (r17) {
const r54 = String(a1.label ? RegExp(r8, "i").test(a1.label) ? r10 : a1.label : r10).split("/");
if (r54[1] && !/[\d.]+/.test(r54[0])) {
r54[0] = r54[0] + (" " + r54[1]);
}
const r65 = a1.label || a1;
const r95 = String(r54[0].replace(RegExp(r8, "i"), r65).replace(RegExp("; *(?:" + r65 + "[_-])?", "i"), " ").replace(RegExp("(" + r65 + ")[-_.]?(\\w)", "i"), "$1 $2")).replace(/^ +| +$/g, "");
const r98 = /^(?:webOS|i(?:OS|P))/.test(r95);
let r99 = r95;
if (!r98) {
const r101 = String(r95);
r99 = r101.charAt(0).toUpperCase() + r101.slice(1);
}
r38 = r99;
}
return r38;
});
};
let r87 = r84;
let r31 = "Presto";
const r26 = (function getLayout(a0) {
return reduce2(a0, function(a0, a1) {
return a0 ? a0 : RegExp("\\b" + (a1.pattern || String(a1).replace(/([ -])(?!$)/g, "$1?")) + "\\b", "i").exec(c25174_0) && (a1.label || a1);
});
})([{
label: "EdgeHTML",
pattern: "Edge"
}, "Trident", {
label: "WebKit",
pattern: "AppleWebKit"
}, "iCab", "Presto", "NetFront", "Tasman", "KHTML", "Gecko"]);
let r121 = (function getName(a0) {
return reduce2(a0, function(a0, a1) {
return a0 ? a0 : RegExp("\\b" + (a1.pattern || String(a1).replace(/([ -])(?!$)/g, "$1?")) + "\\b", "i").exec(c25174_0) && (a1.label || a1);
});
})(["Adobe AIR", "Arora", "Avant Browser", "Breach", "Camino", "Electron", "Epiphany", "Fennec", "Flock", "Galeon", "GreenBrowser", "iCab", "Iceweasel", "K-Meleon", "Konqueror", "Lunascape", "Maxthon", {
label: "Microsoft Edge",
pattern: "Edge"
}, "Midori", "Nook Browser", "PaleMoon", "PhantomJS", "Raven", "Rekonq", "RockMelt", {
label: "Samsung Internet",
pattern: "SamsungBrowser"
}, "SeaMonkey", {
label: "Silk",
pattern: "(?:Cloud9|Silk-Accelerated)"
}, "Sleipnir", "SlimBrowser", {
label: "SRWare Iron",
pattern: "Iron"
}, "Sunrise", "Swiftfox", "Waterfox", "WebPositive", "Opera Mini", {
label: "Opera Mini",
pattern: "OPiOS"
}, "Opera", {
label: "Opera",
pattern: "OPR"
}, "Chrome", {
label: "Chrome Mobile",
pattern: "(?:CriOS|CrMo)"
}, {
label: "Firefox",
pattern: "(?:Firefox|Minefield)"
}, {
label: "Firefox for iOS",
pattern: "FxiOS"
}, {
label: "IE",
pattern: "IEMobile"
}, {
label: "IE",
pattern: "MSIE"
}, "Safari"]);
let r152 = getProduct([{
label: "BlackBerry",
pattern: "BB10"
}, "BlackBerry", {
label: "Galaxy S",
pattern: "GT-I9000"
}, {
label: "Galaxy S2",
pattern: "GT-I9100"
}, {
label: "Galaxy S3",
pattern: "GT-I9300"
}, {
label: "Galaxy S4",
pattern: "GT-I9500"
}, {
label: "Galaxy S5",
pattern: "SM-G900"
}, {
label: "Galaxy S6",
pattern: "SM-G920"
}, {
label: "Galaxy S6 Edge",
pattern: "SM-G925"
}, {
label: "Galaxy S7",
pattern: "SM-G930"
}, {
label: "Galaxy S7 Edge",
pattern: "SM-G935"
}, "Google TV", "Lumia", "iPad", "iPod", "iPhone", "Kindle", {
label: "Kindle Fire",
pattern: "(?:Cloud9|Silk-Accelerated)"
}, "Nexus", "Nook", "PlayBook", "PlayStation Vita", "PlayStation", "TouchPad", "Transformer", {
label: "Wii U",
pattern: "WiiU"
}, "Wii", "Xbox One", {
label: "Xbox 360",
pattern: "Xbox"
}, "Xoom"]);
product = r152;
const r36 = (function getManufacturer(a0) {
return reduce2(a0, function(a0, a1, a2) {
let r1 = a0;
if (!a0) {
r1 = (a1[product] || a1[/^[a-z]+(?: +[a-z]+\b)*/i.exec(product)] || RegExp("\\b" + String(a2).replace(/([ -])(?!$)/g, "$1?") + "(?:\\b|\\w*\\d)", "i").exec(c25174_0)) && a2;
}
return r1;
});
})({
Apple: {
iPad: 1,
iPhone: 1,
iPod: 1
},
Archos: {},
Amazon: {
Kindle: 1,
"Kindle Fire": 1
},
Asus: {
Transformer: 1
},
"Barnes & Noble": {
Nook: 1
},
BlackBerry: {
PlayBook: 1
},
Google: {
"Google TV": 1,
Nexus: 1
},
HP: {
TouchPad: 1
},
HTC: {},
LG: {},
Microsoft: {
Xbox: 1,
"Xbox One": 1
},
Motorola: {
Xoom: 1
},
Nintendo: {
"Wii U": 1,
Wii: 1
},
Nokia: {
Lumia: 1
},
Samsung: {
"Galaxy S": 1,
"Galaxy S2": 1,
"Galaxy S3": 1,
"Galaxy S4": 1
},
Sony: {
PlayStation: 1,
"PlayStation Vita": 1
}
});
let r24 = "Kubuntu";
const r39 = (function getOS(a0) {
return reduce2(a0, function(a0, a1) {
const r10 = a1.pattern || String(a1).replace(/([ -])(?!$)/g, "$1?");
let r13 = a0;
let r14 = !a0;
if (!a0) {
r14 = RegExp("\\b" + r10 + "(?:/[\\d.]+|[ \\w.]*)", "i").exec(c25174_0);
r13 = r14;
}
let r24 = r13;
if (r14) {
const r25 = a1.label || a1;
let r26 = (r10 ? r25 : r10) && /^Win/i.test(r13) && !/^Windows Phone /i.test(r13);
const r32 = {
"10.0": "10",
"6.4": "10 Technical Preview",
"6.3": "8.1",
"6.2": "8",
"6.1": "Server 2008 R2 / 7",
"6.0": "Server 2008 / Vista",
"5.2": "Server 2003 / XP 64-bit",
"5.1": "XP",
"5.01": "2000 SP1",
"5.0": "2000",
"4.0": "NT",
"4.90": "ME"
};
let r33 = r32;
if (r26) {
r26 = r32[/[\d.]+$/.exec(r13)];
r33 = r26;
}
if (r26) {
r13 = "Windows " + r33;
}
const r41 = String(r13);
const r101 = String((r10 && r25 ? r41.replace(RegExp(r10, "i"), r25) : r41).replace(/ ce$/i, " CE").replace(/\bhpw/i, "web").replace(/\bMacintosh\b/, "Mac OS").replace(/_PowerPC\b/i, " OS").replace(/\b(OS X) [^ \d]+/i, "$1").replace(/\bMac (OS X)\b/, "$1").replace(/\/(\d)/, " $1").replace(/_/g, ".").replace(/(?: BePC|[ .]*fc[ \d.]+)$/i, "").replace(/\bx86\.64\b/gi, "x86_64").replace(/\b(Windows Phone) OS\b/, "$1").replace(/\b(Chrome OS \w+) [\d.]+\b/, "$1").split(" on ")[0]).replace(/^ +| +$/g, "");
const r104 = /^(?:webOS|i(?:OS|P))/.test(r101);
let r105 = r101;
if (!r104) {
const r107 = String(r101);
r105 = r107.charAt(0).toUpperCase() + r107.slice(1);
}
r24 = r105;
}
return r24;
});
})(["Windows Phone", "Android", "CentOS", {
label: "Chrome OS",
pattern: "CrOS"
}, "Debian", "Fedora", "FreeBSD", "Gentoo", "Haiku", "Kubuntu", "Linux Mint", "OpenBSD", "Red Hat", "SuSE", "Ubuntu", "Xubuntu", "Cygwin", "Symbian OS", "hpwOS", "webOS ", "webOS", "Tablet OS", "Tizen", "Linux", "Mac OS X", "Macintosh", "Mac", "Windows 98;", "Windows "]);
const r197 = r26 && [r26];
if (r36 ? !r152 : r36) {
product = getProduct([r36]);
r152 = product;
}
const r45 = /\bGoogle TV\b/.exec(r152);
let r204 = r152;
if (r45) {
product = r45[0];
r204 = product;
}
const r208 = /\bSimulator\b/i.test(description);
let r209 = r204;
if (r208) {
product = (r204 ? r204 + " " : "") + "Simulator";
r209 = product;
}
const r215 = r121 == "Opera Mini" && /\bOPiOS\b/.test(description);
const r218 = [];
if (r215) {
r218.push("running in Turbo/Uncompressed mode");
}
L132: {
if (r121 == "IE" && /\blike iPhone OS\b/.test(description)) {
const r343 = parse2(description.replace(/like iPhone OS/, ""));
manufacturer = r343.manufacturer;
const product2 = r343.product;
product = product2;
r24 = r39;
r234 = product2;
} else {
const r229 = /^iP/.test(r209);
const r41 = r121;
if (r229) {
if (!r41) {
r121 = "Safari";
}
const r329 = / OS ([\d_]+)/i.exec(description);
r24 = "iOS" + (r329 ? " " + r329[1].replace(/_/g, ".") : "");
manufacturer = r36;
r234 = r209;
} else {
if (r41 == "Konqueror") {
const r42 = /buntu/i.test(r39);
manufacturer = r36;
r234 = r209;
if (!r42) {
break L132;
}
}
L123: {
if (r36 && r36 != "Google") {
if (/Chrome/.test(r121) && !/\bMobile Safari\b/i.test(description)) {
break L123;
}
if (/\bVita\b/.test(r209)) {
break L123;
}
}
if (!(/\bAndroid\b/.test(r39) && (/^Chrome/.test(r121) && /\bVersion\//i.test(description)))) {
if (r121 == "Silk") {
const r312 = /\bMobi/i.test(description);
let r313 = r39;
if (!r312) {
r218.unshift("desktop mode");
r313 = "Android";
}
const r319 = /Accelerated *= *true/i.test(description);
r24 = r313;
manufacturer = r36;
r234 = r209;
if (!r319) {
break L132;
}
r218.unshift("accelerated");
r24 = r313;
manufacturer = r36;
r234 = r209;
break L132;
}
const r256 = r121;
let r51 = r45;
if (r256 == "PaleMoon") {
const r259 = /\bFirefox\/([\d.]+)\b/.exec(description);
r51 = r259;
if (r51) {
r218.push("identifying as Firefox " + r259[1]);
r24 = r39;
manufacturer = r36;
r234 = r209;
break L132;
}
}
if (r121 == "Firefox") {
const r264 = /\b(Mobile|Tablet|TV)\b/i.exec(description);
r51 = r264;
if (r51) {
const r303 = r39 ? r39 : "Firefox OS";
r24 = r303;
manufacturer = r36;
r234 = r209;
if (r209) {
break L132;
}
product = r264[1];
r24 = r303;
manufacturer = r36;
r234 = product;
break L132;
}
}
if (r121) {
const r268 = /\bMinefield\b/i.test(description);
let r269 = r268 ? !r268 : /\b(?:Firefox|Safari)\b/.exec(r121);
r51 = r269;
if (!r51) {
let r274 = r121 == "Electron";
if (r274) {
r274 = (/\bChrome\/([\d.]+)\b/.exec(description) || 0)[1];
r269 = r274;
}
r24 = r39;
manufacturer = r36;
r234 = r209;
if (!r274) {
break L132;
}
r218.push("Chromium " + r269);
r24 = r39;
manufacturer = r36;
r234 = r209;
break L132;
}
}
if (r121 && !r209 && /[\/,]|^[^(]+?\)/.test(description.slice(description.indexOf(r51 + "/") + 8))) {
r121 = null;
}
let r291 = (r209 ? r209 : r36) || r39;
const r292 = r291 ? (r209 ? r209 : r36) || /\b(?:Android|Symbian OS|Tablet OS|webOS)\b/.test(r39) : r291;
r24 = r39;
manufacturer = r36;
r234 = r209;
if (!r292) {
break L132;
}
const r296 = /[a-z]+(?: Hat)?/i;
if (/\bAndroid\b/.test(r39)) {
r291 = r39;
}
r121 = r296.exec(r291) + " Browser";
r24 = r39;
manufacturer = r36;
r234 = r209;
break L132;
}
}
r121 = "Android Browser";
r24 = /\bAndroid\b/.test(r39) ? r39 : "Android";
manufacturer = r36;
r234 = r209;
}
}
}
if (!r87) {
r87 = (function getVersion(a0) {
return reduce2(a0, function(a0, a1) {
return (a0 ? a0 : (RegExp(a1 + "(?:-[\\d.]+/|(?: for [\\w-]+)?[ /-])([\\d.]+[^ ();/_-]*)", "i").exec(c25174_0) || 0)[1]) || null;
});
})(["(?:Cloud9|CriOS|CrMo|Edge|FxiOS|IEMobile|Iron|Opera ?Mini|OPiOS|OPR|Raven|SamsungBrowser|Silk(?!/[\\d.]+$))", "Version", qualify2(r121), "(?:Firefox|Minefield|NetFront)"]);
}
L141: {
if (r197 == "iCab") {
const r357 = parseFloat(r87) > 3;
r358 = "WebKit";
if (r357) {
break L141;
}
}
let r362 = /\bOpera\b/.test(r121);
if (r362) {
if (/\bOPR\b/.test(description)) {
r31 = "Blink";
}
r362 = r31;
}
r358 = r362;
}
if (!r358) {
r358 = /\b(?:Midori|Nook|Safari)\b/i.test(description) && !/^(?:Trident|EdgeHTML)$/.test(r197) && "WebKit";
}
if (!r358) {
r358 = (r197 ? !r197 : /\bMSIE\b/i.test(description)) && (r24 == "Mac OS" ? "Tasman" : "Trident");
}
if (!r358) {
r358 = r197 == "WebKit" && /\bPlayStation\b(?! Vita\b)/i.test(r121) && "NetFront";
}
const r383 = r358 ? [r358] : r197;
L185: {
if (r121 == "IE") {
const r389 = (/; *(?:XBLWP|ZuneWP)(\d+)/i.exec(description) || 0)[1];
r358 = r389;
if (r389) {
r121 = r121 + " Mobile";
r398 = "Windows Phone " + (/\+$/.test(r389) ? r389 : r389 + ".x");
r218.unshift("desktop mode");
r399 = r389;
break L185;
}
}
if (/\bWPDesktop\b/i.test(description)) {
r121 = "IE Mobile";
r218.unshift("desktop mode");
const r414 = r87;
r398 = "Windows Phone 8.x";
r399 = r358;
if (!r414) {
r87 = (/\brv:([\d.]+)/.exec(description) || 0)[1];
r398 = "Windows Phone 8.x";
r399 = r358;
}
} else {
let r394 = r121 != "IE" && r383 == "Trident";
let r395 = r358;
if (r394) {
r394 = /\brv:([\d.]+)/.exec(description);
r395 = r394;
}
r398 = r24;
r399 = r395;
if (r394) {
if (r121) {
r218.push("identifying as " + r121 + (r87 ? " " + r87 : ""));
}
r121 = "IE";
r87 = r395[1];
r398 = r24;
r399 = r395;
}
}
}
let r430 = r398;
let r431 = r383;
let r432 = description;
let r433 = r399;
if (r16) {
L240: {
if ((function isHostType(a0, a1) {
const r4 = a0 != null ? typeof a0.global : "number";
let r8 = /^(?:boolean|number|string|undefined)$/.test(r4);
if (!r8) {
r8 = r4 === "object" && !a0.global;
}
return !r8;
})(r23, "global")) {
let r508 = r398;
let r509 = description;
if (r38) {
const System = r38.lang.System;
const property = System.getProperty("os.arch");
r508 = r398 ? r398 : System.getProperty("os.name") + " " + System.getProperty("os.version");
r509 = property;
r399 = System;
}
if (r37) {
try {
r87 = r23.require("ringo/engine").version.join(".");
r121 = "RingoJS";
r569 = r508;
} catch ($e) {
const system = r23.system;
const r572 = system ? system.global.system == r23.system : system;
r569 = r508;
r399 = system;
if (r572) {
r121 = "Narwhal";
r569 = r508 ? r508 : system[0].os || null;
r399 = system;
}
}
const r579 = r121;
r452 = r569;
r453 = r383;
r454 = r509;
r455 = r399;
if (!r579) {
r121 = "Rhino";
r452 = r569;
r453 = r383;
r454 = r509;
r455 = r399;
}
} else {
const process = r23.process;
let r525 = typeof process === "object" ? !r23.process.browser : typeof process === "object";
let r528 = r399;
if (r525) {
r525 = r23.process;
r528 = r525;
}
r452 = r508;
r453 = r383;
r454 = r509;
r455 = r528;
if (r525) {
if (typeof r528.versions === "object") {
if (typeof r528.versions.electron === "string") {
r218.push("Node " + r528.versions.node);
r121 = "Electron";
r87 = r528.versions.electron;
} else if (typeof r528.versions.nw === "string") {
r218.push("Chromium " + r87, "Node " + r528.versions.node);
r121 = "NW.js";
r87 = r528.versions.nw;
}
}
const r551 = r121;
let r552 = r508;
let r553 = r509;
if (!r551) {
r121 = "Node.js";
const { arch, platform: platform2 } = r528;
const r559 = /[\d.]+/.exec(r528.version);
r87 = r559 ? r559[0] : null;
r552 = platform2;
r553 = arch;
}
r452 = r552;
r454 = r553;
r453 = r383;
r455 = r528;
}
}
} else {
const runtime = r23.runtime;
if (getClassOf2(runtime) == r35) {
r121 = "Adobe AIR";
r452 = runtime.flash.system.Capabilities.os;
r453 = r383;
r454 = description;
r455 = runtime;
} else {
const phantom = r23.phantom;
if (getClassOf2(phantom) == r25) {
r121 = "PhantomJS";
const r496 = phantom.version || null;
r87 = r496 ? r496.major + "." + r496.minor + "." + r496.patch : r496;
r452 = r398;
r453 = r383;
r454 = description;
r455 = r496;
} else {
const documentMode = r44.documentMode;
let r443 = phantom;
if (typeof documentMode === "number") {
const r446 = /\bTrident\/(\d+)/i.exec(description);
r443 = r446;
if (r443) {
const r467 = [r87, r44.documentMode];
const r472 = +r446[1] + 4;
if (r472 != r467[1]) {
r218.push("IE " + r467[1] + " mode");
if (r383) {
r383[1] = "";
}
r467[1] = r472;
}
r87 = r121 == "IE" ? String(r467[1].toFixed(1)) : r467[0];
r452 = r398;
r453 = r383;
r454 = description;
r455 = r472;
break L240;
}
}
const documentMode2 = r44.documentMode;
const r448 = typeof documentMode2 === "number" ? /^(?:Chrome|Firefox)\b/.test(r121) : typeof documentMode2 === "number";
r452 = r398;
r453 = r383;
r454 = description;
r455 = r443;
if (r448) {
r218.push("masking as " + r121 + " " + r87);
r121 = "IE";
r87 = "11.0";
r453 = ["Trident"];
r452 = "Windows";
r454 = description;
r455 = r443;
}
}
}
}
}
r430 = r452 && format2(r452);
r431 = r453;
r432 = r454;
r433 = r455;
}
let r582 = r87;
if (r582) {
r582 = /(?:[ab]|dp|pre|[ab]\d+pre)(?:\d+\+?)?$/i.exec(r87) || /(?:alpha|beta)(?: ?\d)?/i.exec(description + ";" + (r16 ? r20.appMinorVersion : r16)) || /\bMinefield\b/i.test(description) && "a";
r433 = r582;
}
let r596 = null;
if (r582) {
const r600 = /b/i.test(r433) ? "beta" : "alpha";
const r609 = r87.replace(RegExp(r433 + "\\+?$"), "");
if (r600 === "beta") {
r28 = r32;
}
r87 = r609 + r28 + (/\d+\+?/.exec(r433) || "");
r596 = r600;
}
L351: {
L350: {
if (r121 != "Fennec") {
if (r121 == "Firefox" && /\b(?:Android|Firefox OS)\b/.test(r430)) {
break L350;
}
if (r121 == "Maxthon" && r87) {
r87 = r87.replace(/\.[\d.]+/, ".x");
r704 = r430;
r705 = manufacturer;
product3 = r234;
r707 = r431;
break L351;
}
if (/\bXbox\b/i.test(r234)) {
const r762 = r234 == "Xbox 360" ? null : r430;
const r763 = r234 == "Xbox 360" && /\bIEMobile\b/.test(description);
r704 = r762;
r705 = manufacturer;
product3 = r234;
r707 = r431;
if (!r763) {
break L351;
}
r218.unshift("mobile mode");
r704 = r762;
r705 = manufacturer;
product3 = r234;
r707 = r431;
break L351;
}
L273: {
if (!/^(?:Chrome|IE|Opera)$/.test(r121)) {
if (!r121) {
break L273;
}
if (r234) {
break L273;
}
if (/Browser|Mobi/.test(r121)) {
break L273;
}
}
if (!(r430 != "Windows CE" && !/Mobi/i.test(description))) {
r121 = r121 + " Mobile";
r704 = r430;
r705 = manufacturer;
product3 = r234;
r707 = r431;
break L351;
}
}
if (r121 == "IE" && r16) {
try {
if (r23.external === null) {
r218.unshift("platform preview");
}
r704 = r430;
r705 = manufacturer;
product3 = r234;
r707 = r431;
break L351;
} catch ($e) {
r218.unshift("embedded");
r704 = r430;
r705 = manufacturer;
product3 = r234;
r707 = r431;
break L351;
}
}
if (!(!/\bBlackBerry\b/.test(r234) && !/\bBB10\b/.test(description))) {
const r660 = (RegExp(r234.replace(/ +/g, " *") + "/([.\\d]+)", "i").exec(description) || 0)[1] || r87;
r433 = r660;
if (r433) {
const r740 = [r660, /BB10/.test(description)];
const r744 = r740[1];
let r745 = "Device Software";
let r746 = manufacturer;
let r747 = r234;
if (r744) {
product = null;
r746 = "BlackBerry";
r747 = null;
r745 = "BlackBerry";
}
r704 = r745 + " " + r740[0];
r87 = null;
r705 = r746;
product3 = r747;
r707 = r431;
break L351;
}
}
let r663 = this != forOwn2 && r234 != "Wii" && ((r16 ? r83 : r16) || /Opera/.test(r121) && /\b(?:MSIE|Firefox)\b/i.test(description) || r121 == "Firefox" && /\bOS X (?:\d+\.){2,}/.test(r430) || r121 == "IE" && ((r430 ? !/^Win/.test(r430) : r430) && r87 > 5.5 || /\bWindows XP\b/.test(r430) && r87 > 8 || r87 == 8 && !/\bTrident\b/.test(description)));
if (r663) {
const call = parse2.call;
const r702 = parse2.call(forOwn2, description.replace(c14278_2, "") + ";");
r663 = !c14278_2.test(r702);
r433 = r702;
}
if (r663) {
r663 = r433.name;
}
r704 = r430;
r705 = manufacturer;
product3 = r234;
r707 = r431;
if (!r663) {
break L351;
}
const r710 = "ing as " + r433.name;
const version = r433.version;
const r714 = r710 + (version ? " " + version : "");
if (c14278_2.test(r121)) {
const r736 = /\bIE\b/.test(r714) && r430 == "Mac OS" ? null : r430;
r731 = "identify" + r714;
r730 = r736;
} else {
const r718 = r34 ? format2(r34.replace(/([a-z])([A-Z])/g, "$1 $2")) : "Opera";
const r725 = "mask" + r714;
r121 = r718;
const r729 = /\bIE\b/.test(r725) ? null : r430;
r730 = r729;
r731 = r725;
if (!r16) {
r87 = null;
r730 = r729;
r731 = r725;
}
}
r707 = ["Presto"];
r218.push(r731);
r704 = r730;
r705 = manufacturer;
product3 = r234;
break L351;
}
}
r121 = "Firefox Mobile";
r704 = r430;
r705 = manufacturer;
product3 = r234;
r707 = r431;
}
const r776 = (/\bAppleWebKit\/([\d.]+\+?)/i.exec(description) || 0)[1];
let r777 = r707;
let prerelease = r596;
let r779 = r776;
if (r779) {
const r787 = [parseFloat(r776.replace(/\.(\d)$/, ".0$1")), r776];
if (r121 == "Safari" && r787[1].slice(-1) == "+") {
r121 = "WebKit Nightly";
r87 = r787[1].slice(0, -1);
r803 = "alpha";
} else {
let r796 = r87 != r787[1];
if (r796) {
const r797 = r87;
const r801 = (/\bSafari\/([\d.]+\+?)/i.exec(description) || 0)[1];
r787[2] = r801;
r796 = r797 != r801;
}
r803 = r596;
if (!r796) {
r87 = null;
r803 = r596;
}
}
r787[1] = (/\bChrome\/([\d.]+)/i.exec(description) || 0)[1];
if (r787[0] == 537.36 && r787[2] == 537.36 && parseFloat(r787[1]) >= 28 && r707 == "WebKit") {
r707 = ["Blink"];
}
L452: {
L376: {
if (r16) {
if (!r59 && !r787[1]) {
break L376;
}
if (r707) {
r707[1] = "like Chrome";
}
let r851 = r787[1];
if (!r851) {
const r852 = r787[0];
const r854 = r852 < 530;
let r855 = 1;
if (!r854) {
const r857 = r852 < 532;
let r858 = 2;
if (!r857) {
const r860 = r852 < 532.05;
let r861 = 3;
if (!r860) {
const r863 = r852 < 533;
let r864 = 4;
if (!r863) {
const r866 = r852 < 534.03;
let r867 = 5;
if (!r866) {
const r869 = r852 < 534.07;
let r870 = 6;
if (!r869) {
const r872 = r852 < 534.1;
let r873 = 7;
if (!r872) {
const r875 = r852 < 534.13;
let r876 = 8;
if (!r875) {
const r878 = r852 < 534.16;
let r879 = 9;
if (!r878) {
const r881 = r852 < 534.24;
let r882 = 10;
if (!r881) {
const r884 = r852 < 534.3;
let r885 = 11;
if (!r884) {
const r887 = r852 < 535.01;
let r888 = 12;
if (!r887) {
const r890 = r852 < 535.02;
let r891 = "13+";
if (!r890) {
const r893 = r852 < 535.07;
let r894 = 15;
if (!r893) {
const r896 = r852 < 535.11;
let r897 = 16;
if (!r896) {
const r899 = r852 < 535.19;
let r900 = 17;
if (!r899) {
const r902 = r852 < 536.05;
let r903 = 18;
if (!r902) {
const r905 = r852 < 536.1;
const r906 = r905 ? 19 : r852 < 537.01 ? 20 : r852 < 537.11 ? "21+" : r852 < 537.13 ? 23 : r852 < 537.18 ? 24 : r852 < 537.24 ? 25 : r852 < 537.36 ? 26 : r707 != "Blink" ? "27" : "28";
r903 = r906;
}
r900 = r903;
}
r897 = r900;
}
r894 = r897;
}
r891 = r894;
}
r888 = r891;
}
r885 = r888;
}
r882 = r885;
}
r879 = r882;
}
r876 = r879;
}
r873 = r876;
}
r870 = r873;
}
r867 = r870;
}
r864 = r867;
}
r861 = r864;
}
r858 = r861;
}
r855 = r858;
}
r851 = r855;
}
r825 = r851;
break L452;
}
}
if (r707) {
r707[1] = "like Safari";
}
const r822 = r787[0];
const r824 = r822 < 400;
r825 = 1;
if (!r824) {
const r827 = r822 < 500;
const r828 = r827 ? 2 : r822 < 526 ? 3 : r822 < 533 ? 4 : r822 < 534 ? "4+" : r822 < 535 ? 5 : r822 < 537 ? 6 : r822 < 538 ? 7 : r822 < 601 ? 8 : "8";
r825 = r828;
}
}
let r926 = r825;
if (r707) {
const r927 = r707[1];
const r933 = r825 + (typeof r825 !== "number" ? /[.+]/.test(r825) ? "" : "+" : ".x");
r707[1] = r927 + (" " + r933);
r926 = r933;
}
let r938 = r121 == "Safari";
if (r938) {
const r939 = r87;
r938 = r939 ? parseInt(r87) > 45 : !r939;
}
r777 = r707;
prerelease = r803;
r779 = r926;
if (r938) {
r87 = r926;
r777 = r707;
prerelease = r803;
r779 = r926;
}
}
L478: {
if (r121 == "Opera") {
const r948 = /\bzbov|zvav$/.exec(r704);
r779 = r948;
if (r948) {
const r967 = r121 + " ";
r218.unshift("desktop mode");
if (r948 == "zvav") {
r121 = r967 + "Mini";
r87 = null;
} else {
r121 = r967 + "Mobile";
}
r954 = r704.replace(RegExp(" *" + r948 + "$"), "");
manufacturer2 = r705;
r956 = r948;
break L478;
}
}
const r950 = r121 == "Safari" && /\bChrome\b/.exec(r777 ? r777[1] : r777);
r954 = r704;
manufacturer2 = r705;
r956 = r779;
if (r950) {
r218.unshift("desktop mode");
r121 = "Chrome Mobile";
r87 = null;
const r962 = /\bOS X\b/.test(r704);
let r963 = null;
let r964 = r705;
if (r962) {
r963 = "iOS 4.3+";
r964 = "Apple";
}
r954 = r963;
manufacturer2 = r964;
r956 = r779;
}
}
let r985 = r87;
if (r985) {
const r986 = r87;
const r990 = /[\d.]+$/.exec(r954);
r985 = r986.indexOf(r990) == 0;
r956 = r990;
}
if (r985) {
r985 = description.indexOf("/" + r956 + "-") > -1;
}
const r999 = r985 ? trim2(r954.replace(r956, "")) : r954;
let r1004 = (r777 ? !/\b(?:Avant|Nook)\b/.test(r121) : r777) && (/Browser|Lunascape|Maxthon/.test(r121) || r121 != "Safari" && /^iOS/.test(r999) && /\bSafari\b/.test(r777[1]) || /^(?:Adobe|Arora|Breach|Midori|Opera|Phantom|Rekonq|Rock|Samsung Internet|Sleipnir|Web)/.test(r121) && r777[1]);
if (r1004) {
r1004 = r777[r777.length - 1];
r956 = r1004;
}
if (r1004) {
r218.push(r956);
}
const r1030 = r218.length ? ["(" + r218.join("; ") + ")"] : r218;
if (manufacturer2 && product3 && product3.indexOf(manufacturer2) < 0) {
r1030.push("on " + manufacturer2);
}
if (product3) {
r1030.push.call(r1030, (/^on /.test(r1030[r1030.length - 1]) ? "" : "on ") + product3);
}
let r1057 = r999;
if (r1057) {
const r1060 = / ([\d.+]+)$/.exec(r999);
const r1061 = r1060 && r999.charAt(r999.length - r1060[0].length - 1) == "/";
c25174_1 = r1061;
r1057 = {
architecture: 32,
family: r1060 ? r1061 ? r999 : r999.replace(r1060[0], "") : r999,
version: r1060 ? r1060[1] : null,
toString: function toString() {
const version = this.version;
const family = this.family;
let r3 = "";
const r10 = family + (version ? c25174_1 ? "" : " " + version : "");
if (this.architecture == 64) {
r3 = " 64-bit";
}
return r10 + r3;
}
};
}
L547: {
const r1080 = /\b(?:AMD|IA|Win|WOW|x86_|x)64\b/i.exec(r432);
if (r1080 && !/\bi686\b/i.test(r432)) {
if (r1057) {
r1057.architecture = 64;
r1057.family = r1057.family.replace(RegExp(" *" + r1080), "");
}
let r1094 = r121;
if (r1094) {
let r1097 = /\bWOW64\b/i.test(description);
if (!r1097) {
if (r16) {
r16 = /\w(?:86|32)$/.test(r20.cpuClass || r20.platform);
}
if (r16) {
r16 = !/\bWin64; x64\b/i.test(description);
}
r1097 = r16;
}
r1094 = r1097;
}
if (!r1094) {
break L547;
}
r1030.unshift("32-bit");
} else if ((r1057 ? /^OS X/.test(r1057.family) : r1057) && r121 == "Chrome" && parseFloat(r87) >= 39) {
r1057.architecture = 64;
}
}
if (!description) {
c25174_0 = null;
description = null;
}
const layout = r777 && r777[0];
let name = r121;
const r1118 = {
description,
layout,
manufacturer: manufacturer2,
name,
prerelease,
product: product3,
ua: description
};
if (name) {
name = r87;
}
r1118.version = name;
r1118.os = r1057 ? r1057 : {
architecture: null,
family: null,
version: null,
toString: function toString() {
return "null";
}
};
r1118.parse = parse2;
r1118.toString = function toStringPlatform() {
return this.description || "";
};
if (r1118.version) {
r1030.unshift(r87);
}
if (r1118.name) {
r1030.unshift(r121);
}
if (r1057 && r121 && (r1057 != String(r1057).split(" ")[0] || r1057 != r121.split(" ")[0] && !product3)) {
r1030.push.call(r1030, product3 ? "(" + r1057 + ")" : "on " + r1057);
}
if (r1030.length) {
r1118.description = r1030.join(" ");
}
return r1118;
};
const platform2 = parse2();
c14278_11 = platform2;
if (typeof globalThis.define === "function" && (typeof define.amd === "object" && define.amd)) {
r9.platform = platform2;
define(function() {
return c14278_11;
});
} else {
if (r14 && r27) {
const r51 = $forInKeys(platform2);
let r52 = 0;
const length = r51.length;
if (r51 === void 0) {
break L40;
}
while (true) {
const r54 = r52 < length ? r51[r52++] : void 0;
if (r54 === void 0) {
break L40;
}
const call = hasOwnProperty.call;
if (hasOwnProperty.call(platform2, r54)) {
r14[r54] = platform2[r54];
}
}
}
r9.platform = platform2;
}
}
}).call(this);