pub const MAIN_SIZE: usize = 299;
pub const OFFSET_SIZE: usize = 60;
pub const LOW_OFFSET_SIZE: usize = 17;
pub const LENGTH_SIZE: usize = 28;
pub const HUFF_TABLE_SIZE: usize = MAIN_SIZE + OFFSET_SIZE + LOW_OFFSET_SIZE + LENGTH_SIZE;
pub const PRECODE_SIZE: usize = 20;
pub const LENGTH_BASE: [u16; 28] = [
0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 20, 24, 28, 32, 40, 48, 56, 64, 80, 96, 112, 128,
160, 192, 224,
];
pub const LENGTH_EXTRA_BITS: [u8; 28] = [
0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5,
];
pub const OFFSET_BASE: [u32; 60] = [
0, 1, 2, 3, 4, 6, 8, 12, 16, 24, 32, 48, 64, 96, 128, 192, 256, 384, 512, 768, 1024, 1536,
2048, 3072, 4096, 6144, 8192, 12288, 16384, 24576, 32768, 49152, 65536, 98304, 131072, 196608,
262144, 327680, 393216, 458752, 524288, 589824, 655360, 720896, 786432, 851968, 917504, 983040,
1048576, 1310720, 1572864, 1835008, 2097152, 2359296, 2621440, 2883584, 3145728, 3407872,
3670016, 3932160,
];
pub const OFFSET_EXTRA_BITS: [u8; 60] = [
0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13,
13, 14, 14, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18,
];
pub const SHORT_BASE: [u32; 8] = [0, 4, 8, 16, 32, 64, 128, 192];
pub const SHORT_EXTRA_BITS: [u8; 8] = [2, 2, 3, 4, 5, 6, 6, 6];
pub const DICT_MAX_SIZE: usize = 4 * 1024 * 1024;
pub const DICT_DEFAULT_SIZE: usize = DICT_MAX_SIZE;