// Metro module 12723 (f12724). import { Buf16 } from "./Module12712"; let c8767_2 = [3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0]; let c8767_3 = [16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78]; let c8767_4 = [1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577, 0, 0]; let c8767_5 = [16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, 64, 64]; module.exports = function inflate_table(a0, a1, a2, a3, a4, a5, a6, a7) { let r48, r72, r78, r115, r132; let bits = a7.bits; const buf16 = new Buf16(16); const buf162 = new Buf16(16); let r5 = 0; while (true) { buf16[r5] = 0; r5 = r5 + 1; if (!(r5 <= 15)) { const r64 = 0 < a3; let r65 = 0; if (r64) { do { const r67 = a1[a2 + r65]; buf16[r67] = buf16[r67] + 1; r65 = r65 + 1; } while (r65 < a3); } const r70 = buf16[15]; let r71 = 15; let r18 = 15; if (r70 === 0) { do { const r8 = r71 - 1; r18 = r8; if (!(1 <= r8)) { break; } r72 = buf16[r8]; r71 = r8; r18 = r71; } while (r72 === 0); } if (bits > r18) { bits = r18; } if (r18 === 0) { const r172 = +a5; a4[r172] = 20971520; a4[+(r172 + 1)] = 20971520; a7.bits = 1; return 0; } let r0 = 1; if (1 < r18) { const r75 = buf16[1]; let r76 = 1; r0 = 1; if (r75 === 0) { do { const r77 = r76 + 1; r0 = r77; if (!(r77 < r18)) { break; } r78 = buf16[r77]; r76 = r77; r0 = r76; } while (r78 === 0); } } if (bits < r0) { bits = r0; } let r11 = 1; let r79 = 1; while (true) { const r82 = (r11 << 1) - buf16[r79]; const r12 = r79; if (r82 < 0) { return -1; } r79 = r12 + 1; r11 = r82; if (!(r79 <= 15)) { L22: { if (0 < r82) { if (a0 !== 0 && r18 === 1) { break L22; } return -1; } } buf162[1] = 0; let r85 = 1; while (true) { const r86 = r85 + 1; buf162[r86] = buf162[r85] + buf16[r85]; r85 = r86; if (!(r85 < 15)) { const r89 = 0 < a3; let r90 = 0; if (r89) { do { const r92 = a1[a2 + r90]; const r93 = r90; if (r92 !== 0) { const r39 = a1[a2 + r93]; const r96 = +buf162[r39]; buf162[r39] = r96 + 1; a6[r96] = r93; } r90 = r93 + 1; } while (r90 < a3); } let r20 = 19; let r19 = 0; let r41 = a6; let r21 = 0; let r40 = a6; if (a0 !== 0) { if (a0 === 1) { r40 = c8767_2; r41 = c8767_3; r19 = -257; r20 = 256; r21 = -257; } else { r40 = c8767_4; r41 = c8767_5; r20 = -1; r19 = 0; r21 = 0; } } L66: { const r98 = 1 << bits; const r22 = r98 - 1; const r28 = a0 === 1; if (!(r28 && 852 < r98)) { const r101 = a0 === 2; let r14 = 0; let r103 = r98; let r104 = 0; let r105 = bits; let r106 = 0; let r107 = r0; let r108 = a5; let r109 = -1; if (r101) { r14 = 0; r104 = 0; r105 = bits; r106 = 0; r107 = r0; r108 = a5; r109 = -1; r103 = r98; if (592 < r103) { break L66; } } loop36: while (true) { const r49 = r107 - r104; const r47 = a6[r106]; const r9 = r14; const r15 = r103; const r110 = r104; const r46 = r105; const r111 = r106; const r112 = r107; const r113 = r108; const r6 = r109; if (r47 < r20) { r48 = a6[r111]; r115 = 0; } else { const r26 = a6[r111] > r20; r48 = 0; r115 = 96; if (r26) { r115 = r41[r19 + a6[r111]]; r48 = r40[r21 + a6[r111]]; } } const r119 = 1 << r112 - r110; const r4 = 1 << r46; let r120 = r4; while (true) { const r121 = r113 + (r9 >> r110); const r122 = r120 - r119; a4[r121 + r122] = r49 << 24 | r115 << 16 | r48; r120 = r122; if (r120 === 0) { const r127 = 1 << r112 - 1; const r128 = r9 & r127; let r129 = r127; let r130 = r129; if (r128) { do { const r131 = r129 >> 1; r132 = r9 & r131; r129 = r131; r130 = r129; } while (r132); } const r133 = r130 !== 0 ? (r9 & r130 - 1) + r130 : 0; const r136 = r111 + 1; const r138 = buf16[r112] - 1; buf16[r112] = r138; let r139 = r112; if (r138 == 0) { if (r112 === r18) { if (r133 !== 0) { a4[r113 + r133] = 4194304 | r112 - r110 << 24; } a7.bits = bits; return 0; } r139 = a1[a2 + a6[r136]]; } r14 = r133; r103 = r15; r104 = r110; r105 = r46; r106 = r136; r107 = r139; r108 = r113; r109 = r6; if (!(r139 > bits)) { continue loop36; } const r142 = r133 & r22; r14 = r133; r103 = r15; r104 = r110; r105 = r46; r106 = r136; r107 = r139; r108 = r113; r109 = r6; if (r142 === r109) { continue loop36; } let r143 = r110; if (r143 === 0) { r143 = bits; } const r144 = r113 + r4; const r145 = r139 - r143; const r146 = 1 << r145; const r147 = r145 + r143; let r148 = r145; if (r147 < r18) { let r151 = r146 - buf16[r145 + r143]; let r152 = r145; r148 = r152; while (!(r151 <= 0)) { const r153 = r152 + 1; const r52 = r153 + r143; const r154 = r151; r148 = r153; if (!(r52 < r18)) { break; } r151 = (r154 << 1) - buf16[r153 + r143]; r152 = r153; r148 = r152; } } const r159 = r15 + (1 << r148); if (!(r28 && 852 < r159) && !(r101 && 592 < r159)) { a4[r142] = bits << 24 | r148 << 16 | r144 - a5; r14 = r133; r103 = r159; r104 = r143; r105 = r148; r106 = r136; r107 = r139; r108 = r144; r109 = r142; continue loop36; } return 1; } } } } } return 1; } } } } } } };