/* Metro module 4222; source: unknown; dependencies: [] */ function _fun34556(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#34556, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4393:6, offset: 0x01059642, size: 44 bytes, params: 8, frame: 11 _fun34557.call(this); } function _fun34557() { // fn#34557, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4393:32, offset: 0x0105966e, size: 473 bytes, params: 1, frame: 19 var r8; var r3; let value = this; const capitalize_34558 = 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_34562 = function(a0) { return (0, global.String)(a0).replace(RegExp('([ -])(?!$)', 'g'), '$1?'); }; const trim_34565 = function(a0) { return (0, global.String)(a0).replace(RegExp('^ +| +$', 'g'), ''); }; const object2 = {'function': true, 'object': true}; let r4 = object2[typeof global.window] && global.window; r4 = !r4 ? value : r4; const env0_0 = r4; const r7 = object2[typeof env0_2] && env0_2; const env0_1 = r7; const r5 = object2[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_34566(); if (typeof global.define !== 'function') { if (r7) { if (r5) { closure(value, _fun34583); } else { r4.platform = value; } } else { r4.platform = value; } } else if (typeof global.define.amd !== 'object') { if (r7) { if (r5) { closure(value, _fun34583); } else { r4.platform = value; } } else { r4.platform = value; } } else if (global.define.amd) { r4.platform = value; global.define(_fun34582); } else if (r7) { if (r5) { closure(value, _fun34583); } else { r4.platform = value; } } else { r4.platform = value; } } function reduce_34563(a0, a1) { // fn#34563, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4393:700, offset: 0x01059847, 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 = _fun34564; 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_34560(a0, closure); break reducibleJoin8; } return env0_2; } function parse_34566(a0) { // fn#34566, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4393:956, offset: 0x010598c2, size: 10340 bytes, params: 2, frame: 62 var environment; var r9; var r10; var r27; var r20; var r24; var r41; var r11; var r14; var r39; var r38; var r37; var r33; var r36; var r40; var r13; var r35; var r25; var r44; var r49; var r46; var r12; var r47; var r6; var r462; var r5; var r3; var r42; var r29; var r18; var r32; var r23; var version; var r34; var r30; var r26; var r31; var r28; var r50; var r48; var r45; var r43; var r19; var r17; var r1; var r16; var r4; var value3; var getClassOf_34561Binding; var classOf_34561; var value5; var value6; var regexp; var test; var toStringBinding; var toString2; var java; var opera; var property; var value8; var value9; var value28; var value29; var value31; var value32; var value33; var value35; var push; var value36; var value37; var value38; var value39; var value40; var value41; var value42; var value43; var value44; var slice; var indexOf; var value45; var value46; var value47; var regexp2; var value48; var value49; var value50; var value51; var unshift; var value52; var value53; var value54; var value55; var value56; var replace; var value57; var value58; var value59; var parse_34566Binding; var value60; var manufacturer; var product; var value61; var value62; var parseFloat; var float; var value63; var value64; var value65; var value66; var value67; var value68; var value69; var value70; var value71; var value72; var value73; 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 global; var value87; var value88; var value89; var value90; var runtime; var phantom; var documentMode; var value91; var value92; var value93; var value94; var value95; var items10; var value96; var String; var toFixed; var value97; var major; var value98; var minor; var value99; var patch; var value100; var value101; var flash; var system; var Capabilities; var os; var lang; var System; var getProperty; var value102; var value103; var value104; var value105; var process; var value106; var browser; var value107; var versions; var electron; var nw; var value108; var node; var value109; var value110; var value111; var arch; var platform; var value112; var require; var moduleValue; var join; var value113; var value114; var error; var system2; var system3; var value115; var value116; var value117; var format_34559Binding; var value118; var value119; var value120; var appMinorVersion; var value121; var value122; var value123; var value124; var value125; var value126; var RegExp; var value127; var value128; var value129; var value130; var value131; var value132; var value133; var value134; var value135; var value136; var forOwn_34560Binding; var value137; var value138; var value139; var value140; var value141; var value142; var value143; var value144; var value145; var value146; var value147; var value148; var value149; var call; var value150; var value151; var value152; var name; var value153; var value154; var value155; var value156; var value157; var value158; var value159; var value160; var value161; var items12; var value162; var value163; var external; var value164; var value165; var value166; var value167; var value168; var value170; var value171; var float2; var items13; var value172; var value173; var value174; var value175; var value176; var value177; var value178; var value179; var value180; var value181; var value182; var value183; var float3; var value184; var value185; var value186; var value187; var value188; var value189; var value190; var value191; var value192; var value193; var value194; 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 parseInt; var int; 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 value240; var value241; var value242; var trim_34565Binding; var value243; var value244; var value245; var value246; var value247; var value248; var value249; var length; var value250; var value251; var value252; var value253; var value254; var value255; var value256; var value257; var charAt; var length2; var value258; var value259; var value260; var value261; var family; var value262; var value263; var cpuClass; var split; let value = a0; let env0_0 = value; const closure = function(a0) { return reduce_34563(a0, _fun34568); }; let binding = env0_0; reducibleJoin2: while (true) { if (value) { value3 = typeof value === 'object'; r9 = value3; break reducibleJoin2; } r9 = value; break reducibleJoin2; } reducibleJoin4: while (true) { if (r9) { classOf_34561 = getClassOf_34561(value); value5 = classOf_34561 != 'String'; r9 = value5; break reducibleJoin4; } break reducibleJoin4; } reducibleJoin6: while (true) { if (r9) { value6 = null; env0_0 = value6; r10 = value6; r27 = value; break reducibleJoin6; } r10 = value; r27 = binding; break reducibleJoin6; } const navigator = r27.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) { r24 = !!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, [])]); r24 = value; break reducibleJoin15; } r24 = value; break reducibleJoin15; } } value = 'ScriptBridgingProxyObject'; reducibleJoin19: while (true) { if (r9) { value = 'Object'; r41 = value; break reducibleJoin19; } r41 = 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 = r27.java; value = 'JavaPackage'; if (java) { r14 = value; break reducibleJoin24; } break reducibleJoin23; } break reducibleJoin23; } getClassOf_34561Binding = getClassOf_34561; java = r27.java; value = getClassOf_34561Binding(java); r14 = value; break reducibleJoin24; } value = 'RuntimeObject'; reducibleJoin26: while (true) { if (r9) { value = 'Object'; r39 = value; break reducibleJoin26; } r39 = value; break reducibleJoin26; } value = RegExp('\\bJava', '').test(r14); reducibleJoin28: while (true) { if (value) { java = r27.java; r38 = java; break reducibleJoin28; } r38 = value; break reducibleJoin28; } reducibleJoin30: while (true) { if (r38) { getClassOf_34561Binding = getClassOf_34561; environment = r27.environment; value = getClassOf_34561Binding(environment) == r11; r37 = value; break reducibleJoin30; } r37 = r38; break reducibleJoin30; } value = 'α'; reducibleJoin32: while (true) { if (r38) { value = 'a'; r33 = value; break reducibleJoin32; } r33 = value; break reducibleJoin32; } value = 'β'; reducibleJoin34: while (true) { if (r38) { value = 'b'; r36 = value; break reducibleJoin34; } r36 = value; break reducibleJoin34; } const document = r27.document; reducibleJoin36: while (true) { if (document) { r40 = document; break reducibleJoin36; } r40 = {}; break reducibleJoin36; } const operamini = r27.operamini; reducibleJoin38: while (true) { if (operamini) { r13 = operamini; break reducibleJoin38; } opera = r27.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_34561(r13); r9 = value; break reducibleJoin42; } value = Reflect.apply(test, binding, [r9]); const value7 = null; if (value) { r35 = r9; r9 = r13; } else { r9 = value7; r35 = value7; } let object = []; value = r10 == userAgent; let r2 = value && r9; reducibleJoin46: while (true) { if (r2) { version = r9.version; value8 = typeof version === 'function'; r2 = value8; break reducibleJoin46; } break reducibleJoin46; } reducibleJoin48: while (true) { if (r2) { version = r9.version; value9 = Reflect.apply(version, r9, []); r2 = value9; break reducibleJoin48; } break reducibleJoin48; } const value10 = 'Trident'; const value11 = 'WebKit'; const value12 = 'Presto'; const value13 = 'NetFront'; const value14 = 'Tasman'; const value15 = ((a0) => reduce_34563(a0, _fun34570))([{'label': 'EdgeHTML', 'pattern': 'Edge'}, value10, {'label': 'WebKit', 'pattern': 'AppleWebKit'}, 'iCab', value12, value13, value14, 'KHTML', 'Gecko']); const value16 = 'PhantomJS'; const value17 = 'Opera'; const value18 = 'Chrome Mobile'; const value19 = 'IE'; const value20 = 'Safari'; const value21 = ((a0) => reduce_34563(a0, _fun34572))(['Adobe AIR', 'Arora', 'Avant Browser', 'Breach', 'Camino', 'Electron', 'Epiphany', 'Fennec', 'Flock', 'Galeon', 'GreenBrowser', 'iCab', 'Iceweasel', 'K-Meleon', 'Konqueror', 'Lunascape', 'Maxthon', {'label': 'Microsoft Edge', 'pattern': 'Edge'}, 'Midori', 'Nook Browser', 'PaleMoon', value16, 'Raven', 'Rekonq', 'RockMelt', {'label': 'Samsung Internet', 'pattern': 'SamsungBrowser'}, 'SeaMonkey', {'label': 'Silk', 'pattern': '(?:Cloud9|Silk-Accelerated)'}, 'Sleipnir', 'SlimBrowser', {'label': 'SRWare Iron', 'pattern': 'Iron'}, 'Sunrise', 'Swiftfox', 'Waterfox', 'WebPositive', 'Opera Mini', {'label': 'Opera Mini', 'pattern': 'OPiOS'}, value17, {'label': 'Opera', 'pattern': 'OPR'}, 'Chrome', {'label': 'Chrome Mobile', 'pattern': '(?:CriOS|CrMo)'}, {'label': 'Firefox', 'pattern': '(?:Firefox|Minefield)'}, {'label': 'Firefox for iOS', 'pattern': 'FxiOS'}, {'label': 'IE', 'pattern': 'IEMobile'}, {'label': 'IE', 'pattern': 'MSIE'}, value20]); const value22 = 'BlackBerry'; const value23 = closure([{'label': 'BlackBerry', 'pattern': 'BB10'}, value22, {'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 value24 = 1; const value25 = ((a0) => reduce_34563(a0, _fun34574))({Apple: {'iPad': 1, 'iPhone': 1, 'iPod': 1}, Archos: {}, Amazon: {'Kindle': 1, 'Kindle Fire': 1}, Asus: {Transformer: value24}, ['Barnes & Noble']: {Nook: value24}, BlackBerry: {PlayBook: value24}, Google: {'Google TV': 1, 'Nexus': 1}, HP: {TouchPad: value24}, HTC: {}, LG: {}, Microsoft: {'Xbox': 1, 'Xbox One': 1}, Motorola: {Xoom: value24}, Nintendo: {'Wii U': 1, 'Wii': 1}, Nokia: {Lumia: value24}, Samsung: {'Galaxy S': 1, 'Galaxy S2': 1, 'Galaxy S3': 1, 'Galaxy S4': 1}, Sony: {'PlayStation': 1, 'PlayStation Vita': 1}}); const value26 = 'Kubuntu'; const value27 = ((a0) => reduce_34563(a0, _fun34576))(['Windows Phone', 'Android', 'CentOS', {'label': 'Chrome OS', 'pattern': 'CrOS'}, 'Debian', 'Fedora', 'FreeBSD', 'Gentoo', 'Haiku', value26, '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 (value15) { r25 = [value15]; break reducibleJoin50; } r25 = value15; break reducibleJoin50; } reducibleJoin52: while (true) { if (value25) { value28 = !value23; r14 = value28; break reducibleJoin52; } r14 = value25; break reducibleJoin52; } reducibleJoin54: while (true) { if (r14) { value29 = closure([value25]); env0_2 = value29; r44 = value29; break reducibleJoin54; } r44 = value23; break reducibleJoin54; } regexp = RegExp('\\bGoogle TV\\b', ''); let exec = regexp.exec; const value30 = Reflect.apply(exec, regexp, [r44]); reducibleJoin56: while (true) { if (value30) { property = value30[0]; env0_2 = property; r49 = property; break reducibleJoin56; } r49 = r44; break reducibleJoin56; } regexp = RegExp('\\bSimulator\\b', 'i'); reducibleJoin60: while (true) { if (regexp.test(r10)) { value31 = ''; reducibleJoin59: while (true) { if (r49) { value32 = r49 + ' '; r46 = value32; break reducibleJoin59; } r46 = value31; break reducibleJoin59; } value33 = r46 + 'Simulator'; env0_2 = value33; r44 = value33; break reducibleJoin60; } r44 = r49; break reducibleJoin60; } const value34 = value21 == 'Opera Mini'; reducibleJoin62: while (true) { if (value34) { regexp = RegExp('\\bOPiOS\\b', ''); test = regexp.test; value35 = Reflect.apply(test, regexp, [r10]); r14 = value35; break reducibleJoin62; } r14 = value34; break reducibleJoin62; } reducibleJoin64: while (true) { if (r14) { push = object.push; Reflect.apply(push, object, ['running in Turbo/Uncompressed mode']); break reducibleJoin64; } break reducibleJoin64; } reducibleJoin123: while (true) { reducibleJoin66: while (true) { if (value19 != value21) { break reducibleJoin66; } regexp = RegExp('\\blike iPhone OS\\b', ''); test = regexp.test; if (Reflect.apply(test, regexp, [r10])) { parse_34566Binding = parse_34566; replace = r10.replace; value60 = parse_34566Binding(Reflect.apply(replace, r10, [RegExp('like iPhone OS', ''), ''])); manufacturer = value60.manufacturer; product = value60.product; env0_2 = product; r5 = value27; r6 = value21; r11 = manufacturer; r14 = product; break reducibleJoin123; } break reducibleJoin66; } regexp = RegExp('^iP', ''); test = regexp.test; if (Reflect.apply(test, regexp, [r44])) { r6 = value21 || value20; regexp = RegExp(' OS ([\\d_]+)', 'i'); exec = regexp.exec; value55 = Reflect.apply(exec, regexp, [r10]); value56 = ''; reducibleJoin121: while (true) { if (value55) { property = value55[value24]; replace = property.replace; value57 = Reflect.apply(replace, property, [RegExp('_', 'g'), '.']); value58 = ' ' + value57; r46 = value58; break reducibleJoin121; } r46 = value56; break reducibleJoin121; } value59 = 'iOS' + r46; r5 = value59; r11 = value25; r14 = r44; break reducibleJoin123; } if (value21 == 'Konqueror') { regexp = RegExp('buntu', 'i'); if (!regexp.test(value27)) { r5 = value26; r6 = value21; r11 = value25; r14 = r44; break reducibleJoin123; } } if (value25) { if (value25 != 'Google') { regexp = RegExp('Chrome', ''); test = regexp.test; if (Reflect.apply(test, regexp, [value21])) { regexp = RegExp('\\bMobile Safari\\b', 'i'); if (!regexp.test(r10)) { value52 = 'Android Browser'; regexp = RegExp('\\bAndroid\\b', ''); value53 = regexp.test(value27); value54 = 'Android'; r46 = value53 ? value27 : value54; r5 = r46; r6 = value52; r11 = value25; r14 = r44; break reducibleJoin123; } } regexp = RegExp('\\bVita\\b', ''); test = regexp.test; if (Reflect.apply(test, regexp, [r44])) { value52 = 'Android Browser'; regexp = RegExp('\\bAndroid\\b', ''); value53 = regexp.test(value27); value54 = 'Android'; r46 = value53 ? value27 : value54; r5 = r46; r6 = value52; r11 = value25; r14 = r44; break reducibleJoin123; } } } regexp = RegExp('\\bAndroid\\b', ''); test = regexp.test; if (Reflect.apply(test, regexp, [value27])) { regexp = RegExp('^Chrome', ''); test = regexp.test; if (Reflect.apply(test, regexp, [value21])) { regexp = RegExp('\\bVersion\\/', 'i'); test = regexp.test; if (Reflect.apply(test, regexp, [r10])) { value52 = 'Android Browser'; regexp = RegExp('\\bAndroid\\b', ''); test = regexp.test; value53 = Reflect.apply(test, regexp, [value27]); value54 = 'Android'; r46 = value53 ? value27 : value54; r5 = r46; r6 = value52; r11 = value25; r14 = r44; break reducibleJoin123; } } } if (value21 == 'Silk') { regexp = RegExp('\\bMobi', 'i'); test = regexp.test; reducibleJoin114: while (true) { if (Reflect.apply(test, regexp, [r10])) { r5 = value27; break reducibleJoin114; } value51 = 'Android'; unshift = object.unshift; Reflect.apply(unshift, object, ['desktop mode']); r5 = value51; break reducibleJoin114; } regexp = RegExp('Accelerated *= *true', 'i'); test = regexp.test; if (Reflect.apply(test, regexp, [r10])) { unshift = object.unshift; Reflect.apply(unshift, object, ['accelerated']); r6 = value21; r11 = value25; r14 = r44; break reducibleJoin123; } r6 = value21; r11 = value25; r14 = r44; break reducibleJoin123; } if (value21 != 'PaleMoon') { r12 = value30; } else { regexp = RegExp('\\bFirefox\\/([\\d.]+)\\b', ''); exec = regexp.exec; value36 = Reflect.apply(exec, regexp, [r10]); if (value36) { push = object.push; Reflect.apply(push, object, ['identifying as Firefox ' + value36[value24]]); r5 = value27; r6 = value21; r11 = value25; r14 = r44; break reducibleJoin123; } r12 = value36; } if (value21 == 'Firefox') { regexp = RegExp('\\b(Mobile|Tablet|TV)\\b', 'i'); exec = regexp.exec; value37 = Reflect.apply(exec, regexp, [r10]); if (value37) { reducibleJoin109: while (true) { if (value27) { r5 = value27; break reducibleJoin109; } value50 = 'Firefox OS'; r5 = value50; break reducibleJoin109; } if (r44) { r6 = value21; r11 = value25; r14 = r44; break reducibleJoin123; } property = value37[value24]; env0_2 = property; r6 = value21; r11 = value25; r14 = property; break reducibleJoin123; } r12 = value37; } if (value21) { regexp = RegExp('\\bMinefield\\b', 'i'); test = regexp.test; value38 = Reflect.apply(test, regexp, [r10]); value39 = !value38; reducibleJoin85: while (true) { if (value38) { r46 = value39; break reducibleJoin85; } regexp = RegExp('\\b(?:Firefox|Safari)\\b', ''); exec = regexp.exec; value40 = Reflect.apply(exec, regexp, [value21]); r46 = value40; break reducibleJoin85; } if (!r46) { value41 = value21 == 'Electron'; reducibleJoin90: while (true) { if (value41) { regexp = RegExp('\\bChrome\\/([\\d.]+)\\b', ''); exec = regexp.exec; value42 = Reflect.apply(exec, regexp, [r10]); reducibleJoin89: while (true) { if (value42) { r47 = value42; break reducibleJoin89; } value43 = 0; r47 = value43; break reducibleJoin89; } property = r47[value24]; r12 = property; r46 = property; break reducibleJoin90; } r12 = r46; r46 = value41; break reducibleJoin90; } if (r46) { push = object.push; Reflect.apply(push, object, ['Chromium ' + r12]); r5 = value27; r6 = value21; r11 = value25; r14 = r44; break reducibleJoin123; } r5 = value27; r6 = value21; r11 = value25; r14 = r44; break reducibleJoin123; } r12 = r46; } reducibleJoin94: while (true) { if (value21) { value44 = !r44; r46 = value44; break reducibleJoin94; } r46 = value21; break reducibleJoin94; } reducibleJoin96: while (true) { if (r46) { regexp = RegExp('[\\/,]|^[^(]+?\\)', ''); test = regexp.test; slice = r10.slice; indexOf = r10.indexOf; value45 = Reflect.apply(indexOf, r10, [r12 + '/']); value46 = Reflect.apply(test, regexp, [Reflect.apply(slice, r10, [value45 + 8])]); r46 = value46; break reducibleJoin96; } break reducibleJoin96; } r6 = r46 ? value7 : value21; r46 = r44 || value25; if (!r46) { r46 = value27; } reducibleJoin104: while (true) { if (r46) { r47 = r44 || value25; reducibleJoin103: while (true) { if (r47) { break reducibleJoin103; } regexp = RegExp('\\b(?:Android|Symbian OS|Tablet OS|webOS)\\b', ''); test = regexp.test; value47 = Reflect.apply(test, regexp, [value27]); r47 = value47; break reducibleJoin103; } r462 = r47; break reducibleJoin104; } r462 = r46; break reducibleJoin104; } if (r462) { regexp = RegExp('[a-z]+(?: Hat)?', 'i'); exec = regexp.exec; regexp2 = RegExp('\\bAndroid\\b', ''); test = regexp2.test; if (Reflect.apply(test, regexp2, [value27])) { r46 = value27; } value48 = Reflect.apply(exec, regexp, [r46]); value49 = value48 + ' Browser'; r5 = value27; r6 = value49; r11 = value25; r14 = r44; break reducibleJoin123; } r5 = value27; r11 = value25; r14 = r44; break reducibleJoin123; } reducibleJoin125: while (true) { if (r2) { r3 = r2; break reducibleJoin125; } value61 = qualify_34562(r6); value62 = ((a0) => reduce_34563(a0, _fun34578))(['(?:Cloud9|CriOS|CrMo|Edge|FxiOS|IEMobile|Iron|Opera ?Mini|OPiOS|OPR|Raven|SamsungBrowser|Silk(?!/[\\d.]+$))', 'Version', value61, '(?:Firefox|Minefield|NetFront)']); r3 = value62; break reducibleJoin125; } reducibleJoin132: while (true) { reducibleJoin131: while (true) { if (r25 != 'iCab') { regexp = RegExp('\\bOpera\\b', ''); value63 = regexp.test(r6); if (value63) { regexp = RegExp('\\bOPR\\b', ''); reducibleJoin130: while (true) { if (regexp.test(r10)) { value64 = 'Blink'; r42 = value64; break reducibleJoin130; } r42 = value12; break reducibleJoin130; } r29 = r42; break reducibleJoin131; } r29 = value63; break reducibleJoin131; } parseFloat = global.parseFloat; float = parseFloat(r3); if (float > 3) { r18 = value11; break reducibleJoin132; } regexp = RegExp('\\bOpera\\b', ''); test = regexp.test; value63 = Reflect.apply(test, regexp, [r6]); if (value63) { regexp = RegExp('\\bOPR\\b', ''); test = regexp.test; reducibleJoin130: while (true) { if (Reflect.apply(test, regexp, [r10])) { value64 = 'Blink'; r42 = value64; break reducibleJoin130; } r42 = value12; break reducibleJoin130; } r29 = r42; break reducibleJoin131; } r29 = value63; break reducibleJoin131; } r18 = r29; break reducibleJoin132; } reducibleJoin137: while (true) { if (r18) { break reducibleJoin137; } regexp = RegExp('\\b(?:Midori|Nook|Safari)\\b', 'i'); test = regexp.test; value65 = Reflect.apply(test, regexp, [r10]); reducibleJoin135: while (true) { if (value65) { regexp = RegExp('^(?:Trident|EdgeHTML)$', ''); test = regexp.test; value66 = !Reflect.apply(test, regexp, [r25]); r29 = value66; break reducibleJoin135; } r29 = value65; break reducibleJoin135; } if (r29) { r29 = value11; } r18 = r29; break reducibleJoin137; } reducibleJoin144: while (true) { if (r18) { break reducibleJoin144; } value67 = !r25; reducibleJoin140: while (true) { if (r25) { r29 = value67; break reducibleJoin140; } regexp = RegExp('\\bMSIE\\b', 'i'); test = regexp.test; value68 = Reflect.apply(test, regexp, [r10]); r29 = value68; break reducibleJoin140; } reducibleJoin143: while (true) { if (r29) { r42 = r5 == 'Mac OS' ? value14 : value10; r29 = r42; break reducibleJoin143; } break reducibleJoin143; } r18 = r29; break reducibleJoin144; } reducibleJoin149: while (true) { if (r18) { break reducibleJoin149; } value69 = value11 == r25; reducibleJoin147: while (true) { if (value69) { regexp = RegExp('\\bPlayStation\\b(?! Vita\\b)', 'i'); test = regexp.test; value70 = Reflect.apply(test, regexp, [r6]); r29 = value70; break reducibleJoin147; } r29 = value69; break reducibleJoin147; } if (r29) { r29 = value13; } r18 = r29; break reducibleJoin149; } reducibleJoin151: while (true) { if (r18) { r32 = [r18]; break reducibleJoin151; } r32 = r25; break reducibleJoin151; } reducibleJoin173: while (true) { reducibleJoin155: while (true) { if (value19 != r6) { r12 = r18; break reducibleJoin155; } regexp = RegExp('; *(?:XBLWP|ZuneWP)(\\d+)', 'i'); exec = regexp.exec; value71 = Reflect.apply(exec, regexp, [r10]); reducibleJoin154: while (true) { if (value71) { r18 = value71; break reducibleJoin154; } value72 = 0; r18 = value72; break reducibleJoin154; } property = r18[value24]; if (property) { value83 = r6 + ' Mobile'; regexp = RegExp('\\+$', ''); test = regexp.test; reducibleJoin172: while (true) { if (Reflect.apply(test, regexp, [property])) { r23 = property; break reducibleJoin172; } value84 = property + '.x'; r23 = value84; break reducibleJoin172; } value85 = 'Windows Phone ' + r23; unshift = object.unshift; Reflect.apply(unshift, object, ['desktop mode']); r5 = value85; r6 = value83; r12 = property; break reducibleJoin173; } r12 = property; break reducibleJoin155; } regexp = RegExp('\\bWPDesktop\\b', 'i'); test = regexp.test; if (Reflect.apply(test, regexp, [r10])) { value79 = 'IE Mobile'; value80 = 'Windows Phone 8.x'; unshift = object.unshift; Reflect.apply(unshift, object, ['desktop mode']); if (r3) { r5 = value80; r6 = value79; break reducibleJoin173; } regexp = RegExp('\\brv:([\\d.]+)', ''); exec = regexp.exec; value81 = Reflect.apply(exec, regexp, [r10]); reducibleJoin169: while (true) { if (value81) { r18 = value81; break reducibleJoin169; } value82 = 0; r18 = value82; break reducibleJoin169; } property = r18[value24]; r3 = property; r5 = value80; r6 = value79; break reducibleJoin173; } value73 = value19 != r6; reducibleJoin158: while (true) { if (value73) { value74 = value10 == r32; r18 = value74; break reducibleJoin158; } r18 = value73; break reducibleJoin158; } reducibleJoin160: while (true) { if (r18) { regexp = RegExp('\\brv:([\\d.]+)', ''); exec = regexp.exec; value75 = Reflect.apply(exec, regexp, [r10]); r12 = value75; r18 = value75; break reducibleJoin160; } break reducibleJoin160; } if (r18) { reducibleJoin165: while (true) { if (r6) { push = object.push; value76 = 'identifying as ' + r6; value77 = ''; reducibleJoin164: while (true) { if (r3) { value78 = ' ' + r3; r18 = value78; break reducibleJoin164; } r18 = value77; break reducibleJoin164; } Reflect.apply(push, object, [value76 + r18]); break reducibleJoin165; } break reducibleJoin165; } property = r12[value24]; r3 = property; r6 = value19; break reducibleJoin173; } break reducibleJoin173; } reducibleJoin242: while (true) { if (value) { value86 = 'number'; reducibleJoin176: while (true) { if (value7 != r27) { global = r27.global; value87 = typeof global; r42 = value87; break reducibleJoin176; } r42 = value86; break reducibleJoin176; } regexp = RegExp('^(?:boolean|number|string|undefined)$', ''); test = regexp.test; value88 = Reflect.apply(test, regexp, [r42]); reducibleJoin180: while (true) { if (value88) { r25 = value88; break reducibleJoin180; } value89 = r42 === 'object'; reducibleJoin179: while (true) { if (value89) { global = r27.global; value90 = !global; r42 = value90; break reducibleJoin179; } r42 = value89; break reducibleJoin179; } r25 = r42; break reducibleJoin180; } if (r25) { getClassOf_34561Binding = getClassOf_34561; runtime = r27.runtime; if (getClassOf_34561Binding(runtime) == r41) { value101 = 'Adobe AIR'; flash = runtime.flash; system = flash.system; Capabilities = system.Capabilities; os = Capabilities.os; r5 = os; r6 = value101; r12 = runtime; r25 = r32; r29 = r10; } else { getClassOf_34561Binding = getClassOf_34561; phantom = r27.phantom; if (getClassOf_34561Binding(phantom) == r39) { version = phantom.version; if (!version) { version = value7; } reducibleJoin200: while (true) { if (version) { major = version.major; value98 = major + '.'; minor = version.minor; value99 = value98 + minor; patch = version.patch; value100 = value99 + '.' + patch; r34 = value100; break reducibleJoin200; } r34 = version; break reducibleJoin200; } r3 = r34; r6 = value16; r12 = version; r25 = r32; r29 = r10; } else { documentMode = r40.documentMode; reducibleJoin239: while (true) { reducibleJoin187: while (true) { if (value86 !== typeof documentMode) { r12 = phantom; value92 = value86 === typeof r40.documentMode; if (value92) { regexp = RegExp('^(?:Chrome|Firefox)\\b', ''); test = regexp.test; value93 = Reflect.apply(test, regexp, [r6]); r39 = value93; break reducibleJoin187; } r39 = value92; break reducibleJoin187; } regexp = RegExp('\\bTrident\\/(\\d+)', 'i'); exec = regexp.exec; value91 = Reflect.apply(exec, regexp, [r10]); if (value91) { items10 = [r3]; items10[1] = r40.documentMode; value96 = Number(value91[value24]) + 4; reducibleJoin193: while (true) { if (value96 == items10[value24]) { break reducibleJoin193; } push = object.push; Reflect.apply(push, object, ['IE ' + items10[value24] + ' mode']); reducibleJoin192: while (true) { if (r32) { r32[value24] = ''; break reducibleJoin192; } break reducibleJoin192; } items10[value24] = value96; break reducibleJoin193; } if (value19 == r6) { String = global.String; property = items10[value24]; toFixed = property.toFixed; value97 = String(Reflect.apply(toFixed, property, [value24])); r39 = value97; } else { property = items10[0]; r39 = property; } r3 = r39; r12 = value96; r25 = r32; r29 = r10; break reducibleJoin239; } r12 = value91; documentMode = r40.documentMode; value92 = value86 === typeof documentMode; if (value92) { regexp = RegExp('^(?:Chrome|Firefox)\\b', ''); test = regexp.test; value93 = Reflect.apply(test, regexp, [r6]); r39 = value93; break reducibleJoin187; } r39 = value92; break reducibleJoin187; } if (r39) { push = object.push; Reflect.apply(push, object, ['masking as ' + r6 + ' ' + r3]); value94 = '11.0'; value95 = 'Windows'; r3 = value94; r5 = value95; r6 = value19; r25 = ['Trident']; r29 = r10; break reducibleJoin239; } r25 = r32; r29 = r10; break reducibleJoin239; } } } } else { reducibleJoin206: while (true) { if (r38) { lang = r38.lang; System = lang.System; getProperty = System.getProperty; value102 = Reflect.apply(getProperty, System, ['os.arch']); reducibleJoin205: while (true) { if (r5) { r39 = r5; break reducibleJoin205; } getProperty = System.getProperty; value103 = Reflect.apply(getProperty, System, ['os.name']); value104 = value103 + ' '; getProperty = System.getProperty; value105 = value104 + Reflect.apply(getProperty, System, ['os.version']); r39 = value105; break reducibleJoin205; } r5 = r39; r12 = System; r34 = value102; break reducibleJoin206; } r34 = r10; break reducibleJoin206; } if (r37) { reducibleJoin224: while (true) { reduciblePort237: while (true) { exceptionLanding231: while (true) { try { require = r27.require; } catch (error) { break exceptionLanding231; } break reducibleJoin224; } system = r27.system; reducibleJoin233: while (true) { if (system) { global = system.global; system2 = global.system; system3 = r27.system; value115 = system2 == system3; r37 = value115; break reducibleJoin233; } r37 = system; break reducibleJoin233; } reducibleJoin237: while (true) { if (r37) { value116 = 'Narwhal'; if (r5) { r6 = value116; r12 = system; break reducibleJoin237; } os = system[0].os; r37 = os || value7; r5 = r37; r6 = value116; r12 = system; break reducibleJoin237; } r12 = system; break reducibleJoin237; } break reduciblePort237; } reducibleJoin239: while (true) { if (r6) { r25 = r32; r29 = r34; break reducibleJoin239; } value117 = 'Rhino'; r6 = value117; r25 = r32; r29 = r34; break reducibleJoin239; } reducibleJoin241: while (true) { if (r5) { value118 = format_34559(r5); r32 = value118; break reducibleJoin241; } r32 = r5; break reducibleJoin241; } r5 = r32; r18 = r29; r23 = r25; break reducibleJoin242; } try { moduleValue = Reflect.apply(require, r27, ['ringo/engine']); } catch (error) { break exceptionLanding231; } try { version = moduleValue.version; } catch (error) { break exceptionLanding231; } try { join = version.join; } catch (error) { break exceptionLanding231; } try { value113 = Reflect.apply(join, version, ['.']); } catch (error) { break exceptionLanding231; } value114 = 'RingoJS'; r3 = value113; r6 = value114; reducibleJoin239: while (true) { if (r6) { r25 = r32; r29 = r34; break reducibleJoin239; } value117 = 'Rhino'; r6 = value117; r25 = r32; r29 = r34; break reducibleJoin239; } } else { process = r27.process; value106 = typeof process === 'object'; reducibleJoin209: while (true) { if (value106) { process = r27.process; browser = process.browser; value107 = !browser; r37 = value107; break reducibleJoin209; } r37 = value106; break reducibleJoin209; } reducibleJoin211: while (true) { if (r37) { process = r27.process; r12 = process; r37 = process; break reducibleJoin211; } break reducibleJoin211; } reducibleJoin239: while (true) { if (r37) { versions = r12.versions; reducibleJoin217: while (true) { if (typeof versions !== 'object') { break reducibleJoin217; } versions = r12.versions; electron = versions.electron; if (typeof electron === 'string') { push = object.push; versions = r12.versions; Reflect.apply(push, object, ['Node ' + versions.node]); value110 = 'Electron'; versions = r12.versions; electron = versions.electron; r3 = electron; r6 = value110; break reducibleJoin217; } versions = r12.versions; nw = versions.nw; if (typeof nw !== 'string') { break reducibleJoin217; } push = object.push; value108 = 'Chromium ' + r3; versions = r12.versions; node = versions.node; Reflect.apply(push, object, [value108, 'Node ' + node]); value109 = 'NW.js'; versions = r12.versions; nw = versions.nw; r3 = nw; r6 = value109; break reducibleJoin217; } reducibleJoin221: while (true) { if (r6) { r37 = r34; break reducibleJoin221; } value111 = 'Node.js'; arch = r12.arch; platform = r12.platform; regexp = RegExp('[\\d.]+', ''); exec = regexp.exec; version = r12.version; value112 = Reflect.apply(exec, regexp, [version]); reducibleJoin220: while (true) { if (value112) { property = value112[0]; r39 = property; break reducibleJoin220; } r39 = value7; break reducibleJoin220; } r3 = r39; r5 = platform; r6 = value111; r37 = arch; break reducibleJoin221; } r25 = r32; r29 = r37; break reducibleJoin239; } r25 = r32; r29 = r34; break reducibleJoin239; } } } reducibleJoin241: while (true) { if (r5) { value118 = format_34559(r5); r32 = value118; break reducibleJoin241; } r32 = r5; break reducibleJoin241; } r5 = r32; r18 = r29; r23 = r25; break reducibleJoin242; } r18 = r10; r23 = r32; break reducibleJoin242; } reducibleJoin252: while (true) { if (r3) { regexp = RegExp('(?:[ab]|dp|pre|[ab]\\d+pre)(?:\\d+\\+?)?$', 'i'); exec = regexp.exec; value119 = Reflect.apply(exec, regexp, [r3]); reducibleJoin247: while (true) { if (value119) { r25 = value119; break reducibleJoin247; } regexp = RegExp('(?:alpha|beta)(?: ?\\d)?', 'i'); exec = regexp.exec; value120 = r10 + ';'; reducibleJoin246: while (true) { if (value) { appMinorVersion = r20.appMinorVersion; r32 = appMinorVersion; break reducibleJoin246; } r32 = value; break reducibleJoin246; } value121 = Reflect.apply(exec, regexp, [value120 + r32]); r25 = value121; break reducibleJoin247; } reducibleJoin251: while (true) { if (r25) { break reducibleJoin251; } regexp = RegExp('\\bMinefield\\b', 'i'); test = regexp.test; value122 = Reflect.apply(test, regexp, [r10]); reducibleJoin250: while (true) { if (value122) { value123 = 'a'; r32 = value123; break reducibleJoin250; } r32 = value122; break reducibleJoin250; } r25 = r32; break reducibleJoin251; } r12 = r25; r29 = r25; break reducibleJoin252; } r29 = r3; break reducibleJoin252; } reducibleJoin258: while (true) { if (r29) { regexp = RegExp('b', 'i'); test = regexp.test; value124 = Reflect.apply(test, regexp, [r12]); value125 = 'alpha'; reducibleJoin255: while (true) { if (value124) { value126 = 'beta'; r29 = value126; break reducibleJoin255; } r29 = value125; break reducibleJoin255; } replace = r3.replace; RegExp = global.RegExp; value127 = RegExp(r12 + '\\+?$'); value128 = ''; value129 = Reflect.apply(replace, r3, [value127, value128]); if (r29 === 'beta') { r33 = r36; } value130 = value129 + r33; regexp = RegExp('\\d+\\+?', ''); exec = regexp.exec; value131 = Reflect.apply(exec, regexp, [r12]); r32 = value131 || value128; value132 = value130 + r32; r3 = value132; r25 = r29; break reducibleJoin258; } r25 = value7; break reducibleJoin258; } reducibleJoin341: while (true) { reduciblePort342: while (true) { exceptionLanding333: while (true) { if (r6 == 'Fennec') { break reducibleJoin341; } if (r6 == 'Firefox') { regexp = RegExp('\\b(?:Android|Firefox OS)\\b', ''); if (regexp.test(r5)) { break reducibleJoin341; } } if (r6 == 'Maxthon') { if (r3) { replace = r3.replace; value168 = Reflect.apply(replace, r3, [RegExp('\\.[\\d.]+', ''), '.x']); r2 = r14; r3 = value168; r9 = r23; r13 = r11; break reduciblePort342; } } regexp = RegExp('\\bXbox\\b', 'i'); test = regexp.test; if (Reflect.apply(test, regexp, [r14])) { if (r14 == 'Xbox 360') { r5 = value7; } value166 = r14 == 'Xbox 360'; reducibleJoin338: while (true) { if (value166) { regexp = RegExp('\\bIEMobile\\b', ''); test = regexp.test; value167 = Reflect.apply(test, regexp, [r10]); r26 = value167; break reducibleJoin338; } r26 = value166; break reducibleJoin338; } if (r26) { unshift = object.unshift; Reflect.apply(unshift, object, ['mobile mode']); r2 = r14; r9 = r23; r13 = r11; break reduciblePort342; } r2 = r14; r9 = r23; r13 = r11; break reduciblePort342; } 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 (value19 == r6) { if (value) { try { external = r27.external; } catch (error) { break exceptionLanding333; } try { value164 = value7 !== external; } catch (error) { break exceptionLanding333; } if (value164) { r2 = r14; r9 = r23; r13 = r11; break reduciblePort342; } try { unshift = object.unshift; } catch (error) { break exceptionLanding333; } try { Reflect.apply(unshift, object, ['platform preview']); } catch (error) { break exceptionLanding333; } r2 = r14; r9 = r23; r13 = r11; break reduciblePort342; } } 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])) { value137 = this != forOwn_34560; reducibleJoin280: while (true) { if (value137) { value138 = r14 != 'Wii'; r29 = value138; break reducibleJoin280; } r29 = value137; break reducibleJoin280; } reducibleJoin307: while (true) { if (r29) { r2 = value && r9; reducibleJoin286: while (true) { if (r2) { break reducibleJoin286; } regexp = RegExp('Opera', ''); test = regexp.test; value139 = Reflect.apply(test, regexp, [r6]); reducibleJoin285: while (true) { if (value139) { regexp = RegExp('\\b(?:MSIE|Firefox)\\b', 'i'); test = regexp.test; value140 = Reflect.apply(test, regexp, [r10]); r9 = value140; break reducibleJoin285; } r9 = value139; break reducibleJoin285; } r2 = r9; break reducibleJoin286; } reducibleJoin290: while (true) { if (r2) { break reducibleJoin290; } value141 = r6 == 'Firefox'; reducibleJoin289: while (true) { if (value141) { regexp = RegExp('\\bOS X (?:\\d+\\.){2,}', ''); test = regexp.test; value142 = Reflect.apply(test, regexp, [r5]); r9 = value142; break reducibleJoin289; } r9 = value141; break reducibleJoin289; } r2 = r9; break reducibleJoin290; } reducibleJoin306: while (true) { if (r2) { break reducibleJoin306; } value143 = value19 == r6; reducibleJoin305: while (true) { if (value143) { reducibleJoin294: while (true) { if (r5) { regexp = RegExp('^Win', ''); test = regexp.test; value144 = !Reflect.apply(test, regexp, [r5]); r13 = value144; break reducibleJoin294; } r13 = r5; break reducibleJoin294; } reducibleJoin296: while (true) { if (r13) { value145 = r3 > 5.5; r13 = value145; break reducibleJoin296; } break reducibleJoin296; } reducibleJoin300: while (true) { if (r13) { break reducibleJoin300; } regexp = RegExp('\\bWindows XP\\b', ''); test = regexp.test; value146 = Reflect.apply(test, regexp, [r5]); reducibleJoin299: while (true) { if (value146) { value147 = r3 > 8; r30 = value147; break reducibleJoin299; } r30 = value146; break reducibleJoin299; } r13 = r30; break reducibleJoin300; } reducibleJoin304: while (true) { if (r13) { break reducibleJoin304; } value148 = r3 == 8; reducibleJoin303: while (true) { if (value148) { regexp = RegExp('\\bTrident\\b', ''); test = regexp.test; value149 = !Reflect.apply(test, regexp, [r10]); r30 = value149; break reducibleJoin303; } r30 = value148; break reducibleJoin303; } r13 = r30; break reducibleJoin304; } r9 = r13; break reducibleJoin305; } r9 = value143; break reducibleJoin305; } r2 = r9; break reducibleJoin306; } r29 = r2; break reducibleJoin307; } break reducibleJoin307; } reducibleJoin309: while (true) { if (r29) { binding = env0_3; test = binding.test; parse_34566Binding = parse_34566; call = parse_34566Binding.call; forOwn_34560Binding = forOwn_34560; replace = r10.replace; value150 = Reflect.apply(replace, r10, [env0_3, '']); value151 = Reflect.apply(call, parse_34566Binding, [forOwn_34560Binding, value150 + ';']); value152 = !Reflect.apply(test, binding, [value151]); r12 = value151; r29 = value152; break reducibleJoin309; } break reducibleJoin309; } reducibleJoin311: while (true) { if (r29) { name = r12.name; r29 = name; break reducibleJoin311; } break reducibleJoin311; } if (r29) { name = r12.name; value153 = 'ing as ' + name; version = r12.version; value154 = ''; reducibleJoin314: while (true) { if (version) { value155 = ' ' + version; r29 = value155; break reducibleJoin314; } r29 = value154; break reducibleJoin314; } value156 = value153 + r29; binding = env0_3; test = binding.test; if (Reflect.apply(test, binding, [r6])) { regexp = RegExp('\\bIE\\b', ''); test = regexp.test; value159 = Reflect.apply(test, regexp, [value156]); reducibleJoin321: while (true) { if (value159) { value160 = r5 == 'Mac OS'; r29 = value160; break reducibleJoin321; } r29 = value159; break reducibleJoin321; } if (r29) { r5 = value7; } value161 = 'identify' + value156; r12 = value161; } else { value157 = 'mask' + value156; reducibleJoin317: while (true) { if (r35) { format_34559Binding = format_34559; replace = r35.replace; value158 = format_34559Binding(Reflect.apply(replace, r35, [RegExp('([a-z])([A-Z])', 'g'), '$1 $2'])); r29 = value158; break reducibleJoin317; } r29 = value17; break reducibleJoin317; } regexp = RegExp('\\bIE\\b', ''); test = regexp.test; if (Reflect.apply(test, regexp, [value157])) { r5 = value7; } if (value) { r6 = r29; r12 = value157; } else { r3 = value7; r6 = r29; r12 = value157; } } push = object.push; Reflect.apply(push, object, [r12]); r2 = r14; r9 = ['Presto']; r13 = r11; break reduciblePort342; } r2 = r14; r9 = r23; r13 = r11; break reduciblePort342; } } RegExp = global.RegExp; replace = r14.replace; value134 = RegExp(Reflect.apply(replace, r14, [RegExp(' +', 'g'), ' *']) + '/([.\\d]+)', 'i'); value135 = value134.exec(r10); reducibleJoin276: while (true) { if (value135) { r29 = value135; break reducibleJoin276; } value136 = 0; r29 = value136; break reducibleJoin276; } r29 = r29[value24] || r3; if (r29) { items12 = [r29]; regexp = RegExp('BB10', ''); items12[1] = regexp.test(r10); value162 = 'Device Software'; reducibleJoin326: while (true) { if (items12[value24]) { env0_2 = value7; r29 = value22; r30 = value7; r33 = value22; break reducibleJoin326; } r29 = r11; r30 = r14; r33 = value162; break reducibleJoin326; } value163 = r33 + ' ' + items12[0]; r2 = r30; r3 = value7; r5 = value163; r9 = r23; r13 = r29; break reduciblePort342; } r12 = r29; value137 = this != forOwn_34560; reducibleJoin280: while (true) { if (value137) { value138 = r14 != 'Wii'; r29 = value138; break reducibleJoin280; } r29 = value137; break reducibleJoin280; } reducibleJoin307: while (true) { if (r29) { r2 = value && r9; reducibleJoin286: while (true) { if (r2) { break reducibleJoin286; } regexp = RegExp('Opera', ''); test = regexp.test; value139 = Reflect.apply(test, regexp, [r6]); reducibleJoin285: while (true) { if (value139) { regexp = RegExp('\\b(?:MSIE|Firefox)\\b', 'i'); test = regexp.test; value140 = Reflect.apply(test, regexp, [r10]); r9 = value140; break reducibleJoin285; } r9 = value139; break reducibleJoin285; } r2 = r9; break reducibleJoin286; } reducibleJoin290: while (true) { if (r2) { break reducibleJoin290; } value141 = r6 == 'Firefox'; reducibleJoin289: while (true) { if (value141) { regexp = RegExp('\\bOS X (?:\\d+\\.){2,}', ''); test = regexp.test; value142 = Reflect.apply(test, regexp, [r5]); r9 = value142; break reducibleJoin289; } r9 = value141; break reducibleJoin289; } r2 = r9; break reducibleJoin290; } reducibleJoin306: while (true) { if (r2) { break reducibleJoin306; } value143 = value19 == r6; reducibleJoin305: while (true) { if (value143) { reducibleJoin294: while (true) { if (r5) { regexp = RegExp('^Win', ''); test = regexp.test; value144 = !Reflect.apply(test, regexp, [r5]); r13 = value144; break reducibleJoin294; } r13 = r5; break reducibleJoin294; } reducibleJoin296: while (true) { if (r13) { value145 = r3 > 5.5; r13 = value145; break reducibleJoin296; } break reducibleJoin296; } reducibleJoin300: while (true) { if (r13) { break reducibleJoin300; } regexp = RegExp('\\bWindows XP\\b', ''); test = regexp.test; value146 = Reflect.apply(test, regexp, [r5]); reducibleJoin299: while (true) { if (value146) { value147 = r3 > 8; r30 = value147; break reducibleJoin299; } r30 = value146; break reducibleJoin299; } r13 = r30; break reducibleJoin300; } reducibleJoin304: while (true) { if (r13) { break reducibleJoin304; } value148 = r3 == 8; reducibleJoin303: while (true) { if (value148) { regexp = RegExp('\\bTrident\\b', ''); test = regexp.test; value149 = !Reflect.apply(test, regexp, [r10]); r30 = value149; break reducibleJoin303; } r30 = value148; break reducibleJoin303; } r13 = r30; break reducibleJoin304; } r9 = r13; break reducibleJoin305; } r9 = value143; break reducibleJoin305; } r2 = r9; break reducibleJoin306; } r29 = r2; break reducibleJoin307; } break reducibleJoin307; } reducibleJoin309: while (true) { if (r29) { binding = env0_3; test = binding.test; parse_34566Binding = parse_34566; call = parse_34566Binding.call; forOwn_34560Binding = forOwn_34560; replace = r10.replace; value150 = Reflect.apply(replace, r10, [env0_3, '']); value151 = Reflect.apply(call, parse_34566Binding, [forOwn_34560Binding, value150 + ';']); value152 = !Reflect.apply(test, binding, [value151]); r12 = value151; r29 = value152; break reducibleJoin309; } break reducibleJoin309; } reducibleJoin311: while (true) { if (r29) { name = r12.name; r29 = name; break reducibleJoin311; } break reducibleJoin311; } if (r29) { name = r12.name; value153 = 'ing as ' + name; version = r12.version; value154 = ''; reducibleJoin314: while (true) { if (version) { value155 = ' ' + version; r29 = value155; break reducibleJoin314; } r29 = value154; break reducibleJoin314; } value156 = value153 + r29; binding = env0_3; if (binding.test(r6)) { regexp = RegExp('\\bIE\\b', ''); value159 = regexp.test(value156); reducibleJoin321: while (true) { if (value159) { value160 = r5 == 'Mac OS'; r29 = value160; break reducibleJoin321; } r29 = value159; break reducibleJoin321; } if (r29) { r5 = value7; } value161 = 'identify' + value156; r12 = value161; } else { value157 = 'mask' + value156; reducibleJoin317: while (true) { if (r35) { format_34559Binding = format_34559; replace = r35.replace; value158 = format_34559Binding(Reflect.apply(replace, r35, [RegExp('([a-z])([A-Z])', 'g'), '$1 $2'])); r29 = value158; break reducibleJoin317; } r29 = value17; break reducibleJoin317; } regexp = RegExp('\\bIE\\b', ''); if (regexp.test(value157)) { r5 = value7; } if (value) { r6 = r29; r12 = value157; } else { r3 = value7; r6 = r29; r12 = value157; } } push = object.push; Reflect.apply(push, object, [r12]); r2 = r14; r9 = ['Presto']; r13 = r11; break reduciblePort342; } r2 = r14; r9 = r23; r13 = r11; break reduciblePort342; } } value165 = r6 + ' Mobile'; r2 = r14; r6 = value165; r9 = r23; r13 = r11; break reduciblePort342; } } } if (value19 == r6) { if (value) { try { external = r27.external; } catch (error) { break exceptionLanding333; } try { value164 = value7 !== external; } catch (error) { break exceptionLanding333; } if (value164) { r2 = r14; r9 = r23; r13 = r11; break reduciblePort342; } try { unshift = object.unshift; } catch (error) { break exceptionLanding333; } try { Reflect.apply(unshift, object, ['platform preview']); } catch (error) { break exceptionLanding333; } r2 = r14; r9 = r23; r13 = r11; break reduciblePort342; } } 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])) { value137 = this != forOwn_34560; reducibleJoin280: while (true) { if (value137) { value138 = r14 != 'Wii'; r29 = value138; break reducibleJoin280; } r29 = value137; break reducibleJoin280; } reducibleJoin307: while (true) { if (r29) { r2 = value && r9; reducibleJoin286: while (true) { if (r2) { break reducibleJoin286; } regexp = RegExp('Opera', ''); test = regexp.test; value139 = Reflect.apply(test, regexp, [r6]); reducibleJoin285: while (true) { if (value139) { regexp = RegExp('\\b(?:MSIE|Firefox)\\b', 'i'); test = regexp.test; value140 = Reflect.apply(test, regexp, [r10]); r9 = value140; break reducibleJoin285; } r9 = value139; break reducibleJoin285; } r2 = r9; break reducibleJoin286; } reducibleJoin290: while (true) { if (r2) { break reducibleJoin290; } value141 = r6 == 'Firefox'; reducibleJoin289: while (true) { if (value141) { regexp = RegExp('\\bOS X (?:\\d+\\.){2,}', ''); test = regexp.test; value142 = Reflect.apply(test, regexp, [r5]); r9 = value142; break reducibleJoin289; } r9 = value141; break reducibleJoin289; } r2 = r9; break reducibleJoin290; } reducibleJoin306: while (true) { if (r2) { break reducibleJoin306; } value143 = value19 == r6; reducibleJoin305: while (true) { if (value143) { reducibleJoin294: while (true) { if (r5) { regexp = RegExp('^Win', ''); test = regexp.test; value144 = !Reflect.apply(test, regexp, [r5]); r13 = value144; break reducibleJoin294; } r13 = r5; break reducibleJoin294; } reducibleJoin296: while (true) { if (r13) { value145 = r3 > 5.5; r13 = value145; break reducibleJoin296; } break reducibleJoin296; } reducibleJoin300: while (true) { if (r13) { break reducibleJoin300; } regexp = RegExp('\\bWindows XP\\b', ''); test = regexp.test; value146 = Reflect.apply(test, regexp, [r5]); reducibleJoin299: while (true) { if (value146) { value147 = r3 > 8; r30 = value147; break reducibleJoin299; } r30 = value146; break reducibleJoin299; } r13 = r30; break reducibleJoin300; } reducibleJoin304: while (true) { if (r13) { break reducibleJoin304; } value148 = r3 == 8; reducibleJoin303: while (true) { if (value148) { regexp = RegExp('\\bTrident\\b', ''); test = regexp.test; value149 = !Reflect.apply(test, regexp, [r10]); r30 = value149; break reducibleJoin303; } r30 = value148; break reducibleJoin303; } r13 = r30; break reducibleJoin304; } r9 = r13; break reducibleJoin305; } r9 = value143; break reducibleJoin305; } r2 = r9; break reducibleJoin306; } r29 = r2; break reducibleJoin307; } break reducibleJoin307; } reducibleJoin309: while (true) { if (r29) { binding = env0_3; test = binding.test; parse_34566Binding = parse_34566; call = parse_34566Binding.call; forOwn_34560Binding = forOwn_34560; replace = r10.replace; value150 = Reflect.apply(replace, r10, [env0_3, '']); value151 = Reflect.apply(call, parse_34566Binding, [forOwn_34560Binding, value150 + ';']); value152 = !Reflect.apply(test, binding, [value151]); r12 = value151; r29 = value152; break reducibleJoin309; } break reducibleJoin309; } reducibleJoin311: while (true) { if (r29) { name = r12.name; r29 = name; break reducibleJoin311; } break reducibleJoin311; } if (r29) { name = r12.name; value153 = 'ing as ' + name; version = r12.version; value154 = ''; reducibleJoin314: while (true) { if (version) { value155 = ' ' + version; r29 = value155; break reducibleJoin314; } r29 = value154; break reducibleJoin314; } value156 = value153 + r29; binding = env0_3; test = binding.test; if (Reflect.apply(test, binding, [r6])) { regexp = RegExp('\\bIE\\b', ''); test = regexp.test; value159 = Reflect.apply(test, regexp, [value156]); reducibleJoin321: while (true) { if (value159) { value160 = r5 == 'Mac OS'; r29 = value160; break reducibleJoin321; } r29 = value159; break reducibleJoin321; } if (r29) { r5 = value7; } value161 = 'identify' + value156; r12 = value161; } else { value157 = 'mask' + value156; reducibleJoin317: while (true) { if (r35) { format_34559Binding = format_34559; replace = r35.replace; value158 = format_34559Binding(Reflect.apply(replace, r35, [RegExp('([a-z])([A-Z])', 'g'), '$1 $2'])); r29 = value158; break reducibleJoin317; } r29 = value17; break reducibleJoin317; } regexp = RegExp('\\bIE\\b', ''); test = regexp.test; if (Reflect.apply(test, regexp, [value157])) { r5 = value7; } if (value) { r6 = r29; r12 = value157; } else { r3 = value7; r6 = r29; r12 = value157; } } push = object.push; Reflect.apply(push, object, [r12]); r2 = r14; r9 = ['Presto']; r13 = r11; break reduciblePort342; } r2 = r14; r9 = r23; r13 = r11; break reduciblePort342; } } RegExp = global.RegExp; replace = r14.replace; value133 = Reflect.apply(replace, r14, [RegExp(' +', 'g'), ' *']); value134 = RegExp(value133 + '/([.\\d]+)', 'i'); exec = value134.exec; value135 = Reflect.apply(exec, value134, [r10]); reducibleJoin276: while (true) { if (value135) { r29 = value135; break reducibleJoin276; } value136 = 0; r29 = value136; break reducibleJoin276; } property = r29[value24]; r29 = property || r3; if (r29) { items12 = [r29]; regexp = RegExp('BB10', ''); test = regexp.test; items12[1] = Reflect.apply(test, regexp, [r10]); value162 = 'Device Software'; reducibleJoin326: while (true) { if (items12[value24]) { env0_2 = value7; r29 = value22; r30 = value7; r33 = value22; break reducibleJoin326; } r29 = r11; r30 = r14; r33 = value162; break reducibleJoin326; } property = items12[0]; value163 = r33 + ' ' + property; r2 = r30; r3 = value7; r5 = value163; r9 = r23; r13 = r29; break reduciblePort342; } r12 = r29; value137 = this != forOwn_34560; reducibleJoin280: while (true) { if (value137) { value138 = r14 != 'Wii'; r29 = value138; break reducibleJoin280; } r29 = value137; break reducibleJoin280; } reducibleJoin307: while (true) { if (r29) { r2 = value && r9; reducibleJoin286: while (true) { if (r2) { break reducibleJoin286; } regexp = RegExp('Opera', ''); test = regexp.test; value139 = Reflect.apply(test, regexp, [r6]); reducibleJoin285: while (true) { if (value139) { regexp = RegExp('\\b(?:MSIE|Firefox)\\b', 'i'); test = regexp.test; value140 = Reflect.apply(test, regexp, [r10]); r9 = value140; break reducibleJoin285; } r9 = value139; break reducibleJoin285; } r2 = r9; break reducibleJoin286; } reducibleJoin290: while (true) { if (r2) { break reducibleJoin290; } value141 = r6 == 'Firefox'; reducibleJoin289: while (true) { if (value141) { regexp = RegExp('\\bOS X (?:\\d+\\.){2,}', ''); test = regexp.test; value142 = Reflect.apply(test, regexp, [r5]); r9 = value142; break reducibleJoin289; } r9 = value141; break reducibleJoin289; } r2 = r9; break reducibleJoin290; } reducibleJoin306: while (true) { if (r2) { break reducibleJoin306; } value143 = value19 == r6; reducibleJoin305: while (true) { if (value143) { reducibleJoin294: while (true) { if (r5) { regexp = RegExp('^Win', ''); test = regexp.test; value144 = !Reflect.apply(test, regexp, [r5]); r13 = value144; break reducibleJoin294; } r13 = r5; break reducibleJoin294; } reducibleJoin296: while (true) { if (r13) { value145 = r3 > 5.5; r13 = value145; break reducibleJoin296; } break reducibleJoin296; } reducibleJoin300: while (true) { if (r13) { break reducibleJoin300; } regexp = RegExp('\\bWindows XP\\b', ''); test = regexp.test; value146 = Reflect.apply(test, regexp, [r5]); reducibleJoin299: while (true) { if (value146) { value147 = r3 > 8; r30 = value147; break reducibleJoin299; } r30 = value146; break reducibleJoin299; } r13 = r30; break reducibleJoin300; } reducibleJoin304: while (true) { if (r13) { break reducibleJoin304; } value148 = r3 == 8; reducibleJoin303: while (true) { if (value148) { regexp = RegExp('\\bTrident\\b', ''); test = regexp.test; value149 = !Reflect.apply(test, regexp, [r10]); r30 = value149; break reducibleJoin303; } r30 = value148; break reducibleJoin303; } r13 = r30; break reducibleJoin304; } r9 = r13; break reducibleJoin305; } r9 = value143; break reducibleJoin305; } r2 = r9; break reducibleJoin306; } r29 = r2; break reducibleJoin307; } break reducibleJoin307; } reducibleJoin309: while (true) { if (r29) { binding = env0_3; test = binding.test; parse_34566Binding = parse_34566; call = parse_34566Binding.call; forOwn_34560Binding = forOwn_34560; replace = r10.replace; value150 = Reflect.apply(replace, r10, [env0_3, '']); value151 = Reflect.apply(call, parse_34566Binding, [forOwn_34560Binding, value150 + ';']); value152 = !Reflect.apply(test, binding, [value151]); r12 = value151; r29 = value152; break reducibleJoin309; } break reducibleJoin309; } reducibleJoin311: while (true) { if (r29) { name = r12.name; r29 = name; break reducibleJoin311; } break reducibleJoin311; } if (r29) { name = r12.name; value153 = 'ing as ' + name; version = r12.version; value154 = ''; reducibleJoin314: while (true) { if (version) { value155 = ' ' + version; r29 = value155; break reducibleJoin314; } r29 = value154; break reducibleJoin314; } value156 = value153 + r29; binding = env0_3; test = binding.test; if (Reflect.apply(test, binding, [r6])) { regexp = RegExp('\\bIE\\b', ''); test = regexp.test; value159 = Reflect.apply(test, regexp, [value156]); reducibleJoin321: while (true) { if (value159) { value160 = r5 == 'Mac OS'; r29 = value160; break reducibleJoin321; } r29 = value159; break reducibleJoin321; } if (r29) { r5 = value7; } value161 = 'identify' + value156; r12 = value161; } else { value157 = 'mask' + value156; reducibleJoin317: while (true) { if (r35) { format_34559Binding = format_34559; replace = r35.replace; value158 = format_34559Binding(Reflect.apply(replace, r35, [RegExp('([a-z])([A-Z])', 'g'), '$1 $2'])); r29 = value158; break reducibleJoin317; } r29 = value17; break reducibleJoin317; } regexp = RegExp('\\bIE\\b', ''); test = regexp.test; if (Reflect.apply(test, regexp, [value157])) { r5 = value7; } if (value) { r6 = r29; r12 = value157; } else { r3 = value7; r6 = r29; r12 = value157; } } push = object.push; Reflect.apply(push, object, [r12]); r2 = r14; r9 = ['Presto']; r13 = r11; break reduciblePort342; } r2 = r14; r9 = r23; r13 = r11; break reduciblePort342; } if (r5 != 'Windows CE') { regexp = RegExp('Mobi', 'i'); test = regexp.test; if (!Reflect.apply(test, regexp, [r10])) { if (value19 == r6) { if (value) { try { external = r27.external; } catch (error) { break exceptionLanding333; } try { value164 = value7 !== external; } catch (error) { break exceptionLanding333; } if (value164) { r2 = r14; r9 = r23; r13 = r11; break reduciblePort342; } try { unshift = object.unshift; } catch (error) { break exceptionLanding333; } try { Reflect.apply(unshift, object, ['platform preview']); } catch (error) { break exceptionLanding333; } r2 = r14; r9 = r23; r13 = r11; break reduciblePort342; } } 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])) { value137 = this != forOwn_34560; reducibleJoin280: while (true) { if (value137) { value138 = r14 != 'Wii'; r29 = value138; break reducibleJoin280; } r29 = value137; break reducibleJoin280; } reducibleJoin307: while (true) { if (r29) { r2 = value && r9; reducibleJoin286: while (true) { if (r2) { break reducibleJoin286; } regexp = RegExp('Opera', ''); test = regexp.test; value139 = Reflect.apply(test, regexp, [r6]); reducibleJoin285: while (true) { if (value139) { regexp = RegExp('\\b(?:MSIE|Firefox)\\b', 'i'); test = regexp.test; value140 = Reflect.apply(test, regexp, [r10]); r9 = value140; break reducibleJoin285; } r9 = value139; break reducibleJoin285; } r2 = r9; break reducibleJoin286; } reducibleJoin290: while (true) { if (r2) { break reducibleJoin290; } value141 = r6 == 'Firefox'; reducibleJoin289: while (true) { if (value141) { regexp = RegExp('\\bOS X (?:\\d+\\.){2,}', ''); test = regexp.test; value142 = Reflect.apply(test, regexp, [r5]); r9 = value142; break reducibleJoin289; } r9 = value141; break reducibleJoin289; } r2 = r9; break reducibleJoin290; } reducibleJoin306: while (true) { if (r2) { break reducibleJoin306; } value143 = value19 == r6; reducibleJoin305: while (true) { if (value143) { reducibleJoin294: while (true) { if (r5) { regexp = RegExp('^Win', ''); test = regexp.test; value144 = !Reflect.apply(test, regexp, [r5]); r13 = value144; break reducibleJoin294; } r13 = r5; break reducibleJoin294; } reducibleJoin296: while (true) { if (r13) { value145 = r3 > 5.5; r13 = value145; break reducibleJoin296; } break reducibleJoin296; } reducibleJoin300: while (true) { if (r13) { break reducibleJoin300; } regexp = RegExp('\\bWindows XP\\b', ''); test = regexp.test; value146 = Reflect.apply(test, regexp, [r5]); reducibleJoin299: while (true) { if (value146) { value147 = r3 > 8; r30 = value147; break reducibleJoin299; } r30 = value146; break reducibleJoin299; } r13 = r30; break reducibleJoin300; } reducibleJoin304: while (true) { if (r13) { break reducibleJoin304; } value148 = r3 == 8; reducibleJoin303: while (true) { if (value148) { regexp = RegExp('\\bTrident\\b', ''); test = regexp.test; value149 = !Reflect.apply(test, regexp, [r10]); r30 = value149; break reducibleJoin303; } r30 = value148; break reducibleJoin303; } r13 = r30; break reducibleJoin304; } r9 = r13; break reducibleJoin305; } r9 = value143; break reducibleJoin305; } r2 = r9; break reducibleJoin306; } r29 = r2; break reducibleJoin307; } break reducibleJoin307; } reducibleJoin309: while (true) { if (r29) { binding = env0_3; test = binding.test; parse_34566Binding = parse_34566; call = parse_34566Binding.call; forOwn_34560Binding = forOwn_34560; replace = r10.replace; value150 = Reflect.apply(replace, r10, [env0_3, '']); value151 = Reflect.apply(call, parse_34566Binding, [forOwn_34560Binding, value150 + ';']); value152 = !Reflect.apply(test, binding, [value151]); r12 = value151; r29 = value152; break reducibleJoin309; } break reducibleJoin309; } reducibleJoin311: while (true) { if (r29) { name = r12.name; r29 = name; break reducibleJoin311; } break reducibleJoin311; } if (r29) { name = r12.name; value153 = 'ing as ' + name; version = r12.version; value154 = ''; reducibleJoin314: while (true) { if (version) { value155 = ' ' + version; r29 = value155; break reducibleJoin314; } r29 = value154; break reducibleJoin314; } value156 = value153 + r29; binding = env0_3; test = binding.test; if (Reflect.apply(test, binding, [r6])) { regexp = RegExp('\\bIE\\b', ''); test = regexp.test; value159 = Reflect.apply(test, regexp, [value156]); reducibleJoin321: while (true) { if (value159) { value160 = r5 == 'Mac OS'; r29 = value160; break reducibleJoin321; } r29 = value159; break reducibleJoin321; } if (r29) { r5 = value7; } value161 = 'identify' + value156; r12 = value161; } else { value157 = 'mask' + value156; reducibleJoin317: while (true) { if (r35) { format_34559Binding = format_34559; replace = r35.replace; value158 = format_34559Binding(Reflect.apply(replace, r35, [RegExp('([a-z])([A-Z])', 'g'), '$1 $2'])); r29 = value158; break reducibleJoin317; } r29 = value17; break reducibleJoin317; } regexp = RegExp('\\bIE\\b', ''); test = regexp.test; if (Reflect.apply(test, regexp, [value157])) { r5 = value7; } if (value) { r6 = r29; r12 = value157; } else { r3 = value7; r6 = r29; r12 = value157; } } push = object.push; Reflect.apply(push, object, [r12]); r2 = r14; r9 = ['Presto']; r13 = r11; break reduciblePort342; } r2 = r14; r9 = r23; r13 = r11; break reduciblePort342; } } RegExp = global.RegExp; replace = r14.replace; value133 = Reflect.apply(replace, r14, [RegExp(' +', 'g'), ' *']); value134 = RegExp(value133 + '/([.\\d]+)', 'i'); exec = value134.exec; value135 = Reflect.apply(exec, value134, [r10]); reducibleJoin276: while (true) { if (value135) { r29 = value135; break reducibleJoin276; } value136 = 0; r29 = value136; break reducibleJoin276; } property = r29[value24]; r29 = property || r3; if (r29) { items12 = [r29]; regexp = RegExp('BB10', ''); test = regexp.test; items12[1] = Reflect.apply(test, regexp, [r10]); value162 = 'Device Software'; reducibleJoin326: while (true) { if (items12[value24]) { env0_2 = value7; r29 = value22; r30 = value7; r33 = value22; break reducibleJoin326; } r29 = r11; r30 = r14; r33 = value162; break reducibleJoin326; } property = items12[0]; value163 = r33 + ' ' + property; r2 = r30; r3 = value7; r5 = value163; r9 = r23; r13 = r29; break reduciblePort342; } r12 = r29; value137 = this != forOwn_34560; reducibleJoin280: while (true) { if (value137) { value138 = r14 != 'Wii'; r29 = value138; break reducibleJoin280; } r29 = value137; break reducibleJoin280; } reducibleJoin307: while (true) { if (r29) { r2 = value && r9; reducibleJoin286: while (true) { if (r2) { break reducibleJoin286; } regexp = RegExp('Opera', ''); test = regexp.test; value139 = Reflect.apply(test, regexp, [r6]); reducibleJoin285: while (true) { if (value139) { regexp = RegExp('\\b(?:MSIE|Firefox)\\b', 'i'); test = regexp.test; value140 = Reflect.apply(test, regexp, [r10]); r9 = value140; break reducibleJoin285; } r9 = value139; break reducibleJoin285; } r2 = r9; break reducibleJoin286; } reducibleJoin290: while (true) { if (r2) { break reducibleJoin290; } value141 = r6 == 'Firefox'; reducibleJoin289: while (true) { if (value141) { regexp = RegExp('\\bOS X (?:\\d+\\.){2,}', ''); test = regexp.test; value142 = Reflect.apply(test, regexp, [r5]); r9 = value142; break reducibleJoin289; } r9 = value141; break reducibleJoin289; } r2 = r9; break reducibleJoin290; } reducibleJoin306: while (true) { if (r2) { break reducibleJoin306; } value143 = value19 == r6; reducibleJoin305: while (true) { if (value143) { reducibleJoin294: while (true) { if (r5) { regexp = RegExp('^Win', ''); test = regexp.test; value144 = !Reflect.apply(test, regexp, [r5]); r13 = value144; break reducibleJoin294; } r13 = r5; break reducibleJoin294; } reducibleJoin296: while (true) { if (r13) { value145 = r3 > 5.5; r13 = value145; break reducibleJoin296; } break reducibleJoin296; } reducibleJoin300: while (true) { if (r13) { break reducibleJoin300; } regexp = RegExp('\\bWindows XP\\b', ''); test = regexp.test; value146 = Reflect.apply(test, regexp, [r5]); reducibleJoin299: while (true) { if (value146) { value147 = r3 > 8; r30 = value147; break reducibleJoin299; } r30 = value146; break reducibleJoin299; } r13 = r30; break reducibleJoin300; } reducibleJoin304: while (true) { if (r13) { break reducibleJoin304; } value148 = r3 == 8; reducibleJoin303: while (true) { if (value148) { regexp = RegExp('\\bTrident\\b', ''); test = regexp.test; value149 = !Reflect.apply(test, regexp, [r10]); r30 = value149; break reducibleJoin303; } r30 = value148; break reducibleJoin303; } r13 = r30; break reducibleJoin304; } r9 = r13; break reducibleJoin305; } r9 = value143; break reducibleJoin305; } r2 = r9; break reducibleJoin306; } r29 = r2; break reducibleJoin307; } break reducibleJoin307; } reducibleJoin309: while (true) { if (r29) { binding = env0_3; test = binding.test; parse_34566Binding = parse_34566; call = parse_34566Binding.call; forOwn_34560Binding = forOwn_34560; replace = r10.replace; value150 = Reflect.apply(replace, r10, [env0_3, '']); value151 = Reflect.apply(call, parse_34566Binding, [forOwn_34560Binding, value150 + ';']); value152 = !Reflect.apply(test, binding, [value151]); r12 = value151; r29 = value152; break reducibleJoin309; } break reducibleJoin309; } reducibleJoin311: while (true) { if (r29) { name = r12.name; r29 = name; break reducibleJoin311; } break reducibleJoin311; } if (r29) { name = r12.name; value153 = 'ing as ' + name; version = r12.version; value154 = ''; reducibleJoin314: while (true) { if (version) { value155 = ' ' + version; r29 = value155; break reducibleJoin314; } r29 = value154; break reducibleJoin314; } value156 = value153 + r29; binding = env0_3; test = binding.test; if (Reflect.apply(test, binding, [r6])) { regexp = RegExp('\\bIE\\b', ''); test = regexp.test; value159 = Reflect.apply(test, regexp, [value156]); reducibleJoin321: while (true) { if (value159) { value160 = r5 == 'Mac OS'; r29 = value160; break reducibleJoin321; } r29 = value159; break reducibleJoin321; } if (r29) { r5 = value7; } value161 = 'identify' + value156; r12 = value161; } else { value157 = 'mask' + value156; reducibleJoin317: while (true) { if (r35) { format_34559Binding = format_34559; replace = r35.replace; value158 = format_34559Binding(Reflect.apply(replace, r35, [RegExp('([a-z])([A-Z])', 'g'), '$1 $2'])); r29 = value158; break reducibleJoin317; } r29 = value17; break reducibleJoin317; } regexp = RegExp('\\bIE\\b', ''); test = regexp.test; if (Reflect.apply(test, regexp, [value157])) { r5 = value7; } if (value) { r6 = r29; r12 = value157; } else { r3 = value7; r6 = r29; r12 = value157; } } push = object.push; Reflect.apply(push, object, [r12]); r2 = r14; r9 = ['Presto']; r13 = r11; break reduciblePort342; } r2 = r14; r9 = r23; r13 = r11; break reduciblePort342; } } value165 = r6 + ' Mobile'; r2 = r14; r6 = value165; r9 = r23; r13 = r11; break reduciblePort342; } unshift = object.unshift; Reflect.apply(unshift, object, ['embedded']); r2 = r14; r9 = r23; r13 = r11; break reduciblePort342; } regexp = RegExp('\\bAppleWebKit\\/([\\d.]+\\+?)', 'i'); exec = regexp.exec; value170 = Reflect.apply(exec, regexp, [r10]); reducibleJoin344: while (true) { if (value170) { r11 = value170; break reducibleJoin344; } value171 = 0; r11 = value171; break reducibleJoin344; } property = r11[value24]; reducibleJoin453: while (true) { if (property) { parseFloat = global.parseFloat; replace = property.replace; float2 = parseFloat(Reflect.apply(replace, property, [RegExp('\\.(\\d)$', ''), '.0$1'])); items13 = [float2, property]; reducibleJoin353: while (true) { reducibleJoin351: while (true) { if (value20 != r6) { value173 = r3 != items13[value24]; if (value173) { regexp = RegExp('\\bSafari\\/([\\d.]+\\+?)', 'i'); exec = regexp.exec; value174 = Reflect.apply(exec, regexp, [r10]); reducibleJoin350: while (true) { if (value174) { r23 = value174; break reducibleJoin350; } value175 = 0; r23 = value175; break reducibleJoin350; } property = r23[value24]; items13[2] = property; value176 = r3 != property; r27 = value176; break reducibleJoin351; } r27 = value173; break reducibleJoin351; } property = items13[value24]; slice = property.slice; value172 = Reflect.apply(slice, property, [-1]); if (value172 == '+') { value177 = 'WebKit Nightly'; property = items13[value24]; slice = property.slice; value178 = Reflect.apply(slice, property, [0, -1]); value179 = 'alpha'; r3 = value178; r6 = value177; r23 = value179; break reducibleJoin353; } value173 = r3 != items13[value24]; if (value173) { regexp = RegExp('\\bSafari\\/([\\d.]+\\+?)', 'i'); exec = regexp.exec; value174 = Reflect.apply(exec, regexp, [r10]); reducibleJoin350: while (true) { if (value174) { r23 = value174; break reducibleJoin350; } value175 = 0; r23 = value175; break reducibleJoin350; } property = r23[value24]; items13[2] = property; value176 = r3 != property; r27 = value176; break reducibleJoin351; } r27 = value173; break reducibleJoin351; } if (r27) { r23 = r25; break reducibleJoin353; } r3 = value7; r23 = r25; break reducibleJoin353; } regexp = RegExp('\\bChrome\\/([\\d.]+)', 'i'); exec = regexp.exec; value180 = Reflect.apply(exec, regexp, [r10]); reducibleJoin355: while (true) { if (value180) { r25 = value180; break reducibleJoin355; } value181 = 0; r25 = value181; break reducibleJoin355; } items13[value24] = r25[value24]; value182 = items13[0] == 537.36; reducibleJoin357: while (true) { if (value182) { value183 = items13[2] == 537.36; r25 = value183; break reducibleJoin357; } r25 = value182; break reducibleJoin357; } reducibleJoin359: while (true) { if (r25) { parseFloat = global.parseFloat; float3 = parseFloat(items13[value24]); value184 = float3 >= 28; r25 = value184; break reducibleJoin359; } break reducibleJoin359; } reducibleJoin361: while (true) { if (r25) { value185 = value11 == r9; r25 = value185; break reducibleJoin361; } break reducibleJoin361; } reducibleJoin363: while (true) { if (r25) { r9 = ['Blink']; break reducibleJoin363; } break reducibleJoin363; } reducibleJoin442: while (true) { reducibleJoin386: while (true) { if (value) { if (!r24) { if (!items13[value24]) { reducibleJoin368: while (true) { if (r9) { r9[value24] = 'like Safari'; break reducibleJoin368; } break reducibleJoin368; } property = items13[0]; if (property < 400) { r24 = value24; break reducibleJoin386; } reducibleJoin385: while (true) { if (property < 500) { r25 = 2; break reducibleJoin385; } value187 = 3; reducibleJoin384: while (true) { if (property < 526) { r28 = value187; break reducibleJoin384; } value188 = 4; reducibleJoin383: while (true) { if (property < 533) { r29 = value188; break reducibleJoin383; } value189 = '4+'; reducibleJoin382: while (true) { if (property < 534) { r30 = value189; break reducibleJoin382; } value190 = 5; reducibleJoin381: while (true) { if (property < 535) { r31 = value190; break reducibleJoin381; } value191 = 6; reducibleJoin380: while (true) { if (property < 537) { r32 = value191; break reducibleJoin380; } value192 = 7; reducibleJoin379: while (true) { if (property < 538) { r33 = value192; break reducibleJoin379; } value193 = '8'; reducibleJoin378: while (true) { if (property < 601) { value194 = 8; r34 = value194; break reducibleJoin378; } r34 = value193; break reducibleJoin378; } r33 = r34; break reducibleJoin379; } r32 = r33; break reducibleJoin380; } r31 = r32; break reducibleJoin381; } r30 = r31; break reducibleJoin382; } r29 = r30; break reducibleJoin383; } r28 = r29; break reducibleJoin384; } r25 = r28; break reducibleJoin385; } r24 = r25; break reducibleJoin386; } } reducibleJoin389: while (true) { if (r9) { r9[value24] = 'like Chrome'; break reducibleJoin389; } break reducibleJoin389; } property = items13[value24]; reducibleJoin441: while (true) { if (property) { r24 = property; break reducibleJoin441; } property = items13[0]; reducibleJoin440: while (true) { if (property < 530) { r25 = value24; break reducibleJoin440; } value195 = 2; reducibleJoin439: while (true) { if (property < 532) { r27 = value195; break reducibleJoin439; } value196 = 3; reducibleJoin438: while (true) { if (property < 532.05) { r28 = value196; break reducibleJoin438; } value197 = 4; reducibleJoin437: while (true) { if (property < 533) { r29 = value197; break reducibleJoin437; } value198 = 5; reducibleJoin436: while (true) { if (property < 534.03) { r30 = value198; break reducibleJoin436; } value199 = 6; reducibleJoin435: while (true) { if (property < 534.07) { r31 = value199; break reducibleJoin435; } value200 = 7; reducibleJoin434: while (true) { if (property < 534.1) { r32 = value200; break reducibleJoin434; } value201 = 8; reducibleJoin433: while (true) { if (property < 534.13) { r33 = value201; break reducibleJoin433; } value202 = 9; reducibleJoin432: while (true) { if (property < 534.16) { r34 = value202; break reducibleJoin432; } value203 = 10; reducibleJoin431: while (true) { if (property < 534.24) { r35 = value203; break reducibleJoin431; } value204 = 11; reducibleJoin430: while (true) { if (property < 534.3) { r36 = value204; break reducibleJoin430; } value205 = 12; reducibleJoin429: while (true) { if (property < 535.01) { r37 = value205; break reducibleJoin429; } value206 = '13+'; reducibleJoin428: while (true) { if (property < 535.02) { r38 = value206; break reducibleJoin428; } value207 = 15; reducibleJoin427: while (true) { if (property < 535.07) { r39 = value207; break reducibleJoin427; } value208 = 16; reducibleJoin426: while (true) { if (property < 535.11) { r40 = value208; break reducibleJoin426; } value209 = 17; reducibleJoin425: while (true) { if (property < 535.19) { r41 = value209; break reducibleJoin425; } value210 = 18; reducibleJoin424: while (true) { if (property < 536.05) { r42 = value210; break reducibleJoin424; } value211 = 19; reducibleJoin423: while (true) { if (property < 536.1) { r43 = value211; break reducibleJoin423; } value212 = 20; reducibleJoin422: while (true) { if (property < 537.01) { r44 = value212; break reducibleJoin422; } value213 = '21+'; reducibleJoin421: while (true) { if (property < 537.11) { r45 = value213; break reducibleJoin421; } value214 = 23; reducibleJoin420: while (true) { if (property < 537.13) { r46 = value214; break reducibleJoin420; } value215 = 24; reducibleJoin419: while (true) { if (property < 537.18) { r47 = value215; break reducibleJoin419; } value216 = 25; reducibleJoin418: while (true) { if (property < 537.24) { r48 = value216; break reducibleJoin418; } value217 = 26; reducibleJoin417: while (true) { if (property < 537.36) { r49 = value217; break reducibleJoin417; } value218 = '28'; reducibleJoin416: while (true) { if (r9 != 'Blink') { value219 = '27'; r50 = value219; break reducibleJoin416; } r50 = value218; break reducibleJoin416; } r49 = r50; break reducibleJoin417; } r48 = r49; break reducibleJoin418; } r47 = r48; break reducibleJoin419; } r46 = r47; break reducibleJoin420; } r45 = r46; break reducibleJoin421; } r44 = r45; break reducibleJoin422; } r43 = r44; break reducibleJoin423; } r42 = r43; break reducibleJoin424; } r41 = r42; break reducibleJoin425; } r40 = r41; break reducibleJoin426; } r39 = r40; break reducibleJoin427; } r38 = r39; break reducibleJoin428; } r37 = r38; break reducibleJoin429; } r36 = r37; break reducibleJoin430; } r35 = r36; break reducibleJoin431; } r34 = r35; break reducibleJoin432; } r33 = r34; break reducibleJoin433; } r32 = r33; break reducibleJoin434; } r31 = r32; break reducibleJoin435; } r30 = r31; break reducibleJoin436; } r29 = r30; break reducibleJoin437; } r28 = r29; break reducibleJoin438; } r27 = r28; break reducibleJoin439; } r25 = r27; break reducibleJoin440; } r24 = r25; break reducibleJoin441; } r12 = r24; break reducibleJoin442; } reducibleJoin368: while (true) { if (r9) { r9[value24] = 'like Safari'; break reducibleJoin368; } break reducibleJoin368; } property = items13[0]; if (property < 400) { r24 = value24; break reducibleJoin386; } value186 = 2; reducibleJoin385: while (true) { if (property < 500) { r25 = value186; break reducibleJoin385; } value187 = 3; reducibleJoin384: while (true) { if (property < 526) { r28 = value187; break reducibleJoin384; } value188 = 4; reducibleJoin383: while (true) { if (property < 533) { r29 = value188; break reducibleJoin383; } value189 = '4+'; reducibleJoin382: while (true) { if (property < 534) { r30 = value189; break reducibleJoin382; } value190 = 5; reducibleJoin381: while (true) { if (property < 535) { r31 = value190; break reducibleJoin381; } value191 = 6; reducibleJoin380: while (true) { if (property < 537) { r32 = value191; break reducibleJoin380; } value192 = 7; reducibleJoin379: while (true) { if (property < 538) { r33 = value192; break reducibleJoin379; } value193 = '8'; reducibleJoin378: while (true) { if (property < 601) { value194 = 8; r34 = value194; break reducibleJoin378; } r34 = value193; break reducibleJoin378; } r33 = r34; break reducibleJoin379; } r32 = r33; break reducibleJoin380; } r31 = r32; break reducibleJoin381; } r30 = r31; break reducibleJoin382; } r29 = r30; break reducibleJoin383; } r28 = r29; break reducibleJoin384; } r25 = r28; break reducibleJoin385; } r24 = r25; break reducibleJoin386; } r12 = r24; break reducibleJoin442; } reducibleJoin448: while (true) { if (r9) { property = r9[value24]; value220 = '.x'; reducibleJoin447: while (true) { if (typeof r12 === 'number') { r24 = value220; break reducibleJoin447; } regexp = RegExp('[.+]', ''); test = regexp.test; value221 = Reflect.apply(test, regexp, [r12]); value222 = '+'; reducibleJoin446: while (true) { if (value221) { value223 = ''; r28 = value223; break reducibleJoin446; } r28 = value222; break reducibleJoin446; } r24 = r28; break reducibleJoin447; } value224 = r12 + r24; r9[value24] = property + (' ' + value224); r12 = value224; break reducibleJoin448; } break reducibleJoin448; } value225 = value20 == r6; reducibleJoin452: while (true) { if (value225) { value226 = !r3; reducibleJoin451: while (true) { if (r3) { parseInt = global.parseInt; int = parseInt(r3); value227 = int > 45; r25 = value227; break reducibleJoin451; } r25 = value226; break reducibleJoin451; } r24 = r25; break reducibleJoin452; } r24 = value225; break reducibleJoin452; } if (r24) { r3 = r12; r11 = r23; r14 = r9; break reducibleJoin453; } r11 = r23; r14 = r9; break reducibleJoin453; } r11 = r25; r12 = property; r14 = r9; break reducibleJoin453; } reducibleJoin467: while (true) { reducibleJoin459: while (true) { if (value17 != r6) { value229 = value20 == r6; if (value229) { regexp = RegExp('\\bChrome\\b', ''); exec = regexp.exec; reducibleJoin458: while (true) { if (r14) { property = r14[value24]; r9 = property; break reducibleJoin458; } r9 = r14; break reducibleJoin458; } value230 = Reflect.apply(exec, regexp, [r9]); r19 = value230; break reducibleJoin459; } r19 = value229; break reducibleJoin459; } regexp = RegExp('\\bzbov|zvav$', ''); exec = regexp.exec; value228 = Reflect.apply(exec, regexp, [r5]); if (value228) { value233 = r6 + ' '; unshift = object.unshift; Reflect.apply(unshift, object, ['desktop mode']); if (value228 == 'zvav') { value235 = value233 + 'Mini'; r3 = value7; r6 = value235; } else { value234 = value233 + 'Mobile'; r6 = value234; } replace = r5.replace; RegExp = global.RegExp; value236 = RegExp(' *' + value228 + '$'); value237 = Reflect.apply(replace, r5, [value236, '']); r5 = value237; r9 = r13; r12 = value228; break reducibleJoin467; } r12 = value228; value229 = value20 == r6; if (value229) { regexp = RegExp('\\bChrome\\b', ''); exec = regexp.exec; reducibleJoin458: while (true) { if (r14) { property = r14[value24]; r9 = property; break reducibleJoin458; } r9 = r14; break reducibleJoin458; } value230 = Reflect.apply(exec, regexp, [r9]); r19 = value230; break reducibleJoin459; } r19 = value229; break reducibleJoin459; } if (r19) { unshift = object.unshift; Reflect.apply(unshift, object, ['desktop mode']); regexp = RegExp('\\bOS X\\b', ''); test = regexp.test; reducibleJoin462: while (true) { if (Reflect.apply(test, regexp, [r5])) { value231 = 'iOS 4.3+'; value232 = 'Apple'; r5 = value231; r17 = value232; break reducibleJoin462; } r5 = value7; r17 = r13; break reducibleJoin462; } r3 = value7; r6 = value18; r9 = r17; break reducibleJoin467; } r9 = r13; break reducibleJoin467; } reducibleJoin469: while (true) { if (r3) { indexOf = r3.indexOf; regexp = RegExp('[\\d.]+$', ''); exec = regexp.exec; value238 = Reflect.apply(exec, regexp, [r5]); value239 = Reflect.apply(indexOf, r3, [value238]); value240 = value239 == 0; r12 = value238; r13 = value240; break reducibleJoin469; } r13 = r3; break reducibleJoin469; } reducibleJoin471: while (true) { if (r13) { indexOf = r10.indexOf; value241 = Reflect.apply(indexOf, r10, ['/' + r12 + '-']); value242 = value241 > -1; r13 = value242; break reducibleJoin471; } break reducibleJoin471; } reducibleJoin473: while (true) { if (r13) { trim_34565Binding = trim_34565; replace = r5.replace; value243 = trim_34565Binding(Reflect.apply(replace, r5, [r12, ''])); r5 = value243; break reducibleJoin473; } break reducibleJoin473; } reducibleJoin475: while (true) { if (r14) { regexp = RegExp('\\b(?:Avant|Nook)\\b', ''); test = regexp.test; value244 = !Reflect.apply(test, regexp, [r6]); r13 = value244; break reducibleJoin475; } r13 = r14; break reducibleJoin475; } reducibleJoin487: while (true) { if (r13) { regexp = RegExp('Browser|Lunascape|Maxthon', ''); test = regexp.test; value245 = Reflect.apply(test, regexp, [r6]); reducibleJoin482: while (true) { if (value245) { r17 = value245; break reducibleJoin482; } value246 = value20 != r6; reducibleJoin479: while (true) { if (value246) { regexp = RegExp('^iOS', ''); test = regexp.test; value247 = Reflect.apply(test, regexp, [r5]); r19 = value247; break reducibleJoin479; } r19 = value246; break reducibleJoin479; } reducibleJoin481: while (true) { if (r19) { regexp = RegExp('\\bSafari\\b', ''); test = regexp.test; value248 = Reflect.apply(test, regexp, [r14[value24]]); r19 = value248; break reducibleJoin481; } break reducibleJoin481; } r17 = r19; break reducibleJoin482; } reducibleJoin486: while (true) { if (r17) { break reducibleJoin486; } regexp = RegExp('^(?:Adobe|Arora|Breach|Midori|Opera|Phantom|Rekonq|Rock|Samsung Internet|Sleipnir|Web)', ''); test = regexp.test; value249 = Reflect.apply(test, regexp, [r6]); reducibleJoin485: while (true) { if (value249) { property = r14[value24]; r19 = property; break reducibleJoin485; } r19 = value249; break reducibleJoin485; } r17 = r19; break reducibleJoin486; } r13 = r17; break reducibleJoin487; } break reducibleJoin487; } reducibleJoin489: while (true) { if (r13) { length = r14.length; property = r14[length - value24]; r12 = property; r13 = property; break reducibleJoin489; } break reducibleJoin489; } reducibleJoin491: while (true) { if (r13) { push = object.push; Reflect.apply(push, object, [r12]); break reducibleJoin491; } break reducibleJoin491; } length = object.length; reducibleJoin493: while (true) { if (length) { join = object.join; value250 = Reflect.apply(join, object, ['; ']); value251 = '(' + value250; r1 = [value251 + ')']; break reducibleJoin493; } r1 = object; break reducibleJoin493; } r13 = r9 && r2; reducibleJoin496: while (true) { if (r13) { indexOf = r2.indexOf; value252 = Reflect.apply(indexOf, r2, [r9]); value253 = value252 < 0; r13 = value253; break reducibleJoin496; } break reducibleJoin496; } reducibleJoin498: while (true) { if (r13) { push = r1.push; Reflect.apply(push, r1, ['on ' + r9]); break reducibleJoin498; } break reducibleJoin498; } reducibleJoin502: while (true) { if (r2) { push = r1.push; regexp = RegExp('^on ', ''); test = regexp.test; length = r1.length; value254 = Reflect.apply(test, regexp, [r1[length - value24]]); value255 = 'on '; reducibleJoin501: while (true) { if (value254) { value256 = ''; r13 = value256; break reducibleJoin501; } r13 = value255; break reducibleJoin501; } Reflect.apply(push, r1, [r13 + r2]); break reducibleJoin502; } break reducibleJoin502; } reducibleJoin511: while (true) { if (r5) { regexp = RegExp(' ([\\d.+]+)$', ''); exec = regexp.exec; value257 = Reflect.apply(exec, regexp, [r5]); reducibleJoin505: while (true) { if (value257) { charAt = r5.charAt; length = r5.length; length2 = value257[0].length; value258 = Reflect.apply(charAt, r5, [length - length2 - value24]); value259 = value258 == '/'; r17 = value259; break reducibleJoin505; } r17 = value257; break reducibleJoin505; } var env0_1 = r17; object = {architecture: 32}; reducibleJoin508: while (true) { if (value257) { if (r17) { r17 = r5; break reducibleJoin508; } replace = r5.replace; value260 = Reflect.apply(replace, r5, [value257[0], '']); r17 = value260; break reducibleJoin508; } r17 = r5; break reducibleJoin508; } object.family = r17; reducibleJoin510: while (true) { if (value257) { property = value257[value24]; r17 = property; break reducibleJoin510; } r17 = value7; break reducibleJoin510; } object.version = r17; object.toString = toString_34579; r5 = object; break reducibleJoin511; } break reducibleJoin511; } regexp = RegExp('\\b(?:AMD|IA|Win|WOW|x86_|x)64\\b', 'i'); exec = regexp.exec; value261 = Reflect.apply(exec, regexp, [r18]); reducibleJoin535: while (true) { reducibleJoin533: while (true) { if (value261) { regexp = RegExp('\\bi686\\b', 'i'); test = regexp.test; if (Reflect.apply(test, regexp, [r18])) { reducibleJoin529: while (true) { if (r5) { regexp = RegExp('^OS X', ''); test = regexp.test; family = r5.family; value = Reflect.apply(test, regexp, [family]); r12 = value; break reducibleJoin529; } r12 = r5; break reducibleJoin529; } reducibleJoin531: while (true) { if (r12) { value = r6 == 'Chrome'; r12 = value; break reducibleJoin531; } break reducibleJoin531; } if (r12) { parseFloat = global.parseFloat; value = parseFloat(r3); value = value >= 39; r12 = value; break reducibleJoin533; } break reducibleJoin533; } reducibleJoin515: while (true) { if (r5) { r5.architecture = 64; family = r5.family; replace = family.replace; RegExp = global.RegExp; value262 = RegExp(' *' + value261); r5.family = Reflect.apply(replace, family, [value262, '']); break reducibleJoin515; } break reducibleJoin515; } reducibleJoin525: while (true) { if (r6) { regexp = RegExp('\\bWOW64\\b', 'i'); test = regexp.test; value263 = Reflect.apply(test, regexp, [r10]); reducibleJoin524: while (true) { if (value263) { r13 = value263; break reducibleJoin524; } reducibleJoin521: while (true) { if (value) { regexp = RegExp('\\w(?:86|32)$', ''); test = regexp.test; cpuClass = r20.cpuClass; reducibleJoin520: while (true) { if (cpuClass) { r17 = cpuClass; break reducibleJoin520; } platform = r20.platform; r17 = platform; break reducibleJoin520; } value = Reflect.apply(test, regexp, [r17]); r16 = value; break reducibleJoin521; } r16 = value; break reducibleJoin521; } reducibleJoin523: while (true) { if (r16) { regexp = RegExp('\\bWin64; x64\\b', 'i'); test = regexp.test; value = !Reflect.apply(test, regexp, [r10]); r16 = value; break reducibleJoin523; } break reducibleJoin523; } r13 = r16; break reducibleJoin524; } r12 = r13; break reducibleJoin525; } r12 = r6; break reducibleJoin525; } if (r12) { unshift = r1.unshift; Reflect.apply(unshift, r1, ['32-bit']); break reducibleJoin535; } break reducibleJoin535; } reducibleJoin529: while (true) { if (r5) { regexp = RegExp('^OS X', ''); test = regexp.test; family = r5.family; value = Reflect.apply(test, regexp, [family]); r12 = value; break reducibleJoin529; } r12 = r5; break reducibleJoin529; } reducibleJoin531: while (true) { if (r12) { value = r6 == 'Chrome'; r12 = value; break reducibleJoin531; } break reducibleJoin531; } if (r12) { parseFloat = global.parseFloat; value = parseFloat(r3); value = value >= 39; r12 = value; break reducibleJoin533; } break reducibleJoin533; } if (r12) { r5.architecture = 64; break reducibleJoin535; } break reducibleJoin535; } reducibleJoin537: while (true) { if (r10) { break reducibleJoin537; } env0_0 = value7; r10 = value7; break reducibleJoin537; } object = {description: r10}; reducibleJoin539: while (true) { if (r14) { property = r14[0]; r12 = property; break reducibleJoin539; } r12 = r14; break reducibleJoin539; } object.layout = r12; object.manufacturer = r9; object.name = r6; object.prerelease = r11; object.product = r2; object.ua = r10; r9 = r6 && r3; object.version = r9; reducibleJoin542: while (true) { if (r5) { r9 = r5; break reducibleJoin542; } r9 = {'architecture': null, 'family': null, 'version': null, toString: function() { return 'null'; }}; break reducibleJoin542; } object.os = r9; object.parse = parse_34566; object.toString = toString_34581; version = object.version; reducibleJoin544: while (true) { if (version) { unshift = r1.unshift; Reflect.apply(unshift, r1, [r3]); break reducibleJoin544; } break reducibleJoin544; } name = object.name; reducibleJoin546: while (true) { if (name) { unshift = r1.unshift; Reflect.apply(unshift, r1, [r6]); break reducibleJoin546; } break reducibleJoin546; } r3 = r5 && r6; reducibleJoin553: while (true) { if (r3) { String = global.String; value = String(r5); split = value.split; value = Reflect.apply(split, value, [' ']); value = r5 != value[0]; reducibleJoin552: while (true) { if (value) { r4 = value; break reducibleJoin552; } split = r6.split; value = r5 != Reflect.apply(split, r6, [' '])[0]; reducibleJoin551: while (true) { if (value) { value = !r2; r6 = value; break reducibleJoin551; } r6 = value; break reducibleJoin551; } r4 = r6; break reducibleJoin552; } r3 = r4; break reducibleJoin553; } break reducibleJoin553; } reducibleJoin558: 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 reducibleJoin558; } break reducibleJoin558; } length = r1.length; reducibleJoin560: while (true) { if (length) { join = r1.join; object.description = Reflect.apply(join, r1, [' ']); break reducibleJoin560; } break reducibleJoin560; } return object; } const value169 = 'Firefox Mobile'; r2 = r14; r6 = value169; r9 = r23; r13 = r11; value170 = RegExp('\\bAppleWebKit\\/([\\d.]+\\+?)', 'i').exec(r10); reducibleJoin344: while (true) { if (value170) { r11 = value170; break reducibleJoin344; } value171 = 0; r11 = value171; break reducibleJoin344; } property = r11[value24]; reducibleJoin453: while (true) { if (property) { parseFloat = global.parseFloat; replace = property.replace; float2 = parseFloat(Reflect.apply(replace, property, [RegExp('\\.(\\d)$', ''), '.0$1'])); items13 = [float2, property]; reducibleJoin353: while (true) { reducibleJoin351: while (true) { if (value20 != r6) { value173 = r3 != items13[value24]; if (value173) { regexp = RegExp('\\bSafari\\/([\\d.]+\\+?)', 'i'); exec = regexp.exec; value174 = Reflect.apply(exec, regexp, [r10]); reducibleJoin350: while (true) { if (value174) { r23 = value174; break reducibleJoin350; } value175 = 0; r23 = value175; break reducibleJoin350; } property = r23[value24]; items13[2] = property; value176 = r3 != property; r27 = value176; break reducibleJoin351; } r27 = value173; break reducibleJoin351; } property = items13[value24]; slice = property.slice; value172 = Reflect.apply(slice, property, [-1]); if (value172 == '+') { value177 = 'WebKit Nightly'; property = items13[value24]; slice = property.slice; value178 = Reflect.apply(slice, property, [0, -1]); value179 = 'alpha'; r3 = value178; r6 = value177; r23 = value179; break reducibleJoin353; } value173 = r3 != items13[value24]; if (value173) { regexp = RegExp('\\bSafari\\/([\\d.]+\\+?)', 'i'); exec = regexp.exec; value174 = Reflect.apply(exec, regexp, [r10]); reducibleJoin350: while (true) { if (value174) { r23 = value174; break reducibleJoin350; } value175 = 0; r23 = value175; break reducibleJoin350; } property = r23[value24]; items13[2] = property; value176 = r3 != property; r27 = value176; break reducibleJoin351; } r27 = value173; break reducibleJoin351; } if (r27) { r23 = r25; break reducibleJoin353; } r3 = value7; r23 = r25; break reducibleJoin353; } regexp = RegExp('\\bChrome\\/([\\d.]+)', 'i'); exec = regexp.exec; value180 = Reflect.apply(exec, regexp, [r10]); reducibleJoin355: while (true) { if (value180) { r25 = value180; break reducibleJoin355; } value181 = 0; r25 = value181; break reducibleJoin355; } items13[value24] = r25[value24]; value182 = items13[0] == 537.36; reducibleJoin357: while (true) { if (value182) { value183 = items13[2] == 537.36; r25 = value183; break reducibleJoin357; } r25 = value182; break reducibleJoin357; } reducibleJoin359: while (true) { if (r25) { parseFloat = global.parseFloat; float3 = parseFloat(items13[value24]); value184 = float3 >= 28; r25 = value184; break reducibleJoin359; } break reducibleJoin359; } reducibleJoin361: while (true) { if (r25) { value185 = value11 == r9; r25 = value185; break reducibleJoin361; } break reducibleJoin361; } reducibleJoin363: while (true) { if (r25) { r9 = ['Blink']; break reducibleJoin363; } break reducibleJoin363; } reducibleJoin442: while (true) { reducibleJoin386: while (true) { if (value) { if (!r24) { if (!items13[value24]) { reducibleJoin368: while (true) { if (r9) { r9[value24] = 'like Safari'; break reducibleJoin368; } break reducibleJoin368; } property = items13[0]; if (property < 400) { r24 = value24; break reducibleJoin386; } reducibleJoin385: while (true) { if (property < 500) { r25 = 2; break reducibleJoin385; } value187 = 3; reducibleJoin384: while (true) { if (property < 526) { r28 = value187; break reducibleJoin384; } value188 = 4; reducibleJoin383: while (true) { if (property < 533) { r29 = value188; break reducibleJoin383; } value189 = '4+'; reducibleJoin382: while (true) { if (property < 534) { r30 = value189; break reducibleJoin382; } value190 = 5; reducibleJoin381: while (true) { if (property < 535) { r31 = value190; break reducibleJoin381; } value191 = 6; reducibleJoin380: while (true) { if (property < 537) { r32 = value191; break reducibleJoin380; } value192 = 7; reducibleJoin379: while (true) { if (property < 538) { r33 = value192; break reducibleJoin379; } value193 = '8'; reducibleJoin378: while (true) { if (property < 601) { value194 = 8; r34 = value194; break reducibleJoin378; } r34 = value193; break reducibleJoin378; } r33 = r34; break reducibleJoin379; } r32 = r33; break reducibleJoin380; } r31 = r32; break reducibleJoin381; } r30 = r31; break reducibleJoin382; } r29 = r30; break reducibleJoin383; } r28 = r29; break reducibleJoin384; } r25 = r28; break reducibleJoin385; } r24 = r25; break reducibleJoin386; } } reducibleJoin389: while (true) { if (r9) { r9[value24] = 'like Chrome'; break reducibleJoin389; } break reducibleJoin389; } property = items13[value24]; reducibleJoin441: while (true) { if (property) { r24 = property; break reducibleJoin441; } property = items13[0]; reducibleJoin440: while (true) { if (property < 530) { r25 = value24; break reducibleJoin440; } value195 = 2; reducibleJoin439: while (true) { if (property < 532) { r27 = value195; break reducibleJoin439; } value196 = 3; reducibleJoin438: while (true) { if (property < 532.05) { r28 = value196; break reducibleJoin438; } value197 = 4; reducibleJoin437: while (true) { if (property < 533) { r29 = value197; break reducibleJoin437; } value198 = 5; reducibleJoin436: while (true) { if (property < 534.03) { r30 = value198; break reducibleJoin436; } value199 = 6; reducibleJoin435: while (true) { if (property < 534.07) { r31 = value199; break reducibleJoin435; } value200 = 7; reducibleJoin434: while (true) { if (property < 534.1) { r32 = value200; break reducibleJoin434; } value201 = 8; reducibleJoin433: while (true) { if (property < 534.13) { r33 = value201; break reducibleJoin433; } value202 = 9; reducibleJoin432: while (true) { if (property < 534.16) { r34 = value202; break reducibleJoin432; } value203 = 10; reducibleJoin431: while (true) { if (property < 534.24) { r35 = value203; break reducibleJoin431; } value204 = 11; reducibleJoin430: while (true) { if (property < 534.3) { r36 = value204; break reducibleJoin430; } value205 = 12; reducibleJoin429: while (true) { if (property < 535.01) { r37 = value205; break reducibleJoin429; } value206 = '13+'; reducibleJoin428: while (true) { if (property < 535.02) { r38 = value206; break reducibleJoin428; } value207 = 15; reducibleJoin427: while (true) { if (property < 535.07) { r39 = value207; break reducibleJoin427; } value208 = 16; reducibleJoin426: while (true) { if (property < 535.11) { r40 = value208; break reducibleJoin426; } value209 = 17; reducibleJoin425: while (true) { if (property < 535.19) { r41 = value209; break reducibleJoin425; } value210 = 18; reducibleJoin424: while (true) { if (property < 536.05) { r42 = value210; break reducibleJoin424; } value211 = 19; reducibleJoin423: while (true) { if (property < 536.1) { r43 = value211; break reducibleJoin423; } value212 = 20; reducibleJoin422: while (true) { if (property < 537.01) { r44 = value212; break reducibleJoin422; } value213 = '21+'; reducibleJoin421: while (true) { if (property < 537.11) { r45 = value213; break reducibleJoin421; } value214 = 23; reducibleJoin420: while (true) { if (property < 537.13) { r46 = value214; break reducibleJoin420; } value215 = 24; reducibleJoin419: while (true) { if (property < 537.18) { r47 = value215; break reducibleJoin419; } value216 = 25; reducibleJoin418: while (true) { if (property < 537.24) { r48 = value216; break reducibleJoin418; } value217 = 26; reducibleJoin417: while (true) { if (property < 537.36) { r49 = value217; break reducibleJoin417; } value218 = '28'; reducibleJoin416: while (true) { if (r9 != 'Blink') { value219 = '27'; r50 = value219; break reducibleJoin416; } r50 = value218; break reducibleJoin416; } r49 = r50; break reducibleJoin417; } r48 = r49; break reducibleJoin418; } r47 = r48; break reducibleJoin419; } r46 = r47; break reducibleJoin420; } r45 = r46; break reducibleJoin421; } r44 = r45; break reducibleJoin422; } r43 = r44; break reducibleJoin423; } r42 = r43; break reducibleJoin424; } r41 = r42; break reducibleJoin425; } r40 = r41; break reducibleJoin426; } r39 = r40; break reducibleJoin427; } r38 = r39; break reducibleJoin428; } r37 = r38; break reducibleJoin429; } r36 = r37; break reducibleJoin430; } r35 = r36; break reducibleJoin431; } r34 = r35; break reducibleJoin432; } r33 = r34; break reducibleJoin433; } r32 = r33; break reducibleJoin434; } r31 = r32; break reducibleJoin435; } r30 = r31; break reducibleJoin436; } r29 = r30; break reducibleJoin437; } r28 = r29; break reducibleJoin438; } r27 = r28; break reducibleJoin439; } r25 = r27; break reducibleJoin440; } r24 = r25; break reducibleJoin441; } r12 = r24; break reducibleJoin442; } reducibleJoin368: while (true) { if (r9) { r9[value24] = 'like Safari'; break reducibleJoin368; } break reducibleJoin368; } property = items13[0]; if (property < 400) { r24 = value24; break reducibleJoin386; } value186 = 2; reducibleJoin385: while (true) { if (property < 500) { r25 = value186; break reducibleJoin385; } value187 = 3; reducibleJoin384: while (true) { if (property < 526) { r28 = value187; break reducibleJoin384; } value188 = 4; reducibleJoin383: while (true) { if (property < 533) { r29 = value188; break reducibleJoin383; } value189 = '4+'; reducibleJoin382: while (true) { if (property < 534) { r30 = value189; break reducibleJoin382; } value190 = 5; reducibleJoin381: while (true) { if (property < 535) { r31 = value190; break reducibleJoin381; } value191 = 6; reducibleJoin380: while (true) { if (property < 537) { r32 = value191; break reducibleJoin380; } value192 = 7; reducibleJoin379: while (true) { if (property < 538) { r33 = value192; break reducibleJoin379; } value193 = '8'; reducibleJoin378: while (true) { if (property < 601) { value194 = 8; r34 = value194; break reducibleJoin378; } r34 = value193; break reducibleJoin378; } r33 = r34; break reducibleJoin379; } r32 = r33; break reducibleJoin380; } r31 = r32; break reducibleJoin381; } r30 = r31; break reducibleJoin382; } r29 = r30; break reducibleJoin383; } r28 = r29; break reducibleJoin384; } r25 = r28; break reducibleJoin385; } r24 = r25; break reducibleJoin386; } r12 = r24; break reducibleJoin442; } reducibleJoin448: while (true) { if (r9) { property = r9[value24]; value220 = '.x'; reducibleJoin447: while (true) { if (typeof r12 === 'number') { r24 = value220; break reducibleJoin447; } regexp = RegExp('[.+]', ''); test = regexp.test; value221 = Reflect.apply(test, regexp, [r12]); value222 = '+'; reducibleJoin446: while (true) { if (value221) { value223 = ''; r28 = value223; break reducibleJoin446; } r28 = value222; break reducibleJoin446; } r24 = r28; break reducibleJoin447; } value224 = r12 + r24; r9[value24] = property + (' ' + value224); r12 = value224; break reducibleJoin448; } break reducibleJoin448; } value225 = value20 == r6; reducibleJoin452: while (true) { if (value225) { value226 = !r3; reducibleJoin451: while (true) { if (r3) { parseInt = global.parseInt; int = parseInt(r3); value227 = int > 45; r25 = value227; break reducibleJoin451; } r25 = value226; break reducibleJoin451; } r24 = r25; break reducibleJoin452; } r24 = value225; break reducibleJoin452; } if (r24) { r3 = r12; r11 = r23; r14 = r9; break reducibleJoin453; } r11 = r23; r14 = r9; break reducibleJoin453; } r11 = r25; r12 = property; r14 = r9; break reducibleJoin453; } reducibleJoin467: while (true) { reducibleJoin459: while (true) { if (value17 != r6) { value229 = value20 == r6; if (value229) { regexp = RegExp('\\bChrome\\b', ''); exec = regexp.exec; reducibleJoin458: while (true) { if (r14) { property = r14[value24]; r9 = property; break reducibleJoin458; } r9 = r14; break reducibleJoin458; } value230 = Reflect.apply(exec, regexp, [r9]); r19 = value230; break reducibleJoin459; } r19 = value229; break reducibleJoin459; } regexp = RegExp('\\bzbov|zvav$', ''); exec = regexp.exec; value228 = Reflect.apply(exec, regexp, [r5]); if (value228) { value233 = r6 + ' '; unshift = object.unshift; Reflect.apply(unshift, object, ['desktop mode']); if (value228 == 'zvav') { value235 = value233 + 'Mini'; r3 = value7; r6 = value235; } else { value234 = value233 + 'Mobile'; r6 = value234; } replace = r5.replace; RegExp = global.RegExp; value236 = RegExp(' *' + value228 + '$'); value237 = Reflect.apply(replace, r5, [value236, '']); r5 = value237; r9 = r13; r12 = value228; break reducibleJoin467; } r12 = value228; value229 = value20 == r6; if (value229) { regexp = RegExp('\\bChrome\\b', ''); exec = regexp.exec; reducibleJoin458: while (true) { if (r14) { property = r14[value24]; r9 = property; break reducibleJoin458; } r9 = r14; break reducibleJoin458; } value230 = Reflect.apply(exec, regexp, [r9]); r19 = value230; break reducibleJoin459; } r19 = value229; break reducibleJoin459; } if (r19) { unshift = object.unshift; Reflect.apply(unshift, object, ['desktop mode']); regexp = RegExp('\\bOS X\\b', ''); test = regexp.test; reducibleJoin462: while (true) { if (Reflect.apply(test, regexp, [r5])) { value231 = 'iOS 4.3+'; value232 = 'Apple'; r5 = value231; r17 = value232; break reducibleJoin462; } r5 = value7; r17 = r13; break reducibleJoin462; } r3 = value7; r6 = value18; r9 = r17; break reducibleJoin467; } r9 = r13; break reducibleJoin467; } reducibleJoin469: while (true) { if (r3) { indexOf = r3.indexOf; regexp = RegExp('[\\d.]+$', ''); exec = regexp.exec; value238 = Reflect.apply(exec, regexp, [r5]); value239 = Reflect.apply(indexOf, r3, [value238]); value240 = value239 == 0; r12 = value238; r13 = value240; break reducibleJoin469; } r13 = r3; break reducibleJoin469; } reducibleJoin471: while (true) { if (r13) { indexOf = r10.indexOf; value241 = Reflect.apply(indexOf, r10, ['/' + r12 + '-']); value242 = value241 > -1; r13 = value242; break reducibleJoin471; } break reducibleJoin471; } reducibleJoin473: while (true) { if (r13) { trim_34565Binding = trim_34565; replace = r5.replace; value243 = trim_34565Binding(Reflect.apply(replace, r5, [r12, ''])); r5 = value243; break reducibleJoin473; } break reducibleJoin473; } reducibleJoin475: while (true) { if (r14) { regexp = RegExp('\\b(?:Avant|Nook)\\b', ''); test = regexp.test; value244 = !Reflect.apply(test, regexp, [r6]); r13 = value244; break reducibleJoin475; } r13 = r14; break reducibleJoin475; } reducibleJoin487: while (true) { if (r13) { regexp = RegExp('Browser|Lunascape|Maxthon', ''); test = regexp.test; value245 = Reflect.apply(test, regexp, [r6]); reducibleJoin482: while (true) { if (value245) { r17 = value245; break reducibleJoin482; } value246 = value20 != r6; reducibleJoin479: while (true) { if (value246) { regexp = RegExp('^iOS', ''); test = regexp.test; value247 = Reflect.apply(test, regexp, [r5]); r19 = value247; break reducibleJoin479; } r19 = value246; break reducibleJoin479; } reducibleJoin481: while (true) { if (r19) { regexp = RegExp('\\bSafari\\b', ''); test = regexp.test; value248 = Reflect.apply(test, regexp, [r14[value24]]); r19 = value248; break reducibleJoin481; } break reducibleJoin481; } r17 = r19; break reducibleJoin482; } reducibleJoin486: while (true) { if (r17) { break reducibleJoin486; } regexp = RegExp('^(?:Adobe|Arora|Breach|Midori|Opera|Phantom|Rekonq|Rock|Samsung Internet|Sleipnir|Web)', ''); test = regexp.test; value249 = Reflect.apply(test, regexp, [r6]); reducibleJoin485: while (true) { if (value249) { property = r14[value24]; r19 = property; break reducibleJoin485; } r19 = value249; break reducibleJoin485; } r17 = r19; break reducibleJoin486; } r13 = r17; break reducibleJoin487; } break reducibleJoin487; } reducibleJoin489: while (true) { if (r13) { length = r14.length; property = r14[length - value24]; r12 = property; r13 = property; break reducibleJoin489; } break reducibleJoin489; } reducibleJoin491: while (true) { if (r13) { push = object.push; Reflect.apply(push, object, [r12]); break reducibleJoin491; } break reducibleJoin491; } reducibleJoin493: while (true) { if (object.length) { join = object.join; value250 = Reflect.apply(join, object, ['; ']); value251 = '(' + value250; r1 = [value251 + ')']; break reducibleJoin493; } r1 = object; break reducibleJoin493; } r13 = r9 && r2; reducibleJoin496: while (true) { if (r13) { indexOf = r2.indexOf; value252 = Reflect.apply(indexOf, r2, [r9]); value253 = value252 < 0; r13 = value253; break reducibleJoin496; } break reducibleJoin496; } reducibleJoin498: while (true) { if (r13) { push = r1.push; Reflect.apply(push, r1, ['on ' + r9]); break reducibleJoin498; } break reducibleJoin498; } reducibleJoin502: while (true) { if (r2) { push = r1.push; regexp = RegExp('^on ', ''); test = regexp.test; length = r1.length; value254 = Reflect.apply(test, regexp, [r1[length - value24]]); value255 = 'on '; reducibleJoin501: while (true) { if (value254) { value256 = ''; r13 = value256; break reducibleJoin501; } r13 = value255; break reducibleJoin501; } Reflect.apply(push, r1, [r13 + r2]); break reducibleJoin502; } break reducibleJoin502; } reducibleJoin511: while (true) { if (r5) { regexp = RegExp(' ([\\d.+]+)$', ''); exec = regexp.exec; value257 = Reflect.apply(exec, regexp, [r5]); reducibleJoin505: while (true) { if (value257) { charAt = r5.charAt; length = r5.length; length2 = value257[0].length; value258 = Reflect.apply(charAt, r5, [length - length2 - value24]); value259 = value258 == '/'; r17 = value259; break reducibleJoin505; } r17 = value257; break reducibleJoin505; } var env0_1 = r17; object = {architecture: 32}; reducibleJoin508: while (true) { if (value257) { if (r17) { r17 = r5; break reducibleJoin508; } replace = r5.replace; value260 = Reflect.apply(replace, r5, [value257[0], '']); r17 = value260; break reducibleJoin508; } r17 = r5; break reducibleJoin508; } object.family = r17; reducibleJoin510: while (true) { if (value257) { property = value257[value24]; r17 = property; break reducibleJoin510; } r17 = value7; break reducibleJoin510; } object.version = r17; object.toString = toString_34579; r5 = object; break reducibleJoin511; } break reducibleJoin511; } value261 = RegExp('\\b(?:AMD|IA|Win|WOW|x86_|x)64\\b', 'i').exec(r18); reducibleJoin535: while (true) { reducibleJoin533: while (true) { if (value261) { regexp = RegExp('\\bi686\\b', 'i'); test = regexp.test; if (Reflect.apply(test, regexp, [r18])) { reducibleJoin529: while (true) { if (r5) { regexp = RegExp('^OS X', ''); test = regexp.test; family = r5.family; value = Reflect.apply(test, regexp, [family]); r12 = value; break reducibleJoin529; } r12 = r5; break reducibleJoin529; } reducibleJoin531: while (true) { if (r12) { value = r6 == 'Chrome'; r12 = value; break reducibleJoin531; } break reducibleJoin531; } if (r12) { parseFloat = global.parseFloat; value = parseFloat(r3); value = value >= 39; r12 = value; break reducibleJoin533; } break reducibleJoin533; } reducibleJoin515: while (true) { if (r5) { r5.architecture = 64; family = r5.family; replace = family.replace; RegExp = global.RegExp; value262 = RegExp(' *' + value261); r5.family = Reflect.apply(replace, family, [value262, '']); break reducibleJoin515; } break reducibleJoin515; } reducibleJoin525: while (true) { if (r6) { regexp = RegExp('\\bWOW64\\b', 'i'); test = regexp.test; value263 = Reflect.apply(test, regexp, [r10]); reducibleJoin524: while (true) { if (value263) { r13 = value263; break reducibleJoin524; } reducibleJoin521: while (true) { if (value) { regexp = RegExp('\\w(?:86|32)$', ''); test = regexp.test; cpuClass = r20.cpuClass; reducibleJoin520: while (true) { if (cpuClass) { r17 = cpuClass; break reducibleJoin520; } platform = r20.platform; r17 = platform; break reducibleJoin520; } value = Reflect.apply(test, regexp, [r17]); r16 = value; break reducibleJoin521; } r16 = value; break reducibleJoin521; } reducibleJoin523: while (true) { if (r16) { regexp = RegExp('\\bWin64; x64\\b', 'i'); test = regexp.test; value = !Reflect.apply(test, regexp, [r10]); r16 = value; break reducibleJoin523; } break reducibleJoin523; } r13 = r16; break reducibleJoin524; } r12 = r13; break reducibleJoin525; } r12 = r6; break reducibleJoin525; } if (r12) { unshift = r1.unshift; Reflect.apply(unshift, r1, ['32-bit']); break reducibleJoin535; } break reducibleJoin535; } reducibleJoin529: while (true) { if (r5) { regexp = RegExp('^OS X', ''); test = regexp.test; family = r5.family; value = Reflect.apply(test, regexp, [family]); r12 = value; break reducibleJoin529; } r12 = r5; break reducibleJoin529; } reducibleJoin531: while (true) { if (r12) { value = r6 == 'Chrome'; r12 = value; break reducibleJoin531; } break reducibleJoin531; } if (r12) { parseFloat = global.parseFloat; value = parseFloat(r3); value = value >= 39; r12 = value; break reducibleJoin533; } break reducibleJoin533; } if (r12) { r5.architecture = 64; break reducibleJoin535; } break reducibleJoin535; } reducibleJoin537: while (true) { if (r10) { break reducibleJoin537; } env0_0 = value7; r10 = value7; break reducibleJoin537; } object = {description: r10}; reducibleJoin539: while (true) { if (r14) { property = r14[0]; r12 = property; break reducibleJoin539; } r12 = r14; break reducibleJoin539; } object.layout = r12; object.manufacturer = r9; object.name = r6; object.prerelease = r11; object.product = r2; object.ua = r10; object.version = r6 && r3; reducibleJoin542: while (true) { if (r5) { r9 = r5; break reducibleJoin542; } r9 = {'architecture': null, 'family': null, 'version': null, toString: function() { return 'null'; }}; break reducibleJoin542; } object.os = r9; object.parse = parse_34566; object.toString = function() { return this.description || ''; }; reducibleJoin544: while (true) { if (object.version) { unshift = r1.unshift; Reflect.apply(unshift, r1, [r3]); break reducibleJoin544; } break reducibleJoin544; } reducibleJoin546: while (true) { if (object.name) { unshift = r1.unshift; Reflect.apply(unshift, r1, [r6]); break reducibleJoin546; } break reducibleJoin546; } r3 = r5 && r6; reducibleJoin553: while (true) { if (r3) { String = global.String; value = String(r5); split = value.split; value = Reflect.apply(split, value, [' ']); value = r5 != value[0]; reducibleJoin552: while (true) { if (value) { r4 = value; break reducibleJoin552; } split = r6.split; value = r5 != Reflect.apply(split, r6, [' '])[0]; reducibleJoin551: while (true) { if (value) { value = !r2; r6 = value; break reducibleJoin551; } r6 = value; break reducibleJoin551; } r4 = r6; break reducibleJoin552; } r3 = r4; break reducibleJoin553; } break reducibleJoin553; } reducibleJoin558: 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 reducibleJoin558; } break reducibleJoin558; } reducibleJoin560: while (true) { if (r1.length) { join = r1.join; object.description = Reflect.apply(join, r1, [' ']); break reducibleJoin560; } break reducibleJoin560; } return object; } function parse_34566GetProduct(a0) { // fn#34567, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4393:5383, owner: parse_34566.getProduct, offset: 0x0105c126, size: 27 bytes, params: 2, frame: 13 return reduce_34563(a0, _fun34568); } function parse_34566GetLayout(a0) { // fn#34569, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4393:1569, owner: parse_34566.getLayout, offset: 0x0105c141, size: 27 bytes, params: 2, frame: 13 return reduce_34563(a0, _fun34570); } function parse_34566GetName(a0) { // fn#34571, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4393:1846, owner: parse_34566.getName, offset: 0x0105c15c, size: 27 bytes, params: 2, frame: 13 return reduce_34563(a0, _fun34572); } function parse_34566GetManufacturer(a0) { // fn#34573, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4393:3519, owner: parse_34566.getManufacturer, offset: 0x0105c177, size: 27 bytes, params: 2, frame: 13 return reduce_34563(a0, _fun34574); } function parse_34566GetOS(a0) { // fn#34575, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4393:4109, owner: parse_34566.getOS, offset: 0x0105c192, size: 27 bytes, params: 2, frame: 13 return reduce_34563(a0, _fun34576); } function parse_34566GetVersion(a0) { // fn#34577, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4393:7266, owner: parse_34566.getVersion, offset: 0x0105c1ad, size: 27 bytes, params: 2, frame: 13 return reduce_34563(a0, _fun34578); }