// Metro module 781 (f782). import * as _SetCache from "./SetCache"; import * as _arraySome from "./arraySome"; import * as _cacheHas from "./cacheHas"; module.exports = function equalArrays(a0, a1, a2, a3, a4, a5) { let r3, r72, length2; let c12482_0, c12482_1, c12482_2, c12482_3, c12482_5; L4: { c12482_0 = a2; c12482_1 = a3; c12482_2 = a4; c12482_3 = a5; r3 = 1 & a2; length2 = a0.length; const length = a1.length; if (length2 != length) { if (r3 && length > length2) { break L4; } return false; } } const r11 = a5.get(a0); const r36 = a5.get(a1); if (r11 && r36) { return r11 == a1 && r36 == a0; } const r15 = 2 & a2 ? new _SetCache() : void 0; let c12482_4 = r15; a5.set(a0, a1); a5.set(a1, a0); let r46 = 0; const r8 = 0 < length2; let r47 = void 0; let r48 = true; if (r8) { do { const r24 = a0[r46]; c12482_5 = r24; const r23 = a1[r46]; let r49 = r47; const r1 = r46; if (a3) { r49 = r3 ? a3(r23, r24, r1, a1, a0, a5) : a3(r24, r23, r1, a0, a1, a5); } if (r49 !== void 0) { r48 = false; if (!r49) { break; } } else if (r15) { const r70 = _arraySome(a1, function(a0, a1) { L4: { if (!_cacheHas(c12482_4, a1)) { if (c12482_5 !== a0 && !c12482_2(c12482_5, a0, c12482_0, c12482_1, c12482_3)) { break L4; } return c12482_4.push(a1); } } }); r48 = false; if (!r70) { break; } } else if (r24 !== r23) { const r64 = a4(r24, r23, a2, a3, a5); r48 = false; if (!r64) { break; } } const r71 = r1 + 1; r72 = r71 < length2; r47 = r49; r46 = r71; r48 = true; } while (r72); } a5.delete(a0); a5.delete(a1); return r48; };