/* Metro module 4751; source: unknown; dependencies: [4748, 4752, 4734] */ import Module04748 from './module-04748.js'; /* Metro dependency 4748 */ function _fun40984(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#40984, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4929:6, offset: 0x0111202a, size: 294 bytes, params: 8, frame: 18 const env0_0 = require; const getDescriptionFromTagValue = function(a0) { var r0; var value = a0; if (value instanceof global.Array) { value = value.join(', '); r0 = value; } else { r0 = value; } return r0; }; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); object = {}; const getByteAt = (Module04748).getByteAt; object[1] = getByteAt; const getAsciiAt = (Module04748).getAsciiAt; object[2] = getAsciiAt; const getShortAt = (Module04748).getShortAt; object[3] = getShortAt; const getLongAt = (Module04748).getLongAt; object[4] = getLongAt; const getRationalAt = (Module04748).getRationalAt; object[5] = getRationalAt; const getUndefinedAt = (Module04748).getUndefinedAt; object[7] = getUndefinedAt; const getSlongAt = (Module04748).getSlongAt; object[9] = getSlongAt; const getSrationalAt = (Module04748).getSrationalAt; object[10] = getSrationalAt; const getIfdPointerAt = (Module04748).getIfdPointerAt; object[13] = getIfdPointerAt; exports.get0thIfdOffset = get0thIfdOffset; exports.readIfd = readIfd; function readTag(a0, a1, a2, a3, a4, a5) { // fn#40985, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4929:315, offset: 0x01112150, size: 1051 bytes, params: 7, frame: 33 var environment; var r1; var r3; var r12; var r13; var r17; var r2; var r4; var value9; var defaultImport7; var defaultImport8; var value10; var value11; var value12; var byteLength; var value13; var getTagValueBinding; var tagValue; var value15; var tagValueBinding; var tagTypes; var ASCII; var items2; var length; var value17; var property; var value18; var value19; var HermesInternal; var concat; var value20; var name; var description; var RATIONAL; var SRATIONAL; var property2; var defaultImport9; var value21; var error; let value = environment; const value2 = 0; const defaultImport = importDefault(dependencyMap[value2]); let getTypeSize = defaultImport.getTypeSize; const value3 = Reflect.apply(getTypeSize, defaultImport, ['SHORT']); const defaultImport2 = importDefault(dependencyMap[value2]); getTypeSize = defaultImport2.getTypeSize; const value4 = value3 + Reflect.apply(getTypeSize, defaultImport2, ['SHORT']); const defaultImport3 = importDefault(dependencyMap[value2]); getTypeSize = defaultImport3.getTypeSize; const value5 = value4 + Reflect.apply(getTypeSize, defaultImport3, ['LONG']); const shortAt = importDefault(dependencyMap[value2]).getShortAt(a0, a3, a4); const shortAt2 = importDefault(dependencyMap[value2]).getShortAt(a0, a3 + value3, a4); const longAt = importDefault(dependencyMap[value2]).getLongAt(a0, a3 + value4, a4); let typeSizes = importDefault(dependencyMap[value2]).typeSizes; if (typeSizes[shortAt2] !== undefined) { reducibleJoin3: while (true) { reducibleJoin4: while (true) { if (a5) { break reducibleJoin4; } if (importDefault(dependencyMap[1])[a1][shortAt] !== undefined) { break reducibleJoin4; } break reducibleJoin3; } typeSizes = importDefault(dependencyMap[value2]).typeSizes; value9 = typeSizes[shortAt2] * longAt; defaultImport7 = importDefault(dependencyMap[value2]); getTypeSize = defaultImport7.getTypeSize; if (value9 <= Reflect.apply(getTypeSize, defaultImport7, ['LONG'])) { getTagValueBinding = getTagValue; value15 = a3 + value5; tagValueBinding = getTagValueBinding(a0, value15, shortAt2, longAt, a4); r1 = value15; r3 = tagValueBinding; } else { defaultImport8 = importDefault(dependencyMap[value2]); getLongAt = defaultImport8.getLongAt; value10 = Reflect.apply(getLongAt, defaultImport8, [a0, a3 + value5, a4]); value11 = a2 + value10; typeSizes = importDefault(dependencyMap[value2]).typeSizes; value12 = value11 + typeSizes[shortAt2] * longAt; byteLength = a0.byteLength; if (value12 <= byteLength) { tagValue = getTagValue(a0, a2 + value10, shortAt2, longAt, a4, shortAt === 33723); r1 = value10; r3 = tagValue; } else { value13 = ''; r1 = value10; r3 = value13; } } tagTypes = importDefault(dependencyMap[value2]).tagTypes; ASCII = tagTypes.ASCII; reducibleJoin18: while (true) { if (shortAt2 !== ASCII) { break reducibleJoin18; } items2 = []; length = r3.length; if (value2 < length) { r12 = value2; r13 = value2; reducibleLoop11: while (true) { if (r3[r12] !== '\x00') { reducibleJoin15: while (true) { if (items2[r13] !== undefined) { break reducibleJoin15; } items2[r13] = ''; break reducibleJoin15; } property = items2[r13]; items2[r13] = property + r3[r12]; r17 = r13; } else { value17 = typeof r13 === 'bigint' ? r13 + 1n : +r13 + 1; r17 = value17; } value18 = typeof r12 === 'bigint' ? r12 + 1n : +r12 + 1; length = r3.length; if (value18 < length) { r12 = value18; r13 = r17; continue reducibleLoop11; } break reducibleLoop11; } } value19 = ((a0) => { var closure; var value; var error; try { closure = _fun40987; value = a0.map(closure); } catch (error) { return a0; } return value; })(items2); r3 = value19; break reducibleJoin18; } reduciblePort37: while (true) { exceptionLanding36: while (true) { HermesInternal = global.HermesInternal; concat = HermesInternal.concat; value20 = 'undefined-' + shortAt; if (importDefault(dependencyMap[1])[a1][shortAt] === undefined) { r2 = r3; r4 = value20; break reduciblePort37; } name = importDefault(dependencyMap[1])[a1][shortAt].name; if (name !== undefined) { description = importDefault(dependencyMap[1])[a1][shortAt].description; if (description !== undefined) { name = importDefault(dependencyMap[1])[a1][shortAt].name; try { } catch (error) { break exceptionLanding36; } try { } catch (error) { break exceptionLanding36; } try { property = dependencyMap[1]; } catch (error) { break exceptionLanding36; } try { defaultImport9 = importDefault(property); } catch (error) { break exceptionLanding36; } try { property = defaultImport9[a1]; } catch (error) { break exceptionLanding36; } try { property = property[shortAt]; } catch (error) { break exceptionLanding36; } try { description = property.description; } catch (error) { break exceptionLanding36; } try { value21 = Reflect.apply(description, property, [r3]); } catch (error) { break exceptionLanding36; } r2 = value21; r4 = name; break reduciblePort37; } } tagTypes = importDefault(dependencyMap[value2]).tagTypes; RATIONAL = tagTypes.RATIONAL; if (shortAt2 !== RATIONAL) { tagTypes = importDefault(dependencyMap[value2]).tagTypes; SRATIONAL = tagTypes.SRATIONAL; if (shortAt2 !== SRATIONAL) { property = importDefault(dependencyMap[1])[a1][shortAt]; r2 = getDescriptionFromTagValue(r3); r4 = property; break reduciblePort37; } } property = importDefault(dependencyMap[1])[a1][shortAt]; property2 = r3[value2]; value = String(property2 / r3[1]); r2 = value; r4 = property; break reduciblePort37; } value = getDescriptionFromTagValue(r3); r2 = value; r4 = name; break reduciblePort37; } return {id: shortAt, name: r4, value: r3, description: r2, __offset: r1}; } } function decodeAsciiValue(a0) { // fn#40986, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4929:978, owner: readTag.decodeAsciiValue, offset: 0x0111256b, size: 29 bytes, params: 2, frame: 12 var closure; var value; var error; try { closure = function(a0) { return global.decodeURIComponent((0, global.escape)(a0)); }; value = a0.map(closure); } catch (error) { return a0; } return value; } } function getTagValue(a0, a1, a2, a3, a4) { // fn#40988, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4929:1678, offset: 0x011125a7, size: 278 bytes, params: 6, frame: 23 var r0; var r2; var r6; var r8; var value5; var value6; var value7; var typeSizes; var value8; var tagTypes; var BYTE; var push; var binding; var value11; var property; let value = a1; const value2 = a2; const value3 = a3; const items2 = []; const value4 = arguments.length > 5; reducibleJoin2: while (true) { if (value4) { value5 = arguments[5] !== undefined; r0 = value5; break reducibleJoin2; } r0 = value4; break reducibleJoin2; } reducibleJoin4: while (true) { if (r0) { value6 = arguments[5]; r0 = value6; break reducibleJoin4; } break reducibleJoin4; } reducibleJoin6: while (true) { if (r0) { value7 = environment; typeSizes = (importDefault(4748) /* metro dependency 4748 */).typeSizes; value8 = value3 * typeSizes[value2]; tagTypes = (importDefault(4748) /* metro dependency 4748 */).tagTypes; BYTE = tagTypes.BYTE; r2 = BYTE; r6 = value8; break reducibleJoin6; } r2 = value2; r6 = value3; break reducibleJoin6; } const value9 = 0; if (value9 < r6) { r0 = value9; r8 = value; reducibleLoop7: while (true) { push = items2.push; binding = env0_3; Reflect.apply(push, items2, [binding[r2](a0, r8, a4)]); typeSizes = importDefault(dependencyMap[value9]).typeSizes; value = r8 + typeSizes[r2]; value11 = typeof r0 === 'bigint' ? r0 + 1n : +r0 + 1; if (value11 < r6) { r0 = value11; r8 = value; continue reducibleLoop7; } break reducibleLoop7; } } const ASCII = importDefault(dependencyMap[value9]).tagTypes.ASCII; if (r2 === ASCII) { value = importDefault(dependencyMap[value9]); value = value.getAsciiValue(items2); r0 = value; } else { reducibleJoin12: while (true) { if (items2.length !== 1) { r0 = items2; break reducibleJoin12; } property = items2[value9]; r0 = property; break reducibleJoin12; } } return r0; } function get0thIfdOffset(a0, a1, a2) { // fn#40990, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4929:2079, offset: 0x011126e4, size: 59 bytes, params: 4, frame: 16 const getLongAt = Module04748.getLongAt; return a1 + Reflect.apply(getLongAt, Module04748, [a0, a1 + 4, a2]); } function readIfd(a0, a1, a2, a3, a4, a5) { // fn#40991, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4929:2159, offset: 0x0111271f, size: 583 bytes, params: 7, frame: 35 var r12; var r13; var r20; var r19; var r11; var value7; var value8; var name; var id; var value9; var description; var value10; var IFD_TYPE_PENTAX; var value11; var value12; var property; var __offset; var value13; var value14; var defaultImport4; var longAt; const value2 = 0; const defaultImport = importDefault(dependencyMap[value2]); let getTypeSize = defaultImport.getTypeSize; const value3 = Reflect.apply(getTypeSize, defaultImport, ['SHORT']); const object = {}; const defaultImport2 = importDefault(dependencyMap[value2]); getTypeSize = defaultImport2.getTypeSize; const value4 = a3 + Reflect.apply(getTypeSize, defaultImport2, ['SHORT']); let byteLength = a0.byteLength; const r18 = value4 <= byteLength ? importDefault(dependencyMap[value2]).getShortAt(a0, a3, a4) : value2; const value6 = a3 + value3; if (value2 < r18) { value7 = value6 + 12; byteLength = a0.byteLength; if (value7 > byteLength) { r11 = value6; } else { r12 = value2; r13 = value6; while (true) { value8 = readTag(a0, a1, a2, r13, a4, a5); if (value8 !== undefined) { name = value8.name; id = value8.id; value9 = value8.value; description = value8.description; object[name] = {id: id, value: value9, description: description}; name = value8.name; value10 = name === 'MakerNote'; if (value10) { r19 = value10; continue; } IFD_TYPE_PENTAX = (require(4752) /* metro dependency 4752 */).IFD_TYPE_PENTAX; value11 = a1 === IFD_TYPE_PENTAX; if (!value11) { r20 = value11; continue; } name = value8.name; value12 = name === 'LevelInfo'; r20 = value12; r19 = r20; if (r19) { name = value8.name; property = object[name]; __offset = value8.__offset; property.__offset = __offset; break; } break; } value13 = r13 + 12; value14 = typeof r12 === 'bigint' ? r12 + 1n : +r12 + 1; if (value14 < r18) { byteLength = a0.byteLength; if (value13 + 12 > byteLength) { r11 = value13; break; } r12 = value14; r13 = value13; continue; } r11 = value13; break; } } } else { r11 = value6; } if ((importDefault(4734) /* metro dependency 4734 */).USE_THUMBNAIL) { byteLength = a0.byteLength; defaultImport4 = importDefault(dependencyMap[value2]); if (r11 < byteLength - defaultImport4.getTypeSize('LONG')) { longAt = importDefault(dependencyMap[value2]).getLongAt(a0, r11, a4); if (value2 !== longAt && a1 === (require(4752) /* metro dependency 4752 */).IFD_TYPE_0TH) { object.Thumbnail = readIfd(a0, (require(4752) /* metro dependency 4752 */).IFD_TYPE_1ST, a2, a2 + longAt, a4, a5); } } } return object; } } function _fun40987(a0) { // fn#40987, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4929:1025, offset: 0x01112588, size: 31 bytes, params: 2, frame: 12 return global.decodeURIComponent(global.escape(a0)); } global.__d(_fun40984, 4751, [4748, 4752, 4734]) /* metro module 4751, dependencies: [4748, 4752, 4734] */;