use crate::decoder::ccitt::HuffmanTree;
pub fn black_tree() -> HuffmanTree {
let working_bits = 6;
let max_bits = 13;
let append_bits = 9;
let append: [(i32, i32); 512] = [
(-1, -1),
(-1, -1),
(12, -2),
(12, -2),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(-1, -1),
(11, 1792),
(11, 1792),
(11, 1792),
(11, 1792),
(12, 1984),
(12, 1984),
(12, 2048),
(12, 2048),
(12, 2112),
(12, 2112),
(12, 2176),
(12, 2176),
(12, 2240),
(12, 2240),
(12, 2304),
(12, 2304),
(11, 1856),
(11, 1856),
(11, 1856),
(11, 1856),
(11, 1920),
(11, 1920),
(11, 1920),
(11, 1920),
(12, 2368),
(12, 2368),
(12, 2432),
(12, 2432),
(12, 2496),
(12, 2496),
(12, 2560),
(12, 2560),
(10, 18),
(10, 18),
(10, 18),
(10, 18),
(10, 18),
(10, 18),
(10, 18),
(10, 18),
(12, 52),
(12, 52),
(13, 640),
(13, 704),
(13, 768),
(13, 832),
(12, 55),
(12, 55),
(12, 56),
(12, 56),
(13, 1280),
(13, 1344),
(13, 1408),
(13, 1472),
(12, 59),
(12, 59),
(12, 60),
(12, 60),
(13, 1536),
(13, 1600),
(11, 24),
(11, 24),
(11, 24),
(11, 24),
(11, 25),
(11, 25),
(11, 25),
(11, 25),
(13, 1664),
(13, 1728),
(12, 320),
(12, 320),
(12, 384),
(12, 384),
(12, 448),
(12, 448),
(13, 512),
(13, 576),
(12, 53),
(12, 53),
(12, 54),
(12, 54),
(13, 896),
(13, 960),
(13, 1024),
(13, 1088),
(13, 1152),
(13, 1216),
(10, 64),
(10, 64),
(10, 64),
(10, 64),
(10, 64),
(10, 64),
(10, 64),
(10, 64),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(8, 13),
(11, 23),
(11, 23),
(11, 23),
(11, 23),
(12, 50),
(12, 50),
(12, 51),
(12, 51),
(12, 44),
(12, 44),
(12, 45),
(12, 45),
(12, 46),
(12, 46),
(12, 47),
(12, 47),
(12, 57),
(12, 57),
(12, 58),
(12, 58),
(12, 61),
(12, 61),
(12, 256),
(12, 256),
(10, 16),
(10, 16),
(10, 16),
(10, 16),
(10, 16),
(10, 16),
(10, 16),
(10, 16),
(10, 17),
(10, 17),
(10, 17),
(10, 17),
(10, 17),
(10, 17),
(10, 17),
(10, 17),
(12, 48),
(12, 48),
(12, 49),
(12, 49),
(12, 62),
(12, 62),
(12, 63),
(12, 63),
(12, 30),
(12, 30),
(12, 31),
(12, 31),
(12, 32),
(12, 32),
(12, 33),
(12, 33),
(12, 40),
(12, 40),
(12, 41),
(12, 41),
(11, 22),
(11, 22),
(11, 22),
(11, 22),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(8, 14),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 10),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(7, 11),
(9, 15),
(9, 15),
(9, 15),
(9, 15),
(9, 15),
(9, 15),
(9, 15),
(9, 15),
(9, 15),
(9, 15),
(9, 15),
(9, 15),
(9, 15),
(9, 15),
(9, 15),
(9, 15),
(12, 128),
(12, 128),
(12, 192),
(12, 192),
(12, 26),
(12, 26),
(12, 27),
(12, 27),
(12, 28),
(12, 28),
(12, 29),
(12, 29),
(11, 19),
(11, 19),
(11, 19),
(11, 19),
(11, 20),
(11, 20),
(11, 20),
(11, 20),
(12, 34),
(12, 34),
(12, 35),
(12, 35),
(12, 36),
(12, 36),
(12, 37),
(12, 37),
(12, 38),
(12, 38),
(12, 39),
(12, 39),
(11, 21),
(11, 21),
(11, 21),
(11, 21),
(12, 42),
(12, 42),
(12, 43),
(12, 43),
(10, 0),
(10, 0),
(10, 0),
(10, 0),
(10, 0),
(10, 0),
(10, 0),
(10, 0),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
(7, 12),
];
let matrix: [(i32, i32); 64] = [
(-1, 0b00),
(-1, 0b01),
(-1, 0b10),
(-1, 0b11),
(6, 9),
(6, 8),
(5, 7),
(5, 7),
(4, 6),
(4, 6),
(4, 6),
(4, 6),
(4, 5),
(4, 5),
(4, 5),
(4, 5),
(3, 1),
(3, 1),
(3, 1),
(3, 1),
(3, 1),
(3, 1),
(3, 1),
(3, 1),
(3, 4),
(3, 4),
(3, 4),
(3, 4),
(3, 4),
(3, 4),
(3, 4),
(3, 4),
(2, 3),
(2, 3),
(2, 3),
(2, 3),
(2, 3),
(2, 3),
(2, 3),
(2, 3),
(2, 3),
(2, 3),
(2, 3),
(2, 3),
(2, 3),
(2, 3),
(2, 3),
(2, 3),
(2, 2),
(2, 2),
(2, 2),
(2, 2),
(2, 2),
(2, 2),
(2, 2),
(2, 2),
(2, 2),
(2, 2),
(2, 2),
(2, 2),
(2, 2),
(2, 2),
(2, 2),
(2, 2),
];
HuffmanTree {
working_bits,
max_bits,
append_bits,
matrix: matrix.to_vec(),
append: append.to_vec(),
}
}