You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@datasketches.apache.org by ti...@apache.org on 2026/02/06 02:21:11 UTC

(datasketches-rust) branch main updated: feat: support cpcsketch serde (#84)

This is an automated email from the ASF dual-hosted git repository.

tison pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/datasketches-rust.git


The following commit(s) were added to refs/heads/main by this push:
     new 309b134  feat: support cpcsketch serde (#84)
309b134 is described below

commit 309b1346cc0ab48fd2e14771da100fbcfc91e44a
Author: tison <wa...@gmail.com>
AuthorDate: Fri Feb 6 10:21:06 2026 +0800

    feat: support cpcsketch serde (#84)
    
    Signed-off-by: tison <wa...@gmail.com>
---
 datasketches/src/bloom/sketch.rs              |    12 +-
 datasketches/src/countmin/serialization.rs    |    11 -
 datasketches/src/countmin/sketch.rs           |     2 +-
 datasketches/src/cpc/compression.rs           |   821 ++
 datasketches/src/cpc/compression_data.rs      | 12058 ++++++++++++++++++++++++
 datasketches/src/cpc/mod.rs                   |    29 +-
 datasketches/src/cpc/pair_table.rs            |    10 +-
 datasketches/src/cpc/sketch.rs                |   251 +-
 datasketches/src/cpc/union.rs                 |    24 +-
 datasketches/src/frequencies/serialization.rs |     2 +-
 datasketches/src/frequencies/sketch.rs        |     8 +-
 datasketches/src/hash/mod.rs                  |    13 +
 datasketches/tests/cpc_serialization_test.rs  |    84 +
 13 files changed, 13264 insertions(+), 61 deletions(-)

diff --git a/datasketches/src/bloom/sketch.rs b/datasketches/src/bloom/sketch.rs
index 5589477..3759739 100644
--- a/datasketches/src/bloom/sketch.rs
+++ b/datasketches/src/bloom/sketch.rs
@@ -26,7 +26,7 @@ use crate::hash::XxHash64;
 // Serialization constants
 const PREAMBLE_LONGS_EMPTY: u8 = 3;
 const PREAMBLE_LONGS_STANDARD: u8 = 4;
-const FAMILY_ID: u8 = 21; // Bloom filter family ID
+const BLOOM_FAMILY_ID: u8 = 21; // Bloom filter family ID
 const SERIAL_VERSION: u8 = 1;
 const EMPTY_FLAG_MASK: u8 = 1 << 2;
 
@@ -369,7 +369,7 @@ impl BloomFilter {
         // Preamble
         bytes.write_u8(preamble_longs); // Byte 0
         bytes.write_u8(SERIAL_VERSION); // Byte 1
-        bytes.write_u8(FAMILY_ID); // Byte 2
+        bytes.write_u8(BLOOM_FAMILY_ID); // Byte 2
         bytes.write_u8(if is_empty { EMPTY_FLAG_MASK } else { 0 }); // Byte 3: flags
         bytes.write_u16_le(self.num_hashes); // Bytes 4-5
         bytes.write_u16_le(0); // Bytes 6-7: unused
@@ -432,8 +432,12 @@ impl BloomFilter {
             .map_err(|_| Error::insufficient_data("flags"))?;
 
         // Validate
-        if family_id != FAMILY_ID {
-            return Err(Error::invalid_family(FAMILY_ID, family_id, "BloomFilter"));
+        if family_id != BLOOM_FAMILY_ID {
+            return Err(Error::invalid_family(
+                BLOOM_FAMILY_ID,
+                family_id,
+                "BloomFilter",
+            ));
         }
         if serial_version != SERIAL_VERSION {
             return Err(Error::unsupported_serial_version(
diff --git a/datasketches/src/countmin/serialization.rs b/datasketches/src/countmin/serialization.rs
index bb6517d..7d10f59 100644
--- a/datasketches/src/countmin/serialization.rs
+++ b/datasketches/src/countmin/serialization.rs
@@ -15,19 +15,8 @@
 // specific language governing permissions and limitations
 // under the License.
 
-use std::hash::Hasher;
-
-use crate::hash::MurmurHash3X64128;
-
 pub(super) const PREAMBLE_LONGS_SHORT: u8 = 2;
 pub(super) const SERIAL_VERSION: u8 = 1;
 pub(super) const COUNTMIN_FAMILY_ID: u8 = 18;
 pub(super) const FLAGS_IS_EMPTY: u8 = 1 << 0;
 pub(super) const LONG_SIZE_BYTES: usize = 8;
-
-pub(super) fn compute_seed_hash(seed: u64) -> u16 {
-    let mut hasher = MurmurHash3X64128::with_seed(0);
-    hasher.write(&seed.to_le_bytes());
-    let (h1, _) = hasher.finish128();
-    (h1 & 0xffff) as u16
-}
diff --git a/datasketches/src/countmin/sketch.rs b/datasketches/src/countmin/sketch.rs
index e2814d1..4727699 100644
--- a/datasketches/src/countmin/sketch.rs
+++ b/datasketches/src/countmin/sketch.rs
@@ -27,10 +27,10 @@ use crate::countmin::serialization::FLAGS_IS_EMPTY;
 use crate::countmin::serialization::LONG_SIZE_BYTES;
 use crate::countmin::serialization::PREAMBLE_LONGS_SHORT;
 use crate::countmin::serialization::SERIAL_VERSION;
-use crate::countmin::serialization::compute_seed_hash;
 use crate::error::Error;
 use crate::hash::DEFAULT_UPDATE_SEED;
 use crate::hash::MurmurHash3X64128;
+use crate::hash::compute_seed_hash;
 
 const MAX_TABLE_ENTRIES: usize = 1 << 30;
 
diff --git a/datasketches/src/cpc/compression.rs b/datasketches/src/cpc/compression.rs
new file mode 100644
index 0000000..2b3a08a
--- /dev/null
+++ b/datasketches/src/cpc/compression.rs
@@ -0,0 +1,821 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+
+use std::cmp::Ordering;
+
+use crate::cpc::CpcSketch;
+use crate::cpc::Flavor;
+use crate::cpc::compression_data::COLUMN_PERMUTATIONS_FOR_DECODING;
+use crate::cpc::compression_data::COLUMN_PERMUTATIONS_FOR_ENCODING;
+use crate::cpc::compression_data::DECODING_TABLES_FOR_HIGH_ENTROPY_BYTE;
+use crate::cpc::compression_data::ENCODING_TABLES_FOR_HIGH_ENTROPY_BYTE;
+use crate::cpc::compression_data::LENGTH_LIMITED_UNARY_DECODING_TABLE65;
+use crate::cpc::compression_data::LENGTH_LIMITED_UNARY_ENCODING_TABLE65;
+use crate::cpc::determine_correct_offset;
+use crate::cpc::determine_flavor;
+use crate::cpc::pair_table::PairTable;
+use crate::cpc::pair_table::introspective_insertion_sort;
+
+#[derive(Default)]
+pub(super) struct CompressedState {
+    pub(super) table_data: Vec<u32>,
+    pub(super) table_data_words: usize,
+    // can be different from the number of entries in the sketch in hybrid mode
+    pub(super) table_num_entries: u32,
+    pub(super) window_data: Vec<u32>,
+    pub(super) window_data_words: usize,
+}
+
+impl CompressedState {
+    pub fn compress(&mut self, source: &CpcSketch) {
+        match source.flavor() {
+            Flavor::Empty => {
+                // do nothing
+            }
+            Flavor::Sparse => {
+                self.compress_sparse_flavor(source);
+                debug_assert!(self.window_data.is_empty(), "window is not expected");
+                debug_assert!(!self.table_data.is_empty(), "table is expected");
+            }
+            Flavor::Hybrid => {
+                self.compress_hybrid_flavor(source);
+                debug_assert!(self.window_data.is_empty(), "window is not expected");
+                debug_assert!(!self.table_data.is_empty(), "table is expected");
+            }
+            Flavor::Pinned => {
+                self.compress_pinned_flavor(source);
+                debug_assert!(!self.window_data.is_empty(), "window is expected");
+            }
+            Flavor::Sliding => {
+                self.compress_sliding_flavor(source);
+                debug_assert!(!self.window_data.is_empty(), "window is expected");
+            }
+        }
+    }
+
+    fn compress_sparse_flavor(&mut self, source: &CpcSketch) {
+        debug_assert!(source.sliding_window.is_empty());
+        let mut pairs = source.surprising_value_table().unwrapping_get_items();
+        introspective_insertion_sort(&mut pairs);
+        self.compress_surprising_values(&pairs, source.lg_k());
+    }
+
+    fn compress_hybrid_flavor(&mut self, source: &CpcSketch) {
+        debug_assert!(!source.sliding_window.is_empty());
+        debug_assert_eq!(source.window_offset, 0);
+
+        let k = 1 << source.lg_k();
+        let mut pairs = source.surprising_value_table().unwrapping_get_items();
+        if !pairs.is_empty() {
+            introspective_insertion_sort(&mut pairs);
+        }
+        let num_pairs_from_table = pairs.len();
+        let num_pairs_from_window = (source.num_coupons() as usize) - num_pairs_from_table;
+
+        let all_pairs_len = num_pairs_from_table + num_pairs_from_window;
+        let mut all_pairs = vec![0; all_pairs_len];
+        // tricky read pairs from sliding_window
+        {
+            // The empty space that this leaves at the beginning of the output array will be filled
+            // later.
+            let mut idx = num_pairs_from_table;
+            for row_index in 0..k {
+                let mut byte = source.sliding_window[row_index];
+                while byte != 0 {
+                    let col_index = byte.trailing_zeros();
+                    byte ^= 1 << col_index; // erase the 1
+                    all_pairs[idx] = ((row_index << 6) as u32) | col_index;
+                    idx += 1;
+                }
+            }
+            assert_eq!(idx, all_pairs_len);
+        }
+        // two-way merge of pairs_from_table and pairs_from_window into all_pairs
+        {
+            let mut final_idx = 0;
+            let mut table_idx = 0;
+            let mut window_idx = num_pairs_from_table;
+
+            while final_idx < all_pairs_len {
+                if table_idx < num_pairs_from_table
+                    && (window_idx >= all_pairs_len || pairs[table_idx] <= all_pairs[window_idx])
+                {
+                    all_pairs[final_idx] = pairs[table_idx];
+                    table_idx += 1;
+                } else {
+                    all_pairs[final_idx] = all_pairs[window_idx];
+                    window_idx += 1;
+                }
+                final_idx += 1;
+            }
+        }
+
+        self.compress_surprising_values(&all_pairs, source.lg_k());
+    }
+
+    fn compress_pinned_flavor(&mut self, source: &CpcSketch) {
+        self.compress_sliding_window(&source.sliding_window, source.lg_k(), source.num_coupons());
+        let mut pairs = source.surprising_value_table().unwrapping_get_items();
+        if !pairs.is_empty() {
+            // Here we subtract 8 from the column indices. Because they are stored in the low 6 bits
+            // of each row_col pair, and because no column index is less than 8 for a "Pinned"
+            // sketch, we can simply subtract 8 from the pairs themselves.
+
+            // shift the columns over by 8 positions before compressing (because of the window)
+            for pair in &mut pairs {
+                assert!(*pair & 63 >= 8, "pair column index is less than 8: {pair}");
+                *pair -= 8;
+            }
+
+            introspective_insertion_sort(&mut pairs);
+            self.compress_surprising_values(&pairs, source.lg_k());
+        }
+    }
+
+    // Complicated by the existence of both a left fringe and a right fringe.
+    fn compress_sliding_flavor(&mut self, source: &CpcSketch) {
+        self.compress_sliding_window(&source.sliding_window, source.lg_k(), source.num_coupons());
+        let mut pairs = source.surprising_value_table().unwrapping_get_items();
+        if !pairs.is_empty() {
+            // Here we apply a complicated transformation to the column indices, which
+            // changes the implied ordering of the pairs, so we must do it before sorting.
+
+            let pseudo_phase = determine_pseudo_phase(source.lg_k(), source.num_coupons());
+            let permutation = &COLUMN_PERMUTATIONS_FOR_ENCODING[pseudo_phase as usize];
+            let offset = source.window_offset;
+            debug_assert!(offset <= 56);
+            for pair in &mut pairs {
+                let row_col = *pair;
+                let row = row_col >> 6;
+                let mut col = (row_col & 63) as u8;
+                // first rotate the columns into a canonical configuration:
+                //  new = ((old - (offset+8)) + 64) mod 64
+                col = (col + 56 - offset) & 63;
+                debug_assert!(col < 56);
+                // then apply the permutation
+                col = permutation[col as usize];
+                *pair = (row << 6) | (col as u32);
+            }
+
+            introspective_insertion_sort(&mut pairs);
+            self.compress_surprising_values(&pairs, source.lg_k());
+        }
+    }
+
+    fn compress_surprising_values(&mut self, pairs: &[u32], lg_k: u8) {
+        let k = 1 << lg_k;
+        let num_pairs = pairs.len() as u32;
+        let num_base_bits = golomb_choose_number_of_base_bits(k + num_pairs, num_pairs as u64);
+        let table_len = safe_length_for_compressed_pair_buf(k, num_pairs, num_base_bits);
+        self.table_data.resize(table_len, 0);
+
+        let compressed_surprising_values = self.low_level_compress_pairs(pairs, num_base_bits);
+
+        // At this point we could free the unused portion of the compression output buffer,
+        // but it is not necessary if it is temporary
+        // Note: realloc caused strange timing spikes for lgK = 11 and 12.
+
+        self.table_data_words = compressed_surprising_values;
+        self.table_num_entries = num_pairs;
+    }
+
+    fn compress_sliding_window(&mut self, window: &[u8], lg_k: u8, num_coupons: u32) {
+        let k = 1 << lg_k;
+        let window_buf_len = safe_length_for_compressed_window_buf(k);
+        self.window_data.resize(window_buf_len, 0);
+        let pseudo_phase = determine_pseudo_phase(lg_k, num_coupons);
+        let data_words = self.low_level_compress_bytes(
+            window,
+            k,
+            &ENCODING_TABLES_FOR_HIGH_ENTROPY_BYTE[pseudo_phase as usize],
+        );
+
+        // At this point we could free the unused portion of the compression output buffer,
+        // but it is not necessary if it is temporary
+        // Note: realloc caused strange timing spikes for lgK = 11 and 12.
+
+        self.window_data_words = data_words;
+    }
+
+    /// Returns the number of compressed words that were actually used.
+    ///
+    /// It is the caller's responsibility to ensure that the window_data is long enough.
+    fn low_level_compress_bytes(
+        &mut self,
+        byte_array: &[u8],
+        num_bytes_to_encode: u32,
+        encoding_table: &[u16],
+    ) -> usize {
+        // bits are packed into this first, then are flushed to window_data
+        let mut bitbuf = 0;
+        // number of bits currently in bitbuf; must be between 0 and 31
+        let mut bufbits = 0;
+        let mut next_word_index = 0;
+
+        for byte_index in 0..num_bytes_to_encode {
+            let code_info = encoding_table[byte_array[byte_index as usize] as usize];
+            let code_val = (code_info & 0xfff) as u64;
+            let code_len = (code_info >> 12) as u8;
+            bitbuf |= code_val << bufbits;
+            bufbits += code_len;
+            maybe_flush_bitbuf(
+                &mut bitbuf,
+                &mut bufbits,
+                &mut self.window_data,
+                &mut next_word_index,
+            );
+        }
+
+        // Pad the bitstream with 11 zero-bits so that the decompressor's 12-bit peek can't overrun
+        // its input.
+        bufbits += 11;
+        maybe_flush_bitbuf(
+            &mut bitbuf,
+            &mut bufbits,
+            &mut self.window_data,
+            &mut next_word_index,
+        );
+
+        if bufbits > 0 {
+            // We are done encoding now, so we flush the bit buffer.
+            debug_assert!(bufbits < 32);
+            self.window_data[next_word_index] = (bitbuf & 0xffffffff) as u32;
+            next_word_index += 1;
+
+            // not really necessary unset since no more use
+            //bitbuf = 0;
+            //bufbits = 0;
+        }
+
+        next_word_index
+    }
+
+    /// Returns the number of table_data actually used.
+    ///
+    /// Here "pairs" refers to row/column pairs that specify the positions of surprising values in
+    /// the bit matrix.
+    fn low_level_compress_pairs(&mut self, pairs: &[u32], num_base_bits: u8) -> usize {
+        let mut bitbuf = 0;
+        let mut bufbits = 0;
+        let mut next_word_index = 0;
+        let golomb_lo_mask = ((1 << num_base_bits) - 1) as u64;
+        let mut predicted_row_index = 0;
+        let mut predicted_col_index = 0;
+
+        for pair_index in 0..pairs.len() {
+            let row_col = pairs[pair_index];
+            let row_index = row_col >> 6;
+            let col_index = row_col & 63;
+
+            if row_index != predicted_row_index {
+                predicted_col_index = 0;
+            }
+
+            assert!(row_index >= predicted_row_index);
+            assert!(col_index >= predicted_col_index);
+
+            let y_delta = row_index - predicted_row_index;
+            let x_delta = col_index - predicted_col_index;
+
+            predicted_row_index = row_index;
+            predicted_col_index = col_index + 1;
+
+            let code_info = LENGTH_LIMITED_UNARY_ENCODING_TABLE65[x_delta as usize];
+            let code_val = (code_info & 0xfff) as u64;
+            let code_len = (code_info >> 12) as u8;
+            bitbuf |= code_val << bufbits;
+            bufbits += code_len;
+
+            maybe_flush_bitbuf(
+                &mut bitbuf,
+                &mut bufbits,
+                &mut self.table_data,
+                &mut next_word_index,
+            );
+
+            let golomb_lo = (y_delta as u64) & golomb_lo_mask;
+            let golomb_hi = (y_delta as u64) >> num_base_bits;
+            write_unary(
+                &mut self.table_data,
+                &mut next_word_index,
+                &mut bitbuf,
+                &mut bufbits,
+                golomb_hi,
+            );
+
+            bitbuf |= golomb_lo << bufbits;
+            bufbits += num_base_bits;
+            maybe_flush_bitbuf(
+                &mut bitbuf,
+                &mut bufbits,
+                &mut self.table_data,
+                &mut next_word_index,
+            );
+        }
+
+        // Pad the bitstream so that the decompressor's 12-bit peek can't overrun its input.
+        let padding = 10u8.saturating_sub(num_base_bits);
+        bufbits += padding;
+        maybe_flush_bitbuf(
+            &mut bitbuf,
+            &mut bufbits,
+            &mut self.table_data,
+            &mut next_word_index,
+        );
+
+        if bufbits > 0 {
+            // We are done encoding now, so we flush the bit buffer
+            assert!(bufbits < 32);
+            self.table_data[next_word_index] = (bitbuf & 0xffffffff) as u32;
+            next_word_index += 1;
+
+            // not really necessary unset since no more use
+            //bitbuf = 0;
+            //bufbits = 0;
+        }
+
+        next_word_index
+    }
+}
+
+pub(super) struct UncompressedState {
+    pub(super) table: PairTable,
+    pub(super) window: Vec<u8>,
+}
+
+impl CompressedState {
+    pub fn uncompress(&self, lg_k: u8, num_coupons: u32) -> UncompressedState {
+        match determine_flavor(lg_k, num_coupons) {
+            Flavor::Empty => UncompressedState {
+                table: PairTable::new(2, lg_k + 6),
+                window: vec![],
+            },
+            Flavor::Sparse => self.uncompress_sparse_flavor(lg_k),
+            Flavor::Hybrid => self.uncompress_hybrid_flavor(lg_k),
+            Flavor::Pinned => self.uncompress_pinned_flavor(lg_k, num_coupons),
+            Flavor::Sliding => self.uncompress_sliding_flavor(lg_k, num_coupons),
+        }
+    }
+
+    fn uncompress_sparse_flavor(&self, lg_k: u8) -> UncompressedState {
+        debug_assert!(self.window_data.is_empty(), "window is not expected");
+        debug_assert!(!self.table_data.is_empty(), "table is expected");
+
+        let pairs = uncompress_surprising_values(
+            &self.table_data,
+            self.table_data_words,
+            self.table_num_entries,
+            lg_k,
+        );
+
+        UncompressedState {
+            table: PairTable::from_slots(lg_k, self.table_num_entries, pairs),
+            window: vec![],
+        }
+    }
+
+    fn uncompress_hybrid_flavor(&self, lg_k: u8) -> UncompressedState {
+        debug_assert!(self.window_data.is_empty(), "window is not expected");
+        debug_assert!(!self.table_data.is_empty(), "table is expected");
+
+        let mut pairs = uncompress_surprising_values(
+            &self.table_data,
+            self.table_data_words,
+            self.table_num_entries,
+            lg_k,
+        );
+
+        // In the hybrid flavor, some of these pairs actually belong in the window, so we will
+        // separate them out, moving the "true" pairs to the bottom of the array.
+        let k = 1 << lg_k;
+        let mut window = vec![0u8; k]; // important: zero the memory
+        let mut next_true_pair = 0;
+        for i in 0..self.table_num_entries {
+            let row_col = pairs[i as usize];
+            assert_ne!(row_col, u32::MAX);
+            let col = row_col & 63;
+            if col < 8 {
+                let row = row_col >> 6;
+                window[row as usize] |= 1 << col; // set the window bit
+            } else {
+                pairs[next_true_pair as usize] = row_col;
+                next_true_pair += 1;
+            }
+        }
+
+        UncompressedState {
+            table: PairTable::from_slots(lg_k, next_true_pair, pairs),
+            window,
+        }
+    }
+
+    fn uncompress_pinned_flavor(&self, lg_k: u8, num_coupons: u32) -> UncompressedState {
+        debug_assert!(!self.window_data.is_empty(), "window is expected");
+
+        let mut window = vec![];
+        uncompress_sliding_window(
+            &self.window_data,
+            self.window_data_words,
+            &mut window,
+            lg_k,
+            num_coupons,
+        );
+        let num_pairs = self.table_num_entries;
+        let table = if num_pairs == 0 {
+            PairTable::new(2, lg_k + 6)
+        } else {
+            debug_assert!(!self.table_data.is_empty(), "table is expected");
+            let mut pairs = uncompress_surprising_values(
+                &self.table_data,
+                self.table_data_words,
+                num_pairs,
+                lg_k,
+            );
+            // undo the compressor's 8-column shift
+            for i in 0..num_pairs {
+                let i = i as usize;
+                assert!(
+                    (pairs[i] & 63) < 56,
+                    "pair column index is invalid: {}",
+                    pairs[i]
+                );
+                pairs[i] += 8;
+            }
+            PairTable::from_slots(lg_k, num_pairs, pairs)
+        };
+        UncompressedState { table, window }
+    }
+
+    fn uncompress_sliding_flavor(&self, lg_k: u8, num_coupons: u32) -> UncompressedState {
+        debug_assert!(!self.window_data.is_empty(), "window is expected");
+
+        let mut window = vec![];
+        uncompress_sliding_window(
+            &self.window_data,
+            self.window_data_words,
+            &mut window,
+            lg_k,
+            num_coupons,
+        );
+        let num_pairs = self.table_num_entries;
+        let table = if num_pairs == 0 {
+            PairTable::new(2, lg_k + 6)
+        } else {
+            debug_assert!(!self.table_data.is_empty(), "table is expected");
+            let mut pairs = uncompress_surprising_values(
+                &self.table_data,
+                self.table_data_words,
+                num_pairs,
+                lg_k,
+            );
+            let pseudo_phase = determine_pseudo_phase(lg_k, num_coupons);
+            let permutation = &COLUMN_PERMUTATIONS_FOR_DECODING[pseudo_phase as usize];
+            let offset = determine_correct_offset(lg_k, num_coupons);
+            assert!(offset <= 56, "offset is invalid: {offset}");
+
+            for i in 0..num_pairs {
+                let i = i as usize;
+                let row_col = pairs[i];
+                let row = row_col >> 6;
+                let mut col = (row_col & 63) as u8;
+                // first undo the permutation
+                col = permutation[col as usize];
+                // then undo the rotation: old = (new + (offset+8)) mod 64
+                col = (col + (offset + 8)) & 63;
+                pairs[i] = (row << 6) | (col as u32);
+            }
+
+            PairTable::from_slots(lg_k, num_pairs, pairs)
+        };
+        UncompressedState { table, window }
+    }
+}
+
+fn uncompress_surprising_values(
+    data: &[u32],
+    data_words: usize,
+    num_pairs: u32,
+    lg_k: u8,
+) -> Vec<u32> {
+    let k = 1 << lg_k;
+    let mut pairs = vec![0; num_pairs as usize];
+    let num_base_bits = golomb_choose_number_of_base_bits(k + num_pairs, num_pairs as u64);
+    low_level_uncompress_pairs(&mut pairs, num_pairs, num_base_bits, data, data_words);
+    pairs
+}
+
+fn uncompress_sliding_window(
+    data: &[u32],
+    data_words: usize,
+    window: &mut Vec<u8>,
+    lg_k: u8,
+    num_coupons: u32,
+) {
+    let k = 1 << lg_k;
+    window.resize(k, 0);
+    let pseudo_phase = determine_pseudo_phase(lg_k, num_coupons);
+    low_level_uncompress_bytes(
+        window,
+        k as u32,
+        data,
+        data_words,
+        &DECODING_TABLES_FOR_HIGH_ENTROPY_BYTE[pseudo_phase as usize],
+    );
+}
+
+fn low_level_uncompress_pairs(
+    pairs: &mut [u32],
+    num_pairs_to_decode: u32,
+    num_base_bits: u8,
+    compressed_words: &[u32],
+    num_compressed_words: usize,
+) {
+    let mut word_index = 0;
+    let mut bitbuf = 0;
+    let mut bufbits = 0;
+    let golomb_lo_mask = (1 << num_base_bits) - 1;
+    let mut predicted_row_index = 0u32;
+    let mut predicted_col_index = 0u8;
+
+    // for each pair we need to read:
+    // x_delta (12-bit length-limited unary)
+    // y_delta_hi (unary)
+    // y_delta_lo (basebits)
+
+    for pair_index in 0..num_pairs_to_decode {
+        // ensure 12 bits in bit buffer
+        maybe_fill_bitbuf(
+            &mut bitbuf,
+            &mut bufbits,
+            compressed_words,
+            &mut word_index,
+            12,
+        );
+        let peek12 = bitbuf & 0xfff;
+        let lookup = LENGTH_LIMITED_UNARY_DECODING_TABLE65[peek12 as usize];
+        let code_word_length = (lookup >> 8) as u8;
+        let x_delta = (lookup & 0xff) as u8;
+        bitbuf >>= code_word_length;
+        bufbits -= code_word_length;
+
+        let golomb_hi = read_unary(compressed_words, &mut word_index, &mut bitbuf, &mut bufbits);
+        // ensure num_base_bits in the bit buffer
+        maybe_fill_bitbuf(
+            &mut bitbuf,
+            &mut bufbits,
+            compressed_words,
+            &mut word_index,
+            num_base_bits,
+        );
+        let golomb_lo = bitbuf & golomb_lo_mask;
+        bitbuf >>= num_base_bits;
+        bufbits -= num_base_bits;
+        let y_delta = ((golomb_hi << num_base_bits) | golomb_lo) as u32;
+
+        // Now that we have x_delta and y_delta, we can compute the pair's row and column
+        if y_delta > 0 {
+            predicted_col_index = 0;
+        }
+        let row_index = predicted_row_index + y_delta;
+        let col_index = predicted_col_index + x_delta;
+        let row_col = (row_index << 6) | (col_index as u32);
+        pairs[pair_index as usize] = row_col;
+        predicted_row_index = row_index;
+        predicted_col_index = col_index + 1;
+    }
+
+    debug_assert!(
+        word_index <= num_compressed_words,
+        "word_index: {word_index}, num_compressed_words: {num_compressed_words}",
+    );
+}
+
+fn low_level_uncompress_bytes(
+    byte_array: &mut [u8],
+    num_bytes_to_decode: u32,
+    compressed_words: &[u32],
+    num_compressed_words: usize,
+    decoding_table: &[u16],
+) {
+    let mut word_index = 0;
+    let mut bitbuf = 0;
+    let mut bufbits = 0;
+
+    for byte_index in 0..num_bytes_to_decode {
+        // ensure 12 bits in bit buffer
+        maybe_fill_bitbuf(
+            &mut bitbuf,
+            &mut bufbits,
+            compressed_words,
+            &mut word_index,
+            12,
+        );
+        // These 12 bits will include an entire Huffman codeword.
+        let peek12 = bitbuf & 0xfff;
+        let lookup = decoding_table[peek12 as usize];
+        let code_word_length = (lookup >> 8) as u8;
+        let decoded_byte = (lookup & 0xff) as u8;
+        byte_array[byte_index as usize] = decoded_byte;
+        bitbuf >>= code_word_length;
+        bufbits -= code_word_length;
+    }
+
+    // Buffer over-run should be impossible unless there is a bug.
+    debug_assert!(
+        word_index <= num_compressed_words,
+        "word_index: {word_index}, num_compressed_words: {num_compressed_words}",
+    );
+}
+
+fn determine_pseudo_phase(lg_k: u8, num_coupons: u32) -> u8 {
+    let k = 1 << lg_k;
+    // This mid-range logic produces pseudo-phases. They are used to select encoding tables.
+    // The thresholds were chosen by hand after looking at plots of measured compression.
+    if 1000 * num_coupons < 2375 * k {
+        if 4 * num_coupons < 3 * k {
+            // mid-range table
+            16
+        } else if 10 * num_coupons < 11 * k {
+            // mid-range table
+            16 + 1
+        } else if 100 * num_coupons < 132 * k {
+            // mid-range table
+            16 + 2
+        } else if 3 * num_coupons < 5 * k {
+            // mid-range table
+            16 + 3
+        } else if 1000 * num_coupons < 1965 * k {
+            // mid-range table
+            16 + 4
+        } else if 1000 * num_coupons < 2275 * k {
+            // mid-range table
+            16 + 5
+        } else {
+            // steady-state table employed before its actual phase
+            6
+        }
+    } else {
+        // This steady-state logic produces true phases. They are used to select
+        // encoding tables, and also column permutations for the "Sliding" flavor.
+        debug_assert!(lg_k >= 4);
+        let tmp = num_coupons >> (lg_k - 4);
+        (tmp & 15) as u8 // phase
+    }
+}
+
+fn write_unary(
+    compressed_words: &mut [u32],
+    next_word_index: &mut usize,
+    bitbuf: &mut u64,
+    bufbits: &mut u8,
+    value: u64,
+) {
+    assert!(*bufbits <= 31);
+
+    let mut remaining = value;
+    while remaining >= 16 {
+        remaining -= 16;
+        // Here we output 16 zeros, but we don't need to physically write them into bitbuf
+        // because it already contains zeros in that region.
+        *bufbits += 16; // Record the fact that 16 bits of output have occurred.
+        maybe_flush_bitbuf(bitbuf, bufbits, compressed_words, next_word_index);
+    }
+
+    let the_unary_code = 1 << remaining;
+    *bitbuf |= the_unary_code << *bufbits;
+    *bufbits += (remaining + 1) as u8;
+    maybe_flush_bitbuf(bitbuf, bufbits, compressed_words, next_word_index);
+}
+
+fn read_unary(
+    compressed_words: &[u32],
+    next_word_index: &mut usize,
+    bitbuf: &mut u64,
+    bufbits: &mut u8,
+) -> u64 {
+    let mut subtotal = 0u64;
+    loop {
+        // ensure 8 bits in bit buffer
+        maybe_fill_bitbuf(bitbuf, bufbits, compressed_words, next_word_index, 8);
+        // These 8 bits include either all or part of the Unary codeword
+        let peek8 = *bitbuf & 0xff;
+        let trailing_zeros = peek8.trailing_zeros() as u8;
+        if trailing_zeros < 8 {
+            *bufbits -= 1 + trailing_zeros;
+            *bitbuf >>= 1 + trailing_zeros;
+            return subtotal + trailing_zeros as u64;
+        }
+        // The codeword was partial, so read some more
+        subtotal += 8;
+        *bufbits -= 8;
+        *bitbuf >>= 8;
+    }
+}
+
+fn maybe_flush_bitbuf(
+    bitbuf: &mut u64,
+    bufbits: &mut u8,
+    word: &mut [u32],
+    word_index: &mut usize,
+) {
+    if *bufbits >= 32 {
+        word[*word_index] = (*bitbuf & 0xffffffff) as u32;
+        *word_index += 1;
+        *bitbuf >>= 32;
+        *bufbits -= 32;
+    }
+}
+
+fn maybe_fill_bitbuf(
+    bitbuf: &mut u64,
+    bufbits: &mut u8,
+    words: &[u32],
+    word_index: &mut usize,
+    minbits: u8,
+) {
+    if *bufbits < minbits {
+        *bitbuf |= (words[*word_index] as u64) << *bufbits;
+        *word_index += 1;
+        *bufbits += 32;
+    }
+}
+
+// Explanation of padding: we write
+// 1) xdelta (huffman, provides at least 1 bit, requires 12-bit lookahead)
+// 2) ydeltaGolombHi (unary, provides at least 1 bit, requires 8-bit lookahead)
+// 3) ydeltaGolombLo (straight B bits).
+// So the 12-bit lookahead is the tight constraint, but there are at least (2 + B) bits emitted,
+// so we would be safe with max (0, 10 - B) bits of padding at the end of the bitstream.
+fn safe_length_for_compressed_window_buf(k: u32) -> usize {
+    // 11 bits of padding, due to 12-bit lookahead, with 1 bit certainly present.
+    let bits = 12 * k + 11;
+    divide_longs_rounding_up(bits as usize, 32)
+}
+
+fn safe_length_for_compressed_pair_buf(k: u32, num_pairs: u32, num_base_bits: u8) -> usize {
+    // Long ybits = k + numPairs; // simpler and safer UB
+    // The following tighter UB on ybits is based on page 198
+    // of the textbook "Managing Gigabytes" by Witten, Moffat, and Bell.
+    // Notice that if numBaseBits == 0 it coincides with (k + numPairs).
+
+    let k = k as usize;
+    let num_pairs = num_pairs as usize;
+    let num_base_bits = num_base_bits as usize;
+
+    let ybits = num_pairs * (1 + num_base_bits) + (k >> num_base_bits);
+    let xbits = 12 * (num_pairs);
+    let padding = 10usize.saturating_sub(num_base_bits);
+    divide_longs_rounding_up(xbits + ybits + padding, 32)
+}
+
+fn divide_longs_rounding_up(x: usize, y: usize) -> usize {
+    debug_assert_ne!(y, 0);
+    let quotient = x / y;
+    if quotient * y == x {
+        quotient
+    } else {
+        quotient + 1
+    }
+}
+
+/// Returns an integer that is between zero and ceil(log_2(k)) - 1, inclusive.
+fn golomb_choose_number_of_base_bits(k: u32, count: u64) -> u8 {
+    debug_assert!(k > 0);
+    debug_assert!(count > 0);
+    let quotient = ((k as u64) - count) / count; // integer division
+    if quotient == 0 {
+        0
+    } else {
+        floor_log2_of_long(quotient)
+    }
+}
+
+fn floor_log2_of_long(x: u64) -> u8 {
+    debug_assert!(x > 0);
+    let mut p = 0u8;
+    let mut y = 1u64;
+    loop {
+        match u64::cmp(&y, &x) {
+            Ordering::Equal => return p,
+            Ordering::Greater => return p - 1,
+            Ordering::Less => {
+                p += 1;
+                y <<= 1;
+            }
+        }
+    }
+}
diff --git a/datasketches/src/cpc/compression_data.rs b/datasketches/src/cpc/compression_data.rs
new file mode 100644
index 0000000..3c8c464
--- /dev/null
+++ b/datasketches/src/cpc/compression_data.rs
@@ -0,0 +1,12058 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+
+/// Notice that there are only 65 symbols here, which is different from our usual 8->12 coding
+/// scheme which handles 256 symbols.
+pub(super) static LENGTH_LIMITED_UNARY_ENCODING_TABLE65: [u16; 65] = [
+    // Length-limited "unary" code with 65 symbols.
+    // entropy:    2.0
+    // avg_length: 2.0249023437500000000; max_length = 12; num_symbols = 65
+
+    //table, // (4 bits,  12 bits) symbol
+    //entry, // (length, codeword) [byte]
+    0x1000, // ( 1,    0)   0
+    0x2001, // ( 2,    1)   1
+    0x3003, // ( 3,    3)   2
+    0x4007, // ( 4,    7)   3
+    0x500f, // ( 5,   15)   4
+    0x701f, // ( 7,   31)   5
+    0x805f, // ( 8,   95)   6
+    0x80df, // ( 8,  223)   7
+    0xa03f, // (10,   63)   8
+    0xa23f, // (10,  575)   9
+    0xb13f, // (11,  319)  10
+    0xc53f, // (12, 1343)  11
+    0xcd3f, // (12, 3391)  12
+    0xc33f, // (12,  831)  13
+    0xcb3f, // (12, 2879)  14
+    0xc73f, // (12, 1855)  15
+    0xcf3f, // (12, 3903)  16
+    0xc0bf, // (12,  191)  17
+    0xc8bf, // (12, 2239)  18
+    0xc4bf, // (12, 1215)  19
+    0xccbf, // (12, 3263)  20
+    0xc2bf, // (12,  703)  21
+    0xcabf, // (12, 2751)  22
+    0xc6bf, // (12, 1727)  23
+    0xcebf, // (12, 3775)  24
+    0xc1bf, // (12,  447)  25
+    0xc9bf, // (12, 2495)  26
+    0xc5bf, // (12, 1471)  27
+    0xcdbf, // (12, 3519)  28
+    0xc3bf, // (12,  959)  29
+    0xcbbf, // (12, 3007)  30
+    0xc7bf, // (12, 1983)  31
+    0xcfbf, // (12, 4031)  32
+    0xc07f, // (12,  127)  33
+    0xc87f, // (12, 2175)  34
+    0xc47f, // (12, 1151)  35
+    0xcc7f, // (12, 3199)  36
+    0xc27f, // (12,  639)  37
+    0xca7f, // (12, 2687)  38
+    0xc67f, // (12, 1663)  39
+    0xce7f, // (12, 3711)  40
+    0xc17f, // (12,  383)  41
+    0xc97f, // (12, 2431)  42
+    0xc57f, // (12, 1407)  43
+    0xcd7f, // (12, 3455)  44
+    0xc37f, // (12,  895)  45
+    0xcb7f, // (12, 2943)  46
+    0xc77f, // (12, 1919)  47
+    0xcf7f, // (12, 3967)  48
+    0xc0ff, // (12,  255)  49
+    0xc8ff, // (12, 2303)  50
+    0xc4ff, // (12, 1279)  51
+    0xccff, // (12, 3327)  52
+    0xc2ff, // (12,  767)  53
+    0xcaff, // (12, 2815)  54
+    0xc6ff, // (12, 1791)  55
+    0xceff, // (12, 3839)  56
+    0xc1ff, // (12,  511)  57
+    0xc9ff, // (12, 2559)  58
+    0xc5ff, // (12, 1535)  59
+    0xcdff, // (12, 3583)  60
+    0xc3ff, // (12, 1023)  61
+    0xcbff, // (12, 3071)  62
+    0xc7ff, // (12, 2047)  63
+    0xcfff, // (12, 4095)  64
+];
+
+/// Reverse mapping for the length-limited unary code with 65 symbols.
+pub(super) static LENGTH_LIMITED_UNARY_DECODING_TABLE65: [u16; 4096] = [
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1797, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 2568, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 2054, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 3105, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1797, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 3089, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 2055, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 3121, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1797,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 2826, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 2054, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 3113, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 1797, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 3097, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 2055, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 3129, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 1797, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 2569,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 2054, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 3109, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 1797, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 3093, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 2055, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 3125, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 1797, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 3085, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 2054,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 3117, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 1797, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 3101, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 2055, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 3133, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1797, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 2568, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 2054, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 3107,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1797, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 3091, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 2055, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 3123, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1797, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 3083, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 2054, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 3115, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1797,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 3099, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 2055, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 3131, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 1797, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 2569, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 2054, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 3111, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 1797, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 3095,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 2055, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 3127, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 1797, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 3087, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 2054, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 3119, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 1797, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 3103, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 2055,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 3135, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 1797, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 2568, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 2054, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 3106, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1797, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 3090, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 2055, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 3122,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1797, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 2826, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 2054, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 3114, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1797, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 3098, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 2055, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 3130, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1797,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 2569, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 2054, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 3110, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 1797, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 3094, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 2055, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 3126, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 1797, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 3086,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 2054, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 3118, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 1797, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 3102, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 2055, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 3134, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 1797, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 2568, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 2054,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 3108, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 1797, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 3092, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 2055, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 3124, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1797, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 3084, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 2054, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 3116,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1797, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 3100, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 2055, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 3132, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1797, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 2569, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 2054, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 3112, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1797,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 3096, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 2055, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 3128, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 1797, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 3088, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 2054, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027,
+    256, 513, 256, 770, 256, 513, 256, 3120, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513,
+    256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770,
+    256, 513, 256, 1797, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513,
+    256, 1284, 256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 3104,
+    256, 513, 256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513,
+    256, 770, 256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 2055, 256, 513, 256, 770,
+    256, 513, 256, 1027, 256, 513, 256, 770, 256, 513, 256, 1284, 256, 513, 256, 770, 256, 513,
+    256, 1027, 256, 513, 256, 770, 256, 513, 256, 3136,
+];
+
+/// These column permutations are part of the encoding scheme for sketches where C >= 3.375 * K.
+/// In each row, we identify the (0-based) column indices of all surprising bits outside the
+/// high-entropy byte.
+///
+/// These indices are "rotated right" via the formula:
+///   new = (old - (8+shift_by) + 64) mod 64 = (old + 56 - shift_by) mod 64
+/// resulting in canonicalized indices between 0 and 55 inclusive.
+///
+/// These are then mapped through the forwards permutation specified below (and selected by the
+/// phase of C / K). Finally, the remapped indices are encoding with a unary code (with delta
+/// encoding for rows containing more than one surprising bit).
+///
+/// These permutations were created by the ocaml program "generatePermutationsForSLIDING.ml".
+pub(super) static COLUMN_PERMUTATIONS_FOR_ENCODING: [[u8; 56]; 16] = [
+    // for phase = 1 / 32
+    [
+        0, 1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
+        27, 28, 29, 30, 31, 32, 33, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
+        51, 52, 53, 54, 55, 34, 14, 4,
+    ],
+    // for phase = 3 / 32
+    [
+        0, 1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
+        27, 28, 29, 30, 31, 32, 33, 34, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
+        51, 52, 53, 54, 55, 35, 15, 4,
+    ],
+    // for phase = 5 / 32
+    [
+        0, 1, 2, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
+        27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
+        51, 52, 53, 54, 55, 37, 16, 5,
+    ],
+    // for phase = 7 / 32
+    [
+        0, 1, 2, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23, 24, 25, 26,
+        27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
+        51, 52, 53, 54, 55, 39, 17, 5,
+    ],
+    // for phase = 9 / 32
+    [
+        0, 1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26,
+        27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 42, 43, 44, 45, 46, 47, 48, 49, 50,
+        51, 52, 53, 54, 55, 41, 18, 6,
+    ],
+    // for phase = 11 / 32
+    [
+        0, 1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 20, 21, 22, 23, 24, 25, 26,
+        27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 44, 45, 46, 47, 48, 49, 50,
+        51, 52, 53, 54, 55, 43, 19, 6,
+    ],
+    // for phase = 13 / 32
+    [
+        1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 21, 22, 23, 24, 25, 26, 27,
+        28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 47, 48, 49, 50, 51,
+        52, 53, 54, 55, 45, 20, 7, 0,
+    ],
+    // for phase = 15 / 32
+    [
+        1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22, 23, 24, 25, 26, 27,
+        28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 48, 49, 50, 51,
+        52, 53, 54, 55, 47, 21, 7, 0,
+    ],
+    // for phase = 17 / 32
+    [
+        1, 2, 3, 4, 5, 6, 7, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 23, 24, 25, 26, 27,
+        28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 51,
+        52, 53, 54, 55, 50, 22, 8, 0,
+    ],
+    // for phase = 19 / 32
+    [
+        0, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 25, 26, 27,
+        28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
+        51, 53, 54, 55, 52, 23, 9, 1,
+    ],
+    // for phase = 21 / 32
+    [
+        0, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 26, 27,
+        28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
+        51, 52, 53, 54, 55, 25, 9, 1,
+    ],
+    // for phase = 23 / 32
+    [
+        0, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 27,
+        28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
+        51, 52, 53, 54, 55, 26, 10, 1,
+    ],
+    // for phase = 25 / 32
+    [
+        0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
+        28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
+        51, 52, 53, 54, 55, 27, 11, 2,
+    ],
+    // for phase = 27 / 32
+    [
+        0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
+        27, 28, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
+        51, 52, 53, 54, 55, 29, 11, 2,
+    ],
+    // for phase = 29 / 32
+    [
+        0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
+        27, 28, 29, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
+        51, 52, 53, 54, 55, 30, 12, 3,
+    ],
+    // for phase = 31 / 32
+    [
+        0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
+        27, 28, 29, 30, 31, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
+        51, 52, 53, 54, 55, 32, 13, 3,
+    ],
+];
+
+/// Reverse mapping for column permutations.
+pub(super) static COLUMN_PERMUTATIONS_FOR_DECODING: [[u8; 56]; 16] = [
+    [
+        0, 1, 2, 3, 55, 4, 5, 6, 7, 8, 9, 10, 11, 12, 54, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
+        23, 24, 25, 26, 27, 28, 29, 30, 31, 53, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
+        45, 46, 47, 48, 49, 50, 51, 52,
+    ],
+    [
+        0, 1, 2, 3, 55, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 54, 14, 15, 16, 17, 18, 19, 20, 21, 22,
+        23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 53, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
+        45, 46, 47, 48, 49, 50, 51, 52,
+    ],
+    [
+        0, 1, 2, 3, 4, 55, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 54, 15, 16, 17, 18, 19, 20, 21, 22,
+        23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 53, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
+        45, 46, 47, 48, 49, 50, 51, 52,
+    ],
+    [
+        0, 1, 2, 3, 4, 55, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 54, 16, 17, 18, 19, 20, 21, 22,
+        23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 53, 37, 38, 39, 40, 41, 42, 43, 44,
+        45, 46, 47, 48, 49, 50, 51, 52,
+    ],
+    [
+        0, 1, 2, 3, 4, 5, 55, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 54, 17, 18, 19, 20, 21, 22,
+        23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 53, 39, 40, 41, 42, 43, 44,
+        45, 46, 47, 48, 49, 50, 51, 52,
+    ],
+    [
+        0, 1, 2, 3, 4, 5, 55, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 54, 18, 19, 20, 21, 22,
+        23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 53, 41, 42, 43, 44,
+        45, 46, 47, 48, 49, 50, 51, 52,
+    ],
+    [
+        55, 0, 1, 2, 3, 4, 5, 54, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 53, 18, 19, 20, 21,
+        22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 52, 42, 43,
+        44, 45, 46, 47, 48, 49, 50, 51,
+    ],
+    [
+        55, 0, 1, 2, 3, 4, 5, 54, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 53, 19, 20, 21,
+        22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 52,
+        44, 45, 46, 47, 48, 49, 50, 51,
+    ],
+    [
+        55, 0, 1, 2, 3, 4, 5, 6, 54, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 53, 20, 21,
+        22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
+        45, 46, 52, 47, 48, 49, 50, 51,
+    ],
+    [
+        0, 55, 1, 2, 3, 4, 5, 6, 7, 54, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 53, 21,
+        22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
+        45, 46, 47, 48, 52, 49, 50, 51,
+    ],
+    [
+        0, 55, 1, 2, 3, 4, 5, 6, 7, 54, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
+        53, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
+        45, 46, 47, 48, 49, 50, 51, 52,
+    ],
+    [
+        0, 55, 1, 2, 3, 4, 5, 6, 7, 8, 54, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
+        23, 53, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
+        45, 46, 47, 48, 49, 50, 51, 52,
+    ],
+    [
+        0, 1, 55, 2, 3, 4, 5, 6, 7, 8, 9, 54, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
+        23, 24, 53, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
+        45, 46, 47, 48, 49, 50, 51, 52,
+    ],
+    [
+        0, 1, 55, 2, 3, 4, 5, 6, 7, 8, 9, 54, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
+        23, 24, 25, 26, 53, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
+        45, 46, 47, 48, 49, 50, 51, 52,
+    ],
+    [
+        0, 1, 2, 55, 3, 4, 5, 6, 7, 8, 9, 10, 54, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
+        23, 24, 25, 26, 27, 53, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
+        45, 46, 47, 48, 49, 50, 51, 52,
+    ],
+    [
+        0, 1, 2, 55, 3, 4, 5, 6, 7, 8, 9, 10, 11, 54, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
+        23, 24, 25, 26, 27, 28, 29, 53, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
+        45, 46, 47, 48, 49, 50, 51, 52,
+    ],
+];
+
+/// The 23 length-limited Huffman codes in this file were created by the ocaml program
+/// "generateHuffmanCodes.ml", which was compiled and run as follows:
+///
+/// ```shell
+/// ocamlopt -o generateHuffmanCodes columnProbabilities.ml generateHuffmanCodes.ml
+/// ./generateHuffmanCodes > raw-encoding-tables.c
+/// ```
+///
+/// Some manual cutting and pasting was then done to transfer the contents of that file into this
+/// one.
+///
+/// Only the encoding tables are defined by this file. The decoding tables (which are exact
+/// inverses) are created at library startup time.
+pub(super) static ENCODING_TABLES_FOR_HIGH_ENTROPY_BYTE: [[u16; 256]; 22] = [
+    // Sixteen Encoding Tables for the Steady State.
+
+    // (table 0 of 22) (steady 0 of 16) (phase = 0.031250000 = 1.0 / 32.0)
+    // entropy:    4.4619200780464778333
+    // avg_length: 4.5415773046232610355; max_length = 12; num_symbols = 256
+    [
+        //table, // (4 bits,  12 bits) symbol
+        //entry, // (length, codeword) [byte]
+        0x9017, // ( 9,   23)   0
+        0x5009, // ( 5,    9)   1
+        0x7033, // ( 7,   51)   2
+        0x3002, // ( 3,    2)   3
+        0x9117, // ( 9,  279)   4
+        0x5019, // ( 5,   25)   5
+        0x7073, // ( 7,  115)   6
+        0x2000, // ( 2,    0)   7
+        0xa177, // (10,  375)   8
+        0x601d, // ( 6,   29)   9
+        0x803b, // ( 8,   59)  10
+        0x4001, // ( 4,    1)  11
+        0xa377, // (10,  887)  12
+        0x5005, // ( 5,    5)  13
+        0x80bb, // ( 8,  187)  14
+        0x3006, // ( 3,    6)  15
+        0xb0cf, // (11,  207)  16
+        0x700b, // ( 7,   11)  17
+        0xa0f7, // (10,  247)  18
+        0x5015, // ( 5,   21)  19
+        0xb4cf, // (11, 1231)  20
+        0x704b, // ( 7,   75)  21
+        0x9097, // ( 9,  151)  22
+        0x500d, // ( 5,   13)  23
+        0xc4af, // (12, 1199)  24
+        0x807b, // ( 8,  123)  25
+        0xa2f7, // (10,  759)  26
+        0x603d, // ( 6,   61)  27
+        0xccaf, // (12, 3247)  28
+        0x80fb, // ( 8,  251)  29
+        0xa1f7, // (10,  503)  30
+        0x6003, // ( 6,    3)  31
+        0xc2af, // (12,  687)  32
+        0x8007, // ( 8,    7)  33
+        0xb2cf, // (11,  719)  34
+        0x6023, // ( 6,   35)  35
+        0xcaaf, // (12, 2735)  36
+        0x8087, // ( 8,  135)  37
+        0xa3f7, // (10, 1015)  38
+        0x6013, // ( 6,   19)  39
+        0xc6af, // (12, 1711)  40
+        0x9197, // ( 9,  407)  41
+        0xceaf, // (12, 3759)  42
+        0x702b, // ( 7,   43)  43
+        0xc1af, // (12,  431)  44
+        0x9057, // ( 9,   87)  45
+        0xb6cf, // (11, 1743)  46
+        0x706b, // ( 7,  107)  47
+        0xc9af, // (12, 2479)  48
+        0xa00f, // (10,   15)  49
+        0xc5af, // (12, 1455)  50
+        0x8047, // ( 8,   71)  51
+        0xcdaf, // (12, 3503)  52
+        0xa20f, // (10,  527)  53
+        0xc3af, // (12,  943)  54
+        0x80c7, // ( 8,  199)  55
+        0xcbaf, // (12, 2991)  56
+        0xb1cf, // (11,  463)  57
+        0xc7af, // (12, 1967)  58
+        0x9157, // ( 9,  343)  59
+        0xcfaf, // (12, 4015)  60
+        0xb5cf, // (11, 1487)  61
+        0xc06f, // (12,  111)  62
+        0x90d7, // ( 9,  215)  63
+        0xc86f, // (12, 2159)  64
+        0x91d7, // ( 9,  471)  65
+        0xc46f, // (12, 1135)  66
+        0x701b, // ( 7,   27)  67
+        0xcc6f, // (12, 3183)  68
+        0x9037, // ( 9,   55)  69
+        0xb3cf, // (11,  975)  70
+        0x705b, // ( 7,   91)  71
+        0xc26f, // (12,  623)  72
+        0xa10f, // (10,  271)  73
+        0xca6f, // (12, 2671)  74
+        0x8027, // ( 8,   39)  75
+        0xc66f, // (12, 1647)  76
+        0xa30f, // (10,  783)  77
+        0xce6f, // (12, 3695)  78
+        0x80a7, // ( 8,  167)  79
+        0xc16f, // (12,  367)  80
+        0xb7cf, // (11, 1999)  81
+        0xc96f, // (12, 2415)  82
+        0x9137, // ( 9,  311)  83
+        0xc56f, // (12, 1391)  84
+        0xb02f, // (11,   47)  85
+        0xcd6f, // (12, 3439)  86
+        0x90b7, // ( 9,  183)  87
+        0xc36f, // (12,  879)  88
+        0xcb6f, // (12, 2927)  89
+        0xc76f, // (12, 1903)  90
+        0xa08f, // (10,  143)  91
+        0xcf6f, // (12, 3951)  92
+        0xc0ef, // (12,  239)  93
+        0xc8ef, // (12, 2287)  94
+        0xa28f, // (10,  655)  95
+        0xc4ef, // (12, 1263)  96
+        0xccef, // (12, 3311)  97
+        0xc2ef, // (12,  751)  98
+        0xa18f, // (10,  399)  99
+        0xcaef, // (12, 2799) 100
+        0xc6ef, // (12, 1775) 101
+        0xceef, // (12, 3823) 102
+        0xa38f, // (10,  911) 103
+        0xc1ef, // (12,  495) 104
+        0xc9ef, // (12, 2543) 105
+        0xc5ef, // (12, 1519) 106
+        0xb42f, // (11, 1071) 107
+        0xcdef, // (12, 3567) 108
+        0xc3ef, // (12, 1007) 109
+        0xcbef, // (12, 3055) 110
+        0xb22f, // (11,  559) 111
+        0xc7ef, // (12, 2031) 112
+        0xcfef, // (12, 4079) 113
+        0xc01f, // (12,   31) 114
+        0xc81f, // (12, 2079) 115
+        0xc41f, // (12, 1055) 116
+        0xcc1f, // (12, 3103) 117
+        0xc21f, // (12,  543) 118
+        0xca1f, // (12, 2591) 119
+        0xc61f, // (12, 1567) 120
+        0xce1f, // (12, 3615) 121
+        0xc11f, // (12,  287) 122
+        0xc91f, // (12, 2335) 123
+        0xc51f, // (12, 1311) 124
+        0xcd1f, // (12, 3359) 125
+        0xc31f, // (12,  799) 126
+        0xcb1f, // (12, 2847) 127
+        0xc71f, // (12, 1823) 128
+        0xa04f, // (10,   79) 129
+        0xcf1f, // (12, 3871) 130
+        0x8067, // ( 8,  103) 131
+        0xc09f, // (12,  159) 132
+        0xa24f, // (10,  591) 133
+        0xc89f, // (12, 2207) 134
+        0x80e7, // ( 8,  231) 135
+        0xc49f, // (12, 1183) 136
+        0xb62f, // (11, 1583) 137
+        0xcc9f, // (12, 3231) 138
+        0x91b7, // ( 9,  439) 139
+        0xc29f, // (12,  671) 140
+        0xb12f, // (11,  303) 141
+        0xca9f, // (12, 2719) 142
+        0x9077, // ( 9,  119) 143
+        0xc69f, // (12, 1695) 144
+        0xce9f, // (12, 3743) 145
+        0xc19f, // (12,  415) 146
+        0xa14f, // (10,  335) 147
+        0xc99f, // (12, 2463) 148
+        0xc59f, // (12, 1439) 149
+        0xcd9f, // (12, 3487) 150
+        0xa34f, // (10,  847) 151
+        0xc39f, // (12,  927) 152
+        0xcb9f, // (12, 2975) 153
+        0xc79f, // (12, 1951) 154
+        0xb52f, // (11, 1327) 155
+        0xcf9f, // (12, 3999) 156
+        0xc05f, // (12,   95) 157
+        0xc85f, // (12, 2143) 158
+        0xb32f, // (11,  815) 159
+        0xc45f, // (12, 1119) 160
+        0xcc5f, // (12, 3167) 161
+        0xc25f, // (12,  607) 162
+        0xb72f, // (11, 1839) 163
+        0xca5f, // (12, 2655) 164
+        0xc65f, // (12, 1631) 165
+        0xce5f, // (12, 3679) 166
+        0xb0af, // (11,  175) 167
+        0xc15f, // (12,  351) 168
+        0xc95f, // (12, 2399) 169
+        0xc55f, // (12, 1375) 170
+        0xcd5f, // (12, 3423) 171
+        0xc35f, // (12,  863) 172
+        0xcb5f, // (12, 2911) 173
+        0xc75f, // (12, 1887) 174
+        0xcf5f, // (12, 3935) 175
+        0xc0df, // (12,  223) 176
+        0xc8df, // (12, 2271) 177
+        0xc4df, // (12, 1247) 178
+        0xccdf, // (12, 3295) 179
+        0xc2df, // (12,  735) 180
+        0xcadf, // (12, 2783) 181
+        0xc6df, // (12, 1759) 182
+        0xcedf, // (12, 3807) 183
+        0xc1df, // (12,  479) 184
+        0xc9df, // (12, 2527) 185
+        0xc5df, // (12, 1503) 186
+        0xcddf, // (12, 3551) 187
+        0xc3df, // (12,  991) 188
+        0xcbdf, // (12, 3039) 189
+        0xc7df, // (12, 2015) 190
+        0xcfdf, // (12, 4063) 191
+        0xc03f, // (12,   63) 192
+        0xc83f, // (12, 2111) 193
+        0xc43f, // (12, 1087) 194
+        0xcc3f, // (12, 3135) 195
+        0xc23f, // (12,  575) 196
+        0xca3f, // (12, 2623) 197
+        0xc63f, // (12, 1599) 198
+        0xce3f, // (12, 3647) 199
+        0xc13f, // (12,  319) 200
+        0xc93f, // (12, 2367) 201
+        0xc53f, // (12, 1343) 202
+        0xcd3f, // (12, 3391) 203
+        0xc33f, // (12,  831) 204
+        0xcb3f, // (12, 2879) 205
+        0xc73f, // (12, 1855) 206
+        0xcf3f, // (12, 3903) 207
+        0xc0bf, // (12,  191) 208
+        0xc8bf, // (12, 2239) 209
+        0xc4bf, // (12, 1215) 210
+        0xccbf, // (12, 3263) 211
+        0xc2bf, // (12,  703) 212
+        0xcabf, // (12, 2751) 213
+        0xc6bf, // (12, 1727) 214
+        0xcebf, // (12, 3775) 215
+        0xc1bf, // (12,  447) 216
+        0xc9bf, // (12, 2495) 217
+        0xc5bf, // (12, 1471) 218
+        0xcdbf, // (12, 3519) 219
+        0xc3bf, // (12,  959) 220
+        0xcbbf, // (12, 3007) 221
+        0xc7bf, // (12, 1983) 222
+        0xcfbf, // (12, 4031) 223
+        0xc07f, // (12,  127) 224
+        0xc87f, // (12, 2175) 225
+        0xc47f, // (12, 1151) 226
+        0xcc7f, // (12, 3199) 227
+        0xc27f, // (12,  639) 228
+        0xca7f, // (12, 2687) 229
+        0xc67f, // (12, 1663) 230
+        0xce7f, // (12, 3711) 231
+        0xc17f, // (12,  383) 232
+        0xc97f, // (12, 2431) 233
+        0xc57f, // (12, 1407) 234
+        0xcd7f, // (12, 3455) 235
+        0xc37f, // (12,  895) 236
+        0xcb7f, // (12, 2943) 237
+        0xc77f, // (12, 1919) 238
+        0xcf7f, // (12, 3967) 239
+        0xc0ff, // (12,  255) 240
+        0xc8ff, // (12, 2303) 241
+        0xc4ff, // (12, 1279) 242
+        0xccff, // (12, 3327) 243
+        0xc2ff, // (12,  767) 244
+        0xcaff, // (12, 2815) 245
+        0xc6ff, // (12, 1791) 246
+        0xceff, // (12, 3839) 247
+        0xc1ff, // (12,  511) 248
+        0xc9ff, // (12, 2559) 249
+        0xc5ff, // (12, 1535) 250
+        0xcdff, // (12, 3583) 251
+        0xc3ff, // (12, 1023) 252
+        0xcbff, // (12, 3071) 253
+        0xc7ff, // (12, 2047) 254
+        0xcfff, // (12, 4095) 255
+    ],
+    // (table 1 of 22) (steady 1 of 16) (phase = 0.093750000 = 3.0 / 32.0)
+    // entropy:    4.4574755684414029133
+    // avg_length: 4.5336306265208552446; max_length = 12; num_symbols = 256
+    [
+        //table, // (4 bits,  12 bits) symbol
+        //entry, // (length, codeword) [byte]
+        0xa177, // (10,  375)   0
+        0x5009, // ( 5,    9)   1
+        0x803b, // ( 8,   59)   2
+        0x3002, // ( 3,    2)   3
+        0x9017, // ( 9,   23)   4
+        0x5019, // ( 5,   25)   5
+        0x700b, // ( 7,   11)   6
+        0x2000, // ( 2,    0)   7
+        0xb34f, // (11,  847)   8
+        0x601d, // ( 6,   29)   9
+        0x9117, // ( 9,  279)  10
+        0x4001, // ( 4,    1)  11
+        0xa377, // (10,  887)  12
+        0x603d, // ( 6,   61)  13
+        0x80bb, // ( 8,  187)  14
+        0x3006, // ( 3,    6)  15
+        0xc4af, // (12, 1199)  16
+        0x704b, // ( 7,   75)  17
+        0xa0f7, // (10,  247)  18
+        0x5005, // ( 5,    5)  19
+        0xb74f, // (11, 1871)  20
+        0x702b, // ( 7,   43)  21
+        0x9097, // ( 9,  151)  22
+        0x5015, // ( 5,   21)  23
+        0xccaf, // (12, 3247)  24
+        0x807b, // ( 8,  123)  25
+        0xb0cf, // (11,  207)  26
+        0x6003, // ( 6,    3)  27
+        0xc2af, // (12,  687)  28
+        0x80fb, // ( 8,  251)  29
+        0xa2f7, // (10,  759)  30
+        0x500d, // ( 5,   13)  31
+        0xcaaf, // (12, 2735)  32
+        0x8007, // ( 8,    7)  33
+        0xb4cf, // (11, 1231)  34
+        0x6023, // ( 6,   35)  35
+        0xc6af, // (12, 1711)  36
+        0x8087, // ( 8,  135)  37
+        0xa1f7, // (10,  503)  38
+        0x6013, // ( 6,   19)  39
+        0xceaf, // (12, 3759)  40
+        0x9197, // ( 9,  407)  41
+        0xc1af, // (12,  431)  42
+        0x706b, // ( 7,  107)  43
+        0xc9af, // (12, 2479)  44
+        0x9057, // ( 9,   87)  45
+        0xb2cf, // (11,  719)  46
+        0x6033, // ( 6,   51)  47
+        0xc5af, // (12, 1455)  48
+        0xa3f7, // (10, 1015)  49
+        0xcdaf, // (12, 3503)  50
+        0x8047, // ( 8,   71)  51
+        0xc3af, // (12,  943)  52
+        0xa00f, // (10,   15)  53
+        0xcbaf, // (12, 2991)  54
+        0x80c7, // ( 8,  199)  55
+        0xc7af, // (12, 1967)  56
+        0xb6cf, // (11, 1743)  57
+        0xcfaf, // (12, 4015)  58
+        0x9157, // ( 9,  343)  59
+        0xc06f, // (12,  111)  60
+        0xb1cf, // (11,  463)  61
+        0xc86f, // (12, 2159)  62
+        0x90d7, // ( 9,  215)  63
+        0xc46f, // (12, 1135)  64
+        0x91d7, // ( 9,  471)  65
+        0xcc6f, // (12, 3183)  66
+        0x701b, // ( 7,   27)  67
+        0xc26f, // (12,  623)  68
+        0x9037, // ( 9,   55)  69
+        0xb5cf, // (11, 1487)  70
+        0x705b, // ( 7,   91)  71
+        0xca6f, // (12, 2671)  72
+        0xa20f, // (10,  527)  73
+        0xc66f, // (12, 1647)  74
+        0x8027, // ( 8,   39)  75
+        0xce6f, // (12, 3695)  76
+        0xa10f, // (10,  271)  77
+        0xc16f, // (12,  367)  78
+        0x80a7, // ( 8,  167)  79
+        0xc96f, // (12, 2415)  80
+        0xb3cf, // (11,  975)  81
+        0xc56f, // (12, 1391)  82
+        0x9137, // ( 9,  311)  83
+        0xcd6f, // (12, 3439)  84
+        0xb7cf, // (11, 1999)  85
+        0xc36f, // (12,  879)  86
+        0x90b7, // ( 9,  183)  87
+        0xcb6f, // (12, 2927)  88
+        0xc76f, // (12, 1903)  89
+        0xcf6f, // (12, 3951)  90
+        0xa30f, // (10,  783)  91
+        0xc0ef, // (12,  239)  92
+        0xc8ef, // (12, 2287)  93
+        0xc4ef, // (12, 1263)  94
+        0xa08f, // (10,  143)  95
+        0xccef, // (12, 3311)  96
+        0xc2ef, // (12,  751)  97
+        0xcaef, // (12, 2799)  98
+        0xa28f, // (10,  655)  99
+        0xc6ef, // (12, 1775) 100
+        0xceef, // (12, 3823) 101
+        0xc1ef, // (12,  495) 102
+        0xa18f, // (10,  399) 103
+        0xc9ef, // (12, 2543) 104
+        0xc5ef, // (12, 1519) 105
+        0xcdef, // (12, 3567) 106
+        0xb02f, // (11,   47) 107
+        0xc3ef, // (12, 1007) 108
+        0xcbef, // (12, 3055) 109
+        0xc7ef, // (12, 2031) 110
+        0xb42f, // (11, 1071) 111
+        0xcfef, // (12, 4079) 112
+        0xc01f, // (12,   31) 113
+        0xc81f, // (12, 2079) 114
+        0xc41f, // (12, 1055) 115
+        0xcc1f, // (12, 3103) 116
+        0xc21f, // (12,  543) 117
+        0xca1f, // (12, 2591) 118
+        0xc61f, // (12, 1567) 119
+        0xce1f, // (12, 3615) 120
+        0xc11f, // (12,  287) 121
+        0xc91f, // (12, 2335) 122
+        0xc51f, // (12, 1311) 123
+        0xcd1f, // (12, 3359) 124
+        0xc31f, // (12,  799) 125
+        0xcb1f, // (12, 2847) 126
+        0xc71f, // (12, 1823) 127
+        0xcf1f, // (12, 3871) 128
+        0xa38f, // (10,  911) 129
+        0xc09f, // (12,  159) 130
+        0x8067, // ( 8,  103) 131
+        0xc89f, // (12, 2207) 132
+        0xa04f, // (10,   79) 133
+        0xc49f, // (12, 1183) 134
+        0x80e7, // ( 8,  231) 135
+        0xcc9f, // (12, 3231) 136
+        0xb22f, // (11,  559) 137
+        0xc29f, // (12,  671) 138
+        0x91b7, // ( 9,  439) 139
+        0xca9f, // (12, 2719) 140
+        0xb62f, // (11, 1583) 141
+        0xc69f, // (12, 1695) 142
+        0x9077, // ( 9,  119) 143
+        0xce9f, // (12, 3743) 144
+        0xc19f, // (12,  415) 145
+        0xc99f, // (12, 2463) 146
+        0xa24f, // (10,  591) 147
+        0xc59f, // (12, 1439) 148
+        0xcd9f, // (12, 3487) 149
+        0xc39f, // (12,  927) 150
+        0xa14f, // (10,  335) 151
+        0xcb9f, // (12, 2975) 152
+        0xc79f, // (12, 1951) 153
+        0xcf9f, // (12, 3999) 154
+        0xb12f, // (11,  303) 155
+        0xc05f, // (12,   95) 156
+        0xc85f, // (12, 2143) 157
+        0xc45f, // (12, 1119) 158
+        0xb52f, // (11, 1327) 159
+        0xcc5f, // (12, 3167) 160
+        0xc25f, // (12,  607) 161
+        0xca5f, // (12, 2655) 162
+        0xb32f, // (11,  815) 163
+        0xc65f, // (12, 1631) 164
+        0xce5f, // (12, 3679) 165
+        0xc15f, // (12,  351) 166
+        0xb72f, // (11, 1839) 167
+        0xc95f, // (12, 2399) 168
+        0xc55f, // (12, 1375) 169
+        0xcd5f, // (12, 3423) 170
+        0xc35f, // (12,  863) 171
+        0xcb5f, // (12, 2911) 172
+        0xc75f, // (12, 1887) 173
+        0xcf5f, // (12, 3935) 174
+        0xb0af, // (11,  175) 175
+        0xc0df, // (12,  223) 176
+        0xc8df, // (12, 2271) 177
+        0xc4df, // (12, 1247) 178
+        0xccdf, // (12, 3295) 179
+        0xc2df, // (12,  735) 180
+        0xcadf, // (12, 2783) 181
+        0xc6df, // (12, 1759) 182
+        0xcedf, // (12, 3807) 183
+        0xc1df, // (12,  479) 184
+        0xc9df, // (12, 2527) 185
+        0xc5df, // (12, 1503) 186
+        0xcddf, // (12, 3551) 187
+        0xc3df, // (12,  991) 188
+        0xcbdf, // (12, 3039) 189
+        0xc7df, // (12, 2015) 190
+        0xcfdf, // (12, 4063) 191
+        0xc03f, // (12,   63) 192
+        0xc83f, // (12, 2111) 193
+        0xc43f, // (12, 1087) 194
+        0xcc3f, // (12, 3135) 195
+        0xc23f, // (12,  575) 196
+        0xca3f, // (12, 2623) 197
+        0xc63f, // (12, 1599) 198
+        0xce3f, // (12, 3647) 199
+        0xc13f, // (12,  319) 200
+        0xc93f, // (12, 2367) 201
+        0xc53f, // (12, 1343) 202
+        0xcd3f, // (12, 3391) 203
+        0xc33f, // (12,  831) 204
+        0xcb3f, // (12, 2879) 205
+        0xc73f, // (12, 1855) 206
+        0xcf3f, // (12, 3903) 207
+        0xc0bf, // (12,  191) 208
+        0xc8bf, // (12, 2239) 209
+        0xc4bf, // (12, 1215) 210
+        0xccbf, // (12, 3263) 211
+        0xc2bf, // (12,  703) 212
+        0xcabf, // (12, 2751) 213
+        0xc6bf, // (12, 1727) 214
+        0xcebf, // (12, 3775) 215
+        0xc1bf, // (12,  447) 216
+        0xc9bf, // (12, 2495) 217
+        0xc5bf, // (12, 1471) 218
+        0xcdbf, // (12, 3519) 219
+        0xc3bf, // (12,  959) 220
+        0xcbbf, // (12, 3007) 221
+        0xc7bf, // (12, 1983) 222
+        0xcfbf, // (12, 4031) 223
+        0xc07f, // (12,  127) 224
+        0xc87f, // (12, 2175) 225
+        0xc47f, // (12, 1151) 226
+        0xcc7f, // (12, 3199) 227
+        0xc27f, // (12,  639) 228
+        0xca7f, // (12, 2687) 229
+        0xc67f, // (12, 1663) 230
+        0xce7f, // (12, 3711) 231
+        0xc17f, // (12,  383) 232
+        0xc97f, // (12, 2431) 233
+        0xc57f, // (12, 1407) 234
+        0xcd7f, // (12, 3455) 235
+        0xc37f, // (12,  895) 236
+        0xcb7f, // (12, 2943) 237
+        0xc77f, // (12, 1919) 238
+        0xcf7f, // (12, 3967) 239
+        0xc0ff, // (12,  255) 240
+        0xc8ff, // (12, 2303) 241
+        0xc4ff, // (12, 1279) 242
+        0xccff, // (12, 3327) 243
+        0xc2ff, // (12,  767) 244
+        0xcaff, // (12, 2815) 245
+        0xc6ff, // (12, 1791) 246
+        0xceff, // (12, 3839) 247
+        0xc1ff, // (12,  511) 248
+        0xc9ff, // (12, 2559) 249
+        0xc5ff, // (12, 1535) 250
+        0xcdff, // (12, 3583) 251
+        0xc3ff, // (12, 1023) 252
+        0xcbff, // (12, 3071) 253
+        0xc7ff, // (12, 2047) 254
+        0xcfff, // (12, 4095) 255
+    ],
+    // (table 2 of 22) (steady 2 of 16) (phase = 0.156250000 = 5.0 / 32.0)
+    // entropy:    4.4520619712441886762
+    // avg_length: 4.5253989110544479146; max_length = 12; num_symbols = 256
+    [
+        //table, // (4 bits,  12 bits) symbol
+        //entry, // (length, codeword) [byte]
+        0xa177, // (10,  375)   0
+        0x5009, // ( 5,    9)   1
+        0x803b, // ( 8,   59)   2
+        0x3002, // ( 3,    2)   3
+        0xa377, // (10,  887)   4
+        0x5019, // ( 5,   25)   5
+        0x80bb, // ( 8,  187)   6
+        0x2000, // ( 2,    0)   7
+        0xb34f, // (11,  847)   8
+        0x601d, // ( 6,   29)   9
+        0x9057, // ( 9,   87)  10
+        0x4001, // ( 4,    1)  11
+        0xb74f, // (11, 1871)  12
+        0x603d, // ( 6,   61)  13
+        0x807b, // ( 8,  123)  14
+        0x3006, // ( 3,    6)  15
+        0xc72f, // (12, 1839)  16
+        0x700b, // ( 7,   11)  17
+        0xa0f7, // (10,  247)  18
+        0x5005, // ( 5,    5)  19
+        0xcf2f, // (12, 3887)  20
+        0x704b, // ( 7,   75)  21
+        0xa2f7, // (10,  759)  22
+        0x5015, // ( 5,   21)  23
+        0xc0af, // (12,  175)  24
+        0x80fb, // ( 8,  251)  25
+        0xb0cf, // (11,  207)  26
+        0x6003, // ( 6,    3)  27
+        0xc8af, // (12, 2223)  28
+        0x8007, // ( 8,    7)  29
+        0xa1f7, // (10,  503)  30
+        0x500d, // ( 5,   13)  31
+        0xc4af, // (12, 1199)  32
+        0x8087, // ( 8,  135)  33
+        0xb4cf, // (11, 1231)  34
+        0x6023, // ( 6,   35)  35
+        0xccaf, // (12, 3247)  36
+        0x8047, // ( 8,   71)  37
+        0xb2cf, // (11,  719)  38
+        0x6013, // ( 6,   19)  39
+        0xc2af, // (12,  687)  40
+        0x9157, // ( 9,  343)  41
+        0xcaaf, // (12, 2735)  42
+        0x702b, // ( 7,   43)  43
+        0xc6af, // (12, 1711)  44
+        0x90d7, // ( 9,  215)  45
+        0xceaf, // (12, 3759)  46
+        0x6033, // ( 6,   51)  47
+        0xc1af, // (12,  431)  48
+        0xa3f7, // (10, 1015)  49
+        0xc9af, // (12, 2479)  50
+        0x80c7, // ( 8,  199)  51
+        0xc5af, // (12, 1455)  52
+        0xa00f, // (10,   15)  53
+        0xcdaf, // (12, 3503)  54
+        0x8027, // ( 8,   39)  55
+        0xc3af, // (12,  943)  56
+        0xb6cf, // (11, 1743)  57
+        0xcbaf, // (12, 2991)  58
+        0x91d7, // ( 9,  471)  59
+        0xc7af, // (12, 1967)  60
+        0xb1cf, // (11,  463)  61
+        0xcfaf, // (12, 4015)  62
+        0x80a7, // ( 8,  167)  63
+        0xc06f, // (12,  111)  64
+        0x9037, // ( 9,   55)  65
+        0xc86f, // (12, 2159)  66
+        0x706b, // ( 7,  107)  67
+        0xc46f, // (12, 1135)  68
+        0x9137, // ( 9,  311)  69
+        0xcc6f, // (12, 3183)  70
+        0x701b, // ( 7,   27)  71
+        0xc26f, // (12,  623)  72
+        0xa20f, // (10,  527)  73
+        0xca6f, // (12, 2671)  74
+        0x8067, // ( 8,  103)  75
+        0xc66f, // (12, 1647)  76
+        0xa10f, // (10,  271)  77
+        0xce6f, // (12, 3695)  78
+        0x705b, // ( 7,   91)  79
+        0xc16f, // (12,  367)  80
+        0xb5cf, // (11, 1487)  81
+        0xc96f, // (12, 2415)  82
+        0x90b7, // ( 9,  183)  83
+        0xc56f, // (12, 1391)  84
+        0xb3cf, // (11,  975)  85
+        0xcd6f, // (12, 3439)  86
+        0x91b7, // ( 9,  439)  87
+        0xc36f, // (12,  879)  88
+        0xcb6f, // (12, 2927)  89
+        0xc76f, // (12, 1903)  90
+        0xa30f, // (10,  783)  91
+        0xcf6f, // (12, 3951)  92
+        0xc0ef, // (12,  239)  93
+        0xc8ef, // (12, 2287)  94
+        0xa08f, // (10,  143)  95
+        0xc4ef, // (12, 1263)  96
+        0xccef, // (12, 3311)  97
+        0xc2ef, // (12,  751)  98
+        0xa28f, // (10,  655)  99
+        0xcaef, // (12, 2799) 100
+        0xc6ef, // (12, 1775) 101
+        0xceef, // (12, 3823) 102
+        0xa18f, // (10,  399) 103
+        0xc1ef, // (12,  495) 104
+        0xc9ef, // (12, 2543) 105
+        0xc5ef, // (12, 1519) 106
+        0xb7cf, // (11, 1999) 107
+        0xcdef, // (12, 3567) 108
+        0xc3ef, // (12, 1007) 109
+        0xcbef, // (12, 3055) 110
+        0xb02f, // (11,   47) 111
+        0xc7ef, // (12, 2031) 112
+        0xcfef, // (12, 4079) 113
+        0xc01f, // (12,   31) 114
+        0xc81f, // (12, 2079) 115
+        0xc41f, // (12, 1055) 116
+        0xcc1f, // (12, 3103) 117
+        0xc21f, // (12,  543) 118
+        0xca1f, // (12, 2591) 119
+        0xc61f, // (12, 1567) 120
+        0xce1f, // (12, 3615) 121
+        0xc11f, // (12,  287) 122
+        0xc91f, // (12, 2335) 123
+        0xc51f, // (12, 1311) 124
+        0xcd1f, // (12, 3359) 125
+        0xc31f, // (12,  799) 126
+        0xcb1f, // (12, 2847) 127
+        0xc71f, // (12, 1823) 128
+        0xa38f, // (10,  911) 129
+        0xcf1f, // (12, 3871) 130
+        0x80e7, // ( 8,  231) 131
+        0xc09f, // (12,  159) 132
+        0xa04f, // (10,   79) 133
+        0xc89f, // (12, 2207) 134
+        0x8017, // ( 8,   23) 135
+        0xc49f, // (12, 1183) 136
+        0xb42f, // (11, 1071) 137
+        0xcc9f, // (12, 3231) 138
+        0x9077, // ( 9,  119) 139
+        0xc29f, // (12,  671) 140
+        0xb22f, // (11,  559) 141
+        0xca9f, // (12, 2719) 142
+        0x8097, // ( 8,  151) 143
+        0xc69f, // (12, 1695) 144
+        0xce9f, // (12, 3743) 145
+        0xc19f, // (12,  415) 146
+        0xa24f, // (10,  591) 147
+        0xc99f, // (12, 2463) 148
+        0xc59f, // (12, 1439) 149
+        0xcd9f, // (12, 3487) 150
+        0xa14f, // (10,  335) 151
+        0xc39f, // (12,  927) 152
+        0xcb9f, // (12, 2975) 153
+        0xc79f, // (12, 1951) 154
+        0xb62f, // (11, 1583) 155
+        0xcf9f, // (12, 3999) 156
+        0xc05f, // (12,   95) 157
+        0xc85f, // (12, 2143) 158
+        0xb12f, // (11,  303) 159
+        0xc45f, // (12, 1119) 160
+        0xcc5f, // (12, 3167) 161
+        0xc25f, // (12,  607) 162
+        0xb52f, // (11, 1327) 163
+        0xca5f, // (12, 2655) 164
+        0xc65f, // (12, 1631) 165
+        0xce5f, // (12, 3679) 166
+        0xb32f, // (11,  815) 167
+        0xc15f, // (12,  351) 168
+        0xc95f, // (12, 2399) 169
+        0xc55f, // (12, 1375) 170
+        0xcd5f, // (12, 3423) 171
+        0xc35f, // (12,  863) 172
+        0xcb5f, // (12, 2911) 173
+        0xc75f, // (12, 1887) 174
+        0xcf5f, // (12, 3935) 175
+        0xc0df, // (12,  223) 176
+        0xc8df, // (12, 2271) 177
+        0xc4df, // (12, 1247) 178
+        0xccdf, // (12, 3295) 179
+        0xc2df, // (12,  735) 180
+        0xcadf, // (12, 2783) 181
+        0xc6df, // (12, 1759) 182
+        0xcedf, // (12, 3807) 183
+        0xc1df, // (12,  479) 184
+        0xc9df, // (12, 2527) 185
+        0xc5df, // (12, 1503) 186
+        0xcddf, // (12, 3551) 187
+        0xc3df, // (12,  991) 188
+        0xcbdf, // (12, 3039) 189
+        0xc7df, // (12, 2015) 190
+        0xcfdf, // (12, 4063) 191
+        0xc03f, // (12,   63) 192
+        0xc83f, // (12, 2111) 193
+        0xc43f, // (12, 1087) 194
+        0xcc3f, // (12, 3135) 195
+        0xc23f, // (12,  575) 196
+        0xca3f, // (12, 2623) 197
+        0xc63f, // (12, 1599) 198
+        0xce3f, // (12, 3647) 199
+        0xc13f, // (12,  319) 200
+        0xc93f, // (12, 2367) 201
+        0xc53f, // (12, 1343) 202
+        0xcd3f, // (12, 3391) 203
+        0xc33f, // (12,  831) 204
+        0xcb3f, // (12, 2879) 205
+        0xc73f, // (12, 1855) 206
+        0xcf3f, // (12, 3903) 207
+        0xc0bf, // (12,  191) 208
+        0xc8bf, // (12, 2239) 209
+        0xc4bf, // (12, 1215) 210
+        0xccbf, // (12, 3263) 211
+        0xc2bf, // (12,  703) 212
+        0xcabf, // (12, 2751) 213
+        0xc6bf, // (12, 1727) 214
+        0xcebf, // (12, 3775) 215
+        0xc1bf, // (12,  447) 216
+        0xc9bf, // (12, 2495) 217
+        0xc5bf, // (12, 1471) 218
+        0xcdbf, // (12, 3519) 219
+        0xc3bf, // (12,  959) 220
+        0xcbbf, // (12, 3007) 221
+        0xc7bf, // (12, 1983) 222
+        0xcfbf, // (12, 4031) 223
+        0xc07f, // (12,  127) 224
+        0xc87f, // (12, 2175) 225
+        0xc47f, // (12, 1151) 226
+        0xcc7f, // (12, 3199) 227
+        0xc27f, // (12,  639) 228
+        0xca7f, // (12, 2687) 229
+        0xc67f, // (12, 1663) 230
+        0xce7f, // (12, 3711) 231
+        0xc17f, // (12,  383) 232
+        0xc97f, // (12, 2431) 233
+        0xc57f, // (12, 1407) 234
+        0xcd7f, // (12, 3455) 235
+        0xc37f, // (12,  895) 236
+        0xcb7f, // (12, 2943) 237
+        0xc77f, // (12, 1919) 238
+        0xcf7f, // (12, 3967) 239
+        0xc0ff, // (12,  255) 240
+        0xc8ff, // (12, 2303) 241
+        0xc4ff, // (12, 1279) 242
+        0xccff, // (12, 3327) 243
+        0xc2ff, // (12,  767) 244
+        0xcaff, // (12, 2815) 245
+        0xc6ff, // (12, 1791) 246
+        0xceff, // (12, 3839) 247
+        0xc1ff, // (12,  511) 248
+        0xc9ff, // (12, 2559) 249
+        0xc5ff, // (12, 1535) 250
+        0xcdff, // (12, 3583) 251
+        0xc3ff, // (12, 1023) 252
+        0xcbff, // (12, 3071) 253
+        0xc7ff, // (12, 2047) 254
+        0xcfff, // (12, 4095) 255
+    ],
+    // (table 3 of 22) (steady 3 of 16) (phase = 0.218750000 = 7.0 / 32.0)
+    // entropy:    4.4457680500675866853
+    // avg_length: 4.5181192844586535173; max_length = 12; num_symbols = 256
+    [
+        //table, // (4 bits,  12 bits) symbol
+        //entry, // (length, codeword) [byte]
+        0xb24f, // (11,  591)   0
+        0x601d, // ( 6,   29)   1
+        0x9097, // ( 9,  151)   2
+        0x3002, // ( 3,    2)   3
+        0xa1f7, // (10,  503)   4
+        0x5005, // ( 5,    5)   5
+        0x807b, // ( 8,  123)   6
+        0x2000, // ( 2,    0)   7
+        0xc52f, // (12, 1327)   8
+        0x603d, // ( 6,   61)   9
+        0x9197, // ( 9,  407)  10
+        0x4001, // ( 4,    1)  11
+        0xb64f, // (11, 1615)  12
+        0x6003, // ( 6,    3)  13
+        0x9057, // ( 9,   87)  14
+        0x3006, // ( 3,    6)  15
+        0xcd2f, // (12, 3375)  16
+        0x80fb, // ( 8,  251)  17
+        0xb14f, // (11,  335)  18
+        0x5015, // ( 5,   21)  19
+        0xc32f, // (12,  815)  20
+        0x702b, // ( 7,   43)  21
+        0xa3f7, // (10, 1015)  22
+        0x4009, // ( 4,    9)  23
+        0xcb2f, // (12, 2863)  24
+        0x8007, // ( 8,    7)  25
+        0xb54f, // (11, 1359)  26
+        0x6023, // ( 6,   35)  27
+        0xc72f, // (12, 1839)  28
+        0x8087, // ( 8,  135)  29
+        0xb34f, // (11,  847)  30
+        0x500d, // ( 5,   13)  31
+        0xcf2f, // (12, 3887)  32
+        0x9157, // ( 9,  343)  33
+        0xc0af, // (12,  175)  34
+        0x6013, // ( 6,   19)  35
+        0xc8af, // (12, 2223)  36
+        0x8047, // ( 8,   71)  37
+        0xb74f, // (11, 1871)  38
+        0x6033, // ( 6,   51)  39
+        0xc4af, // (12, 1199)  40
+        0x90d7, // ( 9,  215)  41
+        0xccaf, // (12, 3247)  42
+        0x706b, // ( 7,  107)  43
+        0xc2af, // (12,  687)  44
+        0x91d7, // ( 9,  471)  45
+        0xcaaf, // (12, 2735)  46
+        0x600b, // ( 6,   11)  47
+        0xc6af, // (12, 1711)  48
+        0xb0cf, // (11,  207)  49
+        0xceaf, // (12, 3759)  50
+        0x80c7, // ( 8,  199)  51
+        0xc1af, // (12,  431)  52
+        0xa00f, // (10,   15)  53
+        0xc9af, // (12, 2479)  54
+        0x8027, // ( 8,   39)  55
+        0xc5af, // (12, 1455)  56
+        0xb4cf, // (11, 1231)  57
+        0xcdaf, // (12, 3503)  58
+        0x9037, // ( 9,   55)  59
+        0xc3af, // (12,  943)  60
+        0xb2cf, // (11,  719)  61
+        0xcbaf, // (12, 2991)  62
+        0x80a7, // ( 8,  167)  63
+        0xc7af, // (12, 1967)  64
+        0xa20f, // (10,  527)  65
+        0xcfaf, // (12, 4015)  66
+        0x701b, // ( 7,   27)  67
+        0xc06f, // (12,  111)  68
+        0x9137, // ( 9,  311)  69
+        0xc86f, // (12, 2159)  70
+        0x705b, // ( 7,   91)  71
+        0xc46f, // (12, 1135)  72
+        0xb6cf, // (11, 1743)  73
+        0xcc6f, // (12, 3183)  74
+        0x8067, // ( 8,  103)  75
+        0xc26f, // (12,  623)  76
+        0xa10f, // (10,  271)  77
+        0xca6f, // (12, 2671)  78
+        0x703b, // ( 7,   59)  79
+        0xc66f, // (12, 1647)  80
+        0xce6f, // (12, 3695)  81
+        0xc16f, // (12,  367)  82
+        0x90b7, // ( 9,  183)  83
+        0xc96f, // (12, 2415)  84
+        0xb1cf, // (11,  463)  85
+        0xc56f, // (12, 1391)  86
+        0x91b7, // ( 9,  439)  87
+        0xcd6f, // (12, 3439)  88
+        0xc36f, // (12,  879)  89
+        0xcb6f, // (12, 2927)  90
+        0xa30f, // (10,  783)  91
+        0xc76f, // (12, 1903)  92
+        0xcf6f, // (12, 3951)  93
+        0xc0ef, // (12,  239)  94
+        0x9077, // ( 9,  119)  95
+        0xc8ef, // (12, 2287)  96
+        0xc4ef, // (12, 1263)  97
+        0xccef, // (12, 3311)  98
+        0xa08f, // (10,  143)  99
+        0xc2ef, // (12,  751) 100
+        0xcaef, // (12, 2799) 101
+        0xc6ef, // (12, 1775) 102
+        0xa28f, // (10,  655) 103
+        0xceef, // (12, 3823) 104
+        0xc1ef, // (12,  495) 105
+        0xc9ef, // (12, 2543) 106
+        0xb5cf, // (11, 1487) 107
+        0xc5ef, // (12, 1519) 108
+        0xcdef, // (12, 3567) 109
+        0xc3ef, // (12, 1007) 110
+        0xb3cf, // (11,  975) 111
+        0xcbef, // (12, 3055) 112
+        0xc7ef, // (12, 2031) 113
+        0xcfef, // (12, 4079) 114
+        0xc01f, // (12,   31) 115
+        0xc81f, // (12, 2079) 116
+        0xc41f, // (12, 1055) 117
+        0xcc1f, // (12, 3103) 118
+        0xc21f, // (12,  543) 119
+        0xca1f, // (12, 2591) 120
+        0xc61f, // (12, 1567) 121
+        0xce1f, // (12, 3615) 122
+        0xc11f, // (12,  287) 123
+        0xc91f, // (12, 2335) 124
+        0xc51f, // (12, 1311) 125
+        0xcd1f, // (12, 3359) 126
+        0xc31f, // (12,  799) 127
+        0xcb1f, // (12, 2847) 128
+        0xb7cf, // (11, 1999) 129
+        0xc71f, // (12, 1823) 130
+        0x80e7, // ( 8,  231) 131
+        0xcf1f, // (12, 3871) 132
+        0xa18f, // (10,  399) 133
+        0xc09f, // (12,  159) 134
+        0x8017, // ( 8,   23) 135
+        0xc89f, // (12, 2207) 136
+        0xc49f, // (12, 1183) 137
+        0xcc9f, // (12, 3231) 138
+        0x9177, // ( 9,  375) 139
+        0xc29f, // (12,  671) 140
+        0xb02f, // (11,   47) 141
+        0xca9f, // (12, 2719) 142
+        0x90f7, // ( 9,  247) 143
+        0xc69f, // (12, 1695) 144
+        0xce9f, // (12, 3743) 145
+        0xc19f, // (12,  415) 146
+        0xa38f, // (10,  911) 147
+        0xc99f, // (12, 2463) 148
+        0xc59f, // (12, 1439) 149
+        0xcd9f, // (12, 3487) 150
+        0xa04f, // (10,   79) 151
+        0xc39f, // (12,  927) 152
+        0xcb9f, // (12, 2975) 153
+        0xc79f, // (12, 1951) 154
+        0xb42f, // (11, 1071) 155
+        0xcf9f, // (12, 3999) 156
+        0xc05f, // (12,   95) 157
+        0xc85f, // (12, 2143) 158
+        0xb22f, // (11,  559) 159
+        0xc45f, // (12, 1119) 160
+        0xcc5f, // (12, 3167) 161
+        0xc25f, // (12,  607) 162
+        0xb62f, // (11, 1583) 163
+        0xca5f, // (12, 2655) 164
+        0xc65f, // (12, 1631) 165
+        0xce5f, // (12, 3679) 166
+        0xb12f, // (11,  303) 167
+        0xc15f, // (12,  351) 168
+        0xc95f, // (12, 2399) 169
+        0xc55f, // (12, 1375) 170
+        0xcd5f, // (12, 3423) 171
+        0xc35f, // (12,  863) 172
+        0xcb5f, // (12, 2911) 173
+        0xc75f, // (12, 1887) 174
+        0xcf5f, // (12, 3935) 175
+        0xc0df, // (12,  223) 176
+        0xc8df, // (12, 2271) 177
+        0xc4df, // (12, 1247) 178
+        0xccdf, // (12, 3295) 179
+        0xc2df, // (12,  735) 180
+        0xcadf, // (12, 2783) 181
+        0xc6df, // (12, 1759) 182
+        0xcedf, // (12, 3807) 183
+        0xc1df, // (12,  479) 184
+        0xc9df, // (12, 2527) 185
+        0xc5df, // (12, 1503) 186
+        0xcddf, // (12, 3551) 187
+        0xc3df, // (12,  991) 188
+        0xcbdf, // (12, 3039) 189
+        0xc7df, // (12, 2015) 190
+        0xcfdf, // (12, 4063) 191
+        0xc03f, // (12,   63) 192
+        0xc83f, // (12, 2111) 193
+        0xc43f, // (12, 1087) 194
+        0xcc3f, // (12, 3135) 195
+        0xc23f, // (12,  575) 196
+        0xca3f, // (12, 2623) 197
+        0xc63f, // (12, 1599) 198
+        0xce3f, // (12, 3647) 199
+        0xc13f, // (12,  319) 200
+        0xc93f, // (12, 2367) 201
+        0xc53f, // (12, 1343) 202
+        0xcd3f, // (12, 3391) 203
+        0xc33f, // (12,  831) 204
+        0xcb3f, // (12, 2879) 205
+        0xc73f, // (12, 1855) 206
+        0xcf3f, // (12, 3903) 207
+        0xc0bf, // (12,  191) 208
+        0xc8bf, // (12, 2239) 209
+        0xc4bf, // (12, 1215) 210
+        0xccbf, // (12, 3263) 211
+        0xc2bf, // (12,  703) 212
+        0xcabf, // (12, 2751) 213
+        0xc6bf, // (12, 1727) 214
+        0xcebf, // (12, 3775) 215
+        0xc1bf, // (12,  447) 216
+        0xc9bf, // (12, 2495) 217
+        0xc5bf, // (12, 1471) 218
+        0xcdbf, // (12, 3519) 219
+        0xc3bf, // (12,  959) 220
+        0xcbbf, // (12, 3007) 221
+        0xc7bf, // (12, 1983) 222
+        0xcfbf, // (12, 4031) 223
+        0xc07f, // (12,  127) 224
+        0xc87f, // (12, 2175) 225
+        0xc47f, // (12, 1151) 226
+        0xcc7f, // (12, 3199) 227
+        0xc27f, // (12,  639) 228
+        0xca7f, // (12, 2687) 229
+        0xc67f, // (12, 1663) 230
+        0xce7f, // (12, 3711) 231
+        0xc17f, // (12,  383) 232
+        0xc97f, // (12, 2431) 233
+        0xc57f, // (12, 1407) 234
+        0xcd7f, // (12, 3455) 235
+        0xc37f, // (12,  895) 236
+        0xcb7f, // (12, 2943) 237
+        0xc77f, // (12, 1919) 238
+        0xcf7f, // (12, 3967) 239
+        0xc0ff, // (12,  255) 240
+        0xc8ff, // (12, 2303) 241
+        0xc4ff, // (12, 1279) 242
+        0xccff, // (12, 3327) 243
+        0xc2ff, // (12,  767) 244
+        0xcaff, // (12, 2815) 245
+        0xc6ff, // (12, 1791) 246
+        0xceff, // (12, 3839) 247
+        0xc1ff, // (12,  511) 248
+        0xc9ff, // (12, 2559) 249
+        0xc5ff, // (12, 1535) 250
+        0xcdff, // (12, 3583) 251
+        0xc3ff, // (12, 1023) 252
+        0xcbff, // (12, 3071) 253
+        0xc7ff, // (12, 2047) 254
+        0xcfff, // (12, 4095) 255
+    ],
+    // (table 4 of 22) (steady 4 of 16) (phase = 0.281250000 = 9.0 / 32.0)
+    // entropy:    4.4386754570568340839
+    // avg_length: 4.5071584786605640716; max_length = 12; num_symbols = 256
+    [
+        //table, // (4 bits,  12 bits) symbol
+        //entry, // (length, codeword) [byte]
+        0xb24f, // (11,  591)   0
+        0x601d, // ( 6,   29)   1
+        0x9057, // ( 9,   87)   2
+        0x3002, // ( 3,    2)   3
+        0xb64f, // (11, 1615)   4
+        0x5005, // ( 5,    5)   5
+        0x807b, // ( 8,  123)   6
+        0x2000, // ( 2,    0)   7
+        0xc32f, // (12,  815)   8
+        0x700b, // ( 7,   11)   9
+        0xa0f7, // (10,  247)  10
+        0x4001, // ( 4,    1)  11
+        0xb14f, // (11,  335)  12
+        0x603d, // ( 6,   61)  13
+        0x9157, // ( 9,  343)  14
+        0x3006, // ( 3,    6)  15
+        0xcb2f, // (12, 2863)  16
+        0x80fb, // ( 8,  251)  17
+        0xb54f, // (11, 1359)  18
+        0x5015, // ( 5,   21)  19
+        0xc72f, // (12, 1839)  20
+        0x704b, // ( 7,   75)  21
+        0xa2f7, // (10,  759)  22
+        0x4009, // ( 4,    9)  23
+        0xcf2f, // (12, 3887)  24
+        0x8007, // ( 8,    7)  25
+        0xb34f, // (11,  847)  26
+        0x6003, // ( 6,    3)  27
+        0xc0af, // (12,  175)  28
+        0x8087, // ( 8,  135)  29
+        0xb74f, // (11, 1871)  30
+        0x500d, // ( 5,   13)  31
+        0xc8af, // (12, 2223)  32
+        0x90d7, // ( 9,  215)  33
+        0xc4af, // (12, 1199)  34
+        0x6023, // ( 6,   35)  35
+        0xccaf, // (12, 3247)  36
+        0x8047, // ( 8,   71)  37
+        0xb0cf, // (11,  207)  38
+        0x6013, // ( 6,   19)  39
+        0xc2af, // (12,  687)  40
+        0xa1f7, // (10,  503)  41
+        0xcaaf, // (12, 2735)  42
+        0x702b, // ( 7,   43)  43
+        0xc6af, // (12, 1711)  44
+        0x91d7, // ( 9,  471)  45
+        0xceaf, // (12, 3759)  46
+        0x6033, // ( 6,   51)  47
+        0xc1af, // (12,  431)  48
+        0xb4cf, // (11, 1231)  49
+        0xc9af, // (12, 2479)  50
+        0x80c7, // ( 8,  199)  51
+        0xc5af, // (12, 1455)  52
+        0xa3f7, // (10, 1015)  53
+        0xcdaf, // (12, 3503)  54
+        0x706b, // ( 7,  107)  55
+        0xc3af, // (12,  943)  56
+        0xb2cf, // (11,  719)  57
+        0xcbaf, // (12, 2991)  58
+        0x9037, // ( 9,   55)  59
+        0xc7af, // (12, 1967)  60
+        0xb6cf, // (11, 1743)  61
+        0xcfaf, // (12, 4015)  62
+        0x8027, // ( 8,   39)  63
+        0xc06f, // (12,  111)  64
+        0xa00f, // (10,   15)  65
+        0xc86f, // (12, 2159)  66
+        0x701b, // ( 7,   27)  67
+        0xc46f, // (12, 1135)  68
+        0x9137, // ( 9,  311)  69
+        0xcc6f, // (12, 3183)  70
+        0x705b, // ( 7,   91)  71
+        0xc26f, // (12,  623)  72
+        0xb1cf, // (11,  463)  73
+        0xca6f, // (12, 2671)  74
+        0x80a7, // ( 8,  167)  75
+        0xc66f, // (12, 1647)  76
+        0xa20f, // (10,  527)  77
+        0xce6f, // (12, 3695)  78
+        0x703b, // ( 7,   59)  79
+        0xc16f, // (12,  367)  80
+        0xc96f, // (12, 2415)  81
+        0xc56f, // (12, 1391)  82
+        0x90b7, // ( 9,  183)  83
+        0xcd6f, // (12, 3439)  84
+        0xb5cf, // (11, 1487)  85
+        0xc36f, // (12,  879)  86
+        0x8067, // ( 8,  103)  87
+        0xcb6f, // (12, 2927)  88
+        0xc76f, // (12, 1903)  89
+        0xcf6f, // (12, 3951)  90
+        0xa10f, // (10,  271)  91
+        0xc0ef, // (12,  239)  92
+        0xc8ef, // (12, 2287)  93
+        0xc4ef, // (12, 1263)  94
+        0x91b7, // ( 9,  439)  95
+        0xccef, // (12, 3311)  96
+        0xc2ef, // (12,  751)  97
+        0xcaef, // (12, 2799)  98
+        0xa30f, // (10,  783)  99
+        0xc6ef, // (12, 1775) 100
+        0xceef, // (12, 3823) 101
+        0xc1ef, // (12,  495) 102
+        0xa08f, // (10,  143) 103
+        0xc9ef, // (12, 2543) 104
+        0xc5ef, // (12, 1519) 105
+        0xcdef, // (12, 3567) 106
+        0xb3cf, // (11,  975) 107
+        0xc3ef, // (12, 1007) 108
+        0xcbef, // (12, 3055) 109
+        0xc7ef, // (12, 2031) 110
+        0xa28f, // (10,  655) 111
+        0xcfef, // (12, 4079) 112
+        0xc01f, // (12,   31) 113
+        0xc81f, // (12, 2079) 114
+        0xc41f, // (12, 1055) 115
+        0xcc1f, // (12, 3103) 116
+        0xc21f, // (12,  543) 117
+        0xca1f, // (12, 2591) 118
+        0xb7cf, // (11, 1999) 119
+        0xc61f, // (12, 1567) 120
+        0xce1f, // (12, 3615) 121
+        0xc11f, // (12,  287) 122
+        0xc91f, // (12, 2335) 123
+        0xc51f, // (12, 1311) 124
+        0xcd1f, // (12, 3359) 125
+        0xc31f, // (12,  799) 126
+        0xcb1f, // (12, 2847) 127
+        0xc71f, // (12, 1823) 128
+        0xb02f, // (11,   47) 129
+        0xcf1f, // (12, 3871) 130
+        0x80e7, // ( 8,  231) 131
+        0xc09f, // (12,  159) 132
+        0xa18f, // (10,  399) 133
+        0xc89f, // (12, 2207) 134
+        0x8017, // ( 8,   23) 135
+        0xc49f, // (12, 1183) 136
+        0xcc9f, // (12, 3231) 137
+        0xc29f, // (12,  671) 138
+        0x9077, // ( 9,  119) 139
+        0xca9f, // (12, 2719) 140
+        0xb42f, // (11, 1071) 141
+        0xc69f, // (12, 1695) 142
+        0x8097, // ( 8,  151) 143
+        0xce9f, // (12, 3743) 144
+        0xc19f, // (12,  415) 145
+        0xc99f, // (12, 2463) 146
+        0xa38f, // (10,  911) 147
+        0xc59f, // (12, 1439) 148
+        0xcd9f, // (12, 3487) 149
+        0xc39f, // (12,  927) 150
+        0x9177, // ( 9,  375) 151
+        0xcb9f, // (12, 2975) 152
+        0xc79f, // (12, 1951) 153
+        0xcf9f, // (12, 3999) 154
+        0xb22f, // (11,  559) 155
+        0xc05f, // (12,   95) 156
+        0xc85f, // (12, 2143) 157
+        0xc45f, // (12, 1119) 158
+        0xa04f, // (10,   79) 159
+        0xcc5f, // (12, 3167) 160
+        0xc25f, // (12,  607) 161
+        0xca5f, // (12, 2655) 162
+        0xb62f, // (11, 1583) 163
+        0xc65f, // (12, 1631) 164
+        0xce5f, // (12, 3679) 165
+        0xc15f, // (12,  351) 166
+        0xb12f, // (11,  303) 167
+        0xc95f, // (12, 2399) 168
+        0xc55f, // (12, 1375) 169
+        0xcd5f, // (12, 3423) 170
+        0xc35f, // (12,  863) 171
+        0xcb5f, // (12, 2911) 172
+        0xc75f, // (12, 1887) 173
+        0xcf5f, // (12, 3935) 174
+        0xb52f, // (11, 1327) 175
+        0xc0df, // (12,  223) 176
+        0xc8df, // (12, 2271) 177
+        0xc4df, // (12, 1247) 178
+        0xccdf, // (12, 3295) 179
+        0xc2df, // (12,  735) 180
+        0xcadf, // (12, 2783) 181
+        0xc6df, // (12, 1759) 182
+        0xcedf, // (12, 3807) 183
+        0xc1df, // (12,  479) 184
+        0xc9df, // (12, 2527) 185
+        0xc5df, // (12, 1503) 186
+        0xcddf, // (12, 3551) 187
+        0xc3df, // (12,  991) 188
+        0xcbdf, // (12, 3039) 189
+        0xc7df, // (12, 2015) 190
+        0xcfdf, // (12, 4063) 191
+        0xc03f, // (12,   63) 192
+        0xc83f, // (12, 2111) 193
+        0xc43f, // (12, 1087) 194
+        0xcc3f, // (12, 3135) 195
+        0xc23f, // (12,  575) 196
+        0xca3f, // (12, 2623) 197
+        0xc63f, // (12, 1599) 198
+        0xce3f, // (12, 3647) 199
+        0xc13f, // (12,  319) 200
+        0xc93f, // (12, 2367) 201
+        0xc53f, // (12, 1343) 202
+        0xcd3f, // (12, 3391) 203
+        0xc33f, // (12,  831) 204
+        0xcb3f, // (12, 2879) 205
+        0xc73f, // (12, 1855) 206
+        0xcf3f, // (12, 3903) 207
+        0xc0bf, // (12,  191) 208
+        0xc8bf, // (12, 2239) 209
+        0xc4bf, // (12, 1215) 210
+        0xccbf, // (12, 3263) 211
+        0xc2bf, // (12,  703) 212
+        0xcabf, // (12, 2751) 213
+        0xc6bf, // (12, 1727) 214
+        0xcebf, // (12, 3775) 215
+        0xc1bf, // (12,  447) 216
+        0xc9bf, // (12, 2495) 217
+        0xc5bf, // (12, 1471) 218
+        0xcdbf, // (12, 3519) 219
+        0xc3bf, // (12,  959) 220
+        0xcbbf, // (12, 3007) 221
+        0xc7bf, // (12, 1983) 222
+        0xcfbf, // (12, 4031) 223
+        0xc07f, // (12,  127) 224
+        0xc87f, // (12, 2175) 225
+        0xc47f, // (12, 1151) 226
+        0xcc7f, // (12, 3199) 227
+        0xc27f, // (12,  639) 228
+        0xca7f, // (12, 2687) 229
+        0xc67f, // (12, 1663) 230
+        0xce7f, // (12, 3711) 231
+        0xc17f, // (12,  383) 232
+        0xc97f, // (12, 2431) 233
+        0xc57f, // (12, 1407) 234
+        0xcd7f, // (12, 3455) 235
+        0xc37f, // (12,  895) 236
+        0xcb7f, // (12, 2943) 237
+        0xc77f, // (12, 1919) 238
+        0xcf7f, // (12, 3967) 239
+        0xc0ff, // (12,  255) 240
+        0xc8ff, // (12, 2303) 241
+        0xc4ff, // (12, 1279) 242
+        0xccff, // (12, 3327) 243
+        0xc2ff, // (12,  767) 244
+        0xcaff, // (12, 2815) 245
+        0xc6ff, // (12, 1791) 246
+        0xceff, // (12, 3839) 247
+        0xc1ff, // (12,  511) 248
+        0xc9ff, // (12, 2559) 249
+        0xc5ff, // (12, 1535) 250
+        0xcdff, // (12, 3583) 251
+        0xc3ff, // (12, 1023) 252
+        0xcbff, // (12, 3071) 253
+        0xc7ff, // (12, 2047) 254
+        0xcfff, // (12, 4095) 255
+    ],
+    // (table 5 of 22) (steady 5 of 16) (phase = 0.343750000 = 11.0 / 32.0)
+    // entropy:    4.4308578632493116345
+    // avg_length: 4.4996166821663301505; max_length = 12; num_symbols = 256
+    [
+        //table, // (4 bits,  12 bits) symbol
+        //entry, // (length, codeword) [byte]
+        0xc12f, // (12,  303)   0
+        0x601d, // ( 6,   29)   1
+        0x9057, // ( 9,   87)   2
+        0x3002, // ( 3,    2)   3
+        0xb14f, // (11,  335)   4
+        0x5005, // ( 5,    5)   5
+        0x807b, // ( 8,  123)   6
+        0x2000, // ( 2,    0)   7
+        0xc92f, // (12, 2351)   8
+        0x700b, // ( 7,   11)   9
+        0xa1f7, // (10,  503)  10
+        0x4001, // ( 4,    1)  11
+        0xc52f, // (12, 1327)  12
+        0x603d, // ( 6,   61)  13
+        0x9157, // ( 9,  343)  14
+        0x3006, // ( 3,    6)  15
+        0xcd2f, // (12, 3375)  16
+        0x80fb, // ( 8,  251)  17
+        0xb54f, // (11, 1359)  18
+        0x5015, // ( 5,   21)  19
+        0xc32f, // (12,  815)  20
+        0x704b, // ( 7,   75)  21
+        0xa3f7, // (10, 1015)  22
+        0x4009, // ( 4,    9)  23
+        0xcb2f, // (12, 2863)  24
+        0x8007, // ( 8,    7)  25
+        0xc72f, // (12, 1839)  26
+        0x6003, // ( 6,    3)  27
+        0xcf2f, // (12, 3887)  28
+        0x8087, // ( 8,  135)  29
+        0xb34f, // (11,  847)  30
+        0x500d, // ( 5,   13)  31
+        0xc0af, // (12,  175)  32
+        0x90d7, // ( 9,  215)  33
+        0xc8af, // (12, 2223)  34
+        0x6023, // ( 6,   35)  35
+        0xc4af, // (12, 1199)  36
+        0x8047, // ( 8,   71)  37
+        0xb74f, // (11, 1871)  38
+        0x6013, // ( 6,   19)  39
+        0xccaf, // (12, 3247)  40
+        0xa00f, // (10,   15)  41
+        0xc2af, // (12,  687)  42
+        0x702b, // ( 7,   43)  43
+        0xcaaf, // (12, 2735)  44
+        0x91d7, // ( 9,  471)  45
+        0xc6af, // (12, 1711)  46
+        0x6033, // ( 6,   51)  47
+        0xceaf, // (12, 3759)  48
+        0xb0cf, // (11,  207)  49
+        0xc1af, // (12,  431)  50
+        0x80c7, // ( 8,  199)  51
+        0xc9af, // (12, 2479)  52
+        0xa20f, // (10,  527)  53
+        0xc5af, // (12, 1455)  54
+        0x706b, // ( 7,  107)  55
+        0xcdaf, // (12, 3503)  56
+        0xc3af, // (12,  943)  57
+        0xcbaf, // (12, 2991)  58
+        0x9037, // ( 9,   55)  59
+        0xc7af, // (12, 1967)  60
+        0xb4cf, // (11, 1231)  61
+        0xcfaf, // (12, 4015)  62
+        0x8027, // ( 8,   39)  63
+        0xc06f, // (12,  111)  64
+        0xa10f, // (10,  271)  65
+        0xc86f, // (12, 2159)  66
+        0x701b, // ( 7,   27)  67
+        0xc46f, // (12, 1135)  68
+        0x9137, // ( 9,  311)  69
+        0xcc6f, // (12, 3183)  70
+        0x705b, // ( 7,   91)  71
+        0xc26f, // (12,  623)  72
+        0xb2cf, // (11,  719)  73
+        0xca6f, // (12, 2671)  74
+        0x80a7, // ( 8,  167)  75
+        0xc66f, // (12, 1647)  76
+        0xa30f, // (10,  783)  77
+        0xce6f, // (12, 3695)  78
+        0x703b, // ( 7,   59)  79
+        0xc16f, // (12,  367)  80
+        0xc96f, // (12, 2415)  81
+        0xc56f, // (12, 1391)  82
+        0x90b7, // ( 9,  183)  83
+        0xcd6f, // (12, 3439)  84
+        0xb6cf, // (11, 1743)  85
+        0xc36f, // (12,  879)  86
+        0x8067, // ( 8,  103)  87
+        0xcb6f, // (12, 2927)  88
+        0xc76f, // (12, 1903)  89
+        0xcf6f, // (12, 3951)  90
+        0xa08f, // (10,  143)  91
+        0xc0ef, // (12,  239)  92
+        0xc8ef, // (12, 2287)  93
+        0xc4ef, // (12, 1263)  94
+        0x91b7, // ( 9,  439)  95
+        0xccef, // (12, 3311)  96
+        0xc2ef, // (12,  751)  97
+        0xcaef, // (12, 2799)  98
+        0xa28f, // (10,  655)  99
+        0xc6ef, // (12, 1775) 100
+        0xceef, // (12, 3823) 101
+        0xc1ef, // (12,  495) 102
+        0x9077, // ( 9,  119) 103
+        0xc9ef, // (12, 2543) 104
+        0xc5ef, // (12, 1519) 105
+        0xcdef, // (12, 3567) 106
+        0xb1cf, // (11,  463) 107
+        0xc3ef, // (12, 1007) 108
+        0xcbef, // (12, 3055) 109
+        0xc7ef, // (12, 2031) 110
+        0xa18f, // (10,  399) 111
+        0xcfef, // (12, 4079) 112
+        0xc01f, // (12,   31) 113
+        0xc81f, // (12, 2079) 114
+        0xc41f, // (12, 1055) 115
+        0xcc1f, // (12, 3103) 116
+        0xc21f, // (12,  543) 117
+        0xca1f, // (12, 2591) 118
+        0xb5cf, // (11, 1487) 119
+        0xc61f, // (12, 1567) 120
+        0xce1f, // (12, 3615) 121
+        0xc11f, // (12,  287) 122
+        0xc91f, // (12, 2335) 123
+        0xc51f, // (12, 1311) 124
+        0xcd1f, // (12, 3359) 125
+        0xc31f, // (12,  799) 126
+        0xcb1f, // (12, 2847) 127
+        0xc71f, // (12, 1823) 128
+        0xb3cf, // (11,  975) 129
+        0xcf1f, // (12, 3871) 130
+        0x80e7, // ( 8,  231) 131
+        0xc09f, // (12,  159) 132
+        0xa38f, // (10,  911) 133
+        0xc89f, // (12, 2207) 134
+        0x8017, // ( 8,   23) 135
+        0xc49f, // (12, 1183) 136
+        0xcc9f, // (12, 3231) 137
+        0xc29f, // (12,  671) 138
+        0x9177, // ( 9,  375) 139
+        0xca9f, // (12, 2719) 140
+        0xb7cf, // (11, 1999) 141
+        0xc69f, // (12, 1695) 142
+        0x8097, // ( 8,  151) 143
+        0xce9f, // (12, 3743) 144
+        0xc19f, // (12,  415) 145
+        0xc99f, // (12, 2463) 146
+        0xa04f, // (10,   79) 147
+        0xc59f, // (12, 1439) 148
+        0xcd9f, // (12, 3487) 149
+        0xc39f, // (12,  927) 150
+        0x90f7, // ( 9,  247) 151
+        0xcb9f, // (12, 2975) 152
+        0xc79f, // (12, 1951) 153
+        0xcf9f, // (12, 3999) 154
+        0xb02f, // (11,   47) 155
+        0xc05f, // (12,   95) 156
+        0xc85f, // (12, 2143) 157
+        0xc45f, // (12, 1119) 158
+        0xa24f, // (10,  591) 159
+        0xcc5f, // (12, 3167) 160
+        0xc25f, // (12,  607) 161
+        0xca5f, // (12, 2655) 162
+        0xb42f, // (11, 1071) 163
+        0xc65f, // (12, 1631) 164
+        0xce5f, // (12, 3679) 165
+        0xc15f, // (12,  351) 166
+        0xb22f, // (11,  559) 167
+        0xc95f, // (12, 2399) 168
+        0xc55f, // (12, 1375) 169
+        0xcd5f, // (12, 3423) 170
+        0xc35f, // (12,  863) 171
+        0xcb5f, // (12, 2911) 172
+        0xc75f, // (12, 1887) 173
+        0xcf5f, // (12, 3935) 174
+        0xb62f, // (11, 1583) 175
+        0xc0df, // (12,  223) 176
+        0xc8df, // (12, 2271) 177
+        0xc4df, // (12, 1247) 178
+        0xccdf, // (12, 3295) 179
+        0xc2df, // (12,  735) 180
+        0xcadf, // (12, 2783) 181
+        0xc6df, // (12, 1759) 182
+        0xcedf, // (12, 3807) 183
+        0xc1df, // (12,  479) 184
+        0xc9df, // (12, 2527) 185
+        0xc5df, // (12, 1503) 186
+        0xcddf, // (12, 3551) 187
+        0xc3df, // (12,  991) 188
+        0xcbdf, // (12, 3039) 189
+        0xc7df, // (12, 2015) 190
+        0xcfdf, // (12, 4063) 191
+        0xc03f, // (12,   63) 192
+        0xc83f, // (12, 2111) 193
+        0xc43f, // (12, 1087) 194
+        0xcc3f, // (12, 3135) 195
+        0xc23f, // (12,  575) 196
+        0xca3f, // (12, 2623) 197
+        0xc63f, // (12, 1599) 198
+        0xce3f, // (12, 3647) 199
+        0xc13f, // (12,  319) 200
+        0xc93f, // (12, 2367) 201
+        0xc53f, // (12, 1343) 202
+        0xcd3f, // (12, 3391) 203
+        0xc33f, // (12,  831) 204
+        0xcb3f, // (12, 2879) 205
+        0xc73f, // (12, 1855) 206
+        0xcf3f, // (12, 3903) 207
+        0xc0bf, // (12,  191) 208
+        0xc8bf, // (12, 2239) 209
+        0xc4bf, // (12, 1215) 210
+        0xccbf, // (12, 3263) 211
+        0xc2bf, // (12,  703) 212
+        0xcabf, // (12, 2751) 213
+        0xc6bf, // (12, 1727) 214
+        0xcebf, // (12, 3775) 215
+        0xc1bf, // (12,  447) 216
+        0xc9bf, // (12, 2495) 217
+        0xc5bf, // (12, 1471) 218
+        0xcdbf, // (12, 3519) 219
+        0xc3bf, // (12,  959) 220
+        0xcbbf, // (12, 3007) 221
+        0xc7bf, // (12, 1983) 222
+        0xcfbf, // (12, 4031) 223
+        0xc07f, // (12,  127) 224
+        0xc87f, // (12, 2175) 225
+        0xc47f, // (12, 1151) 226
+        0xcc7f, // (12, 3199) 227
+        0xc27f, // (12,  639) 228
+        0xca7f, // (12, 2687) 229
+        0xc67f, // (12, 1663) 230
+        0xce7f, // (12, 3711) 231
+        0xc17f, // (12,  383) 232
+        0xc97f, // (12, 2431) 233
+        0xc57f, // (12, 1407) 234
+        0xcd7f, // (12, 3455) 235
+        0xc37f, // (12,  895) 236
+        0xcb7f, // (12, 2943) 237
+        0xc77f, // (12, 1919) 238
+        0xcf7f, // (12, 3967) 239
+        0xc0ff, // (12,  255) 240
+        0xc8ff, // (12, 2303) 241
+        0xc4ff, // (12, 1279) 242
+        0xccff, // (12, 3327) 243
+        0xc2ff, // (12,  767) 244
+        0xcaff, // (12, 2815) 245
+        0xc6ff, // (12, 1791) 246
+        0xceff, // (12, 3839) 247
+        0xc1ff, // (12,  511) 248
+        0xc9ff, // (12, 2559) 249
+        0xc5ff, // (12, 1535) 250
+        0xcdff, // (12, 3583) 251
+        0xc3ff, // (12, 1023) 252
+        0xcbff, // (12, 3071) 253
+        0xc7ff, // (12, 2047) 254
+        0xcfff, // (12, 4095) 255
+    ],
+    // (table 6 of 22) (steady 6 of 16) (phase = 0.406250000 = 13.0 / 32.0)
+    // entropy:    4.4310364988500126060
+    // avg_length: 4.5051134111084252254; max_length = 12; num_symbols = 256
+    [
+        //table, // (4 bits,  12 bits) symbol
+        //entry, // (length, codeword) [byte]
+        0x601d, // ( 6,   29)   0
+        0x3002, // ( 3,    2)   1
+        0x603d, // ( 6,   61)   2
+        0x2000, // ( 2,    0)   3
+        0x700b, // ( 7,   11)   4
+        0x4001, // ( 4,    1)   5
+        0x6003, // ( 6,    3)   6
+        0x3006, // ( 3,    6)   7
+        0x807b, // ( 8,  123)   8
+        0x5005, // ( 5,    5)   9
+        0x704b, // ( 7,   75)  10
+        0x4009, // ( 4,    9)  11
+        0x9097, // ( 9,  151)  12
+        0x6023, // ( 6,   35)  13
+        0x80fb, // ( 8,  251)  14
+        0x5015, // ( 5,   21)  15
+        0x9197, // ( 9,  407)  16
+        0x6013, // ( 6,   19)  17
+        0x8007, // ( 8,    7)  18
+        0x500d, // ( 5,   13)  19
+        0xa0f7, // (10,  247)  20
+        0x702b, // ( 7,   43)  21
+        0x9057, // ( 9,   87)  22
+        0x6033, // ( 6,   51)  23
+        0xb14f, // (11,  335)  24
+        0x8087, // ( 8,  135)  25
+        0xa2f7, // (10,  759)  26
+        0x706b, // ( 7,  107)  27
+        0xb54f, // (11, 1359)  28
+        0x9157, // ( 9,  343)  29
+        0xa1f7, // (10,  503)  30
+        0x8047, // ( 8,   71)  31
+        0xa3f7, // (10, 1015)  32
+        0x701b, // ( 7,   27)  33
+        0x90d7, // ( 9,  215)  34
+        0x705b, // ( 7,   91)  35
+        0xb34f, // (11,  847)  36
+        0x80c7, // ( 8,  199)  37
+        0xa00f, // (10,   15)  38
+        0x703b, // ( 7,   59)  39
+        0xc32f, // (12,  815)  40
+        0x91d7, // ( 9,  471)  41
+        0xb74f, // (11, 1871)  42
+        0x8027, // ( 8,   39)  43
+        0xcb2f, // (12, 2863)  44
+        0xa20f, // (10,  527)  45
+        0xb0cf, // (11,  207)  46
+        0x9037, // ( 9,   55)  47
+        0xc72f, // (12, 1839)  48
+        0xa10f, // (10,  271)  49
+        0xcf2f, // (12, 3887)  50
+        0x9137, // ( 9,  311)  51
+        0xc0af, // (12,  175)  52
+        0xb4cf, // (11, 1231)  53
+        0xc8af, // (12, 2223)  54
+        0xa30f, // (10,  783)  55
+        0xc4af, // (12, 1199)  56
+        0xccaf, // (12, 3247)  57
+        0xc2af, // (12,  687)  58
+        0xb2cf, // (11,  719)  59
+        0xcaaf, // (12, 2735)  60
+        0xc6af, // (12, 1711)  61
+        0xceaf, // (12, 3759)  62
+        0xb6cf, // (11, 1743)  63
+        0xb1cf, // (11,  463)  64
+        0x80a7, // ( 8,  167)  65
+        0xa08f, // (10,  143)  66
+        0x8067, // ( 8,  103)  67
+        0xc1af, // (12,  431)  68
+        0x90b7, // ( 9,  183)  69
+        0xb5cf, // (11, 1487)  70
+        0x80e7, // ( 8,  231)  71
+        0xc9af, // (12, 2479)  72
+        0xa28f, // (10,  655)  73
+        0xc5af, // (12, 1455)  74
+        0x91b7, // ( 9,  439)  75
+        0xcdaf, // (12, 3503)  76
+        0xb3cf, // (11,  975)  77
+        0xc3af, // (12,  943)  78
+        0xa18f, // (10,  399)  79
+        0xcbaf, // (12, 2991)  80
+        0xb7cf, // (11, 1999)  81
+        0xc7af, // (12, 1967)  82
+        0xa38f, // (10,  911)  83
+        0xcfaf, // (12, 4015)  84
+        0xc06f, // (12,  111)  85
+        0xc86f, // (12, 2159)  86
+        0xb02f, // (11,   47)  87
+        0xc46f, // (12, 1135)  88
+        0xcc6f, // (12, 3183)  89
+        0xc26f, // (12,  623)  90
+        0xca6f, // (12, 2671)  91
+        0xc66f, // (12, 1647)  92
+        0xce6f, // (12, 3695)  93
+        0xc16f, // (12,  367)  94
+        0xc96f, // (12, 2415)  95
+        0xc56f, // (12, 1391)  96
+        0xcd6f, // (12, 3439)  97
+        0xc36f, // (12,  879)  98
+        0xb42f, // (11, 1071)  99
+        0xcb6f, // (12, 2927) 100
+        0xc76f, // (12, 1903) 101
+        0xcf6f, // (12, 3951) 102
+        0xc0ef, // (12,  239) 103
+        0xc8ef, // (12, 2287) 104
+        0xc4ef, // (12, 1263) 105
+        0xccef, // (12, 3311) 106
+        0xc2ef, // (12,  751) 107
+        0xcaef, // (12, 2799) 108
+        0xc6ef, // (12, 1775) 109
+        0xceef, // (12, 3823) 110
+        0xc1ef, // (12,  495) 111
+        0xc9ef, // (12, 2543) 112
+        0xc5ef, // (12, 1519) 113
+        0xcdef, // (12, 3567) 114
+        0xc3ef, // (12, 1007) 115
+        0xcbef, // (12, 3055) 116
+        0xc7ef, // (12, 2031) 117
+        0xcfef, // (12, 4079) 118
+        0xc01f, // (12,   31) 119
+        0xc81f, // (12, 2079) 120
+        0xc41f, // (12, 1055) 121
+        0xcc1f, // (12, 3103) 122
+        0xc21f, // (12,  543) 123
+        0xca1f, // (12, 2591) 124
+        0xc61f, // (12, 1567) 125
+        0xce1f, // (12, 3615) 126
+        0xc11f, // (12,  287) 127
+        0xc91f, // (12, 2335) 128
+        0x9077, // ( 9,  119) 129
+        0xb22f, // (11,  559) 130
+        0x8017, // ( 8,   23) 131
+        0xc51f, // (12, 1311) 132
+        0xa04f, // (10,   79) 133
+        0xcd1f, // (12, 3359) 134
+        0x9177, // ( 9,  375) 135
+        0xc31f, // (12,  799) 136
+        0xb62f, // (11, 1583) 137
+        0xcb1f, // (12, 2847) 138
+        0xa24f, // (10,  591) 139
+        0xc71f, // (12, 1823) 140
+        0xcf1f, // (12, 3871) 141
+        0xc09f, // (12,  159) 142
+        0xb12f, // (11,  303) 143
+        0xc89f, // (12, 2207) 144
+        0xc49f, // (12, 1183) 145
+        0xcc9f, // (12, 3231) 146
+        0xb52f, // (11, 1327) 147
+        0xc29f, // (12,  671) 148
+        0xca9f, // (12, 2719) 149
+        0xc69f, // (12, 1695) 150
+        0xce9f, // (12, 3743) 151
+        0xc19f, // (12,  415) 152
+        0xc99f, // (12, 2463) 153
+        0xc59f, // (12, 1439) 154
+        0xcd9f, // (12, 3487) 155
+        0xc39f, // (12,  927) 156
+        0xcb9f, // (12, 2975) 157
+        0xc79f, // (12, 1951) 158
+        0xcf9f, // (12, 3999) 159
+        0xc05f, // (12,   95) 160
+        0xc85f, // (12, 2143) 161
+        0xc45f, // (12, 1119) 162
+        0xcc5f, // (12, 3167) 163
+        0xc25f, // (12,  607) 164
+        0xca5f, // (12, 2655) 165
+        0xc65f, // (12, 1631) 166
+        0xce5f, // (12, 3679) 167
+        0xc15f, // (12,  351) 168
+        0xc95f, // (12, 2399) 169
+        0xc55f, // (12, 1375) 170
+        0xcd5f, // (12, 3423) 171
+        0xc35f, // (12,  863) 172
+        0xcb5f, // (12, 2911) 173
+        0xc75f, // (12, 1887) 174
+        0xcf5f, // (12, 3935) 175
+        0xc0df, // (12,  223) 176
+        0xc8df, // (12, 2271) 177
+        0xc4df, // (12, 1247) 178
+        0xccdf, // (12, 3295) 179
+        0xc2df, // (12,  735) 180
+        0xcadf, // (12, 2783) 181
+        0xc6df, // (12, 1759) 182
+        0xcedf, // (12, 3807) 183
+        0xc1df, // (12,  479) 184
+        0xc9df, // (12, 2527) 185
+        0xc5df, // (12, 1503) 186
+        0xcddf, // (12, 3551) 187
+        0xc3df, // (12,  991) 188
+        0xcbdf, // (12, 3039) 189
+        0xc7df, // (12, 2015) 190
+        0xcfdf, // (12, 4063) 191
+        0xc03f, // (12,   63) 192
+        0xc83f, // (12, 2111) 193
+        0xc43f, // (12, 1087) 194
+        0xcc3f, // (12, 3135) 195
+        0xc23f, // (12,  575) 196
+        0xca3f, // (12, 2623) 197
+        0xc63f, // (12, 1599) 198
+        0xce3f, // (12, 3647) 199
+        0xc13f, // (12,  319) 200
+        0xc93f, // (12, 2367) 201
+        0xc53f, // (12, 1343) 202
+        0xcd3f, // (12, 3391) 203
+        0xc33f, // (12,  831) 204
+        0xcb3f, // (12, 2879) 205
+        0xc73f, // (12, 1855) 206
+        0xcf3f, // (12, 3903) 207
+        0xc0bf, // (12,  191) 208
+        0xc8bf, // (12, 2239) 209
+        0xc4bf, // (12, 1215) 210
+        0xccbf, // (12, 3263) 211
+        0xc2bf, // (12,  703) 212
+        0xcabf, // (12, 2751) 213
+        0xc6bf, // (12, 1727) 214
+        0xcebf, // (12, 3775) 215
+        0xc1bf, // (12,  447) 216
+        0xc9bf, // (12, 2495) 217
+        0xc5bf, // (12, 1471) 218
+        0xcdbf, // (12, 3519) 219
+        0xc3bf, // (12,  959) 220
+        0xcbbf, // (12, 3007) 221
+        0xc7bf, // (12, 1983) 222
+        0xcfbf, // (12, 4031) 223
+        0xc07f, // (12,  127) 224
+        0xc87f, // (12, 2175) 225
+        0xc47f, // (12, 1151) 226
+        0xcc7f, // (12, 3199) 227
+        0xc27f, // (12,  639) 228
+        0xca7f, // (12, 2687) 229
+        0xc67f, // (12, 1663) 230
+        0xce7f, // (12, 3711) 231
+        0xc17f, // (12,  383) 232
+        0xc97f, // (12, 2431) 233
+        0xc57f, // (12, 1407) 234
+        0xcd7f, // (12, 3455) 235
+        0xc37f, // (12,  895) 236
+        0xcb7f, // (12, 2943) 237
+        0xc77f, // (12, 1919) 238
+        0xcf7f, // (12, 3967) 239
+        0xc0ff, // (12,  255) 240
+        0xc8ff, // (12, 2303) 241
+        0xc4ff, // (12, 1279) 242
+        0xccff, // (12, 3327) 243
+        0xc2ff, // (12,  767) 244
+        0xcaff, // (12, 2815) 245
+        0xc6ff, // (12, 1791) 246
+        0xceff, // (12, 3839) 247
+        0xc1ff, // (12,  511) 248
+        0xc9ff, // (12, 2559) 249
+        0xc5ff, // (12, 1535) 250
+        0xcdff, // (12, 3583) 251
+        0xc3ff, // (12, 1023) 252
+        0xcbff, // (12, 3071) 253
+        0xc7ff, // (12, 2047) 254
+        0xcfff, // (12, 4095) 255
+    ],
+    // (table 7 of 22) (steady 7 of 16) (phase = 0.468750000 = 15.0 / 32.0)
+    // entropy:    4.4417871821766841123
+    // avg_length: 4.5206419191518980583; max_length = 12; num_symbols = 256
+    [
+        //table, // (4 bits,  12 bits) symbol
+        //entry, // (length, codeword) [byte]
+        0x700b, // ( 7,   11)   0
+        0x3002, // ( 3,    2)   1
+        0x601d, // ( 6,   29)   2
+        0x2000, // ( 2,    0)   3
+        0x704b, // ( 7,   75)   4
+        0x4001, // ( 4,    1)   5
+        0x603d, // ( 6,   61)   6
+        0x3006, // ( 3,    6)   7
+        0x8007, // ( 8,    7)   8
+        0x5005, // ( 5,    5)   9
+        0x702b, // ( 7,   43)  10
+        0x4009, // ( 4,    9)  11
+        0x9097, // ( 9,  151)  12
+        0x6003, // ( 6,    3)  13
+        0x8087, // ( 8,  135)  14
+        0x5015, // ( 5,   21)  15
+        0x9197, // ( 9,  407)  16
+        0x6023, // ( 6,   35)  17
+        0x8047, // ( 8,   71)  18
+        0x500d, // ( 5,   13)  19
+        0xa0f7, // (10,  247)  20
+        0x706b, // ( 7,  107)  21
+        0x9057, // ( 9,   87)  22
+        0x6013, // ( 6,   19)  23
+        0xb14f, // (11,  335)  24
+        0x80c7, // ( 8,  199)  25
+        0xa2f7, // (10,  759)  26
+        0x701b, // ( 7,   27)  27
+        0xc52f, // (12, 1327)  28
+        0x9157, // ( 9,  343)  29
+        0xb54f, // (11, 1359)  30
+        0x8027, // ( 8,   39)  31
+        0xa1f7, // (10,  503)  32
+        0x705b, // ( 7,   91)  33
+        0x90d7, // ( 9,  215)  34
+        0x6033, // ( 6,   51)  35
+        0xb34f, // (11,  847)  36
+        0x80a7, // ( 8,  167)  37
+        0xa3f7, // (10, 1015)  38
+        0x703b, // ( 7,   59)  39
+        0xcd2f, // (12, 3375)  40
+        0x91d7, // ( 9,  471)  41
+        0xb74f, // (11, 1871)  42
+        0x8067, // ( 8,  103)  43
+        0xc32f, // (12,  815)  44
+        0xa00f, // (10,   15)  45
+        0xcb2f, // (12, 2863)  46
+        0x9037, // ( 9,   55)  47
+        0xc72f, // (12, 1839)  48
+        0xa20f, // (10,  527)  49
+        0xcf2f, // (12, 3887)  50
+        0x9137, // ( 9,  311)  51
+        0xc0af, // (12,  175)  52
+        0xb0cf, // (11,  207)  53
+        0xc8af, // (12, 2223)  54
+        0xa10f, // (10,  271)  55
+        0xc4af, // (12, 1199)  56
+        0xccaf, // (12, 3247)  57
+        0xc2af, // (12,  687)  58
+        0xb4cf, // (11, 1231)  59
+        0xcaaf, // (12, 2735)  60
+        0xc6af, // (12, 1711)  61
+        0xceaf, // (12, 3759)  62
+        0xb2cf, // (11,  719)  63
+        0xb6cf, // (11, 1743)  64
+        0x80e7, // ( 8,  231)  65
+        0xa30f, // (10,  783)  66
+        0x707b, // ( 7,  123)  67
+        0xc1af, // (12,  431)  68
+        0x90b7, // ( 9,  183)  69
+        0xb1cf, // (11,  463)  70
+        0x8017, // ( 8,   23)  71
+        0xc9af, // (12, 2479)  72
+        0xa08f, // (10,  143)  73
+        0xc5af, // (12, 1455)  74
+        0x91b7, // ( 9,  439)  75
+        0xcdaf, // (12, 3503)  76
+        0xb5cf, // (11, 1487)  77
+        0xc3af, // (12,  943)  78
+        0xa28f, // (10,  655)  79
+        0xcbaf, // (12, 2991)  80
+        0xb3cf, // (11,  975)  81
+        0xc7af, // (12, 1967)  82
+        0xa18f, // (10,  399)  83
+        0xcfaf, // (12, 4015)  84
+        0xc06f, // (12,  111)  85
+        0xc86f, // (12, 2159)  86
+        0xb7cf, // (11, 1999)  87
+        0xc46f, // (12, 1135)  88
+        0xcc6f, // (12, 3183)  89
+        0xc26f, // (12,  623)  90
+        0xca6f, // (12, 2671)  91
+        0xc66f, // (12, 1647)  92
+        0xce6f, // (12, 3695)  93
+        0xc16f, // (12,  367)  94
+        0xc96f, // (12, 2415)  95
+        0xc56f, // (12, 1391)  96
+        0xcd6f, // (12, 3439)  97
+        0xc36f, // (12,  879)  98
+        0xb02f, // (11,   47)  99
+        0xcb6f, // (12, 2927) 100
+        0xc76f, // (12, 1903) 101
+        0xcf6f, // (12, 3951) 102
+        0xc0ef, // (12,  239) 103
+        0xc8ef, // (12, 2287) 104
+        0xc4ef, // (12, 1263) 105
+        0xccef, // (12, 3311) 106
+        0xc2ef, // (12,  751) 107
+        0xcaef, // (12, 2799) 108
+        0xc6ef, // (12, 1775) 109
+        0xceef, // (12, 3823) 110
+        0xc1ef, // (12,  495) 111
+        0xc9ef, // (12, 2543) 112
+        0xc5ef, // (12, 1519) 113
+        0xcdef, // (12, 3567) 114
+        0xc3ef, // (12, 1007) 115
+        0xcbef, // (12, 3055) 116
+        0xc7ef, // (12, 2031) 117
+        0xcfef, // (12, 4079) 118
+        0xc01f, // (12,   31) 119
+        0xc81f, // (12, 2079) 120
+        0xc41f, // (12, 1055) 121
+        0xcc1f, // (12, 3103) 122
+        0xc21f, // (12,  543) 123
+        0xca1f, // (12, 2591) 124
+        0xc61f, // (12, 1567) 125
+        0xce1f, // (12, 3615) 126
+        0xc11f, // (12,  287) 127
+        0xc91f, // (12, 2335) 128
+        0xa38f, // (10,  911) 129
+        0xb42f, // (11, 1071) 130
+        0x9077, // ( 9,  119) 131
+        0xc51f, // (12, 1311) 132
+        0xa04f, // (10,   79) 133
+        0xcd1f, // (12, 3359) 134
+        0x9177, // ( 9,  375) 135
+        0xc31f, // (12,  799) 136
+        0xb22f, // (11,  559) 137
+        0xcb1f, // (12, 2847) 138
+        0xa24f, // (10,  591) 139
+        0xc71f, // (12, 1823) 140
+        0xcf1f, // (12, 3871) 141
+        0xc09f, // (12,  159) 142
+        0xb62f, // (11, 1583) 143
+        0xc89f, // (12, 2207) 144
+        0xc49f, // (12, 1183) 145
+        0xcc9f, // (12, 3231) 146
+        0xb12f, // (11,  303) 147
+        0xc29f, // (12,  671) 148
+        0xca9f, // (12, 2719) 149
+        0xc69f, // (12, 1695) 150
+        0xce9f, // (12, 3743) 151
+        0xc19f, // (12,  415) 152
+        0xc99f, // (12, 2463) 153
+        0xc59f, // (12, 1439) 154
+        0xcd9f, // (12, 3487) 155
+        0xc39f, // (12,  927) 156
+        0xcb9f, // (12, 2975) 157
+        0xc79f, // (12, 1951) 158
+        0xcf9f, // (12, 3999) 159
+        0xc05f, // (12,   95) 160
+        0xc85f, // (12, 2143) 161
+        0xc45f, // (12, 1119) 162
+        0xcc5f, // (12, 3167) 163
+        0xc25f, // (12,  607) 164
+        0xca5f, // (12, 2655) 165
+        0xc65f, // (12, 1631) 166
+        0xce5f, // (12, 3679) 167
+        0xc15f, // (12,  351) 168
+        0xc95f, // (12, 2399) 169
+        0xc55f, // (12, 1375) 170
+        0xcd5f, // (12, 3423) 171
+        0xc35f, // (12,  863) 172
+        0xcb5f, // (12, 2911) 173
+        0xc75f, // (12, 1887) 174
+        0xcf5f, // (12, 3935) 175
+        0xc0df, // (12,  223) 176
+        0xc8df, // (12, 2271) 177
+        0xc4df, // (12, 1247) 178
+        0xccdf, // (12, 3295) 179
+        0xc2df, // (12,  735) 180
+        0xcadf, // (12, 2783) 181
+        0xc6df, // (12, 1759) 182
+        0xcedf, // (12, 3807) 183
+        0xc1df, // (12,  479) 184
+        0xc9df, // (12, 2527) 185
+        0xc5df, // (12, 1503) 186
+        0xcddf, // (12, 3551) 187
+        0xc3df, // (12,  991) 188
+        0xcbdf, // (12, 3039) 189
+        0xc7df, // (12, 2015) 190
+        0xcfdf, // (12, 4063) 191
+        0xc03f, // (12,   63) 192
+        0xc83f, // (12, 2111) 193
+        0xc43f, // (12, 1087) 194
+        0xcc3f, // (12, 3135) 195
+        0xc23f, // (12,  575) 196
+        0xca3f, // (12, 2623) 197
+        0xc63f, // (12, 1599) 198
+        0xce3f, // (12, 3647) 199
+        0xc13f, // (12,  319) 200
+        0xc93f, // (12, 2367) 201
+        0xc53f, // (12, 1343) 202
+        0xcd3f, // (12, 3391) 203
+        0xc33f, // (12,  831) 204
+        0xcb3f, // (12, 2879) 205
+        0xc73f, // (12, 1855) 206
+        0xcf3f, // (12, 3903) 207
+        0xc0bf, // (12,  191) 208
+        0xc8bf, // (12, 2239) 209
+        0xc4bf, // (12, 1215) 210
+        0xccbf, // (12, 3263) 211
+        0xc2bf, // (12,  703) 212
+        0xcabf, // (12, 2751) 213
+        0xc6bf, // (12, 1727) 214
+        0xcebf, // (12, 3775) 215
+        0xc1bf, // (12,  447) 216
+        0xc9bf, // (12, 2495) 217
+        0xc5bf, // (12, 1471) 218
+        0xcdbf, // (12, 3519) 219
+        0xc3bf, // (12,  959) 220
+        0xcbbf, // (12, 3007) 221
+        0xc7bf, // (12, 1983) 222
+        0xcfbf, // (12, 4031) 223
+        0xc07f, // (12,  127) 224
+        0xc87f, // (12, 2175) 225
+        0xc47f, // (12, 1151) 226
+        0xcc7f, // (12, 3199) 227
+        0xc27f, // (12,  639) 228
+        0xca7f, // (12, 2687) 229
+        0xc67f, // (12, 1663) 230
+        0xce7f, // (12, 3711) 231
+        0xc17f, // (12,  383) 232
+        0xc97f, // (12, 2431) 233
+        0xc57f, // (12, 1407) 234
+        0xcd7f, // (12, 3455) 235
+        0xc37f, // (12,  895) 236
+        0xcb7f, // (12, 2943) 237
+        0xc77f, // (12, 1919) 238
+        0xcf7f, // (12, 3967) 239
+        0xc0ff, // (12,  255) 240
+        0xc8ff, // (12, 2303) 241
+        0xc4ff, // (12, 1279) 242
+        0xccff, // (12, 3327) 243
+        0xc2ff, // (12,  767) 244
+        0xcaff, // (12, 2815) 245
+        0xc6ff, // (12, 1791) 246
+        0xceff, // (12, 3839) 247
+        0xc1ff, // (12,  511) 248
+        0xc9ff, // (12, 2559) 249
+        0xc5ff, // (12, 1535) 250
+        0xcdff, // (12, 3583) 251
+        0xc3ff, // (12, 1023) 252
+        0xcbff, // (12, 3071) 253
+        0xc7ff, // (12, 2047) 254
+        0xcfff, // (12, 4095) 255
+    ],
+    // (table 8 of 22) (steady 8 of 16) (phase = 0.531250000 = 17.0 / 32.0)
+    // entropy:    4.4505873338397474726
+    // avg_length: 4.5270058771550303334; max_length = 12; num_symbols = 256
+    [
+        //table, // (4 bits,  12 bits) symbol
+        //entry, // (length, codeword) [byte]
+        0x7033, // ( 7,   51)   0
+        0x4006, // ( 4,    6)   1
+        0x601d, // ( 6,   29)   2
+        0x2000, // ( 2,    0)   3
+        0x7073, // ( 7,  115)   4
+        0x400e, // ( 4,   14)   5
+        0x603d, // ( 6,   61)   6
+        0x3002, // ( 3,    2)   7
+        0x807b, // ( 8,  123)   8
+        0x5005, // ( 5,    5)   9
+        0x700b, // ( 7,   11)  10
+        0x4001, // ( 4,    1)  11
+        0x9097, // ( 9,  151)  12
+        0x5015, // ( 5,   21)  13
+        0x80fb, // ( 8,  251)  14
+        0x4009, // ( 4,    9)  15
+        0xa0f7, // (10,  247)  16
+        0x6003, // ( 6,    3)  17
+        0x8007, // ( 8,    7)  18
+        0x500d, // ( 5,   13)  19
+        0xa2f7, // (10,  759)  20
+        0x704b, // ( 7,   75)  21
+        0x9197, // ( 9,  407)  22
+        0x6023, // ( 6,   35)  23
+        0xb34f, // (11,  847)  24
+        0x8087, // ( 8,  135)  25
+        0xa1f7, // (10,  503)  26
+        0x702b, // ( 7,   43)  27
+        0xb74f, // (11, 1871)  28
+        0x8047, // ( 8,   71)  29
+        0xa3f7, // (10, 1015)  30
+        0x706b, // ( 7,  107)  31
+        0xb0cf, // (11,  207)  32
+        0x701b, // ( 7,   27)  33
+        0x9057, // ( 9,   87)  34
+        0x6013, // ( 6,   19)  35
+        0xb4cf, // (11, 1231)  36
+        0x80c7, // ( 8,  199)  37
+        0xa00f, // (10,   15)  38
+        0x705b, // ( 7,   91)  39
+        0xc72f, // (12, 1839)  40
+        0x9157, // ( 9,  343)  41
+        0xb2cf, // (11,  719)  42
+        0x8027, // ( 8,   39)  43
+        0xcf2f, // (12, 3887)  44
+        0x90d7, // ( 9,  215)  45
+        0xb6cf, // (11, 1743)  46
+        0x80a7, // ( 8,  167)  47
+        0xc0af, // (12,  175)  48
+        0xa20f, // (10,  527)  49
+        0xc8af, // (12, 2223)  50
+        0x91d7, // ( 9,  471)  51
+        0xc4af, // (12, 1199)  52
+        0xa10f, // (10,  271)  53
+        0xccaf, // (12, 3247)  54
+        0x9037, // ( 9,   55)  55
+        0xc2af, // (12,  687)  56
+        0xcaaf, // (12, 2735)  57
+        0xc6af, // (12, 1711)  58
+        0xb1cf, // (11,  463)  59
+        0xceaf, // (12, 3759)  60
+        0xc1af, // (12,  431)  61
+        0xc9af, // (12, 2479)  62
+        0xb5cf, // (11, 1487)  63
+        0xc5af, // (12, 1455)  64
+        0x8067, // ( 8,  103)  65
+        0xa30f, // (10,  783)  66
+        0x703b, // ( 7,   59)  67
+        0xcdaf, // (12, 3503)  68
+        0x9137, // ( 9,  311)  69
+        0xb3cf, // (11,  975)  70
+        0x80e7, // ( 8,  231)  71
+        0xc3af, // (12,  943)  72
+        0xa08f, // (10,  143)  73
+        0xcbaf, // (12, 2991)  74
+        0x90b7, // ( 9,  183)  75
+        0xc7af, // (12, 1967)  76
+        0xa28f, // (10,  655)  77
+        0xcfaf, // (12, 4015)  78
+        0x91b7, // ( 9,  439)  79
+        0xc06f, // (12,  111)  80
+        0xb7cf, // (11, 1999)  81
+        0xc86f, // (12, 2159)  82
+        0xa18f, // (10,  399)  83
+        0xc46f, // (12, 1135)  84
+        0xb02f, // (11,   47)  85
+        0xcc6f, // (12, 3183)  86
+        0xa38f, // (10,  911)  87
+        0xc26f, // (12,  623)  88
+        0xca6f, // (12, 2671)  89
+        0xc66f, // (12, 1647)  90
+        0xce6f, // (12, 3695)  91
+        0xc16f, // (12,  367)  92
+        0xc96f, // (12, 2415)  93
+        0xc56f, // (12, 1391)  94
+        0xcd6f, // (12, 3439)  95
+        0xc36f, // (12,  879)  96
+        0xcb6f, // (12, 2927)  97
+        0xc76f, // (12, 1903)  98
+        0xb42f, // (11, 1071)  99
+        0xcf6f, // (12, 3951) 100
+        0xc0ef, // (12,  239) 101
+        0xc8ef, // (12, 2287) 102
+        0xb22f, // (11,  559) 103
+        0xc4ef, // (12, 1263) 104
+        0xccef, // (12, 3311) 105
+        0xc2ef, // (12,  751) 106
+        0xcaef, // (12, 2799) 107
+        0xc6ef, // (12, 1775) 108
+        0xceef, // (12, 3823) 109
+        0xc1ef, // (12,  495) 110
+        0xc9ef, // (12, 2543) 111
+        0xc5ef, // (12, 1519) 112
+        0xcdef, // (12, 3567) 113
+        0xc3ef, // (12, 1007) 114
+        0xcbef, // (12, 3055) 115
+        0xc7ef, // (12, 2031) 116
+        0xcfef, // (12, 4079) 117
+        0xc01f, // (12,   31) 118
+        0xc81f, // (12, 2079) 119
+        0xc41f, // (12, 1055) 120
+        0xcc1f, // (12, 3103) 121
+        0xc21f, // (12,  543) 122
+        0xca1f, // (12, 2591) 123
+        0xc61f, // (12, 1567) 124
+        0xce1f, // (12, 3615) 125
+        0xc11f, // (12,  287) 126
+        0xc91f, // (12, 2335) 127
+        0xc51f, // (12, 1311) 128
+        0x9077, // ( 9,  119) 129
+        0xcd1f, // (12, 3359) 130
+        0x8017, // ( 8,   23) 131
+        0xc31f, // (12,  799) 132
+        0xa04f, // (10,   79) 133
+        0xcb1f, // (12, 2847) 134
+        0x9177, // ( 9,  375) 135
+        0xc71f, // (12, 1823) 136
+        0xb62f, // (11, 1583) 137
+        0xcf1f, // (12, 3871) 138
+        0xa24f, // (10,  591) 139
+        0xc09f, // (12,  159) 140
+        0xb12f, // (11,  303) 141
+        0xc89f, // (12, 2207) 142
+        0xa14f, // (10,  335) 143
+        0xc49f, // (12, 1183) 144
+        0xcc9f, // (12, 3231) 145
+        0xc29f, // (12,  671) 146
+        0xb52f, // (11, 1327) 147
+        0xca9f, // (12, 2719) 148
+        0xc69f, // (12, 1695) 149
+        0xce9f, // (12, 3743) 150
+        0xb32f, // (11,  815) 151
+        0xc19f, // (12,  415) 152
+        0xc99f, // (12, 2463) 153
+        0xc59f, // (12, 1439) 154
+        0xcd9f, // (12, 3487) 155
+        0xc39f, // (12,  927) 156
+        0xcb9f, // (12, 2975) 157
+        0xc79f, // (12, 1951) 158
+        0xcf9f, // (12, 3999) 159
+        0xc05f, // (12,   95) 160
+        0xc85f, // (12, 2143) 161
+        0xc45f, // (12, 1119) 162
+        0xcc5f, // (12, 3167) 163
+        0xc25f, // (12,  607) 164
+        0xca5f, // (12, 2655) 165
+        0xc65f, // (12, 1631) 166
+        0xce5f, // (12, 3679) 167
+        0xc15f, // (12,  351) 168
+        0xc95f, // (12, 2399) 169
+        0xc55f, // (12, 1375) 170
+        0xcd5f, // (12, 3423) 171
+        0xc35f, // (12,  863) 172
+        0xcb5f, // (12, 2911) 173
+        0xc75f, // (12, 1887) 174
+        0xcf5f, // (12, 3935) 175
+        0xc0df, // (12,  223) 176
+        0xc8df, // (12, 2271) 177
+        0xc4df, // (12, 1247) 178
+        0xccdf, // (12, 3295) 179
+        0xc2df, // (12,  735) 180
+        0xcadf, // (12, 2783) 181
+        0xc6df, // (12, 1759) 182
+        0xcedf, // (12, 3807) 183
+        0xc1df, // (12,  479) 184
+        0xc9df, // (12, 2527) 185
+        0xc5df, // (12, 1503) 186
+        0xcddf, // (12, 3551) 187
+        0xc3df, // (12,  991) 188
+        0xcbdf, // (12, 3039) 189
+        0xc7df, // (12, 2015) 190
+        0xcfdf, // (12, 4063) 191
+        0xc03f, // (12,   63) 192
+        0xc83f, // (12, 2111) 193
+        0xc43f, // (12, 1087) 194
+        0xcc3f, // (12, 3135) 195
+        0xc23f, // (12,  575) 196
+        0xca3f, // (12, 2623) 197
+        0xc63f, // (12, 1599) 198
+        0xce3f, // (12, 3647) 199
+        0xc13f, // (12,  319) 200
+        0xc93f, // (12, 2367) 201
+        0xc53f, // (12, 1343) 202
+        0xcd3f, // (12, 3391) 203
+        0xc33f, // (12,  831) 204
+        0xcb3f, // (12, 2879) 205
+        0xc73f, // (12, 1855) 206
+        0xcf3f, // (12, 3903) 207
+        0xc0bf, // (12,  191) 208
+        0xc8bf, // (12, 2239) 209
+        0xc4bf, // (12, 1215) 210
+        0xccbf, // (12, 3263) 211
+        0xc2bf, // (12,  703) 212
+        0xcabf, // (12, 2751) 213
+        0xc6bf, // (12, 1727) 214
+        0xcebf, // (12, 3775) 215
+        0xc1bf, // (12,  447) 216
+        0xc9bf, // (12, 2495) 217
+        0xc5bf, // (12, 1471) 218
+        0xcdbf, // (12, 3519) 219
+        0xc3bf, // (12,  959) 220
+        0xcbbf, // (12, 3007) 221
+        0xc7bf, // (12, 1983) 222
+        0xcfbf, // (12, 4031) 223
+        0xc07f, // (12,  127) 224
+        0xc87f, // (12, 2175) 225
+        0xc47f, // (12, 1151) 226
+        0xcc7f, // (12, 3199) 227
+        0xc27f, // (12,  639) 228
+        0xca7f, // (12, 2687) 229
+        0xc67f, // (12, 1663) 230
+        0xce7f, // (12, 3711) 231
+        0xc17f, // (12,  383) 232
+        0xc97f, // (12, 2431) 233
+        0xc57f, // (12, 1407) 234
+        0xcd7f, // (12, 3455) 235
+        0xc37f, // (12,  895) 236
+        0xcb7f, // (12, 2943) 237
+        0xc77f, // (12, 1919) 238
+        0xcf7f, // (12, 3967) 239
+        0xc0ff, // (12,  255) 240
+        0xc8ff, // (12, 2303) 241
+        0xc4ff, // (12, 1279) 242
+        0xccff, // (12, 3327) 243
+        0xc2ff, // (12,  767) 244
+        0xcaff, // (12, 2815) 245
+        0xc6ff, // (12, 1791) 246
+        0xceff, // (12, 3839) 247
+        0xc1ff, // (12,  511) 248
+        0xc9ff, // (12, 2559) 249
+        0xc5ff, // (12, 1535) 250
+        0xcdff, // (12, 3583) 251
+        0xc3ff, // (12, 1023) 252
+        0xcbff, // (12, 3071) 253
+        0xc7ff, // (12, 2047) 254
+        0xcfff, // (12, 4095) 255
+    ],
+    // (table 9 of 22) (steady 9 of 16) (phase = 0.593750000 = 19.0 / 32.0)
+    // entropy:    4.4575203029748040606
+    // avg_length: 4.5315465600684730063; max_length = 12; num_symbols = 256
+    [
+        //table, // (4 bits,  12 bits) symbol
+        //entry, // (length, codeword) [byte]
+        0x7033, // ( 7,   51)   0
+        0x4006, // ( 4,    6)   1
+        0x601d, // ( 6,   29)   2
+        0x2000, // ( 2,    0)   3
+        0x7073, // ( 7,  115)   4
+        0x400e, // ( 4,   14)   5
+        0x603d, // ( 6,   61)   6
+        0x3002, // ( 3,    2)   7
+        0x9097, // ( 9,  151)   8
+        0x5005, // ( 5,    5)   9
+        0x700b, // ( 7,   11)  10
+        0x4001, // ( 4,    1)  11
+        0x9197, // ( 9,  407)  12
+        0x6003, // ( 6,    3)  13
+        0x807b, // ( 8,  123)  14
+        0x4009, // ( 4,    9)  15
+        0xa0f7, // (10,  247)  16
+        0x6023, // ( 6,   35)  17
+        0x80fb, // ( 8,  251)  18
+        0x5015, // ( 5,   21)  19
+        0xa2f7, // (10,  759)  20
+        0x704b, // ( 7,   75)  21
+        0x9057, // ( 9,   87)  22
+        0x500d, // ( 5,   13)  23
+        0xb34f, // (11,  847)  24
+        0x8007, // ( 8,    7)  25
+        0xa1f7, // (10,  503)  26
+        0x702b, // ( 7,   43)  27
+        0xc72f, // (12, 1839)  28
+        0x8087, // ( 8,  135)  29
+        0xa3f7, // (10, 1015)  30
+        0x706b, // ( 7,  107)  31
+        0xb74f, // (11, 1871)  32
+        0x701b, // ( 7,   27)  33
+        0x9157, // ( 9,  343)  34
+        0x6013, // ( 6,   19)  35
+        0xb0cf, // (11,  207)  36
+        0x8047, // ( 8,   71)  37
+        0xa00f, // (10,   15)  38
+        0x705b, // ( 7,   91)  39
+        0xcf2f, // (12, 3887)  40
+        0x90d7, // ( 9,  215)  41
+        0xb4cf, // (11, 1231)  42
+        0x80c7, // ( 8,  199)  43
+        0xc0af, // (12,  175)  44
+        0x91d7, // ( 9,  471)  45
+        0xb2cf, // (11,  719)  46
+        0x8027, // ( 8,   39)  47
+        0xc8af, // (12, 2223)  48
+        0xa20f, // (10,  527)  49
+        0xc4af, // (12, 1199)  50
+        0x9037, // ( 9,   55)  51
+        0xccaf, // (12, 3247)  52
+        0xa10f, // (10,  271)  53
+        0xc2af, // (12,  687)  54
+        0x9137, // ( 9,  311)  55
+        0xcaaf, // (12, 2735)  56
+        0xc6af, // (12, 1711)  57
+        0xceaf, // (12, 3759)  58
+        0xa30f, // (10,  783)  59
+        0xc1af, // (12,  431)  60
+        0xc9af, // (12, 2479)  61
+        0xc5af, // (12, 1455)  62
+        0xb6cf, // (11, 1743)  63
+        0xcdaf, // (12, 3503)  64
+        0x80a7, // ( 8,  167)  65
+        0xb1cf, // (11,  463)  66
+        0x703b, // ( 7,   59)  67
+        0xc3af, // (12,  943)  68
+        0x90b7, // ( 9,  183)  69
+        0xb5cf, // (11, 1487)  70
+        0x8067, // ( 8,  103)  71
+        0xcbaf, // (12, 2991)  72
+        0xa08f, // (10,  143)  73
+        0xc7af, // (12, 1967)  74
+        0x91b7, // ( 9,  439)  75
+        0xcfaf, // (12, 4015)  76
+        0xa28f, // (10,  655)  77
+        0xc06f, // (12,  111)  78
+        0x9077, // ( 9,  119)  79
+        0xc86f, // (12, 2159)  80
+        0xb3cf, // (11,  975)  81
+        0xc46f, // (12, 1135)  82
+        0xa18f, // (10,  399)  83
+        0xcc6f, // (12, 3183)  84
+        0xb7cf, // (11, 1999)  85
+        0xc26f, // (12,  623)  86
+        0xa38f, // (10,  911)  87
+        0xca6f, // (12, 2671)  88
+        0xc66f, // (12, 1647)  89
+        0xce6f, // (12, 3695)  90
+        0xb02f, // (11,   47)  91
+        0xc16f, // (12,  367)  92
+        0xc96f, // (12, 2415)  93
+        0xc56f, // (12, 1391)  94
+        0xcd6f, // (12, 3439)  95
+        0xc36f, // (12,  879)  96
+        0xcb6f, // (12, 2927)  97
+        0xc76f, // (12, 1903)  98
+        0xb42f, // (11, 1071)  99
+        0xcf6f, // (12, 3951) 100
+        0xc0ef, // (12,  239) 101
+        0xc8ef, // (12, 2287) 102
+        0xb22f, // (11,  559) 103
+        0xc4ef, // (12, 1263) 104
+        0xccef, // (12, 3311) 105
+        0xc2ef, // (12,  751) 106
+        0xcaef, // (12, 2799) 107
+        0xc6ef, // (12, 1775) 108
+        0xceef, // (12, 3823) 109
+        0xc1ef, // (12,  495) 110
+        0xc9ef, // (12, 2543) 111
+        0xc5ef, // (12, 1519) 112
+        0xcdef, // (12, 3567) 113
+        0xc3ef, // (12, 1007) 114
+        0xcbef, // (12, 3055) 115
+        0xc7ef, // (12, 2031) 116
+        0xcfef, // (12, 4079) 117
+        0xc01f, // (12,   31) 118
+        0xc81f, // (12, 2079) 119
+        0xc41f, // (12, 1055) 120
+        0xcc1f, // (12, 3103) 121
+        0xc21f, // (12,  543) 122
+        0xca1f, // (12, 2591) 123
+        0xc61f, // (12, 1567) 124
+        0xce1f, // (12, 3615) 125
+        0xc11f, // (12,  287) 126
+        0xc91f, // (12, 2335) 127
+        0xc51f, // (12, 1311) 128
+        0x9177, // ( 9,  375) 129
+        0xcd1f, // (12, 3359) 130
+        0x80e7, // ( 8,  231) 131
+        0xc31f, // (12,  799) 132
+        0xa04f, // (10,   79) 133
+        0xcb1f, // (12, 2847) 134
+        0x8017, // ( 8,   23) 135
+        0xc71f, // (12, 1823) 136
+        0xb62f, // (11, 1583) 137
+        0xcf1f, // (12, 3871) 138
+        0xa24f, // (10,  591) 139
+        0xc09f, // (12,  159) 140
+        0xb12f, // (11,  303) 141
+        0xc89f, // (12, 2207) 142
+        0xa14f, // (10,  335) 143
+        0xc49f, // (12, 1183) 144
+        0xcc9f, // (12, 3231) 145
+        0xc29f, // (12,  671) 146
+        0xb52f, // (11, 1327) 147
+        0xca9f, // (12, 2719) 148
+        0xc69f, // (12, 1695) 149
+        0xce9f, // (12, 3743) 150
+        0xb32f, // (11,  815) 151
+        0xc19f, // (12,  415) 152
+        0xc99f, // (12, 2463) 153
+        0xc59f, // (12, 1439) 154
+        0xcd9f, // (12, 3487) 155
+        0xc39f, // (12,  927) 156
+        0xcb9f, // (12, 2975) 157
+        0xc79f, // (12, 1951) 158
+        0xcf9f, // (12, 3999) 159
+        0xc05f, // (12,   95) 160
+        0xc85f, // (12, 2143) 161
+        0xc45f, // (12, 1119) 162
+        0xcc5f, // (12, 3167) 163
+        0xc25f, // (12,  607) 164
+        0xca5f, // (12, 2655) 165
+        0xc65f, // (12, 1631) 166
+        0xce5f, // (12, 3679) 167
+        0xc15f, // (12,  351) 168
+        0xc95f, // (12, 2399) 169
+        0xc55f, // (12, 1375) 170
+        0xcd5f, // (12, 3423) 171
+        0xc35f, // (12,  863) 172
+        0xcb5f, // (12, 2911) 173
+        0xc75f, // (12, 1887) 174
+        0xcf5f, // (12, 3935) 175
+        0xc0df, // (12,  223) 176
+        0xc8df, // (12, 2271) 177
+        0xc4df, // (12, 1247) 178
+        0xccdf, // (12, 3295) 179
+        0xc2df, // (12,  735) 180
+        0xcadf, // (12, 2783) 181
+        0xc6df, // (12, 1759) 182
+        0xcedf, // (12, 3807) 183
+        0xc1df, // (12,  479) 184
+        0xc9df, // (12, 2527) 185
+        0xc5df, // (12, 1503) 186
+        0xcddf, // (12, 3551) 187
+        0xc3df, // (12,  991) 188
+        0xcbdf, // (12, 3039) 189
+        0xc7df, // (12, 2015) 190
+        0xcfdf, // (12, 4063) 191
+        0xc03f, // (12,   63) 192
+        0xc83f, // (12, 2111) 193
+        0xc43f, // (12, 1087) 194
+        0xcc3f, // (12, 3135) 195
+        0xc23f, // (12,  575) 196
+        0xca3f, // (12, 2623) 197
+        0xc63f, // (12, 1599) 198
+        0xce3f, // (12, 3647) 199
+        0xc13f, // (12,  319) 200
+        0xc93f, // (12, 2367) 201
+        0xc53f, // (12, 1343) 202
+        0xcd3f, // (12, 3391) 203
+        0xc33f, // (12,  831) 204
+        0xcb3f, // (12, 2879) 205
+        0xc73f, // (12, 1855) 206
+        0xcf3f, // (12, 3903) 207
+        0xc0bf, // (12,  191) 208
+        0xc8bf, // (12, 2239) 209
+        0xc4bf, // (12, 1215) 210
+        0xccbf, // (12, 3263) 211
+        0xc2bf, // (12,  703) 212
+        0xcabf, // (12, 2751) 213
+        0xc6bf, // (12, 1727) 214
+        0xcebf, // (12, 3775) 215
+        0xc1bf, // (12,  447) 216
+        0xc9bf, // (12, 2495) 217
+        0xc5bf, // (12, 1471) 218
+        0xcdbf, // (12, 3519) 219
+        0xc3bf, // (12,  959) 220
+        0xcbbf, // (12, 3007) 221
+        0xc7bf, // (12, 1983) 222
+        0xcfbf, // (12, 4031) 223
+        0xc07f, // (12,  127) 224
+        0xc87f, // (12, 2175) 225
+        0xc47f, // (12, 1151) 226
+        0xcc7f, // (12, 3199) 227
+        0xc27f, // (12,  639) 228
+        0xca7f, // (12, 2687) 229
+        0xc67f, // (12, 1663) 230
+        0xce7f, // (12, 3711) 231
+        0xc17f, // (12,  383) 232
+        0xc97f, // (12, 2431) 233
+        0xc57f, // (12, 1407) 234
+        0xcd7f, // (12, 3455) 235
+        0xc37f, // (12,  895) 236
+        0xcb7f, // (12, 2943) 237
+        0xc77f, // (12, 1919) 238
+        0xcf7f, // (12, 3967) 239
+        0xc0ff, // (12,  255) 240
+        0xc8ff, // (12, 2303) 241
+        0xc4ff, // (12, 1279) 242
+        0xccff, // (12, 3327) 243
+        0xc2ff, // (12,  767) 244
+        0xcaff, // (12, 2815) 245
+        0xc6ff, // (12, 1791) 246
+        0xceff, // (12, 3839) 247
+        0xc1ff, // (12,  511) 248
+        0xc9ff, // (12, 2559) 249
+        0xc5ff, // (12, 1535) 250
+        0xcdff, // (12, 3583) 251
+        0xc3ff, // (12, 1023) 252
+        0xcbff, // (12, 3071) 253
+        0xc7ff, // (12, 2047) 254
+        0xcfff, // (12, 4095) 255
+    ],
+    // (table 10 of 22) (steady 10 of 16) (phase = 0.656250000 = 21.0 / 32.0)
+    // entropy:    4.4626765653088611430
+    // avg_length: 4.5373141251902122661; max_length = 12; num_symbols = 256
+    [
+        //table, // (4 bits,  12 bits) symbol
+        //entry, // (length, codeword) [byte]
+        0x700b, // ( 7,   11)   0
+        0x4006, // ( 4,    6)   1
+        0x601d, // ( 6,   29)   2
+        0x2000, // ( 2,    0)   3
+        0x807b, // ( 8,  123)   4
+        0x400e, // ( 4,   14)   5
+        0x603d, // ( 6,   61)   6
+        0x3002, // ( 3,    2)   7
+        0x9017, // ( 9,   23)   8
+        0x5005, // ( 5,    5)   9
+        0x704b, // ( 7,   75)  10
+        0x4001, // ( 4,    1)  11
+        0x9117, // ( 9,  279)  12
+        0x6003, // ( 6,    3)  13
+        0x80fb, // ( 8,  251)  14
+        0x4009, // ( 4,    9)  15
+        0xa177, // (10,  375)  16
+        0x6023, // ( 6,   35)  17
+        0x9097, // ( 9,  151)  18
+        0x5015, // ( 5,   21)  19
+        0xa377, // (10,  887)  20
+        0x702b, // ( 7,   43)  21
+        0x9197, // ( 9,  407)  22
+        0x500d, // ( 5,   13)  23
+        0xb34f, // (11,  847)  24
+        0x8007, // ( 8,    7)  25
+        0xa0f7, // (10,  247)  26
+        0x706b, // ( 7,  107)  27
+        0xc0af, // (12,  175)  28
+        0x8087, // ( 8,  135)  29
+        0xa2f7, // (10,  759)  30
+        0x701b, // ( 7,   27)  31
+        0xb74f, // (11, 1871)  32
+        0x8047, // ( 8,   71)  33
+        0xa1f7, // (10,  503)  34
+        0x6013, // ( 6,   19)  35
+        0xb0cf, // (11,  207)  36
+        0x80c7, // ( 8,  199)  37
+        0xa3f7, // (10, 1015)  38
+        0x6033, // ( 6,   51)  39
+        0xc8af, // (12, 2223)  40
+        0x9057, // ( 9,   87)  41
+        0xb4cf, // (11, 1231)  42
+        0x8027, // ( 8,   39)  43
+        0xc4af, // (12, 1199)  44
+        0x9157, // ( 9,  343)  45
+        0xb2cf, // (11,  719)  46
+        0x80a7, // ( 8,  167)  47
+        0xccaf, // (12, 3247)  48
+        0xa00f, // (10,   15)  49
+        0xc2af, // (12,  687)  50
+        0x90d7, // ( 9,  215)  51
+        0xcaaf, // (12, 2735)  52
+        0xa20f, // (10,  527)  53
+        0xc6af, // (12, 1711)  54
+        0x91d7, // ( 9,  471)  55
+        0xceaf, // (12, 3759)  56
+        0xb6cf, // (11, 1743)  57
+        0xc1af, // (12,  431)  58
+        0xa10f, // (10,  271)  59
+        0xc9af, // (12, 2479)  60
+        0xc5af, // (12, 1455)  61
+        0xcdaf, // (12, 3503)  62
+        0xa30f, // (10,  783)  63
+        0xc3af, // (12,  943)  64
+        0x9037, // ( 9,   55)  65
+        0xb1cf, // (11,  463)  66
+        0x705b, // ( 7,   91)  67
+        0xcbaf, // (12, 2991)  68
+        0x9137, // ( 9,  311)  69
+        0xb5cf, // (11, 1487)  70
+        0x703b, // ( 7,   59)  71
+        0xc7af, // (12, 1967)  72
+        0xa08f, // (10,  143)  73
+        0xcfaf, // (12, 4015)  74
+        0x90b7, // ( 9,  183)  75
+        0xc06f, // (12,  111)  76
+        0xa28f, // (10,  655)  77
+        0xc86f, // (12, 2159)  78
+        0x91b7, // ( 9,  439)  79
+        0xc46f, // (12, 1135)  80
+        0xb3cf, // (11,  975)  81
+        0xcc6f, // (12, 3183)  82
+        0xa18f, // (10,  399)  83
+        0xc26f, // (12,  623)  84
+        0xb7cf, // (11, 1999)  85
+        0xca6f, // (12, 2671)  86
+        0xa38f, // (10,  911)  87
+        0xc66f, // (12, 1647)  88
+        0xce6f, // (12, 3695)  89
+        0xc16f, // (12,  367)  90
+        0xb02f, // (11,   47)  91
+        0xc96f, // (12, 2415)  92
+        0xc56f, // (12, 1391)  93
+        0xcd6f, // (12, 3439)  94
+        0xb42f, // (11, 1071)  95
+        0xc36f, // (12,  879)  96
+        0xcb6f, // (12, 2927)  97
+        0xc76f, // (12, 1903)  98
+        0xb22f, // (11,  559)  99
+        0xcf6f, // (12, 3951) 100
+        0xc0ef, // (12,  239) 101
+        0xc8ef, // (12, 2287) 102
+        0xb62f, // (11, 1583) 103
+        0xc4ef, // (12, 1263) 104
+        0xccef, // (12, 3311) 105
+        0xc2ef, // (12,  751) 106
+        0xcaef, // (12, 2799) 107
+        0xc6ef, // (12, 1775) 108
+        0xceef, // (12, 3823) 109
+        0xc1ef, // (12,  495) 110
+        0xc9ef, // (12, 2543) 111
+        0xc5ef, // (12, 1519) 112
+        0xcdef, // (12, 3567) 113
+        0xc3ef, // (12, 1007) 114
+        0xcbef, // (12, 3055) 115
+        0xc7ef, // (12, 2031) 116
+        0xcfef, // (12, 4079) 117
+        0xc01f, // (12,   31) 118
+        0xc81f, // (12, 2079) 119
+        0xc41f, // (12, 1055) 120
+        0xcc1f, // (12, 3103) 121
+        0xc21f, // (12,  543) 122
+        0xca1f, // (12, 2591) 123
+        0xc61f, // (12, 1567) 124
+        0xce1f, // (12, 3615) 125
+        0xc11f, // (12,  287) 126
+        0xc91f, // (12, 2335) 127
+        0xc51f, // (12, 1311) 128
+        0x9077, // ( 9,  119) 129
+        0xcd1f, // (12, 3359) 130
+        0x8067, // ( 8,  103) 131
+        0xc31f, // (12,  799) 132
+        0xa04f, // (10,   79) 133
+        0xcb1f, // (12, 2847) 134
+        0x80e7, // ( 8,  231) 135
+        0xc71f, // (12, 1823) 136
+        0xb12f, // (11,  303) 137
+        0xcf1f, // (12, 3871) 138
+        0xa24f, // (10,  591) 139
+        0xc09f, // (12,  159) 140
+        0xb52f, // (11, 1327) 141
+        0xc89f, // (12, 2207) 142
+        0xa14f, // (10,  335) 143
+        0xc49f, // (12, 1183) 144
+        0xcc9f, // (12, 3231) 145
+        0xc29f, // (12,  671) 146
+        0xb32f, // (11,  815) 147
+        0xca9f, // (12, 2719) 148
+        0xc69f, // (12, 1695) 149
+        0xce9f, // (12, 3743) 150
+        0xb72f, // (11, 1839) 151
+        0xc19f, // (12,  415) 152
+        0xc99f, // (12, 2463) 153
+        0xc59f, // (12, 1439) 154
+        0xcd9f, // (12, 3487) 155
+        0xc39f, // (12,  927) 156
+        0xcb9f, // (12, 2975) 157
+        0xc79f, // (12, 1951) 158
+        0xcf9f, // (12, 3999) 159
+        0xc05f, // (12,   95) 160
+        0xc85f, // (12, 2143) 161
+        0xc45f, // (12, 1119) 162
+        0xcc5f, // (12, 3167) 163
+        0xc25f, // (12,  607) 164
+        0xca5f, // (12, 2655) 165
+        0xc65f, // (12, 1631) 166
+        0xce5f, // (12, 3679) 167
+        0xc15f, // (12,  351) 168
+        0xc95f, // (12, 2399) 169
+        0xc55f, // (12, 1375) 170
+        0xcd5f, // (12, 3423) 171
+        0xc35f, // (12,  863) 172
+        0xcb5f, // (12, 2911) 173
+        0xc75f, // (12, 1887) 174
+        0xcf5f, // (12, 3935) 175
+        0xc0df, // (12,  223) 176
+        0xc8df, // (12, 2271) 177
+        0xc4df, // (12, 1247) 178
+        0xccdf, // (12, 3295) 179
+        0xc2df, // (12,  735) 180
+        0xcadf, // (12, 2783) 181
+        0xc6df, // (12, 1759) 182
+        0xcedf, // (12, 3807) 183
+        0xc1df, // (12,  479) 184
+        0xc9df, // (12, 2527) 185
+        0xc5df, // (12, 1503) 186
+        0xcddf, // (12, 3551) 187
+        0xc3df, // (12,  991) 188
+        0xcbdf, // (12, 3039) 189
+        0xc7df, // (12, 2015) 190
+        0xcfdf, // (12, 4063) 191
+        0xc03f, // (12,   63) 192
+        0xc83f, // (12, 2111) 193
+        0xc43f, // (12, 1087) 194
+        0xcc3f, // (12, 3135) 195
+        0xc23f, // (12,  575) 196
+        0xca3f, // (12, 2623) 197
+        0xc63f, // (12, 1599) 198
+        0xce3f, // (12, 3647) 199
+        0xc13f, // (12,  319) 200
+        0xc93f, // (12, 2367) 201
+        0xc53f, // (12, 1343) 202
+        0xcd3f, // (12, 3391) 203
+        0xc33f, // (12,  831) 204
+        0xcb3f, // (12, 2879) 205
+        0xc73f, // (12, 1855) 206
+        0xcf3f, // (12, 3903) 207
+        0xc0bf, // (12,  191) 208
+        0xc8bf, // (12, 2239) 209
+        0xc4bf, // (12, 1215) 210
+        0xccbf, // (12, 3263) 211
+        0xc2bf, // (12,  703) 212
+        0xcabf, // (12, 2751) 213
+        0xc6bf, // (12, 1727) 214
+        0xcebf, // (12, 3775) 215
+        0xc1bf, // (12,  447) 216
+        0xc9bf, // (12, 2495) 217
+        0xc5bf, // (12, 1471) 218
+        0xcdbf, // (12, 3519) 219
+        0xc3bf, // (12,  959) 220
+        0xcbbf, // (12, 3007) 221
+        0xc7bf, // (12, 1983) 222
+        0xcfbf, // (12, 4031) 223
+        0xc07f, // (12,  127) 224
+        0xc87f, // (12, 2175) 225
+        0xc47f, // (12, 1151) 226
+        0xcc7f, // (12, 3199) 227
+        0xc27f, // (12,  639) 228
+        0xca7f, // (12, 2687) 229
+        0xc67f, // (12, 1663) 230
+        0xce7f, // (12, 3711) 231
+        0xc17f, // (12,  383) 232
+        0xc97f, // (12, 2431) 233
+        0xc57f, // (12, 1407) 234
+        0xcd7f, // (12, 3455) 235
+        0xc37f, // (12,  895) 236
+        0xcb7f, // (12, 2943) 237
+        0xc77f, // (12, 1919) 238
+        0xcf7f, // (12, 3967) 239
+        0xc0ff, // (12,  255) 240
+        0xc8ff, // (12, 2303) 241
+        0xc4ff, // (12, 1279) 242
+        0xccff, // (12, 3327) 243
+        0xc2ff, // (12,  767) 244
+        0xcaff, // (12, 2815) 245
+        0xc6ff, // (12, 1791) 246
+        0xceff, // (12, 3839) 247
+        0xc1ff, // (12,  511) 248
+        0xc9ff, // (12, 2559) 249
+        0xc5ff, // (12, 1535) 250
+        0xcdff, // (12, 3583) 251
+        0xc3ff, // (12, 1023) 252
+        0xcbff, // (12, 3071) 253
+        0xc7ff, // (12, 2047) 254
+        0xcfff, // (12, 4095) 255
+    ],
+    // (table 11 of 22) (steady 11 of 16) (phase = 0.718750000 = 23.0 / 32.0)
+    // entropy:    4.4661524304421691411
+    // avg_length: 4.5443750890419041255; max_length = 12; num_symbols = 256
+    [
+        //table, // (4 bits,  12 bits) symbol
+        //entry, // (length, codeword) [byte]
+        0x803b, // ( 8,   59)   0
+        0x4006, // ( 4,    6)   1
+        0x601d, // ( 6,   29)   2
+        0x2000, // ( 2,    0)   3
+        0x80bb, // ( 8,  187)   4
+        0x400e, // ( 4,   14)   5
+        0x603d, // ( 6,   61)   6
+        0x3002, // ( 3,    2)   7
+        0x9017, // ( 9,   23)   8
+        0x5005, // ( 5,    5)   9
+        0x807b, // ( 8,  123)  10
+        0x4001, // ( 4,    1)  11
+        0x9117, // ( 9,  279)  12
+        0x6003, // ( 6,    3)  13
+        0x80fb, // ( 8,  251)  14
+        0x4009, // ( 4,    9)  15
+        0xa177, // (10,  375)  16
+        0x6023, // ( 6,   35)  17
+        0x9097, // ( 9,  151)  18
+        0x5015, // ( 5,   21)  19
+        0xa377, // (10,  887)  20
+        0x702b, // ( 7,   43)  21
+        0x9197, // ( 9,  407)  22
+        0x500d, // ( 5,   13)  23
+        0xb34f, // (11,  847)  24
+        0x8007, // ( 8,    7)  25
+        0xa0f7, // (10,  247)  26
+        0x6013, // ( 6,   19)  27
+        0xc0af, // (12,  175)  28
+        0x8087, // ( 8,  135)  29
+        0xa2f7, // (10,  759)  30
+        0x706b, // ( 7,  107)  31
+        0xb74f, // (11, 1871)  32
+        0x8047, // ( 8,   71)  33
+        0xa1f7, // (10,  503)  34
+        0x6033, // ( 6,   51)  35
+        0xb0cf, // (11,  207)  36
+        0x80c7, // ( 8,  199)  37
+        0xa3f7, // (10, 1015)  38
+        0x600b, // ( 6,   11)  39
+        0xc8af, // (12, 2223)  40
+        0x9057, // ( 9,   87)  41
+        0xb4cf, // (11, 1231)  42
+        0x8027, // ( 8,   39)  43
+        0xc4af, // (12, 1199)  44
+        0x9157, // ( 9,  343)  45
+        0xb2cf, // (11,  719)  46
+        0x80a7, // ( 8,  167)  47
+        0xccaf, // (12, 3247)  48
+        0xa00f, // (10,   15)  49
+        0xc2af, // (12,  687)  50
+        0x90d7, // ( 9,  215)  51
+        0xcaaf, // (12, 2735)  52
+        0xa20f, // (10,  527)  53
+        0xc6af, // (12, 1711)  54
+        0x91d7, // ( 9,  471)  55
+        0xceaf, // (12, 3759)  56
+        0xb6cf, // (11, 1743)  57
+        0xc1af, // (12,  431)  58
+        0xa10f, // (10,  271)  59
+        0xc9af, // (12, 2479)  60
+        0xc5af, // (12, 1455)  61
+        0xcdaf, // (12, 3503)  62
+        0xa30f, // (10,  783)  63
+        0xc3af, // (12,  943)  64
+        0x9037, // ( 9,   55)  65
+        0xb1cf, // (11,  463)  66
+        0x701b, // ( 7,   27)  67
+        0xcbaf, // (12, 2991)  68
+        0x9137, // ( 9,  311)  69
+        0xb5cf, // (11, 1487)  70
+        0x705b, // ( 7,   91)  71
+        0xc7af, // (12, 1967)  72
+        0xa08f, // (10,  143)  73
+        0xcfaf, // (12, 4015)  74
+        0x90b7, // ( 9,  183)  75
+        0xc06f, // (12,  111)  76
+        0xa28f, // (10,  655)  77
+        0xc86f, // (12, 2159)  78
+        0x91b7, // ( 9,  439)  79
+        0xc46f, // (12, 1135)  80
+        0xb3cf, // (11,  975)  81
+        0xcc6f, // (12, 3183)  82
+        0xa18f, // (10,  399)  83
+        0xc26f, // (12,  623)  84
+        0xb7cf, // (11, 1999)  85
+        0xca6f, // (12, 2671)  86
+        0xa38f, // (10,  911)  87
+        0xc66f, // (12, 1647)  88
+        0xce6f, // (12, 3695)  89
+        0xc16f, // (12,  367)  90
+        0xb02f, // (11,   47)  91
+        0xc96f, // (12, 2415)  92
+        0xc56f, // (12, 1391)  93
+        0xcd6f, // (12, 3439)  94
+        0xb42f, // (11, 1071)  95
+        0xc36f, // (12,  879)  96
+        0xcb6f, // (12, 2927)  97
+        0xc76f, // (12, 1903)  98
+        0xb22f, // (11,  559)  99
+        0xcf6f, // (12, 3951) 100
+        0xc0ef, // (12,  239) 101
+        0xc8ef, // (12, 2287) 102
+        0xb62f, // (11, 1583) 103
+        0xc4ef, // (12, 1263) 104
+        0xccef, // (12, 3311) 105
+        0xc2ef, // (12,  751) 106
+        0xcaef, // (12, 2799) 107
+        0xc6ef, // (12, 1775) 108
+        0xceef, // (12, 3823) 109
+        0xc1ef, // (12,  495) 110
+        0xc9ef, // (12, 2543) 111
+        0xc5ef, // (12, 1519) 112
+        0xcdef, // (12, 3567) 113
+        0xc3ef, // (12, 1007) 114
+        0xcbef, // (12, 3055) 115
+        0xc7ef, // (12, 2031) 116
+        0xcfef, // (12, 4079) 117
+        0xc01f, // (12,   31) 118
+        0xc81f, // (12, 2079) 119
+        0xc41f, // (12, 1055) 120
+        0xcc1f, // (12, 3103) 121
+        0xc21f, // (12,  543) 122
+        0xca1f, // (12, 2591) 123
+        0xc61f, // (12, 1567) 124
+        0xce1f, // (12, 3615) 125
+        0xc11f, // (12,  287) 126
+        0xc91f, // (12, 2335) 127
+        0xc51f, // (12, 1311) 128
+        0xa04f, // (10,   79) 129
+        0xcd1f, // (12, 3359) 130
+        0x8067, // ( 8,  103) 131
+        0xc31f, // (12,  799) 132
+        0xa24f, // (10,  591) 133
+        0xcb1f, // (12, 2847) 134
+        0x80e7, // ( 8,  231) 135
+        0xc71f, // (12, 1823) 136
+        0xb12f, // (11,  303) 137
+        0xcf1f, // (12, 3871) 138
+        0x9077, // ( 9,  119) 139
+        0xc09f, // (12,  159) 140
+        0xb52f, // (11, 1327) 141
+        0xc89f, // (12, 2207) 142
+        0xa14f, // (10,  335) 143
+        0xc49f, // (12, 1183) 144
+        0xcc9f, // (12, 3231) 145
+        0xc29f, // (12,  671) 146
+        0xb32f, // (11,  815) 147
+        0xca9f, // (12, 2719) 148
+        0xc69f, // (12, 1695) 149
+        0xce9f, // (12, 3743) 150
+        0xb72f, // (11, 1839) 151
+        0xc19f, // (12,  415) 152
+        0xc99f, // (12, 2463) 153
+        0xc59f, // (12, 1439) 154
+        0xcd9f, // (12, 3487) 155
+        0xc39f, // (12,  927) 156
+        0xcb9f, // (12, 2975) 157
+        0xc79f, // (12, 1951) 158
+        0xcf9f, // (12, 3999) 159
+        0xc05f, // (12,   95) 160
+        0xc85f, // (12, 2143) 161
+        0xc45f, // (12, 1119) 162
+        0xcc5f, // (12, 3167) 163
+        0xc25f, // (12,  607) 164
+        0xca5f, // (12, 2655) 165
+        0xc65f, // (12, 1631) 166
+        0xce5f, // (12, 3679) 167
+        0xc15f, // (12,  351) 168
+        0xc95f, // (12, 2399) 169
+        0xc55f, // (12, 1375) 170
+        0xcd5f, // (12, 3423) 171
+        0xc35f, // (12,  863) 172
+        0xcb5f, // (12, 2911) 173
+        0xc75f, // (12, 1887) 174
+        0xcf5f, // (12, 3935) 175
+        0xc0df, // (12,  223) 176
+        0xc8df, // (12, 2271) 177
+        0xc4df, // (12, 1247) 178
+        0xccdf, // (12, 3295) 179
+        0xc2df, // (12,  735) 180
+        0xcadf, // (12, 2783) 181
+        0xc6df, // (12, 1759) 182
+        0xcedf, // (12, 3807) 183
+        0xc1df, // (12,  479) 184
+        0xc9df, // (12, 2527) 185
+        0xc5df, // (12, 1503) 186
+        0xcddf, // (12, 3551) 187
+        0xc3df, // (12,  991) 188
+        0xcbdf, // (12, 3039) 189
+        0xc7df, // (12, 2015) 190
+        0xcfdf, // (12, 4063) 191
+        0xc03f, // (12,   63) 192
+        0xc83f, // (12, 2111) 193
+        0xc43f, // (12, 1087) 194
+        0xcc3f, // (12, 3135) 195
+        0xc23f, // (12,  575) 196
+        0xca3f, // (12, 2623) 197
+        0xc63f, // (12, 1599) 198
+        0xce3f, // (12, 3647) 199
+        0xc13f, // (12,  319) 200
+        0xc93f, // (12, 2367) 201
+        0xc53f, // (12, 1343) 202
+        0xcd3f, // (12, 3391) 203
+        0xc33f, // (12,  831) 204
+        0xcb3f, // (12, 2879) 205
+        0xc73f, // (12, 1855) 206
+        0xcf3f, // (12, 3903) 207
+        0xc0bf, // (12,  191) 208
+        0xc8bf, // (12, 2239) 209
+        0xc4bf, // (12, 1215) 210
+        0xccbf, // (12, 3263) 211
+        0xc2bf, // (12,  703) 212
+        0xcabf, // (12, 2751) 213
+        0xc6bf, // (12, 1727) 214
+        0xcebf, // (12, 3775) 215
+        0xc1bf, // (12,  447) 216
+        0xc9bf, // (12, 2495) 217
+        0xc5bf, // (12, 1471) 218
+        0xcdbf, // (12, 3519) 219
+        0xc3bf, // (12,  959) 220
+        0xcbbf, // (12, 3007) 221
+        0xc7bf, // (12, 1983) 222
+        0xcfbf, // (12, 4031) 223
+        0xc07f, // (12,  127) 224
+        0xc87f, // (12, 2175) 225
+        0xc47f, // (12, 1151) 226
+        0xcc7f, // (12, 3199) 227
+        0xc27f, // (12,  639) 228
+        0xca7f, // (12, 2687) 229
+        0xc67f, // (12, 1663) 230
+        0xce7f, // (12, 3711) 231
+        0xc17f, // (12,  383) 232
+        0xc97f, // (12, 2431) 233
+        0xc57f, // (12, 1407) 234
+        0xcd7f, // (12, 3455) 235
+        0xc37f, // (12,  895) 236
+        0xcb7f, // (12, 2943) 237
+        0xc77f, // (12, 1919) 238
+        0xcf7f, // (12, 3967) 239
+        0xc0ff, // (12,  255) 240
+        0xc8ff, // (12, 2303) 241
+        0xc4ff, // (12, 1279) 242
+        0xccff, // (12, 3327) 243
+        0xc2ff, // (12,  767) 244
+        0xcaff, // (12, 2815) 245
+        0xc6ff, // (12, 1791) 246
+        0xceff, // (12, 3839) 247
+        0xc1ff, // (12,  511) 248
+        0xc9ff, // (12, 2559) 249
+        0xc5ff, // (12, 1535) 250
+        0xcdff, // (12, 3583) 251
+        0xc3ff, // (12, 1023) 252
+        0xcbff, // (12, 3071) 253
+        0xc7ff, // (12, 2047) 254
+        0xcfff, // (12, 4095) 255
+    ],
+    // (table 12 of 22) (steady 12 of 16) (phase = 0.781250000 = 25.0 / 32.0)
+    // entropy:    4.4680486273043946710
+    // avg_length: 4.5521643785256946657; max_length = 12; num_symbols = 256
+    [
+        //table, // (4 bits,  12 bits) symbol
+        //entry, // (length, codeword) [byte]
+        0x807b, // ( 8,  123)   0
+        0x4006, // ( 4,    6)   1
+        0x601d, // ( 6,   29)   2
+        0x2000, // ( 2,    0)   3
+        0x80fb, // ( 8,  251)   4
+        0x400e, // ( 4,   14)   5
+        0x700b, // ( 7,   11)   6
+        0x3002, // ( 3,    2)   7
+        0x9097, // ( 9,  151)   8
+        0x5005, // ( 5,    5)   9
+        0x8007, // ( 8,    7)  10
+        0x4001, // ( 4,    1)  11
+        0x9197, // ( 9,  407)  12
+        0x603d, // ( 6,   61)  13
+        0x8087, // ( 8,  135)  14
+        0x4009, // ( 4,    9)  15
+        0xa177, // (10,  375)  16
+        0x704b, // ( 7,   75)  17
+        0x9057, // ( 9,   87)  18
+        0x5015, // ( 5,   21)  19
+        0xb34f, // (11,  847)  20
+        0x702b, // ( 7,   43)  21
+        0x9157, // ( 9,  343)  22
+        0x500d, // ( 5,   13)  23
+        0xc72f, // (12, 1839)  24
+        0x8047, // ( 8,   71)  25
+        0xa377, // (10,  887)  26
+        0x6003, // ( 6,    3)  27
+        0xcf2f, // (12, 3887)  28
+        0x80c7, // ( 8,  199)  29
+        0xa0f7, // (10,  247)  30
+        0x6023, // ( 6,   35)  31
+        0xc0af, // (12,  175)  32
+        0x8027, // ( 8,   39)  33
+        0xa2f7, // (10,  759)  34
+        0x6013, // ( 6,   19)  35
+        0xc8af, // (12, 2223)  36
+        0x80a7, // ( 8,  167)  37
+        0xa1f7, // (10,  503)  38
+        0x6033, // ( 6,   51)  39
+        0xc4af, // (12, 1199)  40
+        0x90d7, // ( 9,  215)  41
+        0xb74f, // (11, 1871)  42
+        0x706b, // ( 7,  107)  43
+        0xccaf, // (12, 3247)  44
+        0x91d7, // ( 9,  471)  45
+        0xb0cf, // (11,  207)  46
+        0x701b, // ( 7,   27)  47
+        0xc2af, // (12,  687)  48
+        0xa3f7, // (10, 1015)  49
+        0xcaaf, // (12, 2735)  50
+        0x9037, // ( 9,   55)  51
+        0xc6af, // (12, 1711)  52
+        0xa00f, // (10,   15)  53
+        0xceaf, // (12, 3759)  54
+        0x9137, // ( 9,  311)  55
+        0xc1af, // (12,  431)  56
+        0xb4cf, // (11, 1231)  57
+        0xc9af, // (12, 2479)  58
+        0xa20f, // (10,  527)  59
+        0xc5af, // (12, 1455)  60
+        0xb2cf, // (11,  719)  61
+        0xcdaf, // (12, 3503)  62
+        0xa10f, // (10,  271)  63
+        0xc3af, // (12,  943)  64
+        0x90b7, // ( 9,  183)  65
+        0xb6cf, // (11, 1743)  66
+        0x705b, // ( 7,   91)  67
+        0xcbaf, // (12, 2991)  68
+        0x91b7, // ( 9,  439)  69
+        0xb1cf, // (11,  463)  70
+        0x703b, // ( 7,   59)  71
+        0xc7af, // (12, 1967)  72
+        0xa30f, // (10,  783)  73
+        0xcfaf, // (12, 4015)  74
+        0x8067, // ( 8,  103)  75
+        0xc06f, // (12,  111)  76
+        0xa08f, // (10,  143)  77
+        0xc86f, // (12, 2159)  78
+        0x9077, // ( 9,  119)  79
+        0xc46f, // (12, 1135)  80
+        0xb5cf, // (11, 1487)  81
+        0xcc6f, // (12, 3183)  82
+        0xa28f, // (10,  655)  83
+        0xc26f, // (12,  623)  84
+        0xb3cf, // (11,  975)  85
+        0xca6f, // (12, 2671)  86
+        0xa18f, // (10,  399)  87
+        0xc66f, // (12, 1647)  88
+        0xce6f, // (12, 3695)  89
+        0xc16f, // (12,  367)  90
+        0xb7cf, // (11, 1999)  91
+        0xc96f, // (12, 2415)  92
+        0xc56f, // (12, 1391)  93
+        0xcd6f, // (12, 3439)  94
+        0xb02f, // (11,   47)  95
+        0xc36f, // (12,  879)  96
+        0xcb6f, // (12, 2927)  97
+        0xc76f, // (12, 1903)  98
+        0xb42f, // (11, 1071)  99
+        0xcf6f, // (12, 3951) 100
+        0xc0ef, // (12,  239) 101
+        0xc8ef, // (12, 2287) 102
+        0xb22f, // (11,  559) 103
+        0xc4ef, // (12, 1263) 104
+        0xccef, // (12, 3311) 105
+        0xc2ef, // (12,  751) 106
+        0xcaef, // (12, 2799) 107
+        0xc6ef, // (12, 1775) 108
+        0xceef, // (12, 3823) 109
+        0xc1ef, // (12,  495) 110
+        0xc9ef, // (12, 2543) 111
+        0xc5ef, // (12, 1519) 112
+        0xcdef, // (12, 3567) 113
+        0xc3ef, // (12, 1007) 114
+        0xcbef, // (12, 3055) 115
+        0xc7ef, // (12, 2031) 116
+        0xcfef, // (12, 4079) 117
+        0xc01f, // (12,   31) 118
+        0xc81f, // (12, 2079) 119
+        0xc41f, // (12, 1055) 120
+        0xcc1f, // (12, 3103) 121
+        0xc21f, // (12,  543) 122
+        0xca1f, // (12, 2591) 123
+        0xc61f, // (12, 1567) 124
+        0xce1f, // (12, 3615) 125
+        0xc11f, // (12,  287) 126
+        0xc91f, // (12, 2335) 127
+        0xc51f, // (12, 1311) 128
+        0xa38f, // (10,  911) 129
+        0xcd1f, // (12, 3359) 130
+        0x80e7, // ( 8,  231) 131
+        0xc31f, // (12,  799) 132
+        0xa04f, // (10,   79) 133
+        0xcb1f, // (12, 2847) 134
+        0x8017, // ( 8,   23) 135
+        0xc71f, // (12, 1823) 136
+        0xb62f, // (11, 1583) 137
+        0xcf1f, // (12, 3871) 138
+        0xa24f, // (10,  591) 139
+        0xc09f, // (12,  159) 140
+        0xb12f, // (11,  303) 141
+        0xc89f, // (12, 2207) 142
+        0xa14f, // (10,  335) 143
+        0xc49f, // (12, 1183) 144
+        0xcc9f, // (12, 3231) 145
+        0xc29f, // (12,  671) 146
+        0xb52f, // (11, 1327) 147
+        0xca9f, // (12, 2719) 148
+        0xc69f, // (12, 1695) 149
+        0xce9f, // (12, 3743) 150
+        0xb32f, // (11,  815) 151
+        0xc19f, // (12,  415) 152
+        0xc99f, // (12, 2463) 153
+        0xc59f, // (12, 1439) 154
+        0xcd9f, // (12, 3487) 155
+        0xc39f, // (12,  927) 156
+        0xcb9f, // (12, 2975) 157
+        0xc79f, // (12, 1951) 158
+        0xcf9f, // (12, 3999) 159
+        0xc05f, // (12,   95) 160
+        0xc85f, // (12, 2143) 161
+        0xc45f, // (12, 1119) 162
+        0xcc5f, // (12, 3167) 163
+        0xc25f, // (12,  607) 164
+        0xca5f, // (12, 2655) 165
+        0xc65f, // (12, 1631) 166
+        0xce5f, // (12, 3679) 167
+        0xc15f, // (12,  351) 168
+        0xc95f, // (12, 2399) 169
+        0xc55f, // (12, 1375) 170
+        0xcd5f, // (12, 3423) 171
+        0xc35f, // (12,  863) 172
+        0xcb5f, // (12, 2911) 173
+        0xc75f, // (12, 1887) 174
+        0xcf5f, // (12, 3935) 175
+        0xc0df, // (12,  223) 176
+        0xc8df, // (12, 2271) 177
+        0xc4df, // (12, 1247) 178
+        0xccdf, // (12, 3295) 179
+        0xc2df, // (12,  735) 180
+        0xcadf, // (12, 2783) 181
+        0xc6df, // (12, 1759) 182
+        0xcedf, // (12, 3807) 183
+        0xc1df, // (12,  479) 184
+        0xc9df, // (12, 2527) 185
+        0xc5df, // (12, 1503) 186
+        0xcddf, // (12, 3551) 187
+        0xc3df, // (12,  991) 188
+        0xcbdf, // (12, 3039) 189
+        0xc7df, // (12, 2015) 190
+        0xcfdf, // (12, 4063) 191
+        0xc03f, // (12,   63) 192
+        0xc83f, // (12, 2111) 193
+        0xc43f, // (12, 1087) 194
+        0xcc3f, // (12, 3135) 195
+        0xc23f, // (12,  575) 196
+        0xca3f, // (12, 2623) 197
+        0xc63f, // (12, 1599) 198
+        0xce3f, // (12, 3647) 199
+        0xc13f, // (12,  319) 200
+        0xc93f, // (12, 2367) 201
+        0xc53f, // (12, 1343) 202
+        0xcd3f, // (12, 3391) 203
+        0xc33f, // (12,  831) 204
+        0xcb3f, // (12, 2879) 205
+        0xc73f, // (12, 1855) 206
+        0xcf3f, // (12, 3903) 207
+        0xc0bf, // (12,  191) 208
+        0xc8bf, // (12, 2239) 209
+        0xc4bf, // (12, 1215) 210
+        0xccbf, // (12, 3263) 211
+        0xc2bf, // (12,  703) 212
+        0xcabf, // (12, 2751) 213
+        0xc6bf, // (12, 1727) 214
+        0xcebf, // (12, 3775) 215
+        0xc1bf, // (12,  447) 216
+        0xc9bf, // (12, 2495) 217
+        0xc5bf, // (12, 1471) 218
+        0xcdbf, // (12, 3519) 219
+        0xc3bf, // (12,  959) 220
+        0xcbbf, // (12, 3007) 221
+        0xc7bf, // (12, 1983) 222
+        0xcfbf, // (12, 4031) 223
+        0xc07f, // (12,  127) 224
+        0xc87f, // (12, 2175) 225
+        0xc47f, // (12, 1151) 226
+        0xcc7f, // (12, 3199) 227
+        0xc27f, // (12,  639) 228
+        0xca7f, // (12, 2687) 229
+        0xc67f, // (12, 1663) 230
+        0xce7f, // (12, 3711) 231
+        0xc17f, // (12,  383) 232
+        0xc97f, // (12, 2431) 233
+        0xc57f, // (12, 1407) 234
+        0xcd7f, // (12, 3455) 235
+        0xc37f, // (12,  895) 236
+        0xcb7f, // (12, 2943) 237
+        0xc77f, // (12, 1919) 238
+        0xcf7f, // (12, 3967) 239
+        0xc0ff, // (12,  255) 240
+        0xc8ff, // (12, 2303) 241
+        0xc4ff, // (12, 1279) 242
+        0xccff, // (12, 3327) 243
+        0xc2ff, // (12,  767) 244
+        0xcaff, // (12, 2815) 245
+        0xc6ff, // (12, 1791) 246
+        0xceff, // (12, 3839) 247
+        0xc1ff, // (12,  511) 248
+        0xc9ff, // (12, 2559) 249
+        0xc5ff, // (12, 1535) 250
+        0xcdff, // (12, 3583) 251
+        0xc3ff, // (12, 1023) 252
+        0xcbff, // (12, 3071) 253
+        0xc7ff, // (12, 2047) 254
+        0xcfff, // (12, 4095) 255
+    ],
+    // (table 13 of 22) (steady 13 of 16) (phase = 0.843750000 = 27.0 / 32.0)
+    // entropy:    4.4684687952964843305
+    // avg_length: 4.5509169030369793774; max_length = 12; num_symbols = 256
+    [
+        //table, // (4 bits,  12 bits) symbol
+        //entry, // (length, codeword) [byte]
+        0x803b, // ( 8,   59)   0
+        0x4006, // ( 4,    6)   1
+        0x7033, // ( 7,   51)   2
+        0x3002, // ( 3,    2)   3
+        0x80bb, // ( 8,  187)   4
+        0x400e, // ( 4,   14)   5
+        0x7073, // ( 7,  115)   6
+        0x2000, // ( 2,    0)   7
+        0xa0f7, // (10,  247)   8
+        0x601d, // ( 6,   29)   9
+        0x807b, // ( 8,  123)  10
+        0x4001, // ( 4,    1)  11
+        0xa2f7, // (10,  759)  12
+        0x5005, // ( 5,    5)  13
+        0x80fb, // ( 8,  251)  14
+        0x4009, // ( 4,    9)  15
+        0xb34f, // (11,  847)  16
+        0x700b, // ( 7,   11)  17
+        0x9057, // ( 9,   87)  18
+        0x5015, // ( 5,   21)  19
+        0xb74f, // (11, 1871)  20
+        0x704b, // ( 7,   75)  21
+        0x9157, // ( 9,  343)  22
+        0x500d, // ( 5,   13)  23
+        0xc72f, // (12, 1839)  24
+        0x8007, // ( 8,    7)  25
+        0xa1f7, // (10,  503)  26
+        0x603d, // ( 6,   61)  27
+        0xcf2f, // (12, 3887)  28
+        0x8087, // ( 8,  135)  29
+        0xa3f7, // (10, 1015)  30
+        0x6003, // ( 6,    3)  31
+        0xc0af, // (12,  175)  32
+        0x8047, // ( 8,   71)  33
+        0xa00f, // (10,   15)  34
+        0x6023, // ( 6,   35)  35
+        0xc8af, // (12, 2223)  36
+        0x80c7, // ( 8,  199)  37
+        0xa20f, // (10,  527)  38
+        0x6013, // ( 6,   19)  39
+        0xc4af, // (12, 1199)  40
+        0x90d7, // ( 9,  215)  41
+        0xb0cf, // (11,  207)  42
+        0x702b, // ( 7,   43)  43
+        0xccaf, // (12, 3247)  44
+        0x91d7, // ( 9,  471)  45
+        0xb4cf, // (11, 1231)  46
+        0x706b, // ( 7,  107)  47
+        0xc2af, // (12,  687)  48
+        0xa10f, // (10,  271)  49
+        0xcaaf, // (12, 2735)  50
+        0x8027, // ( 8,   39)  51
+        0xc6af, // (12, 1711)  52
+        0xa30f, // (10,  783)  53
+        0xceaf, // (12, 3759)  54
+        0x80a7, // ( 8,  167)  55
+        0xc1af, // (12,  431)  56
+        0xb2cf, // (11,  719)  57
+        0xc9af, // (12, 2479)  58
+        0xa08f, // (10,  143)  59
+        0xc5af, // (12, 1455)  60
+        0xb6cf, // (11, 1743)  61
+        0xcdaf, // (12, 3503)  62
+        0xa28f, // (10,  655)  63
+        0xc3af, // (12,  943)  64
+        0x9037, // ( 9,   55)  65
+        0xb1cf, // (11,  463)  66
+        0x701b, // ( 7,   27)  67
+        0xcbaf, // (12, 2991)  68
+        0x9137, // ( 9,  311)  69
+        0xb5cf, // (11, 1487)  70
+        0x705b, // ( 7,   91)  71
+        0xc7af, // (12, 1967)  72
+        0xa18f, // (10,  399)  73
+        0xcfaf, // (12, 4015)  74
+        0x8067, // ( 8,  103)  75
+        0xc06f, // (12,  111)  76
+        0xa38f, // (10,  911)  77
+        0xc86f, // (12, 2159)  78
+        0x80e7, // ( 8,  231)  79
+        0xc46f, // (12, 1135)  80
+        0xb3cf, // (11,  975)  81
+        0xcc6f, // (12, 3183)  82
+        0x90b7, // ( 9,  183)  83
+        0xc26f, // (12,  623)  84
+        0xb7cf, // (11, 1999)  85
+        0xca6f, // (12, 2671)  86
+        0x91b7, // ( 9,  439)  87
+        0xc66f, // (12, 1647)  88
+        0xce6f, // (12, 3695)  89
+        0xc16f, // (12,  367)  90
+        0xb02f, // (11,   47)  91
+        0xc96f, // (12, 2415)  92
+        0xc56f, // (12, 1391)  93
+        0xcd6f, // (12, 3439)  94
+        0xb42f, // (11, 1071)  95
+        0xc36f, // (12,  879)  96
+        0xcb6f, // (12, 2927)  97
+        0xc76f, // (12, 1903)  98
+        0xb22f, // (11,  559)  99
+        0xcf6f, // (12, 3951) 100
+        0xc0ef, // (12,  239) 101
+        0xc8ef, // (12, 2287) 102
+        0xb62f, // (11, 1583) 103
+        0xc4ef, // (12, 1263) 104
+        0xccef, // (12, 3311) 105
+        0xc2ef, // (12,  751) 106
+        0xcaef, // (12, 2799) 107
+        0xc6ef, // (12, 1775) 108
+        0xceef, // (12, 3823) 109
+        0xc1ef, // (12,  495) 110
+        0xc9ef, // (12, 2543) 111
+        0xc5ef, // (12, 1519) 112
+        0xcdef, // (12, 3567) 113
+        0xc3ef, // (12, 1007) 114
+        0xcbef, // (12, 3055) 115
+        0xc7ef, // (12, 2031) 116
+        0xcfef, // (12, 4079) 117
+        0xc01f, // (12,   31) 118
+        0xc81f, // (12, 2079) 119
+        0xc41f, // (12, 1055) 120
+        0xcc1f, // (12, 3103) 121
+        0xc21f, // (12,  543) 122
+        0xca1f, // (12, 2591) 123
+        0xc61f, // (12, 1567) 124
+        0xce1f, // (12, 3615) 125
+        0xc11f, // (12,  287) 126
+        0xc91f, // (12, 2335) 127
+        0xc51f, // (12, 1311) 128
+        0xa04f, // (10,   79) 129
+        0xcd1f, // (12, 3359) 130
+        0x8017, // ( 8,   23) 131
+        0xc31f, // (12,  799) 132
+        0xa24f, // (10,  591) 133
+        0xcb1f, // (12, 2847) 134
+        0x8097, // ( 8,  151) 135
+        0xc71f, // (12, 1823) 136
+        0xb12f, // (11,  303) 137
+        0xcf1f, // (12, 3871) 138
+        0x9077, // ( 9,  119) 139
+        0xc09f, // (12,  159) 140
+        0xb52f, // (11, 1327) 141
+        0xc89f, // (12, 2207) 142
+        0x9177, // ( 9,  375) 143
+        0xc49f, // (12, 1183) 144
+        0xcc9f, // (12, 3231) 145
+        0xc29f, // (12,  671) 146
+        0xb32f, // (11,  815) 147
+        0xca9f, // (12, 2719) 148
+        0xc69f, // (12, 1695) 149
+        0xce9f, // (12, 3743) 150
+        0xa14f, // (10,  335) 151
+        0xc19f, // (12,  415) 152
+        0xc99f, // (12, 2463) 153
+        0xc59f, // (12, 1439) 154
+        0xcd9f, // (12, 3487) 155
+        0xc39f, // (12,  927) 156
+        0xcb9f, // (12, 2975) 157
+        0xc79f, // (12, 1951) 158
+        0xcf9f, // (12, 3999) 159
+        0xc05f, // (12,   95) 160
+        0xc85f, // (12, 2143) 161
+        0xc45f, // (12, 1119) 162
+        0xcc5f, // (12, 3167) 163
+        0xc25f, // (12,  607) 164
+        0xca5f, // (12, 2655) 165
+        0xc65f, // (12, 1631) 166
+        0xce5f, // (12, 3679) 167
+        0xc15f, // (12,  351) 168
+        0xc95f, // (12, 2399) 169
+        0xc55f, // (12, 1375) 170
+        0xcd5f, // (12, 3423) 171
+        0xc35f, // (12,  863) 172
+        0xcb5f, // (12, 2911) 173
+        0xc75f, // (12, 1887) 174
+        0xcf5f, // (12, 3935) 175
+        0xc0df, // (12,  223) 176
+        0xc8df, // (12, 2271) 177
+        0xc4df, // (12, 1247) 178
+        0xccdf, // (12, 3295) 179
+        0xc2df, // (12,  735) 180
+        0xcadf, // (12, 2783) 181
+        0xc6df, // (12, 1759) 182
+        0xcedf, // (12, 3807) 183
+        0xc1df, // (12,  479) 184
+        0xc9df, // (12, 2527) 185
+        0xc5df, // (12, 1503) 186
+        0xcddf, // (12, 3551) 187
+        0xc3df, // (12,  991) 188
+        0xcbdf, // (12, 3039) 189
+        0xc7df, // (12, 2015) 190
+        0xcfdf, // (12, 4063) 191
+        0xc03f, // (12,   63) 192
+        0xc83f, // (12, 2111) 193
+        0xc43f, // (12, 1087) 194
+        0xcc3f, // (12, 3135) 195
+        0xc23f, // (12,  575) 196
+        0xca3f, // (12, 2623) 197
+        0xc63f, // (12, 1599) 198
+        0xce3f, // (12, 3647) 199
+        0xc13f, // (12,  319) 200
+        0xc93f, // (12, 2367) 201
+        0xc53f, // (12, 1343) 202
+        0xcd3f, // (12, 3391) 203
+        0xc33f, // (12,  831) 204
+        0xcb3f, // (12, 2879) 205
+        0xc73f, // (12, 1855) 206
+        0xcf3f, // (12, 3903) 207
+        0xc0bf, // (12,  191) 208
+        0xc8bf, // (12, 2239) 209
+        0xc4bf, // (12, 1215) 210
+        0xccbf, // (12, 3263) 211
+        0xc2bf, // (12,  703) 212
+        0xcabf, // (12, 2751) 213
+        0xc6bf, // (12, 1727) 214
+        0xcebf, // (12, 3775) 215
+        0xc1bf, // (12,  447) 216
+        0xc9bf, // (12, 2495) 217
+        0xc5bf, // (12, 1471) 218
+        0xcdbf, // (12, 3519) 219
+        0xc3bf, // (12,  959) 220
+        0xcbbf, // (12, 3007) 221
+        0xc7bf, // (12, 1983) 222
+        0xcfbf, // (12, 4031) 223
+        0xc07f, // (12,  127) 224
+        0xc87f, // (12, 2175) 225
+        0xc47f, // (12, 1151) 226
+        0xcc7f, // (12, 3199) 227
+        0xc27f, // (12,  639) 228
+        0xca7f, // (12, 2687) 229
+        0xc67f, // (12, 1663) 230
+        0xce7f, // (12, 3711) 231
+        0xc17f, // (12,  383) 232
+        0xc97f, // (12, 2431) 233
+        0xc57f, // (12, 1407) 234
+        0xcd7f, // (12, 3455) 235
+        0xc37f, // (12,  895) 236
+        0xcb7f, // (12, 2943) 237
+        0xc77f, // (12, 1919) 238
+        0xcf7f, // (12, 3967) 239
+        0xc0ff, // (12,  255) 240
+        0xc8ff, // (12, 2303) 241
+        0xc4ff, // (12, 1279) 242
+        0xccff, // (12, 3327) 243
+        0xc2ff, // (12,  767) 244
+        0xcaff, // (12, 2815) 245
+        0xc6ff, // (12, 1791) 246
+        0xceff, // (12, 3839) 247
+        0xc1ff, // (12,  511) 248
+        0xc9ff, // (12, 2559) 249
+        0xc5ff, // (12, 1535) 250
+        0xcdff, // (12, 3583) 251
+        0xc3ff, // (12, 1023) 252
+        0xcbff, // (12, 3071) 253
+        0xc7ff, // (12, 2047) 254
+        0xcfff, // (12, 4095) 255
+    ],
+    // (table 14 of 22) (steady 14 of 16) (phase = 0.906250000 = 29.0 / 32.0)
+    // entropy:    4.4675179140944036860
+    // avg_length: 4.5477235350841240802; max_length = 12; num_symbols = 256
+    [
+        //table, // (4 bits,  12 bits) symbol
+        //entry, // (length, codeword) [byte]
+        0x9017, // ( 9,   23)   0
+        0x4006, // ( 4,    6)   1
+        0x7033, // ( 7,   51)   2
+        0x3002, // ( 3,    2)   3
+        0x9117, // ( 9,  279)   4
+        0x400e, // ( 4,   14)   5
+        0x7073, // ( 7,  115)   6
+        0x2000, // ( 2,    0)   7
+        0xa177, // (10,  375)   8
+        0x601d, // ( 6,   29)   9
+        0x803b, // ( 8,   59)  10
+        0x4001, // ( 4,    1)  11
+        0xa377, // (10,  887)  12
+        0x5005, // ( 5,    5)  13
+        0x80bb, // ( 8,  187)  14
+        0x4009, // ( 4,    9)  15
+        0xb0cf, // (11,  207)  16
+        0x700b, // ( 7,   11)  17
+        0x9097, // ( 9,  151)  18
+        0x5015, // ( 5,   21)  19
+        0xb4cf, // (11, 1231)  20
+        0x704b, // ( 7,   75)  21
+        0x9197, // ( 9,  407)  22
+        0x500d, // ( 5,   13)  23
+        0xc4af, // (12, 1199)  24
+        0x807b, // ( 8,  123)  25
+        0xa0f7, // (10,  247)  26
+        0x603d, // ( 6,   61)  27
+        0xccaf, // (12, 3247)  28
+        0x80fb, // ( 8,  251)  29
+        0xa2f7, // (10,  759)  30
+        0x6003, // ( 6,    3)  31
+        0xc2af, // (12,  687)  32
+        0x8007, // ( 8,    7)  33
+        0xa1f7, // (10,  503)  34
+        0x6023, // ( 6,   35)  35
+        0xcaaf, // (12, 2735)  36
+        0x8087, // ( 8,  135)  37
+        0xa3f7, // (10, 1015)  38
+        0x6013, // ( 6,   19)  39
+        0xc6af, // (12, 1711)  40
+        0x9057, // ( 9,   87)  41
+        0xb2cf, // (11,  719)  42
+        0x702b, // ( 7,   43)  43
+        0xceaf, // (12, 3759)  44
+        0x9157, // ( 9,  343)  45
+        0xb6cf, // (11, 1743)  46
+        0x706b, // ( 7,  107)  47
+        0xc1af, // (12,  431)  48
+        0xa00f, // (10,   15)  49
+        0xc9af, // (12, 2479)  50
+        0x8047, // ( 8,   71)  51
+        0xc5af, // (12, 1455)  52
+        0xa20f, // (10,  527)  53
+        0xcdaf, // (12, 3503)  54
+        0x80c7, // ( 8,  199)  55
+        0xc3af, // (12,  943)  56
+        0xb1cf, // (11,  463)  57
+        0xcbaf, // (12, 2991)  58
+        0xa10f, // (10,  271)  59
+        0xc7af, // (12, 1967)  60
+        0xb5cf, // (11, 1487)  61
+        0xcfaf, // (12, 4015)  62
+        0x90d7, // ( 9,  215)  63
+        0xc06f, // (12,  111)  64
+        0x91d7, // ( 9,  471)  65
+        0xb3cf, // (11,  975)  66
+        0x701b, // ( 7,   27)  67
+        0xc86f, // (12, 2159)  68
+        0x9037, // ( 9,   55)  69
+        0xb7cf, // (11, 1999)  70
+        0x705b, // ( 7,   91)  71
+        0xc46f, // (12, 1135)  72
+        0xa30f, // (10,  783)  73
+        0xcc6f, // (12, 3183)  74
+        0x8027, // ( 8,   39)  75
+        0xc26f, // (12,  623)  76
+        0xa08f, // (10,  143)  77
+        0xca6f, // (12, 2671)  78
+        0x80a7, // ( 8,  167)  79
+        0xc66f, // (12, 1647)  80
+        0xb02f, // (11,   47)  81
+        0xce6f, // (12, 3695)  82
+        0x9137, // ( 9,  311)  83
+        0xc16f, // (12,  367)  84
+        0xb42f, // (11, 1071)  85
+        0xc96f, // (12, 2415)  86
+        0x90b7, // ( 9,  183)  87
+        0xc56f, // (12, 1391)  88
+        0xcd6f, // (12, 3439)  89
+        0xc36f, // (12,  879)  90
+        0xb22f, // (11,  559)  91
+        0xcb6f, // (12, 2927)  92
+        0xc76f, // (12, 1903)  93
+        0xcf6f, // (12, 3951)  94
+        0xa28f, // (10,  655)  95
+        0xc0ef, // (12,  239)  96
+        0xc8ef, // (12, 2287)  97
+        0xc4ef, // (12, 1263)  98
+        0xa18f, // (10,  399)  99
+        0xccef, // (12, 3311) 100
+        0xc2ef, // (12,  751) 101
+        0xcaef, // (12, 2799) 102
+        0xa38f, // (10,  911) 103
+        0xc6ef, // (12, 1775) 104
+        0xceef, // (12, 3823) 105
+        0xc1ef, // (12,  495) 106
+        0xc9ef, // (12, 2543) 107
+        0xc5ef, // (12, 1519) 108
+        0xcdef, // (12, 3567) 109
+        0xc3ef, // (12, 1007) 110
+        0xb62f, // (11, 1583) 111
+        0xcbef, // (12, 3055) 112
+        0xc7ef, // (12, 2031) 113
+        0xcfef, // (12, 4079) 114
+        0xc01f, // (12,   31) 115
+        0xc81f, // (12, 2079) 116
+        0xc41f, // (12, 1055) 117
+        0xcc1f, // (12, 3103) 118
+        0xc21f, // (12,  543) 119
+        0xca1f, // (12, 2591) 120
+        0xc61f, // (12, 1567) 121
+        0xce1f, // (12, 3615) 122
+        0xc11f, // (12,  287) 123
+        0xc91f, // (12, 2335) 124
+        0xc51f, // (12, 1311) 125
+        0xcd1f, // (12, 3359) 126
+        0xc31f, // (12,  799) 127
+        0xcb1f, // (12, 2847) 128
+        0xa04f, // (10,   79) 129
+        0xc71f, // (12, 1823) 130
+        0x8067, // ( 8,  103) 131
+        0xcf1f, // (12, 3871) 132
+        0xa24f, // (10,  591) 133
+        0xc09f, // (12,  159) 134
+        0x80e7, // ( 8,  231) 135
+        0xc89f, // (12, 2207) 136
+        0xb12f, // (11,  303) 137
+        0xc49f, // (12, 1183) 138
+        0x91b7, // ( 9,  439) 139
+        0xcc9f, // (12, 3231) 140
+        0xb52f, // (11, 1327) 141
+        0xc29f, // (12,  671) 142
+        0x9077, // ( 9,  119) 143
+        0xca9f, // (12, 2719) 144
+        0xc69f, // (12, 1695) 145
+        0xce9f, // (12, 3743) 146
+        0xa14f, // (10,  335) 147
+        0xc19f, // (12,  415) 148
+        0xc99f, // (12, 2463) 149
+        0xc59f, // (12, 1439) 150
+        0xa34f, // (10,  847) 151
+        0xcd9f, // (12, 3487) 152
+        0xc39f, // (12,  927) 153
+        0xcb9f, // (12, 2975) 154
+        0xc79f, // (12, 1951) 155
+        0xcf9f, // (12, 3999) 156
+        0xc05f, // (12,   95) 157
+        0xc85f, // (12, 2143) 158
+        0xb32f, // (11,  815) 159
+        0xc45f, // (12, 1119) 160
+        0xcc5f, // (12, 3167) 161
+        0xc25f, // (12,  607) 162
+        0xb72f, // (11, 1839) 163
+        0xca5f, // (12, 2655) 164
+        0xc65f, // (12, 1631) 165
+        0xce5f, // (12, 3679) 166
+        0xb0af, // (11,  175) 167
+        0xc15f, // (12,  351) 168
+        0xc95f, // (12, 2399) 169
+        0xc55f, // (12, 1375) 170
+        0xcd5f, // (12, 3423) 171
+        0xc35f, // (12,  863) 172
+        0xcb5f, // (12, 2911) 173
+        0xc75f, // (12, 1887) 174
+        0xcf5f, // (12, 3935) 175
+        0xc0df, // (12,  223) 176
+        0xc8df, // (12, 2271) 177
+        0xc4df, // (12, 1247) 178
+        0xccdf, // (12, 3295) 179
+        0xc2df, // (12,  735) 180
+        0xcadf, // (12, 2783) 181
+        0xc6df, // (12, 1759) 182
+        0xcedf, // (12, 3807) 183
+        0xc1df, // (12,  479) 184
+        0xc9df, // (12, 2527) 185
+        0xc5df, // (12, 1503) 186
+        0xcddf, // (12, 3551) 187
+        0xc3df, // (12,  991) 188
+        0xcbdf, // (12, 3039) 189
+        0xc7df, // (12, 2015) 190
+        0xcfdf, // (12, 4063) 191
+        0xc03f, // (12,   63) 192
+        0xc83f, // (12, 2111) 193
+        0xc43f, // (12, 1087) 194
+        0xcc3f, // (12, 3135) 195
+        0xc23f, // (12,  575) 196
+        0xca3f, // (12, 2623) 197
+        0xc63f, // (12, 1599) 198
+        0xce3f, // (12, 3647) 199
+        0xc13f, // (12,  319) 200
+        0xc93f, // (12, 2367) 201
+        0xc53f, // (12, 1343) 202
+        0xcd3f, // (12, 3391) 203
+        0xc33f, // (12,  831) 204
+        0xcb3f, // (12, 2879) 205
+        0xc73f, // (12, 1855) 206
+        0xcf3f, // (12, 3903) 207
+        0xc0bf, // (12,  191) 208
+        0xc8bf, // (12, 2239) 209
+        0xc4bf, // (12, 1215) 210
+        0xccbf, // (12, 3263) 211
+        0xc2bf, // (12,  703) 212
+        0xcabf, // (12, 2751) 213
+        0xc6bf, // (12, 1727) 214
+        0xcebf, // (12, 3775) 215
+        0xc1bf, // (12,  447) 216
+        0xc9bf, // (12, 2495) 217
+        0xc5bf, // (12, 1471) 218
+        0xcdbf, // (12, 3519) 219
+        0xc3bf, // (12,  959) 220
+        0xcbbf, // (12, 3007) 221
+        0xc7bf, // (12, 1983) 222
+        0xcfbf, // (12, 4031) 223
+        0xc07f, // (12,  127) 224
+        0xc87f, // (12, 2175) 225
+        0xc47f, // (12, 1151) 226
+        0xcc7f, // (12, 3199) 227
+        0xc27f, // (12,  639) 228
+        0xca7f, // (12, 2687) 229
+        0xc67f, // (12, 1663) 230
+        0xce7f, // (12, 3711) 231
+        0xc17f, // (12,  383) 232
+        0xc97f, // (12, 2431) 233
+        0xc57f, // (12, 1407) 234
+        0xcd7f, // (12, 3455) 235
+        0xc37f, // (12,  895) 236
+        0xcb7f, // (12, 2943) 237
+        0xc77f, // (12, 1919) 238
+        0xcf7f, // (12, 3967) 239
+        0xc0ff, // (12,  255) 240
+        0xc8ff, // (12, 2303) 241
+        0xc4ff, // (12, 1279) 242
+        0xccff, // (12, 3327) 243
+        0xc2ff, // (12,  767) 244
+        0xcaff, // (12, 2815) 245
+        0xc6ff, // (12, 1791) 246
+        0xceff, // (12, 3839) 247
+        0xc1ff, // (12,  511) 248
+        0xc9ff, // (12, 2559) 249
+        0xc5ff, // (12, 1535) 250
+        0xcdff, // (12, 3583) 251
+        0xc3ff, // (12, 1023) 252
+        0xcbff, // (12, 3071) 253
+        0xc7ff, // (12, 2047) 254
+        0xcfff, // (12, 4095) 255
+    ],
+    // (table 15 of 22) (steady 15 of 16) (phase = 0.968750000 = 31.0 / 32.0)
+    // entropy:    4.4653007097343397902
+    // avg_length: 4.5480722016259509388; max_length = 12; num_symbols = 256
+    [
+        //table, // (4 bits,  12 bits) symbol
+        //entry, // (length, codeword) [byte]
+        0x9017, // ( 9,   23)   0
+        0x4006, // ( 4,    6)   1
+        0x7033, // ( 7,   51)   2
+        0x3002, // ( 3,    2)   3
+        0x9117, // ( 9,  279)   4
+        0x400e, // ( 4,   14)   5
+        0x7073, // ( 7,  115)   6
+        0x2000, // ( 2,    0)   7
+        0xa0f7, // (10,  247)   8
+        0x601d, // ( 6,   29)   9
+        0x803b, // ( 8,   59)  10
+        0x4001, // ( 4,    1)  11
+        0xa2f7, // (10,  759)  12
+        0x5005, // ( 5,    5)  13
+        0x80bb, // ( 8,  187)  14
+        0x4009, // ( 4,    9)  15
+        0xb0cf, // (11,  207)  16
+        0x700b, // ( 7,   11)  17
+        0x9097, // ( 9,  151)  18
+        0x5015, // ( 5,   21)  19
+        0xb4cf, // (11, 1231)  20
+        0x704b, // ( 7,   75)  21
+        0x9197, // ( 9,  407)  22
+        0x500d, // ( 5,   13)  23
+        0xc0af, // (12,  175)  24
+        0x807b, // ( 8,  123)  25
+        0xb2cf, // (11,  719)  26
+        0x603d, // ( 6,   61)  27
+        0xc8af, // (12, 2223)  28
+        0x80fb, // ( 8,  251)  29
+        0xa1f7, // (10,  503)  30
+        0x6003, // ( 6,    3)  31
+        0xc4af, // (12, 1199)  32
+        0x8007, // ( 8,    7)  33
+        0xb6cf, // (11, 1743)  34
+        0x6023, // ( 6,   35)  35
+        0xccaf, // (12, 3247)  36
+        0x8087, // ( 8,  135)  37
+        0xa3f7, // (10, 1015)  38
+        0x6013, // ( 6,   19)  39
+        0xc2af, // (12,  687)  40
+        0x9057, // ( 9,   87)  41
+        0xcaaf, // (12, 2735)  42
+        0x702b, // ( 7,   43)  43
+        0xc6af, // (12, 1711)  44
+        0x9157, // ( 9,  343)  45
+        0xb1cf, // (11,  463)  46
+        0x706b, // ( 7,  107)  47
+        0xceaf, // (12, 3759)  48
+        0xa00f, // (10,   15)  49
+        0xc1af, // (12,  431)  50
+        0x8047, // ( 8,   71)  51
+        0xc9af, // (12, 2479)  52
+        0xa20f, // (10,  527)  53
+        0xc5af, // (12, 1455)  54
+        0x80c7, // ( 8,  199)  55
+        0xcdaf, // (12, 3503)  56
+        0xb5cf, // (11, 1487)  57
+        0xc3af, // (12,  943)  58
+        0x90d7, // ( 9,  215)  59
+        0xcbaf, // (12, 2991)  60
+        0xb3cf, // (11,  975)  61
+        0xc7af, // (12, 1967)  62
+        0x91d7, // ( 9,  471)  63
+        0xcfaf, // (12, 4015)  64
+        0x9037, // ( 9,   55)  65
+        0xc06f, // (12,  111)  66
+        0x701b, // ( 7,   27)  67
+        0xc86f, // (12, 2159)  68
+        0x9137, // ( 9,  311)  69
+        0xb7cf, // (11, 1999)  70
+        0x705b, // ( 7,   91)  71
+        0xc46f, // (12, 1135)  72
+        0xa10f, // (10,  271)  73
+        0xcc6f, // (12, 3183)  74
+        0x8027, // ( 8,   39)  75
+        0xc26f, // (12,  623)  76
+        0xa30f, // (10,  783)  77
+        0xca6f, // (12, 2671)  78
+        0x80a7, // ( 8,  167)  79
+        0xc66f, // (12, 1647)  80
+        0xb02f, // (11,   47)  81
+        0xce6f, // (12, 3695)  82
+        0x90b7, // ( 9,  183)  83
+        0xc16f, // (12,  367)  84
+        0xb42f, // (11, 1071)  85
+        0xc96f, // (12, 2415)  86
+        0x91b7, // ( 9,  439)  87
+        0xc56f, // (12, 1391)  88
+        0xcd6f, // (12, 3439)  89
+        0xc36f, // (12,  879)  90
+        0xa08f, // (10,  143)  91
+        0xcb6f, // (12, 2927)  92
+        0xc76f, // (12, 1903)  93
+        0xcf6f, // (12, 3951)  94
+        0xa28f, // (10,  655)  95
+        0xc0ef, // (12,  239)  96
+        0xc8ef, // (12, 2287)  97
+        0xc4ef, // (12, 1263)  98
+        0xa18f, // (10,  399)  99
+        0xccef, // (12, 3311) 100
+        0xc2ef, // (12,  751) 101
+        0xcaef, // (12, 2799) 102
+        0xa38f, // (10,  911) 103
+        0xc6ef, // (12, 1775) 104
+        0xceef, // (12, 3823) 105
+        0xc1ef, // (12,  495) 106
+        0xc9ef, // (12, 2543) 107
+        0xc5ef, // (12, 1519) 108
+        0xcdef, // (12, 3567) 109
+        0xc3ef, // (12, 1007) 110
+        0xb22f, // (11,  559) 111
+        0xcbef, // (12, 3055) 112
+        0xc7ef, // (12, 2031) 113
+        0xcfef, // (12, 4079) 114
+        0xc01f, // (12,   31) 115
+        0xc81f, // (12, 2079) 116
+        0xc41f, // (12, 1055) 117
+        0xcc1f, // (12, 3103) 118
+        0xc21f, // (12,  543) 119
+        0xca1f, // (12, 2591) 120
+        0xc61f, // (12, 1567) 121
+        0xce1f, // (12, 3615) 122
+        0xc11f, // (12,  287) 123
+        0xc91f, // (12, 2335) 124
+        0xc51f, // (12, 1311) 125
+        0xcd1f, // (12, 3359) 126
+        0xc31f, // (12,  799) 127
+        0xcb1f, // (12, 2847) 128
+        0xa04f, // (10,   79) 129
+        0xc71f, // (12, 1823) 130
+        0x8067, // ( 8,  103) 131
+        0xcf1f, // (12, 3871) 132
+        0xa24f, // (10,  591) 133
+        0xc09f, // (12,  159) 134
+        0x80e7, // ( 8,  231) 135
+        0xc89f, // (12, 2207) 136
+        0xb62f, // (11, 1583) 137
+        0xc49f, // (12, 1183) 138
+        0x9077, // ( 9,  119) 139
+        0xcc9f, // (12, 3231) 140
+        0xb12f, // (11,  303) 141
+        0xc29f, // (12,  671) 142
+        0x9177, // ( 9,  375) 143
+        0xca9f, // (12, 2719) 144
+        0xc69f, // (12, 1695) 145
+        0xce9f, // (12, 3743) 146
+        0xa14f, // (10,  335) 147
+        0xc19f, // (12,  415) 148
+        0xc99f, // (12, 2463) 149
+        0xc59f, // (12, 1439) 150
+        0xa34f, // (10,  847) 151
+        0xcd9f, // (12, 3487) 152
+        0xc39f, // (12,  927) 153
+        0xcb9f, // (12, 2975) 154
+        0xc79f, // (12, 1951) 155
+        0xcf9f, // (12, 3999) 156
+        0xc05f, // (12,   95) 157
+        0xc85f, // (12, 2143) 158
+        0xb52f, // (11, 1327) 159
+        0xc45f, // (12, 1119) 160
+        0xcc5f, // (12, 3167) 161
+        0xc25f, // (12,  607) 162
+        0xb32f, // (11,  815) 163
+        0xca5f, // (12, 2655) 164
+        0xc65f, // (12, 1631) 165
+        0xce5f, // (12, 3679) 166
+        0xb72f, // (11, 1839) 167
+        0xc15f, // (12,  351) 168
+        0xc95f, // (12, 2399) 169
+        0xc55f, // (12, 1375) 170
+        0xcd5f, // (12, 3423) 171
+        0xc35f, // (12,  863) 172
+        0xcb5f, // (12, 2911) 173
+        0xc75f, // (12, 1887) 174
+        0xcf5f, // (12, 3935) 175
+        0xc0df, // (12,  223) 176
+        0xc8df, // (12, 2271) 177
+        0xc4df, // (12, 1247) 178
+        0xccdf, // (12, 3295) 179
+        0xc2df, // (12,  735) 180
+        0xcadf, // (12, 2783) 181
+        0xc6df, // (12, 1759) 182
+        0xcedf, // (12, 3807) 183
+        0xc1df, // (12,  479) 184
+        0xc9df, // (12, 2527) 185
+        0xc5df, // (12, 1503) 186
+        0xcddf, // (12, 3551) 187
+        0xc3df, // (12,  991) 188
+        0xcbdf, // (12, 3039) 189
+        0xc7df, // (12, 2015) 190
+        0xcfdf, // (12, 4063) 191
+        0xc03f, // (12,   63) 192
+        0xc83f, // (12, 2111) 193
+        0xc43f, // (12, 1087) 194
+        0xcc3f, // (12, 3135) 195
+        0xc23f, // (12,  575) 196
+        0xca3f, // (12, 2623) 197
+        0xc63f, // (12, 1599) 198
+        0xce3f, // (12, 3647) 199
+        0xc13f, // (12,  319) 200
+        0xc93f, // (12, 2367) 201
+        0xc53f, // (12, 1343) 202
+        0xcd3f, // (12, 3391) 203
+        0xc33f, // (12,  831) 204
+        0xcb3f, // (12, 2879) 205
+        0xc73f, // (12, 1855) 206
+        0xcf3f, // (12, 3903) 207
+        0xc0bf, // (12,  191) 208
+        0xc8bf, // (12, 2239) 209
+        0xc4bf, // (12, 1215) 210
+        0xccbf, // (12, 3263) 211
+        0xc2bf, // (12,  703) 212
+        0xcabf, // (12, 2751) 213
+        0xc6bf, // (12, 1727) 214
+        0xcebf, // (12, 3775) 215
+        0xc1bf, // (12,  447) 216
+        0xc9bf, // (12, 2495) 217
+        0xc5bf, // (12, 1471) 218
+        0xcdbf, // (12, 3519) 219
+        0xc3bf, // (12,  959) 220
+        0xcbbf, // (12, 3007) 221
+        0xc7bf, // (12, 1983) 222
+        0xcfbf, // (12, 4031) 223
+        0xc07f, // (12,  127) 224
+        0xc87f, // (12, 2175) 225
+        0xc47f, // (12, 1151) 226
+        0xcc7f, // (12, 3199) 227
+        0xc27f, // (12,  639) 228
+        0xca7f, // (12, 2687) 229
+        0xc67f, // (12, 1663) 230
+        0xce7f, // (12, 3711) 231
+        0xc17f, // (12,  383) 232
+        0xc97f, // (12, 2431) 233
+        0xc57f, // (12, 1407) 234
+        0xcd7f, // (12, 3455) 235
+        0xc37f, // (12,  895) 236
+        0xcb7f, // (12, 2943) 237
+        0xc77f, // (12, 1919) 238
+        0xcf7f, // (12, 3967) 239
+        0xc0ff, // (12,  255) 240
+        0xc8ff, // (12, 2303) 241
+        0xc4ff, // (12, 1279) 242
+        0xccff, // (12, 3327) 243
+        0xc2ff, // (12,  767) 244
+        0xcaff, // (12, 2815) 245
+        0xc6ff, // (12, 1791) 246
+        0xceff, // (12, 3839) 247
+        0xc1ff, // (12,  511) 248
+        0xc9ff, // (12, 2559) 249
+        0xc5ff, // (12, 1535) 250
+        0xcdff, // (12, 3583) 251
+        0xc3ff, // (12, 1023) 252
+        0xcbff, // (12, 3071) 253
+        0xc7ff, // (12, 2047) 254
+        0xcfff, // (12, 4095) 255
+    ],
+    // Six Encoding Tables for the Midrange.
+
+    // (table 16 of 22) (midrange 0 of 6) (c/k = 0.500000000 = 3.0 / 6.0)
+    // entropy:    2.1627885076675394949
+    // avg_length: 2.2704182849800043087; max_length = 12; num_symbols = 256
+    [
+        //table, // (4 bits,  12 bits) symbol
+        //entry, // (length, codeword) [byte]
+        0x1000, // ( 1,    0)   0
+        0x2001, // ( 2,    1)   1
+        0x4003, // ( 4,    3)   2
+        0x500b, // ( 5,   11)   3
+        0x501b, // ( 5,   27)   4
+        0x6007, // ( 6,    7)   5
+        0x8057, // ( 8,   87)   6
+        0x9077, // ( 9,  119)   7
+        0x6027, // ( 6,   39)   8
+        0x80d7, // ( 8,  215)   9
+        0x9177, // ( 9,  375)  10
+        0xa1f7, // (10,  503)  11
+        0xa3f7, // (10, 1015)  12
+        0xb08f, // (11,  143)  13
+        0xc58f, // (12, 1423)  14
+        0xcd8f, // (12, 3471)  15
+        0x7017, // ( 7,   23)  16
+        0x8037, // ( 8,   55)  17
+        0xa00f, // (10,   15)  18
+        0xb48f, // (11, 1167)  19
+        0xb28f, // (11,  655)  20
+        0xc38f, // (12,  911)  21
+        0xcb8f, // (12, 2959)  22
+        0xc78f, // (12, 1935)  23
+        0xcf8f, // (12, 3983)  24
+        0xc04f, // (12,   79)  25
+        0xc84f, // (12, 2127)  26
+        0xc44f, // (12, 1103)  27
+        0xcc4f, // (12, 3151)  28
+        0xc24f, // (12,  591)  29
+        0xca4f, // (12, 2639)  30
+        0xc64f, // (12, 1615)  31
+        0x80b7, // ( 8,  183)  32
+        0xa20f, // (10,  527)  33
+        0xb68f, // (11, 1679)  34
+        0xce4f, // (12, 3663)  35
+        0xc14f, // (12,  335)  36
+        0xc94f, // (12, 2383)  37
+        0xc54f, // (12, 1359)  38
+        0xcd4f, // (12, 3407)  39
+        0xc34f, // (12,  847)  40
+        0xcb4f, // (12, 2895)  41
+        0xc74f, // (12, 1871)  42
+        0xcf4f, // (12, 3919)  43
+        0xc0cf, // (12,  207)  44
+        0xc8cf, // (12, 2255)  45
+        0xc4cf, // (12, 1231)  46
+        0xcccf, // (12, 3279)  47
+        0xc2cf, // (12,  719)  48
+        0xcacf, // (12, 2767)  49
+        0xc6cf, // (12, 1743)  50
+        0xcecf, // (12, 3791)  51
+        0xc1cf, // (12,  463)  52
+        0xc9cf, // (12, 2511)  53
+        0xc5cf, // (12, 1487)  54
+        0xcdcf, // (12, 3535)  55
+        0xc3cf, // (12,  975)  56
+        0xcbcf, // (12, 3023)  57
+        0xc7cf, // (12, 1999)  58
+        0xcfcf, // (12, 4047)  59
+        0xc02f, // (12,   47)  60
+        0xc82f, // (12, 2095)  61
+        0xc42f, // (12, 1071)  62
+        0xcc2f, // (12, 3119)  63
+        0x90f7, // ( 9,  247)  64
+        0xa10f, // (10,  271)  65
+        0xc22f, // (12,  559)  66
+        0xca2f, // (12, 2607)  67
+        0xc62f, // (12, 1583)  68
+        0xce2f, // (12, 3631)  69
+        0xc12f, // (12,  303)  70
+        0xc92f, // (12, 2351)  71
+        0xc52f, // (12, 1327)  72
+        0xcd2f, // (12, 3375)  73
+        0xc32f, // (12,  815)  74
+        0xcb2f, // (12, 2863)  75
+        0xc72f, // (12, 1839)  76
+        0xcf2f, // (12, 3887)  77
+        0xc0af, // (12,  175)  78
+        0xc8af, // (12, 2223)  79
+        0xc4af, // (12, 1199)  80
+        0xccaf, // (12, 3247)  81
+        0xc2af, // (12,  687)  82
+        0xcaaf, // (12, 2735)  83
+        0xc6af, // (12, 1711)  84
+        0xceaf, // (12, 3759)  85
+        0xc1af, // (12,  431)  86
+        0xc9af, // (12, 2479)  87
+        0xc5af, // (12, 1455)  88
+        0xcdaf, // (12, 3503)  89
+        0xc3af, // (12,  943)  90
+        0xcbaf, // (12, 2991)  91
+        0xc7af, // (12, 1967)  92
+        0xcfaf, // (12, 4015)  93
+        0xc06f, // (12,  111)  94
+        0xc86f, // (12, 2159)  95
+        0xc46f, // (12, 1135)  96
+        0xcc6f, // (12, 3183)  97
+        0xc26f, // (12,  623)  98
+        0xca6f, // (12, 2671)  99
+        0xc66f, // (12, 1647) 100
+        0xce6f, // (12, 3695) 101
+        0xc16f, // (12,  367) 102
+        0xc96f, // (12, 2415) 103
+        0xc56f, // (12, 1391) 104
+        0xcd6f, // (12, 3439) 105
+        0xc36f, // (12,  879) 106
+        0xcb6f, // (12, 2927) 107
+        0xc76f, // (12, 1903) 108
+        0xcf6f, // (12, 3951) 109
+        0xc0ef, // (12,  239) 110
+        0xc8ef, // (12, 2287) 111
+        0xc4ef, // (12, 1263) 112
+        0xccef, // (12, 3311) 113
+        0xc2ef, // (12,  751) 114
+        0xcaef, // (12, 2799) 115
+        0xc6ef, // (12, 1775) 116
+        0xceef, // (12, 3823) 117
+        0xc1ef, // (12,  495) 118
+        0xc9ef, // (12, 2543) 119
+        0xc5ef, // (12, 1519) 120
+        0xcdef, // (12, 3567) 121
+        0xc3ef, // (12, 1007) 122
+        0xcbef, // (12, 3055) 123
+        0xc7ef, // (12, 2031) 124
+        0xcfef, // (12, 4079) 125
+        0xc01f, // (12,   31) 126
+        0xc81f, // (12, 2079) 127
+        0xa30f, // (10,  783) 128
+        0xb18f, // (11,  399) 129
+        0xc41f, // (12, 1055) 130
+        0xcc1f, // (12, 3103) 131
+        0xc21f, // (12,  543) 132
+        0xca1f, // (12, 2591) 133
+        0xc61f, // (12, 1567) 134
+        0xce1f, // (12, 3615) 135
+        0xc11f, // (12,  287) 136
+        0xc91f, // (12, 2335) 137
+        0xc51f, // (12, 1311) 138
+        0xcd1f, // (12, 3359) 139
+        0xc31f, // (12,  799) 140
+        0xcb1f, // (12, 2847) 141
+        0xc71f, // (12, 1823) 142
+        0xcf1f, // (12, 3871) 143
+        0xc09f, // (12,  159) 144
+        0xc89f, // (12, 2207) 145
+        0xc49f, // (12, 1183) 146
+        0xcc9f, // (12, 3231) 147
+        0xc29f, // (12,  671) 148
+        0xca9f, // (12, 2719) 149
+        0xc69f, // (12, 1695) 150
+        0xce9f, // (12, 3743) 151
+        0xc19f, // (12,  415) 152
+        0xc99f, // (12, 2463) 153
+        0xc59f, // (12, 1439) 154
+        0xcd9f, // (12, 3487) 155
+        0xc39f, // (12,  927) 156
+        0xcb9f, // (12, 2975) 157
+        0xc79f, // (12, 1951) 158
+        0xcf9f, // (12, 3999) 159
+        0xc05f, // (12,   95) 160
+        0xc85f, // (12, 2143) 161
+        0xc45f, // (12, 1119) 162
+        0xcc5f, // (12, 3167) 163
+        0xc25f, // (12,  607) 164
+        0xca5f, // (12, 2655) 165
+        0xc65f, // (12, 1631) 166
+        0xce5f, // (12, 3679) 167
+        0xc15f, // (12,  351) 168
+        0xc95f, // (12, 2399) 169
+        0xc55f, // (12, 1375) 170
+        0xcd5f, // (12, 3423) 171
+        0xc35f, // (12,  863) 172
+        0xcb5f, // (12, 2911) 173
+        0xc75f, // (12, 1887) 174
+        0xcf5f, // (12, 3935) 175
+        0xc0df, // (12,  223) 176
+        0xc8df, // (12, 2271) 177
+        0xc4df, // (12, 1247) 178
+        0xccdf, // (12, 3295) 179
+        0xc2df, // (12,  735) 180
+        0xcadf, // (12, 2783) 181
+        0xc6df, // (12, 1759) 182
+        0xcedf, // (12, 3807) 183
+        0xc1df, // (12,  479) 184
+        0xc9df, // (12, 2527) 185
+        0xc5df, // (12, 1503) 186
+        0xcddf, // (12, 3551) 187
+        0xc3df, // (12,  991) 188
+        0xcbdf, // (12, 3039) 189
+        0xc7df, // (12, 2015) 190
+        0xcfdf, // (12, 4063) 191
+        0xc03f, // (12,   63) 192
+        0xc83f, // (12, 2111) 193
+        0xc43f, // (12, 1087) 194
+        0xcc3f, // (12, 3135) 195
+        0xc23f, // (12,  575) 196
+        0xca3f, // (12, 2623) 197
+        0xc63f, // (12, 1599) 198
+        0xce3f, // (12, 3647) 199
+        0xc13f, // (12,  319) 200
+        0xc93f, // (12, 2367) 201
+        0xc53f, // (12, 1343) 202
+        0xcd3f, // (12, 3391) 203
+        0xc33f, // (12,  831) 204
+        0xcb3f, // (12, 2879) 205
+        0xc73f, // (12, 1855) 206
+        0xcf3f, // (12, 3903) 207
+        0xc0bf, // (12,  191) 208
+        0xc8bf, // (12, 2239) 209
+        0xc4bf, // (12, 1215) 210
+        0xccbf, // (12, 3263) 211
+        0xc2bf, // (12,  703) 212
+        0xcabf, // (12, 2751) 213
+        0xc6bf, // (12, 1727) 214
+        0xcebf, // (12, 3775) 215
+        0xc1bf, // (12,  447) 216
+        0xc9bf, // (12, 2495) 217
+        0xc5bf, // (12, 1471) 218
+        0xcdbf, // (12, 3519) 219
+        0xc3bf, // (12,  959) 220
+        0xcbbf, // (12, 3007) 221
+        0xc7bf, // (12, 1983) 222
+        0xcfbf, // (12, 4031) 223
+        0xc07f, // (12,  127) 224
+        0xc87f, // (12, 2175) 225
+        0xc47f, // (12, 1151) 226
+        0xcc7f, // (12, 3199) 227
+        0xc27f, // (12,  639) 228
+        0xca7f, // (12, 2687) 229
+        0xc67f, // (12, 1663) 230
+        0xce7f, // (12, 3711) 231
+        0xc17f, // (12,  383) 232
+        0xc97f, // (12, 2431) 233
+        0xc57f, // (12, 1407) 234
+        0xcd7f, // (12, 3455) 235
+        0xc37f, // (12,  895) 236
+        0xcb7f, // (12, 2943) 237
+        0xc77f, // (12, 1919) 238
+        0xcf7f, // (12, 3967) 239
+        0xc0ff, // (12,  255) 240
+        0xc8ff, // (12, 2303) 241
+        0xc4ff, // (12, 1279) 242
+        0xccff, // (12, 3327) 243
+        0xc2ff, // (12,  767) 244
+        0xcaff, // (12, 2815) 245
+        0xc6ff, // (12, 1791) 246
+        0xceff, // (12, 3839) 247
+        0xc1ff, // (12,  511) 248
+        0xc9ff, // (12, 2559) 249
+        0xc5ff, // (12, 1535) 250
+        0xcdff, // (12, 3583) 251
+        0xc3ff, // (12, 1023) 252
+        0xcbff, // (12, 3071) 253
+        0xc7ff, // (12, 2047) 254
+        0xcfff, // (12, 4095) 255
+    ],
+    // (table 17 of 22) (midrange 1 of 6) (c/k = 0.833333333 = 5.0 / 6.0)
+    // entropy:    2.9553294756640680063
+    // avg_length: 3.0766035704232641557; max_length = 12; num_symbols = 256
+    [
+        //table, // (4 bits,  12 bits) symbol
+        //entry, // (length, codeword) [byte]
+        0x2000, // ( 2,    0)   0
+        0x2002, // ( 2,    2)   1
+        0x3001, // ( 3,    1)   2
+        0x4005, // ( 4,    5)   3
+        0x400d, // ( 4,   13)   4
+        0x5003, // ( 5,    3)   5
+        0x600b, // ( 6,   11)   6
+        0x602b, // ( 6,   43)   7
+        0x5013, // ( 5,   19)   8
+        0x601b, // ( 6,   27)   9
+        0x7007, // ( 7,    7)  10
+        0x7047, // ( 7,   71)  11
+        0x8017, // ( 8,   23)  12
+        0x90b7, // ( 9,  183)  13
+        0xa1f7, // (10,  503)  14
+        0xa3f7, // (10, 1015)  15
+        0x603b, // ( 6,   59)  16
+        0x7027, // ( 7,   39)  17
+        0x8097, // ( 8,  151)  18
+        0x8057, // ( 8,   87)  19
+        0x91b7, // ( 9,  439)  20
+        0xa00f, // (10,   15)  21
+        0xb18f, // (11,  399)  22
+        0xb58f, // (11, 1423)  23
+        0xa20f, // (10,  527)  24
+        0xb38f, // (11,  911)  25
+        0xc54f, // (12, 1359)  26
+        0xcd4f, // (12, 3407)  27
+        0xc34f, // (12,  847)  28
+        0xcb4f, // (12, 2895)  29
+        0xc74f, // (12, 1871)  30
+        0xcf4f, // (12, 3919)  31
+        0x7067, // ( 7,  103)  32
+        0x80d7, // ( 8,  215)  33
+        0x9077, // ( 9,  119)  34
+        0xa10f, // (10,  271)  35
+        0xa30f, // (10,  783)  36
+        0xb78f, // (11, 1935)  37
+        0xc0cf, // (12,  207)  38
+        0xc8cf, // (12, 2255)  39
+        0xb04f, // (11,   79)  40
+        0xc4cf, // (12, 1231)  41
+        0xcccf, // (12, 3279)  42
+        0xc2cf, // (12,  719)  43
+        0xcacf, // (12, 2767)  44
+        0xc6cf, // (12, 1743)  45
+        0xcecf, // (12, 3791)  46
+        0xc1cf, // (12,  463)  47
+        0xc9cf, // (12, 2511)  48
+        0xc5cf, // (12, 1487)  49
+        0xcdcf, // (12, 3535)  50
+        0xc3cf, // (12,  975)  51
+        0xcbcf, // (12, 3023)  52
+        0xc7cf, // (12, 1999)  53
+        0xcfcf, // (12, 4047)  54
+        0xc02f, // (12,   47)  55
+        0xc82f, // (12, 2095)  56
+        0xc42f, // (12, 1071)  57
+        0xcc2f, // (12, 3119)  58
+        0xc22f, // (12,  559)  59
+        0xca2f, // (12, 2607)  60
+        0xc62f, // (12, 1583)  61
+        0xce2f, // (12, 3631)  62
+        0xc12f, // (12,  303)  63
+        0x8037, // ( 8,   55)  64
+        0x9177, // ( 9,  375)  65
+        0xa08f, // (10,  143)  66
+        0xb44f, // (11, 1103)  67
+        0xb24f, // (11,  591)  68
+        0xc92f, // (12, 2351)  69
+        0xc52f, // (12, 1327)  70
+        0xcd2f, // (12, 3375)  71
+        0xc32f, // (12,  815)  72
+        0xcb2f, // (12, 2863)  73
+        0xc72f, // (12, 1839)  74
+        0xcf2f, // (12, 3887)  75
+        0xc0af, // (12,  175)  76
+        0xc8af, // (12, 2223)  77
+        0xc4af, // (12, 1199)  78
+        0xccaf, // (12, 3247)  79
+        0xc2af, // (12,  687)  80
+        0xcaaf, // (12, 2735)  81
+        0xc6af, // (12, 1711)  82
+        0xceaf, // (12, 3759)  83
+        0xc1af, // (12,  431)  84
+        0xc9af, // (12, 2479)  85
+        0xc5af, // (12, 1455)  86
+        0xcdaf, // (12, 3503)  87
+        0xc3af, // (12,  943)  88
+        0xcbaf, // (12, 2991)  89
+        0xc7af, // (12, 1967)  90
+        0xcfaf, // (12, 4015)  91
+        0xc06f, // (12,  111)  92
+        0xc86f, // (12, 2159)  93
+        0xc46f, // (12, 1135)  94
+        0xcc6f, // (12, 3183)  95
+        0xc26f, // (12,  623)  96
+        0xca6f, // (12, 2671)  97
+        0xc66f, // (12, 1647)  98
+        0xce6f, // (12, 3695)  99
+        0xc16f, // (12,  367) 100
+        0xc96f, // (12, 2415) 101
+        0xc56f, // (12, 1391) 102
+        0xcd6f, // (12, 3439) 103
+        0xc36f, // (12,  879) 104
+        0xcb6f, // (12, 2927) 105
+        0xc76f, // (12, 1903) 106
+        0xcf6f, // (12, 3951) 107
+        0xc0ef, // (12,  239) 108
+        0xc8ef, // (12, 2287) 109
+        0xc4ef, // (12, 1263) 110
+        0xccef, // (12, 3311) 111
+        0xc2ef, // (12,  751) 112
+        0xcaef, // (12, 2799) 113
+        0xc6ef, // (12, 1775) 114
+        0xceef, // (12, 3823) 115
+        0xc1ef, // (12,  495) 116
+        0xc9ef, // (12, 2543) 117
+        0xc5ef, // (12, 1519) 118
+        0xcdef, // (12, 3567) 119
+        0xc3ef, // (12, 1007) 120
+        0xcbef, // (12, 3055) 121
+        0xc7ef, // (12, 2031) 122
+        0xcfef, // (12, 4079) 123
+        0xc01f, // (12,   31) 124
+        0xc81f, // (12, 2079) 125
+        0xc41f, // (12, 1055) 126
+        0xcc1f, // (12, 3103) 127
+        0x90f7, // ( 9,  247) 128
+        0xa28f, // (10,  655) 129
+        0xb64f, // (11, 1615) 130
+        0xb14f, // (11,  335) 131
+        0xc21f, // (12,  543) 132
+        0xca1f, // (12, 2591) 133
+        0xc61f, // (12, 1567) 134
+        0xce1f, // (12, 3615) 135
+        0xc11f, // (12,  287) 136
+        0xc91f, // (12, 2335) 137
+        0xc51f, // (12, 1311) 138
+        0xcd1f, // (12, 3359) 139
+        0xc31f, // (12,  799) 140
+        0xcb1f, // (12, 2847) 141
+        0xc71f, // (12, 1823) 142
+        0xcf1f, // (12, 3871) 143
+        0xc09f, // (12,  159) 144
+        0xc89f, // (12, 2207) 145
+        0xc49f, // (12, 1183) 146
+        0xcc9f, // (12, 3231) 147
+        0xc29f, // (12,  671) 148
+        0xca9f, // (12, 2719) 149
+        0xc69f, // (12, 1695) 150
+        0xce9f, // (12, 3743) 151
+        0xc19f, // (12,  415) 152
+        0xc99f, // (12, 2463) 153
+        0xc59f, // (12, 1439) 154
+        0xcd9f, // (12, 3487) 155
+        0xc39f, // (12,  927) 156
+        0xcb9f, // (12, 2975) 157
+        0xc79f, // (12, 1951) 158
+        0xcf9f, // (12, 3999) 159
+        0xc05f, // (12,   95) 160
+        0xc85f, // (12, 2143) 161
+        0xc45f, // (12, 1119) 162
+        0xcc5f, // (12, 3167) 163
+        0xc25f, // (12,  607) 164
+        0xca5f, // (12, 2655) 165
+        0xc65f, // (12, 1631) 166
+        0xce5f, // (12, 3679) 167
+        0xc15f, // (12,  351) 168
+        0xc95f, // (12, 2399) 169
+        0xc55f, // (12, 1375) 170
+        0xcd5f, // (12, 3423) 171
+        0xc35f, // (12,  863) 172
+        0xcb5f, // (12, 2911) 173
+        0xc75f, // (12, 1887) 174
+        0xcf5f, // (12, 3935) 175
+        0xc0df, // (12,  223) 176
+        0xc8df, // (12, 2271) 177
+        0xc4df, // (12, 1247) 178
+        0xccdf, // (12, 3295) 179
+        0xc2df, // (12,  735) 180
+        0xcadf, // (12, 2783) 181
+        0xc6df, // (12, 1759) 182
+        0xcedf, // (12, 3807) 183
+        0xc1df, // (12,  479) 184
+        0xc9df, // (12, 2527) 185
+        0xc5df, // (12, 1503) 186
+        0xcddf, // (12, 3551) 187
+        0xc3df, // (12,  991) 188
+        0xcbdf, // (12, 3039) 189
+        0xc7df, // (12, 2015) 190
+        0xcfdf, // (12, 4063) 191
+        0xc03f, // (12,   63) 192
+        0xc83f, // (12, 2111) 193
+        0xc43f, // (12, 1087) 194
+        0xcc3f, // (12, 3135) 195
+        0xc23f, // (12,  575) 196
+        0xca3f, // (12, 2623) 197
+        0xc63f, // (12, 1599) 198
+        0xce3f, // (12, 3647) 199
+        0xc13f, // (12,  319) 200
+        0xc93f, // (12, 2367) 201
+        0xc53f, // (12, 1343) 202
+        0xcd3f, // (12, 3391) 203
+        0xc33f, // (12,  831) 204
+        0xcb3f, // (12, 2879) 205
+        0xc73f, // (12, 1855) 206
+        0xcf3f, // (12, 3903) 207
+        0xc0bf, // (12,  191) 208
+        0xc8bf, // (12, 2239) 209
+        0xc4bf, // (12, 1215) 210
+        0xccbf, // (12, 3263) 211
+        0xc2bf, // (12,  703) 212
+        0xcabf, // (12, 2751) 213
+        0xc6bf, // (12, 1727) 214
+        0xcebf, // (12, 3775) 215
+        0xc1bf, // (12,  447) 216
+        0xc9bf, // (12, 2495) 217
+        0xc5bf, // (12, 1471) 218
+        0xcdbf, // (12, 3519) 219
+        0xc3bf, // (12,  959) 220
+        0xcbbf, // (12, 3007) 221
+        0xc7bf, // (12, 1983) 222
+        0xcfbf, // (12, 4031) 223
+        0xc07f, // (12,  127) 224
+        0xc87f, // (12, 2175) 225
+        0xc47f, // (12, 1151) 226
+        0xcc7f, // (12, 3199) 227
+        0xc27f, // (12,  639) 228
+        0xca7f, // (12, 2687) 229
+        0xc67f, // (12, 1663) 230
+        0xce7f, // (12, 3711) 231
+        0xc17f, // (12,  383) 232
+        0xc97f, // (12, 2431) 233
+        0xc57f, // (12, 1407) 234
+        0xcd7f, // (12, 3455) 235
+        0xc37f, // (12,  895) 236
+        0xcb7f, // (12, 2943) 237
+        0xc77f, // (12, 1919) 238
+        0xcf7f, // (12, 3967) 239
+        0xc0ff, // (12,  255) 240
+        0xc8ff, // (12, 2303) 241
+        0xc4ff, // (12, 1279) 242
+        0xccff, // (12, 3327) 243
+        0xc2ff, // (12,  767) 244
+        0xcaff, // (12, 2815) 245
+        0xc6ff, // (12, 1791) 246
+        0xceff, // (12, 3839) 247
+        0xc1ff, // (12,  511) 248
+        0xc9ff, // (12, 2559) 249
+        0xc5ff, // (12, 1535) 250
+        0xcdff, // (12, 3583) 251
+        0xc3ff, // (12, 1023) 252
+        0xcbff, // (12, 3071) 253
+        0xc7ff, // (12, 2047) 254
+        0xcfff, // (12, 4095) 255
+    ],
+    // (table 18 of 22) (midrange 2 of 6) (c/k = 1.166666667 = 7.0 / 6.0)
+    // entropy:    3.5218672531711128215
+    // avg_length: 3.6153551492375441967; max_length = 12; num_symbols = 256
+    [
+        //table, // (4 bits,  12 bits) symbol
+        //entry, // (length, codeword) [byte]
+        0x2000, // ( 2,    0)   0
+        0x2002, // ( 2,    2)   1
+        0x4005, // ( 4,    5)   2
+        0x3001, // ( 3,    1)   3
+        0x5003, // ( 5,    3)   4
+        0x400d, // ( 4,   13)   5
+        0x600b, // ( 6,   11)   6
+        0x602b, // ( 6,   43)   7
+        0x601b, // ( 6,   27)   8
+        0x5013, // ( 5,   19)   9
+        0x703b, // ( 7,   59)  10
+        0x707b, // ( 7,  123)  11
+        0x8067, // ( 8,  103)  12
+        0x80e7, // ( 8,  231)  13
+        0x90d7, // ( 9,  215)  14
+        0x91d7, // ( 9,  471)  15
+        0x7007, // ( 7,    7)  16
+        0x7047, // ( 7,   71)  17
+        0x8017, // ( 8,   23)  18
+        0x8097, // ( 8,  151)  19
+        0x9037, // ( 9,   55)  20
+        0x9137, // ( 9,  311)  21
+        0xa1f7, // (10,  503)  22
+        0xa3f7, // (10, 1015)  23
+        0xa00f, // (10,   15)  24
+        0xa20f, // (10,  527)  25
+        0xb38f, // (11,  911)  26
+        0xb78f, // (11, 1935)  27
+        0xc0cf, // (12,  207)  28
+        0xc8cf, // (12, 2255)  29
+        0xc4cf, // (12, 1231)  30
+        0xcccf, // (12, 3279)  31
+        0x8057, // ( 8,   87)  32
+        0x7027, // ( 7,   39)  33
+        0x90b7, // ( 9,  183)  34
+        0x91b7, // ( 9,  439)  35
+        0xa10f, // (10,  271)  36
+        0xa30f, // (10,  783)  37
+        0xb04f, // (11,   79)  38
+        0xb44f, // (11, 1103)  39
+        0xb24f, // (11,  591)  40
+        0xb64f, // (11, 1615)  41
+        0xc2cf, // (12,  719)  42
+        0xcacf, // (12, 2767)  43
+        0xc6cf, // (12, 1743)  44
+        0xcecf, // (12, 3791)  45
+        0xc1cf, // (12,  463)  46
+        0xc9cf, // (12, 2511)  47
+        0xc5cf, // (12, 1487)  48
+        0xcdcf, // (12, 3535)  49
+        0xc3cf, // (12,  975)  50
+        0xcbcf, // (12, 3023)  51
+        0xc7cf, // (12, 1999)  52
+        0xcfcf, // (12, 4047)  53
+        0xc02f, // (12,   47)  54
+        0xc82f, // (12, 2095)  55
+        0xc42f, // (12, 1071)  56
+        0xcc2f, // (12, 3119)  57
+        0xc22f, // (12,  559)  58
+        0xca2f, // (12, 2607)  59
+        0xc62f, // (12, 1583)  60
+        0xce2f, // (12, 3631)  61
+        0xc12f, // (12,  303)  62
+        0xc92f, // (12, 2351)  63
+        0x9077, // ( 9,  119)  64
+        0x9177, // ( 9,  375)  65
+        0xa08f, // (10,  143)  66
+        0xa28f, // (10,  655)  67
+        0xb14f, // (11,  335)  68
+        0xb54f, // (11, 1359)  69
+        0xc52f, // (12, 1327)  70
+        0xcd2f, // (12, 3375)  71
+        0xc32f, // (12,  815)  72
+        0xcb2f, // (12, 2863)  73
+        0xc72f, // (12, 1839)  74
+        0xcf2f, // (12, 3887)  75
+        0xc0af, // (12,  175)  76
+        0xc8af, // (12, 2223)  77
+        0xc4af, // (12, 1199)  78
+        0xccaf, // (12, 3247)  79
+        0xc2af, // (12,  687)  80
+        0xcaaf, // (12, 2735)  81
+        0xc6af, // (12, 1711)  82
+        0xceaf, // (12, 3759)  83
+        0xc1af, // (12,  431)  84
+        0xc9af, // (12, 2479)  85
+        0xc5af, // (12, 1455)  86
+        0xcdaf, // (12, 3503)  87
+        0xc3af, // (12,  943)  88
+        0xcbaf, // (12, 2991)  89
+        0xc7af, // (12, 1967)  90
+        0xcfaf, // (12, 4015)  91
+        0xc06f, // (12,  111)  92
+        0xc86f, // (12, 2159)  93
+        0xc46f, // (12, 1135)  94
+        0xcc6f, // (12, 3183)  95
+        0xc26f, // (12,  623)  96
+        0xca6f, // (12, 2671)  97
+        0xc66f, // (12, 1647)  98
+        0xce6f, // (12, 3695)  99
+        0xc16f, // (12,  367) 100
+        0xc96f, // (12, 2415) 101
+        0xc56f, // (12, 1391) 102
+        0xcd6f, // (12, 3439) 103
+        0xc36f, // (12,  879) 104
+        0xcb6f, // (12, 2927) 105
+        0xc76f, // (12, 1903) 106
+        0xcf6f, // (12, 3951) 107
+        0xc0ef, // (12,  239) 108
+        0xc8ef, // (12, 2287) 109
+        0xc4ef, // (12, 1263) 110
+        0xccef, // (12, 3311) 111
+        0xc2ef, // (12,  751) 112
+        0xcaef, // (12, 2799) 113
+        0xc6ef, // (12, 1775) 114
+        0xceef, // (12, 3823) 115
+        0xc1ef, // (12,  495) 116
+        0xc9ef, // (12, 2543) 117
+        0xc5ef, // (12, 1519) 118
+        0xcdef, // (12, 3567) 119
+        0xc3ef, // (12, 1007) 120
+        0xcbef, // (12, 3055) 121
+        0xc7ef, // (12, 2031) 122
+        0xcfef, // (12, 4079) 123
+        0xc01f, // (12,   31) 124
+        0xc81f, // (12, 2079) 125
+        0xc41f, // (12, 1055) 126
+        0xcc1f, // (12, 3103) 127
+        0xa18f, // (10,  399) 128
+        0x90f7, // ( 9,  247) 129
+        0xb34f, // (11,  847) 130
+        0xb74f, // (11, 1871) 131
+        0xc21f, // (12,  543) 132
+        0xca1f, // (12, 2591) 133
+        0xc61f, // (12, 1567) 134
+        0xce1f, // (12, 3615) 135
+        0xc11f, // (12,  287) 136
+        0xc91f, // (12, 2335) 137
+        0xc51f, // (12, 1311) 138
+        0xcd1f, // (12, 3359) 139
+        0xc31f, // (12,  799) 140
+        0xcb1f, // (12, 2847) 141
+        0xc71f, // (12, 1823) 142
+        0xcf1f, // (12, 3871) 143
+        0xc09f, // (12,  159) 144
+        0xc89f, // (12, 2207) 145
+        0xc49f, // (12, 1183) 146
+        0xcc9f, // (12, 3231) 147
+        0xc29f, // (12,  671) 148
+        0xca9f, // (12, 2719) 149
+        0xc69f, // (12, 1695) 150
+        0xce9f, // (12, 3743) 151
+        0xc19f, // (12,  415) 152
+        0xc99f, // (12, 2463) 153
+        0xc59f, // (12, 1439) 154
+        0xcd9f, // (12, 3487) 155
+        0xc39f, // (12,  927) 156
+        0xcb9f, // (12, 2975) 157
+        0xc79f, // (12, 1951) 158
+        0xcf9f, // (12, 3999) 159
+        0xc05f, // (12,   95) 160
+        0xc85f, // (12, 2143) 161
+        0xc45f, // (12, 1119) 162
+        0xcc5f, // (12, 3167) 163
+        0xc25f, // (12,  607) 164
+        0xca5f, // (12, 2655) 165
+        0xc65f, // (12, 1631) 166
+        0xce5f, // (12, 3679) 167
+        0xc15f, // (12,  351) 168
+        0xc95f, // (12, 2399) 169
+        0xc55f, // (12, 1375) 170
+        0xcd5f, // (12, 3423) 171
+        0xc35f, // (12,  863) 172
+        0xcb5f, // (12, 2911) 173
+        0xc75f, // (12, 1887) 174
+        0xcf5f, // (12, 3935) 175
+        0xc0df, // (12,  223) 176
+        0xc8df, // (12, 2271) 177
+        0xc4df, // (12, 1247) 178
+        0xccdf, // (12, 3295) 179
+        0xc2df, // (12,  735) 180
+        0xcadf, // (12, 2783) 181
+        0xc6df, // (12, 1759) 182
+        0xcedf, // (12, 3807) 183
+        0xc1df, // (12,  479) 184
+        0xc9df, // (12, 2527) 185
+        0xc5df, // (12, 1503) 186
+        0xcddf, // (12, 3551) 187
+        0xc3df, // (12,  991) 188
+        0xcbdf, // (12, 3039) 189
+        0xc7df, // (12, 2015) 190
+        0xcfdf, // (12, 4063) 191
+        0xc03f, // (12,   63) 192
+        0xc83f, // (12, 2111) 193
+        0xc43f, // (12, 1087) 194
+        0xcc3f, // (12, 3135) 195
+        0xc23f, // (12,  575) 196
+        0xca3f, // (12, 2623) 197
+        0xc63f, // (12, 1599) 198
+        0xce3f, // (12, 3647) 199
+        0xc13f, // (12,  319) 200
+        0xc93f, // (12, 2367) 201
+        0xc53f, // (12, 1343) 202
+        0xcd3f, // (12, 3391) 203
+        0xc33f, // (12,  831) 204
+        0xcb3f, // (12, 2879) 205
+        0xc73f, // (12, 1855) 206
+        0xcf3f, // (12, 3903) 207
+        0xc0bf, // (12,  191) 208
+        0xc8bf, // (12, 2239) 209
+        0xc4bf, // (12, 1215) 210
+        0xccbf, // (12, 3263) 211
+        0xc2bf, // (12,  703) 212
+        0xcabf, // (12, 2751) 213
+        0xc6bf, // (12, 1727) 214
+        0xcebf, // (12, 3775) 215
+        0xc1bf, // (12,  447) 216
+        0xc9bf, // (12, 2495) 217
+        0xc5bf, // (12, 1471) 218
+        0xcdbf, // (12, 3519) 219
+        0xc3bf, // (12,  959) 220
+        0xcbbf, // (12, 3007) 221
+        0xc7bf, // (12, 1983) 222
+        0xcfbf, // (12, 4031) 223
+        0xc07f, // (12,  127) 224
+        0xc87f, // (12, 2175) 225
+        0xc47f, // (12, 1151) 226
+        0xcc7f, // (12, 3199) 227
+        0xc27f, // (12,  639) 228
+        0xca7f, // (12, 2687) 229
+        0xc67f, // (12, 1663) 230
+        0xce7f, // (12, 3711) 231
+        0xc17f, // (12,  383) 232
+        0xc97f, // (12, 2431) 233
+        0xc57f, // (12, 1407) 234
+        0xcd7f, // (12, 3455) 235
+        0xc37f, // (12,  895) 236
+        0xcb7f, // (12, 2943) 237
+        0xc77f, // (12, 1919) 238
+        0xcf7f, // (12, 3967) 239
+        0xc0ff, // (12,  255) 240
+        0xc8ff, // (12, 2303) 241
+        0xc4ff, // (12, 1279) 242
+        0xccff, // (12, 3327) 243
+        0xc2ff, // (12,  767) 244
+        0xcaff, // (12, 2815) 245
+        0xc6ff, // (12, 1791) 246
+        0xceff, // (12, 3839) 247
+        0xc1ff, // (12,  511) 248
+        0xc9ff, // (12, 2559) 249
+        0xc5ff, // (12, 1535) 250
+        0xcdff, // (12, 3583) 251
+        0xc3ff, // (12, 1023) 252
+        0xcbff, // (12, 3071) 253
+        0xc7ff, // (12, 2047) 254
+        0xcfff, // (12, 4095) 255
+    ],
+    // (table 19 of 22) (midrange 3 of 6) (c/k = 1.500000000 = 9.0 / 6.0)
+    // entropy:    3.9228873257934386842
+    // avg_length: 3.9989687586992346269; max_length = 12; num_symbols = 256
+    [
+        //table, // (4 bits,  12 bits) symbol
+        //entry, // (length, codeword) [byte]
+        0x3002, // ( 3,    2)   0
+        0x2000, // ( 2,    0)   1
+        0x4001, // ( 4,    1)   2
+        0x3006, // ( 3,    6)   3
+        0x500d, // ( 5,   13)   4
+        0x4009, // ( 4,    9)   5
+        0x501d, // ( 5,   29)   6
+        0x4005, // ( 4,    5)   7
+        0x6013, // ( 6,   19)   8
+        0x5003, // ( 5,    3)   9
+        0x6033, // ( 6,   51)  10
+        0x600b, // ( 6,   11)  11
+        0x8027, // ( 8,   39)  12
+        0x701b, // ( 7,   27)  13
+        0x80a7, // ( 8,  167)  14
+        0x705b, // ( 7,   91)  15
+        0x703b, // ( 7,   59)  16
+        0x602b, // ( 6,   43)  17
+        0x707b, // ( 7,  123)  18
+        0x7007, // ( 7,    7)  19
+        0x90d7, // ( 9,  215)  20
+        0x8067, // ( 8,  103)  21
+        0x91d7, // ( 9,  471)  22
+        0x80e7, // ( 8,  231)  23
+        0xa1f7, // (10,  503)  24
+        0x9037, // ( 9,   55)  25
+        0xa3f7, // (10, 1015)  26
+        0xa00f, // (10,   15)  27
+        0xc5cf, // (12, 1487)  28
+        0xb04f, // (11,   79)  29
+        0xcdcf, // (12, 3535)  30
+        0xb44f, // (11, 1103)  31
+        0x8017, // ( 8,   23)  32
+        0x7047, // ( 7,   71)  33
+        0x9137, // ( 9,  311)  34
+        0x8097, // ( 8,  151)  35
+        0xa20f, // (10,  527)  36
+        0x90b7, // ( 9,  183)  37
+        0xa10f, // (10,  271)  38
+        0x91b7, // ( 9,  439)  39
+        0xb24f, // (11,  591)  40
+        0xa30f, // (10,  783)  41
+        0xb64f, // (11, 1615)  42
+        0xb14f, // (11,  335)  43
+        0xc3cf, // (12,  975)  44
+        0xcbcf, // (12, 3023)  45
+        0xc7cf, // (12, 1999)  46
+        0xcfcf, // (12, 4047)  47
+        0xc02f, // (12,   47)  48
+        0xb54f, // (11, 1359)  49
+        0xc82f, // (12, 2095)  50
+        0xc42f, // (12, 1071)  51
+        0xcc2f, // (12, 3119)  52
+        0xc22f, // (12,  559)  53
+        0xca2f, // (12, 2607)  54
+        0xc62f, // (12, 1583)  55
+        0xce2f, // (12, 3631)  56
+        0xc12f, // (12,  303)  57
+        0xc92f, // (12, 2351)  58
+        0xc52f, // (12, 1327)  59
+        0xcd2f, // (12, 3375)  60
+        0xc32f, // (12,  815)  61
+        0xcb2f, // (12, 2863)  62
+        0xc72f, // (12, 1839)  63
+        0x9077, // ( 9,  119)  64
+        0x8057, // ( 8,   87)  65
+        0xa08f, // (10,  143)  66
+        0x9177, // ( 9,  375)  67
+        0xb34f, // (11,  847)  68
+        0xa28f, // (10,  655)  69
+        0xb74f, // (11, 1871)  70
+        0xb0cf, // (11,  207)  71
+        0xcf2f, // (12, 3887)  72
+        0xb4cf, // (11, 1231)  73
+        0xc0af, // (12,  175)  74
+        0xc8af, // (12, 2223)  75
+        0xc4af, // (12, 1199)  76
+        0xccaf, // (12, 3247)  77
+        0xc2af, // (12,  687)  78
+        0xcaaf, // (12, 2735)  79
+        0xc6af, // (12, 1711)  80
+        0xceaf, // (12, 3759)  81
+        0xc1af, // (12,  431)  82
+        0xc9af, // (12, 2479)  83
+        0xc5af, // (12, 1455)  84
+        0xcdaf, // (12, 3503)  85
+        0xc3af, // (12,  943)  86
+        0xcbaf, // (12, 2991)  87
+        0xc7af, // (12, 1967)  88
+        0xcfaf, // (12, 4015)  89
+        0xc06f, // (12,  111)  90
+        0xc86f, // (12, 2159)  91
+        0xc46f, // (12, 1135)  92
+        0xcc6f, // (12, 3183)  93
+        0xc26f, // (12,  623)  94
+        0xca6f, // (12, 2671)  95
+        0xc66f, // (12, 1647)  96
+        0xce6f, // (12, 3695)  97
+        0xc16f, // (12,  367)  98
+        0xc96f, // (12, 2415)  99
+        0xc56f, // (12, 1391) 100
+        0xcd6f, // (12, 3439) 101
+        0xc36f, // (12,  879) 102
+        0xcb6f, // (12, 2927) 103
+        0xc76f, // (12, 1903) 104
+        0xcf6f, // (12, 3951) 105
+        0xc0ef, // (12,  239) 106
+        0xc8ef, // (12, 2287) 107
+        0xc4ef, // (12, 1263) 108
+        0xccef, // (12, 3311) 109
+        0xc2ef, // (12,  751) 110
+        0xcaef, // (12, 2799) 111
+        0xc6ef, // (12, 1775) 112
+        0xceef, // (12, 3823) 113
+        0xc1ef, // (12,  495) 114
+        0xc9ef, // (12, 2543) 115
+        0xc5ef, // (12, 1519) 116
+        0xcdef, // (12, 3567) 117
+        0xc3ef, // (12, 1007) 118
+        0xcbef, // (12, 3055) 119
+        0xc7ef, // (12, 2031) 120
+        0xcfef, // (12, 4079) 121
+        0xc01f, // (12,   31) 122
+        0xc81f, // (12, 2079) 123
+        0xc41f, // (12, 1055) 124
+        0xcc1f, // (12, 3103) 125
+        0xc21f, // (12,  543) 126
+        0xca1f, // (12, 2591) 127
+        0xa18f, // (10,  399) 128
+        0x90f7, // ( 9,  247) 129
+        0xb2cf, // (11,  719) 130
+        0xa38f, // (10,  911) 131
+        0xc61f, // (12, 1567) 132
+        0xb6cf, // (11, 1743) 133
+        0xce1f, // (12, 3615) 134
+        0xb1cf, // (11,  463) 135
+        0xc11f, // (12,  287) 136
+        0xc91f, // (12, 2335) 137
+        0xc51f, // (12, 1311) 138
+        0xcd1f, // (12, 3359) 139
+        0xc31f, // (12,  799) 140
+        0xcb1f, // (12, 2847) 141
+        0xc71f, // (12, 1823) 142
+        0xcf1f, // (12, 3871) 143
+        0xc09f, // (12,  159) 144
+        0xc89f, // (12, 2207) 145
+        0xc49f, // (12, 1183) 146
+        0xcc9f, // (12, 3231) 147
+        0xc29f, // (12,  671) 148
+        0xca9f, // (12, 2719) 149
+        0xc69f, // (12, 1695) 150
+        0xce9f, // (12, 3743) 151
+        0xc19f, // (12,  415) 152
+        0xc99f, // (12, 2463) 153
+        0xc59f, // (12, 1439) 154
+        0xcd9f, // (12, 3487) 155
+        0xc39f, // (12,  927) 156
+        0xcb9f, // (12, 2975) 157
+        0xc79f, // (12, 1951) 158
+        0xcf9f, // (12, 3999) 159
+        0xc05f, // (12,   95) 160
+        0xc85f, // (12, 2143) 161
+        0xc45f, // (12, 1119) 162
+        0xcc5f, // (12, 3167) 163
+        0xc25f, // (12,  607) 164
+        0xca5f, // (12, 2655) 165
+        0xc65f, // (12, 1631) 166
+        0xce5f, // (12, 3679) 167
+        0xc15f, // (12,  351) 168
+        0xc95f, // (12, 2399) 169
+        0xc55f, // (12, 1375) 170
+        0xcd5f, // (12, 3423) 171
+        0xc35f, // (12,  863) 172
+        0xcb5f, // (12, 2911) 173
+        0xc75f, // (12, 1887) 174
+        0xcf5f, // (12, 3935) 175
+        0xc0df, // (12,  223) 176
+        0xc8df, // (12, 2271) 177
+        0xc4df, // (12, 1247) 178
+        0xccdf, // (12, 3295) 179
+        0xc2df, // (12,  735) 180
+        0xcadf, // (12, 2783) 181
+        0xc6df, // (12, 1759) 182
+        0xcedf, // (12, 3807) 183
+        0xc1df, // (12,  479) 184
+        0xc9df, // (12, 2527) 185
+        0xc5df, // (12, 1503) 186
+        0xcddf, // (12, 3551) 187
+        0xc3df, // (12,  991) 188
+        0xcbdf, // (12, 3039) 189
+        0xc7df, // (12, 2015) 190
+        0xcfdf, // (12, 4063) 191
+        0xc03f, // (12,   63) 192
+        0xc83f, // (12, 2111) 193
+        0xc43f, // (12, 1087) 194
+        0xcc3f, // (12, 3135) 195
+        0xc23f, // (12,  575) 196
+        0xca3f, // (12, 2623) 197
+        0xc63f, // (12, 1599) 198
+        0xce3f, // (12, 3647) 199
+        0xc13f, // (12,  319) 200
+        0xc93f, // (12, 2367) 201
+        0xc53f, // (12, 1343) 202
+        0xcd3f, // (12, 3391) 203
+        0xc33f, // (12,  831) 204
+        0xcb3f, // (12, 2879) 205
+        0xc73f, // (12, 1855) 206
+        0xcf3f, // (12, 3903) 207
+        0xc0bf, // (12,  191) 208
+        0xc8bf, // (12, 2239) 209
+        0xc4bf, // (12, 1215) 210
+        0xccbf, // (12, 3263) 211
+        0xc2bf, // (12,  703) 212
+        0xcabf, // (12, 2751) 213
+        0xc6bf, // (12, 1727) 214
+        0xcebf, // (12, 3775) 215
+        0xc1bf, // (12,  447) 216
+        0xc9bf, // (12, 2495) 217
+        0xc5bf, // (12, 1471) 218
+        0xcdbf, // (12, 3519) 219
+        0xc3bf, // (12,  959) 220
+        0xcbbf, // (12, 3007) 221
+        0xc7bf, // (12, 1983) 222
+        0xcfbf, // (12, 4031) 223
+        0xc07f, // (12,  127) 224
+        0xc87f, // (12, 2175) 225
+        0xc47f, // (12, 1151) 226
+        0xcc7f, // (12, 3199) 227
+        0xc27f, // (12,  639) 228
+        0xca7f, // (12, 2687) 229
+        0xc67f, // (12, 1663) 230
+        0xce7f, // (12, 3711) 231
+        0xc17f, // (12,  383) 232
+        0xc97f, // (12, 2431) 233
+        0xc57f, // (12, 1407) 234
+        0xcd7f, // (12, 3455) 235
+        0xc37f, // (12,  895) 236
+        0xcb7f, // (12, 2943) 237
+        0xc77f, // (12, 1919) 238
+        0xcf7f, // (12, 3967) 239
+        0xc0ff, // (12,  255) 240
+        0xc8ff, // (12, 2303) 241
+        0xc4ff, // (12, 1279) 242
+        0xccff, // (12, 3327) 243
+        0xc2ff, // (12,  767) 244
+        0xcaff, // (12, 2815) 245
+        0xc6ff, // (12, 1791) 246
+        0xceff, // (12, 3839) 247
+        0xc1ff, // (12,  511) 248
+        0xc9ff, // (12, 2559) 249
+        0xc5ff, // (12, 1535) 250
+        0xcdff, // (12, 3583) 251
+        0xc3ff, // (12, 1023) 252
+        0xcbff, // (12, 3071) 253
+        0xc7ff, // (12, 2047) 254
+        0xcfff, // (12, 4095) 255
+    ],
+    // (table 20 of 22) (midrange 4 of 6) (c/k = 1.833333333 = 11.0 / 6.0)
+    // entropy:    4.1937026483207340277
+    // avg_length: 4.2809622975207295426; max_length = 12; num_symbols = 256
+    [
+        //table, // (4 bits,  12 bits) symbol
+        //entry, // (length, codeword) [byte]
+        0x4006, // ( 4,    6)   0
+        0x2000, // ( 2,    0)   1
+        0x400e, // ( 4,   14)   2
+        0x3002, // ( 3,    2)   3
+        0x5005, // ( 5,    5)   4
+        0x4001, // ( 4,    1)   5
+        0x5015, // ( 5,   21)   6
+        0x4009, // ( 4,    9)   7
+        0x6003, // ( 6,    3)   8
+        0x500d, // ( 5,   13)   9
+        0x6023, // ( 6,   35)  10
+        0x501d, // ( 5,   29)  11
+        0x8047, // ( 8,   71)  12
+        0x6013, // ( 6,   19)  13
+        0x80c7, // ( 8,  199)  14
+        0x6033, // ( 6,   51)  15
+        0x701b, // ( 7,   27)  16
+        0x600b, // ( 6,   11)  17
+        0x8027, // ( 8,   39)  18
+        0x602b, // ( 6,   43)  19
+        0x90d7, // ( 9,  215)  20
+        0x705b, // ( 7,   91)  21
+        0x91d7, // ( 9,  471)  22
+        0x703b, // ( 7,   59)  23
+        0xa1f7, // (10,  503)  24
+        0x80a7, // ( 8,  167)  25
+        0xa3f7, // (10, 1015)  26
+        0x8067, // ( 8,  103)  27
+        0xb24f, // (11,  591)  28
+        0xa00f, // (10,   15)  29
+        0xb64f, // (11, 1615)  30
+        0xa20f, // (10,  527)  31
+        0x9037, // ( 9,   55)  32
+        0x707b, // ( 7,  123)  33
+        0x9137, // ( 9,  311)  34
+        0x7007, // ( 7,    7)  35
+        0xa10f, // (10,  271)  36
+        0x80e7, // ( 8,  231)  37
+        0xa30f, // (10,  783)  38
+        0x8017, // ( 8,   23)  39
+        0xb14f, // (11,  335)  40
+        0x90b7, // ( 9,  183)  41
+        0xb54f, // (11, 1359)  42
+        0xa08f, // (10,  143)  43
+        0xc02f, // (12,   47)  44
+        0xb34f, // (11,  847)  45
+        0xc82f, // (12, 2095)  46
+        0xb74f, // (11, 1871)  47
+        0xc42f, // (12, 1071)  48
+        0xb0cf, // (11,  207)  49
+        0xcc2f, // (12, 3119)  50
+        0xb4cf, // (11, 1231)  51
+        0xc22f, // (12,  559)  52
+        0xca2f, // (12, 2607)  53
+        0xc62f, // (12, 1583)  54
+        0xce2f, // (12, 3631)  55
+        0xc12f, // (12,  303)  56
+        0xc92f, // (12, 2351)  57
+        0xc52f, // (12, 1327)  58
+        0xcd2f, // (12, 3375)  59
+        0xc32f, // (12,  815)  60
+        0xcb2f, // (12, 2863)  61
+        0xc72f, // (12, 1839)  62
+        0xcf2f, // (12, 3887)  63
+        0xa28f, // (10,  655)  64
+        0x8097, // ( 8,  151)  65
+        0xa18f, // (10,  399)  66
+        0x8057, // ( 8,   87)  67
+        0xb2cf, // (11,  719)  68
+        0x91b7, // ( 9,  439)  69
+        0xb6cf, // (11, 1743)  70
+        0x9077, // ( 9,  119)  71
+        0xc0af, // (12,  175)  72
+        0xb1cf, // (11,  463)  73
+        0xc8af, // (12, 2223)  74
+        0xb5cf, // (11, 1487)  75
+        0xc4af, // (12, 1199)  76
+        0xccaf, // (12, 3247)  77
+        0xc2af, // (12,  687)  78
+        0xcaaf, // (12, 2735)  79
+        0xc6af, // (12, 1711)  80
+        0xceaf, // (12, 3759)  81
+        0xc1af, // (12,  431)  82
+        0xc9af, // (12, 2479)  83
+        0xc5af, // (12, 1455)  84
+        0xcdaf, // (12, 3503)  85
+        0xc3af, // (12,  943)  86
+        0xcbaf, // (12, 2991)  87
+        0xc7af, // (12, 1967)  88
+        0xcfaf, // (12, 4015)  89
+        0xc06f, // (12,  111)  90
+        0xc86f, // (12, 2159)  91
+        0xc46f, // (12, 1135)  92
+        0xcc6f, // (12, 3183)  93
+        0xc26f, // (12,  623)  94
+        0xca6f, // (12, 2671)  95
+        0xc66f, // (12, 1647)  96
+        0xce6f, // (12, 3695)  97
+        0xc16f, // (12,  367)  98
+        0xc96f, // (12, 2415)  99
+        0xc56f, // (12, 1391) 100
+        0xcd6f, // (12, 3439) 101
+        0xc36f, // (12,  879) 102
+        0xcb6f, // (12, 2927) 103
+        0xc76f, // (12, 1903) 104
+        0xcf6f, // (12, 3951) 105
+        0xc0ef, // (12,  239) 106
+        0xc8ef, // (12, 2287) 107
+        0xc4ef, // (12, 1263) 108
+        0xccef, // (12, 3311) 109
+        0xc2ef, // (12,  751) 110
+        0xcaef, // (12, 2799) 111
+        0xc6ef, // (12, 1775) 112
+        0xceef, // (12, 3823) 113
+        0xc1ef, // (12,  495) 114
+        0xc9ef, // (12, 2543) 115
+        0xc5ef, // (12, 1519) 116
+        0xcdef, // (12, 3567) 117
+        0xc3ef, // (12, 1007) 118
+        0xcbef, // (12, 3055) 119
+        0xc7ef, // (12, 2031) 120
+        0xcfef, // (12, 4079) 121
+        0xc01f, // (12,   31) 122
+        0xc81f, // (12, 2079) 123
+        0xc41f, // (12, 1055) 124
+        0xcc1f, // (12, 3103) 125
+        0xc21f, // (12,  543) 126
+        0xca1f, // (12, 2591) 127
+        0xb3cf, // (11,  975) 128
+        0x9177, // ( 9,  375) 129
+        0xb7cf, // (11, 1999) 130
+        0x90f7, // ( 9,  247) 131
+        0xc61f, // (12, 1567) 132
+        0xa38f, // (10,  911) 133
+        0xce1f, // (12, 3615) 134
+        0xa04f, // (10,   79) 135
+        0xc11f, // (12,  287) 136
+        0xc91f, // (12, 2335) 137
+        0xc51f, // (12, 1311) 138
+        0xcd1f, // (12, 3359) 139
+        0xc31f, // (12,  799) 140
+        0xcb1f, // (12, 2847) 141
+        0xc71f, // (12, 1823) 142
+        0xcf1f, // (12, 3871) 143
+        0xc09f, // (12,  159) 144
+        0xc89f, // (12, 2207) 145
+        0xc49f, // (12, 1183) 146
+        0xcc9f, // (12, 3231) 147
+        0xc29f, // (12,  671) 148
+        0xca9f, // (12, 2719) 149
+        0xc69f, // (12, 1695) 150
+        0xce9f, // (12, 3743) 151
+        0xc19f, // (12,  415) 152
+        0xc99f, // (12, 2463) 153
+        0xc59f, // (12, 1439) 154
+        0xcd9f, // (12, 3487) 155
+        0xc39f, // (12,  927) 156
+        0xcb9f, // (12, 2975) 157
+        0xc79f, // (12, 1951) 158
+        0xcf9f, // (12, 3999) 159
+        0xc05f, // (12,   95) 160
+        0xc85f, // (12, 2143) 161
+        0xc45f, // (12, 1119) 162
+        0xcc5f, // (12, 3167) 163
+        0xc25f, // (12,  607) 164
+        0xca5f, // (12, 2655) 165
+        0xc65f, // (12, 1631) 166
+        0xce5f, // (12, 3679) 167
+        0xc15f, // (12,  351) 168
+        0xc95f, // (12, 2399) 169
+        0xc55f, // (12, 1375) 170
+        0xcd5f, // (12, 3423) 171
+        0xc35f, // (12,  863) 172
+        0xcb5f, // (12, 2911) 173
+        0xc75f, // (12, 1887) 174
+        0xcf5f, // (12, 3935) 175
+        0xc0df, // (12,  223) 176
+        0xc8df, // (12, 2271) 177
+        0xc4df, // (12, 1247) 178
+        0xccdf, // (12, 3295) 179
+        0xc2df, // (12,  735) 180
+        0xcadf, // (12, 2783) 181
+        0xc6df, // (12, 1759) 182
+        0xcedf, // (12, 3807) 183
+        0xc1df, // (12,  479) 184
+        0xc9df, // (12, 2527) 185
+        0xc5df, // (12, 1503) 186
+        0xcddf, // (12, 3551) 187
+        0xc3df, // (12,  991) 188
+        0xcbdf, // (12, 3039) 189
+        0xc7df, // (12, 2015) 190
+        0xcfdf, // (12, 4063) 191
+        0xc03f, // (12,   63) 192
+        0xc83f, // (12, 2111) 193
+        0xc43f, // (12, 1087) 194
+        0xcc3f, // (12, 3135) 195
+        0xc23f, // (12,  575) 196
+        0xca3f, // (12, 2623) 197
+        0xc63f, // (12, 1599) 198
+        0xce3f, // (12, 3647) 199
+        0xc13f, // (12,  319) 200
+        0xc93f, // (12, 2367) 201
+        0xc53f, // (12, 1343) 202
+        0xcd3f, // (12, 3391) 203
+        0xc33f, // (12,  831) 204
+        0xcb3f, // (12, 2879) 205
+        0xc73f, // (12, 1855) 206
+        0xcf3f, // (12, 3903) 207
+        0xc0bf, // (12,  191) 208
+        0xc8bf, // (12, 2239) 209
+        0xc4bf, // (12, 1215) 210
+        0xccbf, // (12, 3263) 211
+        0xc2bf, // (12,  703) 212
+        0xcabf, // (12, 2751) 213
+        0xc6bf, // (12, 1727) 214
+        0xcebf, // (12, 3775) 215
+        0xc1bf, // (12,  447) 216
+        0xc9bf, // (12, 2495) 217
+        0xc5bf, // (12, 1471) 218
+        0xcdbf, // (12, 3519) 219
+        0xc3bf, // (12,  959) 220
+        0xcbbf, // (12, 3007) 221
+        0xc7bf, // (12, 1983) 222
+        0xcfbf, // (12, 4031) 223
+        0xc07f, // (12,  127) 224
+        0xc87f, // (12, 2175) 225
+        0xc47f, // (12, 1151) 226
+        0xcc7f, // (12, 3199) 227
+        0xc27f, // (12,  639) 228
+        0xca7f, // (12, 2687) 229
+        0xc67f, // (12, 1663) 230
+        0xce7f, // (12, 3711) 231
+        0xc17f, // (12,  383) 232
+        0xc97f, // (12, 2431) 233
+        0xc57f, // (12, 1407) 234
+        0xcd7f, // (12, 3455) 235
+        0xc37f, // (12,  895) 236
+        0xcb7f, // (12, 2943) 237
+        0xc77f, // (12, 1919) 238
+        0xcf7f, // (12, 3967) 239
+        0xc0ff, // (12,  255) 240
+        0xc8ff, // (12, 2303) 241
+        0xc4ff, // (12, 1279) 242
+        0xccff, // (12, 3327) 243
+        0xc2ff, // (12,  767) 244
+        0xcaff, // (12, 2815) 245
+        0xc6ff, // (12, 1791) 246
+        0xceff, // (12, 3839) 247
+        0xc1ff, // (12,  511) 248
+        0xc9ff, // (12, 2559) 249
+        0xc5ff, // (12, 1535) 250
+        0xcdff, // (12, 3583) 251
+        0xc3ff, // (12, 1023) 252
+        0xcbff, // (12, 3071) 253
+        0xc7ff, // (12, 2047) 254
+        0xcfff, // (12, 4095) 255
+    ],
+    // (table 21 of 22) (midrange 5 of 6) (c/k = 2.166666667 = 13.0 / 6.0)
+    // entropy:    4.3601926041863263706
+    // avg_length: 4.4384101723259572481; max_length = 12; num_symbols = 256
+    [
+        //table, // (4 bits,  12 bits) symbol
+        //entry, // (length, codeword) [byte]
+        0x5009, // ( 5,    9)   0
+        0x3002, // ( 3,    2)   1
+        0x5019, // ( 5,   25)   2
+        0x2000, // ( 2,    0)   3
+        0x6003, // ( 6,    3)   4
+        0x4001, // ( 4,    1)   5
+        0x5005, // ( 5,    5)   6
+        0x3006, // ( 3,    6)   7
+        0x702b, // ( 7,   43)   8
+        0x5015, // ( 5,   21)   9
+        0x706b, // ( 7,  107)  10
+        0x500d, // ( 5,   13)  11
+        0x8007, // ( 8,    7)  12
+        0x6023, // ( 6,   35)  13
+        0x8087, // ( 8,  135)  14
+        0x501d, // ( 5,   29)  15
+        0x8047, // ( 8,   71)  16
+        0x6013, // ( 6,   19)  17
+        0x80c7, // ( 8,  199)  18
+        0x6033, // ( 6,   51)  19
+        0x9097, // ( 9,  151)  20
+        0x701b, // ( 7,   27)  21
+        0x9197, // ( 9,  407)  22
+        0x600b, // ( 6,   11)  23
+        0xa0f7, // (10,  247)  24
+        0x8027, // ( 8,   39)  25
+        0xa2f7, // (10,  759)  26
+        0x80a7, // ( 8,  167)  27
+        0xb14f, // (11,  335)  28
+        0x9057, // ( 9,   87)  29
+        0xb54f, // (11, 1359)  30
+        0x9157, // ( 9,  343)  31
+        0x90d7, // ( 9,  215)  32
+        0x705b, // ( 7,   91)  33
+        0x91d7, // ( 9,  471)  34
+        0x703b, // ( 7,   59)  35
+        0xa1f7, // (10,  503)  36
+        0x8067, // ( 8,  103)  37
+        0xa3f7, // (10, 1015)  38
+        0x707b, // ( 7,  123)  39
+        0xb34f, // (11,  847)  40
+        0x9037, // ( 9,   55)  41
+        0xb74f, // (11, 1871)  42
+        0x9137, // ( 9,  311)  43
+        0xc12f, // (12,  303)  44
+        0xa00f, // (10,   15)  45
+        0xc92f, // (12, 2351)  46
+        0xa20f, // (10,  527)  47
+        0xc52f, // (12, 1327)  48
+        0xa10f, // (10,  271)  49
+        0xcd2f, // (12, 3375)  50
+        0xa30f, // (10,  783)  51
+        0xc32f, // (12,  815)  52
+        0xb0cf, // (11,  207)  53
+        0xcb2f, // (12, 2863)  54
+        0xb4cf, // (11, 1231)  55
+        0xc72f, // (12, 1839)  56
+        0xcf2f, // (12, 3887)  57
+        0xc0af, // (12,  175)  58
+        0xc8af, // (12, 2223)  59
+        0xc4af, // (12, 1199)  60
+        0xccaf, // (12, 3247)  61
+        0xc2af, // (12,  687)  62
+        0xcaaf, // (12, 2735)  63
+        0xa08f, // (10,  143)  64
+        0x80e7, // ( 8,  231)  65
+        0xa28f, // (10,  655)  66
+        0x8017, // ( 8,   23)  67
+        0xb2cf, // (11,  719)  68
+        0x90b7, // ( 9,  183)  69
+        0xb6cf, // (11, 1743)  70
+        0x91b7, // ( 9,  439)  71
+        0xc6af, // (12, 1711)  72
+        0xa18f, // (10,  399)  73
+        0xceaf, // (12, 3759)  74
+        0xa38f, // (10,  911)  75
+        0xc1af, // (12,  431)  76
+        0xb1cf, // (11,  463)  77
+        0xc9af, // (12, 2479)  78
+        0xb5cf, // (11, 1487)  79
+        0xc5af, // (12, 1455)  80
+        0xb3cf, // (11,  975)  81
+        0xcdaf, // (12, 3503)  82
+        0xb7cf, // (11, 1999)  83
+        0xc3af, // (12,  943)  84
+        0xcbaf, // (12, 2991)  85
+        0xc7af, // (12, 1967)  86
+        0xcfaf, // (12, 4015)  87
+        0xc06f, // (12,  111)  88
+        0xc86f, // (12, 2159)  89
+        0xc46f, // (12, 1135)  90
+        0xcc6f, // (12, 3183)  91
+        0xc26f, // (12,  623)  92
+        0xca6f, // (12, 2671)  93
+        0xc66f, // (12, 1647)  94
+        0xce6f, // (12, 3695)  95
+        0xc16f, // (12,  367)  96
+        0xc96f, // (12, 2415)  97
+        0xc56f, // (12, 1391)  98
+        0xcd6f, // (12, 3439)  99
+        0xc36f, // (12,  879) 100
+        0xcb6f, // (12, 2927) 101
+        0xc76f, // (12, 1903) 102
+        0xcf6f, // (12, 3951) 103
+        0xc0ef, // (12,  239) 104
+        0xc8ef, // (12, 2287) 105
+        0xc4ef, // (12, 1263) 106
+        0xccef, // (12, 3311) 107
+        0xc2ef, // (12,  751) 108
+        0xcaef, // (12, 2799) 109
+        0xc6ef, // (12, 1775) 110
+        0xceef, // (12, 3823) 111
+        0xc1ef, // (12,  495) 112
+        0xc9ef, // (12, 2543) 113
+        0xc5ef, // (12, 1519) 114
+        0xcdef, // (12, 3567) 115
+        0xc3ef, // (12, 1007) 116
+        0xcbef, // (12, 3055) 117
+        0xc7ef, // (12, 2031) 118
+        0xcfef, // (12, 4079) 119
+        0xc01f, // (12,   31) 120
+        0xc81f, // (12, 2079) 121
+        0xc41f, // (12, 1055) 122
+        0xcc1f, // (12, 3103) 123
+        0xc21f, // (12,  543) 124
+        0xca1f, // (12, 2591) 125
+        0xc61f, // (12, 1567) 126
+        0xce1f, // (12, 3615) 127
+        0xb02f, // (11,   47) 128
+        0x9077, // ( 9,  119) 129
+        0xb42f, // (11, 1071) 130
+        0x9177, // ( 9,  375) 131
+        0xc11f, // (12,  287) 132
+        0xa04f, // (10,   79) 133
+        0xc91f, // (12, 2335) 134
+        0xa24f, // (10,  591) 135
+        0xc51f, // (12, 1311) 136
+        0xb22f, // (11,  559) 137
+        0xcd1f, // (12, 3359) 138
+        0xb62f, // (11, 1583) 139
+        0xc31f, // (12,  799) 140
+        0xcb1f, // (12, 2847) 141
+        0xc71f, // (12, 1823) 142
+        0xcf1f, // (12, 3871) 143
+        0xc09f, // (12,  159) 144
+        0xc89f, // (12, 2207) 145
+        0xc49f, // (12, 1183) 146
+        0xcc9f, // (12, 3231) 147
+        0xc29f, // (12,  671) 148
+        0xca9f, // (12, 2719) 149
+        0xc69f, // (12, 1695) 150
+        0xce9f, // (12, 3743) 151
+        0xc19f, // (12,  415) 152
+        0xc99f, // (12, 2463) 153
+        0xc59f, // (12, 1439) 154
+        0xcd9f, // (12, 3487) 155
+        0xc39f, // (12,  927) 156
+        0xcb9f, // (12, 2975) 157
+        0xc79f, // (12, 1951) 158
+        0xcf9f, // (12, 3999) 159
+        0xc05f, // (12,   95) 160
+        0xc85f, // (12, 2143) 161
+        0xc45f, // (12, 1119) 162
+        0xcc5f, // (12, 3167) 163
+        0xc25f, // (12,  607) 164
+        0xca5f, // (12, 2655) 165
+        0xc65f, // (12, 1631) 166
+        0xce5f, // (12, 3679) 167
+        0xc15f, // (12,  351) 168
+        0xc95f, // (12, 2399) 169
+        0xc55f, // (12, 1375) 170
+        0xcd5f, // (12, 3423) 171
+        0xc35f, // (12,  863) 172
+        0xcb5f, // (12, 2911) 173
+        0xc75f, // (12, 1887) 174
+        0xcf5f, // (12, 3935) 175
+        0xc0df, // (12,  223) 176
+        0xc8df, // (12, 2271) 177
+        0xc4df, // (12, 1247) 178
+        0xccdf, // (12, 3295) 179
+        0xc2df, // (12,  735) 180
+        0xcadf, // (12, 2783) 181
+        0xc6df, // (12, 1759) 182
+        0xcedf, // (12, 3807) 183
+        0xc1df, // (12,  479) 184
+        0xc9df, // (12, 2527) 185
+        0xc5df, // (12, 1503) 186
+        0xcddf, // (12, 3551) 187
+        0xc3df, // (12,  991) 188
+        0xcbdf, // (12, 3039) 189
+        0xc7df, // (12, 2015) 190
+        0xcfdf, // (12, 4063) 191
+        0xc03f, // (12,   63) 192
+        0xc83f, // (12, 2111) 193
+        0xc43f, // (12, 1087) 194
+        0xcc3f, // (12, 3135) 195
+        0xc23f, // (12,  575) 196
+        0xca3f, // (12, 2623) 197
+        0xc63f, // (12, 1599) 198
+        0xce3f, // (12, 3647) 199
+        0xc13f, // (12,  319) 200
+        0xc93f, // (12, 2367) 201
+        0xc53f, // (12, 1343) 202
+        0xcd3f, // (12, 3391) 203
+        0xc33f, // (12,  831) 204
+        0xcb3f, // (12, 2879) 205
+        0xc73f, // (12, 1855) 206
+        0xcf3f, // (12, 3903) 207
+        0xc0bf, // (12,  191) 208
+        0xc8bf, // (12, 2239) 209
+        0xc4bf, // (12, 1215) 210
+        0xccbf, // (12, 3263) 211
+        0xc2bf, // (12,  703) 212
+        0xcabf, // (12, 2751) 213
+        0xc6bf, // (12, 1727) 214
+        0xcebf, // (12, 3775) 215
+        0xc1bf, // (12,  447) 216
+        0xc9bf, // (12, 2495) 217
+        0xc5bf, // (12, 1471) 218
+        0xcdbf, // (12, 3519) 219
+        0xc3bf, // (12,  959) 220
+        0xcbbf, // (12, 3007) 221
+        0xc7bf, // (12, 1983) 222
+        0xcfbf, // (12, 4031) 223
+        0xc07f, // (12,  127) 224
+        0xc87f, // (12, 2175) 225
+        0xc47f, // (12, 1151) 226
+        0xcc7f, // (12, 3199) 227
+        0xc27f, // (12,  639) 228
+        0xca7f, // (12, 2687) 229
+        0xc67f, // (12, 1663) 230
+        0xce7f, // (12, 3711) 231
+        0xc17f, // (12,  383) 232
+        0xc97f, // (12, 2431) 233
+        0xc57f, // (12, 1407) 234
+        0xcd7f, // (12, 3455) 235
+        0xc37f, // (12,  895) 236
+        0xcb7f, // (12, 2943) 237
+        0xc77f, // (12, 1919) 238
+        0xcf7f, // (12, 3967) 239
+        0xc0ff, // (12,  255) 240
+        0xc8ff, // (12, 2303) 241
+        0xc4ff, // (12, 1279) 242
+        0xccff, // (12, 3327) 243
+        0xc2ff, // (12,  767) 244
+        0xcaff, // (12, 2815) 245
+        0xc6ff, // (12, 1791) 246
+        0xceff, // (12, 3839) 247
+        0xc1ff, // (12,  511) 248
+        0xc9ff, // (12, 2559) 249
+        0xc5ff, // (12, 1535) 250
+        0xcdff, // (12, 3583) 251
+        0xc3ff, // (12, 1023) 252
+        0xcbff, // (12, 3071) 253
+        0xc7ff, // (12, 2047) 254
+        0xcfff, // (12, 4095) 255
+    ],
+];
+
+/// Reverse mapping for high entropy byte encoding tables.
+pub(super) static DECODING_TABLES_FOR_HIGH_ENTROPY_BYTE: [[u16; 4096]; 22] = [
+    [
+        519, 1035, 771, 1567, 519, 1293, 783, 2081, 519, 1281, 771, 1809, 519, 1303, 783, 2609,
+        519, 1035, 771, 1575, 519, 1299, 783, 2304, 519, 1285, 771, 1859, 519, 1545, 783, 3186,
+        519, 1035, 771, 1571, 519, 1293, 783, 2123, 519, 1281, 771, 1835, 519, 1303, 783, 2901,
+        519, 1035, 771, 1794, 519, 1299, 783, 2373, 519, 1285, 771, 2058, 519, 1563, 783, 3264,
+        519, 1035, 771, 1567, 519, 1293, 783, 2099, 519, 1281, 771, 1813, 519, 1303, 783, 2689,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1285, 771, 1863, 519, 1545, 783, 3229,
+        519, 1035, 771, 1571, 519, 1293, 783, 2179, 519, 1281, 771, 1839, 519, 1303, 783, 3134,
+        519, 1035, 771, 1798, 519, 1299, 783, 2447, 519, 1285, 771, 2073, 519, 1563, 783, 3296,
+        519, 1035, 771, 1567, 519, 1293, 783, 2085, 519, 1281, 771, 1809, 519, 1303, 783, 2651,
+        519, 1035, 771, 1575, 519, 1299, 783, 2326, 519, 1285, 771, 1859, 519, 1545, 783, 3204,
+        519, 1035, 771, 1571, 519, 1293, 783, 2127, 519, 1281, 771, 1835, 519, 1303, 783, 2983,
+        519, 1035, 771, 1794, 519, 1299, 783, 2391, 519, 1285, 771, 2062, 519, 1563, 783, 3280,
+        519, 1035, 771, 1567, 519, 1293, 783, 2103, 519, 1281, 771, 1813, 519, 1303, 783, 2832,
+        519, 1035, 771, 1575, 519, 1299, 783, 2367, 519, 1285, 771, 1863, 519, 1545, 783, 3248,
+        519, 1035, 771, 1571, 519, 1293, 783, 2183, 519, 1281, 771, 1839, 519, 1303, 783, 3165,
+        519, 1035, 771, 1798, 519, 1299, 783, 2578, 519, 1285, 771, 2077, 519, 1563, 783, 3312,
+        519, 1035, 771, 1567, 519, 1293, 783, 2081, 519, 1281, 771, 1809, 519, 1303, 783, 2633,
+        519, 1035, 771, 1575, 519, 1299, 783, 2308, 519, 1285, 771, 1859, 519, 1545, 783, 3194,
+        519, 1035, 771, 1571, 519, 1293, 783, 2123, 519, 1281, 771, 1835, 519, 1303, 783, 2957,
+        519, 1035, 771, 1794, 519, 1299, 783, 2387, 519, 1285, 771, 2058, 519, 1563, 783, 3272,
+        519, 1035, 771, 1567, 519, 1293, 783, 2099, 519, 1281, 771, 1813, 519, 1303, 783, 2707,
+        519, 1035, 771, 1575, 519, 1299, 783, 2363, 519, 1285, 771, 1863, 519, 1545, 783, 3240,
+        519, 1035, 771, 1571, 519, 1293, 783, 2179, 519, 1281, 771, 1839, 519, 1303, 783, 3152,
+        519, 1035, 771, 1798, 519, 1299, 783, 2568, 519, 1285, 771, 2073, 519, 1563, 783, 3304,
+        519, 1035, 771, 1567, 519, 1293, 783, 2085, 519, 1281, 771, 1809, 519, 1303, 783, 2659,
+        519, 1035, 771, 1575, 519, 1299, 783, 2345, 519, 1285, 771, 1859, 519, 1545, 783, 3218,
+        519, 1035, 771, 1571, 519, 1293, 783, 2127, 519, 1281, 771, 1835, 519, 1303, 783, 3116,
+        519, 1035, 771, 1794, 519, 1299, 783, 2443, 519, 1285, 771, 2062, 519, 1563, 783, 3288,
+        519, 1035, 771, 1567, 519, 1293, 783, 2103, 519, 1281, 771, 1813, 519, 1303, 783, 2873,
+        519, 1035, 771, 1575, 519, 1299, 783, 2369, 519, 1285, 771, 1863, 519, 1545, 783, 3256,
+        519, 1035, 771, 1571, 519, 1293, 783, 2183, 519, 1281, 771, 1839, 519, 1303, 783, 3176,
+        519, 1035, 771, 1798, 519, 1299, 783, 2590, 519, 1285, 771, 2077, 519, 1563, 783, 3320,
+        519, 1035, 771, 1567, 519, 1293, 783, 2081, 519, 1281, 771, 1809, 519, 1303, 783, 2613,
+        519, 1035, 771, 1575, 519, 1299, 783, 2304, 519, 1285, 771, 1859, 519, 1545, 783, 3190,
+        519, 1035, 771, 1571, 519, 1293, 783, 2123, 519, 1281, 771, 1835, 519, 1303, 783, 2927,
+        519, 1035, 771, 1794, 519, 1299, 783, 2373, 519, 1285, 771, 2058, 519, 1563, 783, 3268,
+        519, 1035, 771, 1567, 519, 1293, 783, 2099, 519, 1281, 771, 1813, 519, 1303, 783, 2693,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1285, 771, 1863, 519, 1545, 783, 3234,
+        519, 1035, 771, 1571, 519, 1293, 783, 2179, 519, 1281, 771, 1839, 519, 1303, 783, 3144,
+        519, 1035, 771, 1798, 519, 1299, 783, 2447, 519, 1285, 771, 2073, 519, 1563, 783, 3300,
+        519, 1035, 771, 1567, 519, 1293, 783, 2085, 519, 1281, 771, 1809, 519, 1303, 783, 2655,
+        519, 1035, 771, 1575, 519, 1299, 783, 2326, 519, 1285, 771, 1859, 519, 1545, 783, 3212,
+        519, 1035, 771, 1571, 519, 1293, 783, 2127, 519, 1281, 771, 1835, 519, 1303, 783, 3104,
+        519, 1035, 771, 1794, 519, 1299, 783, 2391, 519, 1285, 771, 2062, 519, 1563, 783, 3284,
+        519, 1035, 771, 1567, 519, 1293, 783, 2103, 519, 1281, 771, 1813, 519, 1303, 783, 2850,
+        519, 1035, 771, 1575, 519, 1299, 783, 2367, 519, 1285, 771, 1863, 519, 1545, 783, 3252,
+        519, 1035, 771, 1571, 519, 1293, 783, 2183, 519, 1281, 771, 1839, 519, 1303, 783, 3170,
+        519, 1035, 771, 1798, 519, 1299, 783, 2586, 519, 1285, 771, 2077, 519, 1563, 783, 3316,
+        519, 1035, 771, 1567, 519, 1293, 783, 2081, 519, 1281, 771, 1809, 519, 1303, 783, 2637,
+        519, 1035, 771, 1575, 519, 1299, 783, 2308, 519, 1285, 771, 1859, 519, 1545, 783, 3198,
+        519, 1035, 771, 1571, 519, 1293, 783, 2123, 519, 1281, 771, 1835, 519, 1303, 783, 2975,
+        519, 1035, 771, 1794, 519, 1299, 783, 2387, 519, 1285, 771, 2058, 519, 1563, 783, 3276,
+        519, 1035, 771, 1567, 519, 1293, 783, 2099, 519, 1281, 771, 1813, 519, 1303, 783, 2711,
+        519, 1035, 771, 1575, 519, 1299, 783, 2363, 519, 1285, 771, 1863, 519, 1545, 783, 3244,
+        519, 1035, 771, 1571, 519, 1293, 783, 2179, 519, 1281, 771, 1839, 519, 1303, 783, 3160,
+        519, 1035, 771, 1798, 519, 1299, 783, 2572, 519, 1285, 771, 2073, 519, 1563, 783, 3308,
+        519, 1035, 771, 1567, 519, 1293, 783, 2085, 519, 1281, 771, 1809, 519, 1303, 783, 2663,
+        519, 1035, 771, 1575, 519, 1299, 783, 2345, 519, 1285, 771, 1859, 519, 1545, 783, 3224,
+        519, 1035, 771, 1571, 519, 1293, 783, 2127, 519, 1281, 771, 1835, 519, 1303, 783, 3126,
+        519, 1035, 771, 1794, 519, 1299, 783, 2443, 519, 1285, 771, 2062, 519, 1563, 783, 3292,
+        519, 1035, 771, 1567, 519, 1293, 783, 2103, 519, 1281, 771, 1813, 519, 1303, 783, 2886,
+        519, 1035, 771, 1575, 519, 1299, 783, 2369, 519, 1285, 771, 1863, 519, 1545, 783, 3260,
+        519, 1035, 771, 1571, 519, 1293, 783, 2183, 519, 1281, 771, 1839, 519, 1303, 783, 3181,
+        519, 1035, 771, 1798, 519, 1299, 783, 2598, 519, 1285, 771, 2077, 519, 1563, 783, 3324,
+        519, 1035, 771, 1567, 519, 1293, 783, 2081, 519, 1281, 771, 1809, 519, 1303, 783, 2609,
+        519, 1035, 771, 1575, 519, 1299, 783, 2304, 519, 1285, 771, 1859, 519, 1545, 783, 3188,
+        519, 1035, 771, 1571, 519, 1293, 783, 2123, 519, 1281, 771, 1835, 519, 1303, 783, 2923,
+        519, 1035, 771, 1794, 519, 1299, 783, 2373, 519, 1285, 771, 2058, 519, 1563, 783, 3266,
+        519, 1035, 771, 1567, 519, 1293, 783, 2099, 519, 1281, 771, 1813, 519, 1303, 783, 2689,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1285, 771, 1863, 519, 1545, 783, 3232,
+        519, 1035, 771, 1571, 519, 1293, 783, 2179, 519, 1281, 771, 1839, 519, 1303, 783, 3138,
+        519, 1035, 771, 1798, 519, 1299, 783, 2447, 519, 1285, 771, 2073, 519, 1563, 783, 3298,
+        519, 1035, 771, 1567, 519, 1293, 783, 2085, 519, 1281, 771, 1809, 519, 1303, 783, 2651,
+        519, 1035, 771, 1575, 519, 1299, 783, 2326, 519, 1285, 771, 1859, 519, 1545, 783, 3208,
+        519, 1035, 771, 1571, 519, 1293, 783, 2127, 519, 1281, 771, 1835, 519, 1303, 783, 3096,
+        519, 1035, 771, 1794, 519, 1299, 783, 2391, 519, 1285, 771, 2062, 519, 1563, 783, 3282,
+        519, 1035, 771, 1567, 519, 1293, 783, 2103, 519, 1281, 771, 1813, 519, 1303, 783, 2836,
+        519, 1035, 771, 1575, 519, 1299, 783, 2367, 519, 1285, 771, 1863, 519, 1545, 783, 3250,
+        519, 1035, 771, 1571, 519, 1293, 783, 2183, 519, 1281, 771, 1839, 519, 1303, 783, 3168,
+        519, 1035, 771, 1798, 519, 1299, 783, 2578, 519, 1285, 771, 2077, 519, 1563, 783, 3314,
+        519, 1035, 771, 1567, 519, 1293, 783, 2081, 519, 1281, 771, 1809, 519, 1303, 783, 2633,
+        519, 1035, 771, 1575, 519, 1299, 783, 2308, 519, 1285, 771, 1859, 519, 1545, 783, 3196,
+        519, 1035, 771, 1571, 519, 1293, 783, 2123, 519, 1281, 771, 1835, 519, 1303, 783, 2971,
+        519, 1035, 771, 1794, 519, 1299, 783, 2387, 519, 1285, 771, 2058, 519, 1563, 783, 3274,
+        519, 1035, 771, 1567, 519, 1293, 783, 2099, 519, 1281, 771, 1813, 519, 1303, 783, 2707,
+        519, 1035, 771, 1575, 519, 1299, 783, 2363, 519, 1285, 771, 1863, 519, 1545, 783, 3242,
+        519, 1035, 771, 1571, 519, 1293, 783, 2179, 519, 1281, 771, 1839, 519, 1303, 783, 3156,
+        519, 1035, 771, 1798, 519, 1299, 783, 2568, 519, 1285, 771, 2073, 519, 1563, 783, 3306,
+        519, 1035, 771, 1567, 519, 1293, 783, 2085, 519, 1281, 771, 1809, 519, 1303, 783, 2659,
+        519, 1035, 771, 1575, 519, 1299, 783, 2345, 519, 1285, 771, 1859, 519, 1545, 783, 3221,
+        519, 1035, 771, 1571, 519, 1293, 783, 2127, 519, 1281, 771, 1835, 519, 1303, 783, 3122,
+        519, 1035, 771, 1794, 519, 1299, 783, 2443, 519, 1285, 771, 2062, 519, 1563, 783, 3290,
+        519, 1035, 771, 1567, 519, 1293, 783, 2103, 519, 1281, 771, 1813, 519, 1303, 783, 2877,
+        519, 1035, 771, 1575, 519, 1299, 783, 2369, 519, 1285, 771, 1863, 519, 1545, 783, 3258,
+        519, 1035, 771, 1571, 519, 1293, 783, 2183, 519, 1281, 771, 1839, 519, 1303, 783, 3178,
+        519, 1035, 771, 1798, 519, 1299, 783, 2590, 519, 1285, 771, 2077, 519, 1563, 783, 3322,
+        519, 1035, 771, 1567, 519, 1293, 783, 2081, 519, 1281, 771, 1809, 519, 1303, 783, 2613,
+        519, 1035, 771, 1575, 519, 1299, 783, 2304, 519, 1285, 771, 1859, 519, 1545, 783, 3192,
+        519, 1035, 771, 1571, 519, 1293, 783, 2123, 519, 1281, 771, 1835, 519, 1303, 783, 2953,
+        519, 1035, 771, 1794, 519, 1299, 783, 2373, 519, 1285, 771, 2058, 519, 1563, 783, 3270,
+        519, 1035, 771, 1567, 519, 1293, 783, 2099, 519, 1281, 771, 1813, 519, 1303, 783, 2693,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1285, 771, 1863, 519, 1545, 783, 3237,
+        519, 1035, 771, 1571, 519, 1293, 783, 2179, 519, 1281, 771, 1839, 519, 1303, 783, 3148,
+        519, 1035, 771, 1798, 519, 1299, 783, 2447, 519, 1285, 771, 2073, 519, 1563, 783, 3302,
+        519, 1035, 771, 1567, 519, 1293, 783, 2085, 519, 1281, 771, 1809, 519, 1303, 783, 2655,
+        519, 1035, 771, 1575, 519, 1299, 783, 2326, 519, 1285, 771, 1859, 519, 1545, 783, 3216,
+        519, 1035, 771, 1571, 519, 1293, 783, 2127, 519, 1281, 771, 1835, 519, 1303, 783, 3112,
+        519, 1035, 771, 1794, 519, 1299, 783, 2391, 519, 1285, 771, 2062, 519, 1563, 783, 3286,
+        519, 1035, 771, 1567, 519, 1293, 783, 2103, 519, 1281, 771, 1813, 519, 1303, 783, 2862,
+        519, 1035, 771, 1575, 519, 1299, 783, 2367, 519, 1285, 771, 1863, 519, 1545, 783, 3254,
+        519, 1035, 771, 1571, 519, 1293, 783, 2183, 519, 1281, 771, 1839, 519, 1303, 783, 3173,
+        519, 1035, 771, 1798, 519, 1299, 783, 2586, 519, 1285, 771, 2077, 519, 1563, 783, 3318,
+        519, 1035, 771, 1567, 519, 1293, 783, 2081, 519, 1281, 771, 1809, 519, 1303, 783, 2637,
+        519, 1035, 771, 1575, 519, 1299, 783, 2308, 519, 1285, 771, 1859, 519, 1545, 783, 3200,
+        519, 1035, 771, 1571, 519, 1293, 783, 2123, 519, 1281, 771, 1835, 519, 1303, 783, 2979,
+        519, 1035, 771, 1794, 519, 1299, 783, 2387, 519, 1285, 771, 2058, 519, 1563, 783, 3278,
+        519, 1035, 771, 1567, 519, 1293, 783, 2099, 519, 1281, 771, 1813, 519, 1303, 783, 2711,
+        519, 1035, 771, 1575, 519, 1299, 783, 2363, 519, 1285, 771, 1863, 519, 1545, 783, 3246,
+        519, 1035, 771, 1571, 519, 1293, 783, 2179, 519, 1281, 771, 1839, 519, 1303, 783, 3162,
+        519, 1035, 771, 1798, 519, 1299, 783, 2572, 519, 1285, 771, 2073, 519, 1563, 783, 3310,
+        519, 1035, 771, 1567, 519, 1293, 783, 2085, 519, 1281, 771, 1809, 519, 1303, 783, 2663,
+        519, 1035, 771, 1575, 519, 1299, 783, 2345, 519, 1285, 771, 1859, 519, 1545, 783, 3226,
+        519, 1035, 771, 1571, 519, 1293, 783, 2127, 519, 1281, 771, 1835, 519, 1303, 783, 3130,
+        519, 1035, 771, 1794, 519, 1299, 783, 2443, 519, 1285, 771, 2062, 519, 1563, 783, 3294,
+        519, 1035, 771, 1567, 519, 1293, 783, 2103, 519, 1281, 771, 1813, 519, 1303, 783, 2897,
+        519, 1035, 771, 1575, 519, 1299, 783, 2369, 519, 1285, 771, 1863, 519, 1545, 783, 3262,
+        519, 1035, 771, 1571, 519, 1293, 783, 2183, 519, 1281, 771, 1839, 519, 1303, 783, 3184,
+        519, 1035, 771, 1798, 519, 1299, 783, 2598, 519, 1285, 771, 2077, 519, 1563, 783, 3326,
+        519, 1035, 771, 1567, 519, 1293, 783, 2081, 519, 1281, 771, 1809, 519, 1303, 783, 2609,
+        519, 1035, 771, 1575, 519, 1299, 783, 2304, 519, 1285, 771, 1859, 519, 1545, 783, 3187,
+        519, 1035, 771, 1571, 519, 1293, 783, 2123, 519, 1281, 771, 1835, 519, 1303, 783, 2901,
+        519, 1035, 771, 1794, 519, 1299, 783, 2373, 519, 1285, 771, 2058, 519, 1563, 783, 3265,
+        519, 1035, 771, 1567, 519, 1293, 783, 2099, 519, 1281, 771, 1813, 519, 1303, 783, 2689,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1285, 771, 1863, 519, 1545, 783, 3230,
+        519, 1035, 771, 1571, 519, 1293, 783, 2179, 519, 1281, 771, 1839, 519, 1303, 783, 3136,
+        519, 1035, 771, 1798, 519, 1299, 783, 2447, 519, 1285, 771, 2073, 519, 1563, 783, 3297,
+        519, 1035, 771, 1567, 519, 1293, 783, 2085, 519, 1281, 771, 1809, 519, 1303, 783, 2651,
+        519, 1035, 771, 1575, 519, 1299, 783, 2326, 519, 1285, 771, 1859, 519, 1545, 783, 3206,
+        519, 1035, 771, 1571, 519, 1293, 783, 2127, 519, 1281, 771, 1835, 519, 1303, 783, 2983,
+        519, 1035, 771, 1794, 519, 1299, 783, 2391, 519, 1285, 771, 2062, 519, 1563, 783, 3281,
+        519, 1035, 771, 1567, 519, 1293, 783, 2103, 519, 1281, 771, 1813, 519, 1303, 783, 2832,
+        519, 1035, 771, 1575, 519, 1299, 783, 2367, 519, 1285, 771, 1863, 519, 1545, 783, 3249,
+        519, 1035, 771, 1571, 519, 1293, 783, 2183, 519, 1281, 771, 1839, 519, 1303, 783, 3166,
+        519, 1035, 771, 1798, 519, 1299, 783, 2578, 519, 1285, 771, 2077, 519, 1563, 783, 3313,
+        519, 1035, 771, 1567, 519, 1293, 783, 2081, 519, 1281, 771, 1809, 519, 1303, 783, 2633,
+        519, 1035, 771, 1575, 519, 1299, 783, 2308, 519, 1285, 771, 1859, 519, 1545, 783, 3195,
+        519, 1035, 771, 1571, 519, 1293, 783, 2123, 519, 1281, 771, 1835, 519, 1303, 783, 2957,
+        519, 1035, 771, 1794, 519, 1299, 783, 2387, 519, 1285, 771, 2058, 519, 1563, 783, 3273,
+        519, 1035, 771, 1567, 519, 1293, 783, 2099, 519, 1281, 771, 1813, 519, 1303, 783, 2707,
+        519, 1035, 771, 1575, 519, 1299, 783, 2363, 519, 1285, 771, 1863, 519, 1545, 783, 3241,
+        519, 1035, 771, 1571, 519, 1293, 783, 2179, 519, 1281, 771, 1839, 519, 1303, 783, 3154,
+        519, 1035, 771, 1798, 519, 1299, 783, 2568, 519, 1285, 771, 2073, 519, 1563, 783, 3305,
+        519, 1035, 771, 1567, 519, 1293, 783, 2085, 519, 1281, 771, 1809, 519, 1303, 783, 2659,
+        519, 1035, 771, 1575, 519, 1299, 783, 2345, 519, 1285, 771, 1859, 519, 1545, 783, 3220,
+        519, 1035, 771, 1571, 519, 1293, 783, 2127, 519, 1281, 771, 1835, 519, 1303, 783, 3120,
+        519, 1035, 771, 1794, 519, 1299, 783, 2443, 519, 1285, 771, 2062, 519, 1563, 783, 3289,
+        519, 1035, 771, 1567, 519, 1293, 783, 2103, 519, 1281, 771, 1813, 519, 1303, 783, 2873,
+        519, 1035, 771, 1575, 519, 1299, 783, 2369, 519, 1285, 771, 1863, 519, 1545, 783, 3257,
+        519, 1035, 771, 1571, 519, 1293, 783, 2183, 519, 1281, 771, 1839, 519, 1303, 783, 3177,
+        519, 1035, 771, 1798, 519, 1299, 783, 2590, 519, 1285, 771, 2077, 519, 1563, 783, 3321,
+        519, 1035, 771, 1567, 519, 1293, 783, 2081, 519, 1281, 771, 1809, 519, 1303, 783, 2613,
+        519, 1035, 771, 1575, 519, 1299, 783, 2304, 519, 1285, 771, 1859, 519, 1545, 783, 3191,
+        519, 1035, 771, 1571, 519, 1293, 783, 2123, 519, 1281, 771, 1835, 519, 1303, 783, 2927,
+        519, 1035, 771, 1794, 519, 1299, 783, 2373, 519, 1285, 771, 2058, 519, 1563, 783, 3269,
+        519, 1035, 771, 1567, 519, 1293, 783, 2099, 519, 1281, 771, 1813, 519, 1303, 783, 2693,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1285, 771, 1863, 519, 1545, 783, 3236,
+        519, 1035, 771, 1571, 519, 1293, 783, 2179, 519, 1281, 771, 1839, 519, 1303, 783, 3146,
+        519, 1035, 771, 1798, 519, 1299, 783, 2447, 519, 1285, 771, 2073, 519, 1563, 783, 3301,
+        519, 1035, 771, 1567, 519, 1293, 783, 2085, 519, 1281, 771, 1809, 519, 1303, 783, 2655,
+        519, 1035, 771, 1575, 519, 1299, 783, 2326, 519, 1285, 771, 1859, 519, 1545, 783, 3214,
+        519, 1035, 771, 1571, 519, 1293, 783, 2127, 519, 1281, 771, 1835, 519, 1303, 783, 3108,
+        519, 1035, 771, 1794, 519, 1299, 783, 2391, 519, 1285, 771, 2062, 519, 1563, 783, 3285,
+        519, 1035, 771, 1567, 519, 1293, 783, 2103, 519, 1281, 771, 1813, 519, 1303, 783, 2850,
+        519, 1035, 771, 1575, 519, 1299, 783, 2367, 519, 1285, 771, 1863, 519, 1545, 783, 3253,
+        519, 1035, 771, 1571, 519, 1293, 783, 2183, 519, 1281, 771, 1839, 519, 1303, 783, 3172,
+        519, 1035, 771, 1798, 519, 1299, 783, 2586, 519, 1285, 771, 2077, 519, 1563, 783, 3317,
+        519, 1035, 771, 1567, 519, 1293, 783, 2081, 519, 1281, 771, 1809, 519, 1303, 783, 2637,
+        519, 1035, 771, 1575, 519, 1299, 783, 2308, 519, 1285, 771, 1859, 519, 1545, 783, 3199,
+        519, 1035, 771, 1571, 519, 1293, 783, 2123, 519, 1281, 771, 1835, 519, 1303, 783, 2975,
+        519, 1035, 771, 1794, 519, 1299, 783, 2387, 519, 1285, 771, 2058, 519, 1563, 783, 3277,
+        519, 1035, 771, 1567, 519, 1293, 783, 2099, 519, 1281, 771, 1813, 519, 1303, 783, 2711,
+        519, 1035, 771, 1575, 519, 1299, 783, 2363, 519, 1285, 771, 1863, 519, 1545, 783, 3245,
+        519, 1035, 771, 1571, 519, 1293, 783, 2179, 519, 1281, 771, 1839, 519, 1303, 783, 3161,
+        519, 1035, 771, 1798, 519, 1299, 783, 2572, 519, 1285, 771, 2073, 519, 1563, 783, 3309,
+        519, 1035, 771, 1567, 519, 1293, 783, 2085, 519, 1281, 771, 1809, 519, 1303, 783, 2663,
+        519, 1035, 771, 1575, 519, 1299, 783, 2345, 519, 1285, 771, 1859, 519, 1545, 783, 3225,
+        519, 1035, 771, 1571, 519, 1293, 783, 2127, 519, 1281, 771, 1835, 519, 1303, 783, 3128,
+        519, 1035, 771, 1794, 519, 1299, 783, 2443, 519, 1285, 771, 2062, 519, 1563, 783, 3293,
+        519, 1035, 771, 1567, 519, 1293, 783, 2103, 519, 1281, 771, 1813, 519, 1303, 783, 2886,
+        519, 1035, 771, 1575, 519, 1299, 783, 2369, 519, 1285, 771, 1863, 519, 1545, 783, 3261,
+        519, 1035, 771, 1571, 519, 1293, 783, 2183, 519, 1281, 771, 1839, 519, 1303, 783, 3182,
+        519, 1035, 771, 1798, 519, 1299, 783, 2598, 519, 1285, 771, 2077, 519, 1563, 783, 3325,
+        519, 1035, 771, 1567, 519, 1293, 783, 2081, 519, 1281, 771, 1809, 519, 1303, 783, 2609,
+        519, 1035, 771, 1575, 519, 1299, 783, 2304, 519, 1285, 771, 1859, 519, 1545, 783, 3189,
+        519, 1035, 771, 1571, 519, 1293, 783, 2123, 519, 1281, 771, 1835, 519, 1303, 783, 2923,
+        519, 1035, 771, 1794, 519, 1299, 783, 2373, 519, 1285, 771, 2058, 519, 1563, 783, 3267,
+        519, 1035, 771, 1567, 519, 1293, 783, 2099, 519, 1281, 771, 1813, 519, 1303, 783, 2689,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1285, 771, 1863, 519, 1545, 783, 3233,
+        519, 1035, 771, 1571, 519, 1293, 783, 2179, 519, 1281, 771, 1839, 519, 1303, 783, 3140,
+        519, 1035, 771, 1798, 519, 1299, 783, 2447, 519, 1285, 771, 2073, 519, 1563, 783, 3299,
+        519, 1035, 771, 1567, 519, 1293, 783, 2085, 519, 1281, 771, 1809, 519, 1303, 783, 2651,
+        519, 1035, 771, 1575, 519, 1299, 783, 2326, 519, 1285, 771, 1859, 519, 1545, 783, 3210,
+        519, 1035, 771, 1571, 519, 1293, 783, 2127, 519, 1281, 771, 1835, 519, 1303, 783, 3100,
+        519, 1035, 771, 1794, 519, 1299, 783, 2391, 519, 1285, 771, 2062, 519, 1563, 783, 3283,
+        519, 1035, 771, 1567, 519, 1293, 783, 2103, 519, 1281, 771, 1813, 519, 1303, 783, 2836,
+        519, 1035, 771, 1575, 519, 1299, 783, 2367, 519, 1285, 771, 1863, 519, 1545, 783, 3251,
+        519, 1035, 771, 1571, 519, 1293, 783, 2183, 519, 1281, 771, 1839, 519, 1303, 783, 3169,
+        519, 1035, 771, 1798, 519, 1299, 783, 2578, 519, 1285, 771, 2077, 519, 1563, 783, 3315,
+        519, 1035, 771, 1567, 519, 1293, 783, 2081, 519, 1281, 771, 1809, 519, 1303, 783, 2633,
+        519, 1035, 771, 1575, 519, 1299, 783, 2308, 519, 1285, 771, 1859, 519, 1545, 783, 3197,
+        519, 1035, 771, 1571, 519, 1293, 783, 2123, 519, 1281, 771, 1835, 519, 1303, 783, 2971,
+        519, 1035, 771, 1794, 519, 1299, 783, 2387, 519, 1285, 771, 2058, 519, 1563, 783, 3275,
+        519, 1035, 771, 1567, 519, 1293, 783, 2099, 519, 1281, 771, 1813, 519, 1303, 783, 2707,
+        519, 1035, 771, 1575, 519, 1299, 783, 2363, 519, 1285, 771, 1863, 519, 1545, 783, 3243,
+        519, 1035, 771, 1571, 519, 1293, 783, 2179, 519, 1281, 771, 1839, 519, 1303, 783, 3158,
+        519, 1035, 771, 1798, 519, 1299, 783, 2568, 519, 1285, 771, 2073, 519, 1563, 783, 3307,
+        519, 1035, 771, 1567, 519, 1293, 783, 2085, 519, 1281, 771, 1809, 519, 1303, 783, 2659,
+        519, 1035, 771, 1575, 519, 1299, 783, 2345, 519, 1285, 771, 1859, 519, 1545, 783, 3222,
+        519, 1035, 771, 1571, 519, 1293, 783, 2127, 519, 1281, 771, 1835, 519, 1303, 783, 3124,
+        519, 1035, 771, 1794, 519, 1299, 783, 2443, 519, 1285, 771, 2062, 519, 1563, 783, 3291,
+        519, 1035, 771, 1567, 519, 1293, 783, 2103, 519, 1281, 771, 1813, 519, 1303, 783, 2877,
+        519, 1035, 771, 1575, 519, 1299, 783, 2369, 519, 1285, 771, 1863, 519, 1545, 783, 3259,
+        519, 1035, 771, 1571, 519, 1293, 783, 2183, 519, 1281, 771, 1839, 519, 1303, 783, 3180,
+        519, 1035, 771, 1798, 519, 1299, 783, 2590, 519, 1285, 771, 2077, 519, 1563, 783, 3323,
+        519, 1035, 771, 1567, 519, 1293, 783, 2081, 519, 1281, 771, 1809, 519, 1303, 783, 2613,
+        519, 1035, 771, 1575, 519, 1299, 783, 2304, 519, 1285, 771, 1859, 519, 1545, 783, 3193,
+        519, 1035, 771, 1571, 519, 1293, 783, 2123, 519, 1281, 771, 1835, 519, 1303, 783, 2953,
+        519, 1035, 771, 1794, 519, 1299, 783, 2373, 519, 1285, 771, 2058, 519, 1563, 783, 3271,
+        519, 1035, 771, 1567, 519, 1293, 783, 2099, 519, 1281, 771, 1813, 519, 1303, 783, 2693,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1285, 771, 1863, 519, 1545, 783, 3238,
+        519, 1035, 771, 1571, 519, 1293, 783, 2179, 519, 1281, 771, 1839, 519, 1303, 783, 3150,
+        519, 1035, 771, 1798, 519, 1299, 783, 2447, 519, 1285, 771, 2073, 519, 1563, 783, 3303,
+        519, 1035, 771, 1567, 519, 1293, 783, 2085, 519, 1281, 771, 1809, 519, 1303, 783, 2655,
+        519, 1035, 771, 1575, 519, 1299, 783, 2326, 519, 1285, 771, 1859, 519, 1545, 783, 3217,
+        519, 1035, 771, 1571, 519, 1293, 783, 2127, 519, 1281, 771, 1835, 519, 1303, 783, 3114,
+        519, 1035, 771, 1794, 519, 1299, 783, 2391, 519, 1285, 771, 2062, 519, 1563, 783, 3287,
+        519, 1035, 771, 1567, 519, 1293, 783, 2103, 519, 1281, 771, 1813, 519, 1303, 783, 2862,
+        519, 1035, 771, 1575, 519, 1299, 783, 2367, 519, 1285, 771, 1863, 519, 1545, 783, 3255,
+        519, 1035, 771, 1571, 519, 1293, 783, 2183, 519, 1281, 771, 1839, 519, 1303, 783, 3174,
+        519, 1035, 771, 1798, 519, 1299, 783, 2586, 519, 1285, 771, 2077, 519, 1563, 783, 3319,
+        519, 1035, 771, 1567, 519, 1293, 783, 2081, 519, 1281, 771, 1809, 519, 1303, 783, 2637,
+        519, 1035, 771, 1575, 519, 1299, 783, 2308, 519, 1285, 771, 1859, 519, 1545, 783, 3202,
+        519, 1035, 771, 1571, 519, 1293, 783, 2123, 519, 1281, 771, 1835, 519, 1303, 783, 2979,
+        519, 1035, 771, 1794, 519, 1299, 783, 2387, 519, 1285, 771, 2058, 519, 1563, 783, 3279,
+        519, 1035, 771, 1567, 519, 1293, 783, 2099, 519, 1281, 771, 1813, 519, 1303, 783, 2711,
+        519, 1035, 771, 1575, 519, 1299, 783, 2363, 519, 1285, 771, 1863, 519, 1545, 783, 3247,
+        519, 1035, 771, 1571, 519, 1293, 783, 2179, 519, 1281, 771, 1839, 519, 1303, 783, 3164,
+        519, 1035, 771, 1798, 519, 1299, 783, 2572, 519, 1285, 771, 2073, 519, 1563, 783, 3311,
+        519, 1035, 771, 1567, 519, 1293, 783, 2085, 519, 1281, 771, 1809, 519, 1303, 783, 2663,
+        519, 1035, 771, 1575, 519, 1299, 783, 2345, 519, 1285, 771, 1859, 519, 1545, 783, 3228,
+        519, 1035, 771, 1571, 519, 1293, 783, 2127, 519, 1281, 771, 1835, 519, 1303, 783, 3132,
+        519, 1035, 771, 1794, 519, 1299, 783, 2443, 519, 1285, 771, 2062, 519, 1563, 783, 3295,
+        519, 1035, 771, 1567, 519, 1293, 783, 2103, 519, 1281, 771, 1813, 519, 1303, 783, 2897,
+        519, 1035, 771, 1575, 519, 1299, 783, 2369, 519, 1285, 771, 1863, 519, 1545, 783, 3263,
+        519, 1035, 771, 1571, 519, 1293, 783, 2183, 519, 1281, 771, 1839, 519, 1303, 783, 3185,
+        519, 1035, 771, 1798, 519, 1299, 783, 2598, 519, 1285, 771, 2077, 519, 1563, 783, 3327,
+    ],
+    [
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1798, 519, 1311, 783, 2613,
+        519, 1035, 771, 1575, 519, 1303, 783, 2308, 519, 1285, 771, 1859, 519, 1545, 783, 3185,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1813, 519, 1311, 783, 2923,
+        519, 1035, 771, 1583, 519, 1303, 783, 2373, 519, 1285, 771, 2050, 519, 1549, 783, 3264,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1809, 519, 1311, 783, 2693,
+        519, 1035, 771, 1575, 519, 1303, 783, 2349, 519, 1285, 771, 1863, 519, 1545, 783, 3228,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1835, 519, 1311, 783, 3132,
+        519, 1035, 771, 1583, 519, 1303, 783, 2447, 519, 1285, 771, 2073, 519, 1549, 783, 3296,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1798, 519, 1311, 783, 2655,
+        519, 1035, 771, 1575, 519, 1303, 783, 2326, 519, 1285, 771, 1859, 519, 1545, 783, 3202,
+        519, 1035, 771, 1571, 519, 1299, 783, 2127, 519, 1281, 771, 1813, 519, 1311, 783, 2991,
+        519, 1035, 771, 1583, 519, 1303, 783, 2391, 519, 1285, 771, 2062, 519, 1549, 783, 3280,
+        519, 1035, 771, 1563, 519, 1299, 783, 2103, 519, 1281, 771, 1809, 519, 1311, 783, 2842,
+        519, 1035, 771, 1575, 519, 1303, 783, 2367, 519, 1285, 771, 1863, 519, 1545, 783, 3248,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1281, 771, 1835, 519, 1311, 783, 3164,
+        519, 1035, 771, 1583, 519, 1303, 783, 2578, 519, 1285, 771, 2077, 519, 1549, 783, 3312,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1798, 519, 1311, 783, 2637,
+        519, 1035, 771, 1575, 519, 1303, 783, 2314, 519, 1285, 771, 1859, 519, 1545, 783, 3193,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1813, 519, 1311, 783, 2971,
+        519, 1035, 771, 1583, 519, 1303, 783, 2387, 519, 1285, 771, 2050, 519, 1549, 783, 3272,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1809, 519, 1311, 783, 2711,
+        519, 1035, 771, 1575, 519, 1303, 783, 2363, 519, 1285, 771, 1863, 519, 1545, 783, 3238,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1835, 519, 1311, 783, 3150,
+        519, 1035, 771, 1583, 519, 1303, 783, 2560, 519, 1285, 771, 2073, 519, 1549, 783, 3304,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1798, 519, 1311, 783, 2663,
+        519, 1035, 771, 1575, 519, 1303, 783, 2345, 519, 1285, 771, 1859, 519, 1545, 783, 3217,
+        519, 1035, 771, 1571, 519, 1299, 783, 2127, 519, 1281, 771, 1813, 519, 1311, 783, 3114,
+        519, 1035, 771, 1583, 519, 1303, 783, 2443, 519, 1285, 771, 2062, 519, 1549, 783, 3288,
+        519, 1035, 771, 1563, 519, 1299, 783, 2103, 519, 1281, 771, 1809, 519, 1311, 783, 2877,
+        519, 1035, 771, 1575, 519, 1303, 783, 2369, 519, 1285, 771, 1863, 519, 1545, 783, 3256,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1281, 771, 1835, 519, 1311, 783, 3174,
+        519, 1035, 771, 1583, 519, 1303, 783, 2598, 519, 1285, 771, 2077, 519, 1549, 783, 3320,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1798, 519, 1311, 783, 2633,
+        519, 1035, 771, 1575, 519, 1303, 783, 2308, 519, 1285, 771, 1859, 519, 1545, 783, 3189,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1813, 519, 1311, 783, 2953,
+        519, 1035, 771, 1583, 519, 1303, 783, 2373, 519, 1285, 771, 2050, 519, 1549, 783, 3268,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1809, 519, 1311, 783, 2707,
+        519, 1035, 771, 1575, 519, 1303, 783, 2349, 519, 1285, 771, 1863, 519, 1545, 783, 3233,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1835, 519, 1311, 783, 3140,
+        519, 1035, 771, 1583, 519, 1303, 783, 2447, 519, 1285, 771, 2073, 519, 1549, 783, 3300,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1798, 519, 1311, 783, 2659,
+        519, 1035, 771, 1575, 519, 1303, 783, 2326, 519, 1285, 771, 1859, 519, 1545, 783, 3210,
+        519, 1035, 771, 1571, 519, 1299, 783, 2127, 519, 1281, 771, 1813, 519, 1311, 783, 3100,
+        519, 1035, 771, 1583, 519, 1303, 783, 2391, 519, 1285, 771, 2062, 519, 1549, 783, 3284,
+        519, 1035, 771, 1563, 519, 1299, 783, 2103, 519, 1281, 771, 1809, 519, 1311, 783, 2862,
+        519, 1035, 771, 1575, 519, 1303, 783, 2367, 519, 1285, 771, 1863, 519, 1545, 783, 3252,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1281, 771, 1835, 519, 1311, 783, 3169,
+        519, 1035, 771, 1583, 519, 1303, 783, 2590, 519, 1285, 771, 2077, 519, 1549, 783, 3316,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1798, 519, 1311, 783, 2651,
+        519, 1035, 771, 1575, 519, 1303, 783, 2314, 519, 1285, 771, 1859, 519, 1545, 783, 3197,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1813, 519, 1311, 783, 2979,
+        519, 1035, 771, 1583, 519, 1303, 783, 2387, 519, 1285, 771, 2050, 519, 1549, 783, 3276,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1809, 519, 1311, 783, 2824,
+        519, 1035, 771, 1575, 519, 1303, 783, 2363, 519, 1285, 771, 1863, 519, 1545, 783, 3243,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1835, 519, 1311, 783, 3158,
+        519, 1035, 771, 1583, 519, 1303, 783, 2572, 519, 1285, 771, 2073, 519, 1549, 783, 3308,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1798, 519, 1311, 783, 2689,
+        519, 1035, 771, 1575, 519, 1303, 783, 2345, 519, 1285, 771, 1859, 519, 1545, 783, 3222,
+        519, 1035, 771, 1571, 519, 1299, 783, 2127, 519, 1281, 771, 1813, 519, 1311, 783, 3124,
+        519, 1035, 771, 1583, 519, 1303, 783, 2443, 519, 1285, 771, 2062, 519, 1549, 783, 3292,
+        519, 1035, 771, 1563, 519, 1299, 783, 2103, 519, 1281, 771, 1809, 519, 1311, 783, 2897,
+        519, 1035, 771, 1575, 519, 1303, 783, 2369, 519, 1285, 771, 1863, 519, 1545, 783, 3260,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1281, 771, 1835, 519, 1311, 783, 3180,
+        519, 1035, 771, 1583, 519, 1303, 783, 2609, 519, 1285, 771, 2077, 519, 1549, 783, 3324,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1798, 519, 1311, 783, 2613,
+        519, 1035, 771, 1575, 519, 1303, 783, 2308, 519, 1285, 771, 1859, 519, 1545, 783, 3187,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1813, 519, 1311, 783, 2927,
+        519, 1035, 771, 1583, 519, 1303, 783, 2373, 519, 1285, 771, 2050, 519, 1549, 783, 3266,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1809, 519, 1311, 783, 2693,
+        519, 1035, 771, 1575, 519, 1303, 783, 2349, 519, 1285, 771, 1863, 519, 1545, 783, 3230,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1835, 519, 1311, 783, 3136,
+        519, 1035, 771, 1583, 519, 1303, 783, 2447, 519, 1285, 771, 2073, 519, 1549, 783, 3298,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1798, 519, 1311, 783, 2655,
+        519, 1035, 771, 1575, 519, 1303, 783, 2326, 519, 1285, 771, 1859, 519, 1545, 783, 3206,
+        519, 1035, 771, 1571, 519, 1299, 783, 2127, 519, 1281, 771, 1813, 519, 1311, 783, 3088,
+        519, 1035, 771, 1583, 519, 1303, 783, 2391, 519, 1285, 771, 2062, 519, 1549, 783, 3282,
+        519, 1035, 771, 1563, 519, 1299, 783, 2103, 519, 1281, 771, 1809, 519, 1311, 783, 2850,
+        519, 1035, 771, 1575, 519, 1303, 783, 2367, 519, 1285, 771, 1863, 519, 1545, 783, 3250,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1281, 771, 1835, 519, 1311, 783, 3166,
+        519, 1035, 771, 1583, 519, 1303, 783, 2578, 519, 1285, 771, 2077, 519, 1549, 783, 3314,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1798, 519, 1311, 783, 2637,
+        519, 1035, 771, 1575, 519, 1303, 783, 2314, 519, 1285, 771, 1859, 519, 1545, 783, 3195,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1813, 519, 1311, 783, 2975,
+        519, 1035, 771, 1583, 519, 1303, 783, 2387, 519, 1285, 771, 2050, 519, 1549, 783, 3274,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1809, 519, 1311, 783, 2711,
+        519, 1035, 771, 1575, 519, 1303, 783, 2363, 519, 1285, 771, 1863, 519, 1545, 783, 3241,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1835, 519, 1311, 783, 3154,
+        519, 1035, 771, 1583, 519, 1303, 783, 2560, 519, 1285, 771, 2073, 519, 1549, 783, 3306,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1798, 519, 1311, 783, 2663,
+        519, 1035, 771, 1575, 519, 1303, 783, 2345, 519, 1285, 771, 1859, 519, 1545, 783, 3220,
+        519, 1035, 771, 1571, 519, 1299, 783, 2127, 519, 1281, 771, 1813, 519, 1311, 783, 3120,
+        519, 1035, 771, 1583, 519, 1303, 783, 2443, 519, 1285, 771, 2062, 519, 1549, 783, 3290,
+        519, 1035, 771, 1563, 519, 1299, 783, 2103, 519, 1281, 771, 1809, 519, 1311, 783, 2886,
+        519, 1035, 771, 1575, 519, 1303, 783, 2369, 519, 1285, 771, 1863, 519, 1545, 783, 3258,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1281, 771, 1835, 519, 1311, 783, 3177,
+        519, 1035, 771, 1583, 519, 1303, 783, 2598, 519, 1285, 771, 2077, 519, 1549, 783, 3322,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1798, 519, 1311, 783, 2633,
+        519, 1035, 771, 1575, 519, 1303, 783, 2308, 519, 1285, 771, 1859, 519, 1545, 783, 3191,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1813, 519, 1311, 783, 2957,
+        519, 1035, 771, 1583, 519, 1303, 783, 2373, 519, 1285, 771, 2050, 519, 1549, 783, 3270,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1809, 519, 1311, 783, 2707,
+        519, 1035, 771, 1575, 519, 1303, 783, 2349, 519, 1285, 771, 1863, 519, 1545, 783, 3236,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1835, 519, 1311, 783, 3146,
+        519, 1035, 771, 1583, 519, 1303, 783, 2447, 519, 1285, 771, 2073, 519, 1549, 783, 3302,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1798, 519, 1311, 783, 2659,
+        519, 1035, 771, 1575, 519, 1303, 783, 2326, 519, 1285, 771, 1859, 519, 1545, 783, 3214,
+        519, 1035, 771, 1571, 519, 1299, 783, 2127, 519, 1281, 771, 1813, 519, 1311, 783, 3108,
+        519, 1035, 771, 1583, 519, 1303, 783, 2391, 519, 1285, 771, 2062, 519, 1549, 783, 3286,
+        519, 1035, 771, 1563, 519, 1299, 783, 2103, 519, 1281, 771, 1809, 519, 1311, 783, 2873,
+        519, 1035, 771, 1575, 519, 1303, 783, 2367, 519, 1285, 771, 1863, 519, 1545, 783, 3254,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1281, 771, 1835, 519, 1311, 783, 3172,
+        519, 1035, 771, 1583, 519, 1303, 783, 2590, 519, 1285, 771, 2077, 519, 1549, 783, 3318,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1798, 519, 1311, 783, 2651,
+        519, 1035, 771, 1575, 519, 1303, 783, 2314, 519, 1285, 771, 1859, 519, 1545, 783, 3199,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1813, 519, 1311, 783, 2983,
+        519, 1035, 771, 1583, 519, 1303, 783, 2387, 519, 1285, 771, 2050, 519, 1549, 783, 3278,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1809, 519, 1311, 783, 2836,
+        519, 1035, 771, 1575, 519, 1303, 783, 2363, 519, 1285, 771, 1863, 519, 1545, 783, 3245,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1835, 519, 1311, 783, 3161,
+        519, 1035, 771, 1583, 519, 1303, 783, 2572, 519, 1285, 771, 2073, 519, 1549, 783, 3310,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1798, 519, 1311, 783, 2689,
+        519, 1035, 771, 1575, 519, 1303, 783, 2345, 519, 1285, 771, 1859, 519, 1545, 783, 3225,
+        519, 1035, 771, 1571, 519, 1299, 783, 2127, 519, 1281, 771, 1813, 519, 1311, 783, 3128,
+        519, 1035, 771, 1583, 519, 1303, 783, 2443, 519, 1285, 771, 2062, 519, 1549, 783, 3294,
+        519, 1035, 771, 1563, 519, 1299, 783, 2103, 519, 1281, 771, 1809, 519, 1311, 783, 2901,
+        519, 1035, 771, 1575, 519, 1303, 783, 2369, 519, 1285, 771, 1863, 519, 1545, 783, 3262,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1281, 771, 1835, 519, 1311, 783, 3182,
+        519, 1035, 771, 1583, 519, 1303, 783, 2609, 519, 1285, 771, 2077, 519, 1549, 783, 3326,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1798, 519, 1311, 783, 2613,
+        519, 1035, 771, 1575, 519, 1303, 783, 2308, 519, 1285, 771, 1859, 519, 1545, 783, 3186,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1813, 519, 1311, 783, 2923,
+        519, 1035, 771, 1583, 519, 1303, 783, 2373, 519, 1285, 771, 2050, 519, 1549, 783, 3265,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1809, 519, 1311, 783, 2693,
+        519, 1035, 771, 1575, 519, 1303, 783, 2349, 519, 1285, 771, 1863, 519, 1545, 783, 3229,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1835, 519, 1311, 783, 3134,
+        519, 1035, 771, 1583, 519, 1303, 783, 2447, 519, 1285, 771, 2073, 519, 1549, 783, 3297,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1798, 519, 1311, 783, 2655,
+        519, 1035, 771, 1575, 519, 1303, 783, 2326, 519, 1285, 771, 1859, 519, 1545, 783, 3204,
+        519, 1035, 771, 1571, 519, 1299, 783, 2127, 519, 1281, 771, 1813, 519, 1311, 783, 2991,
+        519, 1035, 771, 1583, 519, 1303, 783, 2391, 519, 1285, 771, 2062, 519, 1549, 783, 3281,
+        519, 1035, 771, 1563, 519, 1299, 783, 2103, 519, 1281, 771, 1809, 519, 1311, 783, 2842,
+        519, 1035, 771, 1575, 519, 1303, 783, 2367, 519, 1285, 771, 1863, 519, 1545, 783, 3249,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1281, 771, 1835, 519, 1311, 783, 3165,
+        519, 1035, 771, 1583, 519, 1303, 783, 2578, 519, 1285, 771, 2077, 519, 1549, 783, 3313,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1798, 519, 1311, 783, 2637,
+        519, 1035, 771, 1575, 519, 1303, 783, 2314, 519, 1285, 771, 1859, 519, 1545, 783, 3194,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1813, 519, 1311, 783, 2971,
+        519, 1035, 771, 1583, 519, 1303, 783, 2387, 519, 1285, 771, 2050, 519, 1549, 783, 3273,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1809, 519, 1311, 783, 2711,
+        519, 1035, 771, 1575, 519, 1303, 783, 2363, 519, 1285, 771, 1863, 519, 1545, 783, 3240,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1835, 519, 1311, 783, 3152,
+        519, 1035, 771, 1583, 519, 1303, 783, 2560, 519, 1285, 771, 2073, 519, 1549, 783, 3305,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1798, 519, 1311, 783, 2663,
+        519, 1035, 771, 1575, 519, 1303, 783, 2345, 519, 1285, 771, 1859, 519, 1545, 783, 3218,
+        519, 1035, 771, 1571, 519, 1299, 783, 2127, 519, 1281, 771, 1813, 519, 1311, 783, 3116,
+        519, 1035, 771, 1583, 519, 1303, 783, 2443, 519, 1285, 771, 2062, 519, 1549, 783, 3289,
+        519, 1035, 771, 1563, 519, 1299, 783, 2103, 519, 1281, 771, 1809, 519, 1311, 783, 2877,
+        519, 1035, 771, 1575, 519, 1303, 783, 2369, 519, 1285, 771, 1863, 519, 1545, 783, 3257,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1281, 771, 1835, 519, 1311, 783, 3176,
+        519, 1035, 771, 1583, 519, 1303, 783, 2598, 519, 1285, 771, 2077, 519, 1549, 783, 3321,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1798, 519, 1311, 783, 2633,
+        519, 1035, 771, 1575, 519, 1303, 783, 2308, 519, 1285, 771, 1859, 519, 1545, 783, 3190,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1813, 519, 1311, 783, 2953,
+        519, 1035, 771, 1583, 519, 1303, 783, 2373, 519, 1285, 771, 2050, 519, 1549, 783, 3269,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1809, 519, 1311, 783, 2707,
+        519, 1035, 771, 1575, 519, 1303, 783, 2349, 519, 1285, 771, 1863, 519, 1545, 783, 3234,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1835, 519, 1311, 783, 3144,
+        519, 1035, 771, 1583, 519, 1303, 783, 2447, 519, 1285, 771, 2073, 519, 1549, 783, 3301,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1798, 519, 1311, 783, 2659,
+        519, 1035, 771, 1575, 519, 1303, 783, 2326, 519, 1285, 771, 1859, 519, 1545, 783, 3212,
+        519, 1035, 771, 1571, 519, 1299, 783, 2127, 519, 1281, 771, 1813, 519, 1311, 783, 3104,
+        519, 1035, 771, 1583, 519, 1303, 783, 2391, 519, 1285, 771, 2062, 519, 1549, 783, 3285,
+        519, 1035, 771, 1563, 519, 1299, 783, 2103, 519, 1281, 771, 1809, 519, 1311, 783, 2862,
+        519, 1035, 771, 1575, 519, 1303, 783, 2367, 519, 1285, 771, 1863, 519, 1545, 783, 3253,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1281, 771, 1835, 519, 1311, 783, 3170,
+        519, 1035, 771, 1583, 519, 1303, 783, 2590, 519, 1285, 771, 2077, 519, 1549, 783, 3317,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1798, 519, 1311, 783, 2651,
+        519, 1035, 771, 1575, 519, 1303, 783, 2314, 519, 1285, 771, 1859, 519, 1545, 783, 3198,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1813, 519, 1311, 783, 2979,
+        519, 1035, 771, 1583, 519, 1303, 783, 2387, 519, 1285, 771, 2050, 519, 1549, 783, 3277,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1809, 519, 1311, 783, 2824,
+        519, 1035, 771, 1575, 519, 1303, 783, 2363, 519, 1285, 771, 1863, 519, 1545, 783, 3244,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1835, 519, 1311, 783, 3160,
+        519, 1035, 771, 1583, 519, 1303, 783, 2572, 519, 1285, 771, 2073, 519, 1549, 783, 3309,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1798, 519, 1311, 783, 2689,
+        519, 1035, 771, 1575, 519, 1303, 783, 2345, 519, 1285, 771, 1859, 519, 1545, 783, 3224,
+        519, 1035, 771, 1571, 519, 1299, 783, 2127, 519, 1281, 771, 1813, 519, 1311, 783, 3126,
+        519, 1035, 771, 1583, 519, 1303, 783, 2443, 519, 1285, 771, 2062, 519, 1549, 783, 3293,
+        519, 1035, 771, 1563, 519, 1299, 783, 2103, 519, 1281, 771, 1809, 519, 1311, 783, 2897,
+        519, 1035, 771, 1575, 519, 1303, 783, 2369, 519, 1285, 771, 1863, 519, 1545, 783, 3261,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1281, 771, 1835, 519, 1311, 783, 3181,
+        519, 1035, 771, 1583, 519, 1303, 783, 2609, 519, 1285, 771, 2077, 519, 1549, 783, 3325,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1798, 519, 1311, 783, 2613,
+        519, 1035, 771, 1575, 519, 1303, 783, 2308, 519, 1285, 771, 1859, 519, 1545, 783, 3188,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1813, 519, 1311, 783, 2927,
+        519, 1035, 771, 1583, 519, 1303, 783, 2373, 519, 1285, 771, 2050, 519, 1549, 783, 3267,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1809, 519, 1311, 783, 2693,
+        519, 1035, 771, 1575, 519, 1303, 783, 2349, 519, 1285, 771, 1863, 519, 1545, 783, 3232,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1835, 519, 1311, 783, 3138,
+        519, 1035, 771, 1583, 519, 1303, 783, 2447, 519, 1285, 771, 2073, 519, 1549, 783, 3299,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1798, 519, 1311, 783, 2655,
+        519, 1035, 771, 1575, 519, 1303, 783, 2326, 519, 1285, 771, 1859, 519, 1545, 783, 3208,
+        519, 1035, 771, 1571, 519, 1299, 783, 2127, 519, 1281, 771, 1813, 519, 1311, 783, 3096,
+        519, 1035, 771, 1583, 519, 1303, 783, 2391, 519, 1285, 771, 2062, 519, 1549, 783, 3283,
+        519, 1035, 771, 1563, 519, 1299, 783, 2103, 519, 1281, 771, 1809, 519, 1311, 783, 2850,
+        519, 1035, 771, 1575, 519, 1303, 783, 2367, 519, 1285, 771, 1863, 519, 1545, 783, 3251,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1281, 771, 1835, 519, 1311, 783, 3168,
+        519, 1035, 771, 1583, 519, 1303, 783, 2578, 519, 1285, 771, 2077, 519, 1549, 783, 3315,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1798, 519, 1311, 783, 2637,
+        519, 1035, 771, 1575, 519, 1303, 783, 2314, 519, 1285, 771, 1859, 519, 1545, 783, 3196,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1813, 519, 1311, 783, 2975,
+        519, 1035, 771, 1583, 519, 1303, 783, 2387, 519, 1285, 771, 2050, 519, 1549, 783, 3275,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1809, 519, 1311, 783, 2711,
+        519, 1035, 771, 1575, 519, 1303, 783, 2363, 519, 1285, 771, 1863, 519, 1545, 783, 3242,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1835, 519, 1311, 783, 3156,
+        519, 1035, 771, 1583, 519, 1303, 783, 2560, 519, 1285, 771, 2073, 519, 1549, 783, 3307,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1798, 519, 1311, 783, 2663,
+        519, 1035, 771, 1575, 519, 1303, 783, 2345, 519, 1285, 771, 1859, 519, 1545, 783, 3221,
+        519, 1035, 771, 1571, 519, 1299, 783, 2127, 519, 1281, 771, 1813, 519, 1311, 783, 3122,
+        519, 1035, 771, 1583, 519, 1303, 783, 2443, 519, 1285, 771, 2062, 519, 1549, 783, 3291,
+        519, 1035, 771, 1563, 519, 1299, 783, 2103, 519, 1281, 771, 1809, 519, 1311, 783, 2886,
+        519, 1035, 771, 1575, 519, 1303, 783, 2369, 519, 1285, 771, 1863, 519, 1545, 783, 3259,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1281, 771, 1835, 519, 1311, 783, 3178,
+        519, 1035, 771, 1583, 519, 1303, 783, 2598, 519, 1285, 771, 2077, 519, 1549, 783, 3323,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1798, 519, 1311, 783, 2633,
+        519, 1035, 771, 1575, 519, 1303, 783, 2308, 519, 1285, 771, 1859, 519, 1545, 783, 3192,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1813, 519, 1311, 783, 2957,
+        519, 1035, 771, 1583, 519, 1303, 783, 2373, 519, 1285, 771, 2050, 519, 1549, 783, 3271,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1809, 519, 1311, 783, 2707,
+        519, 1035, 771, 1575, 519, 1303, 783, 2349, 519, 1285, 771, 1863, 519, 1545, 783, 3237,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1835, 519, 1311, 783, 3148,
+        519, 1035, 771, 1583, 519, 1303, 783, 2447, 519, 1285, 771, 2073, 519, 1549, 783, 3303,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1798, 519, 1311, 783, 2659,
+        519, 1035, 771, 1575, 519, 1303, 783, 2326, 519, 1285, 771, 1859, 519, 1545, 783, 3216,
+        519, 1035, 771, 1571, 519, 1299, 783, 2127, 519, 1281, 771, 1813, 519, 1311, 783, 3112,
+        519, 1035, 771, 1583, 519, 1303, 783, 2391, 519, 1285, 771, 2062, 519, 1549, 783, 3287,
+        519, 1035, 771, 1563, 519, 1299, 783, 2103, 519, 1281, 771, 1809, 519, 1311, 783, 2873,
+        519, 1035, 771, 1575, 519, 1303, 783, 2367, 519, 1285, 771, 1863, 519, 1545, 783, 3255,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1281, 771, 1835, 519, 1311, 783, 3173,
+        519, 1035, 771, 1583, 519, 1303, 783, 2590, 519, 1285, 771, 2077, 519, 1549, 783, 3319,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1798, 519, 1311, 783, 2651,
+        519, 1035, 771, 1575, 519, 1303, 783, 2314, 519, 1285, 771, 1859, 519, 1545, 783, 3200,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1813, 519, 1311, 783, 2983,
+        519, 1035, 771, 1583, 519, 1303, 783, 2387, 519, 1285, 771, 2050, 519, 1549, 783, 3279,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1809, 519, 1311, 783, 2836,
+        519, 1035, 771, 1575, 519, 1303, 783, 2363, 519, 1285, 771, 1863, 519, 1545, 783, 3246,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1835, 519, 1311, 783, 3162,
+        519, 1035, 771, 1583, 519, 1303, 783, 2572, 519, 1285, 771, 2073, 519, 1549, 783, 3311,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1798, 519, 1311, 783, 2689,
+        519, 1035, 771, 1575, 519, 1303, 783, 2345, 519, 1285, 771, 1859, 519, 1545, 783, 3226,
+        519, 1035, 771, 1571, 519, 1299, 783, 2127, 519, 1281, 771, 1813, 519, 1311, 783, 3130,
+        519, 1035, 771, 1583, 519, 1303, 783, 2443, 519, 1285, 771, 2062, 519, 1549, 783, 3295,
+        519, 1035, 771, 1563, 519, 1299, 783, 2103, 519, 1281, 771, 1809, 519, 1311, 783, 2901,
+        519, 1035, 771, 1575, 519, 1303, 783, 2369, 519, 1285, 771, 1863, 519, 1545, 783, 3263,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1281, 771, 1835, 519, 1311, 783, 3184,
+        519, 1035, 771, 1583, 519, 1303, 783, 2609, 519, 1285, 771, 2077, 519, 1549, 783, 3327,
+    ],
+    [
+        519, 1035, 771, 1563, 519, 1299, 783, 2077, 519, 1281, 771, 1809, 519, 1311, 783, 2613,
+        519, 1035, 771, 1575, 519, 1303, 783, 2183, 519, 1285, 771, 1863, 519, 1545, 783, 3186,
+        519, 1035, 771, 1571, 519, 1299, 783, 2103, 519, 1281, 771, 1835, 519, 1311, 783, 2927,
+        519, 1035, 771, 1583, 519, 1303, 783, 2369, 519, 1285, 771, 2050, 519, 1549, 783, 3264,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1813, 519, 1311, 783, 2693,
+        519, 1035, 771, 1575, 519, 1303, 783, 2314, 519, 1285, 771, 1871, 519, 1545, 783, 3229,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1859, 519, 1311, 783, 3136,
+        519, 1035, 771, 1583, 519, 1303, 783, 2443, 519, 1285, 771, 2062, 519, 1549, 783, 3296,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1809, 519, 1311, 783, 2655,
+        519, 1035, 771, 1575, 519, 1303, 783, 2191, 519, 1285, 771, 1863, 519, 1545, 783, 3204,
+        519, 1035, 771, 1571, 519, 1299, 783, 2111, 519, 1281, 771, 1835, 519, 1311, 783, 3096,
+        519, 1035, 771, 1583, 519, 1303, 783, 2387, 519, 1285, 771, 2054, 519, 1549, 783, 3280,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1813, 519, 1311, 783, 2842,
+        519, 1035, 771, 1575, 519, 1303, 783, 2349, 519, 1285, 771, 1871, 519, 1545, 783, 3248,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1859, 519, 1311, 783, 3165,
+        519, 1035, 771, 1583, 519, 1303, 783, 2578, 519, 1285, 771, 2073, 519, 1549, 783, 3312,
+        519, 1035, 771, 1563, 519, 1299, 783, 2077, 519, 1281, 771, 1809, 519, 1311, 783, 2637,
+        519, 1035, 771, 1575, 519, 1303, 783, 2183, 519, 1285, 771, 1863, 519, 1545, 783, 3194,
+        519, 1035, 771, 1571, 519, 1299, 783, 2103, 519, 1281, 771, 1835, 519, 1311, 783, 2975,
+        519, 1035, 771, 1583, 519, 1303, 783, 2373, 519, 1285, 771, 2050, 519, 1549, 783, 3272,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1813, 519, 1311, 783, 2711,
+        519, 1035, 771, 1575, 519, 1303, 783, 2345, 519, 1285, 771, 1871, 519, 1545, 783, 3240,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1859, 519, 1311, 783, 3152,
+        519, 1035, 771, 1583, 519, 1303, 783, 2560, 519, 1285, 771, 2062, 519, 1549, 783, 3304,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1809, 519, 1311, 783, 2663,
+        519, 1035, 771, 1575, 519, 1303, 783, 2191, 519, 1285, 771, 1863, 519, 1545, 783, 3218,
+        519, 1035, 771, 1571, 519, 1299, 783, 2111, 519, 1281, 771, 1835, 519, 1311, 783, 3120,
+        519, 1035, 771, 1583, 519, 1303, 783, 2391, 519, 1285, 771, 2054, 519, 1549, 783, 3288,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1813, 519, 1311, 783, 2877,
+        519, 1035, 771, 1575, 519, 1303, 783, 2363, 519, 1285, 771, 1871, 519, 1545, 783, 3256,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1859, 519, 1311, 783, 3176,
+        519, 1035, 771, 1583, 519, 1303, 783, 2590, 519, 1285, 771, 2073, 519, 1549, 783, 3320,
+        519, 1035, 771, 1563, 519, 1299, 783, 2077, 519, 1281, 771, 1809, 519, 1311, 783, 2633,
+        519, 1035, 771, 1575, 519, 1303, 783, 2183, 519, 1285, 771, 1863, 519, 1545, 783, 3190,
+        519, 1035, 771, 1571, 519, 1299, 783, 2103, 519, 1281, 771, 1835, 519, 1311, 783, 2957,
+        519, 1035, 771, 1583, 519, 1303, 783, 2369, 519, 1285, 771, 2050, 519, 1549, 783, 3268,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1813, 519, 1311, 783, 2707,
+        519, 1035, 771, 1575, 519, 1303, 783, 2314, 519, 1285, 771, 1871, 519, 1545, 783, 3234,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1859, 519, 1311, 783, 3144,
+        519, 1035, 771, 1583, 519, 1303, 783, 2443, 519, 1285, 771, 2062, 519, 1549, 783, 3300,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1809, 519, 1311, 783, 2659,
+        519, 1035, 771, 1575, 519, 1303, 783, 2191, 519, 1285, 771, 1863, 519, 1545, 783, 3212,
+        519, 1035, 771, 1571, 519, 1299, 783, 2111, 519, 1281, 771, 1835, 519, 1311, 783, 3112,
+        519, 1035, 771, 1583, 519, 1303, 783, 2387, 519, 1285, 771, 2054, 519, 1549, 783, 3284,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1813, 519, 1311, 783, 2854,
+        519, 1035, 771, 1575, 519, 1303, 783, 2349, 519, 1285, 771, 1871, 519, 1545, 783, 3252,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1859, 519, 1311, 783, 3170,
+        519, 1035, 771, 1583, 519, 1303, 783, 2582, 519, 1285, 771, 2073, 519, 1549, 783, 3316,
+        519, 1035, 771, 1563, 519, 1299, 783, 2077, 519, 1281, 771, 1809, 519, 1311, 783, 2651,
+        519, 1035, 771, 1575, 519, 1303, 783, 2183, 519, 1285, 771, 1863, 519, 1545, 783, 3198,
+        519, 1035, 771, 1571, 519, 1299, 783, 2103, 519, 1281, 771, 1835, 519, 1311, 783, 2983,
+        519, 1035, 771, 1583, 519, 1303, 783, 2373, 519, 1285, 771, 2050, 519, 1549, 783, 3276,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1813, 519, 1311, 783, 2824,
+        519, 1035, 771, 1575, 519, 1303, 783, 2345, 519, 1285, 771, 1871, 519, 1545, 783, 3244,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1859, 519, 1311, 783, 3160,
+        519, 1035, 771, 1583, 519, 1303, 783, 2564, 519, 1285, 771, 2062, 519, 1549, 783, 3308,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1809, 519, 1311, 783, 2689,
+        519, 1035, 771, 1575, 519, 1303, 783, 2191, 519, 1285, 771, 1863, 519, 1545, 783, 3224,
+        519, 1035, 771, 1571, 519, 1299, 783, 2111, 519, 1281, 771, 1835, 519, 1311, 783, 3128,
+        519, 1035, 771, 1583, 519, 1303, 783, 2391, 519, 1285, 771, 2054, 519, 1549, 783, 3292,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1813, 519, 1311, 783, 2901,
+        519, 1035, 771, 1575, 519, 1303, 783, 2363, 519, 1285, 771, 1871, 519, 1545, 783, 3260,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1859, 519, 1311, 783, 3181,
+        519, 1035, 771, 1583, 519, 1303, 783, 2609, 519, 1285, 771, 2073, 519, 1549, 783, 3324,
+        519, 1035, 771, 1563, 519, 1299, 783, 2077, 519, 1281, 771, 1809, 519, 1311, 783, 2613,
+        519, 1035, 771, 1575, 519, 1303, 783, 2183, 519, 1285, 771, 1863, 519, 1545, 783, 3188,
+        519, 1035, 771, 1571, 519, 1299, 783, 2103, 519, 1281, 771, 1835, 519, 1311, 783, 2953,
+        519, 1035, 771, 1583, 519, 1303, 783, 2369, 519, 1285, 771, 2050, 519, 1549, 783, 3266,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1813, 519, 1311, 783, 2693,
+        519, 1035, 771, 1575, 519, 1303, 783, 2314, 519, 1285, 771, 1871, 519, 1545, 783, 3232,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1859, 519, 1311, 783, 3140,
+        519, 1035, 771, 1583, 519, 1303, 783, 2443, 519, 1285, 771, 2062, 519, 1549, 783, 3298,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1809, 519, 1311, 783, 2655,
+        519, 1035, 771, 1575, 519, 1303, 783, 2191, 519, 1285, 771, 1863, 519, 1545, 783, 3208,
+        519, 1035, 771, 1571, 519, 1299, 783, 2111, 519, 1281, 771, 1835, 519, 1311, 783, 3104,
+        519, 1035, 771, 1583, 519, 1303, 783, 2387, 519, 1285, 771, 2054, 519, 1549, 783, 3282,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1813, 519, 1311, 783, 2850,
+        519, 1035, 771, 1575, 519, 1303, 783, 2349, 519, 1285, 771, 1871, 519, 1545, 783, 3250,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1859, 519, 1311, 783, 3168,
+        519, 1035, 771, 1583, 519, 1303, 783, 2578, 519, 1285, 771, 2073, 519, 1549, 783, 3314,
+        519, 1035, 771, 1563, 519, 1299, 783, 2077, 519, 1281, 771, 1809, 519, 1311, 783, 2637,
+        519, 1035, 771, 1575, 519, 1303, 783, 2183, 519, 1285, 771, 1863, 519, 1545, 783, 3196,
+        519, 1035, 771, 1571, 519, 1299, 783, 2103, 519, 1281, 771, 1835, 519, 1311, 783, 2979,
+        519, 1035, 771, 1583, 519, 1303, 783, 2373, 519, 1285, 771, 2050, 519, 1549, 783, 3274,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1813, 519, 1311, 783, 2711,
+        519, 1035, 771, 1575, 519, 1303, 783, 2345, 519, 1285, 771, 1871, 519, 1545, 783, 3242,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1859, 519, 1311, 783, 3156,
+        519, 1035, 771, 1583, 519, 1303, 783, 2560, 519, 1285, 771, 2062, 519, 1549, 783, 3306,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1809, 519, 1311, 783, 2663,
+        519, 1035, 771, 1575, 519, 1303, 783, 2191, 519, 1285, 771, 1863, 519, 1545, 783, 3221,
+        519, 1035, 771, 1571, 519, 1299, 783, 2111, 519, 1281, 771, 1835, 519, 1311, 783, 3124,
+        519, 1035, 771, 1583, 519, 1303, 783, 2391, 519, 1285, 771, 2054, 519, 1549, 783, 3290,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1813, 519, 1311, 783, 2897,
+        519, 1035, 771, 1575, 519, 1303, 783, 2363, 519, 1285, 771, 1871, 519, 1545, 783, 3258,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1859, 519, 1311, 783, 3178,
+        519, 1035, 771, 1583, 519, 1303, 783, 2590, 519, 1285, 771, 2073, 519, 1549, 783, 3322,
+        519, 1035, 771, 1563, 519, 1299, 783, 2077, 519, 1281, 771, 1809, 519, 1311, 783, 2633,
+        519, 1035, 771, 1575, 519, 1303, 783, 2183, 519, 1285, 771, 1863, 519, 1545, 783, 3192,
+        519, 1035, 771, 1571, 519, 1299, 783, 2103, 519, 1281, 771, 1835, 519, 1311, 783, 2971,
+        519, 1035, 771, 1583, 519, 1303, 783, 2369, 519, 1285, 771, 2050, 519, 1549, 783, 3270,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1813, 519, 1311, 783, 2707,
+        519, 1035, 771, 1575, 519, 1303, 783, 2314, 519, 1285, 771, 1871, 519, 1545, 783, 3237,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1859, 519, 1311, 783, 3148,
+        519, 1035, 771, 1583, 519, 1303, 783, 2443, 519, 1285, 771, 2062, 519, 1549, 783, 3302,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1809, 519, 1311, 783, 2659,
+        519, 1035, 771, 1575, 519, 1303, 783, 2191, 519, 1285, 771, 1863, 519, 1545, 783, 3216,
+        519, 1035, 771, 1571, 519, 1299, 783, 2111, 519, 1281, 771, 1835, 519, 1311, 783, 3116,
+        519, 1035, 771, 1583, 519, 1303, 783, 2387, 519, 1285, 771, 2054, 519, 1549, 783, 3286,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1813, 519, 1311, 783, 2873,
+        519, 1035, 771, 1575, 519, 1303, 783, 2349, 519, 1285, 771, 1871, 519, 1545, 783, 3254,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1859, 519, 1311, 783, 3173,
+        519, 1035, 771, 1583, 519, 1303, 783, 2582, 519, 1285, 771, 2073, 519, 1549, 783, 3318,
+        519, 1035, 771, 1563, 519, 1299, 783, 2077, 519, 1281, 771, 1809, 519, 1311, 783, 2651,
+        519, 1035, 771, 1575, 519, 1303, 783, 2183, 519, 1285, 771, 1863, 519, 1545, 783, 3200,
+        519, 1035, 771, 1571, 519, 1299, 783, 2103, 519, 1281, 771, 1835, 519, 1311, 783, 3088,
+        519, 1035, 771, 1583, 519, 1303, 783, 2373, 519, 1285, 771, 2050, 519, 1549, 783, 3278,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1813, 519, 1311, 783, 2828,
+        519, 1035, 771, 1575, 519, 1303, 783, 2345, 519, 1285, 771, 1871, 519, 1545, 783, 3246,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1859, 519, 1311, 783, 3162,
+        519, 1035, 771, 1583, 519, 1303, 783, 2564, 519, 1285, 771, 2062, 519, 1549, 783, 3310,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1809, 519, 1311, 783, 2689,
+        519, 1035, 771, 1575, 519, 1303, 783, 2191, 519, 1285, 771, 1863, 519, 1545, 783, 3226,
+        519, 1035, 771, 1571, 519, 1299, 783, 2111, 519, 1281, 771, 1835, 519, 1311, 783, 3132,
+        519, 1035, 771, 1583, 519, 1303, 783, 2391, 519, 1285, 771, 2054, 519, 1549, 783, 3294,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1813, 519, 1311, 783, 2923,
+        519, 1035, 771, 1575, 519, 1303, 783, 2363, 519, 1285, 771, 1871, 519, 1545, 783, 3262,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1859, 519, 1311, 783, 3184,
+        519, 1035, 771, 1583, 519, 1303, 783, 2609, 519, 1285, 771, 2073, 519, 1549, 783, 3326,
+        519, 1035, 771, 1563, 519, 1299, 783, 2077, 519, 1281, 771, 1809, 519, 1311, 783, 2613,
+        519, 1035, 771, 1575, 519, 1303, 783, 2183, 519, 1285, 771, 1863, 519, 1545, 783, 3187,
+        519, 1035, 771, 1571, 519, 1299, 783, 2103, 519, 1281, 771, 1835, 519, 1311, 783, 2927,
+        519, 1035, 771, 1583, 519, 1303, 783, 2369, 519, 1285, 771, 2050, 519, 1549, 783, 3265,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1813, 519, 1311, 783, 2693,
+        519, 1035, 771, 1575, 519, 1303, 783, 2314, 519, 1285, 771, 1871, 519, 1545, 783, 3230,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1859, 519, 1311, 783, 3138,
+        519, 1035, 771, 1583, 519, 1303, 783, 2443, 519, 1285, 771, 2062, 519, 1549, 783, 3297,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1809, 519, 1311, 783, 2655,
+        519, 1035, 771, 1575, 519, 1303, 783, 2191, 519, 1285, 771, 1863, 519, 1545, 783, 3206,
+        519, 1035, 771, 1571, 519, 1299, 783, 2111, 519, 1281, 771, 1835, 519, 1311, 783, 3100,
+        519, 1035, 771, 1583, 519, 1303, 783, 2387, 519, 1285, 771, 2054, 519, 1549, 783, 3281,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1813, 519, 1311, 783, 2842,
+        519, 1035, 771, 1575, 519, 1303, 783, 2349, 519, 1285, 771, 1871, 519, 1545, 783, 3249,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1859, 519, 1311, 783, 3166,
+        519, 1035, 771, 1583, 519, 1303, 783, 2578, 519, 1285, 771, 2073, 519, 1549, 783, 3313,
+        519, 1035, 771, 1563, 519, 1299, 783, 2077, 519, 1281, 771, 1809, 519, 1311, 783, 2637,
+        519, 1035, 771, 1575, 519, 1303, 783, 2183, 519, 1285, 771, 1863, 519, 1545, 783, 3195,
+        519, 1035, 771, 1571, 519, 1299, 783, 2103, 519, 1281, 771, 1835, 519, 1311, 783, 2975,
+        519, 1035, 771, 1583, 519, 1303, 783, 2373, 519, 1285, 771, 2050, 519, 1549, 783, 3273,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1813, 519, 1311, 783, 2711,
+        519, 1035, 771, 1575, 519, 1303, 783, 2345, 519, 1285, 771, 1871, 519, 1545, 783, 3241,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1859, 519, 1311, 783, 3154,
+        519, 1035, 771, 1583, 519, 1303, 783, 2560, 519, 1285, 771, 2062, 519, 1549, 783, 3305,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1809, 519, 1311, 783, 2663,
+        519, 1035, 771, 1575, 519, 1303, 783, 2191, 519, 1285, 771, 1863, 519, 1545, 783, 3220,
+        519, 1035, 771, 1571, 519, 1299, 783, 2111, 519, 1281, 771, 1835, 519, 1311, 783, 3122,
+        519, 1035, 771, 1583, 519, 1303, 783, 2391, 519, 1285, 771, 2054, 519, 1549, 783, 3289,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1813, 519, 1311, 783, 2877,
+        519, 1035, 771, 1575, 519, 1303, 783, 2363, 519, 1285, 771, 1871, 519, 1545, 783, 3257,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1859, 519, 1311, 783, 3177,
+        519, 1035, 771, 1583, 519, 1303, 783, 2590, 519, 1285, 771, 2073, 519, 1549, 783, 3321,
+        519, 1035, 771, 1563, 519, 1299, 783, 2077, 519, 1281, 771, 1809, 519, 1311, 783, 2633,
+        519, 1035, 771, 1575, 519, 1303, 783, 2183, 519, 1285, 771, 1863, 519, 1545, 783, 3191,
+        519, 1035, 771, 1571, 519, 1299, 783, 2103, 519, 1281, 771, 1835, 519, 1311, 783, 2957,
+        519, 1035, 771, 1583, 519, 1303, 783, 2369, 519, 1285, 771, 2050, 519, 1549, 783, 3269,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1813, 519, 1311, 783, 2707,
+        519, 1035, 771, 1575, 519, 1303, 783, 2314, 519, 1285, 771, 1871, 519, 1545, 783, 3236,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1859, 519, 1311, 783, 3146,
+        519, 1035, 771, 1583, 519, 1303, 783, 2443, 519, 1285, 771, 2062, 519, 1549, 783, 3301,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1809, 519, 1311, 783, 2659,
+        519, 1035, 771, 1575, 519, 1303, 783, 2191, 519, 1285, 771, 1863, 519, 1545, 783, 3214,
+        519, 1035, 771, 1571, 519, 1299, 783, 2111, 519, 1281, 771, 1835, 519, 1311, 783, 3114,
+        519, 1035, 771, 1583, 519, 1303, 783, 2387, 519, 1285, 771, 2054, 519, 1549, 783, 3285,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1813, 519, 1311, 783, 2854,
+        519, 1035, 771, 1575, 519, 1303, 783, 2349, 519, 1285, 771, 1871, 519, 1545, 783, 3253,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1859, 519, 1311, 783, 3172,
+        519, 1035, 771, 1583, 519, 1303, 783, 2582, 519, 1285, 771, 2073, 519, 1549, 783, 3317,
+        519, 1035, 771, 1563, 519, 1299, 783, 2077, 519, 1281, 771, 1809, 519, 1311, 783, 2651,
+        519, 1035, 771, 1575, 519, 1303, 783, 2183, 519, 1285, 771, 1863, 519, 1545, 783, 3199,
+        519, 1035, 771, 1571, 519, 1299, 783, 2103, 519, 1281, 771, 1835, 519, 1311, 783, 2983,
+        519, 1035, 771, 1583, 519, 1303, 783, 2373, 519, 1285, 771, 2050, 519, 1549, 783, 3277,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1813, 519, 1311, 783, 2824,
+        519, 1035, 771, 1575, 519, 1303, 783, 2345, 519, 1285, 771, 1871, 519, 1545, 783, 3245,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1859, 519, 1311, 783, 3161,
+        519, 1035, 771, 1583, 519, 1303, 783, 2564, 519, 1285, 771, 2062, 519, 1549, 783, 3309,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1809, 519, 1311, 783, 2689,
+        519, 1035, 771, 1575, 519, 1303, 783, 2191, 519, 1285, 771, 1863, 519, 1545, 783, 3225,
+        519, 1035, 771, 1571, 519, 1299, 783, 2111, 519, 1281, 771, 1835, 519, 1311, 783, 3130,
+        519, 1035, 771, 1583, 519, 1303, 783, 2391, 519, 1285, 771, 2054, 519, 1549, 783, 3293,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1813, 519, 1311, 783, 2901,
+        519, 1035, 771, 1575, 519, 1303, 783, 2363, 519, 1285, 771, 1871, 519, 1545, 783, 3261,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1859, 519, 1311, 783, 3182,
+        519, 1035, 771, 1583, 519, 1303, 783, 2609, 519, 1285, 771, 2073, 519, 1549, 783, 3325,
+        519, 1035, 771, 1563, 519, 1299, 783, 2077, 519, 1281, 771, 1809, 519, 1311, 783, 2613,
+        519, 1035, 771, 1575, 519, 1303, 783, 2183, 519, 1285, 771, 1863, 519, 1545, 783, 3189,
+        519, 1035, 771, 1571, 519, 1299, 783, 2103, 519, 1281, 771, 1835, 519, 1311, 783, 2953,
+        519, 1035, 771, 1583, 519, 1303, 783, 2369, 519, 1285, 771, 2050, 519, 1549, 783, 3267,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1813, 519, 1311, 783, 2693,
+        519, 1035, 771, 1575, 519, 1303, 783, 2314, 519, 1285, 771, 1871, 519, 1545, 783, 3233,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1859, 519, 1311, 783, 3142,
+        519, 1035, 771, 1583, 519, 1303, 783, 2443, 519, 1285, 771, 2062, 519, 1549, 783, 3299,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1809, 519, 1311, 783, 2655,
+        519, 1035, 771, 1575, 519, 1303, 783, 2191, 519, 1285, 771, 1863, 519, 1545, 783, 3210,
+        519, 1035, 771, 1571, 519, 1299, 783, 2111, 519, 1281, 771, 1835, 519, 1311, 783, 3108,
+        519, 1035, 771, 1583, 519, 1303, 783, 2387, 519, 1285, 771, 2054, 519, 1549, 783, 3283,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1813, 519, 1311, 783, 2850,
+        519, 1035, 771, 1575, 519, 1303, 783, 2349, 519, 1285, 771, 1871, 519, 1545, 783, 3251,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1859, 519, 1311, 783, 3169,
+        519, 1035, 771, 1583, 519, 1303, 783, 2578, 519, 1285, 771, 2073, 519, 1549, 783, 3315,
+        519, 1035, 771, 1563, 519, 1299, 783, 2077, 519, 1281, 771, 1809, 519, 1311, 783, 2637,
+        519, 1035, 771, 1575, 519, 1303, 783, 2183, 519, 1285, 771, 1863, 519, 1545, 783, 3197,
+        519, 1035, 771, 1571, 519, 1299, 783, 2103, 519, 1281, 771, 1835, 519, 1311, 783, 2979,
+        519, 1035, 771, 1583, 519, 1303, 783, 2373, 519, 1285, 771, 2050, 519, 1549, 783, 3275,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1813, 519, 1311, 783, 2711,
+        519, 1035, 771, 1575, 519, 1303, 783, 2345, 519, 1285, 771, 1871, 519, 1545, 783, 3243,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1859, 519, 1311, 783, 3158,
+        519, 1035, 771, 1583, 519, 1303, 783, 2560, 519, 1285, 771, 2062, 519, 1549, 783, 3307,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1809, 519, 1311, 783, 2663,
+        519, 1035, 771, 1575, 519, 1303, 783, 2191, 519, 1285, 771, 1863, 519, 1545, 783, 3222,
+        519, 1035, 771, 1571, 519, 1299, 783, 2111, 519, 1281, 771, 1835, 519, 1311, 783, 3126,
+        519, 1035, 771, 1583, 519, 1303, 783, 2391, 519, 1285, 771, 2054, 519, 1549, 783, 3291,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1813, 519, 1311, 783, 2897,
+        519, 1035, 771, 1575, 519, 1303, 783, 2363, 519, 1285, 771, 1871, 519, 1545, 783, 3259,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1859, 519, 1311, 783, 3180,
+        519, 1035, 771, 1583, 519, 1303, 783, 2590, 519, 1285, 771, 2073, 519, 1549, 783, 3323,
+        519, 1035, 771, 1563, 519, 1299, 783, 2077, 519, 1281, 771, 1809, 519, 1311, 783, 2633,
+        519, 1035, 771, 1575, 519, 1303, 783, 2183, 519, 1285, 771, 1863, 519, 1545, 783, 3193,
+        519, 1035, 771, 1571, 519, 1299, 783, 2103, 519, 1281, 771, 1835, 519, 1311, 783, 2971,
+        519, 1035, 771, 1583, 519, 1303, 783, 2369, 519, 1285, 771, 2050, 519, 1549, 783, 3271,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1813, 519, 1311, 783, 2707,
+        519, 1035, 771, 1575, 519, 1303, 783, 2314, 519, 1285, 771, 1871, 519, 1545, 783, 3238,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1859, 519, 1311, 783, 3150,
+        519, 1035, 771, 1583, 519, 1303, 783, 2443, 519, 1285, 771, 2062, 519, 1549, 783, 3303,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1809, 519, 1311, 783, 2659,
+        519, 1035, 771, 1575, 519, 1303, 783, 2191, 519, 1285, 771, 1863, 519, 1545, 783, 3217,
+        519, 1035, 771, 1571, 519, 1299, 783, 2111, 519, 1281, 771, 1835, 519, 1311, 783, 3118,
+        519, 1035, 771, 1583, 519, 1303, 783, 2387, 519, 1285, 771, 2054, 519, 1549, 783, 3287,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1813, 519, 1311, 783, 2873,
+        519, 1035, 771, 1575, 519, 1303, 783, 2349, 519, 1285, 771, 1871, 519, 1545, 783, 3255,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1859, 519, 1311, 783, 3174,
+        519, 1035, 771, 1583, 519, 1303, 783, 2582, 519, 1285, 771, 2073, 519, 1549, 783, 3319,
+        519, 1035, 771, 1563, 519, 1299, 783, 2077, 519, 1281, 771, 1809, 519, 1311, 783, 2651,
+        519, 1035, 771, 1575, 519, 1303, 783, 2183, 519, 1285, 771, 1863, 519, 1545, 783, 3202,
+        519, 1035, 771, 1571, 519, 1299, 783, 2103, 519, 1281, 771, 1835, 519, 1311, 783, 3092,
+        519, 1035, 771, 1583, 519, 1303, 783, 2373, 519, 1285, 771, 2050, 519, 1549, 783, 3279,
+        519, 1035, 771, 1563, 519, 1299, 783, 2085, 519, 1281, 771, 1813, 519, 1311, 783, 2828,
+        519, 1035, 771, 1575, 519, 1303, 783, 2345, 519, 1285, 771, 1871, 519, 1545, 783, 3247,
+        519, 1035, 771, 1571, 519, 1299, 783, 2123, 519, 1281, 771, 1859, 519, 1311, 783, 3164,
+        519, 1035, 771, 1583, 519, 1303, 783, 2564, 519, 1285, 771, 2062, 519, 1549, 783, 3311,
+        519, 1035, 771, 1563, 519, 1299, 783, 2081, 519, 1281, 771, 1809, 519, 1311, 783, 2689,
+        519, 1035, 771, 1575, 519, 1303, 783, 2191, 519, 1285, 771, 1863, 519, 1545, 783, 3228,
+        519, 1035, 771, 1571, 519, 1299, 783, 2111, 519, 1281, 771, 1835, 519, 1311, 783, 3134,
+        519, 1035, 771, 1583, 519, 1303, 783, 2391, 519, 1285, 771, 2054, 519, 1549, 783, 3295,
+        519, 1035, 771, 1563, 519, 1299, 783, 2099, 519, 1281, 771, 1813, 519, 1311, 783, 2923,
+        519, 1035, 771, 1575, 519, 1303, 783, 2363, 519, 1285, 771, 1871, 519, 1545, 783, 3263,
+        519, 1035, 771, 1571, 519, 1299, 783, 2179, 519, 1281, 771, 1859, 519, 1311, 783, 3185,
+        519, 1035, 771, 1583, 519, 1303, 783, 2609, 519, 1285, 771, 2073, 519, 1549, 783, 3327,
+    ],
+    [
+        519, 1035, 771, 1549, 519, 1285, 783, 2073, 519, 1047, 771, 1583, 519, 1311, 783, 2613,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3187,
+        519, 1035, 771, 1563, 519, 1285, 783, 2103, 519, 1047, 771, 1813, 519, 1311, 783, 2957,
+        519, 1035, 771, 1575, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1545, 783, 3264,
+        519, 1035, 771, 1549, 519, 1285, 783, 2085, 519, 1047, 771, 1583, 519, 1311, 783, 2711,
+        519, 1035, 771, 1571, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3229,
+        519, 1035, 771, 1563, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3140,
+        519, 1035, 771, 1575, 519, 1299, 783, 2399, 519, 1047, 771, 2054, 519, 1545, 783, 3296,
+        519, 1035, 771, 1549, 519, 1285, 783, 2077, 519, 1047, 771, 1583, 519, 1311, 783, 2659,
+        519, 1035, 771, 1571, 519, 1299, 783, 2306, 519, 1047, 771, 1859, 519, 1537, 783, 3206,
+        519, 1035, 771, 1563, 519, 1285, 783, 2111, 519, 1047, 771, 1813, 519, 1311, 783, 3106,
+        519, 1035, 771, 1575, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1545, 783, 3280,
+        519, 1035, 771, 1549, 519, 1285, 783, 2099, 519, 1047, 771, 1583, 519, 1311, 783, 2865,
+        519, 1035, 771, 1571, 519, 1299, 783, 2345, 519, 1047, 771, 1863, 519, 1537, 783, 3248,
+        519, 1035, 771, 1563, 519, 1285, 783, 2179, 519, 1047, 771, 1835, 519, 1311, 783, 3166,
+        519, 1035, 771, 1575, 519, 1299, 783, 2447, 519, 1047, 771, 2065, 519, 1545, 783, 3312,
+        519, 1035, 771, 1549, 519, 1285, 783, 2073, 519, 1047, 771, 1583, 519, 1311, 783, 2637,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3195,
+        519, 1035, 771, 1563, 519, 1285, 783, 2103, 519, 1047, 771, 1813, 519, 1311, 783, 2983,
+        519, 1035, 771, 1575, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1545, 783, 3272,
+        519, 1035, 771, 1549, 519, 1285, 783, 2085, 519, 1047, 771, 1583, 519, 1311, 783, 2834,
+        519, 1035, 771, 1571, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3240,
+        519, 1035, 771, 1563, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3154,
+        519, 1035, 771, 1575, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1545, 783, 3304,
+        519, 1035, 771, 1549, 519, 1285, 783, 2077, 519, 1047, 771, 1583, 519, 1311, 783, 2693,
+        519, 1035, 771, 1571, 519, 1299, 783, 2314, 519, 1047, 771, 1859, 519, 1537, 783, 3218,
+        519, 1035, 771, 1563, 519, 1285, 783, 2111, 519, 1047, 771, 1813, 519, 1311, 783, 3124,
+        519, 1035, 771, 1575, 519, 1299, 783, 2391, 519, 1047, 771, 1871, 519, 1545, 783, 3288,
+        519, 1035, 771, 1549, 519, 1285, 783, 2099, 519, 1047, 771, 1583, 519, 1311, 783, 2901,
+        519, 1035, 771, 1571, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3256,
+        519, 1035, 771, 1563, 519, 1285, 783, 2179, 519, 1047, 771, 1835, 519, 1311, 783, 3177,
+        519, 1035, 771, 1575, 519, 1299, 783, 2564, 519, 1047, 771, 2065, 519, 1545, 783, 3320,
+        519, 1035, 771, 1549, 519, 1285, 783, 2073, 519, 1047, 771, 1583, 519, 1311, 783, 2625,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3191,
+        519, 1035, 771, 1563, 519, 1285, 783, 2103, 519, 1047, 771, 1813, 519, 1311, 783, 2975,
+        519, 1035, 771, 1575, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1545, 783, 3268,
+        519, 1035, 771, 1549, 519, 1285, 783, 2085, 519, 1047, 771, 1583, 519, 1311, 783, 2816,
+        519, 1035, 771, 1571, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3234,
+        519, 1035, 771, 1563, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3148,
+        519, 1035, 771, 1575, 519, 1299, 783, 2399, 519, 1047, 771, 2054, 519, 1545, 783, 3300,
+        519, 1035, 771, 1549, 519, 1285, 783, 2077, 519, 1047, 771, 1583, 519, 1311, 783, 2663,
+        519, 1035, 771, 1571, 519, 1299, 783, 2306, 519, 1047, 771, 1859, 519, 1537, 783, 3212,
+        519, 1035, 771, 1563, 519, 1285, 783, 2111, 519, 1047, 771, 1813, 519, 1311, 783, 3116,
+        519, 1035, 771, 1575, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1545, 783, 3284,
+        519, 1035, 771, 1549, 519, 1285, 783, 2099, 519, 1047, 771, 1583, 519, 1311, 783, 2877,
+        519, 1035, 771, 1571, 519, 1299, 783, 2345, 519, 1047, 771, 1863, 519, 1537, 783, 3252,
+        519, 1035, 771, 1563, 519, 1285, 783, 2179, 519, 1047, 771, 1835, 519, 1311, 783, 3172,
+        519, 1035, 771, 1575, 519, 1299, 783, 2447, 519, 1047, 771, 2065, 519, 1545, 783, 3316,
+        519, 1035, 771, 1549, 519, 1285, 783, 2073, 519, 1047, 771, 1583, 519, 1311, 783, 2651,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3199,
+        519, 1035, 771, 1563, 519, 1285, 783, 2103, 519, 1047, 771, 1813, 519, 1311, 783, 3092,
+        519, 1035, 771, 1575, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1545, 783, 3276,
+        519, 1035, 771, 1549, 519, 1285, 783, 2085, 519, 1047, 771, 1583, 519, 1311, 783, 2846,
+        519, 1035, 771, 1571, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3244,
+        519, 1035, 771, 1563, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3161,
+        519, 1035, 771, 1575, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1545, 783, 3308,
+        519, 1035, 771, 1549, 519, 1285, 783, 2077, 519, 1047, 771, 1583, 519, 1311, 783, 2707,
+        519, 1035, 771, 1571, 519, 1299, 783, 2314, 519, 1047, 771, 1859, 519, 1537, 783, 3224,
+        519, 1035, 771, 1563, 519, 1285, 783, 2111, 519, 1047, 771, 1813, 519, 1311, 783, 3132,
+        519, 1035, 771, 1575, 519, 1299, 783, 2391, 519, 1047, 771, 1871, 519, 1545, 783, 3292,
+        519, 1035, 771, 1549, 519, 1285, 783, 2099, 519, 1047, 771, 1583, 519, 1311, 783, 2927,
+        519, 1035, 771, 1571, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3260,
+        519, 1035, 771, 1563, 519, 1285, 783, 2179, 519, 1047, 771, 1835, 519, 1311, 783, 3182,
+        519, 1035, 771, 1575, 519, 1299, 783, 2582, 519, 1047, 771, 2065, 519, 1545, 783, 3324,
+        519, 1035, 771, 1549, 519, 1285, 783, 2073, 519, 1047, 771, 1583, 519, 1311, 783, 2613,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3189,
+        519, 1035, 771, 1563, 519, 1285, 783, 2103, 519, 1047, 771, 1813, 519, 1311, 783, 2971,
+        519, 1035, 771, 1575, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1545, 783, 3266,
+        519, 1035, 771, 1549, 519, 1285, 783, 2085, 519, 1047, 771, 1583, 519, 1311, 783, 2711,
+        519, 1035, 771, 1571, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3232,
+        519, 1035, 771, 1563, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3144,
+        519, 1035, 771, 1575, 519, 1299, 783, 2399, 519, 1047, 771, 2054, 519, 1545, 783, 3298,
+        519, 1035, 771, 1549, 519, 1285, 783, 2077, 519, 1047, 771, 1583, 519, 1311, 783, 2659,
+        519, 1035, 771, 1571, 519, 1299, 783, 2306, 519, 1047, 771, 1859, 519, 1537, 783, 3209,
+        519, 1035, 771, 1563, 519, 1285, 783, 2111, 519, 1047, 771, 1813, 519, 1311, 783, 3112,
+        519, 1035, 771, 1575, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1545, 783, 3282,
+        519, 1035, 771, 1549, 519, 1285, 783, 2099, 519, 1047, 771, 1583, 519, 1311, 783, 2873,
+        519, 1035, 771, 1571, 519, 1299, 783, 2345, 519, 1047, 771, 1863, 519, 1537, 783, 3250,
+        519, 1035, 771, 1563, 519, 1285, 783, 2179, 519, 1047, 771, 1835, 519, 1311, 783, 3169,
+        519, 1035, 771, 1575, 519, 1299, 783, 2447, 519, 1047, 771, 2065, 519, 1545, 783, 3314,
+        519, 1035, 771, 1549, 519, 1285, 783, 2073, 519, 1047, 771, 1583, 519, 1311, 783, 2637,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3197,
+        519, 1035, 771, 1563, 519, 1285, 783, 2103, 519, 1047, 771, 1813, 519, 1311, 783, 3080,
+        519, 1035, 771, 1575, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1545, 783, 3274,
+        519, 1035, 771, 1549, 519, 1285, 783, 2085, 519, 1047, 771, 1583, 519, 1311, 783, 2842,
+        519, 1035, 771, 1571, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3242,
+        519, 1035, 771, 1563, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3158,
+        519, 1035, 771, 1575, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1545, 783, 3306,
+        519, 1035, 771, 1549, 519, 1285, 783, 2077, 519, 1047, 771, 1583, 519, 1311, 783, 2693,
+        519, 1035, 771, 1571, 519, 1299, 783, 2314, 519, 1047, 771, 1859, 519, 1537, 783, 3221,
+        519, 1035, 771, 1563, 519, 1285, 783, 2111, 519, 1047, 771, 1813, 519, 1311, 783, 3128,
+        519, 1035, 771, 1575, 519, 1299, 783, 2391, 519, 1047, 771, 1871, 519, 1545, 783, 3290,
+        519, 1035, 771, 1549, 519, 1285, 783, 2099, 519, 1047, 771, 1583, 519, 1311, 783, 2923,
+        519, 1035, 771, 1571, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3258,
+        519, 1035, 771, 1563, 519, 1285, 783, 2179, 519, 1047, 771, 1835, 519, 1311, 783, 3180,
+        519, 1035, 771, 1575, 519, 1299, 783, 2564, 519, 1047, 771, 2065, 519, 1545, 783, 3322,
+        519, 1035, 771, 1549, 519, 1285, 783, 2073, 519, 1047, 771, 1583, 519, 1311, 783, 2625,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3193,
+        519, 1035, 771, 1563, 519, 1285, 783, 2103, 519, 1047, 771, 1813, 519, 1311, 783, 2979,
+        519, 1035, 771, 1575, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1545, 783, 3270,
+        519, 1035, 771, 1549, 519, 1285, 783, 2085, 519, 1047, 771, 1583, 519, 1311, 783, 2828,
+        519, 1035, 771, 1571, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3237,
+        519, 1035, 771, 1563, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3152,
+        519, 1035, 771, 1575, 519, 1299, 783, 2399, 519, 1047, 771, 2054, 519, 1545, 783, 3302,
+        519, 1035, 771, 1549, 519, 1285, 783, 2077, 519, 1047, 771, 1583, 519, 1311, 783, 2663,
+        519, 1035, 771, 1571, 519, 1299, 783, 2306, 519, 1047, 771, 1859, 519, 1537, 783, 3216,
+        519, 1035, 771, 1563, 519, 1285, 783, 2111, 519, 1047, 771, 1813, 519, 1311, 783, 3120,
+        519, 1035, 771, 1575, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1545, 783, 3286,
+        519, 1035, 771, 1549, 519, 1285, 783, 2099, 519, 1047, 771, 1583, 519, 1311, 783, 2889,
+        519, 1035, 771, 1571, 519, 1299, 783, 2345, 519, 1047, 771, 1863, 519, 1537, 783, 3254,
+        519, 1035, 771, 1563, 519, 1285, 783, 2179, 519, 1047, 771, 1835, 519, 1311, 783, 3174,
+        519, 1035, 771, 1575, 519, 1299, 783, 2447, 519, 1047, 771, 2065, 519, 1545, 783, 3318,
+        519, 1035, 771, 1549, 519, 1285, 783, 2073, 519, 1047, 771, 1583, 519, 1311, 783, 2651,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3202,
+        519, 1035, 771, 1563, 519, 1285, 783, 2103, 519, 1047, 771, 1813, 519, 1311, 783, 3100,
+        519, 1035, 771, 1575, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1545, 783, 3278,
+        519, 1035, 771, 1549, 519, 1285, 783, 2085, 519, 1047, 771, 1583, 519, 1311, 783, 2854,
+        519, 1035, 771, 1571, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3246,
+        519, 1035, 771, 1563, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3164,
+        519, 1035, 771, 1575, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1545, 783, 3310,
+        519, 1035, 771, 1549, 519, 1285, 783, 2077, 519, 1047, 771, 1583, 519, 1311, 783, 2707,
+        519, 1035, 771, 1571, 519, 1299, 783, 2314, 519, 1047, 771, 1859, 519, 1537, 783, 3226,
+        519, 1035, 771, 1563, 519, 1285, 783, 2111, 519, 1047, 771, 1813, 519, 1311, 783, 3136,
+        519, 1035, 771, 1575, 519, 1299, 783, 2391, 519, 1047, 771, 1871, 519, 1545, 783, 3294,
+        519, 1035, 771, 1549, 519, 1285, 783, 2099, 519, 1047, 771, 1583, 519, 1311, 783, 2945,
+        519, 1035, 771, 1571, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3262,
+        519, 1035, 771, 1563, 519, 1285, 783, 2179, 519, 1047, 771, 1835, 519, 1311, 783, 3185,
+        519, 1035, 771, 1575, 519, 1299, 783, 2582, 519, 1047, 771, 2065, 519, 1545, 783, 3326,
+        519, 1035, 771, 1549, 519, 1285, 783, 2073, 519, 1047, 771, 1583, 519, 1311, 783, 2613,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3188,
+        519, 1035, 771, 1563, 519, 1285, 783, 2103, 519, 1047, 771, 1813, 519, 1311, 783, 2957,
+        519, 1035, 771, 1575, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1545, 783, 3265,
+        519, 1035, 771, 1549, 519, 1285, 783, 2085, 519, 1047, 771, 1583, 519, 1311, 783, 2711,
+        519, 1035, 771, 1571, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3230,
+        519, 1035, 771, 1563, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3142,
+        519, 1035, 771, 1575, 519, 1299, 783, 2399, 519, 1047, 771, 2054, 519, 1545, 783, 3297,
+        519, 1035, 771, 1549, 519, 1285, 783, 2077, 519, 1047, 771, 1583, 519, 1311, 783, 2659,
+        519, 1035, 771, 1571, 519, 1299, 783, 2306, 519, 1047, 771, 1859, 519, 1537, 783, 3208,
+        519, 1035, 771, 1563, 519, 1285, 783, 2111, 519, 1047, 771, 1813, 519, 1311, 783, 3108,
+        519, 1035, 771, 1575, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1545, 783, 3281,
+        519, 1035, 771, 1549, 519, 1285, 783, 2099, 519, 1047, 771, 1583, 519, 1311, 783, 2865,
+        519, 1035, 771, 1571, 519, 1299, 783, 2345, 519, 1047, 771, 1863, 519, 1537, 783, 3249,
+        519, 1035, 771, 1563, 519, 1285, 783, 2179, 519, 1047, 771, 1835, 519, 1311, 783, 3168,
+        519, 1035, 771, 1575, 519, 1299, 783, 2447, 519, 1047, 771, 2065, 519, 1545, 783, 3313,
+        519, 1035, 771, 1549, 519, 1285, 783, 2073, 519, 1047, 771, 1583, 519, 1311, 783, 2637,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3196,
+        519, 1035, 771, 1563, 519, 1285, 783, 2103, 519, 1047, 771, 1813, 519, 1311, 783, 2983,
+        519, 1035, 771, 1575, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1545, 783, 3273,
+        519, 1035, 771, 1549, 519, 1285, 783, 2085, 519, 1047, 771, 1583, 519, 1311, 783, 2834,
+        519, 1035, 771, 1571, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3241,
+        519, 1035, 771, 1563, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3156,
+        519, 1035, 771, 1575, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1545, 783, 3305,
+        519, 1035, 771, 1549, 519, 1285, 783, 2077, 519, 1047, 771, 1583, 519, 1311, 783, 2693,
+        519, 1035, 771, 1571, 519, 1299, 783, 2314, 519, 1047, 771, 1859, 519, 1537, 783, 3220,
+        519, 1035, 771, 1563, 519, 1285, 783, 2111, 519, 1047, 771, 1813, 519, 1311, 783, 3126,
+        519, 1035, 771, 1575, 519, 1299, 783, 2391, 519, 1047, 771, 1871, 519, 1545, 783, 3289,
+        519, 1035, 771, 1549, 519, 1285, 783, 2099, 519, 1047, 771, 1583, 519, 1311, 783, 2901,
+        519, 1035, 771, 1571, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3257,
+        519, 1035, 771, 1563, 519, 1285, 783, 2179, 519, 1047, 771, 1835, 519, 1311, 783, 3178,
+        519, 1035, 771, 1575, 519, 1299, 783, 2564, 519, 1047, 771, 2065, 519, 1545, 783, 3321,
+        519, 1035, 771, 1549, 519, 1285, 783, 2073, 519, 1047, 771, 1583, 519, 1311, 783, 2625,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3192,
+        519, 1035, 771, 1563, 519, 1285, 783, 2103, 519, 1047, 771, 1813, 519, 1311, 783, 2975,
+        519, 1035, 771, 1575, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1545, 783, 3269,
+        519, 1035, 771, 1549, 519, 1285, 783, 2085, 519, 1047, 771, 1583, 519, 1311, 783, 2816,
+        519, 1035, 771, 1571, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3236,
+        519, 1035, 771, 1563, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3150,
+        519, 1035, 771, 1575, 519, 1299, 783, 2399, 519, 1047, 771, 2054, 519, 1545, 783, 3301,
+        519, 1035, 771, 1549, 519, 1285, 783, 2077, 519, 1047, 771, 1583, 519, 1311, 783, 2663,
+        519, 1035, 771, 1571, 519, 1299, 783, 2306, 519, 1047, 771, 1859, 519, 1537, 783, 3214,
+        519, 1035, 771, 1563, 519, 1285, 783, 2111, 519, 1047, 771, 1813, 519, 1311, 783, 3118,
+        519, 1035, 771, 1575, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1545, 783, 3285,
+        519, 1035, 771, 1549, 519, 1285, 783, 2099, 519, 1047, 771, 1583, 519, 1311, 783, 2877,
+        519, 1035, 771, 1571, 519, 1299, 783, 2345, 519, 1047, 771, 1863, 519, 1537, 783, 3253,
+        519, 1035, 771, 1563, 519, 1285, 783, 2179, 519, 1047, 771, 1835, 519, 1311, 783, 3173,
+        519, 1035, 771, 1575, 519, 1299, 783, 2447, 519, 1047, 771, 2065, 519, 1545, 783, 3317,
+        519, 1035, 771, 1549, 519, 1285, 783, 2073, 519, 1047, 771, 1583, 519, 1311, 783, 2651,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3200,
+        519, 1035, 771, 1563, 519, 1285, 783, 2103, 519, 1047, 771, 1813, 519, 1311, 783, 3096,
+        519, 1035, 771, 1575, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1545, 783, 3277,
+        519, 1035, 771, 1549, 519, 1285, 783, 2085, 519, 1047, 771, 1583, 519, 1311, 783, 2846,
+        519, 1035, 771, 1571, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3245,
+        519, 1035, 771, 1563, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3162,
+        519, 1035, 771, 1575, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1545, 783, 3309,
+        519, 1035, 771, 1549, 519, 1285, 783, 2077, 519, 1047, 771, 1583, 519, 1311, 783, 2707,
+        519, 1035, 771, 1571, 519, 1299, 783, 2314, 519, 1047, 771, 1859, 519, 1537, 783, 3225,
+        519, 1035, 771, 1563, 519, 1285, 783, 2111, 519, 1047, 771, 1813, 519, 1311, 783, 3134,
+        519, 1035, 771, 1575, 519, 1299, 783, 2391, 519, 1047, 771, 1871, 519, 1545, 783, 3293,
+        519, 1035, 771, 1549, 519, 1285, 783, 2099, 519, 1047, 771, 1583, 519, 1311, 783, 2927,
+        519, 1035, 771, 1571, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3261,
+        519, 1035, 771, 1563, 519, 1285, 783, 2179, 519, 1047, 771, 1835, 519, 1311, 783, 3184,
+        519, 1035, 771, 1575, 519, 1299, 783, 2582, 519, 1047, 771, 2065, 519, 1545, 783, 3325,
+        519, 1035, 771, 1549, 519, 1285, 783, 2073, 519, 1047, 771, 1583, 519, 1311, 783, 2613,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3190,
+        519, 1035, 771, 1563, 519, 1285, 783, 2103, 519, 1047, 771, 1813, 519, 1311, 783, 2971,
+        519, 1035, 771, 1575, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1545, 783, 3267,
+        519, 1035, 771, 1549, 519, 1285, 783, 2085, 519, 1047, 771, 1583, 519, 1311, 783, 2711,
+        519, 1035, 771, 1571, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3233,
+        519, 1035, 771, 1563, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3146,
+        519, 1035, 771, 1575, 519, 1299, 783, 2399, 519, 1047, 771, 2054, 519, 1545, 783, 3299,
+        519, 1035, 771, 1549, 519, 1285, 783, 2077, 519, 1047, 771, 1583, 519, 1311, 783, 2659,
+        519, 1035, 771, 1571, 519, 1299, 783, 2306, 519, 1047, 771, 1859, 519, 1537, 783, 3210,
+        519, 1035, 771, 1563, 519, 1285, 783, 2111, 519, 1047, 771, 1813, 519, 1311, 783, 3114,
+        519, 1035, 771, 1575, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1545, 783, 3283,
+        519, 1035, 771, 1549, 519, 1285, 783, 2099, 519, 1047, 771, 1583, 519, 1311, 783, 2873,
+        519, 1035, 771, 1571, 519, 1299, 783, 2345, 519, 1047, 771, 1863, 519, 1537, 783, 3251,
+        519, 1035, 771, 1563, 519, 1285, 783, 2179, 519, 1047, 771, 1835, 519, 1311, 783, 3170,
+        519, 1035, 771, 1575, 519, 1299, 783, 2447, 519, 1047, 771, 2065, 519, 1545, 783, 3315,
+        519, 1035, 771, 1549, 519, 1285, 783, 2073, 519, 1047, 771, 1583, 519, 1311, 783, 2637,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3198,
+        519, 1035, 771, 1563, 519, 1285, 783, 2103, 519, 1047, 771, 1813, 519, 1311, 783, 3088,
+        519, 1035, 771, 1575, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1545, 783, 3275,
+        519, 1035, 771, 1549, 519, 1285, 783, 2085, 519, 1047, 771, 1583, 519, 1311, 783, 2842,
+        519, 1035, 771, 1571, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3243,
+        519, 1035, 771, 1563, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3160,
+        519, 1035, 771, 1575, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1545, 783, 3307,
+        519, 1035, 771, 1549, 519, 1285, 783, 2077, 519, 1047, 771, 1583, 519, 1311, 783, 2693,
+        519, 1035, 771, 1571, 519, 1299, 783, 2314, 519, 1047, 771, 1859, 519, 1537, 783, 3222,
+        519, 1035, 771, 1563, 519, 1285, 783, 2111, 519, 1047, 771, 1813, 519, 1311, 783, 3130,
+        519, 1035, 771, 1575, 519, 1299, 783, 2391, 519, 1047, 771, 1871, 519, 1545, 783, 3291,
+        519, 1035, 771, 1549, 519, 1285, 783, 2099, 519, 1047, 771, 1583, 519, 1311, 783, 2923,
+        519, 1035, 771, 1571, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3259,
+        519, 1035, 771, 1563, 519, 1285, 783, 2179, 519, 1047, 771, 1835, 519, 1311, 783, 3181,
+        519, 1035, 771, 1575, 519, 1299, 783, 2564, 519, 1047, 771, 2065, 519, 1545, 783, 3323,
+        519, 1035, 771, 1549, 519, 1285, 783, 2073, 519, 1047, 771, 1583, 519, 1311, 783, 2625,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3194,
+        519, 1035, 771, 1563, 519, 1285, 783, 2103, 519, 1047, 771, 1813, 519, 1311, 783, 2979,
+        519, 1035, 771, 1575, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1545, 783, 3271,
+        519, 1035, 771, 1549, 519, 1285, 783, 2085, 519, 1047, 771, 1583, 519, 1311, 783, 2828,
+        519, 1035, 771, 1571, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3238,
+        519, 1035, 771, 1563, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3153,
+        519, 1035, 771, 1575, 519, 1299, 783, 2399, 519, 1047, 771, 2054, 519, 1545, 783, 3303,
+        519, 1035, 771, 1549, 519, 1285, 783, 2077, 519, 1047, 771, 1583, 519, 1311, 783, 2663,
+        519, 1035, 771, 1571, 519, 1299, 783, 2306, 519, 1047, 771, 1859, 519, 1537, 783, 3217,
+        519, 1035, 771, 1563, 519, 1285, 783, 2111, 519, 1047, 771, 1813, 519, 1311, 783, 3122,
+        519, 1035, 771, 1575, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1545, 783, 3287,
+        519, 1035, 771, 1549, 519, 1285, 783, 2099, 519, 1047, 771, 1583, 519, 1311, 783, 2889,
+        519, 1035, 771, 1571, 519, 1299, 783, 2345, 519, 1047, 771, 1863, 519, 1537, 783, 3255,
+        519, 1035, 771, 1563, 519, 1285, 783, 2179, 519, 1047, 771, 1835, 519, 1311, 783, 3176,
+        519, 1035, 771, 1575, 519, 1299, 783, 2447, 519, 1047, 771, 2065, 519, 1545, 783, 3319,
+        519, 1035, 771, 1549, 519, 1285, 783, 2073, 519, 1047, 771, 1583, 519, 1311, 783, 2651,
+        519, 1035, 771, 1571, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3204,
+        519, 1035, 771, 1563, 519, 1285, 783, 2103, 519, 1047, 771, 1813, 519, 1311, 783, 3104,
+        519, 1035, 771, 1575, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1545, 783, 3279,
+        519, 1035, 771, 1549, 519, 1285, 783, 2085, 519, 1047, 771, 1583, 519, 1311, 783, 2854,
+        519, 1035, 771, 1571, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3247,
+        519, 1035, 771, 1563, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3165,
+        519, 1035, 771, 1575, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1545, 783, 3311,
+        519, 1035, 771, 1549, 519, 1285, 783, 2077, 519, 1047, 771, 1583, 519, 1311, 783, 2707,
+        519, 1035, 771, 1571, 519, 1299, 783, 2314, 519, 1047, 771, 1859, 519, 1537, 783, 3228,
+        519, 1035, 771, 1563, 519, 1285, 783, 2111, 519, 1047, 771, 1813, 519, 1311, 783, 3138,
+        519, 1035, 771, 1575, 519, 1299, 783, 2391, 519, 1047, 771, 1871, 519, 1545, 783, 3295,
+        519, 1035, 771, 1549, 519, 1285, 783, 2099, 519, 1047, 771, 1583, 519, 1311, 783, 2945,
+        519, 1035, 771, 1571, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3263,
+        519, 1035, 771, 1563, 519, 1285, 783, 2179, 519, 1047, 771, 1835, 519, 1311, 783, 3186,
+        519, 1035, 771, 1575, 519, 1299, 783, 2582, 519, 1047, 771, 2065, 519, 1545, 783, 3327,
+    ],
+    [
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2625,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3185,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 2945,
+        519, 1035, 771, 1583, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1549, 783, 3264,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2719,
+        519, 1035, 771, 1575, 519, 1299, 783, 2306, 519, 1047, 771, 1863, 519, 1537, 783, 3228,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3136,
+        519, 1035, 771, 1583, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1549, 783, 3296,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2663,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3204,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3100,
+        519, 1035, 771, 1583, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1549, 783, 3280,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2854,
+        519, 1035, 771, 1575, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3248,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3164,
+        519, 1035, 771, 1583, 519, 1299, 783, 2570, 519, 1047, 771, 2065, 519, 1549, 783, 3312,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2651,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3194,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 2983,
+        519, 1035, 771, 1583, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1549, 783, 3272,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2828,
+        519, 1035, 771, 1575, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3238,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3152,
+        519, 1035, 771, 1583, 519, 1299, 783, 2455, 519, 1047, 771, 2054, 519, 1549, 783, 3304,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2693,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3217,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3120,
+        519, 1035, 771, 1583, 519, 1299, 783, 2399, 519, 1047, 771, 1871, 519, 1549, 783, 3288,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2889,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3256,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3174,
+        519, 1035, 771, 1583, 519, 1299, 783, 2601, 519, 1047, 771, 2065, 519, 1549, 783, 3320,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2637,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3189,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 2971,
+        519, 1035, 771, 1583, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1549, 783, 3268,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2816,
+        519, 1035, 771, 1575, 519, 1299, 783, 2306, 519, 1047, 771, 1863, 519, 1537, 783, 3233,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3144,
+        519, 1035, 771, 1583, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1549, 783, 3300,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2671,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3210,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3112,
+        519, 1035, 771, 1583, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1549, 783, 3284,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2873,
+        519, 1035, 771, 1575, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3252,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3169,
+        519, 1035, 771, 1583, 519, 1299, 783, 2582, 519, 1047, 771, 2065, 519, 1549, 783, 3316,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2659,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3198,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 3080,
+        519, 1035, 771, 1583, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1549, 783, 3276,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2842,
+        519, 1035, 771, 1575, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3243,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3158,
+        519, 1035, 771, 1583, 519, 1299, 783, 2455, 519, 1047, 771, 2054, 519, 1549, 783, 3308,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2707,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3222,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3128,
+        519, 1035, 771, 1583, 519, 1299, 783, 2399, 519, 1047, 771, 1871, 519, 1549, 783, 3292,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2923,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3260,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3180,
+        519, 1035, 771, 1583, 519, 1299, 783, 2613, 519, 1047, 771, 2065, 519, 1549, 783, 3324,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2625,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3187,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 2957,
+        519, 1035, 771, 1583, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1549, 783, 3266,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2719,
+        519, 1035, 771, 1575, 519, 1299, 783, 2306, 519, 1047, 771, 1863, 519, 1537, 783, 3230,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3140,
+        519, 1035, 771, 1583, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1549, 783, 3298,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2663,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3208,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3106,
+        519, 1035, 771, 1583, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1549, 783, 3282,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2865,
+        519, 1035, 771, 1575, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3250,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3166,
+        519, 1035, 771, 1583, 519, 1299, 783, 2570, 519, 1047, 771, 2065, 519, 1549, 783, 3314,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2651,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3196,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 2991,
+        519, 1035, 771, 1583, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1549, 783, 3274,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2834,
+        519, 1035, 771, 1575, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3241,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3154,
+        519, 1035, 771, 1583, 519, 1299, 783, 2455, 519, 1047, 771, 2054, 519, 1549, 783, 3306,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2693,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3220,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3124,
+        519, 1035, 771, 1583, 519, 1299, 783, 2399, 519, 1047, 771, 1871, 519, 1549, 783, 3290,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2901,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3258,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3177,
+        519, 1035, 771, 1583, 519, 1299, 783, 2601, 519, 1047, 771, 2065, 519, 1549, 783, 3322,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2637,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3192,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 2979,
+        519, 1035, 771, 1583, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1549, 783, 3270,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2820,
+        519, 1035, 771, 1575, 519, 1299, 783, 2306, 519, 1047, 771, 1863, 519, 1537, 783, 3236,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3148,
+        519, 1035, 771, 1583, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1549, 783, 3302,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2671,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3214,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3116,
+        519, 1035, 771, 1583, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1549, 783, 3286,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2877,
+        519, 1035, 771, 1575, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3254,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3172,
+        519, 1035, 771, 1583, 519, 1299, 783, 2582, 519, 1047, 771, 2065, 519, 1549, 783, 3318,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2659,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3200,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 3092,
+        519, 1035, 771, 1583, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1549, 783, 3278,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2846,
+        519, 1035, 771, 1575, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3245,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3161,
+        519, 1035, 771, 1583, 519, 1299, 783, 2455, 519, 1047, 771, 2054, 519, 1549, 783, 3310,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2707,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3225,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3132,
+        519, 1035, 771, 1583, 519, 1299, 783, 2399, 519, 1047, 771, 1871, 519, 1549, 783, 3294,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2935,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3262,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3182,
+        519, 1035, 771, 1583, 519, 1299, 783, 2613, 519, 1047, 771, 2065, 519, 1549, 783, 3326,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2625,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3186,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 2945,
+        519, 1035, 771, 1583, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1549, 783, 3265,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2719,
+        519, 1035, 771, 1575, 519, 1299, 783, 2306, 519, 1047, 771, 1863, 519, 1537, 783, 3229,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3138,
+        519, 1035, 771, 1583, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1549, 783, 3297,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2663,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3206,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3104,
+        519, 1035, 771, 1583, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1549, 783, 3281,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2854,
+        519, 1035, 771, 1575, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3249,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3165,
+        519, 1035, 771, 1583, 519, 1299, 783, 2570, 519, 1047, 771, 2065, 519, 1549, 783, 3313,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2651,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3195,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 2983,
+        519, 1035, 771, 1583, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1549, 783, 3273,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2828,
+        519, 1035, 771, 1575, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3240,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3153,
+        519, 1035, 771, 1583, 519, 1299, 783, 2455, 519, 1047, 771, 2054, 519, 1549, 783, 3305,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2693,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3218,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3122,
+        519, 1035, 771, 1583, 519, 1299, 783, 2399, 519, 1047, 771, 1871, 519, 1549, 783, 3289,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2889,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3257,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3176,
+        519, 1035, 771, 1583, 519, 1299, 783, 2601, 519, 1047, 771, 2065, 519, 1549, 783, 3321,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2637,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3190,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 2971,
+        519, 1035, 771, 1583, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1549, 783, 3269,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2816,
+        519, 1035, 771, 1575, 519, 1299, 783, 2306, 519, 1047, 771, 1863, 519, 1537, 783, 3234,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3146,
+        519, 1035, 771, 1583, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1549, 783, 3301,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2671,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3212,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3114,
+        519, 1035, 771, 1583, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1549, 783, 3285,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2873,
+        519, 1035, 771, 1575, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3253,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3170,
+        519, 1035, 771, 1583, 519, 1299, 783, 2582, 519, 1047, 771, 2065, 519, 1549, 783, 3317,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2659,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3199,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 3088,
+        519, 1035, 771, 1583, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1549, 783, 3277,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2842,
+        519, 1035, 771, 1575, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3244,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3160,
+        519, 1035, 771, 1583, 519, 1299, 783, 2455, 519, 1047, 771, 2054, 519, 1549, 783, 3309,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2707,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3224,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3130,
+        519, 1035, 771, 1583, 519, 1299, 783, 2399, 519, 1047, 771, 1871, 519, 1549, 783, 3293,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2923,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3261,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3181,
+        519, 1035, 771, 1583, 519, 1299, 783, 2613, 519, 1047, 771, 2065, 519, 1549, 783, 3325,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2625,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3188,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 2957,
+        519, 1035, 771, 1583, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1549, 783, 3267,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2719,
+        519, 1035, 771, 1575, 519, 1299, 783, 2306, 519, 1047, 771, 1863, 519, 1537, 783, 3232,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3142,
+        519, 1035, 771, 1583, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1549, 783, 3299,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2663,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3209,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3108,
+        519, 1035, 771, 1583, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1549, 783, 3283,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2865,
+        519, 1035, 771, 1575, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3251,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3168,
+        519, 1035, 771, 1583, 519, 1299, 783, 2570, 519, 1047, 771, 2065, 519, 1549, 783, 3315,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2651,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3197,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 2991,
+        519, 1035, 771, 1583, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1549, 783, 3275,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2834,
+        519, 1035, 771, 1575, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3242,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3156,
+        519, 1035, 771, 1583, 519, 1299, 783, 2455, 519, 1047, 771, 2054, 519, 1549, 783, 3307,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2693,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3221,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3126,
+        519, 1035, 771, 1583, 519, 1299, 783, 2399, 519, 1047, 771, 1871, 519, 1549, 783, 3291,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2901,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3259,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3178,
+        519, 1035, 771, 1583, 519, 1299, 783, 2601, 519, 1047, 771, 2065, 519, 1549, 783, 3323,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2637,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3193,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 2979,
+        519, 1035, 771, 1583, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1549, 783, 3271,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2820,
+        519, 1035, 771, 1575, 519, 1299, 783, 2306, 519, 1047, 771, 1863, 519, 1537, 783, 3237,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3150,
+        519, 1035, 771, 1583, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1549, 783, 3303,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2671,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3216,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3118,
+        519, 1035, 771, 1583, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1549, 783, 3287,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2877,
+        519, 1035, 771, 1575, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3255,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3173,
+        519, 1035, 771, 1583, 519, 1299, 783, 2582, 519, 1047, 771, 2065, 519, 1549, 783, 3319,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2659,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3202,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 3096,
+        519, 1035, 771, 1583, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1549, 783, 3279,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2846,
+        519, 1035, 771, 1575, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3246,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3162,
+        519, 1035, 771, 1583, 519, 1299, 783, 2455, 519, 1047, 771, 2054, 519, 1549, 783, 3311,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2707,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3226,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3134,
+        519, 1035, 771, 1583, 519, 1299, 783, 2399, 519, 1047, 771, 1871, 519, 1549, 783, 3295,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2935,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3263,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3184,
+        519, 1035, 771, 1583, 519, 1299, 783, 2613, 519, 1047, 771, 2065, 519, 1549, 783, 3327,
+    ],
+    [
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2601,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3185,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 2971,
+        519, 1035, 771, 1583, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1549, 783, 3264,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2707,
+        519, 1035, 771, 1575, 519, 1299, 783, 2306, 519, 1047, 771, 1863, 519, 1537, 783, 3228,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3136,
+        519, 1035, 771, 1583, 519, 1299, 783, 2407, 519, 1047, 771, 2054, 519, 1549, 783, 3296,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2651,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3204,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3104,
+        519, 1035, 771, 1583, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1549, 783, 3280,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2865,
+        519, 1035, 771, 1575, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3248,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3164,
+        519, 1035, 771, 1583, 519, 1299, 783, 2455, 519, 1047, 771, 2065, 519, 1549, 783, 3312,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2625,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3194,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 3072,
+        519, 1035, 771, 1583, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1549, 783, 3272,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2820,
+        519, 1035, 771, 1575, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3238,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3152,
+        519, 1035, 771, 1583, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1549, 783, 3304,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2671,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3217,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3122,
+        519, 1035, 771, 1583, 519, 1299, 783, 2399, 519, 1047, 771, 1871, 519, 1549, 783, 3288,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2923,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3256,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3174,
+        519, 1035, 771, 1583, 519, 1299, 783, 2570, 519, 1047, 771, 2065, 519, 1549, 783, 3320,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2613,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3189,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 2983,
+        519, 1035, 771, 1583, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1549, 783, 3268,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2719,
+        519, 1035, 771, 1575, 519, 1299, 783, 2306, 519, 1047, 771, 1863, 519, 1537, 783, 3233,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3144,
+        519, 1035, 771, 1583, 519, 1299, 783, 2407, 519, 1047, 771, 2054, 519, 1549, 783, 3300,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2659,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3210,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3114,
+        519, 1035, 771, 1583, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1549, 783, 3284,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2889,
+        519, 1035, 771, 1575, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3252,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3169,
+        519, 1035, 771, 1583, 519, 1299, 783, 2455, 519, 1047, 771, 2065, 519, 1549, 783, 3316,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2637,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3198,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 3092,
+        519, 1035, 771, 1583, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1549, 783, 3276,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2846,
+        519, 1035, 771, 1575, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3243,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3158,
+        519, 1035, 771, 1583, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1549, 783, 3308,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2693,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3222,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3129,
+        519, 1035, 771, 1583, 519, 1299, 783, 2399, 519, 1047, 771, 1871, 519, 1549, 783, 3292,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2945,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3260,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3180,
+        519, 1035, 771, 1583, 519, 1299, 783, 2582, 519, 1047, 771, 2065, 519, 1549, 783, 3324,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2601,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3187,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 2979,
+        519, 1035, 771, 1583, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1549, 783, 3266,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2707,
+        519, 1035, 771, 1575, 519, 1299, 783, 2306, 519, 1047, 771, 1863, 519, 1537, 783, 3230,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3140,
+        519, 1035, 771, 1583, 519, 1299, 783, 2407, 519, 1047, 771, 2054, 519, 1549, 783, 3298,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2651,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3208,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3108,
+        519, 1035, 771, 1583, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1549, 783, 3282,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2877,
+        519, 1035, 771, 1575, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3250,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3166,
+        519, 1035, 771, 1583, 519, 1299, 783, 2455, 519, 1047, 771, 2065, 519, 1549, 783, 3314,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2625,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3196,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 3084,
+        519, 1035, 771, 1583, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1549, 783, 3274,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2834,
+        519, 1035, 771, 1575, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3241,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3154,
+        519, 1035, 771, 1583, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1549, 783, 3306,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2671,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3220,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3126,
+        519, 1035, 771, 1583, 519, 1299, 783, 2399, 519, 1047, 771, 1871, 519, 1549, 783, 3290,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2935,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3258,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3177,
+        519, 1035, 771, 1583, 519, 1299, 783, 2570, 519, 1047, 771, 2065, 519, 1549, 783, 3322,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2613,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3192,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 2991,
+        519, 1035, 771, 1583, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1549, 783, 3270,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2719,
+        519, 1035, 771, 1575, 519, 1299, 783, 2306, 519, 1047, 771, 1863, 519, 1537, 783, 3236,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3148,
+        519, 1035, 771, 1583, 519, 1299, 783, 2407, 519, 1047, 771, 2054, 519, 1549, 783, 3302,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2659,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3214,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3118,
+        519, 1035, 771, 1583, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1549, 783, 3286,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2901,
+        519, 1035, 771, 1575, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3254,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3172,
+        519, 1035, 771, 1583, 519, 1299, 783, 2455, 519, 1047, 771, 2065, 519, 1549, 783, 3318,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2637,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3200,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 3098,
+        519, 1035, 771, 1583, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1549, 783, 3278,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2854,
+        519, 1035, 771, 1575, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3245,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3161,
+        519, 1035, 771, 1583, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1549, 783, 3310,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2693,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3225,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3132,
+        519, 1035, 771, 1583, 519, 1299, 783, 2399, 519, 1047, 771, 1871, 519, 1549, 783, 3294,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2957,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3262,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3182,
+        519, 1035, 771, 1583, 519, 1299, 783, 2582, 519, 1047, 771, 2065, 519, 1549, 783, 3326,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2601,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3186,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 2971,
+        519, 1035, 771, 1583, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1549, 783, 3265,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2707,
+        519, 1035, 771, 1575, 519, 1299, 783, 2306, 519, 1047, 771, 1863, 519, 1537, 783, 3229,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3138,
+        519, 1035, 771, 1583, 519, 1299, 783, 2407, 519, 1047, 771, 2054, 519, 1549, 783, 3297,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2651,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3206,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3106,
+        519, 1035, 771, 1583, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1549, 783, 3281,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2865,
+        519, 1035, 771, 1575, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3249,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3165,
+        519, 1035, 771, 1583, 519, 1299, 783, 2455, 519, 1047, 771, 2065, 519, 1549, 783, 3313,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2625,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3195,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 3080,
+        519, 1035, 771, 1583, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1549, 783, 3273,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2820,
+        519, 1035, 771, 1575, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3240,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3153,
+        519, 1035, 771, 1583, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1549, 783, 3305,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2671,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3218,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3124,
+        519, 1035, 771, 1583, 519, 1299, 783, 2399, 519, 1047, 771, 1871, 519, 1549, 783, 3289,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2923,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3257,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3176,
+        519, 1035, 771, 1583, 519, 1299, 783, 2570, 519, 1047, 771, 2065, 519, 1549, 783, 3321,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2613,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3190,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 2983,
+        519, 1035, 771, 1583, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1549, 783, 3269,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2719,
+        519, 1035, 771, 1575, 519, 1299, 783, 2306, 519, 1047, 771, 1863, 519, 1537, 783, 3234,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3146,
+        519, 1035, 771, 1583, 519, 1299, 783, 2407, 519, 1047, 771, 2054, 519, 1549, 783, 3301,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2659,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3212,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3116,
+        519, 1035, 771, 1583, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1549, 783, 3285,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2889,
+        519, 1035, 771, 1575, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3253,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3170,
+        519, 1035, 771, 1583, 519, 1299, 783, 2455, 519, 1047, 771, 2065, 519, 1549, 783, 3317,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2637,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3199,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 3096,
+        519, 1035, 771, 1583, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1549, 783, 3277,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2846,
+        519, 1035, 771, 1575, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3244,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3160,
+        519, 1035, 771, 1583, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1549, 783, 3309,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2693,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3224,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3130,
+        519, 1035, 771, 1583, 519, 1299, 783, 2399, 519, 1047, 771, 1871, 519, 1549, 783, 3293,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2945,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3261,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3181,
+        519, 1035, 771, 1583, 519, 1299, 783, 2582, 519, 1047, 771, 2065, 519, 1549, 783, 3325,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2601,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3188,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 2979,
+        519, 1035, 771, 1583, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1549, 783, 3267,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2707,
+        519, 1035, 771, 1575, 519, 1299, 783, 2306, 519, 1047, 771, 1863, 519, 1537, 783, 3232,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3142,
+        519, 1035, 771, 1583, 519, 1299, 783, 2407, 519, 1047, 771, 2054, 519, 1549, 783, 3299,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2651,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3209,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3112,
+        519, 1035, 771, 1583, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1549, 783, 3283,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2877,
+        519, 1035, 771, 1575, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3251,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3168,
+        519, 1035, 771, 1583, 519, 1299, 783, 2455, 519, 1047, 771, 2065, 519, 1549, 783, 3315,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2625,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3197,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 3088,
+        519, 1035, 771, 1583, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1549, 783, 3275,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2834,
+        519, 1035, 771, 1575, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3242,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3156,
+        519, 1035, 771, 1583, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1549, 783, 3307,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2671,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3221,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3128,
+        519, 1035, 771, 1583, 519, 1299, 783, 2399, 519, 1047, 771, 1871, 519, 1549, 783, 3291,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2935,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3259,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3178,
+        519, 1035, 771, 1583, 519, 1299, 783, 2570, 519, 1047, 771, 2065, 519, 1549, 783, 3323,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2613,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3193,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 2991,
+        519, 1035, 771, 1583, 519, 1299, 783, 2363, 519, 1047, 771, 1871, 519, 1549, 783, 3271,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2719,
+        519, 1035, 771, 1575, 519, 1299, 783, 2306, 519, 1047, 771, 1863, 519, 1537, 783, 3237,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3150,
+        519, 1035, 771, 1583, 519, 1299, 783, 2407, 519, 1047, 771, 2054, 519, 1549, 783, 3303,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2659,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3216,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3120,
+        519, 1035, 771, 1583, 519, 1299, 783, 2387, 519, 1047, 771, 1871, 519, 1549, 783, 3287,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2901,
+        519, 1035, 771, 1575, 519, 1299, 783, 2337, 519, 1047, 771, 1863, 519, 1537, 783, 3255,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3173,
+        519, 1035, 771, 1583, 519, 1299, 783, 2455, 519, 1047, 771, 2065, 519, 1549, 783, 3319,
+        519, 1035, 771, 1563, 519, 1285, 783, 2073, 519, 1047, 771, 1801, 519, 1311, 783, 2637,
+        519, 1035, 771, 1575, 519, 1299, 783, 2183, 519, 1047, 771, 1859, 519, 1537, 783, 3202,
+        519, 1035, 771, 1571, 519, 1285, 783, 2111, 519, 1047, 771, 1835, 519, 1311, 783, 3100,
+        519, 1035, 771, 1583, 519, 1299, 783, 2373, 519, 1047, 771, 1871, 519, 1549, 783, 3279,
+        519, 1035, 771, 1563, 519, 1285, 783, 2085, 519, 1047, 771, 1813, 519, 1311, 783, 2854,
+        519, 1035, 771, 1575, 519, 1299, 783, 2318, 519, 1047, 771, 1863, 519, 1537, 783, 3246,
+        519, 1035, 771, 1571, 519, 1285, 783, 2135, 519, 1047, 771, 1847, 519, 1311, 783, 3162,
+        519, 1035, 771, 1583, 519, 1299, 783, 2443, 519, 1047, 771, 2054, 519, 1549, 783, 3311,
+        519, 1035, 771, 1563, 519, 1285, 783, 2077, 519, 1047, 771, 1801, 519, 1311, 783, 2693,
+        519, 1035, 771, 1575, 519, 1299, 783, 2191, 519, 1047, 771, 1859, 519, 1537, 783, 3226,
+        519, 1035, 771, 1571, 519, 1285, 783, 2123, 519, 1047, 771, 1835, 519, 1311, 783, 3134,
+        519, 1035, 771, 1583, 519, 1299, 783, 2399, 519, 1047, 771, 1871, 519, 1549, 783, 3295,
+        519, 1035, 771, 1563, 519, 1285, 783, 2099, 519, 1047, 771, 1813, 519, 1311, 783, 2957,
+        519, 1035, 771, 1575, 519, 1299, 783, 2349, 519, 1047, 771, 1863, 519, 1537, 783, 3263,
+        519, 1035, 771, 1571, 519, 1285, 783, 2179, 519, 1047, 771, 1847, 519, 1311, 783, 3184,
+        519, 1035, 771, 1583, 519, 1299, 783, 2582, 519, 1047, 771, 2065, 519, 1549, 783, 3327,
+    ],
+    [
+        515, 1029, 769, 1542, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2598,
+        515, 1029, 769, 1553, 515, 1295, 775, 2179, 515, 1035, 769, 1825, 515, 1536, 775, 3191,
+        515, 1029, 769, 1549, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 2903,
+        515, 1029, 769, 1559, 515, 1295, 775, 2351, 515, 1035, 769, 1831, 515, 1538, 775, 3264,
+        515, 1029, 769, 1542, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2693,
+        515, 1029, 769, 1553, 515, 1295, 775, 2326, 515, 1035, 769, 1827, 515, 1536, 775, 3232,
+        515, 1029, 769, 1549, 515, 1289, 775, 2115, 515, 1035, 769, 1819, 515, 1299, 775, 3157,
+        515, 1029, 769, 1559, 515, 1295, 775, 2433, 515, 1035, 769, 2056, 515, 1538, 775, 3296,
+        515, 1029, 769, 1542, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2626,
+        515, 1029, 769, 1553, 515, 1295, 775, 2316, 515, 1035, 769, 1825, 515, 1536, 775, 3214,
+        515, 1029, 769, 1549, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3124,
+        515, 1029, 769, 1559, 515, 1295, 775, 2373, 515, 1035, 769, 1831, 515, 1538, 775, 3280,
+        515, 1029, 769, 1542, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 2862,
+        515, 1029, 769, 1553, 515, 1295, 775, 2338, 515, 1035, 769, 1827, 515, 1536, 775, 3248,
+        515, 1029, 769, 1549, 515, 1289, 775, 2119, 515, 1035, 769, 1819, 515, 1299, 775, 3175,
+        515, 1029, 769, 1559, 515, 1295, 775, 2580, 515, 1035, 769, 2062, 515, 1538, 775, 3312,
+        515, 1029, 769, 1542, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2609,
+        515, 1029, 769, 1553, 515, 1295, 775, 2179, 515, 1035, 769, 1825, 515, 1536, 775, 3199,
+        515, 1029, 769, 1549, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 2959,
+        515, 1029, 769, 1559, 515, 1295, 775, 2355, 515, 1035, 769, 1831, 515, 1538, 775, 3272,
+        515, 1029, 769, 1542, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2840,
+        515, 1029, 769, 1553, 515, 1295, 775, 2333, 515, 1035, 769, 1827, 515, 1536, 775, 3240,
+        515, 1029, 769, 1549, 515, 1289, 775, 2115, 515, 1035, 769, 1819, 515, 1299, 775, 3166,
+        515, 1029, 769, 1559, 515, 1295, 775, 2439, 515, 1035, 769, 2056, 515, 1538, 775, 3304,
+        515, 1029, 769, 1542, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2639,
+        515, 1029, 769, 1553, 515, 1295, 775, 2320, 515, 1035, 769, 1825, 515, 1536, 775, 3224,
+        515, 1029, 769, 1549, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3140,
+        515, 1029, 769, 1559, 515, 1295, 775, 2379, 515, 1035, 769, 1831, 515, 1538, 775, 3288,
+        515, 1029, 769, 1542, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 2880,
+        515, 1029, 769, 1553, 515, 1295, 775, 2345, 515, 1035, 769, 1827, 515, 1536, 775, 3256,
+        515, 1029, 769, 1549, 515, 1289, 775, 2119, 515, 1035, 769, 1819, 515, 1299, 775, 3183,
+        515, 1029, 769, 1559, 515, 1295, 775, 2590, 515, 1035, 769, 2062, 515, 1538, 775, 3320,
+        515, 1029, 769, 1542, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2605,
+        515, 1029, 769, 1553, 515, 1295, 775, 2179, 515, 1035, 769, 1825, 515, 1536, 775, 3195,
+        515, 1029, 769, 1549, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 2946,
+        515, 1029, 769, 1559, 515, 1295, 775, 2351, 515, 1035, 769, 1831, 515, 1538, 775, 3268,
+        515, 1029, 769, 1542, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2699,
+        515, 1029, 769, 1553, 515, 1295, 775, 2326, 515, 1035, 769, 1827, 515, 1536, 775, 3236,
+        515, 1029, 769, 1549, 515, 1289, 775, 2115, 515, 1035, 769, 1819, 515, 1299, 775, 3162,
+        515, 1029, 769, 1559, 515, 1295, 775, 2433, 515, 1035, 769, 2056, 515, 1538, 775, 3300,
+        515, 1029, 769, 1542, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2633,
+        515, 1029, 769, 1553, 515, 1295, 775, 2316, 515, 1035, 769, 1825, 515, 1536, 775, 3220,
+        515, 1029, 769, 1549, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3130,
+        515, 1029, 769, 1559, 515, 1295, 775, 2373, 515, 1035, 769, 1831, 515, 1538, 775, 3284,
+        515, 1029, 769, 1542, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 2875,
+        515, 1029, 769, 1553, 515, 1295, 775, 2338, 515, 1035, 769, 1827, 515, 1536, 775, 3252,
+        515, 1029, 769, 1549, 515, 1289, 775, 2119, 515, 1035, 769, 1819, 515, 1299, 775, 3179,
+        515, 1029, 769, 1559, 515, 1295, 775, 2586, 515, 1035, 769, 2062, 515, 1538, 775, 3316,
+        515, 1029, 769, 1542, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2615,
+        515, 1029, 769, 1553, 515, 1295, 775, 2179, 515, 1035, 769, 1825, 515, 1536, 775, 3208,
+        515, 1029, 769, 1549, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 3112,
+        515, 1029, 769, 1559, 515, 1295, 775, 2355, 515, 1035, 769, 1831, 515, 1538, 775, 3276,
+        515, 1029, 769, 1542, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2852,
+        515, 1029, 769, 1553, 515, 1295, 775, 2333, 515, 1035, 769, 1827, 515, 1536, 775, 3244,
+        515, 1029, 769, 1549, 515, 1289, 775, 2115, 515, 1035, 769, 1819, 515, 1299, 775, 3170,
+        515, 1029, 769, 1559, 515, 1295, 775, 2439, 515, 1035, 769, 2056, 515, 1538, 775, 3308,
+        515, 1029, 769, 1542, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2643,
+        515, 1029, 769, 1553, 515, 1295, 775, 2320, 515, 1035, 769, 1825, 515, 1536, 775, 3228,
+        515, 1029, 769, 1549, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3150,
+        515, 1029, 769, 1559, 515, 1295, 775, 2379, 515, 1035, 769, 1831, 515, 1538, 775, 3292,
+        515, 1029, 769, 1542, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 2893,
+        515, 1029, 769, 1553, 515, 1295, 775, 2345, 515, 1035, 769, 1827, 515, 1536, 775, 3260,
+        515, 1029, 769, 1549, 515, 1289, 775, 2119, 515, 1035, 769, 1819, 515, 1299, 775, 3187,
+        515, 1029, 769, 1559, 515, 1295, 775, 2592, 515, 1035, 769, 2062, 515, 1538, 775, 3324,
+        515, 1029, 769, 1542, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2598,
+        515, 1029, 769, 1553, 515, 1295, 775, 2179, 515, 1035, 769, 1825, 515, 1536, 775, 3193,
+        515, 1029, 769, 1549, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 2915,
+        515, 1029, 769, 1559, 515, 1295, 775, 2351, 515, 1035, 769, 1831, 515, 1538, 775, 3266,
+        515, 1029, 769, 1542, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2693,
+        515, 1029, 769, 1553, 515, 1295, 775, 2326, 515, 1035, 769, 1827, 515, 1536, 775, 3234,
+        515, 1029, 769, 1549, 515, 1289, 775, 2115, 515, 1035, 769, 1819, 515, 1299, 775, 3160,
+        515, 1029, 769, 1559, 515, 1295, 775, 2433, 515, 1035, 769, 2056, 515, 1538, 775, 3298,
+        515, 1029, 769, 1542, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2626,
+        515, 1029, 769, 1553, 515, 1295, 775, 2316, 515, 1035, 769, 1825, 515, 1536, 775, 3217,
+        515, 1029, 769, 1549, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3128,
+        515, 1029, 769, 1559, 515, 1295, 775, 2373, 515, 1035, 769, 1831, 515, 1538, 775, 3282,
+        515, 1029, 769, 1542, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 2869,
+        515, 1029, 769, 1553, 515, 1295, 775, 2338, 515, 1035, 769, 1827, 515, 1536, 775, 3250,
+        515, 1029, 769, 1549, 515, 1289, 775, 2119, 515, 1035, 769, 1819, 515, 1299, 775, 3177,
+        515, 1029, 769, 1559, 515, 1295, 775, 2580, 515, 1035, 769, 2062, 515, 1538, 775, 3314,
+        515, 1029, 769, 1542, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2609,
+        515, 1029, 769, 1553, 515, 1295, 775, 2179, 515, 1035, 769, 1825, 515, 1536, 775, 3204,
+        515, 1029, 769, 1549, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 2963,
+        515, 1029, 769, 1559, 515, 1295, 775, 2355, 515, 1035, 769, 1831, 515, 1538, 775, 3274,
+        515, 1029, 769, 1542, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2844,
+        515, 1029, 769, 1553, 515, 1295, 775, 2333, 515, 1035, 769, 1827, 515, 1536, 775, 3242,
+        515, 1029, 769, 1549, 515, 1289, 775, 2115, 515, 1035, 769, 1819, 515, 1299, 775, 3168,
+        515, 1029, 769, 1559, 515, 1295, 775, 2439, 515, 1035, 769, 2056, 515, 1538, 775, 3306,
+        515, 1029, 769, 1542, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2639,
+        515, 1029, 769, 1553, 515, 1295, 775, 2320, 515, 1035, 769, 1825, 515, 1536, 775, 3226,
+        515, 1029, 769, 1549, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3146,
+        515, 1029, 769, 1559, 515, 1295, 775, 2379, 515, 1035, 769, 1831, 515, 1538, 775, 3290,
+        515, 1029, 769, 1542, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 2886,
+        515, 1029, 769, 1553, 515, 1295, 775, 2345, 515, 1035, 769, 1827, 515, 1536, 775, 3258,
+        515, 1029, 769, 1549, 515, 1289, 775, 2119, 515, 1035, 769, 1819, 515, 1299, 775, 3185,
+        515, 1029, 769, 1559, 515, 1295, 775, 2590, 515, 1035, 769, 2062, 515, 1538, 775, 3322,
+        515, 1029, 769, 1542, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2605,
+        515, 1029, 769, 1553, 515, 1295, 775, 2179, 515, 1035, 769, 1825, 515, 1536, 775, 3197,
+        515, 1029, 769, 1549, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 2953,
+        515, 1029, 769, 1559, 515, 1295, 775, 2351, 515, 1035, 769, 1831, 515, 1538, 775, 3270,
+        515, 1029, 769, 1542, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2699,
+        515, 1029, 769, 1553, 515, 1295, 775, 2326, 515, 1035, 769, 1827, 515, 1536, 775, 3238,
+        515, 1029, 769, 1549, 515, 1289, 775, 2115, 515, 1035, 769, 1819, 515, 1299, 775, 3164,
+        515, 1029, 769, 1559, 515, 1295, 775, 2433, 515, 1035, 769, 2056, 515, 1538, 775, 3302,
+        515, 1029, 769, 1542, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2633,
+        515, 1029, 769, 1553, 515, 1295, 775, 2316, 515, 1035, 769, 1825, 515, 1536, 775, 3222,
+        515, 1029, 769, 1549, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3133,
+        515, 1029, 769, 1559, 515, 1295, 775, 2373, 515, 1035, 769, 1831, 515, 1538, 775, 3286,
+        515, 1029, 769, 1542, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 2879,
+        515, 1029, 769, 1553, 515, 1295, 775, 2338, 515, 1035, 769, 1827, 515, 1536, 775, 3254,
+        515, 1029, 769, 1549, 515, 1289, 775, 2119, 515, 1035, 769, 1819, 515, 1299, 775, 3181,
+        515, 1029, 769, 1559, 515, 1295, 775, 2586, 515, 1035, 769, 2062, 515, 1538, 775, 3318,
+        515, 1029, 769, 1542, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2615,
+        515, 1029, 769, 1553, 515, 1295, 775, 2179, 515, 1035, 769, 1825, 515, 1536, 775, 3212,
+        515, 1029, 769, 1549, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 3120,
+        515, 1029, 769, 1559, 515, 1295, 775, 2355, 515, 1035, 769, 1831, 515, 1538, 775, 3278,
+        515, 1029, 769, 1542, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2858,
+        515, 1029, 769, 1553, 515, 1295, 775, 2333, 515, 1035, 769, 1827, 515, 1536, 775, 3246,
+        515, 1029, 769, 1549, 515, 1289, 775, 2115, 515, 1035, 769, 1819, 515, 1299, 775, 3173,
+        515, 1029, 769, 1559, 515, 1295, 775, 2439, 515, 1035, 769, 2056, 515, 1538, 775, 3310,
+        515, 1029, 769, 1542, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2643,
+        515, 1029, 769, 1553, 515, 1295, 775, 2320, 515, 1035, 769, 1825, 515, 1536, 775, 3230,
+        515, 1029, 769, 1549, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3154,
+        515, 1029, 769, 1559, 515, 1295, 775, 2379, 515, 1035, 769, 1831, 515, 1538, 775, 3294,
+        515, 1029, 769, 1542, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 2897,
+        515, 1029, 769, 1553, 515, 1295, 775, 2345, 515, 1035, 769, 1827, 515, 1536, 775, 3262,
+        515, 1029, 769, 1549, 515, 1289, 775, 2119, 515, 1035, 769, 1819, 515, 1299, 775, 3189,
+        515, 1029, 769, 1559, 515, 1295, 775, 2592, 515, 1035, 769, 2062, 515, 1538, 775, 3326,
+        515, 1029, 769, 1542, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2598,
+        515, 1029, 769, 1553, 515, 1295, 775, 2179, 515, 1035, 769, 1825, 515, 1536, 775, 3192,
+        515, 1029, 769, 1549, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 2903,
+        515, 1029, 769, 1559, 515, 1295, 775, 2351, 515, 1035, 769, 1831, 515, 1538, 775, 3265,
+        515, 1029, 769, 1542, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2693,
+        515, 1029, 769, 1553, 515, 1295, 775, 2326, 515, 1035, 769, 1827, 515, 1536, 775, 3233,
+        515, 1029, 769, 1549, 515, 1289, 775, 2115, 515, 1035, 769, 1819, 515, 1299, 775, 3158,
+        515, 1029, 769, 1559, 515, 1295, 775, 2433, 515, 1035, 769, 2056, 515, 1538, 775, 3297,
+        515, 1029, 769, 1542, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2626,
+        515, 1029, 769, 1553, 515, 1295, 775, 2316, 515, 1035, 769, 1825, 515, 1536, 775, 3216,
+        515, 1029, 769, 1549, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3126,
+        515, 1029, 769, 1559, 515, 1295, 775, 2373, 515, 1035, 769, 1831, 515, 1538, 775, 3281,
+        515, 1029, 769, 1542, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 2862,
+        515, 1029, 769, 1553, 515, 1295, 775, 2338, 515, 1035, 769, 1827, 515, 1536, 775, 3249,
+        515, 1029, 769, 1549, 515, 1289, 775, 2119, 515, 1035, 769, 1819, 515, 1299, 775, 3176,
+        515, 1029, 769, 1559, 515, 1295, 775, 2580, 515, 1035, 769, 2062, 515, 1538, 775, 3313,
+        515, 1029, 769, 1542, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2609,
+        515, 1029, 769, 1553, 515, 1295, 775, 2179, 515, 1035, 769, 1825, 515, 1536, 775, 3200,
+        515, 1029, 769, 1549, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 2959,
+        515, 1029, 769, 1559, 515, 1295, 775, 2355, 515, 1035, 769, 1831, 515, 1538, 775, 3273,
+        515, 1029, 769, 1542, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2840,
+        515, 1029, 769, 1553, 515, 1295, 775, 2333, 515, 1035, 769, 1827, 515, 1536, 775, 3241,
+        515, 1029, 769, 1549, 515, 1289, 775, 2115, 515, 1035, 769, 1819, 515, 1299, 775, 3167,
+        515, 1029, 769, 1559, 515, 1295, 775, 2439, 515, 1035, 769, 2056, 515, 1538, 775, 3305,
+        515, 1029, 769, 1542, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2639,
+        515, 1029, 769, 1553, 515, 1295, 775, 2320, 515, 1035, 769, 1825, 515, 1536, 775, 3225,
+        515, 1029, 769, 1549, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3144,
+        515, 1029, 769, 1559, 515, 1295, 775, 2379, 515, 1035, 769, 1831, 515, 1538, 775, 3289,
+        515, 1029, 769, 1542, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 2880,
+        515, 1029, 769, 1553, 515, 1295, 775, 2345, 515, 1035, 769, 1827, 515, 1536, 775, 3257,
+        515, 1029, 769, 1549, 515, 1289, 775, 2119, 515, 1035, 769, 1819, 515, 1299, 775, 3184,
+        515, 1029, 769, 1559, 515, 1295, 775, 2590, 515, 1035, 769, 2062, 515, 1538, 775, 3321,
+        515, 1029, 769, 1542, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2605,
+        515, 1029, 769, 1553, 515, 1295, 775, 2179, 515, 1035, 769, 1825, 515, 1536, 775, 3196,
+        515, 1029, 769, 1549, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 2946,
+        515, 1029, 769, 1559, 515, 1295, 775, 2351, 515, 1035, 769, 1831, 515, 1538, 775, 3269,
+        515, 1029, 769, 1542, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2699,
+        515, 1029, 769, 1553, 515, 1295, 775, 2326, 515, 1035, 769, 1827, 515, 1536, 775, 3237,
+        515, 1029, 769, 1549, 515, 1289, 775, 2115, 515, 1035, 769, 1819, 515, 1299, 775, 3163,
+        515, 1029, 769, 1559, 515, 1295, 775, 2433, 515, 1035, 769, 2056, 515, 1538, 775, 3301,
+        515, 1029, 769, 1542, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2633,
+        515, 1029, 769, 1553, 515, 1295, 775, 2316, 515, 1035, 769, 1825, 515, 1536, 775, 3221,
+        515, 1029, 769, 1549, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3132,
+        515, 1029, 769, 1559, 515, 1295, 775, 2373, 515, 1035, 769, 1831, 515, 1538, 775, 3285,
+        515, 1029, 769, 1542, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 2875,
+        515, 1029, 769, 1553, 515, 1295, 775, 2338, 515, 1035, 769, 1827, 515, 1536, 775, 3253,
+        515, 1029, 769, 1549, 515, 1289, 775, 2119, 515, 1035, 769, 1819, 515, 1299, 775, 3180,
+        515, 1029, 769, 1559, 515, 1295, 775, 2586, 515, 1035, 769, 2062, 515, 1538, 775, 3317,
+        515, 1029, 769, 1542, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2615,
+        515, 1029, 769, 1553, 515, 1295, 775, 2179, 515, 1035, 769, 1825, 515, 1536, 775, 3210,
+        515, 1029, 769, 1549, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 3116,
+        515, 1029, 769, 1559, 515, 1295, 775, 2355, 515, 1035, 769, 1831, 515, 1538, 775, 3277,
+        515, 1029, 769, 1542, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2852,
+        515, 1029, 769, 1553, 515, 1295, 775, 2333, 515, 1035, 769, 1827, 515, 1536, 775, 3245,
+        515, 1029, 769, 1549, 515, 1289, 775, 2115, 515, 1035, 769, 1819, 515, 1299, 775, 3172,
+        515, 1029, 769, 1559, 515, 1295, 775, 2439, 515, 1035, 769, 2056, 515, 1538, 775, 3309,
+        515, 1029, 769, 1542, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2643,
+        515, 1029, 769, 1553, 515, 1295, 775, 2320, 515, 1035, 769, 1825, 515, 1536, 775, 3229,
+        515, 1029, 769, 1549, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3152,
+        515, 1029, 769, 1559, 515, 1295, 775, 2379, 515, 1035, 769, 1831, 515, 1538, 775, 3293,
+        515, 1029, 769, 1542, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 2893,
+        515, 1029, 769, 1553, 515, 1295, 775, 2345, 515, 1035, 769, 1827, 515, 1536, 775, 3261,
+        515, 1029, 769, 1549, 515, 1289, 775, 2119, 515, 1035, 769, 1819, 515, 1299, 775, 3188,
+        515, 1029, 769, 1559, 515, 1295, 775, 2592, 515, 1035, 769, 2062, 515, 1538, 775, 3325,
+        515, 1029, 769, 1542, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2598,
+        515, 1029, 769, 1553, 515, 1295, 775, 2179, 515, 1035, 769, 1825, 515, 1536, 775, 3194,
+        515, 1029, 769, 1549, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 2915,
+        515, 1029, 769, 1559, 515, 1295, 775, 2351, 515, 1035, 769, 1831, 515, 1538, 775, 3267,
+        515, 1029, 769, 1542, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2693,
+        515, 1029, 769, 1553, 515, 1295, 775, 2326, 515, 1035, 769, 1827, 515, 1536, 775, 3235,
+        515, 1029, 769, 1549, 515, 1289, 775, 2115, 515, 1035, 769, 1819, 515, 1299, 775, 3161,
+        515, 1029, 769, 1559, 515, 1295, 775, 2433, 515, 1035, 769, 2056, 515, 1538, 775, 3299,
+        515, 1029, 769, 1542, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2626,
+        515, 1029, 769, 1553, 515, 1295, 775, 2316, 515, 1035, 769, 1825, 515, 1536, 775, 3218,
+        515, 1029, 769, 1549, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3129,
+        515, 1029, 769, 1559, 515, 1295, 775, 2373, 515, 1035, 769, 1831, 515, 1538, 775, 3283,
+        515, 1029, 769, 1542, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 2869,
+        515, 1029, 769, 1553, 515, 1295, 775, 2338, 515, 1035, 769, 1827, 515, 1536, 775, 3251,
+        515, 1029, 769, 1549, 515, 1289, 775, 2119, 515, 1035, 769, 1819, 515, 1299, 775, 3178,
+        515, 1029, 769, 1559, 515, 1295, 775, 2580, 515, 1035, 769, 2062, 515, 1538, 775, 3315,
+        515, 1029, 769, 1542, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2609,
+        515, 1029, 769, 1553, 515, 1295, 775, 2179, 515, 1035, 769, 1825, 515, 1536, 775, 3206,
+        515, 1029, 769, 1549, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 2963,
+        515, 1029, 769, 1559, 515, 1295, 775, 2355, 515, 1035, 769, 1831, 515, 1538, 775, 3275,
+        515, 1029, 769, 1542, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2844,
+        515, 1029, 769, 1553, 515, 1295, 775, 2333, 515, 1035, 769, 1827, 515, 1536, 775, 3243,
+        515, 1029, 769, 1549, 515, 1289, 775, 2115, 515, 1035, 769, 1819, 515, 1299, 775, 3169,
+        515, 1029, 769, 1559, 515, 1295, 775, 2439, 515, 1035, 769, 2056, 515, 1538, 775, 3307,
+        515, 1029, 769, 1542, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2639,
+        515, 1029, 769, 1553, 515, 1295, 775, 2320, 515, 1035, 769, 1825, 515, 1536, 775, 3227,
+        515, 1029, 769, 1549, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3148,
+        515, 1029, 769, 1559, 515, 1295, 775, 2379, 515, 1035, 769, 1831, 515, 1538, 775, 3291,
+        515, 1029, 769, 1542, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 2886,
+        515, 1029, 769, 1553, 515, 1295, 775, 2345, 515, 1035, 769, 1827, 515, 1536, 775, 3259,
+        515, 1029, 769, 1549, 515, 1289, 775, 2119, 515, 1035, 769, 1819, 515, 1299, 775, 3186,
+        515, 1029, 769, 1559, 515, 1295, 775, 2590, 515, 1035, 769, 2062, 515, 1538, 775, 3323,
+        515, 1029, 769, 1542, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2605,
+        515, 1029, 769, 1553, 515, 1295, 775, 2179, 515, 1035, 769, 1825, 515, 1536, 775, 3198,
+        515, 1029, 769, 1549, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 2953,
+        515, 1029, 769, 1559, 515, 1295, 775, 2351, 515, 1035, 769, 1831, 515, 1538, 775, 3271,
+        515, 1029, 769, 1542, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2699,
+        515, 1029, 769, 1553, 515, 1295, 775, 2326, 515, 1035, 769, 1827, 515, 1536, 775, 3239,
+        515, 1029, 769, 1549, 515, 1289, 775, 2115, 515, 1035, 769, 1819, 515, 1299, 775, 3165,
+        515, 1029, 769, 1559, 515, 1295, 775, 2433, 515, 1035, 769, 2056, 515, 1538, 775, 3303,
+        515, 1029, 769, 1542, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2633,
+        515, 1029, 769, 1553, 515, 1295, 775, 2316, 515, 1035, 769, 1825, 515, 1536, 775, 3223,
+        515, 1029, 769, 1549, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3134,
+        515, 1029, 769, 1559, 515, 1295, 775, 2373, 515, 1035, 769, 1831, 515, 1538, 775, 3287,
+        515, 1029, 769, 1542, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 2879,
+        515, 1029, 769, 1553, 515, 1295, 775, 2338, 515, 1035, 769, 1827, 515, 1536, 775, 3255,
+        515, 1029, 769, 1549, 515, 1289, 775, 2119, 515, 1035, 769, 1819, 515, 1299, 775, 3182,
+        515, 1029, 769, 1559, 515, 1295, 775, 2586, 515, 1035, 769, 2062, 515, 1538, 775, 3319,
+        515, 1029, 769, 1542, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2615,
+        515, 1029, 769, 1553, 515, 1295, 775, 2179, 515, 1035, 769, 1825, 515, 1536, 775, 3213,
+        515, 1029, 769, 1549, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 3122,
+        515, 1029, 769, 1559, 515, 1295, 775, 2355, 515, 1035, 769, 1831, 515, 1538, 775, 3279,
+        515, 1029, 769, 1542, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2858,
+        515, 1029, 769, 1553, 515, 1295, 775, 2333, 515, 1035, 769, 1827, 515, 1536, 775, 3247,
+        515, 1029, 769, 1549, 515, 1289, 775, 2115, 515, 1035, 769, 1819, 515, 1299, 775, 3174,
+        515, 1029, 769, 1559, 515, 1295, 775, 2439, 515, 1035, 769, 2056, 515, 1538, 775, 3311,
+        515, 1029, 769, 1542, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2643,
+        515, 1029, 769, 1553, 515, 1295, 775, 2320, 515, 1035, 769, 1825, 515, 1536, 775, 3231,
+        515, 1029, 769, 1549, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3156,
+        515, 1029, 769, 1559, 515, 1295, 775, 2379, 515, 1035, 769, 1831, 515, 1538, 775, 3295,
+        515, 1029, 769, 1542, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 2897,
+        515, 1029, 769, 1553, 515, 1295, 775, 2345, 515, 1035, 769, 1827, 515, 1536, 775, 3263,
+        515, 1029, 769, 1549, 515, 1289, 775, 2119, 515, 1035, 769, 1819, 515, 1299, 775, 3190,
+        515, 1029, 769, 1559, 515, 1295, 775, 2592, 515, 1035, 769, 2062, 515, 1538, 775, 3327,
+    ],
+    [
+        515, 1029, 769, 1549, 515, 1289, 775, 2056, 515, 1035, 769, 1792, 515, 1299, 775, 2605,
+        515, 1029, 769, 1559, 515, 1295, 775, 2119, 515, 1035, 769, 1819, 515, 1538, 775, 3191,
+        515, 1029, 769, 1553, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2915,
+        515, 1029, 769, 1571, 515, 1295, 775, 2351, 515, 1035, 769, 1831, 515, 1542, 775, 3264,
+        515, 1029, 769, 1549, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2693,
+        515, 1029, 769, 1559, 515, 1295, 775, 2326, 515, 1035, 769, 1825, 515, 1538, 775, 3232,
+        515, 1029, 769, 1553, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 3157,
+        515, 1029, 769, 1571, 515, 1295, 775, 2435, 515, 1035, 769, 1859, 515, 1542, 775, 3296,
+        515, 1029, 769, 1549, 515, 1289, 775, 2062, 515, 1035, 769, 1792, 515, 1299, 775, 2633,
+        515, 1029, 769, 1559, 515, 1295, 775, 2316, 515, 1035, 769, 1819, 515, 1538, 775, 3214,
+        515, 1029, 769, 1553, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 3124,
+        515, 1029, 769, 1571, 515, 1295, 775, 2373, 515, 1035, 769, 1831, 515, 1542, 775, 3280,
+        515, 1029, 769, 1549, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2869,
+        515, 1029, 769, 1559, 515, 1295, 775, 2338, 515, 1035, 769, 1825, 515, 1538, 775, 3248,
+        515, 1029, 769, 1553, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3175,
+        515, 1029, 769, 1571, 515, 1295, 775, 2580, 515, 1035, 769, 1859, 515, 1542, 775, 3312,
+        515, 1029, 769, 1549, 515, 1289, 775, 2056, 515, 1035, 769, 1792, 515, 1299, 775, 2615,
+        515, 1029, 769, 1559, 515, 1295, 775, 2119, 515, 1035, 769, 1819, 515, 1538, 775, 3199,
+        515, 1029, 769, 1553, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2963,
+        515, 1029, 769, 1571, 515, 1295, 775, 2355, 515, 1035, 769, 1831, 515, 1542, 775, 3272,
+        515, 1029, 769, 1549, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2840,
+        515, 1029, 769, 1559, 515, 1295, 775, 2333, 515, 1035, 769, 1825, 515, 1538, 775, 3240,
+        515, 1029, 769, 1553, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 3166,
+        515, 1029, 769, 1571, 515, 1295, 775, 2439, 515, 1035, 769, 1859, 515, 1542, 775, 3304,
+        515, 1029, 769, 1549, 515, 1289, 775, 2062, 515, 1035, 769, 1792, 515, 1299, 775, 2643,
+        515, 1029, 769, 1559, 515, 1295, 775, 2320, 515, 1035, 769, 1819, 515, 1538, 775, 3224,
+        515, 1029, 769, 1553, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 3140,
+        515, 1029, 769, 1571, 515, 1295, 775, 2379, 515, 1035, 769, 1831, 515, 1542, 775, 3288,
+        515, 1029, 769, 1549, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2886,
+        515, 1029, 769, 1559, 515, 1295, 775, 2345, 515, 1035, 769, 1825, 515, 1538, 775, 3256,
+        515, 1029, 769, 1553, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3183,
+        515, 1029, 769, 1571, 515, 1295, 775, 2592, 515, 1035, 769, 1859, 515, 1542, 775, 3320,
+        515, 1029, 769, 1549, 515, 1289, 775, 2056, 515, 1035, 769, 1792, 515, 1299, 775, 2609,
+        515, 1029, 769, 1559, 515, 1295, 775, 2119, 515, 1035, 769, 1819, 515, 1538, 775, 3195,
+        515, 1029, 769, 1553, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2953,
+        515, 1029, 769, 1571, 515, 1295, 775, 2351, 515, 1035, 769, 1831, 515, 1542, 775, 3268,
+        515, 1029, 769, 1549, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2699,
+        515, 1029, 769, 1559, 515, 1295, 775, 2326, 515, 1035, 769, 1825, 515, 1538, 775, 3236,
+        515, 1029, 769, 1553, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 3162,
+        515, 1029, 769, 1571, 515, 1295, 775, 2435, 515, 1035, 769, 1859, 515, 1542, 775, 3300,
+        515, 1029, 769, 1549, 515, 1289, 775, 2062, 515, 1035, 769, 1792, 515, 1299, 775, 2639,
+        515, 1029, 769, 1559, 515, 1295, 775, 2316, 515, 1035, 769, 1819, 515, 1538, 775, 3220,
+        515, 1029, 769, 1553, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 3130,
+        515, 1029, 769, 1571, 515, 1295, 775, 2373, 515, 1035, 769, 1831, 515, 1542, 775, 3284,
+        515, 1029, 769, 1549, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2879,
+        515, 1029, 769, 1559, 515, 1295, 775, 2338, 515, 1035, 769, 1825, 515, 1538, 775, 3252,
+        515, 1029, 769, 1553, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3179,
+        515, 1029, 769, 1571, 515, 1295, 775, 2586, 515, 1035, 769, 1859, 515, 1542, 775, 3316,
+        515, 1029, 769, 1549, 515, 1289, 775, 2056, 515, 1035, 769, 1792, 515, 1299, 775, 2626,
+        515, 1029, 769, 1559, 515, 1295, 775, 2119, 515, 1035, 769, 1819, 515, 1538, 775, 3208,
+        515, 1029, 769, 1553, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 3116,
+        515, 1029, 769, 1571, 515, 1295, 775, 2355, 515, 1035, 769, 1831, 515, 1542, 775, 3276,
+        515, 1029, 769, 1549, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2852,
+        515, 1029, 769, 1559, 515, 1295, 775, 2333, 515, 1035, 769, 1825, 515, 1538, 775, 3244,
+        515, 1029, 769, 1553, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 3170,
+        515, 1029, 769, 1571, 515, 1295, 775, 2439, 515, 1035, 769, 1859, 515, 1542, 775, 3308,
+        515, 1029, 769, 1549, 515, 1289, 775, 2062, 515, 1035, 769, 1792, 515, 1299, 775, 2689,
+        515, 1029, 769, 1559, 515, 1295, 775, 2320, 515, 1035, 769, 1819, 515, 1538, 775, 3228,
+        515, 1029, 769, 1553, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 3150,
+        515, 1029, 769, 1571, 515, 1295, 775, 2379, 515, 1035, 769, 1831, 515, 1542, 775, 3292,
+        515, 1029, 769, 1549, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2897,
+        515, 1029, 769, 1559, 515, 1295, 775, 2345, 515, 1035, 769, 1825, 515, 1538, 775, 3260,
+        515, 1029, 769, 1553, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3187,
+        515, 1029, 769, 1571, 515, 1295, 775, 2598, 515, 1035, 769, 1859, 515, 1542, 775, 3324,
+        515, 1029, 769, 1549, 515, 1289, 775, 2056, 515, 1035, 769, 1792, 515, 1299, 775, 2605,
+        515, 1029, 769, 1559, 515, 1295, 775, 2119, 515, 1035, 769, 1819, 515, 1538, 775, 3193,
+        515, 1029, 769, 1553, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2946,
+        515, 1029, 769, 1571, 515, 1295, 775, 2351, 515, 1035, 769, 1831, 515, 1542, 775, 3266,
+        515, 1029, 769, 1549, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2693,
+        515, 1029, 769, 1559, 515, 1295, 775, 2326, 515, 1035, 769, 1825, 515, 1538, 775, 3234,
+        515, 1029, 769, 1553, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 3160,
+        515, 1029, 769, 1571, 515, 1295, 775, 2435, 515, 1035, 769, 1859, 515, 1542, 775, 3298,
+        515, 1029, 769, 1549, 515, 1289, 775, 2062, 515, 1035, 769, 1792, 515, 1299, 775, 2633,
+        515, 1029, 769, 1559, 515, 1295, 775, 2316, 515, 1035, 769, 1819, 515, 1538, 775, 3217,
+        515, 1029, 769, 1553, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 3128,
+        515, 1029, 769, 1571, 515, 1295, 775, 2373, 515, 1035, 769, 1831, 515, 1542, 775, 3282,
+        515, 1029, 769, 1549, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2875,
+        515, 1029, 769, 1559, 515, 1295, 775, 2338, 515, 1035, 769, 1825, 515, 1538, 775, 3250,
+        515, 1029, 769, 1553, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3177,
+        515, 1029, 769, 1571, 515, 1295, 775, 2580, 515, 1035, 769, 1859, 515, 1542, 775, 3314,
+        515, 1029, 769, 1549, 515, 1289, 775, 2056, 515, 1035, 769, 1792, 515, 1299, 775, 2615,
+        515, 1029, 769, 1559, 515, 1295, 775, 2119, 515, 1035, 769, 1819, 515, 1538, 775, 3204,
+        515, 1029, 769, 1553, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 3100,
+        515, 1029, 769, 1571, 515, 1295, 775, 2355, 515, 1035, 769, 1831, 515, 1542, 775, 3274,
+        515, 1029, 769, 1549, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2846,
+        515, 1029, 769, 1559, 515, 1295, 775, 2333, 515, 1035, 769, 1825, 515, 1538, 775, 3242,
+        515, 1029, 769, 1553, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 3168,
+        515, 1029, 769, 1571, 515, 1295, 775, 2439, 515, 1035, 769, 1859, 515, 1542, 775, 3306,
+        515, 1029, 769, 1549, 515, 1289, 775, 2062, 515, 1035, 769, 1792, 515, 1299, 775, 2643,
+        515, 1029, 769, 1559, 515, 1295, 775, 2320, 515, 1035, 769, 1819, 515, 1538, 775, 3226,
+        515, 1029, 769, 1553, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 3146,
+        515, 1029, 769, 1571, 515, 1295, 775, 2379, 515, 1035, 769, 1831, 515, 1542, 775, 3290,
+        515, 1029, 769, 1549, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2893,
+        515, 1029, 769, 1559, 515, 1295, 775, 2345, 515, 1035, 769, 1825, 515, 1538, 775, 3258,
+        515, 1029, 769, 1553, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3185,
+        515, 1029, 769, 1571, 515, 1295, 775, 2592, 515, 1035, 769, 1859, 515, 1542, 775, 3322,
+        515, 1029, 769, 1549, 515, 1289, 775, 2056, 515, 1035, 769, 1792, 515, 1299, 775, 2609,
+        515, 1029, 769, 1559, 515, 1295, 775, 2119, 515, 1035, 769, 1819, 515, 1538, 775, 3197,
+        515, 1029, 769, 1553, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2959,
+        515, 1029, 769, 1571, 515, 1295, 775, 2351, 515, 1035, 769, 1831, 515, 1542, 775, 3270,
+        515, 1029, 769, 1549, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2699,
+        515, 1029, 769, 1559, 515, 1295, 775, 2326, 515, 1035, 769, 1825, 515, 1538, 775, 3238,
+        515, 1029, 769, 1553, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 3164,
+        515, 1029, 769, 1571, 515, 1295, 775, 2435, 515, 1035, 769, 1859, 515, 1542, 775, 3302,
+        515, 1029, 769, 1549, 515, 1289, 775, 2062, 515, 1035, 769, 1792, 515, 1299, 775, 2639,
+        515, 1029, 769, 1559, 515, 1295, 775, 2316, 515, 1035, 769, 1819, 515, 1538, 775, 3222,
+        515, 1029, 769, 1553, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 3133,
+        515, 1029, 769, 1571, 515, 1295, 775, 2373, 515, 1035, 769, 1831, 515, 1542, 775, 3286,
+        515, 1029, 769, 1549, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2880,
+        515, 1029, 769, 1559, 515, 1295, 775, 2338, 515, 1035, 769, 1825, 515, 1538, 775, 3254,
+        515, 1029, 769, 1553, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3181,
+        515, 1029, 769, 1571, 515, 1295, 775, 2586, 515, 1035, 769, 1859, 515, 1542, 775, 3318,
+        515, 1029, 769, 1549, 515, 1289, 775, 2056, 515, 1035, 769, 1792, 515, 1299, 775, 2626,
+        515, 1029, 769, 1559, 515, 1295, 775, 2119, 515, 1035, 769, 1819, 515, 1538, 775, 3212,
+        515, 1029, 769, 1553, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 3120,
+        515, 1029, 769, 1571, 515, 1295, 775, 2355, 515, 1035, 769, 1831, 515, 1542, 775, 3278,
+        515, 1029, 769, 1549, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2858,
+        515, 1029, 769, 1559, 515, 1295, 775, 2333, 515, 1035, 769, 1825, 515, 1538, 775, 3246,
+        515, 1029, 769, 1553, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 3173,
+        515, 1029, 769, 1571, 515, 1295, 775, 2439, 515, 1035, 769, 1859, 515, 1542, 775, 3310,
+        515, 1029, 769, 1549, 515, 1289, 775, 2062, 515, 1035, 769, 1792, 515, 1299, 775, 2689,
+        515, 1029, 769, 1559, 515, 1295, 775, 2320, 515, 1035, 769, 1819, 515, 1538, 775, 3230,
+        515, 1029, 769, 1553, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 3154,
+        515, 1029, 769, 1571, 515, 1295, 775, 2379, 515, 1035, 769, 1831, 515, 1542, 775, 3294,
+        515, 1029, 769, 1549, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2903,
+        515, 1029, 769, 1559, 515, 1295, 775, 2345, 515, 1035, 769, 1825, 515, 1538, 775, 3262,
+        515, 1029, 769, 1553, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3189,
+        515, 1029, 769, 1571, 515, 1295, 775, 2598, 515, 1035, 769, 1859, 515, 1542, 775, 3326,
+        515, 1029, 769, 1549, 515, 1289, 775, 2056, 515, 1035, 769, 1792, 515, 1299, 775, 2605,
+        515, 1029, 769, 1559, 515, 1295, 775, 2119, 515, 1035, 769, 1819, 515, 1538, 775, 3192,
+        515, 1029, 769, 1553, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2915,
+        515, 1029, 769, 1571, 515, 1295, 775, 2351, 515, 1035, 769, 1831, 515, 1542, 775, 3265,
+        515, 1029, 769, 1549, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2693,
+        515, 1029, 769, 1559, 515, 1295, 775, 2326, 515, 1035, 769, 1825, 515, 1538, 775, 3233,
+        515, 1029, 769, 1553, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 3158,
+        515, 1029, 769, 1571, 515, 1295, 775, 2435, 515, 1035, 769, 1859, 515, 1542, 775, 3297,
+        515, 1029, 769, 1549, 515, 1289, 775, 2062, 515, 1035, 769, 1792, 515, 1299, 775, 2633,
+        515, 1029, 769, 1559, 515, 1295, 775, 2316, 515, 1035, 769, 1819, 515, 1538, 775, 3216,
+        515, 1029, 769, 1553, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 3126,
+        515, 1029, 769, 1571, 515, 1295, 775, 2373, 515, 1035, 769, 1831, 515, 1542, 775, 3281,
+        515, 1029, 769, 1549, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2869,
+        515, 1029, 769, 1559, 515, 1295, 775, 2338, 515, 1035, 769, 1825, 515, 1538, 775, 3249,
+        515, 1029, 769, 1553, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3176,
+        515, 1029, 769, 1571, 515, 1295, 775, 2580, 515, 1035, 769, 1859, 515, 1542, 775, 3313,
+        515, 1029, 769, 1549, 515, 1289, 775, 2056, 515, 1035, 769, 1792, 515, 1299, 775, 2615,
+        515, 1029, 769, 1559, 515, 1295, 775, 2119, 515, 1035, 769, 1819, 515, 1538, 775, 3200,
+        515, 1029, 769, 1553, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2963,
+        515, 1029, 769, 1571, 515, 1295, 775, 2355, 515, 1035, 769, 1831, 515, 1542, 775, 3273,
+        515, 1029, 769, 1549, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2840,
+        515, 1029, 769, 1559, 515, 1295, 775, 2333, 515, 1035, 769, 1825, 515, 1538, 775, 3241,
+        515, 1029, 769, 1553, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 3167,
+        515, 1029, 769, 1571, 515, 1295, 775, 2439, 515, 1035, 769, 1859, 515, 1542, 775, 3305,
+        515, 1029, 769, 1549, 515, 1289, 775, 2062, 515, 1035, 769, 1792, 515, 1299, 775, 2643,
+        515, 1029, 769, 1559, 515, 1295, 775, 2320, 515, 1035, 769, 1819, 515, 1538, 775, 3225,
+        515, 1029, 769, 1553, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 3144,
+        515, 1029, 769, 1571, 515, 1295, 775, 2379, 515, 1035, 769, 1831, 515, 1542, 775, 3289,
+        515, 1029, 769, 1549, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2886,
+        515, 1029, 769, 1559, 515, 1295, 775, 2345, 515, 1035, 769, 1825, 515, 1538, 775, 3257,
+        515, 1029, 769, 1553, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3184,
+        515, 1029, 769, 1571, 515, 1295, 775, 2592, 515, 1035, 769, 1859, 515, 1542, 775, 3321,
+        515, 1029, 769, 1549, 515, 1289, 775, 2056, 515, 1035, 769, 1792, 515, 1299, 775, 2609,
+        515, 1029, 769, 1559, 515, 1295, 775, 2119, 515, 1035, 769, 1819, 515, 1538, 775, 3196,
+        515, 1029, 769, 1553, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2953,
+        515, 1029, 769, 1571, 515, 1295, 775, 2351, 515, 1035, 769, 1831, 515, 1542, 775, 3269,
+        515, 1029, 769, 1549, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2699,
+        515, 1029, 769, 1559, 515, 1295, 775, 2326, 515, 1035, 769, 1825, 515, 1538, 775, 3237,
+        515, 1029, 769, 1553, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 3163,
+        515, 1029, 769, 1571, 515, 1295, 775, 2435, 515, 1035, 769, 1859, 515, 1542, 775, 3301,
+        515, 1029, 769, 1549, 515, 1289, 775, 2062, 515, 1035, 769, 1792, 515, 1299, 775, 2639,
+        515, 1029, 769, 1559, 515, 1295, 775, 2316, 515, 1035, 769, 1819, 515, 1538, 775, 3221,
+        515, 1029, 769, 1553, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 3132,
+        515, 1029, 769, 1571, 515, 1295, 775, 2373, 515, 1035, 769, 1831, 515, 1542, 775, 3285,
+        515, 1029, 769, 1549, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2879,
+        515, 1029, 769, 1559, 515, 1295, 775, 2338, 515, 1035, 769, 1825, 515, 1538, 775, 3253,
+        515, 1029, 769, 1553, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3180,
+        515, 1029, 769, 1571, 515, 1295, 775, 2586, 515, 1035, 769, 1859, 515, 1542, 775, 3317,
+        515, 1029, 769, 1549, 515, 1289, 775, 2056, 515, 1035, 769, 1792, 515, 1299, 775, 2626,
+        515, 1029, 769, 1559, 515, 1295, 775, 2119, 515, 1035, 769, 1819, 515, 1538, 775, 3210,
+        515, 1029, 769, 1553, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 3118,
+        515, 1029, 769, 1571, 515, 1295, 775, 2355, 515, 1035, 769, 1831, 515, 1542, 775, 3277,
+        515, 1029, 769, 1549, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2852,
+        515, 1029, 769, 1559, 515, 1295, 775, 2333, 515, 1035, 769, 1825, 515, 1538, 775, 3245,
+        515, 1029, 769, 1553, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 3172,
+        515, 1029, 769, 1571, 515, 1295, 775, 2439, 515, 1035, 769, 1859, 515, 1542, 775, 3309,
+        515, 1029, 769, 1549, 515, 1289, 775, 2062, 515, 1035, 769, 1792, 515, 1299, 775, 2689,
+        515, 1029, 769, 1559, 515, 1295, 775, 2320, 515, 1035, 769, 1819, 515, 1538, 775, 3229,
+        515, 1029, 769, 1553, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 3152,
+        515, 1029, 769, 1571, 515, 1295, 775, 2379, 515, 1035, 769, 1831, 515, 1542, 775, 3293,
+        515, 1029, 769, 1549, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2897,
+        515, 1029, 769, 1559, 515, 1295, 775, 2345, 515, 1035, 769, 1825, 515, 1538, 775, 3261,
+        515, 1029, 769, 1553, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3188,
+        515, 1029, 769, 1571, 515, 1295, 775, 2598, 515, 1035, 769, 1859, 515, 1542, 775, 3325,
+        515, 1029, 769, 1549, 515, 1289, 775, 2056, 515, 1035, 769, 1792, 515, 1299, 775, 2605,
+        515, 1029, 769, 1559, 515, 1295, 775, 2119, 515, 1035, 769, 1819, 515, 1538, 775, 3194,
+        515, 1029, 769, 1553, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2946,
+        515, 1029, 769, 1571, 515, 1295, 775, 2351, 515, 1035, 769, 1831, 515, 1542, 775, 3267,
+        515, 1029, 769, 1549, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2693,
+        515, 1029, 769, 1559, 515, 1295, 775, 2326, 515, 1035, 769, 1825, 515, 1538, 775, 3235,
+        515, 1029, 769, 1553, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 3161,
+        515, 1029, 769, 1571, 515, 1295, 775, 2435, 515, 1035, 769, 1859, 515, 1542, 775, 3299,
+        515, 1029, 769, 1549, 515, 1289, 775, 2062, 515, 1035, 769, 1792, 515, 1299, 775, 2633,
+        515, 1029, 769, 1559, 515, 1295, 775, 2316, 515, 1035, 769, 1819, 515, 1538, 775, 3218,
+        515, 1029, 769, 1553, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 3129,
+        515, 1029, 769, 1571, 515, 1295, 775, 2373, 515, 1035, 769, 1831, 515, 1542, 775, 3283,
+        515, 1029, 769, 1549, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2875,
+        515, 1029, 769, 1559, 515, 1295, 775, 2338, 515, 1035, 769, 1825, 515, 1538, 775, 3251,
+        515, 1029, 769, 1553, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3178,
+        515, 1029, 769, 1571, 515, 1295, 775, 2580, 515, 1035, 769, 1859, 515, 1542, 775, 3315,
+        515, 1029, 769, 1549, 515, 1289, 775, 2056, 515, 1035, 769, 1792, 515, 1299, 775, 2615,
+        515, 1029, 769, 1559, 515, 1295, 775, 2119, 515, 1035, 769, 1819, 515, 1538, 775, 3206,
+        515, 1029, 769, 1553, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 3112,
+        515, 1029, 769, 1571, 515, 1295, 775, 2355, 515, 1035, 769, 1831, 515, 1542, 775, 3275,
+        515, 1029, 769, 1549, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2846,
+        515, 1029, 769, 1559, 515, 1295, 775, 2333, 515, 1035, 769, 1825, 515, 1538, 775, 3243,
+        515, 1029, 769, 1553, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 3169,
+        515, 1029, 769, 1571, 515, 1295, 775, 2439, 515, 1035, 769, 1859, 515, 1542, 775, 3307,
+        515, 1029, 769, 1549, 515, 1289, 775, 2062, 515, 1035, 769, 1792, 515, 1299, 775, 2643,
+        515, 1029, 769, 1559, 515, 1295, 775, 2320, 515, 1035, 769, 1819, 515, 1538, 775, 3227,
+        515, 1029, 769, 1553, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 3148,
+        515, 1029, 769, 1571, 515, 1295, 775, 2379, 515, 1035, 769, 1831, 515, 1542, 775, 3291,
+        515, 1029, 769, 1549, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2893,
+        515, 1029, 769, 1559, 515, 1295, 775, 2345, 515, 1035, 769, 1825, 515, 1538, 775, 3259,
+        515, 1029, 769, 1553, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3186,
+        515, 1029, 769, 1571, 515, 1295, 775, 2592, 515, 1035, 769, 1859, 515, 1542, 775, 3323,
+        515, 1029, 769, 1549, 515, 1289, 775, 2056, 515, 1035, 769, 1792, 515, 1299, 775, 2609,
+        515, 1029, 769, 1559, 515, 1295, 775, 2119, 515, 1035, 769, 1819, 515, 1538, 775, 3198,
+        515, 1029, 769, 1553, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 2959,
+        515, 1029, 769, 1571, 515, 1295, 775, 2351, 515, 1035, 769, 1831, 515, 1542, 775, 3271,
+        515, 1029, 769, 1549, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2699,
+        515, 1029, 769, 1559, 515, 1295, 775, 2326, 515, 1035, 769, 1825, 515, 1538, 775, 3239,
+        515, 1029, 769, 1553, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 3165,
+        515, 1029, 769, 1571, 515, 1295, 775, 2435, 515, 1035, 769, 1859, 515, 1542, 775, 3303,
+        515, 1029, 769, 1549, 515, 1289, 775, 2062, 515, 1035, 769, 1792, 515, 1299, 775, 2639,
+        515, 1029, 769, 1559, 515, 1295, 775, 2316, 515, 1035, 769, 1819, 515, 1538, 775, 3223,
+        515, 1029, 769, 1553, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 3134,
+        515, 1029, 769, 1571, 515, 1295, 775, 2373, 515, 1035, 769, 1831, 515, 1542, 775, 3287,
+        515, 1029, 769, 1549, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2880,
+        515, 1029, 769, 1559, 515, 1295, 775, 2338, 515, 1035, 769, 1825, 515, 1538, 775, 3255,
+        515, 1029, 769, 1553, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3182,
+        515, 1029, 769, 1571, 515, 1295, 775, 2586, 515, 1035, 769, 1859, 515, 1542, 775, 3319,
+        515, 1029, 769, 1549, 515, 1289, 775, 2056, 515, 1035, 769, 1792, 515, 1299, 775, 2626,
+        515, 1029, 769, 1559, 515, 1295, 775, 2119, 515, 1035, 769, 1819, 515, 1538, 775, 3213,
+        515, 1029, 769, 1553, 515, 1289, 775, 2079, 515, 1035, 769, 1802, 515, 1299, 775, 3122,
+        515, 1029, 769, 1571, 515, 1295, 775, 2355, 515, 1035, 769, 1831, 515, 1542, 775, 3279,
+        515, 1029, 769, 1549, 515, 1289, 775, 2066, 515, 1035, 769, 1796, 515, 1299, 775, 2858,
+        515, 1029, 769, 1559, 515, 1295, 775, 2333, 515, 1035, 769, 1825, 515, 1538, 775, 3247,
+        515, 1029, 769, 1553, 515, 1289, 775, 2091, 515, 1035, 769, 1813, 515, 1299, 775, 3174,
+        515, 1029, 769, 1571, 515, 1295, 775, 2439, 515, 1035, 769, 1859, 515, 1542, 775, 3311,
+        515, 1029, 769, 1549, 515, 1289, 775, 2062, 515, 1035, 769, 1792, 515, 1299, 775, 2689,
+        515, 1029, 769, 1559, 515, 1295, 775, 2320, 515, 1035, 769, 1819, 515, 1538, 775, 3231,
+        515, 1029, 769, 1553, 515, 1289, 775, 2085, 515, 1035, 769, 1802, 515, 1299, 775, 3156,
+        515, 1029, 769, 1571, 515, 1295, 775, 2379, 515, 1035, 769, 1831, 515, 1542, 775, 3295,
+        515, 1029, 769, 1549, 515, 1289, 775, 2073, 515, 1035, 769, 1796, 515, 1299, 775, 2903,
+        515, 1029, 769, 1559, 515, 1295, 775, 2345, 515, 1035, 769, 1825, 515, 1538, 775, 3263,
+        515, 1029, 769, 1553, 515, 1289, 775, 2113, 515, 1035, 769, 1813, 515, 1299, 775, 3190,
+        515, 1029, 769, 1571, 515, 1295, 775, 2598, 515, 1035, 769, 1859, 515, 1542, 775, 3327,
+    ],
+    [
+        515, 1035, 775, 1553, 515, 1289, 1025, 2066, 515, 1039, 775, 1802, 515, 1299, 1029, 2598,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2179, 515, 1039, 775, 1825, 515, 1538, 1029, 3190,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2091, 515, 1039, 775, 1819, 515, 1299, 1029, 2901,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2359, 515, 1039, 775, 1859, 515, 1542, 1029, 3264,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2077, 515, 1039, 775, 1813, 515, 1299, 1029, 2693,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2338, 515, 1039, 775, 1831, 515, 1538, 1029, 3232,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2113, 515, 1039, 775, 1823, 515, 1299, 1029, 3152,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2433, 515, 1039, 775, 2056, 515, 1542, 1029, 3296,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1299, 1029, 2633,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2316, 515, 1039, 775, 1825, 515, 1538, 1029, 3212,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1299, 1029, 3120,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2379, 515, 1039, 775, 1859, 515, 1542, 1029, 3280,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1299, 1029, 2848,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2349, 515, 1039, 775, 1831, 515, 1538, 1029, 3248,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1299, 1029, 3173,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2576, 515, 1039, 775, 2062, 515, 1542, 1029, 3312,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2066, 515, 1039, 775, 1802, 515, 1299, 1029, 2613,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2179, 515, 1039, 775, 1825, 515, 1538, 1029, 3198,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2091, 515, 1039, 775, 1819, 515, 1299, 1029, 2957,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2373, 515, 1039, 775, 1859, 515, 1542, 1029, 3272,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2077, 515, 1039, 775, 1813, 515, 1299, 1029, 2703,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2345, 515, 1039, 775, 1831, 515, 1538, 1029, 3240,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2113, 515, 1039, 775, 1823, 515, 1299, 1029, 3164,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2439, 515, 1039, 775, 2056, 515, 1542, 1029, 3304,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1299, 1029, 2643,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2326, 515, 1039, 775, 1825, 515, 1538, 1029, 3224,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1299, 1029, 3133,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2383, 515, 1039, 775, 1859, 515, 1542, 1029, 3288,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1299, 1029, 2875,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2355, 515, 1039, 775, 1831, 515, 1538, 1029, 3256,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1299, 1029, 3182,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2586, 515, 1039, 775, 2062, 515, 1542, 1029, 3320,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2066, 515, 1039, 775, 1802, 515, 1299, 1029, 2609,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2179, 515, 1039, 775, 1825, 515, 1538, 1029, 3194,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2091, 515, 1039, 775, 1819, 515, 1299, 1029, 2919,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2359, 515, 1039, 775, 1859, 515, 1542, 1029, 3268,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2077, 515, 1039, 775, 1813, 515, 1299, 1029, 2699,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2338, 515, 1039, 775, 1831, 515, 1538, 1029, 3236,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2113, 515, 1039, 775, 1823, 515, 1299, 1029, 3160,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2433, 515, 1039, 775, 2056, 515, 1542, 1029, 3300,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1299, 1029, 2637,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2316, 515, 1039, 775, 1825, 515, 1538, 1029, 3218,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1299, 1029, 3128,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2379, 515, 1039, 775, 1859, 515, 1542, 1029, 3284,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1299, 1029, 2858,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2349, 515, 1039, 775, 1831, 515, 1538, 1029, 3252,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1299, 1029, 3178,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2580, 515, 1039, 775, 2062, 515, 1542, 1029, 3316,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2066, 515, 1039, 775, 1802, 515, 1299, 1029, 2626,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2179, 515, 1039, 775, 1825, 515, 1538, 1029, 3204,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2091, 515, 1039, 775, 1819, 515, 1299, 1029, 2967,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2373, 515, 1039, 775, 1859, 515, 1542, 1029, 3276,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2077, 515, 1039, 775, 1813, 515, 1299, 1029, 2840,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2345, 515, 1039, 775, 1831, 515, 1538, 1029, 3244,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2113, 515, 1039, 775, 1823, 515, 1299, 1029, 3168,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2439, 515, 1039, 775, 2056, 515, 1542, 1029, 3308,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1299, 1029, 2647,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2326, 515, 1039, 775, 1825, 515, 1538, 1029, 3228,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1299, 1029, 3144,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2383, 515, 1039, 775, 1859, 515, 1542, 1029, 3292,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1299, 1029, 2886,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2355, 515, 1039, 775, 1831, 515, 1538, 1029, 3260,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1299, 1029, 3186,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2590, 515, 1039, 775, 2062, 515, 1542, 1029, 3324,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2066, 515, 1039, 775, 1802, 515, 1299, 1029, 2598,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2179, 515, 1039, 775, 1825, 515, 1538, 1029, 3192,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2091, 515, 1039, 775, 1819, 515, 1299, 1029, 2915,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2359, 515, 1039, 775, 1859, 515, 1542, 1029, 3266,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2077, 515, 1039, 775, 1813, 515, 1299, 1029, 2693,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2338, 515, 1039, 775, 1831, 515, 1538, 1029, 3234,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2113, 515, 1039, 775, 1823, 515, 1299, 1029, 3156,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2433, 515, 1039, 775, 2056, 515, 1542, 1029, 3298,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1299, 1029, 2633,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2316, 515, 1039, 775, 1825, 515, 1538, 1029, 3216,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1299, 1029, 3124,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2379, 515, 1039, 775, 1859, 515, 1542, 1029, 3282,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1299, 1029, 2852,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2349, 515, 1039, 775, 1831, 515, 1538, 1029, 3250,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1299, 1029, 3176,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2576, 515, 1039, 775, 2062, 515, 1542, 1029, 3314,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2066, 515, 1039, 775, 1802, 515, 1299, 1029, 2613,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2179, 515, 1039, 775, 1825, 515, 1538, 1029, 3200,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2091, 515, 1039, 775, 1819, 515, 1299, 1029, 2963,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2373, 515, 1039, 775, 1859, 515, 1542, 1029, 3274,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2077, 515, 1039, 775, 1813, 515, 1299, 1029, 2703,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2345, 515, 1039, 775, 1831, 515, 1538, 1029, 3242,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2113, 515, 1039, 775, 1823, 515, 1299, 1029, 3166,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2439, 515, 1039, 775, 2056, 515, 1542, 1029, 3306,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1299, 1029, 2643,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2326, 515, 1039, 775, 1825, 515, 1538, 1029, 3226,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1299, 1029, 3136,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2383, 515, 1039, 775, 1859, 515, 1542, 1029, 3290,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1299, 1029, 2879,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2355, 515, 1039, 775, 1831, 515, 1538, 1029, 3258,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1299, 1029, 3184,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2586, 515, 1039, 775, 2062, 515, 1542, 1029, 3322,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2066, 515, 1039, 775, 1802, 515, 1299, 1029, 2609,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2179, 515, 1039, 775, 1825, 515, 1538, 1029, 3196,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2091, 515, 1039, 775, 1819, 515, 1299, 1029, 2953,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2359, 515, 1039, 775, 1859, 515, 1542, 1029, 3270,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2077, 515, 1039, 775, 1813, 515, 1299, 1029, 2699,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2338, 515, 1039, 775, 1831, 515, 1538, 1029, 3238,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2113, 515, 1039, 775, 1823, 515, 1299, 1029, 3162,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2433, 515, 1039, 775, 2056, 515, 1542, 1029, 3302,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1299, 1029, 2637,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2316, 515, 1039, 775, 1825, 515, 1538, 1029, 3221,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1299, 1029, 3130,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2379, 515, 1039, 775, 1859, 515, 1542, 1029, 3286,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1299, 1029, 2862,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2349, 515, 1039, 775, 1831, 515, 1538, 1029, 3254,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1299, 1029, 3180,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2580, 515, 1039, 775, 2062, 515, 1542, 1029, 3318,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2066, 515, 1039, 775, 1802, 515, 1299, 1029, 2626,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2179, 515, 1039, 775, 1825, 515, 1538, 1029, 3208,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2091, 515, 1039, 775, 1819, 515, 1299, 1029, 3112,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2373, 515, 1039, 775, 1859, 515, 1542, 1029, 3278,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2077, 515, 1039, 775, 1813, 515, 1299, 1029, 2844,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2345, 515, 1039, 775, 1831, 515, 1538, 1029, 3246,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2113, 515, 1039, 775, 1823, 515, 1299, 1029, 3170,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2439, 515, 1039, 775, 2056, 515, 1542, 1029, 3310,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1299, 1029, 2647,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2326, 515, 1039, 775, 1825, 515, 1538, 1029, 3230,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1299, 1029, 3148,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2383, 515, 1039, 775, 1859, 515, 1542, 1029, 3294,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1299, 1029, 2897,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2355, 515, 1039, 775, 1831, 515, 1538, 1029, 3262,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1299, 1029, 3188,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2590, 515, 1039, 775, 2062, 515, 1542, 1029, 3326,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2066, 515, 1039, 775, 1802, 515, 1299, 1029, 2598,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2179, 515, 1039, 775, 1825, 515, 1538, 1029, 3191,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2091, 515, 1039, 775, 1819, 515, 1299, 1029, 2901,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2359, 515, 1039, 775, 1859, 515, 1542, 1029, 3265,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2077, 515, 1039, 775, 1813, 515, 1299, 1029, 2693,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2338, 515, 1039, 775, 1831, 515, 1538, 1029, 3233,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2113, 515, 1039, 775, 1823, 515, 1299, 1029, 3154,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2433, 515, 1039, 775, 2056, 515, 1542, 1029, 3297,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1299, 1029, 2633,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2316, 515, 1039, 775, 1825, 515, 1538, 1029, 3214,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1299, 1029, 3122,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2379, 515, 1039, 775, 1859, 515, 1542, 1029, 3281,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1299, 1029, 2848,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2349, 515, 1039, 775, 1831, 515, 1538, 1029, 3249,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1299, 1029, 3174,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2576, 515, 1039, 775, 2062, 515, 1542, 1029, 3313,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2066, 515, 1039, 775, 1802, 515, 1299, 1029, 2613,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2179, 515, 1039, 775, 1825, 515, 1538, 1029, 3199,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2091, 515, 1039, 775, 1819, 515, 1299, 1029, 2957,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2373, 515, 1039, 775, 1859, 515, 1542, 1029, 3273,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2077, 515, 1039, 775, 1813, 515, 1299, 1029, 2703,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2345, 515, 1039, 775, 1831, 515, 1538, 1029, 3241,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2113, 515, 1039, 775, 1823, 515, 1299, 1029, 3165,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2439, 515, 1039, 775, 2056, 515, 1542, 1029, 3305,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1299, 1029, 2643,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2326, 515, 1039, 775, 1825, 515, 1538, 1029, 3225,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1299, 1029, 3134,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2383, 515, 1039, 775, 1859, 515, 1542, 1029, 3289,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1299, 1029, 2875,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2355, 515, 1039, 775, 1831, 515, 1538, 1029, 3257,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1299, 1029, 3183,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2586, 515, 1039, 775, 2062, 515, 1542, 1029, 3321,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2066, 515, 1039, 775, 1802, 515, 1299, 1029, 2609,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2179, 515, 1039, 775, 1825, 515, 1538, 1029, 3195,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2091, 515, 1039, 775, 1819, 515, 1299, 1029, 2919,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2359, 515, 1039, 775, 1859, 515, 1542, 1029, 3269,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2077, 515, 1039, 775, 1813, 515, 1299, 1029, 2699,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2338, 515, 1039, 775, 1831, 515, 1538, 1029, 3237,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2113, 515, 1039, 775, 1823, 515, 1299, 1029, 3161,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2433, 515, 1039, 775, 2056, 515, 1542, 1029, 3301,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1299, 1029, 2637,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2316, 515, 1039, 775, 1825, 515, 1538, 1029, 3220,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1299, 1029, 3129,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2379, 515, 1039, 775, 1859, 515, 1542, 1029, 3285,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1299, 1029, 2858,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2349, 515, 1039, 775, 1831, 515, 1538, 1029, 3253,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1299, 1029, 3179,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2580, 515, 1039, 775, 2062, 515, 1542, 1029, 3317,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2066, 515, 1039, 775, 1802, 515, 1299, 1029, 2626,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2179, 515, 1039, 775, 1825, 515, 1538, 1029, 3206,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2091, 515, 1039, 775, 1819, 515, 1299, 1029, 2967,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2373, 515, 1039, 775, 1859, 515, 1542, 1029, 3277,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2077, 515, 1039, 775, 1813, 515, 1299, 1029, 2840,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2345, 515, 1039, 775, 1831, 515, 1538, 1029, 3245,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2113, 515, 1039, 775, 1823, 515, 1299, 1029, 3169,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2439, 515, 1039, 775, 2056, 515, 1542, 1029, 3309,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1299, 1029, 2647,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2326, 515, 1039, 775, 1825, 515, 1538, 1029, 3229,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1299, 1029, 3146,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2383, 515, 1039, 775, 1859, 515, 1542, 1029, 3293,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1299, 1029, 2886,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2355, 515, 1039, 775, 1831, 515, 1538, 1029, 3261,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1299, 1029, 3187,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2590, 515, 1039, 775, 2062, 515, 1542, 1029, 3325,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2066, 515, 1039, 775, 1802, 515, 1299, 1029, 2598,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2179, 515, 1039, 775, 1825, 515, 1538, 1029, 3193,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2091, 515, 1039, 775, 1819, 515, 1299, 1029, 2915,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2359, 515, 1039, 775, 1859, 515, 1542, 1029, 3267,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2077, 515, 1039, 775, 1813, 515, 1299, 1029, 2693,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2338, 515, 1039, 775, 1831, 515, 1538, 1029, 3235,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2113, 515, 1039, 775, 1823, 515, 1299, 1029, 3158,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2433, 515, 1039, 775, 2056, 515, 1542, 1029, 3299,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1299, 1029, 2633,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2316, 515, 1039, 775, 1825, 515, 1538, 1029, 3217,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1299, 1029, 3126,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2379, 515, 1039, 775, 1859, 515, 1542, 1029, 3283,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1299, 1029, 2852,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2349, 515, 1039, 775, 1831, 515, 1538, 1029, 3251,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1299, 1029, 3177,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2576, 515, 1039, 775, 2062, 515, 1542, 1029, 3315,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2066, 515, 1039, 775, 1802, 515, 1299, 1029, 2613,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2179, 515, 1039, 775, 1825, 515, 1538, 1029, 3202,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2091, 515, 1039, 775, 1819, 515, 1299, 1029, 2963,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2373, 515, 1039, 775, 1859, 515, 1542, 1029, 3275,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2077, 515, 1039, 775, 1813, 515, 1299, 1029, 2703,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2345, 515, 1039, 775, 1831, 515, 1538, 1029, 3243,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2113, 515, 1039, 775, 1823, 515, 1299, 1029, 3167,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2439, 515, 1039, 775, 2056, 515, 1542, 1029, 3307,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1299, 1029, 2643,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2326, 515, 1039, 775, 1825, 515, 1538, 1029, 3227,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1299, 1029, 3140,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2383, 515, 1039, 775, 1859, 515, 1542, 1029, 3291,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1299, 1029, 2879,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2355, 515, 1039, 775, 1831, 515, 1538, 1029, 3259,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1299, 1029, 3185,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2586, 515, 1039, 775, 2062, 515, 1542, 1029, 3323,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2066, 515, 1039, 775, 1802, 515, 1299, 1029, 2609,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2179, 515, 1039, 775, 1825, 515, 1538, 1029, 3197,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2091, 515, 1039, 775, 1819, 515, 1299, 1029, 2953,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2359, 515, 1039, 775, 1859, 515, 1542, 1029, 3271,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2077, 515, 1039, 775, 1813, 515, 1299, 1029, 2699,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2338, 515, 1039, 775, 1831, 515, 1538, 1029, 3239,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2113, 515, 1039, 775, 1823, 515, 1299, 1029, 3163,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2433, 515, 1039, 775, 2056, 515, 1542, 1029, 3303,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1299, 1029, 2637,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2316, 515, 1039, 775, 1825, 515, 1538, 1029, 3222,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1299, 1029, 3132,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2379, 515, 1039, 775, 1859, 515, 1542, 1029, 3287,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1299, 1029, 2862,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2349, 515, 1039, 775, 1831, 515, 1538, 1029, 3255,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1299, 1029, 3181,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2580, 515, 1039, 775, 2062, 515, 1542, 1029, 3319,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2066, 515, 1039, 775, 1802, 515, 1299, 1029, 2626,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2179, 515, 1039, 775, 1825, 515, 1538, 1029, 3210,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2091, 515, 1039, 775, 1819, 515, 1299, 1029, 3116,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2373, 515, 1039, 775, 1859, 515, 1542, 1029, 3279,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2077, 515, 1039, 775, 1813, 515, 1299, 1029, 2844,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2345, 515, 1039, 775, 1831, 515, 1538, 1029, 3247,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2113, 515, 1039, 775, 1823, 515, 1299, 1029, 3172,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2439, 515, 1039, 775, 2056, 515, 1542, 1029, 3311,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1299, 1029, 2647,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2326, 515, 1039, 775, 1825, 515, 1538, 1029, 3231,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1299, 1029, 3150,
+        515, 1035, 775, 1792, 515, 1293, 1025, 2383, 515, 1039, 775, 1859, 515, 1542, 1029, 3295,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1299, 1029, 2897,
+        515, 1035, 775, 1571, 515, 1293, 1025, 2355, 515, 1039, 775, 1831, 515, 1538, 1029, 3263,
+        515, 1035, 775, 1559, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1299, 1029, 3189,
+        515, 1035, 775, 1796, 515, 1293, 1025, 2590, 515, 1039, 775, 2062, 515, 1542, 1029, 3327,
+    ],
+    [
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1303, 1029, 2598,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2183, 515, 1039, 775, 1825, 515, 1538, 1029, 3190,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1303, 1029, 2907,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2355, 515, 1039, 775, 1859, 515, 1542, 1029, 3264,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1303, 1029, 2693,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2326, 515, 1039, 775, 1831, 515, 1538, 1029, 3232,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1303, 1029, 3150,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2383, 515, 1039, 775, 2062, 515, 1542, 1029, 3296,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1802, 515, 1303, 1029, 2633,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2312, 515, 1039, 775, 1825, 515, 1538, 1029, 3212,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2113, 515, 1039, 775, 1819, 515, 1303, 1029, 3116,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2373, 515, 1039, 775, 1859, 515, 1542, 1029, 3280,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2852,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2345, 515, 1039, 775, 1831, 515, 1538, 1029, 3248,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1823, 515, 1303, 1029, 3173,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2576, 515, 1039, 775, 2066, 515, 1542, 1029, 3312,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1303, 1029, 2613,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2183, 515, 1039, 775, 1825, 515, 1538, 1029, 3198,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1303, 1029, 2957,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2359, 515, 1039, 775, 1859, 515, 1542, 1029, 3272,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1303, 1029, 2703,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2338, 515, 1039, 775, 1831, 515, 1538, 1029, 3240,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1303, 1029, 3164,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2433, 515, 1039, 775, 2062, 515, 1542, 1029, 3304,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1802, 515, 1303, 1029, 2643,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2316, 515, 1039, 775, 1825, 515, 1538, 1029, 3224,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2113, 515, 1039, 775, 1819, 515, 1303, 1029, 3132,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2379, 515, 1039, 775, 1859, 515, 1542, 1029, 3288,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2882,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2349, 515, 1039, 775, 1831, 515, 1538, 1029, 3256,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1823, 515, 1303, 1029, 3182,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2586, 515, 1039, 775, 2066, 515, 1542, 1029, 3320,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1303, 1029, 2609,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2183, 515, 1039, 775, 1825, 515, 1538, 1029, 3194,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1303, 1029, 2919,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2355, 515, 1039, 775, 1859, 515, 1542, 1029, 3268,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1303, 1029, 2699,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2326, 515, 1039, 775, 1831, 515, 1538, 1029, 3236,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1303, 1029, 3158,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2383, 515, 1039, 775, 2062, 515, 1542, 1029, 3300,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1802, 515, 1303, 1029, 2637,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2312, 515, 1039, 775, 1825, 515, 1538, 1029, 3218,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2113, 515, 1039, 775, 1819, 515, 1303, 1029, 3126,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2373, 515, 1039, 775, 1859, 515, 1542, 1029, 3284,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2862,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2345, 515, 1039, 775, 1831, 515, 1538, 1029, 3252,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1823, 515, 1303, 1029, 3178,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2580, 515, 1039, 775, 2066, 515, 1542, 1029, 3316,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1303, 1029, 2619,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2183, 515, 1039, 775, 1825, 515, 1538, 1029, 3204,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1303, 1029, 2967,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2359, 515, 1039, 775, 1859, 515, 1542, 1029, 3276,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1303, 1029, 2840,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2338, 515, 1039, 775, 1831, 515, 1538, 1029, 3244,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1303, 1029, 3168,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2433, 515, 1039, 775, 2062, 515, 1542, 1029, 3308,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1802, 515, 1303, 1029, 2647,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2316, 515, 1039, 775, 1825, 515, 1538, 1029, 3228,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2113, 515, 1039, 775, 1819, 515, 1303, 1029, 3140,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2379, 515, 1039, 775, 1859, 515, 1542, 1029, 3292,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2897,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2349, 515, 1039, 775, 1831, 515, 1538, 1029, 3260,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1823, 515, 1303, 1029, 3186,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2590, 515, 1039, 775, 2066, 515, 1542, 1029, 3324,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1303, 1029, 2598,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2183, 515, 1039, 775, 1825, 515, 1538, 1029, 3192,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1303, 1029, 2915,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2355, 515, 1039, 775, 1859, 515, 1542, 1029, 3266,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1303, 1029, 2693,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2326, 515, 1039, 775, 1831, 515, 1538, 1029, 3234,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1303, 1029, 3154,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2383, 515, 1039, 775, 2062, 515, 1542, 1029, 3298,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1802, 515, 1303, 1029, 2633,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2312, 515, 1039, 775, 1825, 515, 1538, 1029, 3216,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2113, 515, 1039, 775, 1819, 515, 1303, 1029, 3122,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2373, 515, 1039, 775, 1859, 515, 1542, 1029, 3282,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2858,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2345, 515, 1039, 775, 1831, 515, 1538, 1029, 3250,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1823, 515, 1303, 1029, 3176,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2576, 515, 1039, 775, 2066, 515, 1542, 1029, 3314,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1303, 1029, 2613,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2183, 515, 1039, 775, 1825, 515, 1538, 1029, 3200,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1303, 1029, 2963,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2359, 515, 1039, 775, 1859, 515, 1542, 1029, 3274,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1303, 1029, 2703,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2338, 515, 1039, 775, 1831, 515, 1538, 1029, 3242,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1303, 1029, 3166,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2433, 515, 1039, 775, 2062, 515, 1542, 1029, 3306,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1802, 515, 1303, 1029, 2643,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2316, 515, 1039, 775, 1825, 515, 1538, 1029, 3226,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2113, 515, 1039, 775, 1819, 515, 1303, 1029, 3134,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2379, 515, 1039, 775, 1859, 515, 1542, 1029, 3290,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2886,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2349, 515, 1039, 775, 1831, 515, 1538, 1029, 3258,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1823, 515, 1303, 1029, 3184,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2586, 515, 1039, 775, 2066, 515, 1542, 1029, 3322,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1303, 1029, 2609,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2183, 515, 1039, 775, 1825, 515, 1538, 1029, 3196,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1303, 1029, 2953,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2355, 515, 1039, 775, 1859, 515, 1542, 1029, 3270,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1303, 1029, 2699,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2326, 515, 1039, 775, 1831, 515, 1538, 1029, 3238,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1303, 1029, 3161,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2383, 515, 1039, 775, 2062, 515, 1542, 1029, 3302,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1802, 515, 1303, 1029, 2637,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2312, 515, 1039, 775, 1825, 515, 1538, 1029, 3221,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2113, 515, 1039, 775, 1819, 515, 1303, 1029, 3129,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2373, 515, 1039, 775, 1859, 515, 1542, 1029, 3286,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2879,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2345, 515, 1039, 775, 1831, 515, 1538, 1029, 3254,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1823, 515, 1303, 1029, 3180,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2580, 515, 1039, 775, 2066, 515, 1542, 1029, 3318,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1303, 1029, 2619,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2183, 515, 1039, 775, 1825, 515, 1538, 1029, 3208,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1303, 1029, 3100,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2359, 515, 1039, 775, 1859, 515, 1542, 1029, 3278,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1303, 1029, 2848,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2338, 515, 1039, 775, 1831, 515, 1538, 1029, 3246,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1303, 1029, 3170,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2433, 515, 1039, 775, 2062, 515, 1542, 1029, 3310,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1802, 515, 1303, 1029, 2647,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2316, 515, 1039, 775, 1825, 515, 1538, 1029, 3230,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2113, 515, 1039, 775, 1819, 515, 1303, 1029, 3146,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2379, 515, 1039, 775, 1859, 515, 1542, 1029, 3294,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2901,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2349, 515, 1039, 775, 1831, 515, 1538, 1029, 3262,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1823, 515, 1303, 1029, 3188,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2590, 515, 1039, 775, 2066, 515, 1542, 1029, 3326,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1303, 1029, 2598,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2183, 515, 1039, 775, 1825, 515, 1538, 1029, 3191,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1303, 1029, 2907,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2355, 515, 1039, 775, 1859, 515, 1542, 1029, 3265,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1303, 1029, 2693,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2326, 515, 1039, 775, 1831, 515, 1538, 1029, 3233,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1303, 1029, 3152,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2383, 515, 1039, 775, 2062, 515, 1542, 1029, 3297,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1802, 515, 1303, 1029, 2633,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2312, 515, 1039, 775, 1825, 515, 1538, 1029, 3214,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2113, 515, 1039, 775, 1819, 515, 1303, 1029, 3120,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2373, 515, 1039, 775, 1859, 515, 1542, 1029, 3281,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2852,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2345, 515, 1039, 775, 1831, 515, 1538, 1029, 3249,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1823, 515, 1303, 1029, 3174,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2576, 515, 1039, 775, 2066, 515, 1542, 1029, 3313,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1303, 1029, 2613,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2183, 515, 1039, 775, 1825, 515, 1538, 1029, 3199,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1303, 1029, 2957,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2359, 515, 1039, 775, 1859, 515, 1542, 1029, 3273,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1303, 1029, 2703,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2338, 515, 1039, 775, 1831, 515, 1538, 1029, 3241,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1303, 1029, 3165,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2433, 515, 1039, 775, 2062, 515, 1542, 1029, 3305,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1802, 515, 1303, 1029, 2643,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2316, 515, 1039, 775, 1825, 515, 1538, 1029, 3225,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2113, 515, 1039, 775, 1819, 515, 1303, 1029, 3133,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2379, 515, 1039, 775, 1859, 515, 1542, 1029, 3289,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2882,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2349, 515, 1039, 775, 1831, 515, 1538, 1029, 3257,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1823, 515, 1303, 1029, 3183,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2586, 515, 1039, 775, 2066, 515, 1542, 1029, 3321,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1303, 1029, 2609,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2183, 515, 1039, 775, 1825, 515, 1538, 1029, 3195,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1303, 1029, 2919,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2355, 515, 1039, 775, 1859, 515, 1542, 1029, 3269,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1303, 1029, 2699,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2326, 515, 1039, 775, 1831, 515, 1538, 1029, 3237,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1303, 1029, 3160,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2383, 515, 1039, 775, 2062, 515, 1542, 1029, 3301,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1802, 515, 1303, 1029, 2637,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2312, 515, 1039, 775, 1825, 515, 1538, 1029, 3220,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2113, 515, 1039, 775, 1819, 515, 1303, 1029, 3128,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2373, 515, 1039, 775, 1859, 515, 1542, 1029, 3285,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2862,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2345, 515, 1039, 775, 1831, 515, 1538, 1029, 3253,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1823, 515, 1303, 1029, 3179,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2580, 515, 1039, 775, 2066, 515, 1542, 1029, 3317,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1303, 1029, 2619,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2183, 515, 1039, 775, 1825, 515, 1538, 1029, 3206,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1303, 1029, 2967,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2359, 515, 1039, 775, 1859, 515, 1542, 1029, 3277,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1303, 1029, 2840,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2338, 515, 1039, 775, 1831, 515, 1538, 1029, 3245,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1303, 1029, 3169,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2433, 515, 1039, 775, 2062, 515, 1542, 1029, 3309,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1802, 515, 1303, 1029, 2647,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2316, 515, 1039, 775, 1825, 515, 1538, 1029, 3229,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2113, 515, 1039, 775, 1819, 515, 1303, 1029, 3144,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2379, 515, 1039, 775, 1859, 515, 1542, 1029, 3293,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2897,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2349, 515, 1039, 775, 1831, 515, 1538, 1029, 3261,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1823, 515, 1303, 1029, 3187,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2590, 515, 1039, 775, 2066, 515, 1542, 1029, 3325,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1303, 1029, 2598,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2183, 515, 1039, 775, 1825, 515, 1538, 1029, 3193,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1303, 1029, 2915,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2355, 515, 1039, 775, 1859, 515, 1542, 1029, 3267,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1303, 1029, 2693,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2326, 515, 1039, 775, 1831, 515, 1538, 1029, 3235,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1303, 1029, 3156,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2383, 515, 1039, 775, 2062, 515, 1542, 1029, 3299,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1802, 515, 1303, 1029, 2633,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2312, 515, 1039, 775, 1825, 515, 1538, 1029, 3217,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2113, 515, 1039, 775, 1819, 515, 1303, 1029, 3124,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2373, 515, 1039, 775, 1859, 515, 1542, 1029, 3283,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2858,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2345, 515, 1039, 775, 1831, 515, 1538, 1029, 3251,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1823, 515, 1303, 1029, 3177,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2576, 515, 1039, 775, 2066, 515, 1542, 1029, 3315,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1303, 1029, 2613,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2183, 515, 1039, 775, 1825, 515, 1538, 1029, 3202,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1303, 1029, 2963,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2359, 515, 1039, 775, 1859, 515, 1542, 1029, 3275,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1303, 1029, 2703,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2338, 515, 1039, 775, 1831, 515, 1538, 1029, 3243,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1303, 1029, 3167,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2433, 515, 1039, 775, 2062, 515, 1542, 1029, 3307,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1802, 515, 1303, 1029, 2643,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2316, 515, 1039, 775, 1825, 515, 1538, 1029, 3227,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2113, 515, 1039, 775, 1819, 515, 1303, 1029, 3136,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2379, 515, 1039, 775, 1859, 515, 1542, 1029, 3291,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2886,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2349, 515, 1039, 775, 1831, 515, 1538, 1029, 3259,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1823, 515, 1303, 1029, 3185,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2586, 515, 1039, 775, 2066, 515, 1542, 1029, 3323,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1303, 1029, 2609,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2183, 515, 1039, 775, 1825, 515, 1538, 1029, 3197,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1303, 1029, 2953,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2355, 515, 1039, 775, 1859, 515, 1542, 1029, 3271,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1303, 1029, 2699,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2326, 515, 1039, 775, 1831, 515, 1538, 1029, 3239,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1303, 1029, 3162,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2383, 515, 1039, 775, 2062, 515, 1542, 1029, 3303,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1802, 515, 1303, 1029, 2637,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2312, 515, 1039, 775, 1825, 515, 1538, 1029, 3222,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2113, 515, 1039, 775, 1819, 515, 1303, 1029, 3130,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2373, 515, 1039, 775, 1859, 515, 1542, 1029, 3287,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2879,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2345, 515, 1039, 775, 1831, 515, 1538, 1029, 3255,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1823, 515, 1303, 1029, 3181,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2580, 515, 1039, 775, 2066, 515, 1542, 1029, 3319,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1802, 515, 1303, 1029, 2619,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2183, 515, 1039, 775, 1825, 515, 1538, 1029, 3210,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1819, 515, 1303, 1029, 3112,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2359, 515, 1039, 775, 1859, 515, 1542, 1029, 3279,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1813, 515, 1303, 1029, 2848,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2338, 515, 1039, 775, 1831, 515, 1538, 1029, 3247,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2119, 515, 1039, 775, 1823, 515, 1303, 1029, 3172,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2433, 515, 1039, 775, 2062, 515, 1542, 1029, 3311,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1802, 515, 1303, 1029, 2647,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2316, 515, 1039, 775, 1825, 515, 1538, 1029, 3231,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2113, 515, 1039, 775, 1819, 515, 1303, 1029, 3148,
+        515, 1035, 775, 1792, 515, 1299, 1025, 2379, 515, 1039, 775, 1859, 515, 1542, 1029, 3295,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2901,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2349, 515, 1039, 775, 1831, 515, 1538, 1029, 3263,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1823, 515, 1303, 1029, 3189,
+        515, 1035, 775, 1796, 515, 1299, 1025, 2590, 515, 1039, 775, 2066, 515, 1542, 1029, 3327,
+    ],
+    [
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1792, 515, 1303, 1029, 2609,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2312, 515, 1039, 775, 1823, 515, 1538, 1029, 3190,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2907,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2369, 515, 1039, 775, 1863, 515, 1542, 1029, 3264,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2081, 515, 1039, 775, 1802, 515, 1303, 1029, 2693,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2345, 515, 1039, 775, 1859, 515, 1538, 1029, 3232,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1819, 515, 1303, 1029, 3148,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2433, 515, 1039, 775, 2052, 515, 1542, 1029, 3296,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1792, 515, 1303, 1029, 2633,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2322, 515, 1039, 775, 1823, 515, 1538, 1029, 3212,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1813, 515, 1303, 1029, 3100,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2379, 515, 1039, 775, 1863, 515, 1542, 1029, 3280,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1802, 515, 1303, 1029, 2852,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2355, 515, 1039, 775, 1859, 515, 1538, 1029, 3248,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2183, 515, 1039, 775, 1819, 515, 1303, 1029, 3173,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2586, 515, 1039, 775, 2062, 515, 1542, 1029, 3312,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1792, 515, 1303, 1029, 2619,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2316, 515, 1039, 775, 1823, 515, 1538, 1029, 3198,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2953,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2373, 515, 1039, 775, 1863, 515, 1542, 1029, 3272,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2081, 515, 1039, 775, 1802, 515, 1303, 1029, 2703,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2349, 515, 1039, 775, 1859, 515, 1538, 1029, 3240,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1819, 515, 1303, 1029, 3162,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2576, 515, 1039, 775, 2052, 515, 1542, 1029, 3304,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1792, 515, 1303, 1029, 2643,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2326, 515, 1039, 775, 1823, 515, 1538, 1029, 3224,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1813, 515, 1303, 1029, 3130,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2383, 515, 1039, 775, 1863, 515, 1542, 1029, 3288,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1802, 515, 1303, 1029, 2882,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2359, 515, 1039, 775, 1859, 515, 1538, 1029, 3256,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2183, 515, 1039, 775, 1819, 515, 1303, 1029, 3182,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2594, 515, 1039, 775, 2062, 515, 1542, 1029, 3320,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1792, 515, 1303, 1029, 2613,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2312, 515, 1039, 775, 1823, 515, 1538, 1029, 3194,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2915,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2369, 515, 1039, 775, 1863, 515, 1542, 1029, 3268,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2081, 515, 1039, 775, 1802, 515, 1303, 1029, 2699,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2345, 515, 1039, 775, 1859, 515, 1538, 1029, 3236,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1819, 515, 1303, 1029, 3156,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2433, 515, 1039, 775, 2052, 515, 1542, 1029, 3300,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1792, 515, 1303, 1029, 2637,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2322, 515, 1039, 775, 1823, 515, 1538, 1029, 3218,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1813, 515, 1303, 1029, 3122,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2379, 515, 1039, 775, 1863, 515, 1542, 1029, 3284,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1802, 515, 1303, 1029, 2862,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2355, 515, 1039, 775, 1859, 515, 1538, 1029, 3252,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2183, 515, 1039, 775, 1819, 515, 1303, 1029, 3178,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2590, 515, 1039, 775, 2062, 515, 1542, 1029, 3316,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1792, 515, 1303, 1029, 2623,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2316, 515, 1039, 775, 1823, 515, 1538, 1029, 3204,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2963,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2373, 515, 1039, 775, 1863, 515, 1542, 1029, 3276,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2081, 515, 1039, 775, 1802, 515, 1303, 1029, 2840,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2349, 515, 1039, 775, 1859, 515, 1538, 1029, 3244,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1819, 515, 1303, 1029, 3168,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2580, 515, 1039, 775, 2052, 515, 1542, 1029, 3308,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1792, 515, 1303, 1029, 2647,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2326, 515, 1039, 775, 1823, 515, 1538, 1029, 3228,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1813, 515, 1303, 1029, 3136,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2383, 515, 1039, 775, 1863, 515, 1542, 1029, 3292,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1802, 515, 1303, 1029, 2897,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2359, 515, 1039, 775, 1859, 515, 1538, 1029, 3260,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2183, 515, 1039, 775, 1819, 515, 1303, 1029, 3186,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2598, 515, 1039, 775, 2062, 515, 1542, 1029, 3324,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1792, 515, 1303, 1029, 2609,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2312, 515, 1039, 775, 1823, 515, 1538, 1029, 3192,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2911,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2369, 515, 1039, 775, 1863, 515, 1542, 1029, 3266,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2081, 515, 1039, 775, 1802, 515, 1303, 1029, 2693,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2345, 515, 1039, 775, 1859, 515, 1538, 1029, 3234,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1819, 515, 1303, 1029, 3152,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2433, 515, 1039, 775, 2052, 515, 1542, 1029, 3298,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1792, 515, 1303, 1029, 2633,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2322, 515, 1039, 775, 1823, 515, 1538, 1029, 3216,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1813, 515, 1303, 1029, 3116,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2379, 515, 1039, 775, 1863, 515, 1542, 1029, 3282,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1802, 515, 1303, 1029, 2858,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2355, 515, 1039, 775, 1859, 515, 1538, 1029, 3250,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2183, 515, 1039, 775, 1819, 515, 1303, 1029, 3176,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2586, 515, 1039, 775, 2062, 515, 1542, 1029, 3314,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1792, 515, 1303, 1029, 2619,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2316, 515, 1039, 775, 1823, 515, 1538, 1029, 3200,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2957,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2373, 515, 1039, 775, 1863, 515, 1542, 1029, 3274,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2081, 515, 1039, 775, 1802, 515, 1303, 1029, 2703,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2349, 515, 1039, 775, 1859, 515, 1538, 1029, 3242,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1819, 515, 1303, 1029, 3165,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2576, 515, 1039, 775, 2052, 515, 1542, 1029, 3306,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1792, 515, 1303, 1029, 2643,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2326, 515, 1039, 775, 1823, 515, 1538, 1029, 3226,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1813, 515, 1303, 1029, 3133,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2383, 515, 1039, 775, 1863, 515, 1542, 1029, 3290,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1802, 515, 1303, 1029, 2886,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2359, 515, 1039, 775, 1859, 515, 1538, 1029, 3258,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2183, 515, 1039, 775, 1819, 515, 1303, 1029, 3184,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2594, 515, 1039, 775, 2062, 515, 1542, 1029, 3322,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1792, 515, 1303, 1029, 2613,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2312, 515, 1039, 775, 1823, 515, 1538, 1029, 3196,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2919,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2369, 515, 1039, 775, 1863, 515, 1542, 1029, 3270,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2081, 515, 1039, 775, 1802, 515, 1303, 1029, 2699,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2345, 515, 1039, 775, 1859, 515, 1538, 1029, 3238,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1819, 515, 1303, 1029, 3160,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2433, 515, 1039, 775, 2052, 515, 1542, 1029, 3302,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1792, 515, 1303, 1029, 2637,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2322, 515, 1039, 775, 1823, 515, 1538, 1029, 3221,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1813, 515, 1303, 1029, 3126,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2379, 515, 1039, 775, 1863, 515, 1542, 1029, 3286,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1802, 515, 1303, 1029, 2873,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2355, 515, 1039, 775, 1859, 515, 1538, 1029, 3254,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2183, 515, 1039, 775, 1819, 515, 1303, 1029, 3180,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2590, 515, 1039, 775, 2062, 515, 1542, 1029, 3318,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1792, 515, 1303, 1029, 2623,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2316, 515, 1039, 775, 1823, 515, 1538, 1029, 3208,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2967,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2373, 515, 1039, 775, 1863, 515, 1542, 1029, 3278,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2081, 515, 1039, 775, 1802, 515, 1303, 1029, 2848,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2349, 515, 1039, 775, 1859, 515, 1538, 1029, 3246,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1819, 515, 1303, 1029, 3170,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2580, 515, 1039, 775, 2052, 515, 1542, 1029, 3310,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1792, 515, 1303, 1029, 2647,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2326, 515, 1039, 775, 1823, 515, 1538, 1029, 3230,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1813, 515, 1303, 1029, 3144,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2383, 515, 1039, 775, 1863, 515, 1542, 1029, 3294,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1802, 515, 1303, 1029, 2901,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2359, 515, 1039, 775, 1859, 515, 1538, 1029, 3262,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2183, 515, 1039, 775, 1819, 515, 1303, 1029, 3188,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2598, 515, 1039, 775, 2062, 515, 1542, 1029, 3326,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1792, 515, 1303, 1029, 2609,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2312, 515, 1039, 775, 1823, 515, 1538, 1029, 3191,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2907,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2369, 515, 1039, 775, 1863, 515, 1542, 1029, 3265,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2081, 515, 1039, 775, 1802, 515, 1303, 1029, 2693,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2345, 515, 1039, 775, 1859, 515, 1538, 1029, 3233,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1819, 515, 1303, 1029, 3150,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2433, 515, 1039, 775, 2052, 515, 1542, 1029, 3297,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1792, 515, 1303, 1029, 2633,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2322, 515, 1039, 775, 1823, 515, 1538, 1029, 3214,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2095, 515, 1039, 775, 1813, 515, 1303, 1029, 3112,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2379, 515, 1039, 775, 1863, 515, 1542, 1029, 3281,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2085, 515, 1039, 775, 1802, 515, 1303, 1029, 2852,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2355, 515, 1039, 775, 1859, 515, 1538, 1029, 3249,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2183, 515, 1039, 775, 1819, 515, 1303, 1029, 3174,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2586, 515, 1039, 775, 2062, 515, 1542, 1029, 3313,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2073, 515, 1039, 775, 1792, 515, 1303, 1029, 2619,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2316, 515, 1039, 775, 1823, 515, 1538, 1029, 3199,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2091, 515, 1039, 775, 1813, 515, 1303, 1029, 2953,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2373, 515, 1039, 775, 1863, 515, 1542, 1029, 3273,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2081, 515, 1039, 775, 1802, 515, 1303, 1029, 2703,
+        515, 1035, 775, 1571, 515, 1299, 1025, 2349, 515, 1039, 775, 1859, 515, 1538, 1029, 3241,
+        515, 1035, 775, 1553, 515, 1289, 1025, 2179, 515, 1039, 775, 1819, 515, 1303, 1029, 3164,
+        515, 1035, 775, 1575, 515, 1299, 1025, 2576, 515, 1039, 775, 2052, 515, 1542, 1029, 3305,
+        515, 1035, 775, 1549, 515, 1289, 1025, 2077, 515, 1039, 775, 1792, 515, 1303, 1029, 2643,
... 3669 lines suppressed ...


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datasketches.apache.org
For additional commands, e-mail: commits-help@datasketches.apache.org