6869 lines
384 KiB
JavaScript
6869 lines
384 KiB
JavaScript
/* Metro module 654; source: unknown; dependencies: [] */
|
||
function _fun7368(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#7368, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:704:6, offset: 0x00d16f35, size: 44 bytes, params: 8, frame: 11
|
||
_fun7369.call(this);
|
||
function _fun7369() { // fn#7369, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:704:32, offset: 0x00d16f61, size: 473 bytes, params: 1, frame: 19
|
||
var r8;
|
||
var r3;
|
||
let value = this;
|
||
const capitalize_7370 = function(a0) {
|
||
var value = (0, global.String)(a0);
|
||
return value.charAt(0).toUpperCase() + value.slice(1);
|
||
};
|
||
const closure = function(a0, a1) {
|
||
var r4;
|
||
var propertyName;
|
||
var propertyName2;
|
||
for (propertyName in a0) {
|
||
if (!hasOwnProperty.call(a0, propertyName)) {
|
||
r4 = propertyName2;
|
||
continue;
|
||
}
|
||
a1(a0[propertyName], propertyName, a0);
|
||
r4 = propertyName2;
|
||
}
|
||
};
|
||
const qualify = function(a0) {
|
||
return (0, global.String)(a0).replace(RegExp('([ -])(?!$)', 'g'), '$1?');
|
||
};
|
||
const trim_7377 = function(a0) {
|
||
return (0, global.String)(a0).replace(RegExp('^ +| +$', 'g'), '');
|
||
};
|
||
const object = {'function': true, 'object': true};
|
||
let r4 = object[typeof global.window] && global.window;
|
||
r4 = !r4 ? value : r4;
|
||
const env0_0 = r4;
|
||
const r7 = object[typeof env0_2] && env0_2;
|
||
const env0_1 = r7;
|
||
const r5 = object[typeof env0_1] && env0_1 && !env0_1.nodeType && env0_1;
|
||
const r0 = r7 && r5 && typeof env0_0 === 'object' && env0_0;
|
||
if (r0) {
|
||
r8 = r0.global !== r0 && r0.window !== r0;
|
||
r8 = r8 && r0.self !== r0;
|
||
r3 = r8;
|
||
} else {
|
||
r3 = !r0;
|
||
}
|
||
r4 = !r3 ? r0 : r4;
|
||
const Math = global.Math;
|
||
var env0_2 = Math.pow(2, 53) - 1;
|
||
const env0_3 = RegExp('\\bOpera', '');
|
||
const Object = global.Object;
|
||
const prototype = Object.prototype;
|
||
const env0_4 = prototype.hasOwnProperty;
|
||
const env0_5 = prototype.toString;
|
||
value = parse_7378();
|
||
if (typeof global.define !== 'function') {
|
||
if (r7) {
|
||
if (r5) {
|
||
closure(value, _fun7395);
|
||
} else {
|
||
r4.platform = value;
|
||
}
|
||
} else {
|
||
r4.platform = value;
|
||
}
|
||
} else if (typeof global.define.amd !== 'object') {
|
||
if (r7) {
|
||
if (r5) {
|
||
closure(value, _fun7395);
|
||
} else {
|
||
r4.platform = value;
|
||
}
|
||
} else {
|
||
r4.platform = value;
|
||
}
|
||
} else if (global.define.amd) {
|
||
r4.platform = value;
|
||
global.define(_fun7394);
|
||
} else if (r7) {
|
||
if (r5) {
|
||
closure(value, _fun7395);
|
||
} else {
|
||
r4.platform = value;
|
||
}
|
||
} else {
|
||
r4.platform = value;
|
||
}
|
||
function format(a0) { // fn#7371, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:704:415, offset: 0x00d17176, size: 58 bytes, params: 2, frame: 13
|
||
const value2 = trim_7377(a0);
|
||
const regexp = RegExp('^(?:webOS|i(?:OS|P))', '');
|
||
return regexp.test(value2) ? value2 : capitalize_7370(value2);
|
||
}
|
||
|
||
function getClassOf(a0) { // fn#7373, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:704:559, offset: 0x00d171f3, size: 64 bytes, params: 2, frame: 14
|
||
var r0;
|
||
var value;
|
||
if (a0 == null) {
|
||
r0 = capitalize_7370(a0);
|
||
} else {
|
||
value = toString.call(a0);
|
||
value = value.slice(8, -1);
|
||
r0 = value;
|
||
}
|
||
return r0;
|
||
}
|
||
|
||
function reduce_7375(a0, a1) { // fn#7375, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:704:700, offset: 0x00d17266, size: 123 bytes, params: 3, frame: 17
|
||
var environment;
|
||
var length;
|
||
var r3;
|
||
var value2;
|
||
const env0_0 = a0;
|
||
const env0_1 = a1;
|
||
const env0_2 = null;
|
||
const closure = _fun7376;
|
||
let value = 0;
|
||
reducibleJoin2: while (true) {
|
||
if (a0) {
|
||
length = a0.length;
|
||
break reducibleJoin2;
|
||
}
|
||
length = value;
|
||
break reducibleJoin2;
|
||
}
|
||
reducibleJoin8: while (true) {
|
||
reducibleJoin5: while (true) {
|
||
if (typeof length !== 'number') {
|
||
break reducibleJoin5;
|
||
}
|
||
if (length > -1) {
|
||
value2 = environment;
|
||
if (length <= env0_2) {
|
||
if (value < length) {
|
||
r3 = value;
|
||
reducibleLoop7: while (true) {
|
||
closure(a0[r3], r3, a0);
|
||
value = typeof r3 === 'bigint' ? r3 + 1n : +r3 + 1;
|
||
if (value < length) {
|
||
r3 = value;
|
||
continue reducibleLoop7;
|
||
}
|
||
break reducibleJoin8;
|
||
}
|
||
return env0_2;
|
||
}
|
||
break reducibleJoin8;
|
||
}
|
||
break reducibleJoin5;
|
||
}
|
||
break reducibleJoin5;
|
||
}
|
||
value = environment;
|
||
forOwn_7372(a0, closure);
|
||
break reducibleJoin8;
|
||
}
|
||
return env0_2;
|
||
function _fun7376(a0, a1) { // fn#7376, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:704:861, offset: 0x00d172e1, size: 35 bytes, params: 3, frame: 18
|
||
moduleValue = require(moduleValue, a0, a1, env0_0);
|
||
}
|
||
|
||
}
|
||
|
||
function parse_7378(a0) { // fn#7378, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:704:956, offset: 0x00d17335, size: 11143 bytes, params: 2, frame: 66
|
||
var environment;
|
||
var r9;
|
||
var r10;
|
||
var r28;
|
||
var r20;
|
||
var r26;
|
||
var r42;
|
||
var r11;
|
||
var r14;
|
||
var r40;
|
||
var r39;
|
||
var r38;
|
||
var r34;
|
||
var r37;
|
||
var r41;
|
||
var r13;
|
||
var r36;
|
||
var r27;
|
||
var r12;
|
||
var r56;
|
||
var r45;
|
||
var r51;
|
||
var r50;
|
||
var r48;
|
||
var r6;
|
||
var r49;
|
||
var r482;
|
||
var r5;
|
||
var r47;
|
||
var r3;
|
||
var r43;
|
||
var r30;
|
||
var r18;
|
||
var r33;
|
||
var r24;
|
||
var version;
|
||
var r35;
|
||
var r31;
|
||
var r25;
|
||
var r32;
|
||
var r29;
|
||
var r46;
|
||
var r44;
|
||
var r23;
|
||
var r19;
|
||
var r17;
|
||
var r1;
|
||
var r16;
|
||
var r4;
|
||
var value4;
|
||
var getClassOfBinding;
|
||
var classOf;
|
||
var value6;
|
||
var value7;
|
||
var regexp;
|
||
var test;
|
||
var toStringBinding;
|
||
var toString2;
|
||
var java;
|
||
var opera;
|
||
var property;
|
||
var value9;
|
||
var value10;
|
||
var value30;
|
||
var exec;
|
||
var value31;
|
||
var trim_7377Binding;
|
||
var value32;
|
||
var replace;
|
||
var value33;
|
||
var value34;
|
||
var RegExp;
|
||
var qualifyBinding;
|
||
var value35;
|
||
var value36;
|
||
var value37;
|
||
var value38;
|
||
var value39;
|
||
var value40;
|
||
var value42;
|
||
var value43;
|
||
var value44;
|
||
var value46;
|
||
var push;
|
||
var value47;
|
||
var value48;
|
||
var value49;
|
||
var value50;
|
||
var value51;
|
||
var value52;
|
||
var value53;
|
||
var value54;
|
||
var value55;
|
||
var slice;
|
||
var indexOf;
|
||
var value56;
|
||
var value57;
|
||
var value58;
|
||
var regexp2;
|
||
var value59;
|
||
var value60;
|
||
var value61;
|
||
var value62;
|
||
var unshift;
|
||
var value63;
|
||
var value64;
|
||
var value65;
|
||
var value66;
|
||
var value67;
|
||
var value68;
|
||
var value69;
|
||
var value70;
|
||
var parse_7378Binding;
|
||
var value71;
|
||
var manufacturer;
|
||
var product;
|
||
var value72;
|
||
var value73;
|
||
var parseFloat;
|
||
var float;
|
||
var value74;
|
||
var value75;
|
||
var value76;
|
||
var value77;
|
||
var value78;
|
||
var value79;
|
||
var value80;
|
||
var value81;
|
||
var value82;
|
||
var value83;
|
||
var value84;
|
||
var value85;
|
||
var value86;
|
||
var value87;
|
||
var value88;
|
||
var value89;
|
||
var value90;
|
||
var value91;
|
||
var value92;
|
||
var value93;
|
||
var value94;
|
||
var value95;
|
||
var value96;
|
||
var value97;
|
||
var global;
|
||
var value98;
|
||
var value99;
|
||
var value100;
|
||
var value101;
|
||
var runtime;
|
||
var phantom;
|
||
var documentMode;
|
||
var value102;
|
||
var value103;
|
||
var value104;
|
||
var value105;
|
||
var value106;
|
||
var items10;
|
||
var value107;
|
||
var String;
|
||
var toFixed;
|
||
var value108;
|
||
var major;
|
||
var value109;
|
||
var minor;
|
||
var value110;
|
||
var patch;
|
||
var value111;
|
||
var value112;
|
||
var flash;
|
||
var system;
|
||
var Capabilities;
|
||
var os;
|
||
var lang;
|
||
var System;
|
||
var getProperty;
|
||
var value113;
|
||
var value114;
|
||
var value115;
|
||
var value116;
|
||
var process;
|
||
var value117;
|
||
var browser;
|
||
var value118;
|
||
var versions;
|
||
var electron;
|
||
var nw;
|
||
var value119;
|
||
var node;
|
||
var value120;
|
||
var value121;
|
||
var value122;
|
||
var arch;
|
||
var platform;
|
||
var value123;
|
||
var require;
|
||
var moduleValue;
|
||
var join;
|
||
var value124;
|
||
var value125;
|
||
var error;
|
||
var system2;
|
||
var system3;
|
||
var value126;
|
||
var value127;
|
||
var value128;
|
||
var formatBinding;
|
||
var value129;
|
||
var value130;
|
||
var value131;
|
||
var appMinorVersion;
|
||
var value132;
|
||
var value133;
|
||
var value134;
|
||
var value135;
|
||
var value136;
|
||
var value137;
|
||
var value138;
|
||
var value139;
|
||
var value140;
|
||
var value141;
|
||
var value142;
|
||
var value143;
|
||
var value144;
|
||
var value145;
|
||
var value146;
|
||
var value147;
|
||
var forOwn_7372Binding;
|
||
var value148;
|
||
var value149;
|
||
var value150;
|
||
var value151;
|
||
var value152;
|
||
var value153;
|
||
var value154;
|
||
var value155;
|
||
var value156;
|
||
var value157;
|
||
var value158;
|
||
var value159;
|
||
var value160;
|
||
var call;
|
||
var value161;
|
||
var value162;
|
||
var value163;
|
||
var name;
|
||
var value164;
|
||
var value165;
|
||
var value166;
|
||
var value167;
|
||
var value168;
|
||
var value169;
|
||
var value170;
|
||
var value171;
|
||
var value172;
|
||
var items12;
|
||
var value173;
|
||
var value174;
|
||
var external;
|
||
var value175;
|
||
var value176;
|
||
var value177;
|
||
var value178;
|
||
var value179;
|
||
var value181;
|
||
var value182;
|
||
var float2;
|
||
var items13;
|
||
var value183;
|
||
var value184;
|
||
var value185;
|
||
var value186;
|
||
var value187;
|
||
var value188;
|
||
var value189;
|
||
var value190;
|
||
var value191;
|
||
var value192;
|
||
var value193;
|
||
var value194;
|
||
var float3;
|
||
var value195;
|
||
var value196;
|
||
var value197;
|
||
var value198;
|
||
var value199;
|
||
var value200;
|
||
var value201;
|
||
var value202;
|
||
var value203;
|
||
var value204;
|
||
var value205;
|
||
var value206;
|
||
var value207;
|
||
var value208;
|
||
var value209;
|
||
var value210;
|
||
var value211;
|
||
var value212;
|
||
var value213;
|
||
var value214;
|
||
var value215;
|
||
var value216;
|
||
var value217;
|
||
var value218;
|
||
var value219;
|
||
var value220;
|
||
var value221;
|
||
var value222;
|
||
var value223;
|
||
var value224;
|
||
var value225;
|
||
var value226;
|
||
var value227;
|
||
var value228;
|
||
var value229;
|
||
var value230;
|
||
var value231;
|
||
var value232;
|
||
var value233;
|
||
var value234;
|
||
var value235;
|
||
var value236;
|
||
var value237;
|
||
var value238;
|
||
var value239;
|
||
var parseInt;
|
||
var int;
|
||
var value240;
|
||
var value241;
|
||
var value242;
|
||
var value243;
|
||
var value244;
|
||
var value245;
|
||
var value246;
|
||
var value247;
|
||
var value248;
|
||
var value249;
|
||
var value250;
|
||
var value251;
|
||
var value252;
|
||
var value253;
|
||
var value254;
|
||
var value255;
|
||
var value256;
|
||
var value257;
|
||
var value258;
|
||
var value259;
|
||
var value260;
|
||
var value261;
|
||
var value262;
|
||
var value263;
|
||
var value264;
|
||
var value265;
|
||
var value266;
|
||
var value267;
|
||
var value268;
|
||
var value269;
|
||
var value270;
|
||
var value271;
|
||
var length;
|
||
var value272;
|
||
var value273;
|
||
var value274;
|
||
var value275;
|
||
var value276;
|
||
var value277;
|
||
var value278;
|
||
var value279;
|
||
var charAt;
|
||
var length2;
|
||
var value280;
|
||
var value281;
|
||
var value282;
|
||
var value283;
|
||
var family;
|
||
var value284;
|
||
var value285;
|
||
var cpuClass;
|
||
var split;
|
||
let value = a0;
|
||
let env0_0 = value;
|
||
const value2 = undefined;
|
||
const closure = function(a0) {
|
||
return reduce_7375(a0, _fun7380);
|
||
};
|
||
const closure2 = function(a0) {
|
||
return reduce_7375(a0, _fun7382);
|
||
};
|
||
let binding = env0_0;
|
||
reducibleJoin2: while (true) {
|
||
if (value) {
|
||
value4 = typeof value === 'object';
|
||
r9 = value4;
|
||
break reducibleJoin2;
|
||
}
|
||
r9 = value;
|
||
break reducibleJoin2;
|
||
}
|
||
reducibleJoin4: while (true) {
|
||
if (r9) {
|
||
classOf = getClassOf(value);
|
||
value6 = classOf != 'String';
|
||
r9 = value6;
|
||
break reducibleJoin4;
|
||
}
|
||
break reducibleJoin4;
|
||
}
|
||
reducibleJoin6: while (true) {
|
||
if (r9) {
|
||
value7 = null;
|
||
env0_0 = value7;
|
||
r10 = value7;
|
||
r28 = value;
|
||
break reducibleJoin6;
|
||
}
|
||
r10 = value;
|
||
r28 = binding;
|
||
break reducibleJoin6;
|
||
}
|
||
const navigator = r28.navigator;
|
||
reducibleJoin8: while (true) {
|
||
if (navigator) {
|
||
r20 = navigator;
|
||
break reducibleJoin8;
|
||
}
|
||
r20 = {};
|
||
break reducibleJoin8;
|
||
}
|
||
let userAgent = r20.userAgent;
|
||
reducibleJoin10: while (true) {
|
||
if (userAgent) {
|
||
break reducibleJoin10;
|
||
}
|
||
value = '';
|
||
userAgent = value;
|
||
break reducibleJoin10;
|
||
}
|
||
reducibleJoin12: while (true) {
|
||
if (r10) {
|
||
break reducibleJoin12;
|
||
}
|
||
env0_0 = userAgent;
|
||
r10 = userAgent;
|
||
break reducibleJoin12;
|
||
}
|
||
if (r9) {
|
||
r26 = !!r20.likeChrome;
|
||
} else {
|
||
regexp = RegExp('\\bChrome\\b', '');
|
||
value = regexp.test(r10);
|
||
reducibleJoin15: while (true) {
|
||
if (value) {
|
||
regexp = RegExp('internal|\\n', 'i');
|
||
test = regexp.test;
|
||
toStringBinding = toString;
|
||
toString2 = toStringBinding.toString;
|
||
value = !Reflect.apply(test, regexp, [Reflect.apply(toString2, toStringBinding, [])]);
|
||
r26 = value;
|
||
break reducibleJoin15;
|
||
}
|
||
r26 = value;
|
||
break reducibleJoin15;
|
||
}
|
||
}
|
||
value = 'ScriptBridgingProxyObject';
|
||
reducibleJoin19: while (true) {
|
||
if (r9) {
|
||
value = 'Object';
|
||
r42 = value;
|
||
break reducibleJoin19;
|
||
}
|
||
r42 = value;
|
||
break reducibleJoin19;
|
||
}
|
||
value = 'Environment';
|
||
reducibleJoin21: while (true) {
|
||
if (r9) {
|
||
value = 'Object';
|
||
r11 = value;
|
||
break reducibleJoin21;
|
||
}
|
||
r11 = value;
|
||
break reducibleJoin21;
|
||
}
|
||
reducibleJoin24: while (true) {
|
||
reducibleJoin23: while (true) {
|
||
if (r9) {
|
||
java = r28.java;
|
||
value = 'JavaPackage';
|
||
if (java) {
|
||
r14 = value;
|
||
break reducibleJoin24;
|
||
}
|
||
break reducibleJoin23;
|
||
}
|
||
break reducibleJoin23;
|
||
}
|
||
getClassOfBinding = getClassOf;
|
||
java = r28.java;
|
||
value = getClassOfBinding(java);
|
||
r14 = value;
|
||
break reducibleJoin24;
|
||
}
|
||
value = 'RuntimeObject';
|
||
reducibleJoin26: while (true) {
|
||
if (r9) {
|
||
value = 'Object';
|
||
r40 = value;
|
||
break reducibleJoin26;
|
||
}
|
||
r40 = value;
|
||
break reducibleJoin26;
|
||
}
|
||
value = RegExp('\\bJava', '').test(r14);
|
||
reducibleJoin28: while (true) {
|
||
if (value) {
|
||
java = r28.java;
|
||
r39 = java;
|
||
break reducibleJoin28;
|
||
}
|
||
r39 = value;
|
||
break reducibleJoin28;
|
||
}
|
||
reducibleJoin30: while (true) {
|
||
if (r39) {
|
||
getClassOfBinding = getClassOf;
|
||
environment = r28.environment;
|
||
value = getClassOfBinding(environment) == r11;
|
||
r38 = value;
|
||
break reducibleJoin30;
|
||
}
|
||
r38 = r39;
|
||
break reducibleJoin30;
|
||
}
|
||
value = 'α';
|
||
reducibleJoin32: while (true) {
|
||
if (r39) {
|
||
value = 'a';
|
||
r34 = value;
|
||
break reducibleJoin32;
|
||
}
|
||
r34 = value;
|
||
break reducibleJoin32;
|
||
}
|
||
value = 'β';
|
||
reducibleJoin34: while (true) {
|
||
if (r39) {
|
||
value = 'b';
|
||
r37 = value;
|
||
break reducibleJoin34;
|
||
}
|
||
r37 = value;
|
||
break reducibleJoin34;
|
||
}
|
||
const document = r28.document;
|
||
reducibleJoin36: while (true) {
|
||
if (document) {
|
||
r41 = document;
|
||
break reducibleJoin36;
|
||
}
|
||
r41 = {};
|
||
break reducibleJoin36;
|
||
}
|
||
const operamini = r28.operamini;
|
||
reducibleJoin38: while (true) {
|
||
if (operamini) {
|
||
r13 = operamini;
|
||
break reducibleJoin38;
|
||
}
|
||
opera = r28.opera;
|
||
r13 = opera;
|
||
break reducibleJoin38;
|
||
}
|
||
binding = env0_3;
|
||
test = binding.test;
|
||
reducibleJoin42: while (true) {
|
||
reducibleJoin40: while (true) {
|
||
if (r9) {
|
||
if (r13) {
|
||
property = r13['[[Class]]'];
|
||
r9 = property;
|
||
break reducibleJoin42;
|
||
}
|
||
break reducibleJoin40;
|
||
}
|
||
break reducibleJoin40;
|
||
}
|
||
value = getClassOf(r13);
|
||
r9 = value;
|
||
break reducibleJoin42;
|
||
}
|
||
value = Reflect.apply(test, binding, [r9]);
|
||
const value8 = null;
|
||
if (value) {
|
||
r36 = r9;
|
||
r9 = r13;
|
||
} else {
|
||
r9 = value8;
|
||
r36 = value8;
|
||
}
|
||
let object = [];
|
||
value = r10 == userAgent;
|
||
let r2 = value && r9;
|
||
reducibleJoin46: while (true) {
|
||
if (r2) {
|
||
version = r9.version;
|
||
value9 = typeof version === 'function';
|
||
r2 = value9;
|
||
break reducibleJoin46;
|
||
}
|
||
break reducibleJoin46;
|
||
}
|
||
reducibleJoin48: while (true) {
|
||
if (r2) {
|
||
version = r9.version;
|
||
value10 = Reflect.apply(version, r9, []);
|
||
r2 = value10;
|
||
break reducibleJoin48;
|
||
}
|
||
break reducibleJoin48;
|
||
}
|
||
const value11 = 'Trident';
|
||
const value12 = 'WebKit';
|
||
const value13 = 'Presto';
|
||
const value14 = 'NetFront';
|
||
const value15 = 'Tasman';
|
||
const value16 = ((a0) => reduce_7375(a0, _fun7384))([{'label': 'EdgeHTML', 'pattern': 'Edge'}, value11,
|
||
{'label': 'WebKit', 'pattern': 'AppleWebKit'}, 'iCab', value13, value14, value15, 'KHTML', 'Gecko']);
|
||
const value17 = 'PhantomJS';
|
||
const value18 = 'Opera';
|
||
const value19 = 'Chrome Mobile';
|
||
const value20 = 'IE';
|
||
const value21 = 'Safari';
|
||
const value22 = ((a0) => reduce_7375(a0, _fun7386))(['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|Edg|EdgA|EdgiOS)'},
|
||
'Midori', 'Nook Browser', 'PaleMoon', value17, 'Raven', 'Rekonq', 'RockMelt', {'label': 'Samsung Internet',
|
||
'pattern': 'SamsungBrowser'}, 'SeaMonkey', {'label': 'Silk', 'pattern': '(?:Cloud9|Silk-Accelerated)'},
|
||
'Sleipnir', 'SlimBrowser', {'label': 'SRWare Iron', 'pattern': 'Iron'}, 'Sunrise', 'Swiftfox', 'Vivaldi',
|
||
'Waterfox', 'WebPositive', {'label': 'Yandex Browser', 'pattern': 'YaBrowser'}, {'label': 'UC Browser',
|
||
'pattern': 'UCBrowser'}, 'Opera Mini', {'label': 'Opera Mini', 'pattern': 'OPiOS'}, value18, {'label': 'Opera',
|
||
'pattern': 'OPR'}, 'Chromium', 'Chrome', {'label': 'Chrome', 'pattern': '(?:HeadlessChrome)'},
|
||
{'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'}, value21]);
|
||
const value23 = 'BlackBerry';
|
||
const value24 = closure([{'label': 'BlackBerry', 'pattern': 'BB10'}, value23, {'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']);
|
||
var env0_2;
|
||
const value25 = 1;
|
||
const value26 = ((a0) => reduce_7375(a0, _fun7388))({Apple: {'iPad': 1, 'iPhone': 1, 'iPod': 1}, Alcatel: {},
|
||
Archos: {}, Amazon: {'Kindle': 1, 'Kindle Fire': 1}, Asus: {Transformer: value25},
|
||
['Barnes & Noble']: {Nook: value25}, BlackBerry: {PlayBook: value25}, Google: {'Google TV': 1, 'Nexus': 1},
|
||
HP: {TouchPad: value25}, HTC: {}, Huawei: {}, Lenovo: {}, LG: {}, Microsoft: {'Xbox': 1, 'Xbox One': 1},
|
||
Motorola: {Xoom: value25}, Nintendo: {'Wii U': 1, 'Wii': 1}, Nokia: {Lumia: value25}, Oppo: {},
|
||
Samsung: {'Galaxy S': 1, 'Galaxy S2': 1, 'Galaxy S3': 1, 'Galaxy S4': 1}, Sony: {'PlayStation': 1,
|
||
'PlayStation Vita': 1}, Xiaomi: {'Mi': 1, 'Redmi': 1}});
|
||
const value27 = 'Kubuntu';
|
||
const value28 = ((a0) => reduce_7375(a0, _fun7390))(['Windows Phone', 'KaiOS', 'Android', 'CentOS',
|
||
{'label': 'Chrome OS', 'pattern': 'CrOS'}, 'Debian', {'label': 'DragonFly BSD', 'pattern': 'DragonFly'},
|
||
'Fedora', 'FreeBSD', 'Gentoo', 'Haiku', value27, '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 ']);
|
||
reducibleJoin50: while (true) {
|
||
if (value16) {
|
||
r27 = [value16];
|
||
break reducibleJoin50;
|
||
}
|
||
r27 = value16;
|
||
break reducibleJoin50;
|
||
}
|
||
const value29 = RegExp('\\bAndroid\\b', '').test(value28);
|
||
reducibleJoin52: while (true) {
|
||
if (value29) {
|
||
value30 = !value24;
|
||
r11 = value30;
|
||
break reducibleJoin52;
|
||
}
|
||
r11 = value29;
|
||
break reducibleJoin52;
|
||
}
|
||
reducibleJoin54: while (true) {
|
||
if (r11) {
|
||
regexp = RegExp('\\bAndroid[^;]*;(.*?)(?:Build|\\) AppleWebKit)\\b', 'i');
|
||
exec = regexp.exec;
|
||
value31 = Reflect.apply(exec, regexp, [r10]);
|
||
r11 = value31;
|
||
r12 = value31;
|
||
break reducibleJoin54;
|
||
}
|
||
r12 = value2;
|
||
break reducibleJoin54;
|
||
}
|
||
reducibleJoin57: while (true) {
|
||
if (r11) {
|
||
value32 = trim_7377(r12[value25]);
|
||
replace = value32.replace;
|
||
value33 = Reflect.apply(replace, value32, [RegExp('^[a-z]{2}-[a-z]{2};\\s*', 'i'), '']);
|
||
r11 = value33 || value8;
|
||
env0_2 = r11;
|
||
r56 = r11;
|
||
break reducibleJoin57;
|
||
}
|
||
r56 = value24;
|
||
break reducibleJoin57;
|
||
}
|
||
reducibleJoin63: while (true) {
|
||
reducibleJoin61: while (true) {
|
||
if (value26) {
|
||
if (r56) {
|
||
if (value26) {
|
||
r11 = r56;
|
||
break reducibleJoin61;
|
||
}
|
||
r11 = value26;
|
||
break reducibleJoin61;
|
||
}
|
||
value34 = closure([value26]);
|
||
env0_2 = value34;
|
||
r45 = value34;
|
||
break reducibleJoin63;
|
||
}
|
||
if (value26) {
|
||
r11 = r56;
|
||
break reducibleJoin61;
|
||
}
|
||
r11 = value26;
|
||
break reducibleJoin61;
|
||
}
|
||
if (r11) {
|
||
replace = r56.replace;
|
||
RegExp = global.RegExp;
|
||
qualifyBinding = qualify;
|
||
value35 = qualifyBinding(value26);
|
||
value36 = RegExp('^(' + value35 + ')[-_.\\s]', 'i');
|
||
value37 = Reflect.apply(replace, r56, [value36, value26 + ' ']);
|
||
replace = value37.replace;
|
||
RegExp = global.RegExp;
|
||
value38 = '^(' + qualifyBinding(value26);
|
||
value39 = RegExp(value38 + ')[-_.]?(\\w)', 'i');
|
||
value40 = Reflect.apply(replace, value37, [value39, value26 + ' $2']);
|
||
env0_2 = value40;
|
||
r45 = value40;
|
||
break reducibleJoin63;
|
||
}
|
||
r45 = r56;
|
||
break reducibleJoin63;
|
||
}
|
||
const value41 = RegExp('\\bGoogle TV\\b', '').exec(r45);
|
||
reducibleJoin65: while (true) {
|
||
if (value41) {
|
||
property = value41[0];
|
||
env0_2 = property;
|
||
r51 = property;
|
||
break reducibleJoin65;
|
||
}
|
||
r51 = r45;
|
||
break reducibleJoin65;
|
||
}
|
||
regexp = RegExp('\\bSimulator\\b', 'i');
|
||
reducibleJoin69: while (true) {
|
||
if (regexp.test(r10)) {
|
||
value42 = '';
|
||
reducibleJoin68: while (true) {
|
||
if (r51) {
|
||
value43 = r51 + ' ';
|
||
r50 = value43;
|
||
break reducibleJoin68;
|
||
}
|
||
r50 = value42;
|
||
break reducibleJoin68;
|
||
}
|
||
value44 = r50 + 'Simulator';
|
||
env0_2 = value44;
|
||
r45 = value44;
|
||
break reducibleJoin69;
|
||
}
|
||
r45 = r51;
|
||
break reducibleJoin69;
|
||
}
|
||
const value45 = value22 == 'Opera Mini';
|
||
reducibleJoin71: while (true) {
|
||
if (value45) {
|
||
regexp = RegExp('\\bOPiOS\\b', '');
|
||
test = regexp.test;
|
||
value46 = Reflect.apply(test, regexp, [r10]);
|
||
r11 = value46;
|
||
break reducibleJoin71;
|
||
}
|
||
r11 = value45;
|
||
break reducibleJoin71;
|
||
}
|
||
reducibleJoin73: while (true) {
|
||
if (r11) {
|
||
push = object.push;
|
||
Reflect.apply(push, object, ['running in Turbo/Uncompressed mode']);
|
||
break reducibleJoin73;
|
||
}
|
||
break reducibleJoin73;
|
||
}
|
||
reducibleJoin135: while (true) {
|
||
reducibleJoin75: while (true) {
|
||
if (value20 != value22) {
|
||
break reducibleJoin75;
|
||
}
|
||
regexp = RegExp('\\blike iPhone OS\\b', '');
|
||
test = regexp.test;
|
||
if (Reflect.apply(test, regexp, [r10])) {
|
||
parse_7378Binding = parse_7378;
|
||
replace = r10.replace;
|
||
value71 = parse_7378Binding(Reflect.apply(replace, r10, [RegExp('like iPhone OS', ''), '']));
|
||
manufacturer = value71.manufacturer;
|
||
product = value71.product;
|
||
env0_2 = product;
|
||
r5 = value28;
|
||
r6 = value22;
|
||
r11 = manufacturer;
|
||
r14 = product;
|
||
break reducibleJoin135;
|
||
}
|
||
break reducibleJoin75;
|
||
}
|
||
regexp = RegExp('^iP', '');
|
||
test = regexp.test;
|
||
if (Reflect.apply(test, regexp, [r45])) {
|
||
r6 = value22 || value21;
|
||
regexp = RegExp(' OS ([\\d_]+)', 'i');
|
||
exec = regexp.exec;
|
||
value66 = Reflect.apply(exec, regexp, [r10]);
|
||
value67 = '';
|
||
reducibleJoin133: while (true) {
|
||
if (value66) {
|
||
property = value66[value25];
|
||
replace = property.replace;
|
||
value68 = Reflect.apply(replace, property, [RegExp('_', 'g'), '.']);
|
||
value69 = ' ' + value68;
|
||
r47 = value69;
|
||
break reducibleJoin133;
|
||
}
|
||
r47 = value67;
|
||
break reducibleJoin133;
|
||
}
|
||
value70 = 'iOS' + r47;
|
||
r5 = value70;
|
||
r11 = value26;
|
||
r14 = r45;
|
||
break reducibleJoin135;
|
||
}
|
||
if (value22 == 'Konqueror') {
|
||
regexp = RegExp('^Linux\\b', 'i');
|
||
if (regexp.test(value28)) {
|
||
r5 = value27;
|
||
r6 = value22;
|
||
r11 = value26;
|
||
r14 = r45;
|
||
break reducibleJoin135;
|
||
}
|
||
}
|
||
if (value26) {
|
||
if (value26 != 'Google') {
|
||
regexp = RegExp('Chrome', '');
|
||
test = regexp.test;
|
||
if (Reflect.apply(test, regexp, [value22])) {
|
||
regexp = RegExp('\\bMobile Safari\\b', 'i');
|
||
if (!regexp.test(r10)) {
|
||
value63 = 'Android Browser';
|
||
regexp = RegExp('\\bAndroid\\b', '');
|
||
value64 = regexp.test(value28);
|
||
value65 = 'Android';
|
||
r48 = value64 ? value28 : value65;
|
||
r5 = r48;
|
||
r6 = value63;
|
||
r11 = value26;
|
||
r14 = r45;
|
||
break reducibleJoin135;
|
||
}
|
||
}
|
||
regexp = RegExp('\\bVita\\b', '');
|
||
test = regexp.test;
|
||
if (Reflect.apply(test, regexp, [r45])) {
|
||
value63 = 'Android Browser';
|
||
regexp = RegExp('\\bAndroid\\b', '');
|
||
value64 = regexp.test(value28);
|
||
value65 = 'Android';
|
||
r48 = value64 ? value28 : value65;
|
||
r5 = r48;
|
||
r6 = value63;
|
||
r11 = value26;
|
||
r14 = r45;
|
||
break reducibleJoin135;
|
||
}
|
||
}
|
||
}
|
||
regexp = RegExp('\\bAndroid\\b', '');
|
||
test = regexp.test;
|
||
if (Reflect.apply(test, regexp, [value28])) {
|
||
regexp = RegExp('^Chrome', '');
|
||
test = regexp.test;
|
||
if (Reflect.apply(test, regexp, [value22])) {
|
||
regexp = RegExp('\\bVersion\\/', 'i');
|
||
test = regexp.test;
|
||
if (Reflect.apply(test, regexp, [r10])) {
|
||
value63 = 'Android Browser';
|
||
regexp = RegExp('\\bAndroid\\b', '');
|
||
test = regexp.test;
|
||
value64 = Reflect.apply(test, regexp, [value28]);
|
||
value65 = 'Android';
|
||
r48 = value64 ? value28 : value65;
|
||
r5 = r48;
|
||
r6 = value63;
|
||
r11 = value26;
|
||
r14 = r45;
|
||
break reducibleJoin135;
|
||
}
|
||
}
|
||
}
|
||
if (value22 == 'Silk') {
|
||
regexp = RegExp('\\bMobi', 'i');
|
||
test = regexp.test;
|
||
reducibleJoin126: while (true) {
|
||
if (Reflect.apply(test, regexp, [r10])) {
|
||
r5 = value28;
|
||
break reducibleJoin126;
|
||
}
|
||
value62 = 'Android';
|
||
unshift = object.unshift;
|
||
Reflect.apply(unshift, object, ['desktop mode']);
|
||
r5 = value62;
|
||
break reducibleJoin126;
|
||
}
|
||
regexp = RegExp('Accelerated *= *true', 'i');
|
||
test = regexp.test;
|
||
if (Reflect.apply(test, regexp, [r10])) {
|
||
unshift = object.unshift;
|
||
Reflect.apply(unshift, object, ['accelerated']);
|
||
r6 = value22;
|
||
r11 = value26;
|
||
r14 = r45;
|
||
break reducibleJoin135;
|
||
}
|
||
r6 = value22;
|
||
r11 = value26;
|
||
r14 = r45;
|
||
break reducibleJoin135;
|
||
}
|
||
if (value22 == 'UC Browser') {
|
||
regexp = RegExp('\\bUCWEB\\b', '');
|
||
test = regexp.test;
|
||
if (Reflect.apply(test, regexp, [r10])) {
|
||
push = object.push;
|
||
Reflect.apply(push, object, ['speed mode']);
|
||
r5 = value28;
|
||
r6 = value22;
|
||
r11 = value26;
|
||
r14 = r45;
|
||
break reducibleJoin135;
|
||
}
|
||
}
|
||
if (value22 != 'PaleMoon') {
|
||
r12 = value41;
|
||
} else {
|
||
regexp = RegExp('\\bFirefox\\/([\\d.]+)\\b', '');
|
||
exec = regexp.exec;
|
||
value47 = Reflect.apply(exec, regexp, [r10]);
|
||
if (value47) {
|
||
push = object.push;
|
||
Reflect.apply(push, object, ['identifying as Firefox ' + value47[value25]]);
|
||
r5 = value28;
|
||
r6 = value22;
|
||
r11 = value26;
|
||
r14 = r45;
|
||
break reducibleJoin135;
|
||
}
|
||
r12 = value47;
|
||
}
|
||
if (value22 == 'Firefox') {
|
||
regexp = RegExp('\\b(Mobile|Tablet|TV)\\b', 'i');
|
||
exec = regexp.exec;
|
||
value48 = Reflect.apply(exec, regexp, [r10]);
|
||
if (value48) {
|
||
reducibleJoin120: while (true) {
|
||
if (value28) {
|
||
r5 = value28;
|
||
break reducibleJoin120;
|
||
}
|
||
value61 = 'Firefox OS';
|
||
r5 = value61;
|
||
break reducibleJoin120;
|
||
}
|
||
if (r45) {
|
||
r6 = value22;
|
||
r11 = value26;
|
||
r14 = r45;
|
||
break reducibleJoin135;
|
||
}
|
||
property = value48[value25];
|
||
env0_2 = property;
|
||
r6 = value22;
|
||
r11 = value26;
|
||
r14 = property;
|
||
break reducibleJoin135;
|
||
}
|
||
r12 = value48;
|
||
}
|
||
if (value22) {
|
||
regexp = RegExp('\\bMinefield\\b', 'i');
|
||
test = regexp.test;
|
||
value49 = Reflect.apply(test, regexp, [r10]);
|
||
value50 = !value49;
|
||
reducibleJoin96: while (true) {
|
||
if (value49) {
|
||
r11 = value50;
|
||
break reducibleJoin96;
|
||
}
|
||
regexp = RegExp('\\b(?:Firefox|Safari)\\b', '');
|
||
exec = regexp.exec;
|
||
value51 = Reflect.apply(exec, regexp, [value22]);
|
||
r11 = value51;
|
||
break reducibleJoin96;
|
||
}
|
||
if (!r11) {
|
||
value52 = value22 == 'Electron';
|
||
reducibleJoin101: while (true) {
|
||
if (value52) {
|
||
regexp = RegExp('\\bChrome\\/([\\d.]+)\\b', '');
|
||
exec = regexp.exec;
|
||
value53 = Reflect.apply(exec, regexp, [r10]);
|
||
reducibleJoin100: while (true) {
|
||
if (value53) {
|
||
r11 = value53;
|
||
break reducibleJoin100;
|
||
}
|
||
value54 = 0;
|
||
r11 = value54;
|
||
break reducibleJoin100;
|
||
}
|
||
property = r11[value25];
|
||
r12 = property;
|
||
r48 = property;
|
||
break reducibleJoin101;
|
||
}
|
||
r12 = r11;
|
||
r48 = value52;
|
||
break reducibleJoin101;
|
||
}
|
||
if (r48) {
|
||
push = object.push;
|
||
Reflect.apply(push, object, ['Chromium ' + r12]);
|
||
r5 = value28;
|
||
r6 = value22;
|
||
r11 = value26;
|
||
r14 = r45;
|
||
break reducibleJoin135;
|
||
}
|
||
r5 = value28;
|
||
r6 = value22;
|
||
r11 = value26;
|
||
r14 = r45;
|
||
break reducibleJoin135;
|
||
}
|
||
r12 = r11;
|
||
}
|
||
reducibleJoin105: while (true) {
|
||
if (value22) {
|
||
value55 = !r45;
|
||
r48 = value55;
|
||
break reducibleJoin105;
|
||
}
|
||
r48 = value22;
|
||
break reducibleJoin105;
|
||
}
|
||
reducibleJoin107: while (true) {
|
||
if (r48) {
|
||
regexp = RegExp('[\\/,]|^[^(]+?\\)', '');
|
||
test = regexp.test;
|
||
slice = r10.slice;
|
||
indexOf = r10.indexOf;
|
||
value56 = Reflect.apply(indexOf, r10, [r12 + '/']);
|
||
value57 = Reflect.apply(test, regexp, [Reflect.apply(slice, r10, [value56 + 8])]);
|
||
r48 = value57;
|
||
break reducibleJoin107;
|
||
}
|
||
break reducibleJoin107;
|
||
}
|
||
r6 = r48 ? value8 : value22;
|
||
r48 = r45 || value26;
|
||
if (!r48) {
|
||
r48 = value28;
|
||
}
|
||
reducibleJoin115: while (true) {
|
||
if (r48) {
|
||
r49 = r45 || value26;
|
||
reducibleJoin114: while (true) {
|
||
if (r49) {
|
||
break reducibleJoin114;
|
||
}
|
||
regexp = RegExp('\\b(?:Android|Symbian OS|Tablet OS|webOS)\\b', '');
|
||
test = regexp.test;
|
||
value58 = Reflect.apply(test, regexp, [value28]);
|
||
r49 = value58;
|
||
break reducibleJoin114;
|
||
}
|
||
r482 = r49;
|
||
break reducibleJoin115;
|
||
}
|
||
r482 = r48;
|
||
break reducibleJoin115;
|
||
}
|
||
if (r482) {
|
||
regexp = RegExp('[a-z]+(?: Hat)?', 'i');
|
||
exec = regexp.exec;
|
||
regexp2 = RegExp('\\bAndroid\\b', '');
|
||
test = regexp2.test;
|
||
if (Reflect.apply(test, regexp2, [value28])) {
|
||
r48 = value28;
|
||
}
|
||
value59 = Reflect.apply(exec, regexp, [r48]);
|
||
value60 = value59 + ' Browser';
|
||
r5 = value28;
|
||
r6 = value60;
|
||
r11 = value26;
|
||
r14 = r45;
|
||
break reducibleJoin135;
|
||
}
|
||
r5 = value28;
|
||
r11 = value26;
|
||
r14 = r45;
|
||
break reducibleJoin135;
|
||
}
|
||
reducibleJoin137: while (true) {
|
||
if (r2) {
|
||
r3 = r2;
|
||
break reducibleJoin137;
|
||
}
|
||
value72 = qualify(r6);
|
||
value73 = closure2(['(?:Cloud9|CriOS|CrMo|Edge|Edg|EdgA|EdgiOS|FxiOS|HeadlessChrome|IEMobile|Iron|Opera ?Mini|OPiOS|OPR|Raven|SamsungBrowser|Silk(?!/[\\d.]+$)|UCBrowser|YaBrowser)',
|
||
|
||
'Version', value72, '(?:Firefox|Minefield|NetFront)']);
|
||
r3 = value73;
|
||
break reducibleJoin137;
|
||
}
|
||
reducibleJoin144: while (true) {
|
||
reducibleJoin143: while (true) {
|
||
if (r27 != 'iCab') {
|
||
regexp = RegExp('\\bOpera\\b', '');
|
||
value74 = regexp.test(r6);
|
||
if (value74) {
|
||
regexp = RegExp('\\bOPR\\b', '');
|
||
reducibleJoin142: while (true) {
|
||
if (regexp.test(r10)) {
|
||
value75 = 'Blink';
|
||
r43 = value75;
|
||
break reducibleJoin142;
|
||
}
|
||
r43 = value13;
|
||
break reducibleJoin142;
|
||
}
|
||
r30 = r43;
|
||
break reducibleJoin143;
|
||
}
|
||
r30 = value74;
|
||
break reducibleJoin143;
|
||
}
|
||
parseFloat = global.parseFloat;
|
||
float = parseFloat(r3);
|
||
if (float > 3) {
|
||
r18 = value12;
|
||
break reducibleJoin144;
|
||
}
|
||
regexp = RegExp('\\bOpera\\b', '');
|
||
test = regexp.test;
|
||
value74 = Reflect.apply(test, regexp, [r6]);
|
||
if (value74) {
|
||
regexp = RegExp('\\bOPR\\b', '');
|
||
test = regexp.test;
|
||
reducibleJoin142: while (true) {
|
||
if (Reflect.apply(test, regexp, [r10])) {
|
||
value75 = 'Blink';
|
||
r43 = value75;
|
||
break reducibleJoin142;
|
||
}
|
||
r43 = value13;
|
||
break reducibleJoin142;
|
||
}
|
||
r30 = r43;
|
||
break reducibleJoin143;
|
||
}
|
||
r30 = value74;
|
||
break reducibleJoin143;
|
||
}
|
||
r18 = r30;
|
||
break reducibleJoin144;
|
||
}
|
||
reducibleJoin149: while (true) {
|
||
if (r18) {
|
||
break reducibleJoin149;
|
||
}
|
||
regexp = RegExp('\\b(?:Midori|Nook|Safari)\\b', 'i');
|
||
test = regexp.test;
|
||
value76 = Reflect.apply(test, regexp, [r10]);
|
||
reducibleJoin147: while (true) {
|
||
if (value76) {
|
||
regexp = RegExp('^(?:Trident|EdgeHTML)$', '');
|
||
test = regexp.test;
|
||
value77 = !Reflect.apply(test, regexp, [r27]);
|
||
r30 = value77;
|
||
break reducibleJoin147;
|
||
}
|
||
r30 = value76;
|
||
break reducibleJoin147;
|
||
}
|
||
if (r30) {
|
||
r30 = value12;
|
||
}
|
||
r18 = r30;
|
||
break reducibleJoin149;
|
||
}
|
||
reducibleJoin156: while (true) {
|
||
if (r18) {
|
||
break reducibleJoin156;
|
||
}
|
||
value78 = !r27;
|
||
reducibleJoin152: while (true) {
|
||
if (r27) {
|
||
r30 = value78;
|
||
break reducibleJoin152;
|
||
}
|
||
regexp = RegExp('\\bMSIE\\b', 'i');
|
||
test = regexp.test;
|
||
value79 = Reflect.apply(test, regexp, [r10]);
|
||
r30 = value79;
|
||
break reducibleJoin152;
|
||
}
|
||
reducibleJoin155: while (true) {
|
||
if (r30) {
|
||
r43 = r5 == 'Mac OS' ? value15 : value11;
|
||
r30 = r43;
|
||
break reducibleJoin155;
|
||
}
|
||
break reducibleJoin155;
|
||
}
|
||
r18 = r30;
|
||
break reducibleJoin156;
|
||
}
|
||
reducibleJoin161: while (true) {
|
||
if (r18) {
|
||
break reducibleJoin161;
|
||
}
|
||
value80 = value12 == r27;
|
||
reducibleJoin159: while (true) {
|
||
if (value80) {
|
||
regexp = RegExp('\\bPlayStation\\b(?! Vita\\b)', 'i');
|
||
test = regexp.test;
|
||
value81 = Reflect.apply(test, regexp, [r6]);
|
||
r30 = value81;
|
||
break reducibleJoin159;
|
||
}
|
||
r30 = value80;
|
||
break reducibleJoin159;
|
||
}
|
||
if (r30) {
|
||
r30 = value14;
|
||
}
|
||
r18 = r30;
|
||
break reducibleJoin161;
|
||
}
|
||
reducibleJoin163: while (true) {
|
||
if (r18) {
|
||
r33 = [r18];
|
||
break reducibleJoin163;
|
||
}
|
||
r33 = r27;
|
||
break reducibleJoin163;
|
||
}
|
||
reducibleJoin185: while (true) {
|
||
reducibleJoin167: while (true) {
|
||
if (value20 != r6) {
|
||
r12 = r18;
|
||
break reducibleJoin167;
|
||
}
|
||
regexp = RegExp('; *(?:XBLWP|ZuneWP)(\\d+)', 'i');
|
||
exec = regexp.exec;
|
||
value82 = Reflect.apply(exec, regexp, [r10]);
|
||
reducibleJoin166: while (true) {
|
||
if (value82) {
|
||
r18 = value82;
|
||
break reducibleJoin166;
|
||
}
|
||
value83 = 0;
|
||
r18 = value83;
|
||
break reducibleJoin166;
|
||
}
|
||
property = r18[value25];
|
||
if (property) {
|
||
value94 = r6 + ' Mobile';
|
||
regexp = RegExp('\\+$', '');
|
||
test = regexp.test;
|
||
reducibleJoin184: while (true) {
|
||
if (Reflect.apply(test, regexp, [property])) {
|
||
r24 = property;
|
||
break reducibleJoin184;
|
||
}
|
||
value95 = property + '.x';
|
||
r24 = value95;
|
||
break reducibleJoin184;
|
||
}
|
||
value96 = 'Windows Phone ' + r24;
|
||
unshift = object.unshift;
|
||
Reflect.apply(unshift, object, ['desktop mode']);
|
||
r5 = value96;
|
||
r6 = value94;
|
||
r12 = property;
|
||
break reducibleJoin185;
|
||
}
|
||
r12 = property;
|
||
break reducibleJoin167;
|
||
}
|
||
regexp = RegExp('\\bWPDesktop\\b', 'i');
|
||
test = regexp.test;
|
||
if (Reflect.apply(test, regexp, [r10])) {
|
||
value90 = 'IE Mobile';
|
||
value91 = 'Windows Phone 8.x';
|
||
unshift = object.unshift;
|
||
Reflect.apply(unshift, object, ['desktop mode']);
|
||
if (r3) {
|
||
r5 = value91;
|
||
r6 = value90;
|
||
break reducibleJoin185;
|
||
}
|
||
regexp = RegExp('\\brv:([\\d.]+)', '');
|
||
exec = regexp.exec;
|
||
value92 = Reflect.apply(exec, regexp, [r10]);
|
||
reducibleJoin181: while (true) {
|
||
if (value92) {
|
||
r18 = value92;
|
||
break reducibleJoin181;
|
||
}
|
||
value93 = 0;
|
||
r18 = value93;
|
||
break reducibleJoin181;
|
||
}
|
||
property = r18[value25];
|
||
r3 = property;
|
||
r5 = value91;
|
||
r6 = value90;
|
||
break reducibleJoin185;
|
||
}
|
||
value84 = value20 != r6;
|
||
reducibleJoin170: while (true) {
|
||
if (value84) {
|
||
value85 = value11 == r33;
|
||
r18 = value85;
|
||
break reducibleJoin170;
|
||
}
|
||
r18 = value84;
|
||
break reducibleJoin170;
|
||
}
|
||
reducibleJoin172: while (true) {
|
||
if (r18) {
|
||
regexp = RegExp('\\brv:([\\d.]+)', '');
|
||
exec = regexp.exec;
|
||
value86 = Reflect.apply(exec, regexp, [r10]);
|
||
r12 = value86;
|
||
r18 = value86;
|
||
break reducibleJoin172;
|
||
}
|
||
break reducibleJoin172;
|
||
}
|
||
if (r18) {
|
||
reducibleJoin177: while (true) {
|
||
if (r6) {
|
||
push = object.push;
|
||
value87 = 'identifying as ' + r6;
|
||
value88 = '';
|
||
reducibleJoin176: while (true) {
|
||
if (r3) {
|
||
value89 = ' ' + r3;
|
||
r18 = value89;
|
||
break reducibleJoin176;
|
||
}
|
||
r18 = value88;
|
||
break reducibleJoin176;
|
||
}
|
||
Reflect.apply(push, object, [value87 + r18]);
|
||
break reducibleJoin177;
|
||
}
|
||
break reducibleJoin177;
|
||
}
|
||
property = r12[value25];
|
||
r3 = property;
|
||
r6 = value20;
|
||
break reducibleJoin185;
|
||
}
|
||
break reducibleJoin185;
|
||
}
|
||
reducibleJoin254: while (true) {
|
||
if (value) {
|
||
value97 = 'number';
|
||
reducibleJoin188: while (true) {
|
||
if (value8 != r28) {
|
||
global = r28.global;
|
||
value98 = typeof global;
|
||
r43 = value98;
|
||
break reducibleJoin188;
|
||
}
|
||
r43 = value97;
|
||
break reducibleJoin188;
|
||
}
|
||
regexp = RegExp('^(?:boolean|number|string|undefined)$', '');
|
||
test = regexp.test;
|
||
value99 = Reflect.apply(test, regexp, [r43]);
|
||
reducibleJoin192: while (true) {
|
||
if (value99) {
|
||
r27 = value99;
|
||
break reducibleJoin192;
|
||
}
|
||
value100 = r43 === 'object';
|
||
reducibleJoin191: while (true) {
|
||
if (value100) {
|
||
global = r28.global;
|
||
value101 = !global;
|
||
r43 = value101;
|
||
break reducibleJoin191;
|
||
}
|
||
r43 = value100;
|
||
break reducibleJoin191;
|
||
}
|
||
r27 = r43;
|
||
break reducibleJoin192;
|
||
}
|
||
if (r27) {
|
||
getClassOfBinding = getClassOf;
|
||
runtime = r28.runtime;
|
||
if (getClassOfBinding(runtime) == r42) {
|
||
value112 = 'Adobe AIR';
|
||
flash = runtime.flash;
|
||
system = flash.system;
|
||
Capabilities = system.Capabilities;
|
||
os = Capabilities.os;
|
||
r5 = os;
|
||
r6 = value112;
|
||
r12 = runtime;
|
||
r27 = r33;
|
||
r30 = r10;
|
||
} else {
|
||
getClassOfBinding = getClassOf;
|
||
phantom = r28.phantom;
|
||
if (getClassOfBinding(phantom) == r40) {
|
||
version = phantom.version;
|
||
if (!version) {
|
||
version = value8;
|
||
}
|
||
reducibleJoin212: while (true) {
|
||
if (version) {
|
||
major = version.major;
|
||
value109 = major + '.';
|
||
minor = version.minor;
|
||
value110 = value109 + minor;
|
||
patch = version.patch;
|
||
value111 = value110 + '.' + patch;
|
||
r35 = value111;
|
||
break reducibleJoin212;
|
||
}
|
||
r35 = version;
|
||
break reducibleJoin212;
|
||
}
|
||
r3 = r35;
|
||
r6 = value17;
|
||
r12 = version;
|
||
r27 = r33;
|
||
r30 = r10;
|
||
} else {
|
||
documentMode = r41.documentMode;
|
||
reducibleJoin251: while (true) {
|
||
reducibleJoin199: while (true) {
|
||
if (value97 !== typeof documentMode) {
|
||
r12 = phantom;
|
||
value103 = value97 === typeof r41.documentMode;
|
||
if (value103) {
|
||
regexp = RegExp('^(?:Chrome|Firefox)\\b', '');
|
||
test = regexp.test;
|
||
value104 = Reflect.apply(test, regexp, [r6]);
|
||
r40 = value104;
|
||
break reducibleJoin199;
|
||
}
|
||
r40 = value103;
|
||
break reducibleJoin199;
|
||
}
|
||
regexp = RegExp('\\bTrident\\/(\\d+)', 'i');
|
||
exec = regexp.exec;
|
||
value102 = Reflect.apply(exec, regexp, [r10]);
|
||
if (value102) {
|
||
items10 = [r3];
|
||
items10[1] = r41.documentMode;
|
||
value107 = Number(value102[value25]) + 4;
|
||
reducibleJoin205: while (true) {
|
||
if (value107 == items10[value25]) {
|
||
break reducibleJoin205;
|
||
}
|
||
push = object.push;
|
||
Reflect.apply(push, object, ['IE ' + items10[value25] + ' mode']);
|
||
reducibleJoin204: while (true) {
|
||
if (r33) {
|
||
r33[value25] = '';
|
||
break reducibleJoin204;
|
||
}
|
||
break reducibleJoin204;
|
||
}
|
||
items10[value25] = value107;
|
||
break reducibleJoin205;
|
||
}
|
||
if (value20 == r6) {
|
||
String = global.String;
|
||
property = items10[value25];
|
||
toFixed = property.toFixed;
|
||
value108 = String(Reflect.apply(toFixed, property, [value25]));
|
||
r40 = value108;
|
||
} else {
|
||
property = items10[0];
|
||
r40 = property;
|
||
}
|
||
r3 = r40;
|
||
r12 = value107;
|
||
r27 = r33;
|
||
r30 = r10;
|
||
break reducibleJoin251;
|
||
}
|
||
r12 = value102;
|
||
documentMode = r41.documentMode;
|
||
value103 = value97 === typeof documentMode;
|
||
if (value103) {
|
||
regexp = RegExp('^(?:Chrome|Firefox)\\b', '');
|
||
test = regexp.test;
|
||
value104 = Reflect.apply(test, regexp, [r6]);
|
||
r40 = value104;
|
||
break reducibleJoin199;
|
||
}
|
||
r40 = value103;
|
||
break reducibleJoin199;
|
||
}
|
||
if (r40) {
|
||
push = object.push;
|
||
Reflect.apply(push, object, ['masking as ' + r6 + ' ' + r3]);
|
||
value105 = '11.0';
|
||
value106 = 'Windows';
|
||
r3 = value105;
|
||
r5 = value106;
|
||
r6 = value20;
|
||
r27 = ['Trident'];
|
||
r30 = r10;
|
||
break reducibleJoin251;
|
||
}
|
||
r27 = r33;
|
||
r30 = r10;
|
||
break reducibleJoin251;
|
||
}
|
||
}
|
||
}
|
||
} else {
|
||
reducibleJoin218: while (true) {
|
||
if (r39) {
|
||
lang = r39.lang;
|
||
System = lang.System;
|
||
getProperty = System.getProperty;
|
||
value113 = Reflect.apply(getProperty, System, ['os.arch']);
|
||
reducibleJoin217: while (true) {
|
||
if (r5) {
|
||
r40 = r5;
|
||
break reducibleJoin217;
|
||
}
|
||
getProperty = System.getProperty;
|
||
value114 = Reflect.apply(getProperty, System, ['os.name']);
|
||
value115 = value114 + ' ';
|
||
getProperty = System.getProperty;
|
||
value116 = value115 + Reflect.apply(getProperty, System, ['os.version']);
|
||
r40 = value116;
|
||
break reducibleJoin217;
|
||
}
|
||
r5 = r40;
|
||
r12 = System;
|
||
r35 = value113;
|
||
break reducibleJoin218;
|
||
}
|
||
r35 = r10;
|
||
break reducibleJoin218;
|
||
}
|
||
if (r38) {
|
||
reducibleJoin236: while (true) {
|
||
reduciblePort249: while (true) {
|
||
exceptionLanding243: while (true) {
|
||
try {
|
||
require = r28.require;
|
||
} catch (error) {
|
||
break exceptionLanding243;
|
||
}
|
||
break reducibleJoin236;
|
||
}
|
||
system = r28.system;
|
||
reducibleJoin245: while (true) {
|
||
if (system) {
|
||
global = system.global;
|
||
system2 = global.system;
|
||
system3 = r28.system;
|
||
value126 = system2 == system3;
|
||
r38 = value126;
|
||
break reducibleJoin245;
|
||
}
|
||
r38 = system;
|
||
break reducibleJoin245;
|
||
}
|
||
reducibleJoin249: while (true) {
|
||
if (r38) {
|
||
value127 = 'Narwhal';
|
||
if (r5) {
|
||
r6 = value127;
|
||
r12 = system;
|
||
break reducibleJoin249;
|
||
}
|
||
os = system[0].os;
|
||
r38 = os || value8;
|
||
r5 = r38;
|
||
r6 = value127;
|
||
r12 = system;
|
||
break reducibleJoin249;
|
||
}
|
||
r12 = system;
|
||
break reducibleJoin249;
|
||
}
|
||
break reduciblePort249;
|
||
}
|
||
reducibleJoin251: while (true) {
|
||
if (r6) {
|
||
r27 = r33;
|
||
r30 = r35;
|
||
break reducibleJoin251;
|
||
}
|
||
value128 = 'Rhino';
|
||
r6 = value128;
|
||
r27 = r33;
|
||
r30 = r35;
|
||
break reducibleJoin251;
|
||
}
|
||
reducibleJoin253: while (true) {
|
||
if (r5) {
|
||
value129 = format(r5);
|
||
r33 = value129;
|
||
break reducibleJoin253;
|
||
}
|
||
r33 = r5;
|
||
break reducibleJoin253;
|
||
}
|
||
r5 = r33;
|
||
r18 = r30;
|
||
r24 = r27;
|
||
break reducibleJoin254;
|
||
}
|
||
try {
|
||
moduleValue = Reflect.apply(require, r28, ['ringo/engine']);
|
||
} catch (error) {
|
||
break exceptionLanding243;
|
||
}
|
||
try {
|
||
version = moduleValue.version;
|
||
} catch (error) {
|
||
break exceptionLanding243;
|
||
}
|
||
try {
|
||
join = version.join;
|
||
} catch (error) {
|
||
break exceptionLanding243;
|
||
}
|
||
try {
|
||
value124 = Reflect.apply(join, version, ['.']);
|
||
} catch (error) {
|
||
break exceptionLanding243;
|
||
}
|
||
value125 = 'RingoJS';
|
||
r3 = value124;
|
||
r6 = value125;
|
||
reducibleJoin251: while (true) {
|
||
if (r6) {
|
||
r27 = r33;
|
||
r30 = r35;
|
||
break reducibleJoin251;
|
||
}
|
||
value128 = 'Rhino';
|
||
r6 = value128;
|
||
r27 = r33;
|
||
r30 = r35;
|
||
break reducibleJoin251;
|
||
}
|
||
} else {
|
||
process = r28.process;
|
||
value117 = typeof process === 'object';
|
||
reducibleJoin221: while (true) {
|
||
if (value117) {
|
||
process = r28.process;
|
||
browser = process.browser;
|
||
value118 = !browser;
|
||
r38 = value118;
|
||
break reducibleJoin221;
|
||
}
|
||
r38 = value117;
|
||
break reducibleJoin221;
|
||
}
|
||
reducibleJoin223: while (true) {
|
||
if (r38) {
|
||
process = r28.process;
|
||
r12 = process;
|
||
r38 = process;
|
||
break reducibleJoin223;
|
||
}
|
||
break reducibleJoin223;
|
||
}
|
||
reducibleJoin251: while (true) {
|
||
if (r38) {
|
||
versions = r12.versions;
|
||
reducibleJoin229: while (true) {
|
||
if (typeof versions !== 'object') {
|
||
break reducibleJoin229;
|
||
}
|
||
versions = r12.versions;
|
||
electron = versions.electron;
|
||
if (typeof electron === 'string') {
|
||
push = object.push;
|
||
versions = r12.versions;
|
||
Reflect.apply(push, object, ['Node ' + versions.node]);
|
||
value121 = 'Electron';
|
||
versions = r12.versions;
|
||
electron = versions.electron;
|
||
r3 = electron;
|
||
r6 = value121;
|
||
break reducibleJoin229;
|
||
}
|
||
versions = r12.versions;
|
||
nw = versions.nw;
|
||
if (typeof nw !== 'string') {
|
||
break reducibleJoin229;
|
||
}
|
||
push = object.push;
|
||
value119 = 'Chromium ' + r3;
|
||
versions = r12.versions;
|
||
node = versions.node;
|
||
Reflect.apply(push, object, [value119, 'Node ' + node]);
|
||
value120 = 'NW.js';
|
||
versions = r12.versions;
|
||
nw = versions.nw;
|
||
r3 = nw;
|
||
r6 = value120;
|
||
break reducibleJoin229;
|
||
}
|
||
reducibleJoin233: while (true) {
|
||
if (r6) {
|
||
r38 = r35;
|
||
break reducibleJoin233;
|
||
}
|
||
value122 = 'Node.js';
|
||
arch = r12.arch;
|
||
platform = r12.platform;
|
||
regexp = RegExp('[\\d.]+', '');
|
||
exec = regexp.exec;
|
||
version = r12.version;
|
||
value123 = Reflect.apply(exec, regexp, [version]);
|
||
reducibleJoin232: while (true) {
|
||
if (value123) {
|
||
property = value123[0];
|
||
r40 = property;
|
||
break reducibleJoin232;
|
||
}
|
||
r40 = value8;
|
||
break reducibleJoin232;
|
||
}
|
||
r3 = r40;
|
||
r5 = platform;
|
||
r6 = value122;
|
||
r38 = arch;
|
||
break reducibleJoin233;
|
||
}
|
||
r27 = r33;
|
||
r30 = r38;
|
||
break reducibleJoin251;
|
||
}
|
||
r27 = r33;
|
||
r30 = r35;
|
||
break reducibleJoin251;
|
||
}
|
||
}
|
||
}
|
||
reducibleJoin253: while (true) {
|
||
if (r5) {
|
||
value129 = format(r5);
|
||
r33 = value129;
|
||
break reducibleJoin253;
|
||
}
|
||
r33 = r5;
|
||
break reducibleJoin253;
|
||
}
|
||
r5 = r33;
|
||
r18 = r30;
|
||
r24 = r27;
|
||
break reducibleJoin254;
|
||
}
|
||
r18 = r10;
|
||
r24 = r33;
|
||
break reducibleJoin254;
|
||
}
|
||
reducibleJoin264: while (true) {
|
||
if (r3) {
|
||
regexp = RegExp('(?:[ab]|dp|pre|[ab]\\d+pre)(?:\\d+\\+?)?$', 'i');
|
||
exec = regexp.exec;
|
||
value130 = Reflect.apply(exec, regexp, [r3]);
|
||
reducibleJoin259: while (true) {
|
||
if (value130) {
|
||
r27 = value130;
|
||
break reducibleJoin259;
|
||
}
|
||
regexp = RegExp('(?:alpha|beta)(?: ?\\d)?', 'i');
|
||
exec = regexp.exec;
|
||
value131 = r10 + ';';
|
||
reducibleJoin258: while (true) {
|
||
if (value) {
|
||
appMinorVersion = r20.appMinorVersion;
|
||
r33 = appMinorVersion;
|
||
break reducibleJoin258;
|
||
}
|
||
r33 = value;
|
||
break reducibleJoin258;
|
||
}
|
||
value132 = Reflect.apply(exec, regexp, [value131 + r33]);
|
||
r27 = value132;
|
||
break reducibleJoin259;
|
||
}
|
||
reducibleJoin263: while (true) {
|
||
if (r27) {
|
||
break reducibleJoin263;
|
||
}
|
||
regexp = RegExp('\\bMinefield\\b', 'i');
|
||
test = regexp.test;
|
||
value133 = Reflect.apply(test, regexp, [r10]);
|
||
reducibleJoin262: while (true) {
|
||
if (value133) {
|
||
value134 = 'a';
|
||
r33 = value134;
|
||
break reducibleJoin262;
|
||
}
|
||
r33 = value133;
|
||
break reducibleJoin262;
|
||
}
|
||
r27 = r33;
|
||
break reducibleJoin263;
|
||
}
|
||
r12 = r27;
|
||
r30 = r27;
|
||
break reducibleJoin264;
|
||
}
|
||
r30 = r3;
|
||
break reducibleJoin264;
|
||
}
|
||
reducibleJoin270: while (true) {
|
||
if (r30) {
|
||
regexp = RegExp('b', 'i');
|
||
test = regexp.test;
|
||
value135 = Reflect.apply(test, regexp, [r12]);
|
||
value136 = 'alpha';
|
||
reducibleJoin267: while (true) {
|
||
if (value135) {
|
||
value137 = 'beta';
|
||
r30 = value137;
|
||
break reducibleJoin267;
|
||
}
|
||
r30 = value136;
|
||
break reducibleJoin267;
|
||
}
|
||
replace = r3.replace;
|
||
RegExp = global.RegExp;
|
||
value138 = RegExp(r12 + '\\+?$');
|
||
value139 = '';
|
||
value140 = Reflect.apply(replace, r3, [value138, value139]);
|
||
if (r30 === 'beta') {
|
||
r34 = r37;
|
||
}
|
||
value141 = value140 + r34;
|
||
regexp = RegExp('\\d+\\+?', '');
|
||
exec = regexp.exec;
|
||
value142 = Reflect.apply(exec, regexp, [r12]);
|
||
r33 = value142 || value139;
|
||
value143 = value141 + r33;
|
||
r3 = value143;
|
||
r27 = r30;
|
||
break reducibleJoin270;
|
||
}
|
||
r27 = value8;
|
||
break reducibleJoin270;
|
||
}
|
||
reducibleJoin353: while (true) {
|
||
reduciblePort354: while (true) {
|
||
exceptionLanding345: while (true) {
|
||
if (r6 == 'Fennec') {
|
||
break reducibleJoin353;
|
||
}
|
||
if (r6 == 'Firefox') {
|
||
regexp = RegExp('\\b(?:Android|Firefox OS|KaiOS)\\b', '');
|
||
if (regexp.test(r5)) {
|
||
break reducibleJoin353;
|
||
}
|
||
}
|
||
if (r6 == 'Maxthon') {
|
||
if (r3) {
|
||
replace = r3.replace;
|
||
value179 = Reflect.apply(replace, r3, [RegExp('\\.[\\d.]+', ''), '.x']);
|
||
r2 = r14;
|
||
r3 = value179;
|
||
r9 = r24;
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
}
|
||
regexp = RegExp('\\bXbox\\b', 'i');
|
||
test = regexp.test;
|
||
if (Reflect.apply(test, regexp, [r14])) {
|
||
if (r14 == 'Xbox 360') {
|
||
r5 = value8;
|
||
}
|
||
value177 = r14 == 'Xbox 360';
|
||
reducibleJoin350: while (true) {
|
||
if (value177) {
|
||
regexp = RegExp('\\bIEMobile\\b', '');
|
||
test = regexp.test;
|
||
value178 = Reflect.apply(test, regexp, [r10]);
|
||
r25 = value178;
|
||
break reducibleJoin350;
|
||
}
|
||
r25 = value177;
|
||
break reducibleJoin350;
|
||
}
|
||
if (r25) {
|
||
unshift = object.unshift;
|
||
Reflect.apply(unshift, object, ['mobile mode']);
|
||
r2 = r14;
|
||
r9 = r24;
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
r2 = r14;
|
||
r9 = r24;
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
regexp = RegExp('^(?:Chrome|IE|Opera)$', '');
|
||
test = regexp.test;
|
||
if (!Reflect.apply(test, regexp, [r6])) {
|
||
if (r6) {
|
||
if (!r14) {
|
||
regexp = RegExp('Browser|Mobi', '');
|
||
test = regexp.test;
|
||
if (!Reflect.apply(test, regexp, [r6])) {
|
||
if (r5 != 'Windows CE') {
|
||
regexp = RegExp('Mobi', 'i');
|
||
test = regexp.test;
|
||
if (!Reflect.apply(test, regexp, [r10])) {
|
||
if (value20 == r6) {
|
||
if (value) {
|
||
try {
|
||
external = r28.external;
|
||
} catch (error) {
|
||
break exceptionLanding345;
|
||
}
|
||
try {
|
||
value175 = value8 !== external;
|
||
} catch (error) {
|
||
break exceptionLanding345;
|
||
}
|
||
if (value175) {
|
||
r2 = r14;
|
||
r9 = r24;
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
try {
|
||
unshift = object.unshift;
|
||
} catch (error) {
|
||
break exceptionLanding345;
|
||
}
|
||
try {
|
||
Reflect.apply(unshift, object, ['platform preview']);
|
||
} catch (error) {
|
||
break exceptionLanding345;
|
||
}
|
||
r2 = r14;
|
||
r9 = r24;
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
}
|
||
regexp = RegExp('\\bBlackBerry\\b', '');
|
||
test = regexp.test;
|
||
if (!Reflect.apply(test, regexp, [r14])) {
|
||
regexp = RegExp('\\bBB10\\b', '');
|
||
test = regexp.test;
|
||
if (!Reflect.apply(test, regexp, [r10])) {
|
||
value148 = this != forOwn_7372;
|
||
reducibleJoin292: while (true) {
|
||
if (value148) {
|
||
value149 = r14 != 'Wii';
|
||
r30 = value149;
|
||
break reducibleJoin292;
|
||
}
|
||
r30 = value148;
|
||
break reducibleJoin292;
|
||
}
|
||
reducibleJoin319: while (true) {
|
||
if (r30) {
|
||
r2 = value && r9;
|
||
reducibleJoin298: while (true) {
|
||
if (r2) {
|
||
break reducibleJoin298;
|
||
}
|
||
regexp = RegExp('Opera', '');
|
||
test = regexp.test;
|
||
value150 = Reflect.apply(test, regexp, [r6]);
|
||
reducibleJoin297: while (true) {
|
||
if (value150) {
|
||
regexp = RegExp('\\b(?:MSIE|Firefox)\\b', 'i');
|
||
test = regexp.test;
|
||
value151 = Reflect.apply(test, regexp, [r10]);
|
||
r9 = value151;
|
||
break reducibleJoin297;
|
||
}
|
||
r9 = value150;
|
||
break reducibleJoin297;
|
||
}
|
||
r2 = r9;
|
||
break reducibleJoin298;
|
||
}
|
||
reducibleJoin302: while (true) {
|
||
if (r2) {
|
||
break reducibleJoin302;
|
||
}
|
||
value152 = r6 == 'Firefox';
|
||
reducibleJoin301: while (true) {
|
||
if (value152) {
|
||
regexp = RegExp('\\bOS X (?:\\d+\\.){2,}', '');
|
||
test = regexp.test;
|
||
value153 = Reflect.apply(test, regexp, [r5]);
|
||
r9 = value153;
|
||
break reducibleJoin301;
|
||
}
|
||
r9 = value152;
|
||
break reducibleJoin301;
|
||
}
|
||
r2 = r9;
|
||
break reducibleJoin302;
|
||
}
|
||
reducibleJoin318: while (true) {
|
||
if (r2) {
|
||
break reducibleJoin318;
|
||
}
|
||
value154 = value20 == r6;
|
||
reducibleJoin317: while (true) {
|
||
if (value154) {
|
||
reducibleJoin306: while (true) {
|
||
if (r5) {
|
||
regexp = RegExp('^Win', '');
|
||
test = regexp.test;
|
||
value155 = !Reflect.apply(test, regexp,
|
||
[r5]);
|
||
r13 = value155;
|
||
break reducibleJoin306;
|
||
}
|
||
r13 = r5;
|
||
break reducibleJoin306;
|
||
}
|
||
reducibleJoin308: while (true) {
|
||
if (r13) {
|
||
value156 = r3 > 5.5;
|
||
r13 = value156;
|
||
break reducibleJoin308;
|
||
}
|
||
break reducibleJoin308;
|
||
}
|
||
reducibleJoin312: while (true) {
|
||
if (r13) {
|
||
break reducibleJoin312;
|
||
}
|
||
regexp = RegExp('\\bWindows XP\\b', '');
|
||
test = regexp.test;
|
||
value157 = Reflect.apply(test, regexp, [r5]);
|
||
reducibleJoin311: while (true) {
|
||
if (value157) {
|
||
value158 = r3 > 8;
|
||
r31 = value158;
|
||
break reducibleJoin311;
|
||
}
|
||
r31 = value157;
|
||
break reducibleJoin311;
|
||
}
|
||
r13 = r31;
|
||
break reducibleJoin312;
|
||
}
|
||
reducibleJoin316: while (true) {
|
||
if (r13) {
|
||
break reducibleJoin316;
|
||
}
|
||
value159 = r3 == 8;
|
||
reducibleJoin315: while (true) {
|
||
if (value159) {
|
||
regexp = RegExp('\\bTrident\\b', '');
|
||
test = regexp.test;
|
||
value160 = !Reflect.apply(test, regexp,
|
||
[r10]);
|
||
r31 = value160;
|
||
break reducibleJoin315;
|
||
}
|
||
r31 = value159;
|
||
break reducibleJoin315;
|
||
}
|
||
r13 = r31;
|
||
break reducibleJoin316;
|
||
}
|
||
r9 = r13;
|
||
break reducibleJoin317;
|
||
}
|
||
r9 = value154;
|
||
break reducibleJoin317;
|
||
}
|
||
r2 = r9;
|
||
break reducibleJoin318;
|
||
}
|
||
r30 = r2;
|
||
break reducibleJoin319;
|
||
}
|
||
break reducibleJoin319;
|
||
}
|
||
reducibleJoin321: while (true) {
|
||
if (r30) {
|
||
binding = env0_3;
|
||
test = binding.test;
|
||
parse_7378Binding = parse_7378;
|
||
call = parse_7378Binding.call;
|
||
forOwn_7372Binding = forOwn_7372;
|
||
replace = r10.replace;
|
||
value161 = Reflect.apply(replace, r10, [env0_3, '']);
|
||
value162 = Reflect.apply(call, parse_7378Binding,
|
||
[forOwn_7372Binding,
|
||
value161 + ';']);
|
||
value163 = !Reflect.apply(test, binding, [value162]);
|
||
r12 = value162;
|
||
r30 = value163;
|
||
break reducibleJoin321;
|
||
}
|
||
break reducibleJoin321;
|
||
}
|
||
reducibleJoin323: while (true) {
|
||
if (r30) {
|
||
name = r12.name;
|
||
r30 = name;
|
||
break reducibleJoin323;
|
||
}
|
||
break reducibleJoin323;
|
||
}
|
||
if (r30) {
|
||
name = r12.name;
|
||
value164 = 'ing as ' + name;
|
||
version = r12.version;
|
||
value165 = '';
|
||
reducibleJoin326: while (true) {
|
||
if (version) {
|
||
value166 = ' ' + version;
|
||
r30 = value166;
|
||
break reducibleJoin326;
|
||
}
|
||
r30 = value165;
|
||
break reducibleJoin326;
|
||
}
|
||
value167 = value164 + r30;
|
||
binding = env0_3;
|
||
test = binding.test;
|
||
if (Reflect.apply(test, binding, [r6])) {
|
||
regexp = RegExp('\\bIE\\b', '');
|
||
test = regexp.test;
|
||
value170 = Reflect.apply(test, regexp, [value167]);
|
||
reducibleJoin333: while (true) {
|
||
if (value170) {
|
||
value171 = r5 == 'Mac OS';
|
||
r30 = value171;
|
||
break reducibleJoin333;
|
||
}
|
||
r30 = value170;
|
||
break reducibleJoin333;
|
||
}
|
||
if (r30) {
|
||
r5 = value8;
|
||
}
|
||
value172 = 'identify' + value167;
|
||
r12 = value172;
|
||
} else {
|
||
value168 = 'mask' + value167;
|
||
reducibleJoin329: while (true) {
|
||
if (r36) {
|
||
formatBinding = format;
|
||
replace = r36.replace;
|
||
value169 = formatBinding(Reflect.apply(replace, r36,
|
||
[RegExp('([a-z])([A-Z])',
|
||
'g'),
|
||
'$1 $2']));
|
||
r30 = value169;
|
||
break reducibleJoin329;
|
||
}
|
||
r30 = value18;
|
||
break reducibleJoin329;
|
||
}
|
||
regexp = RegExp('\\bIE\\b', '');
|
||
test = regexp.test;
|
||
if (Reflect.apply(test, regexp, [value168])) {
|
||
r5 = value8;
|
||
}
|
||
if (value) {
|
||
r6 = r30;
|
||
r12 = value168;
|
||
} else {
|
||
r3 = value8;
|
||
r6 = r30;
|
||
r12 = value168;
|
||
}
|
||
}
|
||
push = object.push;
|
||
Reflect.apply(push, object, [r12]);
|
||
r2 = r14;
|
||
r9 = ['Presto'];
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
r2 = r14;
|
||
r9 = r24;
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
}
|
||
RegExp = global.RegExp;
|
||
replace = r14.replace;
|
||
value145 = RegExp(Reflect.apply(replace, r14, [RegExp(' +', 'g'),
|
||
' *']) + '/([.\\d]+)',
|
||
'i');
|
||
value146 = value145.exec(r10);
|
||
reducibleJoin288: while (true) {
|
||
if (value146) {
|
||
r30 = value146;
|
||
break reducibleJoin288;
|
||
}
|
||
value147 = 0;
|
||
r30 = value147;
|
||
break reducibleJoin288;
|
||
}
|
||
r30 = r30[value25] || r3;
|
||
if (r30) {
|
||
items12 = [r30];
|
||
regexp = RegExp('BB10', '');
|
||
items12[1] = regexp.test(r10);
|
||
value173 = 'Device Software';
|
||
reducibleJoin338: while (true) {
|
||
if (items12[value25]) {
|
||
env0_2 = value8;
|
||
r30 = value23;
|
||
r31 = value8;
|
||
r34 = value23;
|
||
break reducibleJoin338;
|
||
}
|
||
r30 = r11;
|
||
r31 = r14;
|
||
r34 = value173;
|
||
break reducibleJoin338;
|
||
}
|
||
value174 = r34 + ' ' + items12[0];
|
||
r2 = r31;
|
||
r3 = value8;
|
||
r5 = value174;
|
||
r9 = r24;
|
||
r13 = r30;
|
||
break reduciblePort354;
|
||
}
|
||
r12 = r30;
|
||
value148 = this != forOwn_7372;
|
||
reducibleJoin292: while (true) {
|
||
if (value148) {
|
||
value149 = r14 != 'Wii';
|
||
r30 = value149;
|
||
break reducibleJoin292;
|
||
}
|
||
r30 = value148;
|
||
break reducibleJoin292;
|
||
}
|
||
reducibleJoin319: while (true) {
|
||
if (r30) {
|
||
r2 = value && r9;
|
||
reducibleJoin298: while (true) {
|
||
if (r2) {
|
||
break reducibleJoin298;
|
||
}
|
||
regexp = RegExp('Opera', '');
|
||
test = regexp.test;
|
||
value150 = Reflect.apply(test, regexp, [r6]);
|
||
reducibleJoin297: while (true) {
|
||
if (value150) {
|
||
regexp = RegExp('\\b(?:MSIE|Firefox)\\b', 'i');
|
||
test = regexp.test;
|
||
value151 = Reflect.apply(test, regexp, [r10]);
|
||
r9 = value151;
|
||
break reducibleJoin297;
|
||
}
|
||
r9 = value150;
|
||
break reducibleJoin297;
|
||
}
|
||
r2 = r9;
|
||
break reducibleJoin298;
|
||
}
|
||
reducibleJoin302: while (true) {
|
||
if (r2) {
|
||
break reducibleJoin302;
|
||
}
|
||
value152 = r6 == 'Firefox';
|
||
reducibleJoin301: while (true) {
|
||
if (value152) {
|
||
regexp = RegExp('\\bOS X (?:\\d+\\.){2,}', '');
|
||
test = regexp.test;
|
||
value153 = Reflect.apply(test, regexp, [r5]);
|
||
r9 = value153;
|
||
break reducibleJoin301;
|
||
}
|
||
r9 = value152;
|
||
break reducibleJoin301;
|
||
}
|
||
r2 = r9;
|
||
break reducibleJoin302;
|
||
}
|
||
reducibleJoin318: while (true) {
|
||
if (r2) {
|
||
break reducibleJoin318;
|
||
}
|
||
value154 = value20 == r6;
|
||
reducibleJoin317: while (true) {
|
||
if (value154) {
|
||
reducibleJoin306: while (true) {
|
||
if (r5) {
|
||
regexp = RegExp('^Win', '');
|
||
test = regexp.test;
|
||
value155 = !Reflect.apply(test, regexp, [r5]);
|
||
r13 = value155;
|
||
break reducibleJoin306;
|
||
}
|
||
r13 = r5;
|
||
break reducibleJoin306;
|
||
}
|
||
reducibleJoin308: while (true) {
|
||
if (r13) {
|
||
value156 = r3 > 5.5;
|
||
r13 = value156;
|
||
break reducibleJoin308;
|
||
}
|
||
break reducibleJoin308;
|
||
}
|
||
reducibleJoin312: while (true) {
|
||
if (r13) {
|
||
break reducibleJoin312;
|
||
}
|
||
regexp = RegExp('\\bWindows XP\\b', '');
|
||
test = regexp.test;
|
||
value157 = Reflect.apply(test, regexp, [r5]);
|
||
reducibleJoin311: while (true) {
|
||
if (value157) {
|
||
value158 = r3 > 8;
|
||
r31 = value158;
|
||
break reducibleJoin311;
|
||
}
|
||
r31 = value157;
|
||
break reducibleJoin311;
|
||
}
|
||
r13 = r31;
|
||
break reducibleJoin312;
|
||
}
|
||
reducibleJoin316: while (true) {
|
||
if (r13) {
|
||
break reducibleJoin316;
|
||
}
|
||
value159 = r3 == 8;
|
||
reducibleJoin315: while (true) {
|
||
if (value159) {
|
||
regexp = RegExp('\\bTrident\\b', '');
|
||
test = regexp.test;
|
||
value160 = !Reflect.apply(test, regexp, [r10]);
|
||
r31 = value160;
|
||
break reducibleJoin315;
|
||
}
|
||
r31 = value159;
|
||
break reducibleJoin315;
|
||
}
|
||
r13 = r31;
|
||
break reducibleJoin316;
|
||
}
|
||
r9 = r13;
|
||
break reducibleJoin317;
|
||
}
|
||
r9 = value154;
|
||
break reducibleJoin317;
|
||
}
|
||
r2 = r9;
|
||
break reducibleJoin318;
|
||
}
|
||
r30 = r2;
|
||
break reducibleJoin319;
|
||
}
|
||
break reducibleJoin319;
|
||
}
|
||
reducibleJoin321: while (true) {
|
||
if (r30) {
|
||
binding = env0_3;
|
||
test = binding.test;
|
||
parse_7378Binding = parse_7378;
|
||
call = parse_7378Binding.call;
|
||
forOwn_7372Binding = forOwn_7372;
|
||
replace = r10.replace;
|
||
value161 = Reflect.apply(replace, r10, [env0_3, '']);
|
||
value162 = Reflect.apply(call, parse_7378Binding, [forOwn_7372Binding,
|
||
value161 + ';']);
|
||
value163 = !Reflect.apply(test, binding, [value162]);
|
||
r12 = value162;
|
||
r30 = value163;
|
||
break reducibleJoin321;
|
||
}
|
||
break reducibleJoin321;
|
||
}
|
||
reducibleJoin323: while (true) {
|
||
if (r30) {
|
||
name = r12.name;
|
||
r30 = name;
|
||
break reducibleJoin323;
|
||
}
|
||
break reducibleJoin323;
|
||
}
|
||
if (r30) {
|
||
name = r12.name;
|
||
value164 = 'ing as ' + name;
|
||
version = r12.version;
|
||
value165 = '';
|
||
reducibleJoin326: while (true) {
|
||
if (version) {
|
||
value166 = ' ' + version;
|
||
r30 = value166;
|
||
break reducibleJoin326;
|
||
}
|
||
r30 = value165;
|
||
break reducibleJoin326;
|
||
}
|
||
value167 = value164 + r30;
|
||
binding = env0_3;
|
||
if (binding.test(r6)) {
|
||
regexp = RegExp('\\bIE\\b', '');
|
||
value170 = regexp.test(value167);
|
||
reducibleJoin333: while (true) {
|
||
if (value170) {
|
||
value171 = r5 == 'Mac OS';
|
||
r30 = value171;
|
||
break reducibleJoin333;
|
||
}
|
||
r30 = value170;
|
||
break reducibleJoin333;
|
||
}
|
||
if (r30) {
|
||
r5 = value8;
|
||
}
|
||
value172 = 'identify' + value167;
|
||
r12 = value172;
|
||
} else {
|
||
value168 = 'mask' + value167;
|
||
reducibleJoin329: while (true) {
|
||
if (r36) {
|
||
formatBinding = format;
|
||
replace = r36.replace;
|
||
value169 = formatBinding(Reflect.apply(replace, r36,
|
||
[RegExp('([a-z])([A-Z])',
|
||
'g'),
|
||
'$1 $2']));
|
||
r30 = value169;
|
||
break reducibleJoin329;
|
||
}
|
||
r30 = value18;
|
||
break reducibleJoin329;
|
||
}
|
||
regexp = RegExp('\\bIE\\b', '');
|
||
if (regexp.test(value168)) {
|
||
r5 = value8;
|
||
}
|
||
if (value) {
|
||
r6 = r30;
|
||
r12 = value168;
|
||
} else {
|
||
r3 = value8;
|
||
r6 = r30;
|
||
r12 = value168;
|
||
}
|
||
}
|
||
push = object.push;
|
||
Reflect.apply(push, object, [r12]);
|
||
r2 = r14;
|
||
r9 = ['Presto'];
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
r2 = r14;
|
||
r9 = r24;
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
}
|
||
value176 = r6 + ' Mobile';
|
||
r2 = r14;
|
||
r6 = value176;
|
||
r9 = r24;
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
}
|
||
}
|
||
if (value20 == r6) {
|
||
if (value) {
|
||
try {
|
||
external = r28.external;
|
||
} catch (error) {
|
||
break exceptionLanding345;
|
||
}
|
||
try {
|
||
value175 = value8 !== external;
|
||
} catch (error) {
|
||
break exceptionLanding345;
|
||
}
|
||
if (value175) {
|
||
r2 = r14;
|
||
r9 = r24;
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
try {
|
||
unshift = object.unshift;
|
||
} catch (error) {
|
||
break exceptionLanding345;
|
||
}
|
||
try {
|
||
Reflect.apply(unshift, object, ['platform preview']);
|
||
} catch (error) {
|
||
break exceptionLanding345;
|
||
}
|
||
r2 = r14;
|
||
r9 = r24;
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
}
|
||
regexp = RegExp('\\bBlackBerry\\b', '');
|
||
test = regexp.test;
|
||
if (!Reflect.apply(test, regexp, [r14])) {
|
||
regexp = RegExp('\\bBB10\\b', '');
|
||
test = regexp.test;
|
||
if (!Reflect.apply(test, regexp, [r10])) {
|
||
value148 = this != forOwn_7372;
|
||
reducibleJoin292: while (true) {
|
||
if (value148) {
|
||
value149 = r14 != 'Wii';
|
||
r30 = value149;
|
||
break reducibleJoin292;
|
||
}
|
||
r30 = value148;
|
||
break reducibleJoin292;
|
||
}
|
||
reducibleJoin319: while (true) {
|
||
if (r30) {
|
||
r2 = value && r9;
|
||
reducibleJoin298: while (true) {
|
||
if (r2) {
|
||
break reducibleJoin298;
|
||
}
|
||
regexp = RegExp('Opera', '');
|
||
test = regexp.test;
|
||
value150 = Reflect.apply(test, regexp, [r6]);
|
||
reducibleJoin297: while (true) {
|
||
if (value150) {
|
||
regexp = RegExp('\\b(?:MSIE|Firefox)\\b', 'i');
|
||
test = regexp.test;
|
||
value151 = Reflect.apply(test, regexp, [r10]);
|
||
r9 = value151;
|
||
break reducibleJoin297;
|
||
}
|
||
r9 = value150;
|
||
break reducibleJoin297;
|
||
}
|
||
r2 = r9;
|
||
break reducibleJoin298;
|
||
}
|
||
reducibleJoin302: while (true) {
|
||
if (r2) {
|
||
break reducibleJoin302;
|
||
}
|
||
value152 = r6 == 'Firefox';
|
||
reducibleJoin301: while (true) {
|
||
if (value152) {
|
||
regexp = RegExp('\\bOS X (?:\\d+\\.){2,}', '');
|
||
test = regexp.test;
|
||
value153 = Reflect.apply(test, regexp, [r5]);
|
||
r9 = value153;
|
||
break reducibleJoin301;
|
||
}
|
||
r9 = value152;
|
||
break reducibleJoin301;
|
||
}
|
||
r2 = r9;
|
||
break reducibleJoin302;
|
||
}
|
||
reducibleJoin318: while (true) {
|
||
if (r2) {
|
||
break reducibleJoin318;
|
||
}
|
||
value154 = value20 == r6;
|
||
reducibleJoin317: while (true) {
|
||
if (value154) {
|
||
reducibleJoin306: while (true) {
|
||
if (r5) {
|
||
regexp = RegExp('^Win', '');
|
||
test = regexp.test;
|
||
value155 = !Reflect.apply(test, regexp, [r5]);
|
||
r13 = value155;
|
||
break reducibleJoin306;
|
||
}
|
||
r13 = r5;
|
||
break reducibleJoin306;
|
||
}
|
||
reducibleJoin308: while (true) {
|
||
if (r13) {
|
||
value156 = r3 > 5.5;
|
||
r13 = value156;
|
||
break reducibleJoin308;
|
||
}
|
||
break reducibleJoin308;
|
||
}
|
||
reducibleJoin312: while (true) {
|
||
if (r13) {
|
||
break reducibleJoin312;
|
||
}
|
||
regexp = RegExp('\\bWindows XP\\b', '');
|
||
test = regexp.test;
|
||
value157 = Reflect.apply(test, regexp, [r5]);
|
||
reducibleJoin311: while (true) {
|
||
if (value157) {
|
||
value158 = r3 > 8;
|
||
r31 = value158;
|
||
break reducibleJoin311;
|
||
}
|
||
r31 = value157;
|
||
break reducibleJoin311;
|
||
}
|
||
r13 = r31;
|
||
break reducibleJoin312;
|
||
}
|
||
reducibleJoin316: while (true) {
|
||
if (r13) {
|
||
break reducibleJoin316;
|
||
}
|
||
value159 = r3 == 8;
|
||
reducibleJoin315: while (true) {
|
||
if (value159) {
|
||
regexp = RegExp('\\bTrident\\b', '');
|
||
test = regexp.test;
|
||
value160 = !Reflect.apply(test, regexp, [r10]);
|
||
r31 = value160;
|
||
break reducibleJoin315;
|
||
}
|
||
r31 = value159;
|
||
break reducibleJoin315;
|
||
}
|
||
r13 = r31;
|
||
break reducibleJoin316;
|
||
}
|
||
r9 = r13;
|
||
break reducibleJoin317;
|
||
}
|
||
r9 = value154;
|
||
break reducibleJoin317;
|
||
}
|
||
r2 = r9;
|
||
break reducibleJoin318;
|
||
}
|
||
r30 = r2;
|
||
break reducibleJoin319;
|
||
}
|
||
break reducibleJoin319;
|
||
}
|
||
reducibleJoin321: while (true) {
|
||
if (r30) {
|
||
binding = env0_3;
|
||
test = binding.test;
|
||
parse_7378Binding = parse_7378;
|
||
call = parse_7378Binding.call;
|
||
forOwn_7372Binding = forOwn_7372;
|
||
replace = r10.replace;
|
||
value161 = Reflect.apply(replace, r10, [env0_3, '']);
|
||
value162 = Reflect.apply(call, parse_7378Binding, [forOwn_7372Binding,
|
||
value161 + ';']);
|
||
value163 = !Reflect.apply(test, binding, [value162]);
|
||
r12 = value162;
|
||
r30 = value163;
|
||
break reducibleJoin321;
|
||
}
|
||
break reducibleJoin321;
|
||
}
|
||
reducibleJoin323: while (true) {
|
||
if (r30) {
|
||
name = r12.name;
|
||
r30 = name;
|
||
break reducibleJoin323;
|
||
}
|
||
break reducibleJoin323;
|
||
}
|
||
if (r30) {
|
||
name = r12.name;
|
||
value164 = 'ing as ' + name;
|
||
version = r12.version;
|
||
value165 = '';
|
||
reducibleJoin326: while (true) {
|
||
if (version) {
|
||
value166 = ' ' + version;
|
||
r30 = value166;
|
||
break reducibleJoin326;
|
||
}
|
||
r30 = value165;
|
||
break reducibleJoin326;
|
||
}
|
||
value167 = value164 + r30;
|
||
binding = env0_3;
|
||
test = binding.test;
|
||
if (Reflect.apply(test, binding, [r6])) {
|
||
regexp = RegExp('\\bIE\\b', '');
|
||
test = regexp.test;
|
||
value170 = Reflect.apply(test, regexp, [value167]);
|
||
reducibleJoin333: while (true) {
|
||
if (value170) {
|
||
value171 = r5 == 'Mac OS';
|
||
r30 = value171;
|
||
break reducibleJoin333;
|
||
}
|
||
r30 = value170;
|
||
break reducibleJoin333;
|
||
}
|
||
if (r30) {
|
||
r5 = value8;
|
||
}
|
||
value172 = 'identify' + value167;
|
||
r12 = value172;
|
||
} else {
|
||
value168 = 'mask' + value167;
|
||
reducibleJoin329: while (true) {
|
||
if (r36) {
|
||
formatBinding = format;
|
||
replace = r36.replace;
|
||
value169 = formatBinding(Reflect.apply(replace, r36,
|
||
[RegExp('([a-z])([A-Z])',
|
||
'g'),
|
||
'$1 $2']));
|
||
r30 = value169;
|
||
break reducibleJoin329;
|
||
}
|
||
r30 = value18;
|
||
break reducibleJoin329;
|
||
}
|
||
regexp = RegExp('\\bIE\\b', '');
|
||
test = regexp.test;
|
||
if (Reflect.apply(test, regexp, [value168])) {
|
||
r5 = value8;
|
||
}
|
||
if (value) {
|
||
r6 = r30;
|
||
r12 = value168;
|
||
} else {
|
||
r3 = value8;
|
||
r6 = r30;
|
||
r12 = value168;
|
||
}
|
||
}
|
||
push = object.push;
|
||
Reflect.apply(push, object, [r12]);
|
||
r2 = r14;
|
||
r9 = ['Presto'];
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
r2 = r14;
|
||
r9 = r24;
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
}
|
||
RegExp = global.RegExp;
|
||
replace = r14.replace;
|
||
value144 = Reflect.apply(replace, r14, [RegExp(' +', 'g'), ' *']);
|
||
value145 = RegExp(value144 + '/([.\\d]+)', 'i');
|
||
exec = value145.exec;
|
||
value146 = Reflect.apply(exec, value145, [r10]);
|
||
reducibleJoin288: while (true) {
|
||
if (value146) {
|
||
r30 = value146;
|
||
break reducibleJoin288;
|
||
}
|
||
value147 = 0;
|
||
r30 = value147;
|
||
break reducibleJoin288;
|
||
}
|
||
property = r30[value25];
|
||
r30 = property || r3;
|
||
if (r30) {
|
||
items12 = [r30];
|
||
regexp = RegExp('BB10', '');
|
||
test = regexp.test;
|
||
items12[1] = Reflect.apply(test, regexp, [r10]);
|
||
value173 = 'Device Software';
|
||
reducibleJoin338: while (true) {
|
||
if (items12[value25]) {
|
||
env0_2 = value8;
|
||
r30 = value23;
|
||
r31 = value8;
|
||
r34 = value23;
|
||
break reducibleJoin338;
|
||
}
|
||
r30 = r11;
|
||
r31 = r14;
|
||
r34 = value173;
|
||
break reducibleJoin338;
|
||
}
|
||
property = items12[0];
|
||
value174 = r34 + ' ' + property;
|
||
r2 = r31;
|
||
r3 = value8;
|
||
r5 = value174;
|
||
r9 = r24;
|
||
r13 = r30;
|
||
break reduciblePort354;
|
||
}
|
||
r12 = r30;
|
||
value148 = this != forOwn_7372;
|
||
reducibleJoin292: while (true) {
|
||
if (value148) {
|
||
value149 = r14 != 'Wii';
|
||
r30 = value149;
|
||
break reducibleJoin292;
|
||
}
|
||
r30 = value148;
|
||
break reducibleJoin292;
|
||
}
|
||
reducibleJoin319: while (true) {
|
||
if (r30) {
|
||
r2 = value && r9;
|
||
reducibleJoin298: while (true) {
|
||
if (r2) {
|
||
break reducibleJoin298;
|
||
}
|
||
regexp = RegExp('Opera', '');
|
||
test = regexp.test;
|
||
value150 = Reflect.apply(test, regexp, [r6]);
|
||
reducibleJoin297: while (true) {
|
||
if (value150) {
|
||
regexp = RegExp('\\b(?:MSIE|Firefox)\\b', 'i');
|
||
test = regexp.test;
|
||
value151 = Reflect.apply(test, regexp, [r10]);
|
||
r9 = value151;
|
||
break reducibleJoin297;
|
||
}
|
||
r9 = value150;
|
||
break reducibleJoin297;
|
||
}
|
||
r2 = r9;
|
||
break reducibleJoin298;
|
||
}
|
||
reducibleJoin302: while (true) {
|
||
if (r2) {
|
||
break reducibleJoin302;
|
||
}
|
||
value152 = r6 == 'Firefox';
|
||
reducibleJoin301: while (true) {
|
||
if (value152) {
|
||
regexp = RegExp('\\bOS X (?:\\d+\\.){2,}', '');
|
||
test = regexp.test;
|
||
value153 = Reflect.apply(test, regexp, [r5]);
|
||
r9 = value153;
|
||
break reducibleJoin301;
|
||
}
|
||
r9 = value152;
|
||
break reducibleJoin301;
|
||
}
|
||
r2 = r9;
|
||
break reducibleJoin302;
|
||
}
|
||
reducibleJoin318: while (true) {
|
||
if (r2) {
|
||
break reducibleJoin318;
|
||
}
|
||
value154 = value20 == r6;
|
||
reducibleJoin317: while (true) {
|
||
if (value154) {
|
||
reducibleJoin306: while (true) {
|
||
if (r5) {
|
||
regexp = RegExp('^Win', '');
|
||
test = regexp.test;
|
||
value155 = !Reflect.apply(test, regexp, [r5]);
|
||
r13 = value155;
|
||
break reducibleJoin306;
|
||
}
|
||
r13 = r5;
|
||
break reducibleJoin306;
|
||
}
|
||
reducibleJoin308: while (true) {
|
||
if (r13) {
|
||
value156 = r3 > 5.5;
|
||
r13 = value156;
|
||
break reducibleJoin308;
|
||
}
|
||
break reducibleJoin308;
|
||
}
|
||
reducibleJoin312: while (true) {
|
||
if (r13) {
|
||
break reducibleJoin312;
|
||
}
|
||
regexp = RegExp('\\bWindows XP\\b', '');
|
||
test = regexp.test;
|
||
value157 = Reflect.apply(test, regexp, [r5]);
|
||
reducibleJoin311: while (true) {
|
||
if (value157) {
|
||
value158 = r3 > 8;
|
||
r31 = value158;
|
||
break reducibleJoin311;
|
||
}
|
||
r31 = value157;
|
||
break reducibleJoin311;
|
||
}
|
||
r13 = r31;
|
||
break reducibleJoin312;
|
||
}
|
||
reducibleJoin316: while (true) {
|
||
if (r13) {
|
||
break reducibleJoin316;
|
||
}
|
||
value159 = r3 == 8;
|
||
reducibleJoin315: while (true) {
|
||
if (value159) {
|
||
regexp = RegExp('\\bTrident\\b', '');
|
||
test = regexp.test;
|
||
value160 = !Reflect.apply(test, regexp, [r10]);
|
||
r31 = value160;
|
||
break reducibleJoin315;
|
||
}
|
||
r31 = value159;
|
||
break reducibleJoin315;
|
||
}
|
||
r13 = r31;
|
||
break reducibleJoin316;
|
||
}
|
||
r9 = r13;
|
||
break reducibleJoin317;
|
||
}
|
||
r9 = value154;
|
||
break reducibleJoin317;
|
||
}
|
||
r2 = r9;
|
||
break reducibleJoin318;
|
||
}
|
||
r30 = r2;
|
||
break reducibleJoin319;
|
||
}
|
||
break reducibleJoin319;
|
||
}
|
||
reducibleJoin321: while (true) {
|
||
if (r30) {
|
||
binding = env0_3;
|
||
test = binding.test;
|
||
parse_7378Binding = parse_7378;
|
||
call = parse_7378Binding.call;
|
||
forOwn_7372Binding = forOwn_7372;
|
||
replace = r10.replace;
|
||
value161 = Reflect.apply(replace, r10, [env0_3, '']);
|
||
value162 = Reflect.apply(call, parse_7378Binding, [forOwn_7372Binding, value161 + ';']);
|
||
value163 = !Reflect.apply(test, binding, [value162]);
|
||
r12 = value162;
|
||
r30 = value163;
|
||
break reducibleJoin321;
|
||
}
|
||
break reducibleJoin321;
|
||
}
|
||
reducibleJoin323: while (true) {
|
||
if (r30) {
|
||
name = r12.name;
|
||
r30 = name;
|
||
break reducibleJoin323;
|
||
}
|
||
break reducibleJoin323;
|
||
}
|
||
if (r30) {
|
||
name = r12.name;
|
||
value164 = 'ing as ' + name;
|
||
version = r12.version;
|
||
value165 = '';
|
||
reducibleJoin326: while (true) {
|
||
if (version) {
|
||
value166 = ' ' + version;
|
||
r30 = value166;
|
||
break reducibleJoin326;
|
||
}
|
||
r30 = value165;
|
||
break reducibleJoin326;
|
||
}
|
||
value167 = value164 + r30;
|
||
binding = env0_3;
|
||
test = binding.test;
|
||
if (Reflect.apply(test, binding, [r6])) {
|
||
regexp = RegExp('\\bIE\\b', '');
|
||
test = regexp.test;
|
||
value170 = Reflect.apply(test, regexp, [value167]);
|
||
reducibleJoin333: while (true) {
|
||
if (value170) {
|
||
value171 = r5 == 'Mac OS';
|
||
r30 = value171;
|
||
break reducibleJoin333;
|
||
}
|
||
r30 = value170;
|
||
break reducibleJoin333;
|
||
}
|
||
if (r30) {
|
||
r5 = value8;
|
||
}
|
||
value172 = 'identify' + value167;
|
||
r12 = value172;
|
||
} else {
|
||
value168 = 'mask' + value167;
|
||
reducibleJoin329: while (true) {
|
||
if (r36) {
|
||
formatBinding = format;
|
||
replace = r36.replace;
|
||
value169 = formatBinding(Reflect.apply(replace, r36, [RegExp('([a-z])([A-Z])', 'g'),
|
||
'$1 $2']));
|
||
r30 = value169;
|
||
break reducibleJoin329;
|
||
}
|
||
r30 = value18;
|
||
break reducibleJoin329;
|
||
}
|
||
regexp = RegExp('\\bIE\\b', '');
|
||
test = regexp.test;
|
||
if (Reflect.apply(test, regexp, [value168])) {
|
||
r5 = value8;
|
||
}
|
||
if (value) {
|
||
r6 = r30;
|
||
r12 = value168;
|
||
} else {
|
||
r3 = value8;
|
||
r6 = r30;
|
||
r12 = value168;
|
||
}
|
||
}
|
||
push = object.push;
|
||
Reflect.apply(push, object, [r12]);
|
||
r2 = r14;
|
||
r9 = ['Presto'];
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
r2 = r14;
|
||
r9 = r24;
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
if (r5 != 'Windows CE') {
|
||
regexp = RegExp('Mobi', 'i');
|
||
test = regexp.test;
|
||
if (!Reflect.apply(test, regexp, [r10])) {
|
||
if (value20 == r6) {
|
||
if (value) {
|
||
try {
|
||
external = r28.external;
|
||
} catch (error) {
|
||
break exceptionLanding345;
|
||
}
|
||
try {
|
||
value175 = value8 !== external;
|
||
} catch (error) {
|
||
break exceptionLanding345;
|
||
}
|
||
if (value175) {
|
||
r2 = r14;
|
||
r9 = r24;
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
try {
|
||
unshift = object.unshift;
|
||
} catch (error) {
|
||
break exceptionLanding345;
|
||
}
|
||
try {
|
||
Reflect.apply(unshift, object, ['platform preview']);
|
||
} catch (error) {
|
||
break exceptionLanding345;
|
||
}
|
||
r2 = r14;
|
||
r9 = r24;
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
}
|
||
regexp = RegExp('\\bBlackBerry\\b', '');
|
||
test = regexp.test;
|
||
if (!Reflect.apply(test, regexp, [r14])) {
|
||
regexp = RegExp('\\bBB10\\b', '');
|
||
test = regexp.test;
|
||
if (!Reflect.apply(test, regexp, [r10])) {
|
||
value148 = this != forOwn_7372;
|
||
reducibleJoin292: while (true) {
|
||
if (value148) {
|
||
value149 = r14 != 'Wii';
|
||
r30 = value149;
|
||
break reducibleJoin292;
|
||
}
|
||
r30 = value148;
|
||
break reducibleJoin292;
|
||
}
|
||
reducibleJoin319: while (true) {
|
||
if (r30) {
|
||
r2 = value && r9;
|
||
reducibleJoin298: while (true) {
|
||
if (r2) {
|
||
break reducibleJoin298;
|
||
}
|
||
regexp = RegExp('Opera', '');
|
||
test = regexp.test;
|
||
value150 = Reflect.apply(test, regexp, [r6]);
|
||
reducibleJoin297: while (true) {
|
||
if (value150) {
|
||
regexp = RegExp('\\b(?:MSIE|Firefox)\\b', 'i');
|
||
test = regexp.test;
|
||
value151 = Reflect.apply(test, regexp, [r10]);
|
||
r9 = value151;
|
||
break reducibleJoin297;
|
||
}
|
||
r9 = value150;
|
||
break reducibleJoin297;
|
||
}
|
||
r2 = r9;
|
||
break reducibleJoin298;
|
||
}
|
||
reducibleJoin302: while (true) {
|
||
if (r2) {
|
||
break reducibleJoin302;
|
||
}
|
||
value152 = r6 == 'Firefox';
|
||
reducibleJoin301: while (true) {
|
||
if (value152) {
|
||
regexp = RegExp('\\bOS X (?:\\d+\\.){2,}', '');
|
||
test = regexp.test;
|
||
value153 = Reflect.apply(test, regexp, [r5]);
|
||
r9 = value153;
|
||
break reducibleJoin301;
|
||
}
|
||
r9 = value152;
|
||
break reducibleJoin301;
|
||
}
|
||
r2 = r9;
|
||
break reducibleJoin302;
|
||
}
|
||
reducibleJoin318: while (true) {
|
||
if (r2) {
|
||
break reducibleJoin318;
|
||
}
|
||
value154 = value20 == r6;
|
||
reducibleJoin317: while (true) {
|
||
if (value154) {
|
||
reducibleJoin306: while (true) {
|
||
if (r5) {
|
||
regexp = RegExp('^Win', '');
|
||
test = regexp.test;
|
||
value155 = !Reflect.apply(test, regexp, [r5]);
|
||
r13 = value155;
|
||
break reducibleJoin306;
|
||
}
|
||
r13 = r5;
|
||
break reducibleJoin306;
|
||
}
|
||
reducibleJoin308: while (true) {
|
||
if (r13) {
|
||
value156 = r3 > 5.5;
|
||
r13 = value156;
|
||
break reducibleJoin308;
|
||
}
|
||
break reducibleJoin308;
|
||
}
|
||
reducibleJoin312: while (true) {
|
||
if (r13) {
|
||
break reducibleJoin312;
|
||
}
|
||
regexp = RegExp('\\bWindows XP\\b', '');
|
||
test = regexp.test;
|
||
value157 = Reflect.apply(test, regexp, [r5]);
|
||
reducibleJoin311: while (true) {
|
||
if (value157) {
|
||
value158 = r3 > 8;
|
||
r31 = value158;
|
||
break reducibleJoin311;
|
||
}
|
||
r31 = value157;
|
||
break reducibleJoin311;
|
||
}
|
||
r13 = r31;
|
||
break reducibleJoin312;
|
||
}
|
||
reducibleJoin316: while (true) {
|
||
if (r13) {
|
||
break reducibleJoin316;
|
||
}
|
||
value159 = r3 == 8;
|
||
reducibleJoin315: while (true) {
|
||
if (value159) {
|
||
regexp = RegExp('\\bTrident\\b', '');
|
||
test = regexp.test;
|
||
value160 = !Reflect.apply(test, regexp, [r10]);
|
||
r31 = value160;
|
||
break reducibleJoin315;
|
||
}
|
||
r31 = value159;
|
||
break reducibleJoin315;
|
||
}
|
||
r13 = r31;
|
||
break reducibleJoin316;
|
||
}
|
||
r9 = r13;
|
||
break reducibleJoin317;
|
||
}
|
||
r9 = value154;
|
||
break reducibleJoin317;
|
||
}
|
||
r2 = r9;
|
||
break reducibleJoin318;
|
||
}
|
||
r30 = r2;
|
||
break reducibleJoin319;
|
||
}
|
||
break reducibleJoin319;
|
||
}
|
||
reducibleJoin321: while (true) {
|
||
if (r30) {
|
||
binding = env0_3;
|
||
test = binding.test;
|
||
parse_7378Binding = parse_7378;
|
||
call = parse_7378Binding.call;
|
||
forOwn_7372Binding = forOwn_7372;
|
||
replace = r10.replace;
|
||
value161 = Reflect.apply(replace, r10, [env0_3, '']);
|
||
value162 = Reflect.apply(call, parse_7378Binding, [forOwn_7372Binding,
|
||
value161 + ';']);
|
||
value163 = !Reflect.apply(test, binding, [value162]);
|
||
r12 = value162;
|
||
r30 = value163;
|
||
break reducibleJoin321;
|
||
}
|
||
break reducibleJoin321;
|
||
}
|
||
reducibleJoin323: while (true) {
|
||
if (r30) {
|
||
name = r12.name;
|
||
r30 = name;
|
||
break reducibleJoin323;
|
||
}
|
||
break reducibleJoin323;
|
||
}
|
||
if (r30) {
|
||
name = r12.name;
|
||
value164 = 'ing as ' + name;
|
||
version = r12.version;
|
||
value165 = '';
|
||
reducibleJoin326: while (true) {
|
||
if (version) {
|
||
value166 = ' ' + version;
|
||
r30 = value166;
|
||
break reducibleJoin326;
|
||
}
|
||
r30 = value165;
|
||
break reducibleJoin326;
|
||
}
|
||
value167 = value164 + r30;
|
||
binding = env0_3;
|
||
test = binding.test;
|
||
if (Reflect.apply(test, binding, [r6])) {
|
||
regexp = RegExp('\\bIE\\b', '');
|
||
test = regexp.test;
|
||
value170 = Reflect.apply(test, regexp, [value167]);
|
||
reducibleJoin333: while (true) {
|
||
if (value170) {
|
||
value171 = r5 == 'Mac OS';
|
||
r30 = value171;
|
||
break reducibleJoin333;
|
||
}
|
||
r30 = value170;
|
||
break reducibleJoin333;
|
||
}
|
||
if (r30) {
|
||
r5 = value8;
|
||
}
|
||
value172 = 'identify' + value167;
|
||
r12 = value172;
|
||
} else {
|
||
value168 = 'mask' + value167;
|
||
reducibleJoin329: while (true) {
|
||
if (r36) {
|
||
formatBinding = format;
|
||
replace = r36.replace;
|
||
value169 = formatBinding(Reflect.apply(replace, r36,
|
||
[RegExp('([a-z])([A-Z])',
|
||
'g'),
|
||
'$1 $2']));
|
||
r30 = value169;
|
||
break reducibleJoin329;
|
||
}
|
||
r30 = value18;
|
||
break reducibleJoin329;
|
||
}
|
||
regexp = RegExp('\\bIE\\b', '');
|
||
test = regexp.test;
|
||
if (Reflect.apply(test, regexp, [value168])) {
|
||
r5 = value8;
|
||
}
|
||
if (value) {
|
||
r6 = r30;
|
||
r12 = value168;
|
||
} else {
|
||
r3 = value8;
|
||
r6 = r30;
|
||
r12 = value168;
|
||
}
|
||
}
|
||
push = object.push;
|
||
Reflect.apply(push, object, [r12]);
|
||
r2 = r14;
|
||
r9 = ['Presto'];
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
r2 = r14;
|
||
r9 = r24;
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
}
|
||
RegExp = global.RegExp;
|
||
replace = r14.replace;
|
||
value144 = Reflect.apply(replace, r14, [RegExp(' +', 'g'), ' *']);
|
||
value145 = RegExp(value144 + '/([.\\d]+)', 'i');
|
||
exec = value145.exec;
|
||
value146 = Reflect.apply(exec, value145, [r10]);
|
||
reducibleJoin288: while (true) {
|
||
if (value146) {
|
||
r30 = value146;
|
||
break reducibleJoin288;
|
||
}
|
||
value147 = 0;
|
||
r30 = value147;
|
||
break reducibleJoin288;
|
||
}
|
||
property = r30[value25];
|
||
r30 = property || r3;
|
||
if (r30) {
|
||
items12 = [r30];
|
||
regexp = RegExp('BB10', '');
|
||
test = regexp.test;
|
||
items12[1] = Reflect.apply(test, regexp, [r10]);
|
||
value173 = 'Device Software';
|
||
reducibleJoin338: while (true) {
|
||
if (items12[value25]) {
|
||
env0_2 = value8;
|
||
r30 = value23;
|
||
r31 = value8;
|
||
r34 = value23;
|
||
break reducibleJoin338;
|
||
}
|
||
r30 = r11;
|
||
r31 = r14;
|
||
r34 = value173;
|
||
break reducibleJoin338;
|
||
}
|
||
property = items12[0];
|
||
value174 = r34 + ' ' + property;
|
||
r2 = r31;
|
||
r3 = value8;
|
||
r5 = value174;
|
||
r9 = r24;
|
||
r13 = r30;
|
||
break reduciblePort354;
|
||
}
|
||
r12 = r30;
|
||
value148 = this != forOwn_7372;
|
||
reducibleJoin292: while (true) {
|
||
if (value148) {
|
||
value149 = r14 != 'Wii';
|
||
r30 = value149;
|
||
break reducibleJoin292;
|
||
}
|
||
r30 = value148;
|
||
break reducibleJoin292;
|
||
}
|
||
reducibleJoin319: while (true) {
|
||
if (r30) {
|
||
r2 = value && r9;
|
||
reducibleJoin298: while (true) {
|
||
if (r2) {
|
||
break reducibleJoin298;
|
||
}
|
||
regexp = RegExp('Opera', '');
|
||
test = regexp.test;
|
||
value150 = Reflect.apply(test, regexp, [r6]);
|
||
reducibleJoin297: while (true) {
|
||
if (value150) {
|
||
regexp = RegExp('\\b(?:MSIE|Firefox)\\b', 'i');
|
||
test = regexp.test;
|
||
value151 = Reflect.apply(test, regexp, [r10]);
|
||
r9 = value151;
|
||
break reducibleJoin297;
|
||
}
|
||
r9 = value150;
|
||
break reducibleJoin297;
|
||
}
|
||
r2 = r9;
|
||
break reducibleJoin298;
|
||
}
|
||
reducibleJoin302: while (true) {
|
||
if (r2) {
|
||
break reducibleJoin302;
|
||
}
|
||
value152 = r6 == 'Firefox';
|
||
reducibleJoin301: while (true) {
|
||
if (value152) {
|
||
regexp = RegExp('\\bOS X (?:\\d+\\.){2,}', '');
|
||
test = regexp.test;
|
||
value153 = Reflect.apply(test, regexp, [r5]);
|
||
r9 = value153;
|
||
break reducibleJoin301;
|
||
}
|
||
r9 = value152;
|
||
break reducibleJoin301;
|
||
}
|
||
r2 = r9;
|
||
break reducibleJoin302;
|
||
}
|
||
reducibleJoin318: while (true) {
|
||
if (r2) {
|
||
break reducibleJoin318;
|
||
}
|
||
value154 = value20 == r6;
|
||
reducibleJoin317: while (true) {
|
||
if (value154) {
|
||
reducibleJoin306: while (true) {
|
||
if (r5) {
|
||
regexp = RegExp('^Win', '');
|
||
test = regexp.test;
|
||
value155 = !Reflect.apply(test, regexp, [r5]);
|
||
r13 = value155;
|
||
break reducibleJoin306;
|
||
}
|
||
r13 = r5;
|
||
break reducibleJoin306;
|
||
}
|
||
reducibleJoin308: while (true) {
|
||
if (r13) {
|
||
value156 = r3 > 5.5;
|
||
r13 = value156;
|
||
break reducibleJoin308;
|
||
}
|
||
break reducibleJoin308;
|
||
}
|
||
reducibleJoin312: while (true) {
|
||
if (r13) {
|
||
break reducibleJoin312;
|
||
}
|
||
regexp = RegExp('\\bWindows XP\\b', '');
|
||
test = regexp.test;
|
||
value157 = Reflect.apply(test, regexp, [r5]);
|
||
reducibleJoin311: while (true) {
|
||
if (value157) {
|
||
value158 = r3 > 8;
|
||
r31 = value158;
|
||
break reducibleJoin311;
|
||
}
|
||
r31 = value157;
|
||
break reducibleJoin311;
|
||
}
|
||
r13 = r31;
|
||
break reducibleJoin312;
|
||
}
|
||
reducibleJoin316: while (true) {
|
||
if (r13) {
|
||
break reducibleJoin316;
|
||
}
|
||
value159 = r3 == 8;
|
||
reducibleJoin315: while (true) {
|
||
if (value159) {
|
||
regexp = RegExp('\\bTrident\\b', '');
|
||
test = regexp.test;
|
||
value160 = !Reflect.apply(test, regexp, [r10]);
|
||
r31 = value160;
|
||
break reducibleJoin315;
|
||
}
|
||
r31 = value159;
|
||
break reducibleJoin315;
|
||
}
|
||
r13 = r31;
|
||
break reducibleJoin316;
|
||
}
|
||
r9 = r13;
|
||
break reducibleJoin317;
|
||
}
|
||
r9 = value154;
|
||
break reducibleJoin317;
|
||
}
|
||
r2 = r9;
|
||
break reducibleJoin318;
|
||
}
|
||
r30 = r2;
|
||
break reducibleJoin319;
|
||
}
|
||
break reducibleJoin319;
|
||
}
|
||
reducibleJoin321: while (true) {
|
||
if (r30) {
|
||
binding = env0_3;
|
||
test = binding.test;
|
||
parse_7378Binding = parse_7378;
|
||
call = parse_7378Binding.call;
|
||
forOwn_7372Binding = forOwn_7372;
|
||
replace = r10.replace;
|
||
value161 = Reflect.apply(replace, r10, [env0_3, '']);
|
||
value162 = Reflect.apply(call, parse_7378Binding, [forOwn_7372Binding, value161 + ';']);
|
||
value163 = !Reflect.apply(test, binding, [value162]);
|
||
r12 = value162;
|
||
r30 = value163;
|
||
break reducibleJoin321;
|
||
}
|
||
break reducibleJoin321;
|
||
}
|
||
reducibleJoin323: while (true) {
|
||
if (r30) {
|
||
name = r12.name;
|
||
r30 = name;
|
||
break reducibleJoin323;
|
||
}
|
||
break reducibleJoin323;
|
||
}
|
||
if (r30) {
|
||
name = r12.name;
|
||
value164 = 'ing as ' + name;
|
||
version = r12.version;
|
||
value165 = '';
|
||
reducibleJoin326: while (true) {
|
||
if (version) {
|
||
value166 = ' ' + version;
|
||
r30 = value166;
|
||
break reducibleJoin326;
|
||
}
|
||
r30 = value165;
|
||
break reducibleJoin326;
|
||
}
|
||
value167 = value164 + r30;
|
||
binding = env0_3;
|
||
test = binding.test;
|
||
if (Reflect.apply(test, binding, [r6])) {
|
||
regexp = RegExp('\\bIE\\b', '');
|
||
test = regexp.test;
|
||
value170 = Reflect.apply(test, regexp, [value167]);
|
||
reducibleJoin333: while (true) {
|
||
if (value170) {
|
||
value171 = r5 == 'Mac OS';
|
||
r30 = value171;
|
||
break reducibleJoin333;
|
||
}
|
||
r30 = value170;
|
||
break reducibleJoin333;
|
||
}
|
||
if (r30) {
|
||
r5 = value8;
|
||
}
|
||
value172 = 'identify' + value167;
|
||
r12 = value172;
|
||
} else {
|
||
value168 = 'mask' + value167;
|
||
reducibleJoin329: while (true) {
|
||
if (r36) {
|
||
formatBinding = format;
|
||
replace = r36.replace;
|
||
value169 = formatBinding(Reflect.apply(replace, r36, [RegExp('([a-z])([A-Z])',
|
||
'g'),
|
||
'$1 $2']));
|
||
r30 = value169;
|
||
break reducibleJoin329;
|
||
}
|
||
r30 = value18;
|
||
break reducibleJoin329;
|
||
}
|
||
regexp = RegExp('\\bIE\\b', '');
|
||
test = regexp.test;
|
||
if (Reflect.apply(test, regexp, [value168])) {
|
||
r5 = value8;
|
||
}
|
||
if (value) {
|
||
r6 = r30;
|
||
r12 = value168;
|
||
} else {
|
||
r3 = value8;
|
||
r6 = r30;
|
||
r12 = value168;
|
||
}
|
||
}
|
||
push = object.push;
|
||
Reflect.apply(push, object, [r12]);
|
||
r2 = r14;
|
||
r9 = ['Presto'];
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
r2 = r14;
|
||
r9 = r24;
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
}
|
||
value176 = r6 + ' Mobile';
|
||
r2 = r14;
|
||
r6 = value176;
|
||
r9 = r24;
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
unshift = object.unshift;
|
||
Reflect.apply(unshift, object, ['embedded']);
|
||
r2 = r14;
|
||
r9 = r24;
|
||
r13 = r11;
|
||
break reduciblePort354;
|
||
}
|
||
regexp = RegExp('\\bAppleWebKit\\/([\\d.]+\\+?)', 'i');
|
||
exec = regexp.exec;
|
||
value181 = Reflect.apply(exec, regexp, [r10]);
|
||
reducibleJoin356: while (true) {
|
||
if (value181) {
|
||
r11 = value181;
|
||
break reducibleJoin356;
|
||
}
|
||
value182 = 0;
|
||
r11 = value182;
|
||
break reducibleJoin356;
|
||
}
|
||
property = r11[value25];
|
||
reducibleJoin475: while (true) {
|
||
if (property) {
|
||
parseFloat = global.parseFloat;
|
||
replace = property.replace;
|
||
float2 = parseFloat(Reflect.apply(replace, property, [RegExp('\\.(\\d)$', ''), '.0$1']));
|
||
items13 = [float2, property];
|
||
reducibleJoin365: while (true) {
|
||
reducibleJoin363: while (true) {
|
||
if (value21 != r6) {
|
||
value184 = r3 != items13[value25];
|
||
if (value184) {
|
||
regexp = RegExp('\\bSafari\\/([\\d.]+\\+?)', 'i');
|
||
exec = regexp.exec;
|
||
value185 = Reflect.apply(exec, regexp, [r10]);
|
||
reducibleJoin362: while (true) {
|
||
if (value185) {
|
||
r24 = value185;
|
||
break reducibleJoin362;
|
||
}
|
||
value186 = 0;
|
||
r24 = value186;
|
||
break reducibleJoin362;
|
||
}
|
||
property = r24[value25];
|
||
items13[2] = property;
|
||
value187 = r3 != property;
|
||
r28 = value187;
|
||
break reducibleJoin363;
|
||
}
|
||
r28 = value184;
|
||
break reducibleJoin363;
|
||
}
|
||
property = items13[value25];
|
||
slice = property.slice;
|
||
value183 = Reflect.apply(slice, property, [-1]);
|
||
if (value183 == '+') {
|
||
value188 = 'WebKit Nightly';
|
||
property = items13[value25];
|
||
slice = property.slice;
|
||
value189 = Reflect.apply(slice, property, [0, -1]);
|
||
value190 = 'alpha';
|
||
r3 = value189;
|
||
r6 = value188;
|
||
r24 = value190;
|
||
break reducibleJoin365;
|
||
}
|
||
value184 = r3 != items13[value25];
|
||
if (value184) {
|
||
regexp = RegExp('\\bSafari\\/([\\d.]+\\+?)', 'i');
|
||
exec = regexp.exec;
|
||
value185 = Reflect.apply(exec, regexp, [r10]);
|
||
reducibleJoin362: while (true) {
|
||
if (value185) {
|
||
r24 = value185;
|
||
break reducibleJoin362;
|
||
}
|
||
value186 = 0;
|
||
r24 = value186;
|
||
break reducibleJoin362;
|
||
}
|
||
property = r24[value25];
|
||
items13[2] = property;
|
||
value187 = r3 != property;
|
||
r28 = value187;
|
||
break reducibleJoin363;
|
||
}
|
||
r28 = value184;
|
||
break reducibleJoin363;
|
||
}
|
||
if (r28) {
|
||
r24 = r27;
|
||
break reducibleJoin365;
|
||
}
|
||
r3 = value8;
|
||
r24 = r27;
|
||
break reducibleJoin365;
|
||
}
|
||
regexp = RegExp('\\b(?:Headless)?Chrome\\/([\\d.]+)', 'i');
|
||
exec = regexp.exec;
|
||
value191 = Reflect.apply(exec, regexp, [r10]);
|
||
reducibleJoin367: while (true) {
|
||
if (value191) {
|
||
r27 = value191;
|
||
break reducibleJoin367;
|
||
}
|
||
value192 = 0;
|
||
r27 = value192;
|
||
break reducibleJoin367;
|
||
}
|
||
items13[value25] = r27[value25];
|
||
value193 = items13[0] == 537.36;
|
||
reducibleJoin369: while (true) {
|
||
if (value193) {
|
||
value194 = items13[2] == 537.36;
|
||
r27 = value194;
|
||
break reducibleJoin369;
|
||
}
|
||
r27 = value193;
|
||
break reducibleJoin369;
|
||
}
|
||
reducibleJoin371: while (true) {
|
||
if (r27) {
|
||
parseFloat = global.parseFloat;
|
||
float3 = parseFloat(items13[value25]);
|
||
value195 = float3 >= 28;
|
||
r27 = value195;
|
||
break reducibleJoin371;
|
||
}
|
||
break reducibleJoin371;
|
||
}
|
||
reducibleJoin373: while (true) {
|
||
if (r27) {
|
||
value196 = value12 == r9;
|
||
r27 = value196;
|
||
break reducibleJoin373;
|
||
}
|
||
break reducibleJoin373;
|
||
}
|
||
reducibleJoin375: while (true) {
|
||
if (r27) {
|
||
r9 = ['Blink'];
|
||
break reducibleJoin375;
|
||
}
|
||
break reducibleJoin375;
|
||
}
|
||
reducibleJoin462: while (true) {
|
||
reducibleJoin406: while (true) {
|
||
if (value) {
|
||
if (!r26) {
|
||
if (!items13[value25]) {
|
||
reducibleJoin380: while (true) {
|
||
if (r9) {
|
||
r9[value25] = 'like Safari';
|
||
break reducibleJoin380;
|
||
}
|
||
break reducibleJoin380;
|
||
}
|
||
property = items13[0];
|
||
if (property < 400) {
|
||
r26 = value25;
|
||
break reducibleJoin406;
|
||
}
|
||
reducibleJoin405: while (true) {
|
||
if (property < 500) {
|
||
r27 = 2;
|
||
break reducibleJoin405;
|
||
}
|
||
value198 = 3;
|
||
reducibleJoin404: while (true) {
|
||
if (property < 526) {
|
||
r29 = value198;
|
||
break reducibleJoin404;
|
||
}
|
||
value199 = 4;
|
||
reducibleJoin403: while (true) {
|
||
if (property < 533) {
|
||
r30 = value199;
|
||
break reducibleJoin403;
|
||
}
|
||
value200 = '4+';
|
||
reducibleJoin402: while (true) {
|
||
if (property < 534) {
|
||
r31 = value200;
|
||
break reducibleJoin402;
|
||
}
|
||
value201 = 5;
|
||
reducibleJoin401: while (true) {
|
||
if (property < 535) {
|
||
r32 = value201;
|
||
break reducibleJoin401;
|
||
}
|
||
value202 = 6;
|
||
reducibleJoin400: while (true) {
|
||
if (property < 537) {
|
||
r33 = value202;
|
||
break reducibleJoin400;
|
||
}
|
||
value203 = 7;
|
||
reducibleJoin399: while (true) {
|
||
if (property < 538) {
|
||
r34 = value203;
|
||
break reducibleJoin399;
|
||
}
|
||
value204 = 8;
|
||
reducibleJoin398: while (true) {
|
||
if (property < 601) {
|
||
r35 = value204;
|
||
break reducibleJoin398;
|
||
}
|
||
value205 = 9;
|
||
reducibleJoin397: while (true) {
|
||
if (property < 602) {
|
||
r36 = value205;
|
||
break reducibleJoin397;
|
||
}
|
||
value206 = 10;
|
||
reducibleJoin396: while (true) {
|
||
if (property < 604) {
|
||
r37 = value206;
|
||
break reducibleJoin396;
|
||
}
|
||
value207 = 11;
|
||
reducibleJoin395: while (true) {
|
||
if (property < 606) {
|
||
r38 = value207;
|
||
break reducibleJoin395;
|
||
}
|
||
value208 = '12';
|
||
reducibleJoin394: while (true) {
|
||
if (property < 608) {
|
||
value209 = 12;
|
||
r39 = value209;
|
||
break reducibleJoin394;
|
||
}
|
||
r39 = value208;
|
||
break reducibleJoin394;
|
||
}
|
||
r38 = r39;
|
||
break reducibleJoin395;
|
||
}
|
||
r37 = r38;
|
||
break reducibleJoin396;
|
||
}
|
||
r36 = r37;
|
||
break reducibleJoin397;
|
||
}
|
||
r35 = r36;
|
||
break reducibleJoin398;
|
||
}
|
||
r34 = r35;
|
||
break reducibleJoin399;
|
||
}
|
||
r33 = r34;
|
||
break reducibleJoin400;
|
||
}
|
||
r32 = r33;
|
||
break reducibleJoin401;
|
||
}
|
||
r31 = r32;
|
||
break reducibleJoin402;
|
||
}
|
||
r30 = r31;
|
||
break reducibleJoin403;
|
||
}
|
||
r29 = r30;
|
||
break reducibleJoin404;
|
||
}
|
||
r27 = r29;
|
||
break reducibleJoin405;
|
||
}
|
||
r26 = r27;
|
||
break reducibleJoin406;
|
||
}
|
||
}
|
||
reducibleJoin409: while (true) {
|
||
if (r9) {
|
||
r9[value25] = 'like Chrome';
|
||
break reducibleJoin409;
|
||
}
|
||
break reducibleJoin409;
|
||
}
|
||
property = items13[value25];
|
||
reducibleJoin461: while (true) {
|
||
if (property) {
|
||
r26 = property;
|
||
break reducibleJoin461;
|
||
}
|
||
property = items13[0];
|
||
reducibleJoin460: while (true) {
|
||
if (property < 530) {
|
||
r27 = value25;
|
||
break reducibleJoin460;
|
||
}
|
||
value210 = 2;
|
||
reducibleJoin459: while (true) {
|
||
if (property < 532) {
|
||
r28 = value210;
|
||
break reducibleJoin459;
|
||
}
|
||
value211 = 3;
|
||
reducibleJoin458: while (true) {
|
||
if (property < 532.05) {
|
||
r29 = value211;
|
||
break reducibleJoin458;
|
||
}
|
||
value212 = 4;
|
||
reducibleJoin457: while (true) {
|
||
if (property < 533) {
|
||
r30 = value212;
|
||
break reducibleJoin457;
|
||
}
|
||
value213 = 5;
|
||
reducibleJoin456: while (true) {
|
||
if (property < 534.03) {
|
||
r31 = value213;
|
||
break reducibleJoin456;
|
||
}
|
||
value214 = 6;
|
||
reducibleJoin455: while (true) {
|
||
if (property < 534.07) {
|
||
r32 = value214;
|
||
break reducibleJoin455;
|
||
}
|
||
value215 = 7;
|
||
reducibleJoin454: while (true) {
|
||
if (property < 534.1) {
|
||
r33 = value215;
|
||
break reducibleJoin454;
|
||
}
|
||
value216 = 8;
|
||
reducibleJoin453: while (true) {
|
||
if (property < 534.13) {
|
||
r34 = value216;
|
||
break reducibleJoin453;
|
||
}
|
||
value217 = 9;
|
||
reducibleJoin452: while (true) {
|
||
if (property < 534.16) {
|
||
r35 = value217;
|
||
break reducibleJoin452;
|
||
}
|
||
value218 = 10;
|
||
reducibleJoin451: while (true) {
|
||
if (property < 534.24) {
|
||
r36 = value218;
|
||
break reducibleJoin451;
|
||
}
|
||
value219 = 11;
|
||
reducibleJoin450: while (true) {
|
||
if (property < 534.3) {
|
||
r37 = value219;
|
||
break reducibleJoin450;
|
||
}
|
||
value220 = 12;
|
||
reducibleJoin449: while (true) {
|
||
if (property < 535.01) {
|
||
r38 = value220;
|
||
break reducibleJoin449;
|
||
}
|
||
value221 = '13+';
|
||
reducibleJoin448: while (true) {
|
||
if (property < 535.02) {
|
||
r39 = value221;
|
||
break reducibleJoin448;
|
||
}
|
||
value222 = 15;
|
||
reducibleJoin447: while (true) {
|
||
if (property < 535.07) {
|
||
r40 = value222;
|
||
break reducibleJoin447;
|
||
}
|
||
value223 = 16;
|
||
reducibleJoin446: while (true) {
|
||
if (property < 535.11) {
|
||
r41 = value223;
|
||
break reducibleJoin446;
|
||
}
|
||
value224 = 17;
|
||
reducibleJoin445: while (true) {
|
||
if (property < 535.19) {
|
||
r42 = value224;
|
||
break reducibleJoin445;
|
||
}
|
||
value225 = 18;
|
||
reducibleJoin444: while (true) {
|
||
if (property < 536.05) {
|
||
r43 = value225;
|
||
break reducibleJoin444;
|
||
}
|
||
value226 = 19;
|
||
reducibleJoin443: while (true) {
|
||
if (property < 536.1) {
|
||
r44 = value226;
|
||
break reducibleJoin443;
|
||
}
|
||
value227 = 20;
|
||
reducibleJoin442: while (true) {
|
||
if (property < 537.01) {
|
||
r45 = value227;
|
||
break reducibleJoin442;
|
||
}
|
||
value228 = '21+';
|
||
reducibleJoin441: while (true) {
|
||
if (property < 537.11) {
|
||
r46 = value228;
|
||
break reducibleJoin441;
|
||
}
|
||
value229 = 23;
|
||
reducibleJoin440: while (true) {
|
||
if (property < 537.13) {
|
||
r47 = value229;
|
||
break reducibleJoin440;
|
||
}
|
||
value230 = 24;
|
||
reducibleJoin439: while (true) {
|
||
if (property < 537.18) {
|
||
r48 = value230;
|
||
break reducibleJoin439;
|
||
}
|
||
value231 = 25;
|
||
reducibleJoin438: while (true) {
|
||
if (property < 537.24) {
|
||
r49 = value231;
|
||
break reducibleJoin438;
|
||
}
|
||
value232 = 26;
|
||
reducibleJoin437: while (true) {
|
||
if (property < 537.36) {
|
||
r50 = value232;
|
||
break reducibleJoin437;
|
||
}
|
||
value233 = '28';
|
||
reducibleJoin436: while (true) {
|
||
if (r9 != 'Blink') {
|
||
value234 = '27';
|
||
r51 = value234;
|
||
break reducibleJoin436;
|
||
}
|
||
r51 = value233;
|
||
break reducibleJoin436;
|
||
}
|
||
r50 = r51;
|
||
break reducibleJoin437;
|
||
}
|
||
r49 = r50;
|
||
break reducibleJoin438;
|
||
}
|
||
r48 = r49;
|
||
break reducibleJoin439;
|
||
}
|
||
r47 = r48;
|
||
break reducibleJoin440;
|
||
}
|
||
r46 = r47;
|
||
break reducibleJoin441;
|
||
}
|
||
r45 = r46;
|
||
break reducibleJoin442;
|
||
}
|
||
r44 = r45;
|
||
break reducibleJoin443;
|
||
}
|
||
r43 = r44;
|
||
break reducibleJoin444;
|
||
}
|
||
r42 = r43;
|
||
break reducibleJoin445;
|
||
}
|
||
r41 = r42;
|
||
break reducibleJoin446;
|
||
}
|
||
r40 = r41;
|
||
break reducibleJoin447;
|
||
}
|
||
r39 = r40;
|
||
break reducibleJoin448;
|
||
}
|
||
r38 = r39;
|
||
break reducibleJoin449;
|
||
}
|
||
r37 = r38;
|
||
break reducibleJoin450;
|
||
}
|
||
r36 = r37;
|
||
break reducibleJoin451;
|
||
}
|
||
r35 = r36;
|
||
break reducibleJoin452;
|
||
}
|
||
r34 = r35;
|
||
break reducibleJoin453;
|
||
}
|
||
r33 = r34;
|
||
break reducibleJoin454;
|
||
}
|
||
r32 = r33;
|
||
break reducibleJoin455;
|
||
}
|
||
r31 = r32;
|
||
break reducibleJoin456;
|
||
}
|
||
r30 = r31;
|
||
break reducibleJoin457;
|
||
}
|
||
r29 = r30;
|
||
break reducibleJoin458;
|
||
}
|
||
r28 = r29;
|
||
break reducibleJoin459;
|
||
}
|
||
r27 = r28;
|
||
break reducibleJoin460;
|
||
}
|
||
r26 = r27;
|
||
break reducibleJoin461;
|
||
}
|
||
r12 = r26;
|
||
break reducibleJoin462;
|
||
}
|
||
reducibleJoin380: while (true) {
|
||
if (r9) {
|
||
r9[value25] = 'like Safari';
|
||
break reducibleJoin380;
|
||
}
|
||
break reducibleJoin380;
|
||
}
|
||
property = items13[0];
|
||
if (property < 400) {
|
||
r26 = value25;
|
||
break reducibleJoin406;
|
||
}
|
||
value197 = 2;
|
||
reducibleJoin405: while (true) {
|
||
if (property < 500) {
|
||
r27 = value197;
|
||
break reducibleJoin405;
|
||
}
|
||
value198 = 3;
|
||
reducibleJoin404: while (true) {
|
||
if (property < 526) {
|
||
r29 = value198;
|
||
break reducibleJoin404;
|
||
}
|
||
value199 = 4;
|
||
reducibleJoin403: while (true) {
|
||
if (property < 533) {
|
||
r30 = value199;
|
||
break reducibleJoin403;
|
||
}
|
||
value200 = '4+';
|
||
reducibleJoin402: while (true) {
|
||
if (property < 534) {
|
||
r31 = value200;
|
||
break reducibleJoin402;
|
||
}
|
||
value201 = 5;
|
||
reducibleJoin401: while (true) {
|
||
if (property < 535) {
|
||
r32 = value201;
|
||
break reducibleJoin401;
|
||
}
|
||
value202 = 6;
|
||
reducibleJoin400: while (true) {
|
||
if (property < 537) {
|
||
r33 = value202;
|
||
break reducibleJoin400;
|
||
}
|
||
value203 = 7;
|
||
reducibleJoin399: while (true) {
|
||
if (property < 538) {
|
||
r34 = value203;
|
||
break reducibleJoin399;
|
||
}
|
||
value204 = 8;
|
||
reducibleJoin398: while (true) {
|
||
if (property < 601) {
|
||
r35 = value204;
|
||
break reducibleJoin398;
|
||
}
|
||
value205 = 9;
|
||
reducibleJoin397: while (true) {
|
||
if (property < 602) {
|
||
r36 = value205;
|
||
break reducibleJoin397;
|
||
}
|
||
value206 = 10;
|
||
reducibleJoin396: while (true) {
|
||
if (property < 604) {
|
||
r37 = value206;
|
||
break reducibleJoin396;
|
||
}
|
||
value207 = 11;
|
||
reducibleJoin395: while (true) {
|
||
if (property < 606) {
|
||
r38 = value207;
|
||
break reducibleJoin395;
|
||
}
|
||
value208 = '12';
|
||
reducibleJoin394: while (true) {
|
||
if (property < 608) {
|
||
value209 = 12;
|
||
r39 = value209;
|
||
break reducibleJoin394;
|
||
}
|
||
r39 = value208;
|
||
break reducibleJoin394;
|
||
}
|
||
r38 = r39;
|
||
break reducibleJoin395;
|
||
}
|
||
r37 = r38;
|
||
break reducibleJoin396;
|
||
}
|
||
r36 = r37;
|
||
break reducibleJoin397;
|
||
}
|
||
r35 = r36;
|
||
break reducibleJoin398;
|
||
}
|
||
r34 = r35;
|
||
break reducibleJoin399;
|
||
}
|
||
r33 = r34;
|
||
break reducibleJoin400;
|
||
}
|
||
r32 = r33;
|
||
break reducibleJoin401;
|
||
}
|
||
r31 = r32;
|
||
break reducibleJoin402;
|
||
}
|
||
r30 = r31;
|
||
break reducibleJoin403;
|
||
}
|
||
r29 = r30;
|
||
break reducibleJoin404;
|
||
}
|
||
r27 = r29;
|
||
break reducibleJoin405;
|
||
}
|
||
r26 = r27;
|
||
break reducibleJoin406;
|
||
}
|
||
r12 = r26;
|
||
break reducibleJoin462;
|
||
}
|
||
reducibleJoin468: while (true) {
|
||
if (r9) {
|
||
property = r9[value25];
|
||
value235 = '.x';
|
||
reducibleJoin467: while (true) {
|
||
if (typeof r12 === 'number') {
|
||
r26 = value235;
|
||
break reducibleJoin467;
|
||
}
|
||
regexp = RegExp('[.+]', '');
|
||
test = regexp.test;
|
||
value236 = Reflect.apply(test, regexp, [r12]);
|
||
value237 = '+';
|
||
reducibleJoin466: while (true) {
|
||
if (value236) {
|
||
value238 = '';
|
||
r29 = value238;
|
||
break reducibleJoin466;
|
||
}
|
||
r29 = value237;
|
||
break reducibleJoin466;
|
||
}
|
||
r26 = r29;
|
||
break reducibleJoin467;
|
||
}
|
||
value239 = r12 + r26;
|
||
r9[value25] = property + (' ' + value239);
|
||
r12 = value239;
|
||
break reducibleJoin468;
|
||
}
|
||
break reducibleJoin468;
|
||
}
|
||
if (value21 == r6) {
|
||
if (!r3) {
|
||
r3 = r12;
|
||
r11 = r24;
|
||
r14 = r9;
|
||
break reducibleJoin475;
|
||
}
|
||
parseInt = global.parseInt;
|
||
int = parseInt(r3);
|
||
if (int > 45) {
|
||
r3 = r12;
|
||
r11 = r24;
|
||
r14 = r9;
|
||
break reducibleJoin475;
|
||
}
|
||
}
|
||
value240 = r6 == 'Chrome';
|
||
reducibleJoin473: while (true) {
|
||
if (value240) {
|
||
regexp = RegExp('\\bHeadlessChrome', 'i');
|
||
test = regexp.test;
|
||
value241 = Reflect.apply(test, regexp, [r10]);
|
||
r25 = value241;
|
||
break reducibleJoin473;
|
||
}
|
||
r25 = value240;
|
||
break reducibleJoin473;
|
||
}
|
||
if (r25) {
|
||
unshift = object.unshift;
|
||
Reflect.apply(unshift, object, ['headless']);
|
||
r11 = r24;
|
||
r14 = r9;
|
||
break reducibleJoin475;
|
||
}
|
||
r11 = r24;
|
||
r14 = r9;
|
||
break reducibleJoin475;
|
||
}
|
||
r11 = r27;
|
||
r12 = property;
|
||
r14 = r9;
|
||
break reducibleJoin475;
|
||
}
|
||
reducibleJoin491: while (true) {
|
||
reducibleJoin483: while (true) {
|
||
if (value18 != r6) {
|
||
if (value21 == r6) {
|
||
regexp = RegExp('\\bChrome\\b', '');
|
||
exec = regexp.exec;
|
||
reducibleJoin480: while (true) {
|
||
if (r14) {
|
||
property = r14[value25];
|
||
r9 = property;
|
||
break reducibleJoin480;
|
||
}
|
||
r9 = r14;
|
||
break reducibleJoin480;
|
||
}
|
||
if (Reflect.apply(exec, regexp, [r9])) {
|
||
unshift = object.unshift;
|
||
Reflect.apply(unshift, object, ['desktop mode']);
|
||
regexp = RegExp('\\bOS X\\b', '');
|
||
if (regexp.test(r5)) {
|
||
value246 = 'iOS 4.3+';
|
||
value247 = 'Apple';
|
||
r3 = value8;
|
||
r5 = value246;
|
||
r6 = value19;
|
||
r9 = value247;
|
||
break reducibleJoin491;
|
||
}
|
||
r3 = value8;
|
||
r5 = value8;
|
||
r6 = value19;
|
||
r9 = r13;
|
||
break reducibleJoin491;
|
||
}
|
||
}
|
||
regexp = RegExp('\\bSRWare Iron\\b', '');
|
||
value243 = regexp.test(r6);
|
||
if (value243) {
|
||
value244 = !r3;
|
||
r23 = value244;
|
||
break reducibleJoin483;
|
||
}
|
||
r23 = value243;
|
||
break reducibleJoin483;
|
||
}
|
||
regexp = RegExp('\\bzbov|zvav$', '');
|
||
exec = regexp.exec;
|
||
value242 = Reflect.apply(exec, regexp, [r5]);
|
||
if (value242) {
|
||
value248 = r6 + ' ';
|
||
unshift = object.unshift;
|
||
Reflect.apply(unshift, object, ['desktop mode']);
|
||
if (value242 == 'zvav') {
|
||
value250 = value248 + 'Mini';
|
||
r3 = value8;
|
||
r6 = value250;
|
||
} else {
|
||
value249 = value248 + 'Mobile';
|
||
r6 = value249;
|
||
}
|
||
replace = r5.replace;
|
||
RegExp = global.RegExp;
|
||
value251 = RegExp(' *' + value242 + '$');
|
||
value252 = Reflect.apply(replace, r5, [value251, '']);
|
||
r5 = value252;
|
||
r9 = r13;
|
||
r12 = value242;
|
||
break reducibleJoin491;
|
||
}
|
||
r12 = value242;
|
||
if (value21 == r6) {
|
||
regexp = RegExp('\\bChrome\\b', '');
|
||
exec = regexp.exec;
|
||
reducibleJoin480: while (true) {
|
||
if (r14) {
|
||
property = r14[value25];
|
||
r9 = property;
|
||
break reducibleJoin480;
|
||
}
|
||
r9 = r14;
|
||
break reducibleJoin480;
|
||
}
|
||
if (Reflect.apply(exec, regexp, [r9])) {
|
||
unshift = object.unshift;
|
||
Reflect.apply(unshift, object, ['desktop mode']);
|
||
regexp = RegExp('\\bOS X\\b', '');
|
||
if (regexp.test(r5)) {
|
||
value246 = 'iOS 4.3+';
|
||
value247 = 'Apple';
|
||
r3 = value8;
|
||
r5 = value246;
|
||
r6 = value19;
|
||
r9 = value247;
|
||
break reducibleJoin491;
|
||
}
|
||
r3 = value8;
|
||
r5 = value8;
|
||
r6 = value19;
|
||
r9 = r13;
|
||
break reducibleJoin491;
|
||
}
|
||
}
|
||
regexp = RegExp('\\bSRWare Iron\\b', '');
|
||
test = regexp.test;
|
||
value243 = Reflect.apply(test, regexp, [r6]);
|
||
if (value243) {
|
||
value244 = !r3;
|
||
r23 = value244;
|
||
break reducibleJoin483;
|
||
}
|
||
r23 = value243;
|
||
break reducibleJoin483;
|
||
}
|
||
if (r23) {
|
||
value245 = closure2('Chrome');
|
||
r3 = value245;
|
||
r9 = r13;
|
||
break reducibleJoin491;
|
||
}
|
||
r9 = r13;
|
||
break reducibleJoin491;
|
||
}
|
||
reducibleJoin493: while (true) {
|
||
if (r3) {
|
||
indexOf = r3.indexOf;
|
||
regexp = RegExp('[\\d.]+$', '');
|
||
exec = regexp.exec;
|
||
value253 = Reflect.apply(exec, regexp, [r5]);
|
||
value254 = Reflect.apply(indexOf, r3, [value253]);
|
||
value255 = value254 == 0;
|
||
r12 = value253;
|
||
r13 = value255;
|
||
break reducibleJoin493;
|
||
}
|
||
r13 = r3;
|
||
break reducibleJoin493;
|
||
}
|
||
reducibleJoin495: while (true) {
|
||
if (r13) {
|
||
indexOf = r10.indexOf;
|
||
value256 = Reflect.apply(indexOf, r10, ['/' + r12 + '-']);
|
||
value257 = value256 > -1;
|
||
r13 = value257;
|
||
break reducibleJoin495;
|
||
}
|
||
break reducibleJoin495;
|
||
}
|
||
reducibleJoin497: while (true) {
|
||
if (r13) {
|
||
trim_7377Binding = trim_7377;
|
||
replace = r5.replace;
|
||
value258 = trim_7377Binding(Reflect.apply(replace, r5, [r12, '']));
|
||
r5 = value258;
|
||
break reducibleJoin497;
|
||
}
|
||
break reducibleJoin497;
|
||
}
|
||
reducibleJoin499: while (true) {
|
||
if (r5) {
|
||
indexOf = r5.indexOf;
|
||
value259 = Reflect.apply(indexOf, r5, [r6]);
|
||
value260 = value259 != -1;
|
||
r13 = value260;
|
||
break reducibleJoin499;
|
||
}
|
||
r13 = r5;
|
||
break reducibleJoin499;
|
||
}
|
||
reducibleJoin501: while (true) {
|
||
if (r13) {
|
||
RegExp = global.RegExp;
|
||
value261 = RegExp(r6 + ' OS');
|
||
test = value261.test;
|
||
value262 = !Reflect.apply(test, value261, [r5]);
|
||
r13 = value262;
|
||
break reducibleJoin501;
|
||
}
|
||
break reducibleJoin501;
|
||
}
|
||
reducibleJoin503: while (true) {
|
||
if (r13) {
|
||
replace = r5.replace;
|
||
RegExp = global.RegExp;
|
||
value263 = qualify(r6);
|
||
value264 = RegExp(' *' + value263 + ' *');
|
||
value265 = Reflect.apply(replace, r5, [value264, '']);
|
||
r5 = value265;
|
||
break reducibleJoin503;
|
||
}
|
||
break reducibleJoin503;
|
||
}
|
||
reducibleJoin505: while (true) {
|
||
if (r14) {
|
||
regexp = RegExp('\\b(?:Avant|Nook)\\b', '');
|
||
test = regexp.test;
|
||
value266 = !Reflect.apply(test, regexp, [r6]);
|
||
r13 = value266;
|
||
break reducibleJoin505;
|
||
}
|
||
r13 = r14;
|
||
break reducibleJoin505;
|
||
}
|
||
reducibleJoin517: while (true) {
|
||
if (r13) {
|
||
regexp = RegExp('Browser|Lunascape|Maxthon', '');
|
||
test = regexp.test;
|
||
value267 = Reflect.apply(test, regexp, [r6]);
|
||
reducibleJoin512: while (true) {
|
||
if (value267) {
|
||
r17 = value267;
|
||
break reducibleJoin512;
|
||
}
|
||
value268 = value21 != r6;
|
||
reducibleJoin509: while (true) {
|
||
if (value268) {
|
||
regexp = RegExp('^iOS', '');
|
||
test = regexp.test;
|
||
value269 = Reflect.apply(test, regexp, [r5]);
|
||
r19 = value269;
|
||
break reducibleJoin509;
|
||
}
|
||
r19 = value268;
|
||
break reducibleJoin509;
|
||
}
|
||
reducibleJoin511: while (true) {
|
||
if (r19) {
|
||
regexp = RegExp('\\bSafari\\b', '');
|
||
test = regexp.test;
|
||
value270 = Reflect.apply(test, regexp, [r14[value25]]);
|
||
r19 = value270;
|
||
break reducibleJoin511;
|
||
}
|
||
break reducibleJoin511;
|
||
}
|
||
r17 = r19;
|
||
break reducibleJoin512;
|
||
}
|
||
reducibleJoin516: while (true) {
|
||
if (r17) {
|
||
break reducibleJoin516;
|
||
}
|
||
regexp = RegExp('^(?:Adobe|Arora|Breach|Midori|Opera|Phantom|Rekonq|Rock|Samsung Internet|Sleipnir|SRWare Iron|Vivaldi|Web)',
|
||
|
||
|
||
|
||
|
||
'');
|
||
test = regexp.test;
|
||
value271 = Reflect.apply(test, regexp, [r6]);
|
||
reducibleJoin515: while (true) {
|
||
if (value271) {
|
||
property = r14[value25];
|
||
r19 = property;
|
||
break reducibleJoin515;
|
||
}
|
||
r19 = value271;
|
||
break reducibleJoin515;
|
||
}
|
||
r17 = r19;
|
||
break reducibleJoin516;
|
||
}
|
||
r13 = r17;
|
||
break reducibleJoin517;
|
||
}
|
||
break reducibleJoin517;
|
||
}
|
||
reducibleJoin519: while (true) {
|
||
if (r13) {
|
||
length = r14.length;
|
||
property = r14[length - value25];
|
||
r12 = property;
|
||
r13 = property;
|
||
break reducibleJoin519;
|
||
}
|
||
break reducibleJoin519;
|
||
}
|
||
reducibleJoin521: while (true) {
|
||
if (r13) {
|
||
push = object.push;
|
||
Reflect.apply(push, object, [r12]);
|
||
break reducibleJoin521;
|
||
}
|
||
break reducibleJoin521;
|
||
}
|
||
length = object.length;
|
||
reducibleJoin523: while (true) {
|
||
if (length) {
|
||
join = object.join;
|
||
value272 = Reflect.apply(join, object, ['; ']);
|
||
value273 = '(' + value272;
|
||
r1 = [value273 + ')'];
|
||
break reducibleJoin523;
|
||
}
|
||
r1 = object;
|
||
break reducibleJoin523;
|
||
}
|
||
r13 = r9 && r2;
|
||
reducibleJoin526: while (true) {
|
||
if (r13) {
|
||
indexOf = r2.indexOf;
|
||
value274 = Reflect.apply(indexOf, r2, [r9]);
|
||
value275 = value274 < 0;
|
||
r13 = value275;
|
||
break reducibleJoin526;
|
||
}
|
||
break reducibleJoin526;
|
||
}
|
||
reducibleJoin528: while (true) {
|
||
if (r13) {
|
||
push = r1.push;
|
||
Reflect.apply(push, r1, ['on ' + r9]);
|
||
break reducibleJoin528;
|
||
}
|
||
break reducibleJoin528;
|
||
}
|
||
reducibleJoin532: while (true) {
|
||
if (r2) {
|
||
push = r1.push;
|
||
regexp = RegExp('^on ', '');
|
||
test = regexp.test;
|
||
length = r1.length;
|
||
value276 = Reflect.apply(test, regexp, [r1[length - value25]]);
|
||
value277 = 'on ';
|
||
reducibleJoin531: while (true) {
|
||
if (value276) {
|
||
value278 = '';
|
||
r13 = value278;
|
||
break reducibleJoin531;
|
||
}
|
||
r13 = value277;
|
||
break reducibleJoin531;
|
||
}
|
||
Reflect.apply(push, r1, [r13 + r2]);
|
||
break reducibleJoin532;
|
||
}
|
||
break reducibleJoin532;
|
||
}
|
||
reducibleJoin541: while (true) {
|
||
if (r5) {
|
||
regexp = RegExp(' ([\\d.+]+)$', '');
|
||
exec = regexp.exec;
|
||
value279 = Reflect.apply(exec, regexp, [r5]);
|
||
reducibleJoin535: while (true) {
|
||
if (value279) {
|
||
charAt = r5.charAt;
|
||
length = r5.length;
|
||
length2 = value279[0].length;
|
||
value280 = Reflect.apply(charAt, r5, [length - length2 - value25]);
|
||
value281 = value280 == '/';
|
||
r17 = value281;
|
||
break reducibleJoin535;
|
||
}
|
||
r17 = value279;
|
||
break reducibleJoin535;
|
||
}
|
||
var env0_1 = r17;
|
||
object = {architecture: 32};
|
||
reducibleJoin538: while (true) {
|
||
if (value279) {
|
||
if (r17) {
|
||
r17 = r5;
|
||
break reducibleJoin538;
|
||
}
|
||
replace = r5.replace;
|
||
value282 = Reflect.apply(replace, r5, [value279[0], '']);
|
||
r17 = value282;
|
||
break reducibleJoin538;
|
||
}
|
||
r17 = r5;
|
||
break reducibleJoin538;
|
||
}
|
||
object.family = r17;
|
||
reducibleJoin540: while (true) {
|
||
if (value279) {
|
||
property = value279[value25];
|
||
r17 = property;
|
||
break reducibleJoin540;
|
||
}
|
||
r17 = value8;
|
||
break reducibleJoin540;
|
||
}
|
||
object.version = r17;
|
||
object.toString = toString_7391;
|
||
r5 = object;
|
||
break reducibleJoin541;
|
||
}
|
||
break reducibleJoin541;
|
||
}
|
||
regexp = RegExp('\\b(?:AMD|IA|Win|WOW|x86_|x)64\\b', 'i');
|
||
exec = regexp.exec;
|
||
value283 = Reflect.apply(exec, regexp, [r18]);
|
||
reducibleJoin565: while (true) {
|
||
reducibleJoin563: while (true) {
|
||
if (value283) {
|
||
regexp = RegExp('\\bi686\\b', 'i');
|
||
test = regexp.test;
|
||
if (Reflect.apply(test, regexp, [r18])) {
|
||
reducibleJoin559: while (true) {
|
||
if (r5) {
|
||
regexp = RegExp('^OS X', '');
|
||
test = regexp.test;
|
||
family = r5.family;
|
||
value = Reflect.apply(test, regexp, [family]);
|
||
r12 = value;
|
||
break reducibleJoin559;
|
||
}
|
||
r12 = r5;
|
||
break reducibleJoin559;
|
||
}
|
||
reducibleJoin561: while (true) {
|
||
if (r12) {
|
||
value = r6 == 'Chrome';
|
||
r12 = value;
|
||
break reducibleJoin561;
|
||
}
|
||
break reducibleJoin561;
|
||
}
|
||
if (r12) {
|
||
parseFloat = global.parseFloat;
|
||
value = parseFloat(r3);
|
||
value = value >= 39;
|
||
r12 = value;
|
||
break reducibleJoin563;
|
||
}
|
||
break reducibleJoin563;
|
||
}
|
||
reducibleJoin545: while (true) {
|
||
if (r5) {
|
||
r5.architecture = 64;
|
||
family = r5.family;
|
||
replace = family.replace;
|
||
RegExp = global.RegExp;
|
||
value284 = RegExp(' *' + value283);
|
||
r5.family = Reflect.apply(replace, family, [value284, '']);
|
||
break reducibleJoin545;
|
||
}
|
||
break reducibleJoin545;
|
||
}
|
||
reducibleJoin555: while (true) {
|
||
if (r6) {
|
||
regexp = RegExp('\\bWOW64\\b', 'i');
|
||
test = regexp.test;
|
||
value285 = Reflect.apply(test, regexp, [r10]);
|
||
reducibleJoin554: while (true) {
|
||
if (value285) {
|
||
r13 = value285;
|
||
break reducibleJoin554;
|
||
}
|
||
reducibleJoin551: while (true) {
|
||
if (value) {
|
||
regexp = RegExp('\\w(?:86|32)$', '');
|
||
test = regexp.test;
|
||
cpuClass = r20.cpuClass;
|
||
reducibleJoin550: while (true) {
|
||
if (cpuClass) {
|
||
r17 = cpuClass;
|
||
break reducibleJoin550;
|
||
}
|
||
platform = r20.platform;
|
||
r17 = platform;
|
||
break reducibleJoin550;
|
||
}
|
||
value = Reflect.apply(test, regexp, [r17]);
|
||
r16 = value;
|
||
break reducibleJoin551;
|
||
}
|
||
r16 = value;
|
||
break reducibleJoin551;
|
||
}
|
||
reducibleJoin553: while (true) {
|
||
if (r16) {
|
||
regexp = RegExp('\\bWin64; x64\\b', 'i');
|
||
test = regexp.test;
|
||
value = !Reflect.apply(test, regexp, [r10]);
|
||
r16 = value;
|
||
break reducibleJoin553;
|
||
}
|
||
break reducibleJoin553;
|
||
}
|
||
r13 = r16;
|
||
break reducibleJoin554;
|
||
}
|
||
r12 = r13;
|
||
break reducibleJoin555;
|
||
}
|
||
r12 = r6;
|
||
break reducibleJoin555;
|
||
}
|
||
if (r12) {
|
||
unshift = r1.unshift;
|
||
Reflect.apply(unshift, r1, ['32-bit']);
|
||
break reducibleJoin565;
|
||
}
|
||
break reducibleJoin565;
|
||
}
|
||
reducibleJoin559: while (true) {
|
||
if (r5) {
|
||
regexp = RegExp('^OS X', '');
|
||
test = regexp.test;
|
||
family = r5.family;
|
||
value = Reflect.apply(test, regexp, [family]);
|
||
r12 = value;
|
||
break reducibleJoin559;
|
||
}
|
||
r12 = r5;
|
||
break reducibleJoin559;
|
||
}
|
||
reducibleJoin561: while (true) {
|
||
if (r12) {
|
||
value = r6 == 'Chrome';
|
||
r12 = value;
|
||
break reducibleJoin561;
|
||
}
|
||
break reducibleJoin561;
|
||
}
|
||
if (r12) {
|
||
parseFloat = global.parseFloat;
|
||
value = parseFloat(r3);
|
||
value = value >= 39;
|
||
r12 = value;
|
||
break reducibleJoin563;
|
||
}
|
||
break reducibleJoin563;
|
||
}
|
||
if (r12) {
|
||
r5.architecture = 64;
|
||
break reducibleJoin565;
|
||
}
|
||
break reducibleJoin565;
|
||
}
|
||
reducibleJoin567: while (true) {
|
||
if (r10) {
|
||
break reducibleJoin567;
|
||
}
|
||
env0_0 = value8;
|
||
r10 = value8;
|
||
break reducibleJoin567;
|
||
}
|
||
object = {description: r10};
|
||
reducibleJoin569: while (true) {
|
||
if (r14) {
|
||
property = r14[0];
|
||
r12 = property;
|
||
break reducibleJoin569;
|
||
}
|
||
r12 = r14;
|
||
break reducibleJoin569;
|
||
}
|
||
object.layout = r12;
|
||
object.manufacturer = r9;
|
||
object.name = r6;
|
||
object.prerelease = r11;
|
||
object.product = r2;
|
||
object.ua = r10;
|
||
r9 = r6 && r3;
|
||
object.version = r9;
|
||
reducibleJoin572: while (true) {
|
||
if (r5) {
|
||
r9 = r5;
|
||
break reducibleJoin572;
|
||
}
|
||
r9 = {'architecture': null, 'family': null, 'version': null, toString: function() {
|
||
return 'null';
|
||
}};
|
||
break reducibleJoin572;
|
||
}
|
||
object.os = r9;
|
||
object.parse = parse_7378;
|
||
object.toString = toString_7393;
|
||
version = object.version;
|
||
reducibleJoin574: while (true) {
|
||
if (version) {
|
||
unshift = r1.unshift;
|
||
Reflect.apply(unshift, r1, [r3]);
|
||
break reducibleJoin574;
|
||
}
|
||
break reducibleJoin574;
|
||
}
|
||
name = object.name;
|
||
reducibleJoin576: while (true) {
|
||
if (name) {
|
||
unshift = r1.unshift;
|
||
Reflect.apply(unshift, r1, [r6]);
|
||
break reducibleJoin576;
|
||
}
|
||
break reducibleJoin576;
|
||
}
|
||
r3 = r5 && r6;
|
||
reducibleJoin583: while (true) {
|
||
if (r3) {
|
||
String = global.String;
|
||
value = String(r5);
|
||
split = value.split;
|
||
value = Reflect.apply(split, value, [' ']);
|
||
value = r5 != value[0];
|
||
reducibleJoin582: while (true) {
|
||
if (value) {
|
||
r4 = value;
|
||
break reducibleJoin582;
|
||
}
|
||
split = r6.split;
|
||
value = r5 != Reflect.apply(split, r6, [' '])[0];
|
||
reducibleJoin581: while (true) {
|
||
if (value) {
|
||
value = !r2;
|
||
r6 = value;
|
||
break reducibleJoin581;
|
||
}
|
||
r6 = value;
|
||
break reducibleJoin581;
|
||
}
|
||
r4 = r6;
|
||
break reducibleJoin582;
|
||
}
|
||
r3 = r4;
|
||
break reducibleJoin583;
|
||
}
|
||
break reducibleJoin583;
|
||
}
|
||
reducibleJoin588: while (true) {
|
||
if (r3) {
|
||
push = r1.push;
|
||
if (r2) {
|
||
value = '(' + r5 + ')';
|
||
r2 = value;
|
||
} else {
|
||
value = 'on ' + r5;
|
||
r2 = value;
|
||
}
|
||
Reflect.apply(push, r1, [r2]);
|
||
break reducibleJoin588;
|
||
}
|
||
break reducibleJoin588;
|
||
}
|
||
length = r1.length;
|
||
reducibleJoin590: while (true) {
|
||
if (length) {
|
||
join = r1.join;
|
||
object.description = Reflect.apply(join, r1, [' ']);
|
||
break reducibleJoin590;
|
||
}
|
||
break reducibleJoin590;
|
||
}
|
||
return object;
|
||
}
|
||
const value180 = 'Firefox Mobile';
|
||
r2 = r14;
|
||
r6 = value180;
|
||
r9 = r24;
|
||
r13 = r11;
|
||
value181 = RegExp('\\bAppleWebKit\\/([\\d.]+\\+?)', 'i').exec(r10);
|
||
reducibleJoin356: while (true) {
|
||
if (value181) {
|
||
r11 = value181;
|
||
break reducibleJoin356;
|
||
}
|
||
value182 = 0;
|
||
r11 = value182;
|
||
break reducibleJoin356;
|
||
}
|
||
property = r11[value25];
|
||
reducibleJoin475: while (true) {
|
||
if (property) {
|
||
parseFloat = global.parseFloat;
|
||
replace = property.replace;
|
||
float2 = parseFloat(Reflect.apply(replace, property, [RegExp('\\.(\\d)$', ''), '.0$1']));
|
||
items13 = [float2, property];
|
||
reducibleJoin365: while (true) {
|
||
reducibleJoin363: while (true) {
|
||
if (value21 != r6) {
|
||
value184 = r3 != items13[value25];
|
||
if (value184) {
|
||
regexp = RegExp('\\bSafari\\/([\\d.]+\\+?)', 'i');
|
||
exec = regexp.exec;
|
||
value185 = Reflect.apply(exec, regexp, [r10]);
|
||
reducibleJoin362: while (true) {
|
||
if (value185) {
|
||
r24 = value185;
|
||
break reducibleJoin362;
|
||
}
|
||
value186 = 0;
|
||
r24 = value186;
|
||
break reducibleJoin362;
|
||
}
|
||
property = r24[value25];
|
||
items13[2] = property;
|
||
value187 = r3 != property;
|
||
r28 = value187;
|
||
break reducibleJoin363;
|
||
}
|
||
r28 = value184;
|
||
break reducibleJoin363;
|
||
}
|
||
property = items13[value25];
|
||
slice = property.slice;
|
||
value183 = Reflect.apply(slice, property, [-1]);
|
||
if (value183 == '+') {
|
||
value188 = 'WebKit Nightly';
|
||
property = items13[value25];
|
||
slice = property.slice;
|
||
value189 = Reflect.apply(slice, property, [0, -1]);
|
||
value190 = 'alpha';
|
||
r3 = value189;
|
||
r6 = value188;
|
||
r24 = value190;
|
||
break reducibleJoin365;
|
||
}
|
||
value184 = r3 != items13[value25];
|
||
if (value184) {
|
||
regexp = RegExp('\\bSafari\\/([\\d.]+\\+?)', 'i');
|
||
exec = regexp.exec;
|
||
value185 = Reflect.apply(exec, regexp, [r10]);
|
||
reducibleJoin362: while (true) {
|
||
if (value185) {
|
||
r24 = value185;
|
||
break reducibleJoin362;
|
||
}
|
||
value186 = 0;
|
||
r24 = value186;
|
||
break reducibleJoin362;
|
||
}
|
||
property = r24[value25];
|
||
items13[2] = property;
|
||
value187 = r3 != property;
|
||
r28 = value187;
|
||
break reducibleJoin363;
|
||
}
|
||
r28 = value184;
|
||
break reducibleJoin363;
|
||
}
|
||
if (r28) {
|
||
r24 = r27;
|
||
break reducibleJoin365;
|
||
}
|
||
r3 = value8;
|
||
r24 = r27;
|
||
break reducibleJoin365;
|
||
}
|
||
regexp = RegExp('\\b(?:Headless)?Chrome\\/([\\d.]+)', 'i');
|
||
exec = regexp.exec;
|
||
value191 = Reflect.apply(exec, regexp, [r10]);
|
||
reducibleJoin367: while (true) {
|
||
if (value191) {
|
||
r27 = value191;
|
||
break reducibleJoin367;
|
||
}
|
||
value192 = 0;
|
||
r27 = value192;
|
||
break reducibleJoin367;
|
||
}
|
||
items13[value25] = r27[value25];
|
||
value193 = items13[0] == 537.36;
|
||
reducibleJoin369: while (true) {
|
||
if (value193) {
|
||
value194 = items13[2] == 537.36;
|
||
r27 = value194;
|
||
break reducibleJoin369;
|
||
}
|
||
r27 = value193;
|
||
break reducibleJoin369;
|
||
}
|
||
reducibleJoin371: while (true) {
|
||
if (r27) {
|
||
parseFloat = global.parseFloat;
|
||
float3 = parseFloat(items13[value25]);
|
||
value195 = float3 >= 28;
|
||
r27 = value195;
|
||
break reducibleJoin371;
|
||
}
|
||
break reducibleJoin371;
|
||
}
|
||
reducibleJoin373: while (true) {
|
||
if (r27) {
|
||
value196 = value12 == r9;
|
||
r27 = value196;
|
||
break reducibleJoin373;
|
||
}
|
||
break reducibleJoin373;
|
||
}
|
||
reducibleJoin375: while (true) {
|
||
if (r27) {
|
||
r9 = ['Blink'];
|
||
break reducibleJoin375;
|
||
}
|
||
break reducibleJoin375;
|
||
}
|
||
reducibleJoin462: while (true) {
|
||
reducibleJoin406: while (true) {
|
||
if (value) {
|
||
if (!r26) {
|
||
if (!items13[value25]) {
|
||
reducibleJoin380: while (true) {
|
||
if (r9) {
|
||
r9[value25] = 'like Safari';
|
||
break reducibleJoin380;
|
||
}
|
||
break reducibleJoin380;
|
||
}
|
||
property = items13[0];
|
||
if (property < 400) {
|
||
r26 = value25;
|
||
break reducibleJoin406;
|
||
}
|
||
reducibleJoin405: while (true) {
|
||
if (property < 500) {
|
||
r27 = 2;
|
||
break reducibleJoin405;
|
||
}
|
||
value198 = 3;
|
||
reducibleJoin404: while (true) {
|
||
if (property < 526) {
|
||
r29 = value198;
|
||
break reducibleJoin404;
|
||
}
|
||
value199 = 4;
|
||
reducibleJoin403: while (true) {
|
||
if (property < 533) {
|
||
r30 = value199;
|
||
break reducibleJoin403;
|
||
}
|
||
value200 = '4+';
|
||
reducibleJoin402: while (true) {
|
||
if (property < 534) {
|
||
r31 = value200;
|
||
break reducibleJoin402;
|
||
}
|
||
value201 = 5;
|
||
reducibleJoin401: while (true) {
|
||
if (property < 535) {
|
||
r32 = value201;
|
||
break reducibleJoin401;
|
||
}
|
||
value202 = 6;
|
||
reducibleJoin400: while (true) {
|
||
if (property < 537) {
|
||
r33 = value202;
|
||
break reducibleJoin400;
|
||
}
|
||
value203 = 7;
|
||
reducibleJoin399: while (true) {
|
||
if (property < 538) {
|
||
r34 = value203;
|
||
break reducibleJoin399;
|
||
}
|
||
value204 = 8;
|
||
reducibleJoin398: while (true) {
|
||
if (property < 601) {
|
||
r35 = value204;
|
||
break reducibleJoin398;
|
||
}
|
||
value205 = 9;
|
||
reducibleJoin397: while (true) {
|
||
if (property < 602) {
|
||
r36 = value205;
|
||
break reducibleJoin397;
|
||
}
|
||
value206 = 10;
|
||
reducibleJoin396: while (true) {
|
||
if (property < 604) {
|
||
r37 = value206;
|
||
break reducibleJoin396;
|
||
}
|
||
value207 = 11;
|
||
reducibleJoin395: while (true) {
|
||
if (property < 606) {
|
||
r38 = value207;
|
||
break reducibleJoin395;
|
||
}
|
||
value208 = '12';
|
||
reducibleJoin394: while (true) {
|
||
if (property < 608) {
|
||
value209 = 12;
|
||
r39 = value209;
|
||
break reducibleJoin394;
|
||
}
|
||
r39 = value208;
|
||
break reducibleJoin394;
|
||
}
|
||
r38 = r39;
|
||
break reducibleJoin395;
|
||
}
|
||
r37 = r38;
|
||
break reducibleJoin396;
|
||
}
|
||
r36 = r37;
|
||
break reducibleJoin397;
|
||
}
|
||
r35 = r36;
|
||
break reducibleJoin398;
|
||
}
|
||
r34 = r35;
|
||
break reducibleJoin399;
|
||
}
|
||
r33 = r34;
|
||
break reducibleJoin400;
|
||
}
|
||
r32 = r33;
|
||
break reducibleJoin401;
|
||
}
|
||
r31 = r32;
|
||
break reducibleJoin402;
|
||
}
|
||
r30 = r31;
|
||
break reducibleJoin403;
|
||
}
|
||
r29 = r30;
|
||
break reducibleJoin404;
|
||
}
|
||
r27 = r29;
|
||
break reducibleJoin405;
|
||
}
|
||
r26 = r27;
|
||
break reducibleJoin406;
|
||
}
|
||
}
|
||
reducibleJoin409: while (true) {
|
||
if (r9) {
|
||
r9[value25] = 'like Chrome';
|
||
break reducibleJoin409;
|
||
}
|
||
break reducibleJoin409;
|
||
}
|
||
property = items13[value25];
|
||
reducibleJoin461: while (true) {
|
||
if (property) {
|
||
r26 = property;
|
||
break reducibleJoin461;
|
||
}
|
||
property = items13[0];
|
||
reducibleJoin460: while (true) {
|
||
if (property < 530) {
|
||
r27 = value25;
|
||
break reducibleJoin460;
|
||
}
|
||
value210 = 2;
|
||
reducibleJoin459: while (true) {
|
||
if (property < 532) {
|
||
r28 = value210;
|
||
break reducibleJoin459;
|
||
}
|
||
value211 = 3;
|
||
reducibleJoin458: while (true) {
|
||
if (property < 532.05) {
|
||
r29 = value211;
|
||
break reducibleJoin458;
|
||
}
|
||
value212 = 4;
|
||
reducibleJoin457: while (true) {
|
||
if (property < 533) {
|
||
r30 = value212;
|
||
break reducibleJoin457;
|
||
}
|
||
value213 = 5;
|
||
reducibleJoin456: while (true) {
|
||
if (property < 534.03) {
|
||
r31 = value213;
|
||
break reducibleJoin456;
|
||
}
|
||
value214 = 6;
|
||
reducibleJoin455: while (true) {
|
||
if (property < 534.07) {
|
||
r32 = value214;
|
||
break reducibleJoin455;
|
||
}
|
||
value215 = 7;
|
||
reducibleJoin454: while (true) {
|
||
if (property < 534.1) {
|
||
r33 = value215;
|
||
break reducibleJoin454;
|
||
}
|
||
value216 = 8;
|
||
reducibleJoin453: while (true) {
|
||
if (property < 534.13) {
|
||
r34 = value216;
|
||
break reducibleJoin453;
|
||
}
|
||
value217 = 9;
|
||
reducibleJoin452: while (true) {
|
||
if (property < 534.16) {
|
||
r35 = value217;
|
||
break reducibleJoin452;
|
||
}
|
||
value218 = 10;
|
||
reducibleJoin451: while (true) {
|
||
if (property < 534.24) {
|
||
r36 = value218;
|
||
break reducibleJoin451;
|
||
}
|
||
value219 = 11;
|
||
reducibleJoin450: while (true) {
|
||
if (property < 534.3) {
|
||
r37 = value219;
|
||
break reducibleJoin450;
|
||
}
|
||
value220 = 12;
|
||
reducibleJoin449: while (true) {
|
||
if (property < 535.01) {
|
||
r38 = value220;
|
||
break reducibleJoin449;
|
||
}
|
||
value221 = '13+';
|
||
reducibleJoin448: while (true) {
|
||
if (property < 535.02) {
|
||
r39 = value221;
|
||
break reducibleJoin448;
|
||
}
|
||
value222 = 15;
|
||
reducibleJoin447: while (true) {
|
||
if (property < 535.07) {
|
||
r40 = value222;
|
||
break reducibleJoin447;
|
||
}
|
||
value223 = 16;
|
||
reducibleJoin446: while (true) {
|
||
if (property < 535.11) {
|
||
r41 = value223;
|
||
break reducibleJoin446;
|
||
}
|
||
value224 = 17;
|
||
reducibleJoin445: while (true) {
|
||
if (property < 535.19) {
|
||
r42 = value224;
|
||
break reducibleJoin445;
|
||
}
|
||
value225 = 18;
|
||
reducibleJoin444: while (true) {
|
||
if (property < 536.05) {
|
||
r43 = value225;
|
||
break reducibleJoin444;
|
||
}
|
||
value226 = 19;
|
||
reducibleJoin443: while (true) {
|
||
if (property < 536.1) {
|
||
r44 = value226;
|
||
break reducibleJoin443;
|
||
}
|
||
value227 = 20;
|
||
reducibleJoin442: while (true) {
|
||
if (property < 537.01) {
|
||
r45 = value227;
|
||
break reducibleJoin442;
|
||
}
|
||
value228 = '21+';
|
||
reducibleJoin441: while (true) {
|
||
if (property < 537.11) {
|
||
r46 = value228;
|
||
break reducibleJoin441;
|
||
}
|
||
value229 = 23;
|
||
reducibleJoin440: while (true) {
|
||
if (property < 537.13) {
|
||
r47 = value229;
|
||
break reducibleJoin440;
|
||
}
|
||
value230 = 24;
|
||
reducibleJoin439: while (true) {
|
||
if (property < 537.18) {
|
||
r48 = value230;
|
||
break reducibleJoin439;
|
||
}
|
||
value231 = 25;
|
||
reducibleJoin438: while (true) {
|
||
if (property < 537.24) {
|
||
r49 = value231;
|
||
break reducibleJoin438;
|
||
}
|
||
value232 = 26;
|
||
reducibleJoin437: while (true) {
|
||
if (property < 537.36) {
|
||
r50 = value232;
|
||
break reducibleJoin437;
|
||
}
|
||
value233 = '28';
|
||
reducibleJoin436: while (true) {
|
||
if (r9 != 'Blink') {
|
||
value234 = '27';
|
||
r51 = value234;
|
||
break reducibleJoin436;
|
||
}
|
||
r51 = value233;
|
||
break reducibleJoin436;
|
||
}
|
||
r50 = r51;
|
||
break reducibleJoin437;
|
||
}
|
||
r49 = r50;
|
||
break reducibleJoin438;
|
||
}
|
||
r48 = r49;
|
||
break reducibleJoin439;
|
||
}
|
||
r47 = r48;
|
||
break reducibleJoin440;
|
||
}
|
||
r46 = r47;
|
||
break reducibleJoin441;
|
||
}
|
||
r45 = r46;
|
||
break reducibleJoin442;
|
||
}
|
||
r44 = r45;
|
||
break reducibleJoin443;
|
||
}
|
||
r43 = r44;
|
||
break reducibleJoin444;
|
||
}
|
||
r42 = r43;
|
||
break reducibleJoin445;
|
||
}
|
||
r41 = r42;
|
||
break reducibleJoin446;
|
||
}
|
||
r40 = r41;
|
||
break reducibleJoin447;
|
||
}
|
||
r39 = r40;
|
||
break reducibleJoin448;
|
||
}
|
||
r38 = r39;
|
||
break reducibleJoin449;
|
||
}
|
||
r37 = r38;
|
||
break reducibleJoin450;
|
||
}
|
||
r36 = r37;
|
||
break reducibleJoin451;
|
||
}
|
||
r35 = r36;
|
||
break reducibleJoin452;
|
||
}
|
||
r34 = r35;
|
||
break reducibleJoin453;
|
||
}
|
||
r33 = r34;
|
||
break reducibleJoin454;
|
||
}
|
||
r32 = r33;
|
||
break reducibleJoin455;
|
||
}
|
||
r31 = r32;
|
||
break reducibleJoin456;
|
||
}
|
||
r30 = r31;
|
||
break reducibleJoin457;
|
||
}
|
||
r29 = r30;
|
||
break reducibleJoin458;
|
||
}
|
||
r28 = r29;
|
||
break reducibleJoin459;
|
||
}
|
||
r27 = r28;
|
||
break reducibleJoin460;
|
||
}
|
||
r26 = r27;
|
||
break reducibleJoin461;
|
||
}
|
||
r12 = r26;
|
||
break reducibleJoin462;
|
||
}
|
||
reducibleJoin380: while (true) {
|
||
if (r9) {
|
||
r9[value25] = 'like Safari';
|
||
break reducibleJoin380;
|
||
}
|
||
break reducibleJoin380;
|
||
}
|
||
property = items13[0];
|
||
if (property < 400) {
|
||
r26 = value25;
|
||
break reducibleJoin406;
|
||
}
|
||
value197 = 2;
|
||
reducibleJoin405: while (true) {
|
||
if (property < 500) {
|
||
r27 = value197;
|
||
break reducibleJoin405;
|
||
}
|
||
value198 = 3;
|
||
reducibleJoin404: while (true) {
|
||
if (property < 526) {
|
||
r29 = value198;
|
||
break reducibleJoin404;
|
||
}
|
||
value199 = 4;
|
||
reducibleJoin403: while (true) {
|
||
if (property < 533) {
|
||
r30 = value199;
|
||
break reducibleJoin403;
|
||
}
|
||
value200 = '4+';
|
||
reducibleJoin402: while (true) {
|
||
if (property < 534) {
|
||
r31 = value200;
|
||
break reducibleJoin402;
|
||
}
|
||
value201 = 5;
|
||
reducibleJoin401: while (true) {
|
||
if (property < 535) {
|
||
r32 = value201;
|
||
break reducibleJoin401;
|
||
}
|
||
value202 = 6;
|
||
reducibleJoin400: while (true) {
|
||
if (property < 537) {
|
||
r33 = value202;
|
||
break reducibleJoin400;
|
||
}
|
||
value203 = 7;
|
||
reducibleJoin399: while (true) {
|
||
if (property < 538) {
|
||
r34 = value203;
|
||
break reducibleJoin399;
|
||
}
|
||
value204 = 8;
|
||
reducibleJoin398: while (true) {
|
||
if (property < 601) {
|
||
r35 = value204;
|
||
break reducibleJoin398;
|
||
}
|
||
value205 = 9;
|
||
reducibleJoin397: while (true) {
|
||
if (property < 602) {
|
||
r36 = value205;
|
||
break reducibleJoin397;
|
||
}
|
||
value206 = 10;
|
||
reducibleJoin396: while (true) {
|
||
if (property < 604) {
|
||
r37 = value206;
|
||
break reducibleJoin396;
|
||
}
|
||
value207 = 11;
|
||
reducibleJoin395: while (true) {
|
||
if (property < 606) {
|
||
r38 = value207;
|
||
break reducibleJoin395;
|
||
}
|
||
value208 = '12';
|
||
reducibleJoin394: while (true) {
|
||
if (property < 608) {
|
||
value209 = 12;
|
||
r39 = value209;
|
||
break reducibleJoin394;
|
||
}
|
||
r39 = value208;
|
||
break reducibleJoin394;
|
||
}
|
||
r38 = r39;
|
||
break reducibleJoin395;
|
||
}
|
||
r37 = r38;
|
||
break reducibleJoin396;
|
||
}
|
||
r36 = r37;
|
||
break reducibleJoin397;
|
||
}
|
||
r35 = r36;
|
||
break reducibleJoin398;
|
||
}
|
||
r34 = r35;
|
||
break reducibleJoin399;
|
||
}
|
||
r33 = r34;
|
||
break reducibleJoin400;
|
||
}
|
||
r32 = r33;
|
||
break reducibleJoin401;
|
||
}
|
||
r31 = r32;
|
||
break reducibleJoin402;
|
||
}
|
||
r30 = r31;
|
||
break reducibleJoin403;
|
||
}
|
||
r29 = r30;
|
||
break reducibleJoin404;
|
||
}
|
||
r27 = r29;
|
||
break reducibleJoin405;
|
||
}
|
||
r26 = r27;
|
||
break reducibleJoin406;
|
||
}
|
||
r12 = r26;
|
||
break reducibleJoin462;
|
||
}
|
||
reducibleJoin468: while (true) {
|
||
if (r9) {
|
||
property = r9[value25];
|
||
value235 = '.x';
|
||
reducibleJoin467: while (true) {
|
||
if (typeof r12 === 'number') {
|
||
r26 = value235;
|
||
break reducibleJoin467;
|
||
}
|
||
regexp = RegExp('[.+]', '');
|
||
test = regexp.test;
|
||
value236 = Reflect.apply(test, regexp, [r12]);
|
||
value237 = '+';
|
||
reducibleJoin466: while (true) {
|
||
if (value236) {
|
||
value238 = '';
|
||
r29 = value238;
|
||
break reducibleJoin466;
|
||
}
|
||
r29 = value237;
|
||
break reducibleJoin466;
|
||
}
|
||
r26 = r29;
|
||
break reducibleJoin467;
|
||
}
|
||
value239 = r12 + r26;
|
||
r9[value25] = property + (' ' + value239);
|
||
r12 = value239;
|
||
break reducibleJoin468;
|
||
}
|
||
break reducibleJoin468;
|
||
}
|
||
if (value21 == r6) {
|
||
if (!r3) {
|
||
r3 = r12;
|
||
r11 = r24;
|
||
r14 = r9;
|
||
break reducibleJoin475;
|
||
}
|
||
parseInt = global.parseInt;
|
||
int = parseInt(r3);
|
||
if (int > 45) {
|
||
r3 = r12;
|
||
r11 = r24;
|
||
r14 = r9;
|
||
break reducibleJoin475;
|
||
}
|
||
}
|
||
value240 = r6 == 'Chrome';
|
||
reducibleJoin473: while (true) {
|
||
if (value240) {
|
||
regexp = RegExp('\\bHeadlessChrome', 'i');
|
||
test = regexp.test;
|
||
value241 = Reflect.apply(test, regexp, [r10]);
|
||
r25 = value241;
|
||
break reducibleJoin473;
|
||
}
|
||
r25 = value240;
|
||
break reducibleJoin473;
|
||
}
|
||
if (r25) {
|
||
unshift = object.unshift;
|
||
Reflect.apply(unshift, object, ['headless']);
|
||
r11 = r24;
|
||
r14 = r9;
|
||
break reducibleJoin475;
|
||
}
|
||
r11 = r24;
|
||
r14 = r9;
|
||
break reducibleJoin475;
|
||
}
|
||
r11 = r27;
|
||
r12 = property;
|
||
r14 = r9;
|
||
break reducibleJoin475;
|
||
}
|
||
reducibleJoin491: while (true) {
|
||
reducibleJoin483: while (true) {
|
||
if (value18 != r6) {
|
||
if (value21 == r6) {
|
||
regexp = RegExp('\\bChrome\\b', '');
|
||
exec = regexp.exec;
|
||
reducibleJoin480: while (true) {
|
||
if (r14) {
|
||
property = r14[value25];
|
||
r9 = property;
|
||
break reducibleJoin480;
|
||
}
|
||
r9 = r14;
|
||
break reducibleJoin480;
|
||
}
|
||
if (Reflect.apply(exec, regexp, [r9])) {
|
||
unshift = object.unshift;
|
||
Reflect.apply(unshift, object, ['desktop mode']);
|
||
regexp = RegExp('\\bOS X\\b', '');
|
||
if (regexp.test(r5)) {
|
||
value246 = 'iOS 4.3+';
|
||
value247 = 'Apple';
|
||
r3 = value8;
|
||
r5 = value246;
|
||
r6 = value19;
|
||
r9 = value247;
|
||
break reducibleJoin491;
|
||
}
|
||
r3 = value8;
|
||
r5 = value8;
|
||
r6 = value19;
|
||
r9 = r13;
|
||
break reducibleJoin491;
|
||
}
|
||
}
|
||
regexp = RegExp('\\bSRWare Iron\\b', '');
|
||
value243 = regexp.test(r6);
|
||
if (value243) {
|
||
value244 = !r3;
|
||
r23 = value244;
|
||
break reducibleJoin483;
|
||
}
|
||
r23 = value243;
|
||
break reducibleJoin483;
|
||
}
|
||
regexp = RegExp('\\bzbov|zvav$', '');
|
||
exec = regexp.exec;
|
||
value242 = Reflect.apply(exec, regexp, [r5]);
|
||
if (value242) {
|
||
value248 = r6 + ' ';
|
||
unshift = object.unshift;
|
||
Reflect.apply(unshift, object, ['desktop mode']);
|
||
if (value242 == 'zvav') {
|
||
value250 = value248 + 'Mini';
|
||
r3 = value8;
|
||
r6 = value250;
|
||
} else {
|
||
value249 = value248 + 'Mobile';
|
||
r6 = value249;
|
||
}
|
||
replace = r5.replace;
|
||
RegExp = global.RegExp;
|
||
value251 = RegExp(' *' + value242 + '$');
|
||
value252 = Reflect.apply(replace, r5, [value251, '']);
|
||
r5 = value252;
|
||
r9 = r13;
|
||
r12 = value242;
|
||
break reducibleJoin491;
|
||
}
|
||
r12 = value242;
|
||
if (value21 == r6) {
|
||
regexp = RegExp('\\bChrome\\b', '');
|
||
exec = regexp.exec;
|
||
reducibleJoin480: while (true) {
|
||
if (r14) {
|
||
property = r14[value25];
|
||
r9 = property;
|
||
break reducibleJoin480;
|
||
}
|
||
r9 = r14;
|
||
break reducibleJoin480;
|
||
}
|
||
if (Reflect.apply(exec, regexp, [r9])) {
|
||
unshift = object.unshift;
|
||
Reflect.apply(unshift, object, ['desktop mode']);
|
||
regexp = RegExp('\\bOS X\\b', '');
|
||
if (regexp.test(r5)) {
|
||
value246 = 'iOS 4.3+';
|
||
value247 = 'Apple';
|
||
r3 = value8;
|
||
r5 = value246;
|
||
r6 = value19;
|
||
r9 = value247;
|
||
break reducibleJoin491;
|
||
}
|
||
r3 = value8;
|
||
r5 = value8;
|
||
r6 = value19;
|
||
r9 = r13;
|
||
break reducibleJoin491;
|
||
}
|
||
}
|
||
regexp = RegExp('\\bSRWare Iron\\b', '');
|
||
test = regexp.test;
|
||
value243 = Reflect.apply(test, regexp, [r6]);
|
||
if (value243) {
|
||
value244 = !r3;
|
||
r23 = value244;
|
||
break reducibleJoin483;
|
||
}
|
||
r23 = value243;
|
||
break reducibleJoin483;
|
||
}
|
||
if (r23) {
|
||
value245 = closure2('Chrome');
|
||
r3 = value245;
|
||
r9 = r13;
|
||
break reducibleJoin491;
|
||
}
|
||
r9 = r13;
|
||
break reducibleJoin491;
|
||
}
|
||
reducibleJoin493: while (true) {
|
||
if (r3) {
|
||
indexOf = r3.indexOf;
|
||
regexp = RegExp('[\\d.]+$', '');
|
||
exec = regexp.exec;
|
||
value253 = Reflect.apply(exec, regexp, [r5]);
|
||
value254 = Reflect.apply(indexOf, r3, [value253]);
|
||
value255 = value254 == 0;
|
||
r12 = value253;
|
||
r13 = value255;
|
||
break reducibleJoin493;
|
||
}
|
||
r13 = r3;
|
||
break reducibleJoin493;
|
||
}
|
||
reducibleJoin495: while (true) {
|
||
if (r13) {
|
||
indexOf = r10.indexOf;
|
||
value256 = Reflect.apply(indexOf, r10, ['/' + r12 + '-']);
|
||
value257 = value256 > -1;
|
||
r13 = value257;
|
||
break reducibleJoin495;
|
||
}
|
||
break reducibleJoin495;
|
||
}
|
||
reducibleJoin497: while (true) {
|
||
if (r13) {
|
||
trim_7377Binding = trim_7377;
|
||
replace = r5.replace;
|
||
value258 = trim_7377Binding(Reflect.apply(replace, r5, [r12, '']));
|
||
r5 = value258;
|
||
break reducibleJoin497;
|
||
}
|
||
break reducibleJoin497;
|
||
}
|
||
reducibleJoin499: while (true) {
|
||
if (r5) {
|
||
indexOf = r5.indexOf;
|
||
value259 = Reflect.apply(indexOf, r5, [r6]);
|
||
value260 = value259 != -1;
|
||
r13 = value260;
|
||
break reducibleJoin499;
|
||
}
|
||
r13 = r5;
|
||
break reducibleJoin499;
|
||
}
|
||
reducibleJoin501: while (true) {
|
||
if (r13) {
|
||
RegExp = global.RegExp;
|
||
value261 = RegExp(r6 + ' OS');
|
||
test = value261.test;
|
||
value262 = !Reflect.apply(test, value261, [r5]);
|
||
r13 = value262;
|
||
break reducibleJoin501;
|
||
}
|
||
break reducibleJoin501;
|
||
}
|
||
reducibleJoin503: while (true) {
|
||
if (r13) {
|
||
replace = r5.replace;
|
||
RegExp = global.RegExp;
|
||
value263 = qualify(r6);
|
||
value264 = RegExp(' *' + value263 + ' *');
|
||
value265 = Reflect.apply(replace, r5, [value264, '']);
|
||
r5 = value265;
|
||
break reducibleJoin503;
|
||
}
|
||
break reducibleJoin503;
|
||
}
|
||
reducibleJoin505: while (true) {
|
||
if (r14) {
|
||
regexp = RegExp('\\b(?:Avant|Nook)\\b', '');
|
||
test = regexp.test;
|
||
value266 = !Reflect.apply(test, regexp, [r6]);
|
||
r13 = value266;
|
||
break reducibleJoin505;
|
||
}
|
||
r13 = r14;
|
||
break reducibleJoin505;
|
||
}
|
||
reducibleJoin517: while (true) {
|
||
if (r13) {
|
||
regexp = RegExp('Browser|Lunascape|Maxthon', '');
|
||
test = regexp.test;
|
||
value267 = Reflect.apply(test, regexp, [r6]);
|
||
reducibleJoin512: while (true) {
|
||
if (value267) {
|
||
r17 = value267;
|
||
break reducibleJoin512;
|
||
}
|
||
value268 = value21 != r6;
|
||
reducibleJoin509: while (true) {
|
||
if (value268) {
|
||
regexp = RegExp('^iOS', '');
|
||
test = regexp.test;
|
||
value269 = Reflect.apply(test, regexp, [r5]);
|
||
r19 = value269;
|
||
break reducibleJoin509;
|
||
}
|
||
r19 = value268;
|
||
break reducibleJoin509;
|
||
}
|
||
reducibleJoin511: while (true) {
|
||
if (r19) {
|
||
regexp = RegExp('\\bSafari\\b', '');
|
||
test = regexp.test;
|
||
value270 = Reflect.apply(test, regexp, [r14[value25]]);
|
||
r19 = value270;
|
||
break reducibleJoin511;
|
||
}
|
||
break reducibleJoin511;
|
||
}
|
||
r17 = r19;
|
||
break reducibleJoin512;
|
||
}
|
||
reducibleJoin516: while (true) {
|
||
if (r17) {
|
||
break reducibleJoin516;
|
||
}
|
||
regexp = RegExp('^(?:Adobe|Arora|Breach|Midori|Opera|Phantom|Rekonq|Rock|Samsung Internet|Sleipnir|SRWare Iron|Vivaldi|Web)',
|
||
|
||
|
||
|
||
'');
|
||
test = regexp.test;
|
||
value271 = Reflect.apply(test, regexp, [r6]);
|
||
reducibleJoin515: while (true) {
|
||
if (value271) {
|
||
property = r14[value25];
|
||
r19 = property;
|
||
break reducibleJoin515;
|
||
}
|
||
r19 = value271;
|
||
break reducibleJoin515;
|
||
}
|
||
r17 = r19;
|
||
break reducibleJoin516;
|
||
}
|
||
r13 = r17;
|
||
break reducibleJoin517;
|
||
}
|
||
break reducibleJoin517;
|
||
}
|
||
reducibleJoin519: while (true) {
|
||
if (r13) {
|
||
length = r14.length;
|
||
property = r14[length - value25];
|
||
r12 = property;
|
||
r13 = property;
|
||
break reducibleJoin519;
|
||
}
|
||
break reducibleJoin519;
|
||
}
|
||
reducibleJoin521: while (true) {
|
||
if (r13) {
|
||
push = object.push;
|
||
Reflect.apply(push, object, [r12]);
|
||
break reducibleJoin521;
|
||
}
|
||
break reducibleJoin521;
|
||
}
|
||
reducibleJoin523: while (true) {
|
||
if (object.length) {
|
||
join = object.join;
|
||
value272 = Reflect.apply(join, object, ['; ']);
|
||
value273 = '(' + value272;
|
||
r1 = [value273 + ')'];
|
||
break reducibleJoin523;
|
||
}
|
||
r1 = object;
|
||
break reducibleJoin523;
|
||
}
|
||
r13 = r9 && r2;
|
||
reducibleJoin526: while (true) {
|
||
if (r13) {
|
||
indexOf = r2.indexOf;
|
||
value274 = Reflect.apply(indexOf, r2, [r9]);
|
||
value275 = value274 < 0;
|
||
r13 = value275;
|
||
break reducibleJoin526;
|
||
}
|
||
break reducibleJoin526;
|
||
}
|
||
reducibleJoin528: while (true) {
|
||
if (r13) {
|
||
push = r1.push;
|
||
Reflect.apply(push, r1, ['on ' + r9]);
|
||
break reducibleJoin528;
|
||
}
|
||
break reducibleJoin528;
|
||
}
|
||
reducibleJoin532: while (true) {
|
||
if (r2) {
|
||
push = r1.push;
|
||
regexp = RegExp('^on ', '');
|
||
test = regexp.test;
|
||
length = r1.length;
|
||
value276 = Reflect.apply(test, regexp, [r1[length - value25]]);
|
||
value277 = 'on ';
|
||
reducibleJoin531: while (true) {
|
||
if (value276) {
|
||
value278 = '';
|
||
r13 = value278;
|
||
break reducibleJoin531;
|
||
}
|
||
r13 = value277;
|
||
break reducibleJoin531;
|
||
}
|
||
Reflect.apply(push, r1, [r13 + r2]);
|
||
break reducibleJoin532;
|
||
}
|
||
break reducibleJoin532;
|
||
}
|
||
reducibleJoin541: while (true) {
|
||
if (r5) {
|
||
regexp = RegExp(' ([\\d.+]+)$', '');
|
||
exec = regexp.exec;
|
||
value279 = Reflect.apply(exec, regexp, [r5]);
|
||
reducibleJoin535: while (true) {
|
||
if (value279) {
|
||
charAt = r5.charAt;
|
||
length = r5.length;
|
||
length2 = value279[0].length;
|
||
value280 = Reflect.apply(charAt, r5, [length - length2 - value25]);
|
||
value281 = value280 == '/';
|
||
r17 = value281;
|
||
break reducibleJoin535;
|
||
}
|
||
r17 = value279;
|
||
break reducibleJoin535;
|
||
}
|
||
var env0_1 = r17;
|
||
object = {architecture: 32};
|
||
reducibleJoin538: while (true) {
|
||
if (value279) {
|
||
if (r17) {
|
||
r17 = r5;
|
||
break reducibleJoin538;
|
||
}
|
||
replace = r5.replace;
|
||
value282 = Reflect.apply(replace, r5, [value279[0], '']);
|
||
r17 = value282;
|
||
break reducibleJoin538;
|
||
}
|
||
r17 = r5;
|
||
break reducibleJoin538;
|
||
}
|
||
object.family = r17;
|
||
reducibleJoin540: while (true) {
|
||
if (value279) {
|
||
property = value279[value25];
|
||
r17 = property;
|
||
break reducibleJoin540;
|
||
}
|
||
r17 = value8;
|
||
break reducibleJoin540;
|
||
}
|
||
object.version = r17;
|
||
object.toString = toString_7391;
|
||
r5 = object;
|
||
break reducibleJoin541;
|
||
}
|
||
break reducibleJoin541;
|
||
}
|
||
value283 = RegExp('\\b(?:AMD|IA|Win|WOW|x86_|x)64\\b', 'i').exec(r18);
|
||
reducibleJoin565: while (true) {
|
||
reducibleJoin563: while (true) {
|
||
if (value283) {
|
||
regexp = RegExp('\\bi686\\b', 'i');
|
||
test = regexp.test;
|
||
if (Reflect.apply(test, regexp, [r18])) {
|
||
reducibleJoin559: while (true) {
|
||
if (r5) {
|
||
regexp = RegExp('^OS X', '');
|
||
test = regexp.test;
|
||
family = r5.family;
|
||
value = Reflect.apply(test, regexp, [family]);
|
||
r12 = value;
|
||
break reducibleJoin559;
|
||
}
|
||
r12 = r5;
|
||
break reducibleJoin559;
|
||
}
|
||
reducibleJoin561: while (true) {
|
||
if (r12) {
|
||
value = r6 == 'Chrome';
|
||
r12 = value;
|
||
break reducibleJoin561;
|
||
}
|
||
break reducibleJoin561;
|
||
}
|
||
if (r12) {
|
||
parseFloat = global.parseFloat;
|
||
value = parseFloat(r3);
|
||
value = value >= 39;
|
||
r12 = value;
|
||
break reducibleJoin563;
|
||
}
|
||
break reducibleJoin563;
|
||
}
|
||
reducibleJoin545: while (true) {
|
||
if (r5) {
|
||
r5.architecture = 64;
|
||
family = r5.family;
|
||
replace = family.replace;
|
||
RegExp = global.RegExp;
|
||
value284 = RegExp(' *' + value283);
|
||
r5.family = Reflect.apply(replace, family, [value284, '']);
|
||
break reducibleJoin545;
|
||
}
|
||
break reducibleJoin545;
|
||
}
|
||
reducibleJoin555: while (true) {
|
||
if (r6) {
|
||
regexp = RegExp('\\bWOW64\\b', 'i');
|
||
test = regexp.test;
|
||
value285 = Reflect.apply(test, regexp, [r10]);
|
||
reducibleJoin554: while (true) {
|
||
if (value285) {
|
||
r13 = value285;
|
||
break reducibleJoin554;
|
||
}
|
||
reducibleJoin551: while (true) {
|
||
if (value) {
|
||
regexp = RegExp('\\w(?:86|32)$', '');
|
||
test = regexp.test;
|
||
cpuClass = r20.cpuClass;
|
||
reducibleJoin550: while (true) {
|
||
if (cpuClass) {
|
||
r17 = cpuClass;
|
||
break reducibleJoin550;
|
||
}
|
||
platform = r20.platform;
|
||
r17 = platform;
|
||
break reducibleJoin550;
|
||
}
|
||
value = Reflect.apply(test, regexp, [r17]);
|
||
r16 = value;
|
||
break reducibleJoin551;
|
||
}
|
||
r16 = value;
|
||
break reducibleJoin551;
|
||
}
|
||
reducibleJoin553: while (true) {
|
||
if (r16) {
|
||
regexp = RegExp('\\bWin64; x64\\b', 'i');
|
||
test = regexp.test;
|
||
value = !Reflect.apply(test, regexp, [r10]);
|
||
r16 = value;
|
||
break reducibleJoin553;
|
||
}
|
||
break reducibleJoin553;
|
||
}
|
||
r13 = r16;
|
||
break reducibleJoin554;
|
||
}
|
||
r12 = r13;
|
||
break reducibleJoin555;
|
||
}
|
||
r12 = r6;
|
||
break reducibleJoin555;
|
||
}
|
||
if (r12) {
|
||
unshift = r1.unshift;
|
||
Reflect.apply(unshift, r1, ['32-bit']);
|
||
break reducibleJoin565;
|
||
}
|
||
break reducibleJoin565;
|
||
}
|
||
reducibleJoin559: while (true) {
|
||
if (r5) {
|
||
regexp = RegExp('^OS X', '');
|
||
test = regexp.test;
|
||
family = r5.family;
|
||
value = Reflect.apply(test, regexp, [family]);
|
||
r12 = value;
|
||
break reducibleJoin559;
|
||
}
|
||
r12 = r5;
|
||
break reducibleJoin559;
|
||
}
|
||
reducibleJoin561: while (true) {
|
||
if (r12) {
|
||
value = r6 == 'Chrome';
|
||
r12 = value;
|
||
break reducibleJoin561;
|
||
}
|
||
break reducibleJoin561;
|
||
}
|
||
if (r12) {
|
||
parseFloat = global.parseFloat;
|
||
value = parseFloat(r3);
|
||
value = value >= 39;
|
||
r12 = value;
|
||
break reducibleJoin563;
|
||
}
|
||
break reducibleJoin563;
|
||
}
|
||
if (r12) {
|
||
r5.architecture = 64;
|
||
break reducibleJoin565;
|
||
}
|
||
break reducibleJoin565;
|
||
}
|
||
reducibleJoin567: while (true) {
|
||
if (r10) {
|
||
break reducibleJoin567;
|
||
}
|
||
env0_0 = value8;
|
||
r10 = value8;
|
||
break reducibleJoin567;
|
||
}
|
||
object = {description: r10};
|
||
reducibleJoin569: while (true) {
|
||
if (r14) {
|
||
property = r14[0];
|
||
r12 = property;
|
||
break reducibleJoin569;
|
||
}
|
||
r12 = r14;
|
||
break reducibleJoin569;
|
||
}
|
||
object.layout = r12;
|
||
object.manufacturer = r9;
|
||
object.name = r6;
|
||
object.prerelease = r11;
|
||
object.product = r2;
|
||
object.ua = r10;
|
||
object.version = r6 && r3;
|
||
reducibleJoin572: while (true) {
|
||
if (r5) {
|
||
r9 = r5;
|
||
break reducibleJoin572;
|
||
}
|
||
r9 = {'architecture': null, 'family': null, 'version': null, toString: function() {
|
||
return 'null';
|
||
}};
|
||
break reducibleJoin572;
|
||
}
|
||
object.os = r9;
|
||
object.parse = parse_7378;
|
||
object.toString = function() {
|
||
return this.description || '';
|
||
};
|
||
reducibleJoin574: while (true) {
|
||
if (object.version) {
|
||
unshift = r1.unshift;
|
||
Reflect.apply(unshift, r1, [r3]);
|
||
break reducibleJoin574;
|
||
}
|
||
break reducibleJoin574;
|
||
}
|
||
reducibleJoin576: while (true) {
|
||
if (object.name) {
|
||
unshift = r1.unshift;
|
||
Reflect.apply(unshift, r1, [r6]);
|
||
break reducibleJoin576;
|
||
}
|
||
break reducibleJoin576;
|
||
}
|
||
r3 = r5 && r6;
|
||
reducibleJoin583: while (true) {
|
||
if (r3) {
|
||
String = global.String;
|
||
value = String(r5);
|
||
split = value.split;
|
||
value = Reflect.apply(split, value, [' ']);
|
||
value = r5 != value[0];
|
||
reducibleJoin582: while (true) {
|
||
if (value) {
|
||
r4 = value;
|
||
break reducibleJoin582;
|
||
}
|
||
split = r6.split;
|
||
value = r5 != Reflect.apply(split, r6, [' '])[0];
|
||
reducibleJoin581: while (true) {
|
||
if (value) {
|
||
value = !r2;
|
||
r6 = value;
|
||
break reducibleJoin581;
|
||
}
|
||
r6 = value;
|
||
break reducibleJoin581;
|
||
}
|
||
r4 = r6;
|
||
break reducibleJoin582;
|
||
}
|
||
r3 = r4;
|
||
break reducibleJoin583;
|
||
}
|
||
break reducibleJoin583;
|
||
}
|
||
reducibleJoin588: while (true) {
|
||
if (r3) {
|
||
push = r1.push;
|
||
if (r2) {
|
||
value = '(' + r5 + ')';
|
||
r2 = value;
|
||
} else {
|
||
value = 'on ' + r5;
|
||
r2 = value;
|
||
}
|
||
Reflect.apply(push, r1, [r2]);
|
||
break reducibleJoin588;
|
||
}
|
||
break reducibleJoin588;
|
||
}
|
||
reducibleJoin590: while (true) {
|
||
if (r1.length) {
|
||
join = r1.join;
|
||
object.description = Reflect.apply(join, r1, [' ']);
|
||
break reducibleJoin590;
|
||
}
|
||
break reducibleJoin590;
|
||
}
|
||
return object;
|
||
function getProduct(a0) { // fn#7379, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:704:5669, owner: parse_7378.getProduct, offset: 0x00d19ebc, size: 27 bytes, params: 2, frame: 13
|
||
return reduce_7375(a0, _fun7380);
|
||
function _fun7380(a0, a1) { // fn#7380, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:704:5709, offset: 0x00d19ed7, size: 511 bytes, params: 3, frame: 22
|
||
var r0;
|
||
var r1;
|
||
var r6;
|
||
var r4;
|
||
var r8;
|
||
var RegExp;
|
||
var exec;
|
||
var value6;
|
||
var String;
|
||
var label;
|
||
var property;
|
||
var regexp;
|
||
var value8;
|
||
var formatBinding;
|
||
var replace;
|
||
let value = a0;
|
||
const value2 = a1;
|
||
const r9 = value2.pattern || qualify(value2);
|
||
if (value) {
|
||
r1 = !value;
|
||
r6 = value;
|
||
} else {
|
||
RegExp = global.RegExp;
|
||
value = RegExp('\\b' + r9 + ' *\\d+[.\\w_]*', 'i');
|
||
exec = value.exec;
|
||
value6 = environment.__proto__;
|
||
value = Reflect.apply(exec, value, [userAgent]);
|
||
if (value) {
|
||
r0 = value;
|
||
} else {
|
||
RegExp = global.RegExp;
|
||
value = RegExp('\\b' + r9 + ' *\\w+-[\\w]*', 'i');
|
||
value = value.exec(userAgent);
|
||
r0 = value;
|
||
}
|
||
if (!r0) {
|
||
RegExp = global.RegExp;
|
||
value = RegExp('\\b' + r9 + '(?:; *(?:[a-z]+[_-])?[a-z]+\\d+|[^ ();-]*)', 'i');
|
||
value = value.exec(userAgent);
|
||
r0 = value;
|
||
}
|
||
r1 = r0;
|
||
r6 = r0;
|
||
}
|
||
if (r1) {
|
||
String = global.String;
|
||
label = value2.label;
|
||
if (label) {
|
||
RegExp = global.RegExp;
|
||
value = RegExp(r9, 'i');
|
||
r4 = value.test(value2.label) ? r6 : value2.label;
|
||
} else {
|
||
r4 = r6;
|
||
}
|
||
value = String(r4);
|
||
value = value.split('/');
|
||
property = value[1];
|
||
if (property) {
|
||
regexp = RegExp('[\\d.]+', '');
|
||
r6 = !regexp.test(value[0]);
|
||
} else {
|
||
r6 = property;
|
||
}
|
||
if (r6) {
|
||
value[0] = value[0] + (' ' + value[1]);
|
||
}
|
||
label = value2.label;
|
||
r8 = label || value2;
|
||
value8 = environment.__proto__.__proto__;
|
||
formatBinding = format;
|
||
property = value[0];
|
||
replace = property.replace;
|
||
RegExp = global.RegExp;
|
||
value = Reflect.apply(replace, property, [RegExp(r9, 'i'), r8]);
|
||
replace = value.replace;
|
||
RegExp = global.RegExp;
|
||
value = Reflect.apply(replace, value, [RegExp('; *(?:' + r8 + '[_-])?', 'i'), ' ']);
|
||
replace = value.replace;
|
||
RegExp = global.RegExp;
|
||
value = formatBinding(Reflect.apply(replace, value, [RegExp('(' + r8 + ')[-_.]?(\\w)', 'i'), '$1 $2']));
|
||
r0 = value;
|
||
} else {
|
||
r0 = r6;
|
||
}
|
||
return r0;
|
||
}
|
||
|
||
}
|
||
|
||
function getVersion(a0) { // fn#7381, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:704:6199, owner: parse_7378.getVersion, offset: 0x00d1a0d6, size: 27 bytes, params: 2, frame: 13
|
||
return reduce_7375(a0, _fun7382);
|
||
function _fun7382(a0, a1) { // fn#7382, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:704:6239, offset: 0x00d1a0f1, size: 76 bytes, params: 3, frame: 14
|
||
var r0;
|
||
var exec;
|
||
var value2;
|
||
let value = a0;
|
||
if (value) {
|
||
r0 = value;
|
||
} else {
|
||
value = global.RegExp(a1 + '(?:-[\\d.]+/|(?: for [\\w-]+)?[ /-])([\\d.]+[^ ();/_-]*)', 'i');
|
||
exec = value.exec;
|
||
value2 = environment.__proto__;
|
||
value = Reflect.apply(exec, value, [userAgent]);
|
||
r0 = (value || 0)[1];
|
||
}
|
||
r0 = !r0 ? null : r0;
|
||
return r0;
|
||
}
|
||
|
||
}
|
||
|
||
function getLayout(a0) { // fn#7383, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:704:1569, owner: parse_7378.getLayout, offset: 0x00d1a13d, size: 27 bytes, params: 2, frame: 13
|
||
return reduce_7375(a0, _fun7384);
|
||
function _fun7384(a0, a1) { // fn#7384, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:704:1608, offset: 0x00d1a158, size: 106 bytes, params: 3, frame: 15
|
||
var r1;
|
||
var r0;
|
||
var RegExp;
|
||
var pattern;
|
||
var exec;
|
||
var value3;
|
||
let value = a0;
|
||
const value2 = a1;
|
||
if (value) {
|
||
r0 = value;
|
||
} else {
|
||
RegExp = global.RegExp;
|
||
pattern = value2.pattern;
|
||
if (pattern) {
|
||
r1 = pattern;
|
||
} else {
|
||
value = environment.__proto__.__proto__;
|
||
value = qualify(value2);
|
||
r1 = value;
|
||
}
|
||
value = RegExp('\\b' + r1 + '\\b', 'i');
|
||
exec = value.exec;
|
||
value3 = environment.__proto__;
|
||
value = Reflect.apply(exec, value, [userAgent]);
|
||
r1 = value && (value2.label || value2);
|
||
r0 = r1;
|
||
}
|
||
return r0;
|
||
}
|
||
|
||
}
|
||
|
||
function getName(a0) { // fn#7385, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:704:1846, owner: parse_7378.getName, offset: 0x00d1a1c2, size: 27 bytes, params: 2, frame: 13
|
||
return reduce_7375(a0, _fun7386);
|
||
function _fun7386(a0, a1) { // fn#7386, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:704:1883, offset: 0x00d1a158, size: 106 bytes, params: 3, frame: 15
|
||
var r1;
|
||
var r0;
|
||
var RegExp;
|
||
var pattern;
|
||
var exec;
|
||
var value3;
|
||
let value = a0;
|
||
const value2 = a1;
|
||
if (value) {
|
||
r0 = value;
|
||
} else {
|
||
RegExp = global.RegExp;
|
||
pattern = value2.pattern;
|
||
if (pattern) {
|
||
r1 = pattern;
|
||
} else {
|
||
value = environment.__proto__.__proto__;
|
||
value = qualify(value2);
|
||
r1 = value;
|
||
}
|
||
value = RegExp('\\b' + r1 + '\\b', 'i');
|
||
exec = value.exec;
|
||
value3 = environment.__proto__;
|
||
value = Reflect.apply(exec, value, [userAgent]);
|
||
r1 = value && (value2.label || value2);
|
||
r0 = r1;
|
||
}
|
||
return r0;
|
||
}
|
||
|
||
}
|
||
|
||
function getManufacturer(a0) { // fn#7387, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:704:3692, owner: parse_7378.getManufacturer, offset: 0x00d1a1dd, size: 27 bytes, params: 2, frame: 13
|
||
return reduce_7375(a0, _fun7388);
|
||
function _fun7388(a0, a1, a2) { // fn#7388, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:704:3737, offset: 0x00d1a1f8, size: 143 bytes, params: 4, frame: 17
|
||
var r1;
|
||
var r0;
|
||
var property;
|
||
var regexp;
|
||
var RegExp;
|
||
var value3;
|
||
var value5;
|
||
let value = a0;
|
||
const value2 = a2;
|
||
if (value) {
|
||
r0 = value;
|
||
} else {
|
||
value = environment.__proto__;
|
||
property = a1[product];
|
||
if (property) {
|
||
r1 = property;
|
||
} else {
|
||
regexp = RegExp('^[a-z]+(?: +[a-z]+\\b)*', 'i');
|
||
r1 = a1[regexp.exec(product)];
|
||
}
|
||
if (!r1) {
|
||
RegExp = global.RegExp;
|
||
value3 = environment.__proto__.__proto__;
|
||
value5 = RegExp('\\b' + qualify(value2) + '(?:\\b|\\w*\\d)', 'i');
|
||
r1 = value5.exec(userAgent);
|
||
}
|
||
r1 = r1 && value2;
|
||
r0 = r1;
|
||
}
|
||
return r0;
|
||
}
|
||
|
||
}
|
||
|
||
function parse_7378GetOS(a0) { // fn#7389, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:704:4343, owner: parse_7378.getOS, offset: 0x00d1a287, size: 27 bytes, params: 2, frame: 13
|
||
return reduce_7375(a0, _fun7390);
|
||
function _fun7390(a0, a1) { // fn#7390, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:704:4378, offset: 0x00d1a2a2, size: 687 bytes, params: 3, frame: 18
|
||
var r2;
|
||
var r3;
|
||
var r5;
|
||
var r1;
|
||
var r6;
|
||
var r0;
|
||
var RegExp;
|
||
var exec;
|
||
var value6;
|
||
var object;
|
||
var regexp;
|
||
var property;
|
||
var replace;
|
||
var formatBinding;
|
||
let value = a0;
|
||
const value2 = a1;
|
||
const r8 = value2.pattern || qualify(value2);
|
||
if (value) {
|
||
r2 = !value;
|
||
r3 = value;
|
||
} else {
|
||
RegExp = global.RegExp;
|
||
value = RegExp('\\b' + r8 + '(?:/[\\d.]+|[ \\w.]*)', 'i');
|
||
exec = value.exec;
|
||
value6 = environment.__proto__;
|
||
value = Reflect.apply(exec, value, [userAgent]);
|
||
r2 = value;
|
||
r3 = value;
|
||
}
|
||
if (r2) {
|
||
r5 = value2.label || value2;
|
||
object = {'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'};
|
||
r1 = r8 && r5;
|
||
r1 = r1 && RegExp('^Win', 'i').test(r3);
|
||
if (r1) {
|
||
regexp = RegExp('^Windows Phone ', 'i');
|
||
r1 = !regexp.test(r3);
|
||
}
|
||
if (r1) {
|
||
regexp = RegExp('[\\d.]+$', '');
|
||
property = object[regexp.exec(r3)];
|
||
r1 = property;
|
||
r2 = property;
|
||
} else {
|
||
r2 = object;
|
||
}
|
||
value = global.String(r1 ? 'Windows ' + r2 : r3);
|
||
r2 = r8 && r5;
|
||
if (r2) {
|
||
replace = value.replace;
|
||
RegExp = global.RegExp;
|
||
value = Reflect.apply(replace, value, [RegExp(r8, 'i'), r5]);
|
||
r6 = value;
|
||
} else {
|
||
r6 = value;
|
||
}
|
||
value = environment.__proto__.__proto__;
|
||
formatBinding = format;
|
||
value = r6.replace(RegExp(' ce$', 'i'), ' CE');
|
||
value = value.replace(RegExp('\\bhpw', 'i'), 'web');
|
||
value = value.replace(RegExp('\\bMacintosh\\b', ''), 'Mac OS');
|
||
value = value.replace(RegExp('_PowerPC\\b', 'i'), ' OS');
|
||
value = value.replace(RegExp('\\b(OS X) [^ \\d]+', 'i'), '$1');
|
||
value = value.replace(RegExp('\\bMac (OS X)\\b', ''), '$1');
|
||
value = value.replace(RegExp('\\/(\\d)', ''), ' $1');
|
||
value = value.replace(RegExp('_', 'g'), '.');
|
||
value = value.replace(RegExp('(?: BePC|[ .]*fc[ \\d.]+)$', 'i'), '');
|
||
value = value.replace(RegExp('\\bx86\\.64\\b', 'gi'), 'x86_64');
|
||
value = value.replace(RegExp('\\b(Windows Phone) OS\\b', ''), '$1');
|
||
value = value.replace(RegExp('\\b(Chrome OS \\w+) [\\d.]+\\b', ''), '$1');
|
||
value = value.split(' on ');
|
||
value = formatBinding(value[0]);
|
||
r0 = value;
|
||
} else {
|
||
r0 = r3;
|
||
}
|
||
return r0;
|
||
}
|
||
|
||
}
|
||
|
||
function parse_7378ToString() { // fn#7391, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:704:13962, owner: parse_7378.toString, offset: 0x00d1a551, size: 80 bytes, params: 1, frame: 6
|
||
const version = this.version;
|
||
const family = this.family;
|
||
const value = '';
|
||
return family + (version ? env0_1 ? value : ' ' + version : value) + (this.architecture == 64 ? ' 64-bit' : value);
|
||
}
|
||
|
||
}
|
||
|
||
function _fun7394() { // fn#7394, offset: 0x00d1a5b8, size: 9 bytes, params: 1, frame: 1
|
||
return env0_6;
|
||
}
|
||
|
||
function _fun7395(a0, a1) { // fn#7395, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:704:15036, offset: 0x00d1a5c1, size: 21 bytes, params: 3, frame: 3
|
||
env0_1[a1] = a0;
|
||
}
|
||
|
||
}
|
||
|
||
}
|
||
|
||
function parse_7378ToString_7393() { // fn#7393, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:704:14675, owner: parse_7378.toString, offset: 0x00d1a5a7, size: 17 bytes, params: 1, frame: 2
|
||
let description = this.description;
|
||
description = !description ? '' : description;
|
||
return description;
|
||
}
|
||
|
||
global.__d(_fun7368, 654, []) /* metro module 654 */;
|