/* Metro module 1476; source: unknown; dependencies: [] */ function _fun16886(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#16886, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:6, offset: 0x00e5df39, size: 74 bytes, params: 8, frame: 10 let env0_0 = {map: function(a0, a1) { var env0_0 = a1; var env0_1 = {}; return a1 ? a0.map(_fun16888) : a0.slice(); }, naturalOrder: function(a0, a1) { return a0 < a1 ? -1 : a0 > a1 ? 1 : 0; }, sum: function(a0, a1) { var env0_0 = a1; var env0_1 = {}; return a0.reduce(a1 ? _fun16891 : _fun16892, 0); }, max: max_16893}; module.exports = _fun16894().quantize; function map_16887(a0, a1) { // fn#16887, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:52, offset: 0x00e5df83, size: 49 bytes, params: 3, frame: 12 const env0_0 = a1; const env0_1 = {}; return a1 ? a0.map(_fun16888) : a0.slice(); function _fun16888(a0, a1) { // fn#16888, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:95, offset: 0x00e5dfb4, size: 36 bytes, params: 3, frame: 13 const binding = env0_1; binding.index = a1; return require.call(binding, a0); } } function sum_16890(a0, a1) { // fn#16890, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:219, offset: 0x00e5dfd8, size: 49 bytes, params: 3, frame: 14 const env0_0 = a1; const env0_1 = {}; return a0.reduce(a1 ? _fun16891 : function(a0, a1) { return a0 + a1; }, 0); function _fun16891(a0, a1, a2) { // fn#16891, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:264, offset: 0x00e5e009, size: 43 bytes, params: 4, frame: 13 const binding = env0_1; binding.index = a2; return a0 + require.call(binding, a1); } } function max_16893(a0, a1) { // fn#16893, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:346, offset: 0x00e5e034, size: 58 bytes, params: 3, frame: 16 var r1; let value = a0; const Math = global.Math; const max = Math.max; const apply = max.apply; if (a1) { value = env0_0.map(value, a1); r1 = value; } else { r1 = value; } return Reflect.apply(apply, max, [null, r1]); } function _fun16894() { // fn#16894, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:415, offset: 0x00e5e06e, size: 185 bytes, params: 1, frame: 5 const getColorIndex = function(a0, a1, a2) { return (a0 << 10) + (a1 << 5) + a2; }; const PQueue = function(a0) { var env0_0 = a0; var env0_3 = _fun16897; var env0_1 = []; var env0_2 = false; return {push: _fun16898, peek: _fun16899, pop: _fun16900, size: _fun16901, map: _fun16902, debug: _fun16903}; }; const closure = function(a0, a1, a2, a3, a4, a5, a6) { this.r1 = a0; this.r2 = a1; this.g1 = a2; this.g2 = a3; this.b1 = a4; this.b2 = a5; this.histo = a6; }; const CMap2 = CMap; closure.prototype = {volume: function(a0) { var value; var value2; var property = this._volume; if (!(property && !a0)) { property = this.r2; value = property - this.r1 + 1; property = this.g2; value2 = property - this.g1 + 1; property = this.b2; this._volume = value * value2 * (property - this.b1 + 1); } return this._volume; }, count: count_16910, copy: copy_16911, avg: avg, contains: contains_16913}; CMap2.prototype = {push: function(a0) { this.vboxes.push({vbox: a0, color: a0.avg()}); }, palette: function() { return this.vboxes.map(_fun16916); }, size: function() { return this.vboxes.size(); }, map: function(a0) { var r5; var vbox; var vboxes = this.vboxes; var value = vboxes.size(); var value2 = 0; if (value2 < value) { r5 = value2; loopExit1: while (true) { vbox = vboxes.peek(r5).vbox; if (vbox.contains(a0)) { return vboxes.peek(r5).color; } value = typeof r5 === 'bigint' ? r5 + 1n : +r5 + 1; if (value < vboxes.size()) { r5 = value; continue; } break loopExit1; } } return this.nearest(a0); }, nearest: nearest, forcebw: forcebw}; return {quantize: quantize}; function PQueue(a0) { // fn#16896, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:479, offset: 0x00e5e148, size: 93 bytes, params: 2, frame: 3 const env0_0 = a0; const env0_1 = []; return {push: push_16898, peek: peek_16899, pop: pop_16900, size: size_16901, map: map_16902, debug: debug_16903}; function sort() { // fn#16897, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:512, owner: PQueue.sort, offset: 0x00e5e1a5, size: 32 bytes, params: 1, frame: 12 env0_1.sort(env0_0); } function PQueuePush(a0) { // fn#16898, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:555, owner: PQueue.push, offset: 0x00e5e1c5, size: 30 bytes, params: 2, frame: 12 env0_1.push(a0); } function PQueuePeek(a0) { // fn#16899, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:593, owner: PQueue.peek, offset: 0x00e5e1e3, size: 55 bytes, params: 2, frame: 11 const value = a0; if (!env0_2) { sort(); } return env0_1[value !== undefined ? value : env0_1.length - 1]; } function PQueuePop() { // fn#16900, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:664, owner: PQueue.pop, offset: 0x00e5e21a, size: 36 bytes, params: 1, frame: 10 if (!env0_2) { sort(); } return env0_1.pop(); } function PQueueSize() { // fn#16901, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:710, owner: PQueue.size, offset: 0x00dcf447, size: 14 bytes, params: 1, frame: 1 return env0_1.length; } function PQueueMap(a0) { // fn#16902, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:747, owner: PQueue.map, offset: 0x00e5e23e, size: 22 bytes, params: 2, frame: 11 return env0_1.map(a0); } function PQueueDebug() { // fn#16903, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:786, owner: PQueue.debug, offset: 0x00e5e254, size: 26 bytes, params: 1, frame: 10 if (!env0_2) { sort(); } return env0_1; } } function CMap() { // fn#16905, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:916, offset: 0x00e5e2b3, size: 46 bytes, params: 1, frame: 11 this.vboxes = new PQueue(_fun16906); function _fun16906(a0, a1) { // fn#16906, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:956, offset: 0x00e5e2e1, size: 97 bytes, params: 3, frame: 15 let value = environment.__proto__.__proto__; const binding = env2_0; const naturalOrder = binding.naturalOrder; let vbox = a0.vbox; value = vbox.count(); vbox = a0.vbox; value *= vbox.volume(); const value2 = a1.vbox.count(); vbox = a1.vbox; return Reflect.apply(naturalOrder, binding, [value, value2 * vbox.volume()]); } } function medianCutApply(a0, a1) { // fn#16907, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:1058, offset: 0x00e5e342, size: 1113 bytes, params: 3, frame: 36 var environment; var r7; var r14; var r18; var r19; var r22; var r23; var r24; var r20; var r5; var r8; var r0; var r2; var r9; var r12; var r1; var value; var g2; var g1; var value2; var b2; var b1; var value3; var value4; var max; var items3; var value5; var value6; var items2; var property; var value8; var value9; var value10; var value11; var value12; var value14; var value15; var value16; var value17; var value18; var value20; var value21; var value22; var value23; var value24; var value25; var value26; var value27; var copy; var value28; var value29; var value30; var value31; var Math; var value32; var value33; var min; var value34; var value35; var value36; var value37; if (a1.count()) { r2 = a1.r2; r1 = a1.r1; value = r2 - r1 + 1; g2 = a1.g2; g1 = a1.g1; value2 = g2 - g1 + 1; b2 = a1.b2; b1 = a1.b1; value3 = b2 - b1 + 1; value4 = environment.__proto__; value5 = env1_0.max([value, value2, value3]); if (a1.count() == 1) { return [a1.copy()]; } value6 = 0; var env0_0; items3 = []; items2 = []; if (value5 == value) { r1 = a1.r1; r2 = a1.r2; if (r1 <= r2) { r7 = value6; r14 = r1; reducibleLoop20: while (true) { g1 = a1.g1; g2 = a1.g2; if (g1 <= g2) { r18 = value6; r19 = g1; reducibleLoop21: while (true) { b1 = a1.b1; b2 = a1.b2; if (b1 <= b2) { r22 = r18; r23 = b1; reducibleLoop22: while (true) { property = a0[getColorIndex(r14, r19, r23)]; r24 = property || value6; value20 = r22 + r24; value21 = typeof r23 === 'bigint' ? r23 + 1n : +r23 + 1; b2 = a1.b2; if (value21 <= b2) { r22 = value20; r23 = value21; continue reducibleLoop22; } r20 = value20; break reducibleLoop22; } } else { r20 = r18; } value22 = typeof r19 === 'bigint' ? r19 + 1n : +r19 + 1; g2 = a1.g2; if (value22 <= g2) { r18 = r20; r19 = value22; continue reducibleLoop21; } r5 = r20; break reducibleLoop21; } } else { r5 = value6; } value23 = r7 + r5; env0_0 = value23; items3[r14] = value23; value24 = typeof r14 === 'bigint' ? r14 + 1n : +r14 + 1; r2 = a1.r2; if (value24 <= r2) { r7 = value23; r14 = value24; continue reducibleLoop20; } r8 = value23; break reducibleLoop20; } } else { r8 = value6; } } else if (value5 == value2) { g1 = a1.g1; g2 = a1.g2; if (g1 <= g2) { r7 = value6; r14 = g1; reducibleLoop13: while (true) { r1 = a1.r1; r2 = a1.r2; if (r1 <= r2) { r18 = value6; r19 = r1; reducibleLoop14: while (true) { b1 = a1.b1; b2 = a1.b2; if (b1 <= b2) { r22 = r18; r23 = b1; reducibleLoop15: while (true) { property = a0[getColorIndex(r19, r14, r23)]; r24 = property || value6; value14 = r22 + r24; value15 = typeof r23 === 'bigint' ? r23 + 1n : +r23 + 1; b2 = a1.b2; if (value15 <= b2) { r22 = value14; r23 = value15; continue reducibleLoop15; } r20 = value14; break reducibleLoop15; } } else { r20 = r18; } value16 = typeof r19 === 'bigint' ? r19 + 1n : +r19 + 1; r2 = a1.r2; if (value16 <= r2) { r18 = r20; r19 = value16; continue reducibleLoop14; } r5 = r20; break reducibleLoop14; } } else { r5 = value6; } value17 = r7 + r5; env0_0 = value17; items3[r14] = value17; value18 = typeof r14 === 'bigint' ? r14 + 1n : +r14 + 1; g2 = a1.g2; if (value18 <= g2) { r7 = value17; r14 = value18; continue reducibleLoop13; } r8 = value17; break reducibleLoop13; } } else { r8 = value6; } } else { b1 = a1.b1; b2 = a1.b2; if (b1 <= b2) { r7 = value6; r14 = b1; reducibleLoop6: while (true) { r1 = a1.r1; r2 = a1.r2; if (r1 <= r2) { r18 = value6; r19 = r1; reducibleLoop7: while (true) { g1 = a1.g1; g2 = a1.g2; if (g1 <= g2) { r22 = r18; r23 = g1; reducibleLoop8: while (true) { property = a0[getColorIndex(r19, r23, r14)]; r24 = property || value6; value8 = r22 + r24; value9 = typeof r23 === 'bigint' ? r23 + 1n : +r23 + 1; g2 = a1.g2; if (value9 <= g2) { r22 = value8; r23 = value9; continue reducibleLoop8; } r20 = value8; break reducibleLoop8; } } else { r20 = r18; } value10 = typeof r19 === 'bigint' ? r19 + 1n : +r19 + 1; r2 = a1.r2; if (value10 <= r2) { r18 = r20; r19 = value10; continue reducibleLoop7; } r5 = r20; break reducibleLoop7; } } else { r5 = value6; } value11 = r7 + r5; env0_0 = value11; items3[r14] = value11; value12 = typeof r14 === 'bigint' ? r14 + 1n : +r14 + 1; b2 = a1.b2; if (value12 <= b2) { r7 = value11; r14 = value12; continue reducibleLoop6; } r8 = value11; break reducibleLoop6; } } else { r8 = value6; } } items3.forEach(_fun16908); value = 'r'; reducibleJoin30: while (true) { if (value5 == value) { r2 = value; break reducibleJoin30; } value = 'b'; reducibleJoin29: while (true) { if (value5 == value2) { value = 'g'; r0 = value; break reducibleJoin29; } r0 = value; break reducibleJoin29; } r2 = r0; break reducibleJoin30; } value = r2 + '1'; value25 = r2 + '2'; property = a1[value]; value26 = undefined; if (property <= a1[value25]) { r7 = property; reducibleLoop31: while (true) { property = items3[r7]; if (property > r8 / 2) { copy = a1.copy; value28 = Reflect.apply(copy, a1, []); copy = a1.copy; value29 = Reflect.apply(copy, a1, []); value30 = r7 - a1[value]; value31 = a1[value25] - r7; if (value30 <= value31) { Math = global.Math; min = Math.min; value34 = a1[value25] - 1; value35 = Reflect.apply(min, Math, [value34, ~~(r7 + value31 / 2)]); r9 = value35; } else { Math = global.Math; max = Math.max; property = a1[value]; value32 = r7 - 1; value33 = Reflect.apply(max, Math, [property, ~~(value32 - value30 / 2)]); r9 = value33; } if (items3[r9]) { r12 = r9; } else { r8 = r9; reducibleLoop37: while (true) { value36 = typeof r8 === 'bigint' ? r8 + 1n : +r8 + 1; if (items3[value36]) { r12 = value36; break reducibleLoop37; } r8 = value36; continue reducibleLoop37; } } reducibleJoin42: while (true) { if (items2[r12]) { r7 = r12; break reducibleJoin42; } if (!items3[r12 - 1]) { r7 = r12; break reducibleJoin42; } r9 = r12; reducibleLoop40: while (true) { value37 = typeof r9 === 'bigint' ? r9 - 1n : +r9 - 1; if (items2[value37]) { r7 = value37; break reducibleJoin42; } if (items3[value37 - 1]) { r9 = value37; continue reducibleLoop40; } r7 = value37; break reducibleJoin42; } } value28[value25] = r7; value29[value] = value28[value25] + 1; r0 = [value28, value29]; break reducibleLoop31; } value27 = typeof r7 === 'bigint' ? r7 + 1n : +r7 + 1; if (value27 <= a1[value25]) { r7 = value27; continue reducibleLoop31; } r0 = value26; break reducibleLoop31; } } else { r0 = value26; } return r0; } function _fun16908(a0, a1) { // fn#16908, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:1615, offset: 0x00e5e79b, size: 29 bytes, params: 3, frame: 3 env0_1[a1] = env0_0 - a0; } } function count_16910(a0) { // fn#16910, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:2093, offset: 0x00e5e821, size: 218 bytes, params: 2, frame: 29 var r3; var r8; var r11; var r12; var r15; var r16; var r17; var r13; var r10; var r1; var r2; var value; var value2; var g1; var g2; var b1; var b2; var property; var value3; var value4; var value5; var value6; const histo = this.histo; reducibleJoin10: while (true) { reducibleJoin9: while (true) { if (this._count_set) { if (!a0) { break reducibleJoin10; } r1 = this.r1; r2 = this.r2; value = environment; value2 = 0; if (!(r1 <= r2)) { r1 = value2; break reducibleJoin9; } r3 = value2; r8 = r1; reducibleLoop3: while (true) { g1 = this.g1; g2 = this.g2; if (g1 <= g2) { r11 = r3; r12 = g1; reducibleLoop4: while (true) { b1 = this.b1; b2 = this.b2; if (b1 <= b2) { r15 = r11; r16 = b1; reducibleLoop5: while (true) { property = histo[getColorIndex(r8, r12, r16)]; r17 = property || value2; value3 = r15 + r17; value4 = typeof r16 === 'bigint' ? r16 + 1n : +r16 + 1; b2 = this.b2; if (value4 <= b2) { r15 = value3; r16 = value4; continue reducibleLoop5; } r13 = value3; break reducibleLoop5; } } else { r13 = r11; } value5 = typeof r12 === 'bigint' ? r12 + 1n : +r12 + 1; g2 = this.g2; if (value5 <= g2) { r11 = r13; r12 = value5; continue reducibleLoop4; } r10 = r13; break reducibleLoop4; } } else { r10 = r3; } value6 = typeof r8 === 'bigint' ? r8 + 1n : +r8 + 1; r2 = this.r2; if (value6 <= r2) { r3 = r10; r8 = value6; continue reducibleLoop3; } r1 = r10; break reducibleJoin9; } } else { r1 = this.r1; r2 = this.r2; value = environment; value2 = 0; if (!(r1 <= r2)) { r1 = value2; break reducibleJoin9; } r3 = value2; r8 = r1; reducibleLoop3: while (true) { g1 = this.g1; g2 = this.g2; if (g1 <= g2) { r11 = r3; r12 = g1; reducibleLoop4: while (true) { b1 = this.b1; b2 = this.b2; if (b1 <= b2) { r15 = r11; r16 = b1; reducibleLoop5: while (true) { property = histo[getColorIndex(r8, r12, r16)]; r17 = property || value2; value3 = r15 + r17; value4 = typeof r16 === 'bigint' ? r16 + 1n : +r16 + 1; b2 = this.b2; if (value4 <= b2) { r15 = value3; r16 = value4; continue reducibleLoop5; } r13 = value3; break reducibleLoop5; } } else { r13 = r11; } value5 = typeof r12 === 'bigint' ? r12 + 1n : +r12 + 1; g2 = this.g2; if (value5 <= g2) { r11 = r13; r12 = value5; continue reducibleLoop4; } r10 = r13; break reducibleLoop4; } } else { r10 = r3; } value6 = typeof r8 === 'bigint' ? r8 + 1n : +r8 + 1; r2 = this.r2; if (value6 <= r2) { r3 = r10; r8 = value6; continue reducibleLoop3; } r1 = r10; break reducibleJoin9; } } } this._count = r1; this._count_set = true; break reducibleJoin10; } return this._count; } function copy_16911() { // fn#16911, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:2315, offset: 0x00e5e8fb, size: 73 bytes, params: 1, frame: 23 const r1 = this.r1; const r2 = this.r2; const g1 = this.g1; const g2 = this.g2; const b1 = this.b1; const b2 = this.b2; const histo = this.histo; const value = Object.create(VBox.prototype, {constructor: {value: VBox}}); const vBox = new VBox(r1, r2, g1, g2, b1, b2, histo); return vBox instanceof Object ? vBox : value; } function avg(a0) { // fn#16912, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:2402, offset: 0x00e5e944, size: 551 bytes, params: 2, frame: 52 var r6; var r7; var r9; var r10; var r16; var r22; var r23; var r24; var r25; var r26; var r32; var r33; var r34; var r35; var r36; var r38; var r27; var r28; var r29; var r30; var r18; var r19; var r20; var r21; var r2; var r3; var r4; var r5; var r1; var value; var value2; var g1; var g2; var b1; var b2; var property; var value3; var value4; var value5; var value6; var value7; var value8; var value9; const histo = this.histo; reducibleJoin13: while (true) { reducibleJoin9: while (true) { if (this._avg) { if (!a0) { break reducibleJoin13; } r1 = this.r1; r2 = this.r2; value = environment; value2 = 0; if (!(r1 <= r2)) { r2 = value2; r3 = value2; r4 = value2; r5 = value2; break reducibleJoin9; } r6 = value2; r7 = value2; r9 = value2; r10 = value2; r16 = r1; reducibleLoop3: while (true) { g1 = this.g1; g2 = this.g2; if (g1 <= g2) { r22 = r6; r23 = r7; r24 = r9; r25 = r10; r26 = g1; reducibleLoop4: while (true) { b1 = this.b1; b2 = this.b2; if (b1 <= b2) { r32 = r22; r33 = r23; r34 = r24; r35 = r25; r36 = b1; reducibleLoop5: while (true) { property = histo[getColorIndex(r16, r26, r36)]; r38 = property || value2; value3 = r35 + r38; value4 = r34 + r38 * (r16 + 0.5) * 8; value5 = r33 + r38 * (r26 + 0.5) * 8; value6 = r32 + r38 * (r36 + 0.5) * 8; value7 = typeof r36 === 'bigint' ? r36 + 1n : +r36 + 1; b2 = this.b2; if (value7 <= b2) { r32 = value6; r33 = value5; r34 = value4; r35 = value3; r36 = value7; continue reducibleLoop5; } r27 = value6; r28 = value5; r29 = value4; r30 = value3; break reducibleLoop5; } } else { r27 = r22; r28 = r23; r29 = r24; r30 = r25; } value8 = typeof r26 === 'bigint' ? r26 + 1n : +r26 + 1; g2 = this.g2; if (value8 <= g2) { r22 = r27; r23 = r28; r24 = r29; r25 = r30; r26 = value8; continue reducibleLoop4; } r18 = r27; r19 = r28; r20 = r29; r21 = r30; break reducibleLoop4; } } else { r18 = r6; r19 = r7; r20 = r9; r21 = r10; } value9 = typeof r16 === 'bigint' ? r16 + 1n : +r16 + 1; r2 = this.r2; if (value9 <= r2) { r6 = r18; r7 = r19; r9 = r20; r10 = r21; r16 = value9; continue reducibleLoop3; } r2 = r20; r3 = r18; r4 = r21; r5 = r19; break reducibleJoin9; } } else { r1 = this.r1; r2 = this.r2; value = environment; value2 = 0; if (!(r1 <= r2)) { r2 = value2; r3 = value2; r4 = value2; r5 = value2; break reducibleJoin9; } r6 = value2; r7 = value2; r9 = value2; r10 = value2; r16 = r1; reducibleLoop3: while (true) { g1 = this.g1; g2 = this.g2; if (g1 <= g2) { r22 = r6; r23 = r7; r24 = r9; r25 = r10; r26 = g1; reducibleLoop4: while (true) { b1 = this.b1; b2 = this.b2; if (b1 <= b2) { r32 = r22; r33 = r23; r34 = r24; r35 = r25; r36 = b1; reducibleLoop5: while (true) { property = histo[getColorIndex(r16, r26, r36)]; r38 = property || value2; value3 = r35 + r38; value4 = r34 + r38 * (r16 + 0.5) * 8; value5 = r33 + r38 * (r26 + 0.5) * 8; value6 = r32 + r38 * (r36 + 0.5) * 8; value7 = typeof r36 === 'bigint' ? r36 + 1n : +r36 + 1; b2 = this.b2; if (value7 <= b2) { r32 = value6; r33 = value5; r34 = value4; r35 = value3; r36 = value7; continue reducibleLoop5; } r27 = value6; r28 = value5; r29 = value4; r30 = value3; break reducibleLoop5; } } else { r27 = r22; r28 = r23; r29 = r24; r30 = r25; } value8 = typeof r26 === 'bigint' ? r26 + 1n : +r26 + 1; g2 = this.g2; if (value8 <= g2) { r22 = r27; r23 = r28; r24 = r29; r25 = r30; r26 = value8; continue reducibleLoop4; } r18 = r27; r19 = r28; r20 = r29; r21 = r30; break reducibleLoop4; } } else { r18 = r6; r19 = r7; r20 = r9; r21 = r10; } value9 = typeof r16 === 'bigint' ? r16 + 1n : +r16 + 1; r2 = this.r2; if (value9 <= r2) { r6 = r18; r7 = r19; r9 = r20; r10 = r21; r16 = value9; continue reducibleLoop3; } r2 = r20; r3 = r18; r4 = r21; r5 = r19; break reducibleJoin9; } } } if (r4) { value = r2 / r4; r1 = [~~value, ~~(r5 / r4), ~~(r3 / r4)]; } else { r1 = this.r1; r2 = this.r2; value = r1 + r2 + 1; g1 = this.g1; g2 = this.g2; b1 = this.b1; b2 = this.b2; r1 = [~~(8 * value / 2), ~~(8 * (g1 + g2 + 1) / 2), ~~(8 * (b1 + b2 + 1) / 2)]; } this._avg = r1; break reducibleJoin13; } return this._avg; } function palette() { // fn#16915, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:2982, offset: 0x00e5ec34, size: 27 bytes, params: 1, frame: 11 return this.vboxes.map(function(a0) { return a0.color; }); } function forcebw() { // fn#16920, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:3499, offset: 0x00e5edeb, size: 183 bytes, params: 1, frame: 15 const vboxes = this.vboxes; vboxes.sort(_fun16921); let color = vboxes[0].color; if (color[0] < 5 && color[1] < 5 && color[2] < 5) { vboxes[0].color = [0, 0, 0]; } value = vboxes.length - 1; color = vboxes[value].color; if (color[0] > 251 && color[1] > 251 && color[2] > 251) { vboxes[value].color = [255, 255, 255]; } function _fun16921({color}, {color}) { // fn#16921, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:3544, offset: 0x00e5eea2, size: 67 bytes, params: 3, frame: 15 const binding = env2_0; const naturalOrder = binding.naturalOrder; const binding2 = env2_0; const value2 = binding2.sum(color); const binding3 = env2_0; return Reflect.apply(naturalOrder, binding, [value2, binding3.sum(color)]); } } function quantize(a0, a1) { // fn#16922, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:3775, offset: 0x00e5eee5, size: 313 bytes, params: 3, frame: 18 var environment; var value; var forEach; var value2; var prototype; var value3; var closure2; var pQueue; var value4; var push; var closure3; var size; var pop; var value5; var cMap; var value6; const iter2 = iter; if (a0.length) { reducibleJoin8: while (true) { if (a1 < 2) { break reducibleJoin8; } if (!(a1 > 256)) { value = ((a0) => { var Array = global.Array; var value2 = new Array(32768); var env0_2 = value2; a0.forEach(_fun16925); return value2; })(a0); var env0_0 = value; forEach = value.forEach; Reflect.apply(forEach, value, [function() { }]); value = vboxFromPixels(a0, value); value2 = environment; prototype = PQueue.prototype; value3 = Object.create(prototype, {constructor: {value: PQueue}}); closure2 = _fun16929; pQueue = new PQueue(); value4 = pQueue instanceof Object ? pQueue : value3; push = value4.push; Reflect.apply(push, value4, [value]); iter2(value4, 0.75 * a1); prototype = PQueue.prototype; value = Object.create(prototype, {constructor: {value: PQueue}}); closure3 = _fun16930; pQueue = new PQueue(); value = pQueue instanceof Object ? pQueue : value; size = value4.size; if (Reflect.apply(size, value4, [])) { reducibleLoop4: while (true) { push = value.push; pop = value4.pop; Reflect.apply(push, value, [Reflect.apply(pop, value4, [])]); size = value4.size; if (Reflect.apply(size, value4, [])) { continue reducibleLoop4; } break reducibleLoop4; } } size = value.size; iter2(value, a1 - Reflect.apply(size, value, [])); prototype = CMap.prototype; value5 = Object.create(prototype, {constructor: {value: CMap}}); cMap = new CMap(); value6 = cMap instanceof Object ? cMap : value5; size = value.size; if (Reflect.apply(size, value, [])) { reducibleLoop6: while (true) { push = value6.push; pop = value.pop; Reflect.apply(push, value6, [Reflect.apply(pop, value, [])]); size = value.size; if (Reflect.apply(size, value, [])) { continue reducibleLoop6; } break reducibleLoop6; } } return value6; } break reducibleJoin8; } } return false; function iter(a0, a1) { // fn#16923, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:4325, owner: quantize.iter, offset: 0x00e5f01e, size: 169 bytes, params: 3, frame: 28 var r18; var r12; var r13; var pop; var value5; var count; var push; var value6; var value7; var property; var property2; var value8; var value9; var value10; const value = 1; const value2 = 0; let r3 = value2; let r4 = value; reducibleLoop1: while (true) { pop = a0.pop; value5 = Reflect.apply(pop, a0, []); count = value5.count; if (Reflect.apply(count, value5, [])) { value7 = medianCutApply(env0_0, value5); property = value7[value2]; property2 = value7[value]; if (!property) { return undefined; } push = a0.push; Reflect.apply(push, a0, [property]); reducibleJoin7: while (true) { if (property2) { push = a0.push; Reflect.apply(push, a0, [property2]); value8 = typeof r4 === 'bigint' ? r4 + 1n : +r4 + 1; r18 = value8; break reducibleJoin7; } r18 = r4; break reducibleJoin7; } if (r18 >= a1) { return undefined; } value9 = typeof r3 === 'bigint' ? r3 : +r3; value10 = typeof value9 === 'bigint' ? value9 + 1n : +value9 + 1; reducibleJoin9: while (true) { if (value9 > 1000) { return undefined; } r12 = value10; r13 = r18; break reducibleJoin9; } } else { push = a0.push; Reflect.apply(push, a0, [value5]); value6 = typeof r3 === 'bigint' ? r3 + 1n : +r3 + 1; r12 = value6; r13 = r4; } if (!(r12 < 1000)) { return undefined; } r3 = r12; r4 = r13; continue reducibleLoop1; } } function getHisto(a0) { // fn#16924, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:3838, owner: quantize.getHisto, offset: 0x00e5f0c7, size: 60 bytes, params: 2, frame: 13 const Array = global.Array; const array = new Array(32768); a0.forEach(_fun16925); return array; function _fun16925(a0) { // fn#16925, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:3908, offset: 0x00e5f103, size: 96 bytes, params: 2, frame: 18 const value = 0; const colorIndex = getColorIndex(a0[value] >> 3, a0[1] >> 3, a0[2] >> 3); const binding = env0_2; binding[colorIndex] = (binding[colorIndex] || value) + 1; } } function vboxFromPixels(a0, a1) { // fn#16927, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:4032, owner: quantize.vboxFromPixels, offset: 0x00e5f163, size: 108 bytes, params: 3, frame: 23 var environment; const env0_3 = 1000000; const env0_4 = 0; const env0_5 = 1000000; const env0_6 = 0; const env0_7 = 1000000; const env0_8 = 0; a0.forEach(_fun16928); let value = environment.__proto__; const binding = env0_3; const binding2 = env0_4; const binding3 = env0_5; const binding4 = env0_6; const binding5 = env0_7; const binding6 = env0_8; value = Object.create(VBox.prototype, {constructor: {value: VBox}}); const vBox = new VBox(binding, binding2, binding3, binding4, binding5, binding6, a1); return vBox instanceof Object ? vBox : value; function _fun16928(a0) { // fn#16928, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:4119, offset: 0x00e5f1cf, size: 183 bytes, params: 2, frame: 4 env0_0 = a0[0] >> 3; env0_1 = a0[1] >> 3; env0_2 = a0[2] >> 3; if (!(env0_0 < env0_3)) { if (env0_0 > env0_4) { } } if (!(env0_1 < env0_5)) { if (env0_1 > env0_6) { } } if (!(env0_2 < env0_7)) { if (env0_2 > env0_8) { } } } } function _fun16929(a0, a1) { // fn#16929, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:4265, offset: 0x00e5f286, size: 45 bytes, params: 3, frame: 14 const value = environment.__proto__.__proto__; const binding = env2_0; return binding.naturalOrder(a0.count(), a1.count()); } function _fun16930(a0, a1) { // fn#16930, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:4573, offset: 0x00e5f2b3, size: 73 bytes, params: 3, frame: 15 let value = environment.__proto__.__proto__; const binding = env2_0; const naturalOrder = binding.naturalOrder; value = a0.count(); value *= a0.volume(); return Reflect.apply(naturalOrder, binding, [value, a1.count() * a1.volume()]); } } } } function _fun16892(a0, a1) { // fn#16892, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:312, offset: 0x00c4a322, size: 12 bytes, params: 3, frame: 2 return a0 + a1; } function contains_16913(a0) { // fn#16913, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:2752, offset: 0x00e5eb6b, size: 155 bytes, params: 2, frame: 6 const value = a0[0] >> 3; global.gval = a0[1] >> 3; global.bval = a0[2] >> 3; let r0 = value >= this.r1 && value <= this.r2 && global.gval >= this.g1; r0 = r0 && global.gval <= this.g2 && global.bval >= this.b1 && global.bval <= this.b2; return r0; } function _fun16916(a0) { // fn#16916, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:3025, offset: 0x00e5ec4f, size: 10 bytes, params: 2, frame: 1 return a0.color; } function nearest(a0) { // fn#16919, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:3250, offset: 0x00e5ecda, size: 273 bytes, params: 2, frame: 27 var r2; var r3; var r4; var r12; var r0; var Math; var sqrt; var Math2; var pow; var property; var peek; var color; var value3; var Math3; var value4; var Math4; var value5; var value6; var value7; var value8; const vboxes = this.vboxes; let value = vboxes.size(); const value2 = 0; value = undefined; if (value2 < value) { r2 = value2; r3 = value; r4 = value; while (true) { Math = global.Math; sqrt = Math.sqrt; Math2 = global.Math; pow = Math2.pow; property = a0[value2]; peek = vboxes.peek; color = Reflect.apply(peek, vboxes, [r2]).color; value3 = Reflect.apply(pow, Math2, [property - color[value2], 2]); Math3 = global.Math; pow = Math3.pow; property = a0[1]; peek = vboxes.peek; color = Reflect.apply(peek, vboxes, [r2]).color; value4 = value3 + Reflect.apply(pow, Math3, [property - color[1], 2]); Math4 = global.Math; pow = Math4.pow; property = a0[2]; peek = vboxes.peek; color = Reflect.apply(peek, vboxes, [r2]).color; value5 = Reflect.apply(sqrt, Math, [value4 + Reflect.apply(pow, Math4, [property - color[2], 2])]); value6 = value5 < r4; if (value6) { r12 = value6; } else { value7 = value === r4; r12 = value7; } if (!r12) { continue; } peek = vboxes.peek; color = Reflect.apply(peek, vboxes, [r2]).color; r3 = color; r4 = value5; value8 = typeof r2 === 'bigint' ? r2 + 1n : +r2 + 1; if (value8 < vboxes.size()) { r2 = value8; continue; } r0 = r3; break; } } else { r0 = value; } return r0; } global.__d(_fun16886, 1476, []) /* metro module 1476 */;