use phf::phf_map;
pub const UTF8_SPACE: u8 = 32;
pub const UTF8_STAR: u8 = 42;
pub const UTF8_PLUS: u8 = 43;
pub const UTF8_DASH: u8 = 45;
pub const UTF8_DOT: u8 = 46;
pub const UTF8_PIPE: u8 = 124;
pub const AMINO_SENTINEL: u8 = 255;
pub const UTF8_NUMERIC: [u8; 11] = [48, 49, 50, 51, 52, 53, 54, 55, 56, 57, UTF8_STAR];
pub const AMINO_ALPHABET: [&str; 20] = [
"A", "C", "D", "E", "F", "G", "H", "I", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "V", "W",
"Y",
];
pub const AMINO_ALPHABET_WITH_DEGENERATE: [&str; 29] = [
"A", "C", "D", "E", "F", "G", "H", "I", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "V", "W",
"Y", "-", "B", "J", "Z", "O", "U", "X", "*", "~",
];
pub const UTF8_TO_DIGITAL_AMINO: phf::Map<u8, u8> = phf_map! {
65u8 => 0, 67u8 => 1, 68u8 => 2, 69u8 => 3, 70u8 => 4, 71u8 => 5, 72u8 => 6, 73u8 => 7, 75u8 => 8, 76u8 => 9, 77u8 => 10, 78u8 => 11, 80u8 => 12, 81u8 => 13, 82u8 => 14, 83u8 => 15, 84u8 => 16, 86u8 => 17, 87u8 => 18, 89u8 => 19, 97u8 => 0, 99u8 => 1, 100u8 => 2, 101u8 => 3, 102u8 => 4, 103u8 => 5, 104u8 => 6, 105u8 => 7, 107u8 => 8, 108u8 => 9, 109u8 => 10, 110u8 => 11, 112u8 => 12, 113u8 => 13, 114u8 => 14, 115u8 => 15, 116u8 => 16, 118u8 => 17, 119u8 => 18, 121u8 => 19, 79u8 => 20, 85u8 => 21, 88u8 => 22, 66u8 => 23, 90u8 => 24, 74u8 => 25, 111u8 => 20, 117u8 => 21, 120u8 => 22, 98u8 => 23, 122u8 => 24, 106u8 => 25, };
pub const AMINO_INVERSE_MAP: phf::Map<u8, u8> = phf_map! {
0u8 => 65, 1u8 => 67, 2u8 => 68, 3u8 => 69, 4u8 => 70, 5u8 => 71, 6u8 => 72, 7u8 => 73, 8u8 => 75, 9u8 => 76, 10u8 => 77, 11u8 => 78, 12u8 => 80, 13u8 => 81, 14u8 => 82, 15u8 => 83, 16u8 => 84, 17u8 => 86, 18u8 => 87, 19u8 => 89, 20u8 => 79, 21u8 => 85, 22u8 => 88, 23u8 => 66, 24u8 => 90, 25u8 => 74, 45u8 => 45, 46u8 => 46, 32u8 => 32, 255u8 => 32, };
pub const AMINO_INVERSE_MAP_LOWER: phf::Map<u8, u8> = phf_map! {
0u8 => 97, 1u8 => 99, 2u8 => 100, 3u8 => 101, 4u8 => 102, 5u8 => 103, 6u8 => 104, 7u8 => 105, 8u8 => 107, 9u8 => 108, 10u8 => 109, 11u8 => 110, 12u8 => 112, 13u8 => 113, 14u8 => 114, 15u8 => 115, 16u8 => 116, 17u8 => 118, 18u8 => 119, 19u8 => 121, 111u8 => 79, 117u8 => 85, 120u8 => 88, 98u8 => 66, 122u8 => 90, 106u8 => 74, 45u8 => 45, 46u8 => 46, 32u8 => 32, 255u8 => 32, };
pub const AMINO_BACKGROUND_FREQUENCIES: [f32; 20] = [
0.0787945, 0.0151600, 0.0535222, 0.0668298, 0.0397062, 0.0695071, 0.0229198, 0.0590092, 0.0594422, 0.0963728, 0.0237718, 0.0414386, 0.0482904, 0.0395639, 0.0540978, 0.0683364, 0.0540687, 0.0673417, 0.0114135, 0.0304133, ];