X-Git-Url: http://source.jalview.org/gitweb/?p=jalviewjs.git;a=blobdiff_plain;f=site%2Fj2s%2FJU%2FTree.js;h=a69bc77918bdfb8dc7552b60451a967e9b67d531;hp=a10c6ccf93a107bdd817f630ca725f1d0e72a85c;hb=b9b7a352eee79b7764c3b09c9d19663075061d8c;hpb=8ffd05b3abe52c0b6b79b011c0966361f82d5fe6 diff --git a/site/j2s/JU/Tree.js b/site/j2s/JU/Tree.js index a10c6cc..a69bc77 100644 --- a/site/j2s/JU/Tree.js +++ b/site/j2s/JU/Tree.js @@ -1,158 +1,158 @@ -Clazz.declarePackage ("JU"); -c$ = Clazz.decorateAsClass (function () { -this.dyn_tree = null; -this.max_code = 0; -this.stat_desc = null; -Clazz.instantialize (this, arguments); -}, JU, "Tree"); -c$.d_code = Clazz.defineMethod (c$, "d_code", -function (dist) { -return ((dist) < 256 ? JU.Tree._dist_code[dist] : JU.Tree._dist_code[256 + ((dist) >>> 7)]); -}, "~N"); -Clazz.defineMethod (c$, "gen_bitlen", -function (s) { -var tree = this.dyn_tree; -var stree = this.stat_desc.static_tree; -var extra = this.stat_desc.extra_bits; -var base = this.stat_desc.extra_base; -var max_length = this.stat_desc.max_length; -var h; -var n; -var m; -var bits; -var xbits; -var f; -var overflow = 0; -for (bits = 0; bits <= 15; bits++) s.bl_count[bits] = 0; - -tree[s.heap[s.heap_max] * 2 + 1] = 0; -for (h = s.heap_max + 1; h < 573; h++) { -n = s.heap[h]; -bits = tree[tree[n * 2 + 1] * 2 + 1] + 1; -if (bits > max_length) { -bits = max_length; -overflow++; -}tree[n * 2 + 1] = bits; -if (n > this.max_code) continue; -s.bl_count[bits]++; -xbits = 0; -if (n >= base) xbits = extra[n - base]; -f = tree[n * 2]; -s.opt_len += f * (bits + xbits); -if (stree != null) s.static_len += f * (stree[n * 2 + 1] + xbits); -} -if (overflow == 0) return; -do { -bits = max_length - 1; -while (s.bl_count[bits] == 0) bits--; - -s.bl_count[bits]--; -s.bl_count[bits + 1] += 2; -s.bl_count[max_length]--; -overflow -= 2; -} while (overflow > 0); -for (bits = max_length; bits != 0; bits--) { -n = s.bl_count[bits]; -while (n != 0) { -m = s.heap[--h]; -if (m > this.max_code) continue; -if (tree[m * 2 + 1] != bits) { -s.opt_len += (bits - tree[m * 2 + 1]) * tree[m * 2]; -tree[m * 2 + 1] = bits; -}n--; -} -} -}, "JU.Deflate"); -Clazz.defineMethod (c$, "build_tree", -function (s) { -var tree = this.dyn_tree; -var stree = this.stat_desc.static_tree; -var elems = this.stat_desc.elems; -var n; -var m; -var max_code = -1; -var node; -s.heap_len = 0; -s.heap_max = 573; -for (n = 0; n < elems; n++) { -if (tree[n * 2] != 0) { -s.heap[++s.heap_len] = max_code = n; -s.depth[n] = 0; -} else { -tree[n * 2 + 1] = 0; -}} -while (s.heap_len < 2) { -node = s.heap[++s.heap_len] = (max_code < 2 ? ++max_code : 0); -tree[node * 2] = 1; -s.depth[node] = 0; -s.opt_len--; -if (stree != null) s.static_len -= stree[node * 2 + 1]; -} -this.max_code = max_code; -for (n = Clazz.doubleToInt (s.heap_len / 2); n >= 1; n--) s.pqdownheap (tree, n); - -node = elems; -do { -n = s.heap[1]; -s.heap[1] = s.heap[s.heap_len--]; -s.pqdownheap (tree, 1); -m = s.heap[1]; -s.heap[--s.heap_max] = n; -s.heap[--s.heap_max] = m; -tree[node * 2] = (tree[n * 2] + tree[m * 2]); -s.depth[node] = (Math.max (s.depth[n], s.depth[m]) + 1); -tree[n * 2 + 1] = tree[m * 2 + 1] = node; -s.heap[1] = node++; -s.pqdownheap (tree, 1); -} while (s.heap_len >= 2); -s.heap[--s.heap_max] = s.heap[1]; -this.gen_bitlen (s); -JU.Tree.gen_codes (tree, max_code, s.bl_count); -}, "JU.Deflate"); -c$.gen_codes = Clazz.defineMethod (c$, "gen_codes", -function (tree, max_code, bl_count) { -var code = 0; -var bits; -var n; -JU.Tree.next_code[0] = 0; -for (bits = 1; bits <= 15; bits++) { -JU.Tree.next_code[bits] = code = ((code + bl_count[bits - 1]) << 1); -} -for (n = 0; n <= max_code; n++) { -var len = tree[n * 2 + 1]; -if (len == 0) continue; -tree[n * 2] = (JU.Tree.bi_reverse (JU.Tree.next_code[len]++, len)); -} -}, "~A,~N,~A"); -c$.bi_reverse = Clazz.defineMethod (c$, "bi_reverse", -function (code, len) { -var res = 0; -do { -res |= code & 1; -code >>>= 1; -res <<= 1; -} while (--len > 0); -return res >>> 1; -}, "~N,~N"); -Clazz.defineStatics (c$, -"MAX_BITS", 15, -"LITERALS", 256, -"LENGTH_CODES", 29, -"L_CODES", (286), -"HEAP_SIZE", (573), -"MAX_BL_BITS", 7, -"END_BLOCK", 256, -"REP_3_6", 16, -"REPZ_3_10", 17, -"REPZ_11_138", 18, -"extra_lbits", Clazz.newIntArray (-1, [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0]), -"extra_dbits", Clazz.newIntArray (-1, [0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13]), -"extra_blbits", Clazz.newIntArray (-1, [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 7]), -"bl_order", Clazz.newByteArray (-1, [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]), -"Buf_size", 16, -"DIST_CODE_LEN", 512, -"_dist_code", Clazz.newByteArray (-1, [0, 1, 2, 3, 4, 4, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 0, 0, 16, 17, 18, 18, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 22, 22, 22, 22, 22, 22, 22, 22, 23, 23, 23, 23, 23, 23, 23, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29]), -"_length_code", Clazz.newByteArray (-1, [0, 1, 2, 3, 4, 5, 6, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 12, 12, 13, 13, 13, 13, 14, 14, 14, 14, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 17, 17, 17, 17, 18, 18, 18, 18, 18, 18, 18, 18, 19, 19, 19, 19, 19, 19, 19, 19, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 28]), -"base_length", Clazz.newIntArray (-1, [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 20, 24, 28, 32, 40, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 0]), -"base_dist", Clazz.newIntArray (-1, [0, 1, 2, 3, 4, 6, 8, 12, 16, 24, 32, 48, 64, 96, 128, 192, 256, 384, 512, 768, 1024, 1536, 2048, 3072, 4096, 6144, 8192, 12288, 16384, 24576]), -"next_code", Clazz.newShortArray (16, 0)); +Clazz.declarePackage ("JU"); +c$ = Clazz.decorateAsClass (function () { +this.dyn_tree = null; +this.max_code = 0; +this.stat_desc = null; +Clazz.instantialize (this, arguments); +}, JU, "Tree"); +c$.d_code = Clazz.defineMethod (c$, "d_code", +function (dist) { +return ((dist) < 256 ? JU.Tree._dist_code[dist] : JU.Tree._dist_code[256 + ((dist) >>> 7)]); +}, "~N"); +Clazz.defineMethod (c$, "gen_bitlen", +function (s) { +var tree = this.dyn_tree; +var stree = this.stat_desc.static_tree; +var extra = this.stat_desc.extra_bits; +var base = this.stat_desc.extra_base; +var max_length = this.stat_desc.max_length; +var h; +var n; +var m; +var bits; +var xbits; +var f; +var overflow = 0; +for (bits = 0; bits <= 15; bits++) s.bl_count[bits] = 0; + +tree[s.heap[s.heap_max] * 2 + 1] = 0; +for (h = s.heap_max + 1; h < 573; h++) { +n = s.heap[h]; +bits = tree[tree[n * 2 + 1] * 2 + 1] + 1; +if (bits > max_length) { +bits = max_length; +overflow++; +}tree[n * 2 + 1] = bits; +if (n > this.max_code) continue; +s.bl_count[bits]++; +xbits = 0; +if (n >= base) xbits = extra[n - base]; +f = tree[n * 2]; +s.opt_len += f * (bits + xbits); +if (stree != null) s.static_len += f * (stree[n * 2 + 1] + xbits); +} +if (overflow == 0) return; +do { +bits = max_length - 1; +while (s.bl_count[bits] == 0) bits--; + +s.bl_count[bits]--; +s.bl_count[bits + 1] += 2; +s.bl_count[max_length]--; +overflow -= 2; +} while (overflow > 0); +for (bits = max_length; bits != 0; bits--) { +n = s.bl_count[bits]; +while (n != 0) { +m = s.heap[--h]; +if (m > this.max_code) continue; +if (tree[m * 2 + 1] != bits) { +s.opt_len += (bits - tree[m * 2 + 1]) * tree[m * 2]; +tree[m * 2 + 1] = bits; +}n--; +} +} +}, "JU.Deflate"); +Clazz.defineMethod (c$, "build_tree", +function (s) { +var tree = this.dyn_tree; +var stree = this.stat_desc.static_tree; +var elems = this.stat_desc.elems; +var n; +var m; +var max_code = -1; +var node; +s.heap_len = 0; +s.heap_max = 573; +for (n = 0; n < elems; n++) { +if (tree[n * 2] != 0) { +s.heap[++s.heap_len] = max_code = n; +s.depth[n] = 0; +} else { +tree[n * 2 + 1] = 0; +}} +while (s.heap_len < 2) { +node = s.heap[++s.heap_len] = (max_code < 2 ? ++max_code : 0); +tree[node * 2] = 1; +s.depth[node] = 0; +s.opt_len--; +if (stree != null) s.static_len -= stree[node * 2 + 1]; +} +this.max_code = max_code; +for (n = Clazz.doubleToInt (s.heap_len / 2); n >= 1; n--) s.pqdownheap (tree, n); + +node = elems; +do { +n = s.heap[1]; +s.heap[1] = s.heap[s.heap_len--]; +s.pqdownheap (tree, 1); +m = s.heap[1]; +s.heap[--s.heap_max] = n; +s.heap[--s.heap_max] = m; +tree[node * 2] = (tree[n * 2] + tree[m * 2]); +s.depth[node] = (Math.max (s.depth[n], s.depth[m]) + 1); +tree[n * 2 + 1] = tree[m * 2 + 1] = node; +s.heap[1] = node++; +s.pqdownheap (tree, 1); +} while (s.heap_len >= 2); +s.heap[--s.heap_max] = s.heap[1]; +this.gen_bitlen (s); +JU.Tree.gen_codes (tree, max_code, s.bl_count); +}, "JU.Deflate"); +c$.gen_codes = Clazz.defineMethod (c$, "gen_codes", +function (tree, max_code, bl_count) { +var code = 0; +var bits; +var n; +JU.Tree.next_code[0] = 0; +for (bits = 1; bits <= 15; bits++) { +JU.Tree.next_code[bits] = code = ((code + bl_count[bits - 1]) << 1); +} +for (n = 0; n <= max_code; n++) { +var len = tree[n * 2 + 1]; +if (len == 0) continue; +tree[n * 2] = (JU.Tree.bi_reverse (JU.Tree.next_code[len]++, len)); +} +}, "~A,~N,~A"); +c$.bi_reverse = Clazz.defineMethod (c$, "bi_reverse", +function (code, len) { +var res = 0; +do { +res |= code & 1; +code >>>= 1; +res <<= 1; +} while (--len > 0); +return res >>> 1; +}, "~N,~N"); +Clazz.defineStatics (c$, +"MAX_BITS", 15, +"LITERALS", 256, +"LENGTH_CODES", 29, +"L_CODES", (286), +"HEAP_SIZE", (573), +"MAX_BL_BITS", 7, +"END_BLOCK", 256, +"REP_3_6", 16, +"REPZ_3_10", 17, +"REPZ_11_138", 18, +"extra_lbits", Clazz.newIntArray (-1, [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0]), +"extra_dbits", Clazz.newIntArray (-1, [0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13]), +"extra_blbits", Clazz.newIntArray (-1, [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 7]), +"bl_order", Clazz.newByteArray (-1, [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]), +"Buf_size", 16, +"DIST_CODE_LEN", 512, +"_dist_code", Clazz.newByteArray (-1, [0, 1, 2, 3, 4, 4, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 0, 0, 16, 17, 18, 18, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 22, 22, 22, 22, 22, 22, 22, 22, 23, 23, 23, 23, 23, 23, 23, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29]), +"_length_code", Clazz.newByteArray (-1, [0, 1, 2, 3, 4, 5, 6, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 12, 12, 13, 13, 13, 13, 14, 14, 14, 14, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 17, 17, 17, 17, 18, 18, 18, 18, 18, 18, 18, 18, 19, 19, 19, 19, 19, 19, 19, 19, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 28]), +"base_length", Clazz.newIntArray (-1, [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 20, 24, 28, 32, 40, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 0]), +"base_dist", Clazz.newIntArray (-1, [0, 1, 2, 3, 4, 6, 8, 12, 16, 24, 32, 48, 64, 96, 128, 192, 256, 384, 512, 768, 1024, 1536, 2048, 3072, 4096, 6144, 8192, 12288, 16384, 24576]), +"next_code", Clazz.newShortArray (16, 0));