/* Metro module 924; source: unknown; dependencies: [] */ function _fun9871(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#9871, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1051:6, offset: 0x00d74aba, size: 84 bytes, params: 8, frame: 17 const Object = global.Object; const defineProperty = Object.defineProperty; const Symbol = global.Symbol; Reflect.apply(defineProperty, Object, [exports, Symbol.toStringTag, {value: 'Module'}]); exports.getClientIPAddress = getClientIPAddress; exports.ipHeaderNames = ['X-Client-IP', 'X-Forwarded-For', 'Fly-Client-IP', 'CF-Connecting-IP', 'Fastly-Client-Ip', 'True-Client-Ip', 'X-Real-IP', 'X-Cluster-Client-IP', 'X-Forwarded', 'Forwarded-For', 'Forwarded', 'X-Vercel-Forwarded-For']; } function getClientIPAddress(a0) { // fn#9872, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1051:324, offset: 0x00d74b0e, size: 153 bytes, params: 2, frame: 19 var environment; var r0; var toLowerCase; var value; var property; var error; var binding; var map; var reduce; var closure; var find; const object2 = {}; const env0_0 = object2; const Object = global.Object; const iterator = Object.keys(a0)[Symbol.iterator](); const iterator2 = iterator.next; let r2 = iterator; let item2 = Reflect.apply(iterator2, r2, []); let item = item2.value; item2 = item2.done ? undefined : r2; reducibleJoin2: while (true) { if (item2 === undefined) { value = environment; binding = env0_0; map = binding.map; value = Reflect.apply(map, binding, [_fun9873]); reduce = value.reduce; closure = function(a0, a1) { var r0; var value = a0; if (a1) { value = value.concat(a1); r0 = value; } else { r0 = value; } return r0; }; value = Reflect.apply(reduce, value, [closure, []]); find = value.find; value = Reflect.apply(find, value, [_fun9876]); reducibleJoin11: while (true) { if (value) { r0 = value; break reducibleJoin11; } value = null; r0 = value; break reducibleJoin11; } return r0; } break reducibleJoin2; } reducibleLoop2: while (true) { try { toLowerCase = item.toLowerCase; } catch (error) { try { item2.return(); } catch { } throw error; } try { value = Reflect.apply(toLowerCase, item, []); } catch (error) { try { item2.return(); } catch { } throw error; } try { property = a0[item]; } catch (error) { try { item2.return(); } catch { } throw error; } try { object2[value] = property; } catch (error) { try { item2.return(); } catch { } throw error; } r2 = item2; item2 = Reflect.apply(iterator2, r2, []); item = item2.value; item2 = item2.done ? undefined : r2; if (item2 === undefined) { break reducibleLoop2; } continue reducibleLoop2; } value = env0_0.map(_fun9873); value = value.reduce(function(a0, a1) { var r0; var value = a0; if (a1) { value = value.concat(a1); r0 = value; } else { r0 = value; } return r0; }, []); value = value.find(function(a0) { return a0 !== null && RegExp('(?:^(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}$)|(?:^(?:(?:[a-fA-F\\d]{1,4}:){7}(?:[a-fA-F\\d]{1,4}|:)|(?:[a-fA-F\\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|:[a-fA-F\\d]{1,4}|:)|(?:[a-fA-F\\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,2}|:)|(?:[a-fA-F\\d]{1,4}:){4}(?:(?::[a-fA-F\\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,3}|:)|(?:[a-fA-F\\d]{1,4}:){3}(?:(?::[a-fA-F\\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,4}|:)|(?:[a-fA-F\\d]{1,4}:){2}(?:(?::[a-fA-F\\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,5}|:)|(?:[a-fA-F\\d]{1,4}:){1}(?:(?::[a-fA-F\\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,6}|:)|(?::(?:(?::[a-fA-F\\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,7}|:)))(?:%[0-9a-zA-Z]{1,})?$)', '').test(a0); }); reducibleJoin11: while (true) { if (value) { r0 = value; break reducibleJoin11; } value = null; r0 = value; break reducibleJoin11; } return r0; } function _fun9873(a0) { // fn#9873, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1051:430, offset: 0x00d74ba7, size: 219 bytes, params: 2, frame: 18 var environment; var r5; var r0; var r3; var r1; var value; var binding; var toLowerCase; var property; var Array; var isArray; var join; var split; var map; var iterator; var iterator2; var item; var item2; var startsWith; var value2; var slice; var error; exceptionSkip18: while (true) { exceptionLanding18: while (true) { value = environment; binding = env0_0; toLowerCase = a0.toLowerCase; property = binding[Reflect.apply(toLowerCase, a0, [])]; Array = global.Array; isArray = Array.isArray; if (Reflect.apply(isArray, Array, [property])) { join = property.join; r5 = Reflect.apply(join, property, [';']); } else { r5 = property; } if (a0 === 'Forwarded') { value = null; if (!r5) { r1 = value; continue; } split = r5.split; iterator = Reflect.apply(split, r5, [';'])[Symbol.iterator](); iterator2 = iterator.next; r3 = iterator; loopExit8: while (true) { item2 = Reflect.apply(iterator2, r3, []); item = item2.value; item2 = item2.done ? undefined : r3; if (item2 === undefined) { r1 = value; break loopExit8; } try { startsWith = item.startsWith; } catch (error) { break exceptionLanding18; } try { value2 = Reflect.apply(startsWith, item, ['for=']); } catch (error) { break exceptionLanding18; } if (value2) { try { slice = item.slice; } catch (error) { break exceptionLanding18; } try { value = Reflect.apply(slice, item, [4]); } catch (error) { break exceptionLanding18; } item2.return(); r1 = value; break loopExit8; } r3 = item2; continue; } r0 = r1; } else { value = undefined; if (r5 == null) { r0 = value; continue; } split = r5.split; value = Reflect.apply(split, r5, [',']); map = value.map; value = Reflect.apply(map, value, [function(a0) { return a0.trim(); }]); r0 = value; } return r0; break exceptionSkip18; } try { item2.return(); } catch { } throw error; break exceptionSkip18; } }