use crate::ast::ASTNode;
pub const GENERAL_CATEGORY_CC: &[(char, char)] = &[('\u{0}', '\u{1f}'), ('\u{7f}', '\u{9f}')];
pub fn alternate_general_category_cc() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_CC.iter().copied()).unwrap()
}
pub fn negate_general_category_cc() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_CC.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_ZS: &[(char, char)] = &[
('\u{20}', '\u{20}'),
('\u{a0}', '\u{a0}'),
('\u{1680}', '\u{1680}'),
('\u{2000}', '\u{200a}'),
('\u{202f}', '\u{202f}'),
('\u{205f}', '\u{205f}'),
('\u{3000}', '\u{3000}'),
];
pub fn alternate_general_category_zs() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_ZS.iter().copied()).unwrap()
}
pub fn negate_general_category_zs() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_ZS.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_PO: &[(char, char)] = &[
('\u{21}', '\u{23}'),
('\u{25}', '\u{27}'),
('\u{2a}', '\u{2a}'),
('\u{2c}', '\u{2c}'),
('\u{2e}', '\u{2f}'),
('\u{3a}', '\u{3b}'),
('\u{3f}', '\u{40}'),
('\u{5c}', '\u{5c}'),
('\u{a1}', '\u{a1}'),
('\u{a7}', '\u{a7}'),
('\u{b6}', '\u{b7}'),
('\u{bf}', '\u{bf}'),
('\u{37e}', '\u{37e}'),
('\u{387}', '\u{387}'),
('\u{55a}', '\u{55f}'),
('\u{589}', '\u{589}'),
('\u{5c0}', '\u{5c0}'),
('\u{5c3}', '\u{5c3}'),
('\u{5c6}', '\u{5c6}'),
('\u{5f3}', '\u{5f4}'),
('\u{609}', '\u{60a}'),
('\u{60c}', '\u{60d}'),
('\u{61b}', '\u{61b}'),
('\u{61d}', '\u{61f}'),
('\u{66a}', '\u{66d}'),
('\u{6d4}', '\u{6d4}'),
('\u{700}', '\u{70d}'),
('\u{7f7}', '\u{7f9}'),
('\u{830}', '\u{83e}'),
('\u{85e}', '\u{85e}'),
('\u{964}', '\u{965}'),
('\u{970}', '\u{970}'),
('\u{9fd}', '\u{9fd}'),
('\u{a76}', '\u{a76}'),
('\u{af0}', '\u{af0}'),
('\u{c77}', '\u{c77}'),
('\u{c84}', '\u{c84}'),
('\u{df4}', '\u{df4}'),
('\u{e4f}', '\u{e4f}'),
('\u{e5a}', '\u{e5b}'),
('\u{f04}', '\u{f12}'),
('\u{f14}', '\u{f14}'),
('\u{f85}', '\u{f85}'),
('\u{fd0}', '\u{fd4}'),
('\u{fd9}', '\u{fda}'),
('\u{104a}', '\u{104f}'),
('\u{10fb}', '\u{10fb}'),
('\u{1360}', '\u{1368}'),
('\u{166e}', '\u{166e}'),
('\u{16eb}', '\u{16ed}'),
('\u{1735}', '\u{1736}'),
('\u{17d4}', '\u{17d6}'),
('\u{17d8}', '\u{17da}'),
('\u{1800}', '\u{1805}'),
('\u{1807}', '\u{180a}'),
('\u{1944}', '\u{1945}'),
('\u{1a1e}', '\u{1a1f}'),
('\u{1aa0}', '\u{1aa6}'),
('\u{1aa8}', '\u{1aad}'),
('\u{1b4e}', '\u{1b4f}'),
('\u{1b5a}', '\u{1b60}'),
('\u{1b7d}', '\u{1b7f}'),
('\u{1bfc}', '\u{1bff}'),
('\u{1c3b}', '\u{1c3f}'),
('\u{1c7e}', '\u{1c7f}'),
('\u{1cc0}', '\u{1cc7}'),
('\u{1cd3}', '\u{1cd3}'),
('\u{2016}', '\u{2017}'),
('\u{2020}', '\u{2027}'),
('\u{2030}', '\u{2038}'),
('\u{203b}', '\u{203e}'),
('\u{2041}', '\u{2043}'),
('\u{2047}', '\u{2051}'),
('\u{2053}', '\u{2053}'),
('\u{2055}', '\u{205e}'),
('\u{2cf9}', '\u{2cfc}'),
('\u{2cfe}', '\u{2cff}'),
('\u{2d70}', '\u{2d70}'),
('\u{2e00}', '\u{2e01}'),
('\u{2e06}', '\u{2e08}'),
('\u{2e0b}', '\u{2e0b}'),
('\u{2e0e}', '\u{2e16}'),
('\u{2e18}', '\u{2e19}'),
('\u{2e1b}', '\u{2e1b}'),
('\u{2e1e}', '\u{2e1f}'),
('\u{2e2a}', '\u{2e2e}'),
('\u{2e30}', '\u{2e39}'),
('\u{2e3c}', '\u{2e3f}'),
('\u{2e41}', '\u{2e41}'),
('\u{2e43}', '\u{2e4f}'),
('\u{2e52}', '\u{2e54}'),
('\u{3001}', '\u{3003}'),
('\u{303d}', '\u{303d}'),
('\u{30fb}', '\u{30fb}'),
('\u{a4fe}', '\u{a4ff}'),
('\u{a60d}', '\u{a60f}'),
('\u{a673}', '\u{a673}'),
('\u{a67e}', '\u{a67e}'),
('\u{a6f2}', '\u{a6f7}'),
('\u{a874}', '\u{a877}'),
('\u{a8ce}', '\u{a8cf}'),
('\u{a8f8}', '\u{a8fa}'),
('\u{a8fc}', '\u{a8fc}'),
('\u{a92e}', '\u{a92f}'),
('\u{a95f}', '\u{a95f}'),
('\u{a9c1}', '\u{a9cd}'),
('\u{a9de}', '\u{a9df}'),
('\u{aa5c}', '\u{aa5f}'),
('\u{aade}', '\u{aadf}'),
('\u{aaf0}', '\u{aaf1}'),
('\u{abeb}', '\u{abeb}'),
('\u{fe10}', '\u{fe16}'),
('\u{fe19}', '\u{fe19}'),
('\u{fe30}', '\u{fe30}'),
('\u{fe45}', '\u{fe46}'),
('\u{fe49}', '\u{fe4c}'),
('\u{fe50}', '\u{fe52}'),
('\u{fe54}', '\u{fe57}'),
('\u{fe5f}', '\u{fe61}'),
('\u{fe68}', '\u{fe68}'),
('\u{fe6a}', '\u{fe6b}'),
('\u{ff01}', '\u{ff03}'),
('\u{ff05}', '\u{ff07}'),
('\u{ff0a}', '\u{ff0a}'),
('\u{ff0c}', '\u{ff0c}'),
('\u{ff0e}', '\u{ff0f}'),
('\u{ff1a}', '\u{ff1b}'),
('\u{ff1f}', '\u{ff20}'),
('\u{ff3c}', '\u{ff3c}'),
('\u{ff61}', '\u{ff61}'),
('\u{ff64}', '\u{ff65}'),
('\u{10100}', '\u{10102}'),
('\u{1039f}', '\u{1039f}'),
('\u{103d0}', '\u{103d0}'),
('\u{1056f}', '\u{1056f}'),
('\u{10857}', '\u{10857}'),
('\u{1091f}', '\u{1091f}'),
('\u{1093f}', '\u{1093f}'),
('\u{10a50}', '\u{10a58}'),
('\u{10a7f}', '\u{10a7f}'),
('\u{10af0}', '\u{10af6}'),
('\u{10b39}', '\u{10b3f}'),
('\u{10b99}', '\u{10b9c}'),
('\u{10f55}', '\u{10f59}'),
('\u{10f86}', '\u{10f89}'),
('\u{11047}', '\u{1104d}'),
('\u{110bb}', '\u{110bc}'),
('\u{110be}', '\u{110c1}'),
('\u{11140}', '\u{11143}'),
('\u{11174}', '\u{11175}'),
('\u{111c5}', '\u{111c8}'),
('\u{111cd}', '\u{111cd}'),
('\u{111db}', '\u{111db}'),
('\u{111dd}', '\u{111df}'),
('\u{11238}', '\u{1123d}'),
('\u{112a9}', '\u{112a9}'),
('\u{113d4}', '\u{113d5}'),
('\u{113d7}', '\u{113d8}'),
('\u{1144b}', '\u{1144f}'),
('\u{1145a}', '\u{1145b}'),
('\u{1145d}', '\u{1145d}'),
('\u{114c6}', '\u{114c6}'),
('\u{115c1}', '\u{115d7}'),
('\u{11641}', '\u{11643}'),
('\u{11660}', '\u{1166c}'),
('\u{116b9}', '\u{116b9}'),
('\u{1173c}', '\u{1173e}'),
('\u{1183b}', '\u{1183b}'),
('\u{11944}', '\u{11946}'),
('\u{119e2}', '\u{119e2}'),
('\u{11a3f}', '\u{11a46}'),
('\u{11a9a}', '\u{11a9c}'),
('\u{11a9e}', '\u{11aa2}'),
('\u{11b00}', '\u{11b09}'),
('\u{11be1}', '\u{11be1}'),
('\u{11c41}', '\u{11c45}'),
('\u{11c70}', '\u{11c71}'),
('\u{11ef7}', '\u{11ef8}'),
('\u{11f43}', '\u{11f4f}'),
('\u{11fff}', '\u{11fff}'),
('\u{12470}', '\u{12474}'),
('\u{12ff1}', '\u{12ff2}'),
('\u{16a6e}', '\u{16a6f}'),
('\u{16af5}', '\u{16af5}'),
('\u{16b37}', '\u{16b3b}'),
('\u{16b44}', '\u{16b44}'),
('\u{16d6d}', '\u{16d6f}'),
('\u{16e97}', '\u{16e9a}'),
('\u{16fe2}', '\u{16fe2}'),
('\u{1bc9f}', '\u{1bc9f}'),
('\u{1da87}', '\u{1da8b}'),
('\u{1e5ff}', '\u{1e5ff}'),
('\u{1e95e}', '\u{1e95f}'),
];
pub fn alternate_general_category_po() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_PO.iter().copied()).unwrap()
}
pub fn negate_general_category_po() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_PO.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_SC: &[(char, char)] = &[
('\u{24}', '\u{24}'),
('\u{a2}', '\u{a5}'),
('\u{58f}', '\u{58f}'),
('\u{60b}', '\u{60b}'),
('\u{7fe}', '\u{7ff}'),
('\u{9f2}', '\u{9f3}'),
('\u{9fb}', '\u{9fb}'),
('\u{af1}', '\u{af1}'),
('\u{bf9}', '\u{bf9}'),
('\u{e3f}', '\u{e3f}'),
('\u{17db}', '\u{17db}'),
('\u{20a0}', '\u{20c0}'),
('\u{a838}', '\u{a838}'),
('\u{fdfc}', '\u{fdfc}'),
('\u{fe69}', '\u{fe69}'),
('\u{ff04}', '\u{ff04}'),
('\u{ffe0}', '\u{ffe1}'),
('\u{ffe5}', '\u{ffe6}'),
('\u{11fdd}', '\u{11fe0}'),
('\u{1e2ff}', '\u{1e2ff}'),
('\u{1ecb0}', '\u{1ecb0}'),
];
pub fn alternate_general_category_sc() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_SC.iter().copied()).unwrap()
}
pub fn negate_general_category_sc() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_SC.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_PS: &[(char, char)] = &[
('\u{28}', '\u{28}'),
('\u{5b}', '\u{5b}'),
('\u{7b}', '\u{7b}'),
('\u{f3a}', '\u{f3a}'),
('\u{f3c}', '\u{f3c}'),
('\u{169b}', '\u{169b}'),
('\u{201a}', '\u{201a}'),
('\u{201e}', '\u{201e}'),
('\u{2045}', '\u{2045}'),
('\u{207d}', '\u{207d}'),
('\u{208d}', '\u{208d}'),
('\u{2308}', '\u{2308}'),
('\u{230a}', '\u{230a}'),
('\u{2329}', '\u{2329}'),
('\u{2768}', '\u{2768}'),
('\u{276a}', '\u{276a}'),
('\u{276c}', '\u{276c}'),
('\u{276e}', '\u{276e}'),
('\u{2770}', '\u{2770}'),
('\u{2772}', '\u{2772}'),
('\u{2774}', '\u{2774}'),
('\u{27c5}', '\u{27c5}'),
('\u{27e6}', '\u{27e6}'),
('\u{27e8}', '\u{27e8}'),
('\u{27ea}', '\u{27ea}'),
('\u{27ec}', '\u{27ec}'),
('\u{27ee}', '\u{27ee}'),
('\u{2983}', '\u{2983}'),
('\u{2985}', '\u{2985}'),
('\u{2987}', '\u{2987}'),
('\u{2989}', '\u{2989}'),
('\u{298b}', '\u{298b}'),
('\u{298d}', '\u{298d}'),
('\u{298f}', '\u{298f}'),
('\u{2991}', '\u{2991}'),
('\u{2993}', '\u{2993}'),
('\u{2995}', '\u{2995}'),
('\u{2997}', '\u{2997}'),
('\u{29d8}', '\u{29d8}'),
('\u{29da}', '\u{29da}'),
('\u{29fc}', '\u{29fc}'),
('\u{2e22}', '\u{2e22}'),
('\u{2e24}', '\u{2e24}'),
('\u{2e26}', '\u{2e26}'),
('\u{2e28}', '\u{2e28}'),
('\u{2e42}', '\u{2e42}'),
('\u{2e55}', '\u{2e55}'),
('\u{2e57}', '\u{2e57}'),
('\u{2e59}', '\u{2e59}'),
('\u{2e5b}', '\u{2e5b}'),
('\u{3008}', '\u{3008}'),
('\u{300a}', '\u{300a}'),
('\u{300c}', '\u{300c}'),
('\u{300e}', '\u{300e}'),
('\u{3010}', '\u{3010}'),
('\u{3014}', '\u{3014}'),
('\u{3016}', '\u{3016}'),
('\u{3018}', '\u{3018}'),
('\u{301a}', '\u{301a}'),
('\u{301d}', '\u{301d}'),
('\u{fd3f}', '\u{fd3f}'),
('\u{fe17}', '\u{fe17}'),
('\u{fe35}', '\u{fe35}'),
('\u{fe37}', '\u{fe37}'),
('\u{fe39}', '\u{fe39}'),
('\u{fe3b}', '\u{fe3b}'),
('\u{fe3d}', '\u{fe3d}'),
('\u{fe3f}', '\u{fe3f}'),
('\u{fe41}', '\u{fe41}'),
('\u{fe43}', '\u{fe43}'),
('\u{fe47}', '\u{fe47}'),
('\u{fe59}', '\u{fe59}'),
('\u{fe5b}', '\u{fe5b}'),
('\u{fe5d}', '\u{fe5d}'),
('\u{ff08}', '\u{ff08}'),
('\u{ff3b}', '\u{ff3b}'),
('\u{ff5b}', '\u{ff5b}'),
('\u{ff5f}', '\u{ff5f}'),
('\u{ff62}', '\u{ff62}'),
];
pub fn alternate_general_category_ps() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_PS.iter().copied()).unwrap()
}
pub fn negate_general_category_ps() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_PS.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_PE: &[(char, char)] = &[
('\u{29}', '\u{29}'),
('\u{5d}', '\u{5d}'),
('\u{7d}', '\u{7d}'),
('\u{f3b}', '\u{f3b}'),
('\u{f3d}', '\u{f3d}'),
('\u{169c}', '\u{169c}'),
('\u{2046}', '\u{2046}'),
('\u{207e}', '\u{207e}'),
('\u{208e}', '\u{208e}'),
('\u{2309}', '\u{2309}'),
('\u{230b}', '\u{230b}'),
('\u{232a}', '\u{232a}'),
('\u{2769}', '\u{2769}'),
('\u{276b}', '\u{276b}'),
('\u{276d}', '\u{276d}'),
('\u{276f}', '\u{276f}'),
('\u{2771}', '\u{2771}'),
('\u{2773}', '\u{2773}'),
('\u{2775}', '\u{2775}'),
('\u{27c6}', '\u{27c6}'),
('\u{27e7}', '\u{27e7}'),
('\u{27e9}', '\u{27e9}'),
('\u{27eb}', '\u{27eb}'),
('\u{27ed}', '\u{27ed}'),
('\u{27ef}', '\u{27ef}'),
('\u{2984}', '\u{2984}'),
('\u{2986}', '\u{2986}'),
('\u{2988}', '\u{2988}'),
('\u{298a}', '\u{298a}'),
('\u{298c}', '\u{298c}'),
('\u{298e}', '\u{298e}'),
('\u{2990}', '\u{2990}'),
('\u{2992}', '\u{2992}'),
('\u{2994}', '\u{2994}'),
('\u{2996}', '\u{2996}'),
('\u{2998}', '\u{2998}'),
('\u{29d9}', '\u{29d9}'),
('\u{29db}', '\u{29db}'),
('\u{29fd}', '\u{29fd}'),
('\u{2e23}', '\u{2e23}'),
('\u{2e25}', '\u{2e25}'),
('\u{2e27}', '\u{2e27}'),
('\u{2e29}', '\u{2e29}'),
('\u{2e56}', '\u{2e56}'),
('\u{2e58}', '\u{2e58}'),
('\u{2e5a}', '\u{2e5a}'),
('\u{2e5c}', '\u{2e5c}'),
('\u{3009}', '\u{3009}'),
('\u{300b}', '\u{300b}'),
('\u{300d}', '\u{300d}'),
('\u{300f}', '\u{300f}'),
('\u{3011}', '\u{3011}'),
('\u{3015}', '\u{3015}'),
('\u{3017}', '\u{3017}'),
('\u{3019}', '\u{3019}'),
('\u{301b}', '\u{301b}'),
('\u{301e}', '\u{301f}'),
('\u{fd3e}', '\u{fd3e}'),
('\u{fe18}', '\u{fe18}'),
('\u{fe36}', '\u{fe36}'),
('\u{fe38}', '\u{fe38}'),
('\u{fe3a}', '\u{fe3a}'),
('\u{fe3c}', '\u{fe3c}'),
('\u{fe3e}', '\u{fe3e}'),
('\u{fe40}', '\u{fe40}'),
('\u{fe42}', '\u{fe42}'),
('\u{fe44}', '\u{fe44}'),
('\u{fe48}', '\u{fe48}'),
('\u{fe5a}', '\u{fe5a}'),
('\u{fe5c}', '\u{fe5c}'),
('\u{fe5e}', '\u{fe5e}'),
('\u{ff09}', '\u{ff09}'),
('\u{ff3d}', '\u{ff3d}'),
('\u{ff5d}', '\u{ff5d}'),
('\u{ff60}', '\u{ff60}'),
('\u{ff63}', '\u{ff63}'),
];
pub fn alternate_general_category_pe() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_PE.iter().copied()).unwrap()
}
pub fn negate_general_category_pe() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_PE.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_SM: &[(char, char)] = &[
('\u{2b}', '\u{2b}'),
('\u{3c}', '\u{3e}'),
('\u{7c}', '\u{7c}'),
('\u{7e}', '\u{7e}'),
('\u{ac}', '\u{ac}'),
('\u{b1}', '\u{b1}'),
('\u{d7}', '\u{d7}'),
('\u{f7}', '\u{f7}'),
('\u{3f6}', '\u{3f6}'),
('\u{606}', '\u{608}'),
('\u{2044}', '\u{2044}'),
('\u{2052}', '\u{2052}'),
('\u{207a}', '\u{207c}'),
('\u{208a}', '\u{208c}'),
('\u{2118}', '\u{2118}'),
('\u{2140}', '\u{2144}'),
('\u{214b}', '\u{214b}'),
('\u{2190}', '\u{2194}'),
('\u{219a}', '\u{219b}'),
('\u{21a0}', '\u{21a0}'),
('\u{21a3}', '\u{21a3}'),
('\u{21a6}', '\u{21a6}'),
('\u{21ae}', '\u{21ae}'),
('\u{21ce}', '\u{21cf}'),
('\u{21d2}', '\u{21d2}'),
('\u{21d4}', '\u{21d4}'),
('\u{21f4}', '\u{22ff}'),
('\u{2320}', '\u{2321}'),
('\u{237c}', '\u{237c}'),
('\u{239b}', '\u{23b3}'),
('\u{23dc}', '\u{23e1}'),
('\u{25b7}', '\u{25b7}'),
('\u{25c1}', '\u{25c1}'),
('\u{25f8}', '\u{25ff}'),
('\u{266f}', '\u{266f}'),
('\u{27c0}', '\u{27c4}'),
('\u{27c7}', '\u{27e5}'),
('\u{27f0}', '\u{27ff}'),
('\u{2900}', '\u{2982}'),
('\u{2999}', '\u{29d7}'),
('\u{29dc}', '\u{29fb}'),
('\u{29fe}', '\u{2aff}'),
('\u{2b30}', '\u{2b44}'),
('\u{2b47}', '\u{2b4c}'),
('\u{fb29}', '\u{fb29}'),
('\u{fe62}', '\u{fe62}'),
('\u{fe64}', '\u{fe66}'),
('\u{ff0b}', '\u{ff0b}'),
('\u{ff1c}', '\u{ff1e}'),
('\u{ff5c}', '\u{ff5c}'),
('\u{ff5e}', '\u{ff5e}'),
('\u{ffe2}', '\u{ffe2}'),
('\u{ffe9}', '\u{ffec}'),
('\u{10d8e}', '\u{10d8f}'),
('\u{1d6c1}', '\u{1d6c1}'),
('\u{1d6db}', '\u{1d6db}'),
('\u{1d6fb}', '\u{1d6fb}'),
('\u{1d715}', '\u{1d715}'),
('\u{1d735}', '\u{1d735}'),
('\u{1d74f}', '\u{1d74f}'),
('\u{1d76f}', '\u{1d76f}'),
('\u{1d789}', '\u{1d789}'),
('\u{1d7a9}', '\u{1d7a9}'),
('\u{1d7c3}', '\u{1d7c3}'),
('\u{1eef0}', '\u{1eef1}'),
];
pub fn alternate_general_category_sm() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_SM.iter().copied()).unwrap()
}
pub fn negate_general_category_sm() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_SM.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_PD: &[(char, char)] = &[
('\u{2d}', '\u{2d}'),
('\u{58a}', '\u{58a}'),
('\u{5be}', '\u{5be}'),
('\u{1400}', '\u{1400}'),
('\u{1806}', '\u{1806}'),
('\u{2010}', '\u{2015}'),
('\u{2e17}', '\u{2e17}'),
('\u{2e1a}', '\u{2e1a}'),
('\u{2e3a}', '\u{2e3b}'),
('\u{2e40}', '\u{2e40}'),
('\u{2e5d}', '\u{2e5d}'),
('\u{301c}', '\u{301c}'),
('\u{3030}', '\u{3030}'),
('\u{30a0}', '\u{30a0}'),
('\u{fe31}', '\u{fe32}'),
('\u{fe58}', '\u{fe58}'),
('\u{fe63}', '\u{fe63}'),
('\u{ff0d}', '\u{ff0d}'),
('\u{10d6e}', '\u{10d6e}'),
('\u{10ead}', '\u{10ead}'),
];
pub fn alternate_general_category_pd() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_PD.iter().copied()).unwrap()
}
pub fn negate_general_category_pd() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_PD.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_ND: &[(char, char)] = &[
('\u{30}', '\u{39}'),
('\u{660}', '\u{669}'),
('\u{6f0}', '\u{6f9}'),
('\u{7c0}', '\u{7c9}'),
('\u{966}', '\u{96f}'),
('\u{9e6}', '\u{9ef}'),
('\u{a66}', '\u{a6f}'),
('\u{ae6}', '\u{aef}'),
('\u{b66}', '\u{b6f}'),
('\u{be6}', '\u{bef}'),
('\u{c66}', '\u{c6f}'),
('\u{ce6}', '\u{cef}'),
('\u{d66}', '\u{d6f}'),
('\u{de6}', '\u{def}'),
('\u{e50}', '\u{e59}'),
('\u{ed0}', '\u{ed9}'),
('\u{f20}', '\u{f29}'),
('\u{1040}', '\u{1049}'),
('\u{1090}', '\u{1099}'),
('\u{17e0}', '\u{17e9}'),
('\u{1810}', '\u{1819}'),
('\u{1946}', '\u{194f}'),
('\u{19d0}', '\u{19d9}'),
('\u{1a80}', '\u{1a89}'),
('\u{1a90}', '\u{1a99}'),
('\u{1b50}', '\u{1b59}'),
('\u{1bb0}', '\u{1bb9}'),
('\u{1c40}', '\u{1c49}'),
('\u{1c50}', '\u{1c59}'),
('\u{a620}', '\u{a629}'),
('\u{a8d0}', '\u{a8d9}'),
('\u{a900}', '\u{a909}'),
('\u{a9d0}', '\u{a9d9}'),
('\u{a9f0}', '\u{a9f9}'),
('\u{aa50}', '\u{aa59}'),
('\u{abf0}', '\u{abf9}'),
('\u{ff10}', '\u{ff19}'),
('\u{104a0}', '\u{104a9}'),
('\u{10d30}', '\u{10d39}'),
('\u{10d40}', '\u{10d49}'),
('\u{11066}', '\u{1106f}'),
('\u{110f0}', '\u{110f9}'),
('\u{11136}', '\u{1113f}'),
('\u{111d0}', '\u{111d9}'),
('\u{112f0}', '\u{112f9}'),
('\u{11450}', '\u{11459}'),
('\u{114d0}', '\u{114d9}'),
('\u{11650}', '\u{11659}'),
('\u{116c0}', '\u{116c9}'),
('\u{116d0}', '\u{116e3}'),
('\u{11730}', '\u{11739}'),
('\u{118e0}', '\u{118e9}'),
('\u{11950}', '\u{11959}'),
('\u{11bf0}', '\u{11bf9}'),
('\u{11c50}', '\u{11c59}'),
('\u{11d50}', '\u{11d59}'),
('\u{11da0}', '\u{11da9}'),
('\u{11f50}', '\u{11f59}'),
('\u{16130}', '\u{16139}'),
('\u{16a60}', '\u{16a69}'),
('\u{16ac0}', '\u{16ac9}'),
('\u{16b50}', '\u{16b59}'),
('\u{16d70}', '\u{16d79}'),
('\u{1ccf0}', '\u{1ccf9}'),
('\u{1d7ce}', '\u{1d7ff}'),
('\u{1e140}', '\u{1e149}'),
('\u{1e2f0}', '\u{1e2f9}'),
('\u{1e4f0}', '\u{1e4f9}'),
('\u{1e5f1}', '\u{1e5fa}'),
('\u{1e950}', '\u{1e959}'),
('\u{1fbf0}', '\u{1fbf9}'),
];
pub fn alternate_general_category_nd() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_ND.iter().copied()).unwrap()
}
pub fn negate_general_category_nd() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_ND.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_LU: &[(char, char)] = &[
('\u{41}', '\u{5a}'),
('\u{c0}', '\u{d6}'),
('\u{d8}', '\u{de}'),
('\u{100}', '\u{100}'),
('\u{102}', '\u{102}'),
('\u{104}', '\u{104}'),
('\u{106}', '\u{106}'),
('\u{108}', '\u{108}'),
('\u{10a}', '\u{10a}'),
('\u{10c}', '\u{10c}'),
('\u{10e}', '\u{10e}'),
('\u{110}', '\u{110}'),
('\u{112}', '\u{112}'),
('\u{114}', '\u{114}'),
('\u{116}', '\u{116}'),
('\u{118}', '\u{118}'),
('\u{11a}', '\u{11a}'),
('\u{11c}', '\u{11c}'),
('\u{11e}', '\u{11e}'),
('\u{120}', '\u{120}'),
('\u{122}', '\u{122}'),
('\u{124}', '\u{124}'),
('\u{126}', '\u{126}'),
('\u{128}', '\u{128}'),
('\u{12a}', '\u{12a}'),
('\u{12c}', '\u{12c}'),
('\u{12e}', '\u{12e}'),
('\u{130}', '\u{130}'),
('\u{132}', '\u{132}'),
('\u{134}', '\u{134}'),
('\u{136}', '\u{136}'),
('\u{139}', '\u{139}'),
('\u{13b}', '\u{13b}'),
('\u{13d}', '\u{13d}'),
('\u{13f}', '\u{13f}'),
('\u{141}', '\u{141}'),
('\u{143}', '\u{143}'),
('\u{145}', '\u{145}'),
('\u{147}', '\u{147}'),
('\u{14a}', '\u{14a}'),
('\u{14c}', '\u{14c}'),
('\u{14e}', '\u{14e}'),
('\u{150}', '\u{150}'),
('\u{152}', '\u{152}'),
('\u{154}', '\u{154}'),
('\u{156}', '\u{156}'),
('\u{158}', '\u{158}'),
('\u{15a}', '\u{15a}'),
('\u{15c}', '\u{15c}'),
('\u{15e}', '\u{15e}'),
('\u{160}', '\u{160}'),
('\u{162}', '\u{162}'),
('\u{164}', '\u{164}'),
('\u{166}', '\u{166}'),
('\u{168}', '\u{168}'),
('\u{16a}', '\u{16a}'),
('\u{16c}', '\u{16c}'),
('\u{16e}', '\u{16e}'),
('\u{170}', '\u{170}'),
('\u{172}', '\u{172}'),
('\u{174}', '\u{174}'),
('\u{176}', '\u{176}'),
('\u{178}', '\u{179}'),
('\u{17b}', '\u{17b}'),
('\u{17d}', '\u{17d}'),
('\u{181}', '\u{182}'),
('\u{184}', '\u{184}'),
('\u{186}', '\u{187}'),
('\u{189}', '\u{18b}'),
('\u{18e}', '\u{191}'),
('\u{193}', '\u{194}'),
('\u{196}', '\u{198}'),
('\u{19c}', '\u{19d}'),
('\u{19f}', '\u{1a0}'),
('\u{1a2}', '\u{1a2}'),
('\u{1a4}', '\u{1a4}'),
('\u{1a6}', '\u{1a7}'),
('\u{1a9}', '\u{1a9}'),
('\u{1ac}', '\u{1ac}'),
('\u{1ae}', '\u{1af}'),
('\u{1b1}', '\u{1b3}'),
('\u{1b5}', '\u{1b5}'),
('\u{1b7}', '\u{1b8}'),
('\u{1bc}', '\u{1bc}'),
('\u{1c4}', '\u{1c4}'),
('\u{1c7}', '\u{1c7}'),
('\u{1ca}', '\u{1ca}'),
('\u{1cd}', '\u{1cd}'),
('\u{1cf}', '\u{1cf}'),
('\u{1d1}', '\u{1d1}'),
('\u{1d3}', '\u{1d3}'),
('\u{1d5}', '\u{1d5}'),
('\u{1d7}', '\u{1d7}'),
('\u{1d9}', '\u{1d9}'),
('\u{1db}', '\u{1db}'),
('\u{1de}', '\u{1de}'),
('\u{1e0}', '\u{1e0}'),
('\u{1e2}', '\u{1e2}'),
('\u{1e4}', '\u{1e4}'),
('\u{1e6}', '\u{1e6}'),
('\u{1e8}', '\u{1e8}'),
('\u{1ea}', '\u{1ea}'),
('\u{1ec}', '\u{1ec}'),
('\u{1ee}', '\u{1ee}'),
('\u{1f1}', '\u{1f1}'),
('\u{1f4}', '\u{1f4}'),
('\u{1f6}', '\u{1f8}'),
('\u{1fa}', '\u{1fa}'),
('\u{1fc}', '\u{1fc}'),
('\u{1fe}', '\u{1fe}'),
('\u{200}', '\u{200}'),
('\u{202}', '\u{202}'),
('\u{204}', '\u{204}'),
('\u{206}', '\u{206}'),
('\u{208}', '\u{208}'),
('\u{20a}', '\u{20a}'),
('\u{20c}', '\u{20c}'),
('\u{20e}', '\u{20e}'),
('\u{210}', '\u{210}'),
('\u{212}', '\u{212}'),
('\u{214}', '\u{214}'),
('\u{216}', '\u{216}'),
('\u{218}', '\u{218}'),
('\u{21a}', '\u{21a}'),
('\u{21c}', '\u{21c}'),
('\u{21e}', '\u{21e}'),
('\u{220}', '\u{220}'),
('\u{222}', '\u{222}'),
('\u{224}', '\u{224}'),
('\u{226}', '\u{226}'),
('\u{228}', '\u{228}'),
('\u{22a}', '\u{22a}'),
('\u{22c}', '\u{22c}'),
('\u{22e}', '\u{22e}'),
('\u{230}', '\u{230}'),
('\u{232}', '\u{232}'),
('\u{23a}', '\u{23b}'),
('\u{23d}', '\u{23e}'),
('\u{241}', '\u{241}'),
('\u{243}', '\u{246}'),
('\u{248}', '\u{248}'),
('\u{24a}', '\u{24a}'),
('\u{24c}', '\u{24c}'),
('\u{24e}', '\u{24e}'),
('\u{370}', '\u{370}'),
('\u{372}', '\u{372}'),
('\u{376}', '\u{376}'),
('\u{37f}', '\u{37f}'),
('\u{386}', '\u{386}'),
('\u{388}', '\u{38a}'),
('\u{38c}', '\u{38c}'),
('\u{38e}', '\u{38f}'),
('\u{391}', '\u{3a1}'),
('\u{3a3}', '\u{3ab}'),
('\u{3cf}', '\u{3cf}'),
('\u{3d2}', '\u{3d4}'),
('\u{3d8}', '\u{3d8}'),
('\u{3da}', '\u{3da}'),
('\u{3dc}', '\u{3dc}'),
('\u{3de}', '\u{3de}'),
('\u{3e0}', '\u{3e0}'),
('\u{3e2}', '\u{3e2}'),
('\u{3e4}', '\u{3e4}'),
('\u{3e6}', '\u{3e6}'),
('\u{3e8}', '\u{3e8}'),
('\u{3ea}', '\u{3ea}'),
('\u{3ec}', '\u{3ec}'),
('\u{3ee}', '\u{3ee}'),
('\u{3f4}', '\u{3f4}'),
('\u{3f7}', '\u{3f7}'),
('\u{3f9}', '\u{3fa}'),
('\u{3fd}', '\u{42f}'),
('\u{460}', '\u{460}'),
('\u{462}', '\u{462}'),
('\u{464}', '\u{464}'),
('\u{466}', '\u{466}'),
('\u{468}', '\u{468}'),
('\u{46a}', '\u{46a}'),
('\u{46c}', '\u{46c}'),
('\u{46e}', '\u{46e}'),
('\u{470}', '\u{470}'),
('\u{472}', '\u{472}'),
('\u{474}', '\u{474}'),
('\u{476}', '\u{476}'),
('\u{478}', '\u{478}'),
('\u{47a}', '\u{47a}'),
('\u{47c}', '\u{47c}'),
('\u{47e}', '\u{47e}'),
('\u{480}', '\u{480}'),
('\u{48a}', '\u{48a}'),
('\u{48c}', '\u{48c}'),
('\u{48e}', '\u{48e}'),
('\u{490}', '\u{490}'),
('\u{492}', '\u{492}'),
('\u{494}', '\u{494}'),
('\u{496}', '\u{496}'),
('\u{498}', '\u{498}'),
('\u{49a}', '\u{49a}'),
('\u{49c}', '\u{49c}'),
('\u{49e}', '\u{49e}'),
('\u{4a0}', '\u{4a0}'),
('\u{4a2}', '\u{4a2}'),
('\u{4a4}', '\u{4a4}'),
('\u{4a6}', '\u{4a6}'),
('\u{4a8}', '\u{4a8}'),
('\u{4aa}', '\u{4aa}'),
('\u{4ac}', '\u{4ac}'),
('\u{4ae}', '\u{4ae}'),
('\u{4b0}', '\u{4b0}'),
('\u{4b2}', '\u{4b2}'),
('\u{4b4}', '\u{4b4}'),
('\u{4b6}', '\u{4b6}'),
('\u{4b8}', '\u{4b8}'),
('\u{4ba}', '\u{4ba}'),
('\u{4bc}', '\u{4bc}'),
('\u{4be}', '\u{4be}'),
('\u{4c0}', '\u{4c1}'),
('\u{4c3}', '\u{4c3}'),
('\u{4c5}', '\u{4c5}'),
('\u{4c7}', '\u{4c7}'),
('\u{4c9}', '\u{4c9}'),
('\u{4cb}', '\u{4cb}'),
('\u{4cd}', '\u{4cd}'),
('\u{4d0}', '\u{4d0}'),
('\u{4d2}', '\u{4d2}'),
('\u{4d4}', '\u{4d4}'),
('\u{4d6}', '\u{4d6}'),
('\u{4d8}', '\u{4d8}'),
('\u{4da}', '\u{4da}'),
('\u{4dc}', '\u{4dc}'),
('\u{4de}', '\u{4de}'),
('\u{4e0}', '\u{4e0}'),
('\u{4e2}', '\u{4e2}'),
('\u{4e4}', '\u{4e4}'),
('\u{4e6}', '\u{4e6}'),
('\u{4e8}', '\u{4e8}'),
('\u{4ea}', '\u{4ea}'),
('\u{4ec}', '\u{4ec}'),
('\u{4ee}', '\u{4ee}'),
('\u{4f0}', '\u{4f0}'),
('\u{4f2}', '\u{4f2}'),
('\u{4f4}', '\u{4f4}'),
('\u{4f6}', '\u{4f6}'),
('\u{4f8}', '\u{4f8}'),
('\u{4fa}', '\u{4fa}'),
('\u{4fc}', '\u{4fc}'),
('\u{4fe}', '\u{4fe}'),
('\u{500}', '\u{500}'),
('\u{502}', '\u{502}'),
('\u{504}', '\u{504}'),
('\u{506}', '\u{506}'),
('\u{508}', '\u{508}'),
('\u{50a}', '\u{50a}'),
('\u{50c}', '\u{50c}'),
('\u{50e}', '\u{50e}'),
('\u{510}', '\u{510}'),
('\u{512}', '\u{512}'),
('\u{514}', '\u{514}'),
('\u{516}', '\u{516}'),
('\u{518}', '\u{518}'),
('\u{51a}', '\u{51a}'),
('\u{51c}', '\u{51c}'),
('\u{51e}', '\u{51e}'),
('\u{520}', '\u{520}'),
('\u{522}', '\u{522}'),
('\u{524}', '\u{524}'),
('\u{526}', '\u{526}'),
('\u{528}', '\u{528}'),
('\u{52a}', '\u{52a}'),
('\u{52c}', '\u{52c}'),
('\u{52e}', '\u{52e}'),
('\u{531}', '\u{556}'),
('\u{10a0}', '\u{10c5}'),
('\u{10c7}', '\u{10c7}'),
('\u{10cd}', '\u{10cd}'),
('\u{13a0}', '\u{13f5}'),
('\u{1c89}', '\u{1c89}'),
('\u{1c90}', '\u{1cba}'),
('\u{1cbd}', '\u{1cbf}'),
('\u{1e00}', '\u{1e00}'),
('\u{1e02}', '\u{1e02}'),
('\u{1e04}', '\u{1e04}'),
('\u{1e06}', '\u{1e06}'),
('\u{1e08}', '\u{1e08}'),
('\u{1e0a}', '\u{1e0a}'),
('\u{1e0c}', '\u{1e0c}'),
('\u{1e0e}', '\u{1e0e}'),
('\u{1e10}', '\u{1e10}'),
('\u{1e12}', '\u{1e12}'),
('\u{1e14}', '\u{1e14}'),
('\u{1e16}', '\u{1e16}'),
('\u{1e18}', '\u{1e18}'),
('\u{1e1a}', '\u{1e1a}'),
('\u{1e1c}', '\u{1e1c}'),
('\u{1e1e}', '\u{1e1e}'),
('\u{1e20}', '\u{1e20}'),
('\u{1e22}', '\u{1e22}'),
('\u{1e24}', '\u{1e24}'),
('\u{1e26}', '\u{1e26}'),
('\u{1e28}', '\u{1e28}'),
('\u{1e2a}', '\u{1e2a}'),
('\u{1e2c}', '\u{1e2c}'),
('\u{1e2e}', '\u{1e2e}'),
('\u{1e30}', '\u{1e30}'),
('\u{1e32}', '\u{1e32}'),
('\u{1e34}', '\u{1e34}'),
('\u{1e36}', '\u{1e36}'),
('\u{1e38}', '\u{1e38}'),
('\u{1e3a}', '\u{1e3a}'),
('\u{1e3c}', '\u{1e3c}'),
('\u{1e3e}', '\u{1e3e}'),
('\u{1e40}', '\u{1e40}'),
('\u{1e42}', '\u{1e42}'),
('\u{1e44}', '\u{1e44}'),
('\u{1e46}', '\u{1e46}'),
('\u{1e48}', '\u{1e48}'),
('\u{1e4a}', '\u{1e4a}'),
('\u{1e4c}', '\u{1e4c}'),
('\u{1e4e}', '\u{1e4e}'),
('\u{1e50}', '\u{1e50}'),
('\u{1e52}', '\u{1e52}'),
('\u{1e54}', '\u{1e54}'),
('\u{1e56}', '\u{1e56}'),
('\u{1e58}', '\u{1e58}'),
('\u{1e5a}', '\u{1e5a}'),
('\u{1e5c}', '\u{1e5c}'),
('\u{1e5e}', '\u{1e5e}'),
('\u{1e60}', '\u{1e60}'),
('\u{1e62}', '\u{1e62}'),
('\u{1e64}', '\u{1e64}'),
('\u{1e66}', '\u{1e66}'),
('\u{1e68}', '\u{1e68}'),
('\u{1e6a}', '\u{1e6a}'),
('\u{1e6c}', '\u{1e6c}'),
('\u{1e6e}', '\u{1e6e}'),
('\u{1e70}', '\u{1e70}'),
('\u{1e72}', '\u{1e72}'),
('\u{1e74}', '\u{1e74}'),
('\u{1e76}', '\u{1e76}'),
('\u{1e78}', '\u{1e78}'),
('\u{1e7a}', '\u{1e7a}'),
('\u{1e7c}', '\u{1e7c}'),
('\u{1e7e}', '\u{1e7e}'),
('\u{1e80}', '\u{1e80}'),
('\u{1e82}', '\u{1e82}'),
('\u{1e84}', '\u{1e84}'),
('\u{1e86}', '\u{1e86}'),
('\u{1e88}', '\u{1e88}'),
('\u{1e8a}', '\u{1e8a}'),
('\u{1e8c}', '\u{1e8c}'),
('\u{1e8e}', '\u{1e8e}'),
('\u{1e90}', '\u{1e90}'),
('\u{1e92}', '\u{1e92}'),
('\u{1e94}', '\u{1e94}'),
('\u{1e9e}', '\u{1e9e}'),
('\u{1ea0}', '\u{1ea0}'),
('\u{1ea2}', '\u{1ea2}'),
('\u{1ea4}', '\u{1ea4}'),
('\u{1ea6}', '\u{1ea6}'),
('\u{1ea8}', '\u{1ea8}'),
('\u{1eaa}', '\u{1eaa}'),
('\u{1eac}', '\u{1eac}'),
('\u{1eae}', '\u{1eae}'),
('\u{1eb0}', '\u{1eb0}'),
('\u{1eb2}', '\u{1eb2}'),
('\u{1eb4}', '\u{1eb4}'),
('\u{1eb6}', '\u{1eb6}'),
('\u{1eb8}', '\u{1eb8}'),
('\u{1eba}', '\u{1eba}'),
('\u{1ebc}', '\u{1ebc}'),
('\u{1ebe}', '\u{1ebe}'),
('\u{1ec0}', '\u{1ec0}'),
('\u{1ec2}', '\u{1ec2}'),
('\u{1ec4}', '\u{1ec4}'),
('\u{1ec6}', '\u{1ec6}'),
('\u{1ec8}', '\u{1ec8}'),
('\u{1eca}', '\u{1eca}'),
('\u{1ecc}', '\u{1ecc}'),
('\u{1ece}', '\u{1ece}'),
('\u{1ed0}', '\u{1ed0}'),
('\u{1ed2}', '\u{1ed2}'),
('\u{1ed4}', '\u{1ed4}'),
('\u{1ed6}', '\u{1ed6}'),
('\u{1ed8}', '\u{1ed8}'),
('\u{1eda}', '\u{1eda}'),
('\u{1edc}', '\u{1edc}'),
('\u{1ede}', '\u{1ede}'),
('\u{1ee0}', '\u{1ee0}'),
('\u{1ee2}', '\u{1ee2}'),
('\u{1ee4}', '\u{1ee4}'),
('\u{1ee6}', '\u{1ee6}'),
('\u{1ee8}', '\u{1ee8}'),
('\u{1eea}', '\u{1eea}'),
('\u{1eec}', '\u{1eec}'),
('\u{1eee}', '\u{1eee}'),
('\u{1ef0}', '\u{1ef0}'),
('\u{1ef2}', '\u{1ef2}'),
('\u{1ef4}', '\u{1ef4}'),
('\u{1ef6}', '\u{1ef6}'),
('\u{1ef8}', '\u{1ef8}'),
('\u{1efa}', '\u{1efa}'),
('\u{1efc}', '\u{1efc}'),
('\u{1efe}', '\u{1efe}'),
('\u{1f08}', '\u{1f0f}'),
('\u{1f18}', '\u{1f1d}'),
('\u{1f28}', '\u{1f2f}'),
('\u{1f38}', '\u{1f3f}'),
('\u{1f48}', '\u{1f4d}'),
('\u{1f59}', '\u{1f59}'),
('\u{1f5b}', '\u{1f5b}'),
('\u{1f5d}', '\u{1f5d}'),
('\u{1f5f}', '\u{1f5f}'),
('\u{1f68}', '\u{1f6f}'),
('\u{1fb8}', '\u{1fbb}'),
('\u{1fc8}', '\u{1fcb}'),
('\u{1fd8}', '\u{1fdb}'),
('\u{1fe8}', '\u{1fec}'),
('\u{1ff8}', '\u{1ffb}'),
('\u{2102}', '\u{2102}'),
('\u{2107}', '\u{2107}'),
('\u{210b}', '\u{210d}'),
('\u{2110}', '\u{2112}'),
('\u{2115}', '\u{2115}'),
('\u{2119}', '\u{211d}'),
('\u{2124}', '\u{2124}'),
('\u{2126}', '\u{2126}'),
('\u{2128}', '\u{2128}'),
('\u{212a}', '\u{212d}'),
('\u{2130}', '\u{2133}'),
('\u{213e}', '\u{213f}'),
('\u{2145}', '\u{2145}'),
('\u{2183}', '\u{2183}'),
('\u{2c00}', '\u{2c2f}'),
('\u{2c60}', '\u{2c60}'),
('\u{2c62}', '\u{2c64}'),
('\u{2c67}', '\u{2c67}'),
('\u{2c69}', '\u{2c69}'),
('\u{2c6b}', '\u{2c6b}'),
('\u{2c6d}', '\u{2c70}'),
('\u{2c72}', '\u{2c72}'),
('\u{2c75}', '\u{2c75}'),
('\u{2c7e}', '\u{2c80}'),
('\u{2c82}', '\u{2c82}'),
('\u{2c84}', '\u{2c84}'),
('\u{2c86}', '\u{2c86}'),
('\u{2c88}', '\u{2c88}'),
('\u{2c8a}', '\u{2c8a}'),
('\u{2c8c}', '\u{2c8c}'),
('\u{2c8e}', '\u{2c8e}'),
('\u{2c90}', '\u{2c90}'),
('\u{2c92}', '\u{2c92}'),
('\u{2c94}', '\u{2c94}'),
('\u{2c96}', '\u{2c96}'),
('\u{2c98}', '\u{2c98}'),
('\u{2c9a}', '\u{2c9a}'),
('\u{2c9c}', '\u{2c9c}'),
('\u{2c9e}', '\u{2c9e}'),
('\u{2ca0}', '\u{2ca0}'),
('\u{2ca2}', '\u{2ca2}'),
('\u{2ca4}', '\u{2ca4}'),
('\u{2ca6}', '\u{2ca6}'),
('\u{2ca8}', '\u{2ca8}'),
('\u{2caa}', '\u{2caa}'),
('\u{2cac}', '\u{2cac}'),
('\u{2cae}', '\u{2cae}'),
('\u{2cb0}', '\u{2cb0}'),
('\u{2cb2}', '\u{2cb2}'),
('\u{2cb4}', '\u{2cb4}'),
('\u{2cb6}', '\u{2cb6}'),
('\u{2cb8}', '\u{2cb8}'),
('\u{2cba}', '\u{2cba}'),
('\u{2cbc}', '\u{2cbc}'),
('\u{2cbe}', '\u{2cbe}'),
('\u{2cc0}', '\u{2cc0}'),
('\u{2cc2}', '\u{2cc2}'),
('\u{2cc4}', '\u{2cc4}'),
('\u{2cc6}', '\u{2cc6}'),
('\u{2cc8}', '\u{2cc8}'),
('\u{2cca}', '\u{2cca}'),
('\u{2ccc}', '\u{2ccc}'),
('\u{2cce}', '\u{2cce}'),
('\u{2cd0}', '\u{2cd0}'),
('\u{2cd2}', '\u{2cd2}'),
('\u{2cd4}', '\u{2cd4}'),
('\u{2cd6}', '\u{2cd6}'),
('\u{2cd8}', '\u{2cd8}'),
('\u{2cda}', '\u{2cda}'),
('\u{2cdc}', '\u{2cdc}'),
('\u{2cde}', '\u{2cde}'),
('\u{2ce0}', '\u{2ce0}'),
('\u{2ce2}', '\u{2ce2}'),
('\u{2ceb}', '\u{2ceb}'),
('\u{2ced}', '\u{2ced}'),
('\u{2cf2}', '\u{2cf2}'),
('\u{a640}', '\u{a640}'),
('\u{a642}', '\u{a642}'),
('\u{a644}', '\u{a644}'),
('\u{a646}', '\u{a646}'),
('\u{a648}', '\u{a648}'),
('\u{a64a}', '\u{a64a}'),
('\u{a64c}', '\u{a64c}'),
('\u{a64e}', '\u{a64e}'),
('\u{a650}', '\u{a650}'),
('\u{a652}', '\u{a652}'),
('\u{a654}', '\u{a654}'),
('\u{a656}', '\u{a656}'),
('\u{a658}', '\u{a658}'),
('\u{a65a}', '\u{a65a}'),
('\u{a65c}', '\u{a65c}'),
('\u{a65e}', '\u{a65e}'),
('\u{a660}', '\u{a660}'),
('\u{a662}', '\u{a662}'),
('\u{a664}', '\u{a664}'),
('\u{a666}', '\u{a666}'),
('\u{a668}', '\u{a668}'),
('\u{a66a}', '\u{a66a}'),
('\u{a66c}', '\u{a66c}'),
('\u{a680}', '\u{a680}'),
('\u{a682}', '\u{a682}'),
('\u{a684}', '\u{a684}'),
('\u{a686}', '\u{a686}'),
('\u{a688}', '\u{a688}'),
('\u{a68a}', '\u{a68a}'),
('\u{a68c}', '\u{a68c}'),
('\u{a68e}', '\u{a68e}'),
('\u{a690}', '\u{a690}'),
('\u{a692}', '\u{a692}'),
('\u{a694}', '\u{a694}'),
('\u{a696}', '\u{a696}'),
('\u{a698}', '\u{a698}'),
('\u{a69a}', '\u{a69a}'),
('\u{a722}', '\u{a722}'),
('\u{a724}', '\u{a724}'),
('\u{a726}', '\u{a726}'),
('\u{a728}', '\u{a728}'),
('\u{a72a}', '\u{a72a}'),
('\u{a72c}', '\u{a72c}'),
('\u{a72e}', '\u{a72e}'),
('\u{a732}', '\u{a732}'),
('\u{a734}', '\u{a734}'),
('\u{a736}', '\u{a736}'),
('\u{a738}', '\u{a738}'),
('\u{a73a}', '\u{a73a}'),
('\u{a73c}', '\u{a73c}'),
('\u{a73e}', '\u{a73e}'),
('\u{a740}', '\u{a740}'),
('\u{a742}', '\u{a742}'),
('\u{a744}', '\u{a744}'),
('\u{a746}', '\u{a746}'),
('\u{a748}', '\u{a748}'),
('\u{a74a}', '\u{a74a}'),
('\u{a74c}', '\u{a74c}'),
('\u{a74e}', '\u{a74e}'),
('\u{a750}', '\u{a750}'),
('\u{a752}', '\u{a752}'),
('\u{a754}', '\u{a754}'),
('\u{a756}', '\u{a756}'),
('\u{a758}', '\u{a758}'),
('\u{a75a}', '\u{a75a}'),
('\u{a75c}', '\u{a75c}'),
('\u{a75e}', '\u{a75e}'),
('\u{a760}', '\u{a760}'),
('\u{a762}', '\u{a762}'),
('\u{a764}', '\u{a764}'),
('\u{a766}', '\u{a766}'),
('\u{a768}', '\u{a768}'),
('\u{a76a}', '\u{a76a}'),
('\u{a76c}', '\u{a76c}'),
('\u{a76e}', '\u{a76e}'),
('\u{a779}', '\u{a779}'),
('\u{a77b}', '\u{a77b}'),
('\u{a77d}', '\u{a77e}'),
('\u{a780}', '\u{a780}'),
('\u{a782}', '\u{a782}'),
('\u{a784}', '\u{a784}'),
('\u{a786}', '\u{a786}'),
('\u{a78b}', '\u{a78b}'),
('\u{a78d}', '\u{a78d}'),
('\u{a790}', '\u{a790}'),
('\u{a792}', '\u{a792}'),
('\u{a796}', '\u{a796}'),
('\u{a798}', '\u{a798}'),
('\u{a79a}', '\u{a79a}'),
('\u{a79c}', '\u{a79c}'),
('\u{a79e}', '\u{a79e}'),
('\u{a7a0}', '\u{a7a0}'),
('\u{a7a2}', '\u{a7a2}'),
('\u{a7a4}', '\u{a7a4}'),
('\u{a7a6}', '\u{a7a6}'),
('\u{a7a8}', '\u{a7a8}'),
('\u{a7aa}', '\u{a7ae}'),
('\u{a7b0}', '\u{a7b4}'),
('\u{a7b6}', '\u{a7b6}'),
('\u{a7b8}', '\u{a7b8}'),
('\u{a7ba}', '\u{a7ba}'),
('\u{a7bc}', '\u{a7bc}'),
('\u{a7be}', '\u{a7be}'),
('\u{a7c0}', '\u{a7c0}'),
('\u{a7c2}', '\u{a7c2}'),
('\u{a7c4}', '\u{a7c7}'),
('\u{a7c9}', '\u{a7c9}'),
('\u{a7cb}', '\u{a7cc}'),
('\u{a7d0}', '\u{a7d0}'),
('\u{a7d6}', '\u{a7d6}'),
('\u{a7d8}', '\u{a7d8}'),
('\u{a7da}', '\u{a7da}'),
('\u{a7dc}', '\u{a7dc}'),
('\u{a7f5}', '\u{a7f5}'),
('\u{ff21}', '\u{ff3a}'),
('\u{10400}', '\u{10427}'),
('\u{104b0}', '\u{104d3}'),
('\u{10570}', '\u{1057a}'),
('\u{1057c}', '\u{1058a}'),
('\u{1058c}', '\u{10592}'),
('\u{10594}', '\u{10595}'),
('\u{10c80}', '\u{10cb2}'),
('\u{10d50}', '\u{10d65}'),
('\u{118a0}', '\u{118bf}'),
('\u{16e40}', '\u{16e5f}'),
('\u{1d400}', '\u{1d419}'),
('\u{1d434}', '\u{1d44d}'),
('\u{1d468}', '\u{1d481}'),
('\u{1d49c}', '\u{1d49c}'),
('\u{1d49e}', '\u{1d49f}'),
('\u{1d4a2}', '\u{1d4a2}'),
('\u{1d4a5}', '\u{1d4a6}'),
('\u{1d4a9}', '\u{1d4ac}'),
('\u{1d4ae}', '\u{1d4b5}'),
('\u{1d4d0}', '\u{1d4e9}'),
('\u{1d504}', '\u{1d505}'),
('\u{1d507}', '\u{1d50a}'),
('\u{1d50d}', '\u{1d514}'),
('\u{1d516}', '\u{1d51c}'),
('\u{1d538}', '\u{1d539}'),
('\u{1d53b}', '\u{1d53e}'),
('\u{1d540}', '\u{1d544}'),
('\u{1d546}', '\u{1d546}'),
('\u{1d54a}', '\u{1d550}'),
('\u{1d56c}', '\u{1d585}'),
('\u{1d5a0}', '\u{1d5b9}'),
('\u{1d5d4}', '\u{1d5ed}'),
('\u{1d608}', '\u{1d621}'),
('\u{1d63c}', '\u{1d655}'),
('\u{1d670}', '\u{1d689}'),
('\u{1d6a8}', '\u{1d6c0}'),
('\u{1d6e2}', '\u{1d6fa}'),
('\u{1d71c}', '\u{1d734}'),
('\u{1d756}', '\u{1d76e}'),
('\u{1d790}', '\u{1d7a8}'),
('\u{1d7ca}', '\u{1d7ca}'),
('\u{1e900}', '\u{1e921}'),
];
pub fn alternate_general_category_lu() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_LU.iter().copied()).unwrap()
}
pub fn negate_general_category_lu() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_LU.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_SK: &[(char, char)] = &[
('\u{5e}', '\u{5e}'),
('\u{60}', '\u{60}'),
('\u{a8}', '\u{a8}'),
('\u{af}', '\u{af}'),
('\u{b4}', '\u{b4}'),
('\u{b8}', '\u{b8}'),
('\u{2c2}', '\u{2c5}'),
('\u{2d2}', '\u{2df}'),
('\u{2e5}', '\u{2eb}'),
('\u{2ed}', '\u{2ed}'),
('\u{2ef}', '\u{2ff}'),
('\u{375}', '\u{375}'),
('\u{384}', '\u{385}'),
('\u{888}', '\u{888}'),
('\u{1fbd}', '\u{1fbd}'),
('\u{1fbf}', '\u{1fc1}'),
('\u{1fcd}', '\u{1fcf}'),
('\u{1fdd}', '\u{1fdf}'),
('\u{1fed}', '\u{1fef}'),
('\u{1ffd}', '\u{1ffe}'),
('\u{309b}', '\u{309c}'),
('\u{a700}', '\u{a716}'),
('\u{a720}', '\u{a721}'),
('\u{a789}', '\u{a78a}'),
('\u{ab5b}', '\u{ab5b}'),
('\u{ab6a}', '\u{ab6b}'),
('\u{fbb2}', '\u{fbc2}'),
('\u{ff3e}', '\u{ff3e}'),
('\u{ff40}', '\u{ff40}'),
('\u{ffe3}', '\u{ffe3}'),
('\u{1f3fb}', '\u{1f3ff}'),
];
pub fn alternate_general_category_sk() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_SK.iter().copied()).unwrap()
}
pub fn negate_general_category_sk() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_SK.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_PC: &[(char, char)] = &[
('\u{5f}', '\u{5f}'),
('\u{203f}', '\u{2040}'),
('\u{2054}', '\u{2054}'),
('\u{fe33}', '\u{fe34}'),
('\u{fe4d}', '\u{fe4f}'),
('\u{ff3f}', '\u{ff3f}'),
];
pub fn alternate_general_category_pc() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_PC.iter().copied()).unwrap()
}
pub fn negate_general_category_pc() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_PC.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_LL: &[(char, char)] = &[
('\u{61}', '\u{7a}'),
('\u{b5}', '\u{b5}'),
('\u{df}', '\u{f6}'),
('\u{f8}', '\u{ff}'),
('\u{101}', '\u{101}'),
('\u{103}', '\u{103}'),
('\u{105}', '\u{105}'),
('\u{107}', '\u{107}'),
('\u{109}', '\u{109}'),
('\u{10b}', '\u{10b}'),
('\u{10d}', '\u{10d}'),
('\u{10f}', '\u{10f}'),
('\u{111}', '\u{111}'),
('\u{113}', '\u{113}'),
('\u{115}', '\u{115}'),
('\u{117}', '\u{117}'),
('\u{119}', '\u{119}'),
('\u{11b}', '\u{11b}'),
('\u{11d}', '\u{11d}'),
('\u{11f}', '\u{11f}'),
('\u{121}', '\u{121}'),
('\u{123}', '\u{123}'),
('\u{125}', '\u{125}'),
('\u{127}', '\u{127}'),
('\u{129}', '\u{129}'),
('\u{12b}', '\u{12b}'),
('\u{12d}', '\u{12d}'),
('\u{12f}', '\u{12f}'),
('\u{131}', '\u{131}'),
('\u{133}', '\u{133}'),
('\u{135}', '\u{135}'),
('\u{137}', '\u{138}'),
('\u{13a}', '\u{13a}'),
('\u{13c}', '\u{13c}'),
('\u{13e}', '\u{13e}'),
('\u{140}', '\u{140}'),
('\u{142}', '\u{142}'),
('\u{144}', '\u{144}'),
('\u{146}', '\u{146}'),
('\u{148}', '\u{149}'),
('\u{14b}', '\u{14b}'),
('\u{14d}', '\u{14d}'),
('\u{14f}', '\u{14f}'),
('\u{151}', '\u{151}'),
('\u{153}', '\u{153}'),
('\u{155}', '\u{155}'),
('\u{157}', '\u{157}'),
('\u{159}', '\u{159}'),
('\u{15b}', '\u{15b}'),
('\u{15d}', '\u{15d}'),
('\u{15f}', '\u{15f}'),
('\u{161}', '\u{161}'),
('\u{163}', '\u{163}'),
('\u{165}', '\u{165}'),
('\u{167}', '\u{167}'),
('\u{169}', '\u{169}'),
('\u{16b}', '\u{16b}'),
('\u{16d}', '\u{16d}'),
('\u{16f}', '\u{16f}'),
('\u{171}', '\u{171}'),
('\u{173}', '\u{173}'),
('\u{175}', '\u{175}'),
('\u{177}', '\u{177}'),
('\u{17a}', '\u{17a}'),
('\u{17c}', '\u{17c}'),
('\u{17e}', '\u{180}'),
('\u{183}', '\u{183}'),
('\u{185}', '\u{185}'),
('\u{188}', '\u{188}'),
('\u{18c}', '\u{18d}'),
('\u{192}', '\u{192}'),
('\u{195}', '\u{195}'),
('\u{199}', '\u{19b}'),
('\u{19e}', '\u{19e}'),
('\u{1a1}', '\u{1a1}'),
('\u{1a3}', '\u{1a3}'),
('\u{1a5}', '\u{1a5}'),
('\u{1a8}', '\u{1a8}'),
('\u{1aa}', '\u{1ab}'),
('\u{1ad}', '\u{1ad}'),
('\u{1b0}', '\u{1b0}'),
('\u{1b4}', '\u{1b4}'),
('\u{1b6}', '\u{1b6}'),
('\u{1b9}', '\u{1ba}'),
('\u{1bd}', '\u{1bf}'),
('\u{1c6}', '\u{1c6}'),
('\u{1c9}', '\u{1c9}'),
('\u{1cc}', '\u{1cc}'),
('\u{1ce}', '\u{1ce}'),
('\u{1d0}', '\u{1d0}'),
('\u{1d2}', '\u{1d2}'),
('\u{1d4}', '\u{1d4}'),
('\u{1d6}', '\u{1d6}'),
('\u{1d8}', '\u{1d8}'),
('\u{1da}', '\u{1da}'),
('\u{1dc}', '\u{1dd}'),
('\u{1df}', '\u{1df}'),
('\u{1e1}', '\u{1e1}'),
('\u{1e3}', '\u{1e3}'),
('\u{1e5}', '\u{1e5}'),
('\u{1e7}', '\u{1e7}'),
('\u{1e9}', '\u{1e9}'),
('\u{1eb}', '\u{1eb}'),
('\u{1ed}', '\u{1ed}'),
('\u{1ef}', '\u{1f0}'),
('\u{1f3}', '\u{1f3}'),
('\u{1f5}', '\u{1f5}'),
('\u{1f9}', '\u{1f9}'),
('\u{1fb}', '\u{1fb}'),
('\u{1fd}', '\u{1fd}'),
('\u{1ff}', '\u{1ff}'),
('\u{201}', '\u{201}'),
('\u{203}', '\u{203}'),
('\u{205}', '\u{205}'),
('\u{207}', '\u{207}'),
('\u{209}', '\u{209}'),
('\u{20b}', '\u{20b}'),
('\u{20d}', '\u{20d}'),
('\u{20f}', '\u{20f}'),
('\u{211}', '\u{211}'),
('\u{213}', '\u{213}'),
('\u{215}', '\u{215}'),
('\u{217}', '\u{217}'),
('\u{219}', '\u{219}'),
('\u{21b}', '\u{21b}'),
('\u{21d}', '\u{21d}'),
('\u{21f}', '\u{21f}'),
('\u{221}', '\u{221}'),
('\u{223}', '\u{223}'),
('\u{225}', '\u{225}'),
('\u{227}', '\u{227}'),
('\u{229}', '\u{229}'),
('\u{22b}', '\u{22b}'),
('\u{22d}', '\u{22d}'),
('\u{22f}', '\u{22f}'),
('\u{231}', '\u{231}'),
('\u{233}', '\u{239}'),
('\u{23c}', '\u{23c}'),
('\u{23f}', '\u{240}'),
('\u{242}', '\u{242}'),
('\u{247}', '\u{247}'),
('\u{249}', '\u{249}'),
('\u{24b}', '\u{24b}'),
('\u{24d}', '\u{24d}'),
('\u{24f}', '\u{293}'),
('\u{295}', '\u{2af}'),
('\u{371}', '\u{371}'),
('\u{373}', '\u{373}'),
('\u{377}', '\u{377}'),
('\u{37b}', '\u{37d}'),
('\u{390}', '\u{390}'),
('\u{3ac}', '\u{3ce}'),
('\u{3d0}', '\u{3d1}'),
('\u{3d5}', '\u{3d7}'),
('\u{3d9}', '\u{3d9}'),
('\u{3db}', '\u{3db}'),
('\u{3dd}', '\u{3dd}'),
('\u{3df}', '\u{3df}'),
('\u{3e1}', '\u{3e1}'),
('\u{3e3}', '\u{3e3}'),
('\u{3e5}', '\u{3e5}'),
('\u{3e7}', '\u{3e7}'),
('\u{3e9}', '\u{3e9}'),
('\u{3eb}', '\u{3eb}'),
('\u{3ed}', '\u{3ed}'),
('\u{3ef}', '\u{3f3}'),
('\u{3f5}', '\u{3f5}'),
('\u{3f8}', '\u{3f8}'),
('\u{3fb}', '\u{3fc}'),
('\u{430}', '\u{45f}'),
('\u{461}', '\u{461}'),
('\u{463}', '\u{463}'),
('\u{465}', '\u{465}'),
('\u{467}', '\u{467}'),
('\u{469}', '\u{469}'),
('\u{46b}', '\u{46b}'),
('\u{46d}', '\u{46d}'),
('\u{46f}', '\u{46f}'),
('\u{471}', '\u{471}'),
('\u{473}', '\u{473}'),
('\u{475}', '\u{475}'),
('\u{477}', '\u{477}'),
('\u{479}', '\u{479}'),
('\u{47b}', '\u{47b}'),
('\u{47d}', '\u{47d}'),
('\u{47f}', '\u{47f}'),
('\u{481}', '\u{481}'),
('\u{48b}', '\u{48b}'),
('\u{48d}', '\u{48d}'),
('\u{48f}', '\u{48f}'),
('\u{491}', '\u{491}'),
('\u{493}', '\u{493}'),
('\u{495}', '\u{495}'),
('\u{497}', '\u{497}'),
('\u{499}', '\u{499}'),
('\u{49b}', '\u{49b}'),
('\u{49d}', '\u{49d}'),
('\u{49f}', '\u{49f}'),
('\u{4a1}', '\u{4a1}'),
('\u{4a3}', '\u{4a3}'),
('\u{4a5}', '\u{4a5}'),
('\u{4a7}', '\u{4a7}'),
('\u{4a9}', '\u{4a9}'),
('\u{4ab}', '\u{4ab}'),
('\u{4ad}', '\u{4ad}'),
('\u{4af}', '\u{4af}'),
('\u{4b1}', '\u{4b1}'),
('\u{4b3}', '\u{4b3}'),
('\u{4b5}', '\u{4b5}'),
('\u{4b7}', '\u{4b7}'),
('\u{4b9}', '\u{4b9}'),
('\u{4bb}', '\u{4bb}'),
('\u{4bd}', '\u{4bd}'),
('\u{4bf}', '\u{4bf}'),
('\u{4c2}', '\u{4c2}'),
('\u{4c4}', '\u{4c4}'),
('\u{4c6}', '\u{4c6}'),
('\u{4c8}', '\u{4c8}'),
('\u{4ca}', '\u{4ca}'),
('\u{4cc}', '\u{4cc}'),
('\u{4ce}', '\u{4cf}'),
('\u{4d1}', '\u{4d1}'),
('\u{4d3}', '\u{4d3}'),
('\u{4d5}', '\u{4d5}'),
('\u{4d7}', '\u{4d7}'),
('\u{4d9}', '\u{4d9}'),
('\u{4db}', '\u{4db}'),
('\u{4dd}', '\u{4dd}'),
('\u{4df}', '\u{4df}'),
('\u{4e1}', '\u{4e1}'),
('\u{4e3}', '\u{4e3}'),
('\u{4e5}', '\u{4e5}'),
('\u{4e7}', '\u{4e7}'),
('\u{4e9}', '\u{4e9}'),
('\u{4eb}', '\u{4eb}'),
('\u{4ed}', '\u{4ed}'),
('\u{4ef}', '\u{4ef}'),
('\u{4f1}', '\u{4f1}'),
('\u{4f3}', '\u{4f3}'),
('\u{4f5}', '\u{4f5}'),
('\u{4f7}', '\u{4f7}'),
('\u{4f9}', '\u{4f9}'),
('\u{4fb}', '\u{4fb}'),
('\u{4fd}', '\u{4fd}'),
('\u{4ff}', '\u{4ff}'),
('\u{501}', '\u{501}'),
('\u{503}', '\u{503}'),
('\u{505}', '\u{505}'),
('\u{507}', '\u{507}'),
('\u{509}', '\u{509}'),
('\u{50b}', '\u{50b}'),
('\u{50d}', '\u{50d}'),
('\u{50f}', '\u{50f}'),
('\u{511}', '\u{511}'),
('\u{513}', '\u{513}'),
('\u{515}', '\u{515}'),
('\u{517}', '\u{517}'),
('\u{519}', '\u{519}'),
('\u{51b}', '\u{51b}'),
('\u{51d}', '\u{51d}'),
('\u{51f}', '\u{51f}'),
('\u{521}', '\u{521}'),
('\u{523}', '\u{523}'),
('\u{525}', '\u{525}'),
('\u{527}', '\u{527}'),
('\u{529}', '\u{529}'),
('\u{52b}', '\u{52b}'),
('\u{52d}', '\u{52d}'),
('\u{52f}', '\u{52f}'),
('\u{560}', '\u{588}'),
('\u{10d0}', '\u{10fa}'),
('\u{10fd}', '\u{10ff}'),
('\u{13f8}', '\u{13fd}'),
('\u{1c80}', '\u{1c88}'),
('\u{1c8a}', '\u{1c8a}'),
('\u{1d00}', '\u{1d2b}'),
('\u{1d6b}', '\u{1d77}'),
('\u{1d79}', '\u{1d9a}'),
('\u{1e01}', '\u{1e01}'),
('\u{1e03}', '\u{1e03}'),
('\u{1e05}', '\u{1e05}'),
('\u{1e07}', '\u{1e07}'),
('\u{1e09}', '\u{1e09}'),
('\u{1e0b}', '\u{1e0b}'),
('\u{1e0d}', '\u{1e0d}'),
('\u{1e0f}', '\u{1e0f}'),
('\u{1e11}', '\u{1e11}'),
('\u{1e13}', '\u{1e13}'),
('\u{1e15}', '\u{1e15}'),
('\u{1e17}', '\u{1e17}'),
('\u{1e19}', '\u{1e19}'),
('\u{1e1b}', '\u{1e1b}'),
('\u{1e1d}', '\u{1e1d}'),
('\u{1e1f}', '\u{1e1f}'),
('\u{1e21}', '\u{1e21}'),
('\u{1e23}', '\u{1e23}'),
('\u{1e25}', '\u{1e25}'),
('\u{1e27}', '\u{1e27}'),
('\u{1e29}', '\u{1e29}'),
('\u{1e2b}', '\u{1e2b}'),
('\u{1e2d}', '\u{1e2d}'),
('\u{1e2f}', '\u{1e2f}'),
('\u{1e31}', '\u{1e31}'),
('\u{1e33}', '\u{1e33}'),
('\u{1e35}', '\u{1e35}'),
('\u{1e37}', '\u{1e37}'),
('\u{1e39}', '\u{1e39}'),
('\u{1e3b}', '\u{1e3b}'),
('\u{1e3d}', '\u{1e3d}'),
('\u{1e3f}', '\u{1e3f}'),
('\u{1e41}', '\u{1e41}'),
('\u{1e43}', '\u{1e43}'),
('\u{1e45}', '\u{1e45}'),
('\u{1e47}', '\u{1e47}'),
('\u{1e49}', '\u{1e49}'),
('\u{1e4b}', '\u{1e4b}'),
('\u{1e4d}', '\u{1e4d}'),
('\u{1e4f}', '\u{1e4f}'),
('\u{1e51}', '\u{1e51}'),
('\u{1e53}', '\u{1e53}'),
('\u{1e55}', '\u{1e55}'),
('\u{1e57}', '\u{1e57}'),
('\u{1e59}', '\u{1e59}'),
('\u{1e5b}', '\u{1e5b}'),
('\u{1e5d}', '\u{1e5d}'),
('\u{1e5f}', '\u{1e5f}'),
('\u{1e61}', '\u{1e61}'),
('\u{1e63}', '\u{1e63}'),
('\u{1e65}', '\u{1e65}'),
('\u{1e67}', '\u{1e67}'),
('\u{1e69}', '\u{1e69}'),
('\u{1e6b}', '\u{1e6b}'),
('\u{1e6d}', '\u{1e6d}'),
('\u{1e6f}', '\u{1e6f}'),
('\u{1e71}', '\u{1e71}'),
('\u{1e73}', '\u{1e73}'),
('\u{1e75}', '\u{1e75}'),
('\u{1e77}', '\u{1e77}'),
('\u{1e79}', '\u{1e79}'),
('\u{1e7b}', '\u{1e7b}'),
('\u{1e7d}', '\u{1e7d}'),
('\u{1e7f}', '\u{1e7f}'),
('\u{1e81}', '\u{1e81}'),
('\u{1e83}', '\u{1e83}'),
('\u{1e85}', '\u{1e85}'),
('\u{1e87}', '\u{1e87}'),
('\u{1e89}', '\u{1e89}'),
('\u{1e8b}', '\u{1e8b}'),
('\u{1e8d}', '\u{1e8d}'),
('\u{1e8f}', '\u{1e8f}'),
('\u{1e91}', '\u{1e91}'),
('\u{1e93}', '\u{1e93}'),
('\u{1e95}', '\u{1e9d}'),
('\u{1e9f}', '\u{1e9f}'),
('\u{1ea1}', '\u{1ea1}'),
('\u{1ea3}', '\u{1ea3}'),
('\u{1ea5}', '\u{1ea5}'),
('\u{1ea7}', '\u{1ea7}'),
('\u{1ea9}', '\u{1ea9}'),
('\u{1eab}', '\u{1eab}'),
('\u{1ead}', '\u{1ead}'),
('\u{1eaf}', '\u{1eaf}'),
('\u{1eb1}', '\u{1eb1}'),
('\u{1eb3}', '\u{1eb3}'),
('\u{1eb5}', '\u{1eb5}'),
('\u{1eb7}', '\u{1eb7}'),
('\u{1eb9}', '\u{1eb9}'),
('\u{1ebb}', '\u{1ebb}'),
('\u{1ebd}', '\u{1ebd}'),
('\u{1ebf}', '\u{1ebf}'),
('\u{1ec1}', '\u{1ec1}'),
('\u{1ec3}', '\u{1ec3}'),
('\u{1ec5}', '\u{1ec5}'),
('\u{1ec7}', '\u{1ec7}'),
('\u{1ec9}', '\u{1ec9}'),
('\u{1ecb}', '\u{1ecb}'),
('\u{1ecd}', '\u{1ecd}'),
('\u{1ecf}', '\u{1ecf}'),
('\u{1ed1}', '\u{1ed1}'),
('\u{1ed3}', '\u{1ed3}'),
('\u{1ed5}', '\u{1ed5}'),
('\u{1ed7}', '\u{1ed7}'),
('\u{1ed9}', '\u{1ed9}'),
('\u{1edb}', '\u{1edb}'),
('\u{1edd}', '\u{1edd}'),
('\u{1edf}', '\u{1edf}'),
('\u{1ee1}', '\u{1ee1}'),
('\u{1ee3}', '\u{1ee3}'),
('\u{1ee5}', '\u{1ee5}'),
('\u{1ee7}', '\u{1ee7}'),
('\u{1ee9}', '\u{1ee9}'),
('\u{1eeb}', '\u{1eeb}'),
('\u{1eed}', '\u{1eed}'),
('\u{1eef}', '\u{1eef}'),
('\u{1ef1}', '\u{1ef1}'),
('\u{1ef3}', '\u{1ef3}'),
('\u{1ef5}', '\u{1ef5}'),
('\u{1ef7}', '\u{1ef7}'),
('\u{1ef9}', '\u{1ef9}'),
('\u{1efb}', '\u{1efb}'),
('\u{1efd}', '\u{1efd}'),
('\u{1eff}', '\u{1f07}'),
('\u{1f10}', '\u{1f15}'),
('\u{1f20}', '\u{1f27}'),
('\u{1f30}', '\u{1f37}'),
('\u{1f40}', '\u{1f45}'),
('\u{1f50}', '\u{1f57}'),
('\u{1f60}', '\u{1f67}'),
('\u{1f70}', '\u{1f7d}'),
('\u{1f80}', '\u{1f87}'),
('\u{1f90}', '\u{1f97}'),
('\u{1fa0}', '\u{1fa7}'),
('\u{1fb0}', '\u{1fb4}'),
('\u{1fb6}', '\u{1fb7}'),
('\u{1fbe}', '\u{1fbe}'),
('\u{1fc2}', '\u{1fc4}'),
('\u{1fc6}', '\u{1fc7}'),
('\u{1fd0}', '\u{1fd3}'),
('\u{1fd6}', '\u{1fd7}'),
('\u{1fe0}', '\u{1fe7}'),
('\u{1ff2}', '\u{1ff4}'),
('\u{1ff6}', '\u{1ff7}'),
('\u{210a}', '\u{210a}'),
('\u{210e}', '\u{210f}'),
('\u{2113}', '\u{2113}'),
('\u{212f}', '\u{212f}'),
('\u{2134}', '\u{2134}'),
('\u{2139}', '\u{2139}'),
('\u{213c}', '\u{213d}'),
('\u{2146}', '\u{2149}'),
('\u{214e}', '\u{214e}'),
('\u{2184}', '\u{2184}'),
('\u{2c30}', '\u{2c5f}'),
('\u{2c61}', '\u{2c61}'),
('\u{2c65}', '\u{2c66}'),
('\u{2c68}', '\u{2c68}'),
('\u{2c6a}', '\u{2c6a}'),
('\u{2c6c}', '\u{2c6c}'),
('\u{2c71}', '\u{2c71}'),
('\u{2c73}', '\u{2c74}'),
('\u{2c76}', '\u{2c7b}'),
('\u{2c81}', '\u{2c81}'),
('\u{2c83}', '\u{2c83}'),
('\u{2c85}', '\u{2c85}'),
('\u{2c87}', '\u{2c87}'),
('\u{2c89}', '\u{2c89}'),
('\u{2c8b}', '\u{2c8b}'),
('\u{2c8d}', '\u{2c8d}'),
('\u{2c8f}', '\u{2c8f}'),
('\u{2c91}', '\u{2c91}'),
('\u{2c93}', '\u{2c93}'),
('\u{2c95}', '\u{2c95}'),
('\u{2c97}', '\u{2c97}'),
('\u{2c99}', '\u{2c99}'),
('\u{2c9b}', '\u{2c9b}'),
('\u{2c9d}', '\u{2c9d}'),
('\u{2c9f}', '\u{2c9f}'),
('\u{2ca1}', '\u{2ca1}'),
('\u{2ca3}', '\u{2ca3}'),
('\u{2ca5}', '\u{2ca5}'),
('\u{2ca7}', '\u{2ca7}'),
('\u{2ca9}', '\u{2ca9}'),
('\u{2cab}', '\u{2cab}'),
('\u{2cad}', '\u{2cad}'),
('\u{2caf}', '\u{2caf}'),
('\u{2cb1}', '\u{2cb1}'),
('\u{2cb3}', '\u{2cb3}'),
('\u{2cb5}', '\u{2cb5}'),
('\u{2cb7}', '\u{2cb7}'),
('\u{2cb9}', '\u{2cb9}'),
('\u{2cbb}', '\u{2cbb}'),
('\u{2cbd}', '\u{2cbd}'),
('\u{2cbf}', '\u{2cbf}'),
('\u{2cc1}', '\u{2cc1}'),
('\u{2cc3}', '\u{2cc3}'),
('\u{2cc5}', '\u{2cc5}'),
('\u{2cc7}', '\u{2cc7}'),
('\u{2cc9}', '\u{2cc9}'),
('\u{2ccb}', '\u{2ccb}'),
('\u{2ccd}', '\u{2ccd}'),
('\u{2ccf}', '\u{2ccf}'),
('\u{2cd1}', '\u{2cd1}'),
('\u{2cd3}', '\u{2cd3}'),
('\u{2cd5}', '\u{2cd5}'),
('\u{2cd7}', '\u{2cd7}'),
('\u{2cd9}', '\u{2cd9}'),
('\u{2cdb}', '\u{2cdb}'),
('\u{2cdd}', '\u{2cdd}'),
('\u{2cdf}', '\u{2cdf}'),
('\u{2ce1}', '\u{2ce1}'),
('\u{2ce3}', '\u{2ce4}'),
('\u{2cec}', '\u{2cec}'),
('\u{2cee}', '\u{2cee}'),
('\u{2cf3}', '\u{2cf3}'),
('\u{2d00}', '\u{2d25}'),
('\u{2d27}', '\u{2d27}'),
('\u{2d2d}', '\u{2d2d}'),
('\u{a641}', '\u{a641}'),
('\u{a643}', '\u{a643}'),
('\u{a645}', '\u{a645}'),
('\u{a647}', '\u{a647}'),
('\u{a649}', '\u{a649}'),
('\u{a64b}', '\u{a64b}'),
('\u{a64d}', '\u{a64d}'),
('\u{a64f}', '\u{a64f}'),
('\u{a651}', '\u{a651}'),
('\u{a653}', '\u{a653}'),
('\u{a655}', '\u{a655}'),
('\u{a657}', '\u{a657}'),
('\u{a659}', '\u{a659}'),
('\u{a65b}', '\u{a65b}'),
('\u{a65d}', '\u{a65d}'),
('\u{a65f}', '\u{a65f}'),
('\u{a661}', '\u{a661}'),
('\u{a663}', '\u{a663}'),
('\u{a665}', '\u{a665}'),
('\u{a667}', '\u{a667}'),
('\u{a669}', '\u{a669}'),
('\u{a66b}', '\u{a66b}'),
('\u{a66d}', '\u{a66d}'),
('\u{a681}', '\u{a681}'),
('\u{a683}', '\u{a683}'),
('\u{a685}', '\u{a685}'),
('\u{a687}', '\u{a687}'),
('\u{a689}', '\u{a689}'),
('\u{a68b}', '\u{a68b}'),
('\u{a68d}', '\u{a68d}'),
('\u{a68f}', '\u{a68f}'),
('\u{a691}', '\u{a691}'),
('\u{a693}', '\u{a693}'),
('\u{a695}', '\u{a695}'),
('\u{a697}', '\u{a697}'),
('\u{a699}', '\u{a699}'),
('\u{a69b}', '\u{a69b}'),
('\u{a723}', '\u{a723}'),
('\u{a725}', '\u{a725}'),
('\u{a727}', '\u{a727}'),
('\u{a729}', '\u{a729}'),
('\u{a72b}', '\u{a72b}'),
('\u{a72d}', '\u{a72d}'),
('\u{a72f}', '\u{a731}'),
('\u{a733}', '\u{a733}'),
('\u{a735}', '\u{a735}'),
('\u{a737}', '\u{a737}'),
('\u{a739}', '\u{a739}'),
('\u{a73b}', '\u{a73b}'),
('\u{a73d}', '\u{a73d}'),
('\u{a73f}', '\u{a73f}'),
('\u{a741}', '\u{a741}'),
('\u{a743}', '\u{a743}'),
('\u{a745}', '\u{a745}'),
('\u{a747}', '\u{a747}'),
('\u{a749}', '\u{a749}'),
('\u{a74b}', '\u{a74b}'),
('\u{a74d}', '\u{a74d}'),
('\u{a74f}', '\u{a74f}'),
('\u{a751}', '\u{a751}'),
('\u{a753}', '\u{a753}'),
('\u{a755}', '\u{a755}'),
('\u{a757}', '\u{a757}'),
('\u{a759}', '\u{a759}'),
('\u{a75b}', '\u{a75b}'),
('\u{a75d}', '\u{a75d}'),
('\u{a75f}', '\u{a75f}'),
('\u{a761}', '\u{a761}'),
('\u{a763}', '\u{a763}'),
('\u{a765}', '\u{a765}'),
('\u{a767}', '\u{a767}'),
('\u{a769}', '\u{a769}'),
('\u{a76b}', '\u{a76b}'),
('\u{a76d}', '\u{a76d}'),
('\u{a76f}', '\u{a76f}'),
('\u{a771}', '\u{a778}'),
('\u{a77a}', '\u{a77a}'),
('\u{a77c}', '\u{a77c}'),
('\u{a77f}', '\u{a77f}'),
('\u{a781}', '\u{a781}'),
('\u{a783}', '\u{a783}'),
('\u{a785}', '\u{a785}'),
('\u{a787}', '\u{a787}'),
('\u{a78c}', '\u{a78c}'),
('\u{a78e}', '\u{a78e}'),
('\u{a791}', '\u{a791}'),
('\u{a793}', '\u{a795}'),
('\u{a797}', '\u{a797}'),
('\u{a799}', '\u{a799}'),
('\u{a79b}', '\u{a79b}'),
('\u{a79d}', '\u{a79d}'),
('\u{a79f}', '\u{a79f}'),
('\u{a7a1}', '\u{a7a1}'),
('\u{a7a3}', '\u{a7a3}'),
('\u{a7a5}', '\u{a7a5}'),
('\u{a7a7}', '\u{a7a7}'),
('\u{a7a9}', '\u{a7a9}'),
('\u{a7af}', '\u{a7af}'),
('\u{a7b5}', '\u{a7b5}'),
('\u{a7b7}', '\u{a7b7}'),
('\u{a7b9}', '\u{a7b9}'),
('\u{a7bb}', '\u{a7bb}'),
('\u{a7bd}', '\u{a7bd}'),
('\u{a7bf}', '\u{a7bf}'),
('\u{a7c1}', '\u{a7c1}'),
('\u{a7c3}', '\u{a7c3}'),
('\u{a7c8}', '\u{a7c8}'),
('\u{a7ca}', '\u{a7ca}'),
('\u{a7cd}', '\u{a7cd}'),
('\u{a7d1}', '\u{a7d1}'),
('\u{a7d3}', '\u{a7d3}'),
('\u{a7d5}', '\u{a7d5}'),
('\u{a7d7}', '\u{a7d7}'),
('\u{a7d9}', '\u{a7d9}'),
('\u{a7db}', '\u{a7db}'),
('\u{a7f6}', '\u{a7f6}'),
('\u{a7fa}', '\u{a7fa}'),
('\u{ab30}', '\u{ab5a}'),
('\u{ab60}', '\u{ab68}'),
('\u{ab70}', '\u{abbf}'),
('\u{fb00}', '\u{fb06}'),
('\u{fb13}', '\u{fb17}'),
('\u{ff41}', '\u{ff5a}'),
('\u{10428}', '\u{1044f}'),
('\u{104d8}', '\u{104fb}'),
('\u{10597}', '\u{105a1}'),
('\u{105a3}', '\u{105b1}'),
('\u{105b3}', '\u{105b9}'),
('\u{105bb}', '\u{105bc}'),
('\u{10cc0}', '\u{10cf2}'),
('\u{10d70}', '\u{10d85}'),
('\u{118c0}', '\u{118df}'),
('\u{16e60}', '\u{16e7f}'),
('\u{1d41a}', '\u{1d433}'),
('\u{1d44e}', '\u{1d454}'),
('\u{1d456}', '\u{1d467}'),
('\u{1d482}', '\u{1d49b}'),
('\u{1d4b6}', '\u{1d4b9}'),
('\u{1d4bb}', '\u{1d4bb}'),
('\u{1d4bd}', '\u{1d4c3}'),
('\u{1d4c5}', '\u{1d4cf}'),
('\u{1d4ea}', '\u{1d503}'),
('\u{1d51e}', '\u{1d537}'),
('\u{1d552}', '\u{1d56b}'),
('\u{1d586}', '\u{1d59f}'),
('\u{1d5ba}', '\u{1d5d3}'),
('\u{1d5ee}', '\u{1d607}'),
('\u{1d622}', '\u{1d63b}'),
('\u{1d656}', '\u{1d66f}'),
('\u{1d68a}', '\u{1d6a5}'),
('\u{1d6c2}', '\u{1d6da}'),
('\u{1d6dc}', '\u{1d6e1}'),
('\u{1d6fc}', '\u{1d714}'),
('\u{1d716}', '\u{1d71b}'),
('\u{1d736}', '\u{1d74e}'),
('\u{1d750}', '\u{1d755}'),
('\u{1d770}', '\u{1d788}'),
('\u{1d78a}', '\u{1d78f}'),
('\u{1d7aa}', '\u{1d7c2}'),
('\u{1d7c4}', '\u{1d7c9}'),
('\u{1d7cb}', '\u{1d7cb}'),
('\u{1df00}', '\u{1df09}'),
('\u{1df0b}', '\u{1df1e}'),
('\u{1df25}', '\u{1df2a}'),
('\u{1e922}', '\u{1e943}'),
];
pub fn alternate_general_category_ll() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_LL.iter().copied()).unwrap()
}
pub fn negate_general_category_ll() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_LL.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_SO: &[(char, char)] = &[
('\u{a6}', '\u{a6}'),
('\u{a9}', '\u{a9}'),
('\u{ae}', '\u{ae}'),
('\u{b0}', '\u{b0}'),
('\u{482}', '\u{482}'),
('\u{58d}', '\u{58e}'),
('\u{60e}', '\u{60f}'),
('\u{6de}', '\u{6de}'),
('\u{6e9}', '\u{6e9}'),
('\u{6fd}', '\u{6fe}'),
('\u{7f6}', '\u{7f6}'),
('\u{9fa}', '\u{9fa}'),
('\u{b70}', '\u{b70}'),
('\u{bf3}', '\u{bf8}'),
('\u{bfa}', '\u{bfa}'),
('\u{c7f}', '\u{c7f}'),
('\u{d4f}', '\u{d4f}'),
('\u{d79}', '\u{d79}'),
('\u{f01}', '\u{f03}'),
('\u{f13}', '\u{f13}'),
('\u{f15}', '\u{f17}'),
('\u{f1a}', '\u{f1f}'),
('\u{f34}', '\u{f34}'),
('\u{f36}', '\u{f36}'),
('\u{f38}', '\u{f38}'),
('\u{fbe}', '\u{fc5}'),
('\u{fc7}', '\u{fcc}'),
('\u{fce}', '\u{fcf}'),
('\u{fd5}', '\u{fd8}'),
('\u{109e}', '\u{109f}'),
('\u{1390}', '\u{1399}'),
('\u{166d}', '\u{166d}'),
('\u{1940}', '\u{1940}'),
('\u{19de}', '\u{19ff}'),
('\u{1b61}', '\u{1b6a}'),
('\u{1b74}', '\u{1b7c}'),
('\u{2100}', '\u{2101}'),
('\u{2103}', '\u{2106}'),
('\u{2108}', '\u{2109}'),
('\u{2114}', '\u{2114}'),
('\u{2116}', '\u{2117}'),
('\u{211e}', '\u{2123}'),
('\u{2125}', '\u{2125}'),
('\u{2127}', '\u{2127}'),
('\u{2129}', '\u{2129}'),
('\u{212e}', '\u{212e}'),
('\u{213a}', '\u{213b}'),
('\u{214a}', '\u{214a}'),
('\u{214c}', '\u{214d}'),
('\u{214f}', '\u{214f}'),
('\u{218a}', '\u{218b}'),
('\u{2195}', '\u{2199}'),
('\u{219c}', '\u{219f}'),
('\u{21a1}', '\u{21a2}'),
('\u{21a4}', '\u{21a5}'),
('\u{21a7}', '\u{21ad}'),
('\u{21af}', '\u{21cd}'),
('\u{21d0}', '\u{21d1}'),
('\u{21d3}', '\u{21d3}'),
('\u{21d5}', '\u{21f3}'),
('\u{2300}', '\u{2307}'),
('\u{230c}', '\u{231f}'),
('\u{2322}', '\u{2328}'),
('\u{232b}', '\u{237b}'),
('\u{237d}', '\u{239a}'),
('\u{23b4}', '\u{23db}'),
('\u{23e2}', '\u{2429}'),
('\u{2440}', '\u{244a}'),
('\u{249c}', '\u{24e9}'),
('\u{2500}', '\u{25b6}'),
('\u{25b8}', '\u{25c0}'),
('\u{25c2}', '\u{25f7}'),
('\u{2600}', '\u{266e}'),
('\u{2670}', '\u{2767}'),
('\u{2794}', '\u{27bf}'),
('\u{2800}', '\u{28ff}'),
('\u{2b00}', '\u{2b2f}'),
('\u{2b45}', '\u{2b46}'),
('\u{2b4d}', '\u{2b73}'),
('\u{2b76}', '\u{2b95}'),
('\u{2b97}', '\u{2bff}'),
('\u{2ce5}', '\u{2cea}'),
('\u{2e50}', '\u{2e51}'),
('\u{2e80}', '\u{2e99}'),
('\u{2e9b}', '\u{2ef3}'),
('\u{2f00}', '\u{2fd5}'),
('\u{2ff0}', '\u{2fff}'),
('\u{3004}', '\u{3004}'),
('\u{3012}', '\u{3013}'),
('\u{3020}', '\u{3020}'),
('\u{3036}', '\u{3037}'),
('\u{303e}', '\u{303f}'),
('\u{3190}', '\u{3191}'),
('\u{3196}', '\u{319f}'),
('\u{31c0}', '\u{31e5}'),
('\u{31ef}', '\u{31ef}'),
('\u{3200}', '\u{321e}'),
('\u{322a}', '\u{3247}'),
('\u{3250}', '\u{3250}'),
('\u{3260}', '\u{327f}'),
('\u{328a}', '\u{32b0}'),
('\u{32c0}', '\u{33ff}'),
('\u{4dc0}', '\u{4dff}'),
('\u{a490}', '\u{a4c6}'),
('\u{a828}', '\u{a82b}'),
('\u{a836}', '\u{a837}'),
('\u{a839}', '\u{a839}'),
('\u{aa77}', '\u{aa79}'),
('\u{fd40}', '\u{fd4f}'),
('\u{fdcf}', '\u{fdcf}'),
('\u{fdfd}', '\u{fdff}'),
('\u{ffe4}', '\u{ffe4}'),
('\u{ffe8}', '\u{ffe8}'),
('\u{ffed}', '\u{ffee}'),
('\u{fffc}', '\u{fffd}'),
('\u{10137}', '\u{1013f}'),
('\u{10179}', '\u{10189}'),
('\u{1018c}', '\u{1018e}'),
('\u{10190}', '\u{1019c}'),
('\u{101a0}', '\u{101a0}'),
('\u{101d0}', '\u{101fc}'),
('\u{10877}', '\u{10878}'),
('\u{10ac8}', '\u{10ac8}'),
('\u{1173f}', '\u{1173f}'),
('\u{11fd5}', '\u{11fdc}'),
('\u{11fe1}', '\u{11ff1}'),
('\u{16b3c}', '\u{16b3f}'),
('\u{16b45}', '\u{16b45}'),
('\u{1bc9c}', '\u{1bc9c}'),
('\u{1cc00}', '\u{1ccef}'),
('\u{1cd00}', '\u{1ceb3}'),
('\u{1cf50}', '\u{1cfc3}'),
('\u{1d000}', '\u{1d0f5}'),
('\u{1d100}', '\u{1d126}'),
('\u{1d129}', '\u{1d164}'),
('\u{1d16a}', '\u{1d16c}'),
('\u{1d183}', '\u{1d184}'),
('\u{1d18c}', '\u{1d1a9}'),
('\u{1d1ae}', '\u{1d1ea}'),
('\u{1d200}', '\u{1d241}'),
('\u{1d245}', '\u{1d245}'),
('\u{1d300}', '\u{1d356}'),
('\u{1d800}', '\u{1d9ff}'),
('\u{1da37}', '\u{1da3a}'),
('\u{1da6d}', '\u{1da74}'),
('\u{1da76}', '\u{1da83}'),
('\u{1da85}', '\u{1da86}'),
('\u{1e14f}', '\u{1e14f}'),
('\u{1ecac}', '\u{1ecac}'),
('\u{1ed2e}', '\u{1ed2e}'),
('\u{1f000}', '\u{1f02b}'),
('\u{1f030}', '\u{1f093}'),
('\u{1f0a0}', '\u{1f0ae}'),
('\u{1f0b1}', '\u{1f0bf}'),
('\u{1f0c1}', '\u{1f0cf}'),
('\u{1f0d1}', '\u{1f0f5}'),
('\u{1f10d}', '\u{1f1ad}'),
('\u{1f1e6}', '\u{1f202}'),
('\u{1f210}', '\u{1f23b}'),
('\u{1f240}', '\u{1f248}'),
('\u{1f250}', '\u{1f251}'),
('\u{1f260}', '\u{1f265}'),
('\u{1f300}', '\u{1f3fa}'),
('\u{1f400}', '\u{1f6d7}'),
('\u{1f6dc}', '\u{1f6ec}'),
('\u{1f6f0}', '\u{1f6fc}'),
('\u{1f700}', '\u{1f776}'),
('\u{1f77b}', '\u{1f7d9}'),
('\u{1f7e0}', '\u{1f7eb}'),
('\u{1f7f0}', '\u{1f7f0}'),
('\u{1f800}', '\u{1f80b}'),
('\u{1f810}', '\u{1f847}'),
('\u{1f850}', '\u{1f859}'),
('\u{1f860}', '\u{1f887}'),
('\u{1f890}', '\u{1f8ad}'),
('\u{1f8b0}', '\u{1f8bb}'),
('\u{1f8c0}', '\u{1f8c1}'),
('\u{1f900}', '\u{1fa53}'),
('\u{1fa60}', '\u{1fa6d}'),
('\u{1fa70}', '\u{1fa7c}'),
('\u{1fa80}', '\u{1fa89}'),
('\u{1fa8f}', '\u{1fac6}'),
('\u{1face}', '\u{1fadc}'),
('\u{1fadf}', '\u{1fae9}'),
('\u{1faf0}', '\u{1faf8}'),
('\u{1fb00}', '\u{1fb92}'),
('\u{1fb94}', '\u{1fbef}'),
];
pub fn alternate_general_category_so() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_SO.iter().copied()).unwrap()
}
pub fn negate_general_category_so() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_SO.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_LO: &[(char, char)] = &[
('\u{aa}', '\u{aa}'),
('\u{ba}', '\u{ba}'),
('\u{1bb}', '\u{1bb}'),
('\u{1c0}', '\u{1c3}'),
('\u{294}', '\u{294}'),
('\u{5d0}', '\u{5ea}'),
('\u{5ef}', '\u{5f2}'),
('\u{620}', '\u{63f}'),
('\u{641}', '\u{64a}'),
('\u{66e}', '\u{66f}'),
('\u{671}', '\u{6d3}'),
('\u{6d5}', '\u{6d5}'),
('\u{6ee}', '\u{6ef}'),
('\u{6fa}', '\u{6fc}'),
('\u{6ff}', '\u{6ff}'),
('\u{710}', '\u{710}'),
('\u{712}', '\u{72f}'),
('\u{74d}', '\u{7a5}'),
('\u{7b1}', '\u{7b1}'),
('\u{7ca}', '\u{7ea}'),
('\u{800}', '\u{815}'),
('\u{840}', '\u{858}'),
('\u{860}', '\u{86a}'),
('\u{870}', '\u{887}'),
('\u{889}', '\u{88e}'),
('\u{8a0}', '\u{8c8}'),
('\u{904}', '\u{939}'),
('\u{93d}', '\u{93d}'),
('\u{950}', '\u{950}'),
('\u{958}', '\u{961}'),
('\u{972}', '\u{980}'),
('\u{985}', '\u{98c}'),
('\u{98f}', '\u{990}'),
('\u{993}', '\u{9a8}'),
('\u{9aa}', '\u{9b0}'),
('\u{9b2}', '\u{9b2}'),
('\u{9b6}', '\u{9b9}'),
('\u{9bd}', '\u{9bd}'),
('\u{9ce}', '\u{9ce}'),
('\u{9dc}', '\u{9dd}'),
('\u{9df}', '\u{9e1}'),
('\u{9f0}', '\u{9f1}'),
('\u{9fc}', '\u{9fc}'),
('\u{a05}', '\u{a0a}'),
('\u{a0f}', '\u{a10}'),
('\u{a13}', '\u{a28}'),
('\u{a2a}', '\u{a30}'),
('\u{a32}', '\u{a33}'),
('\u{a35}', '\u{a36}'),
('\u{a38}', '\u{a39}'),
('\u{a59}', '\u{a5c}'),
('\u{a5e}', '\u{a5e}'),
('\u{a72}', '\u{a74}'),
('\u{a85}', '\u{a8d}'),
('\u{a8f}', '\u{a91}'),
('\u{a93}', '\u{aa8}'),
('\u{aaa}', '\u{ab0}'),
('\u{ab2}', '\u{ab3}'),
('\u{ab5}', '\u{ab9}'),
('\u{abd}', '\u{abd}'),
('\u{ad0}', '\u{ad0}'),
('\u{ae0}', '\u{ae1}'),
('\u{af9}', '\u{af9}'),
('\u{b05}', '\u{b0c}'),
('\u{b0f}', '\u{b10}'),
('\u{b13}', '\u{b28}'),
('\u{b2a}', '\u{b30}'),
('\u{b32}', '\u{b33}'),
('\u{b35}', '\u{b39}'),
('\u{b3d}', '\u{b3d}'),
('\u{b5c}', '\u{b5d}'),
('\u{b5f}', '\u{b61}'),
('\u{b71}', '\u{b71}'),
('\u{b83}', '\u{b83}'),
('\u{b85}', '\u{b8a}'),
('\u{b8e}', '\u{b90}'),
('\u{b92}', '\u{b95}'),
('\u{b99}', '\u{b9a}'),
('\u{b9c}', '\u{b9c}'),
('\u{b9e}', '\u{b9f}'),
('\u{ba3}', '\u{ba4}'),
('\u{ba8}', '\u{baa}'),
('\u{bae}', '\u{bb9}'),
('\u{bd0}', '\u{bd0}'),
('\u{c05}', '\u{c0c}'),
('\u{c0e}', '\u{c10}'),
('\u{c12}', '\u{c28}'),
('\u{c2a}', '\u{c39}'),
('\u{c3d}', '\u{c3d}'),
('\u{c58}', '\u{c5a}'),
('\u{c5d}', '\u{c5d}'),
('\u{c60}', '\u{c61}'),
('\u{c80}', '\u{c80}'),
('\u{c85}', '\u{c8c}'),
('\u{c8e}', '\u{c90}'),
('\u{c92}', '\u{ca8}'),
('\u{caa}', '\u{cb3}'),
('\u{cb5}', '\u{cb9}'),
('\u{cbd}', '\u{cbd}'),
('\u{cdd}', '\u{cde}'),
('\u{ce0}', '\u{ce1}'),
('\u{cf1}', '\u{cf2}'),
('\u{d04}', '\u{d0c}'),
('\u{d0e}', '\u{d10}'),
('\u{d12}', '\u{d3a}'),
('\u{d3d}', '\u{d3d}'),
('\u{d4e}', '\u{d4e}'),
('\u{d54}', '\u{d56}'),
('\u{d5f}', '\u{d61}'),
('\u{d7a}', '\u{d7f}'),
('\u{d85}', '\u{d96}'),
('\u{d9a}', '\u{db1}'),
('\u{db3}', '\u{dbb}'),
('\u{dbd}', '\u{dbd}'),
('\u{dc0}', '\u{dc6}'),
('\u{e01}', '\u{e30}'),
('\u{e32}', '\u{e33}'),
('\u{e40}', '\u{e45}'),
('\u{e81}', '\u{e82}'),
('\u{e84}', '\u{e84}'),
('\u{e86}', '\u{e8a}'),
('\u{e8c}', '\u{ea3}'),
('\u{ea5}', '\u{ea5}'),
('\u{ea7}', '\u{eb0}'),
('\u{eb2}', '\u{eb3}'),
('\u{ebd}', '\u{ebd}'),
('\u{ec0}', '\u{ec4}'),
('\u{edc}', '\u{edf}'),
('\u{f00}', '\u{f00}'),
('\u{f40}', '\u{f47}'),
('\u{f49}', '\u{f6c}'),
('\u{f88}', '\u{f8c}'),
('\u{1000}', '\u{102a}'),
('\u{103f}', '\u{103f}'),
('\u{1050}', '\u{1055}'),
('\u{105a}', '\u{105d}'),
('\u{1061}', '\u{1061}'),
('\u{1065}', '\u{1066}'),
('\u{106e}', '\u{1070}'),
('\u{1075}', '\u{1081}'),
('\u{108e}', '\u{108e}'),
('\u{1100}', '\u{1248}'),
('\u{124a}', '\u{124d}'),
('\u{1250}', '\u{1256}'),
('\u{1258}', '\u{1258}'),
('\u{125a}', '\u{125d}'),
('\u{1260}', '\u{1288}'),
('\u{128a}', '\u{128d}'),
('\u{1290}', '\u{12b0}'),
('\u{12b2}', '\u{12b5}'),
('\u{12b8}', '\u{12be}'),
('\u{12c0}', '\u{12c0}'),
('\u{12c2}', '\u{12c5}'),
('\u{12c8}', '\u{12d6}'),
('\u{12d8}', '\u{1310}'),
('\u{1312}', '\u{1315}'),
('\u{1318}', '\u{135a}'),
('\u{1380}', '\u{138f}'),
('\u{1401}', '\u{166c}'),
('\u{166f}', '\u{167f}'),
('\u{1681}', '\u{169a}'),
('\u{16a0}', '\u{16ea}'),
('\u{16f1}', '\u{16f8}'),
('\u{1700}', '\u{1711}'),
('\u{171f}', '\u{1731}'),
('\u{1740}', '\u{1751}'),
('\u{1760}', '\u{176c}'),
('\u{176e}', '\u{1770}'),
('\u{1780}', '\u{17b3}'),
('\u{17dc}', '\u{17dc}'),
('\u{1820}', '\u{1842}'),
('\u{1844}', '\u{1878}'),
('\u{1880}', '\u{1884}'),
('\u{1887}', '\u{18a8}'),
('\u{18aa}', '\u{18aa}'),
('\u{18b0}', '\u{18f5}'),
('\u{1900}', '\u{191e}'),
('\u{1950}', '\u{196d}'),
('\u{1970}', '\u{1974}'),
('\u{1980}', '\u{19ab}'),
('\u{19b0}', '\u{19c9}'),
('\u{1a00}', '\u{1a16}'),
('\u{1a20}', '\u{1a54}'),
('\u{1b05}', '\u{1b33}'),
('\u{1b45}', '\u{1b4c}'),
('\u{1b83}', '\u{1ba0}'),
('\u{1bae}', '\u{1baf}'),
('\u{1bba}', '\u{1be5}'),
('\u{1c00}', '\u{1c23}'),
('\u{1c4d}', '\u{1c4f}'),
('\u{1c5a}', '\u{1c77}'),
('\u{1ce9}', '\u{1cec}'),
('\u{1cee}', '\u{1cf3}'),
('\u{1cf5}', '\u{1cf6}'),
('\u{1cfa}', '\u{1cfa}'),
('\u{2135}', '\u{2138}'),
('\u{2d30}', '\u{2d67}'),
('\u{2d80}', '\u{2d96}'),
('\u{2da0}', '\u{2da6}'),
('\u{2da8}', '\u{2dae}'),
('\u{2db0}', '\u{2db6}'),
('\u{2db8}', '\u{2dbe}'),
('\u{2dc0}', '\u{2dc6}'),
('\u{2dc8}', '\u{2dce}'),
('\u{2dd0}', '\u{2dd6}'),
('\u{2dd8}', '\u{2dde}'),
('\u{3006}', '\u{3006}'),
('\u{303c}', '\u{303c}'),
('\u{3041}', '\u{3096}'),
('\u{309f}', '\u{309f}'),
('\u{30a1}', '\u{30fa}'),
('\u{30ff}', '\u{30ff}'),
('\u{3105}', '\u{312f}'),
('\u{3131}', '\u{318e}'),
('\u{31a0}', '\u{31bf}'),
('\u{31f0}', '\u{31ff}'),
('\u{3400}', '\u{3400}'),
('\u{4dbf}', '\u{4dbf}'),
('\u{4e00}', '\u{4e00}'),
('\u{9fff}', '\u{a014}'),
('\u{a016}', '\u{a48c}'),
('\u{a4d0}', '\u{a4f7}'),
('\u{a500}', '\u{a60b}'),
('\u{a610}', '\u{a61f}'),
('\u{a62a}', '\u{a62b}'),
('\u{a66e}', '\u{a66e}'),
('\u{a6a0}', '\u{a6e5}'),
('\u{a78f}', '\u{a78f}'),
('\u{a7f7}', '\u{a7f7}'),
('\u{a7fb}', '\u{a801}'),
('\u{a803}', '\u{a805}'),
('\u{a807}', '\u{a80a}'),
('\u{a80c}', '\u{a822}'),
('\u{a840}', '\u{a873}'),
('\u{a882}', '\u{a8b3}'),
('\u{a8f2}', '\u{a8f7}'),
('\u{a8fb}', '\u{a8fb}'),
('\u{a8fd}', '\u{a8fe}'),
('\u{a90a}', '\u{a925}'),
('\u{a930}', '\u{a946}'),
('\u{a960}', '\u{a97c}'),
('\u{a984}', '\u{a9b2}'),
('\u{a9e0}', '\u{a9e4}'),
('\u{a9e7}', '\u{a9ef}'),
('\u{a9fa}', '\u{a9fe}'),
('\u{aa00}', '\u{aa28}'),
('\u{aa40}', '\u{aa42}'),
('\u{aa44}', '\u{aa4b}'),
('\u{aa60}', '\u{aa6f}'),
('\u{aa71}', '\u{aa76}'),
('\u{aa7a}', '\u{aa7a}'),
('\u{aa7e}', '\u{aaaf}'),
('\u{aab1}', '\u{aab1}'),
('\u{aab5}', '\u{aab6}'),
('\u{aab9}', '\u{aabd}'),
('\u{aac0}', '\u{aac0}'),
('\u{aac2}', '\u{aac2}'),
('\u{aadb}', '\u{aadc}'),
('\u{aae0}', '\u{aaea}'),
('\u{aaf2}', '\u{aaf2}'),
('\u{ab01}', '\u{ab06}'),
('\u{ab09}', '\u{ab0e}'),
('\u{ab11}', '\u{ab16}'),
('\u{ab20}', '\u{ab26}'),
('\u{ab28}', '\u{ab2e}'),
('\u{abc0}', '\u{abe2}'),
('\u{ac00}', '\u{ac00}'),
('\u{d7a3}', '\u{d7a3}'),
('\u{d7b0}', '\u{d7c6}'),
('\u{d7cb}', '\u{d7fb}'),
('\u{f900}', '\u{fa6d}'),
('\u{fa70}', '\u{fad9}'),
('\u{fb1d}', '\u{fb1d}'),
('\u{fb1f}', '\u{fb28}'),
('\u{fb2a}', '\u{fb36}'),
('\u{fb38}', '\u{fb3c}'),
('\u{fb3e}', '\u{fb3e}'),
('\u{fb40}', '\u{fb41}'),
('\u{fb43}', '\u{fb44}'),
('\u{fb46}', '\u{fbb1}'),
('\u{fbd3}', '\u{fd3d}'),
('\u{fd50}', '\u{fd8f}'),
('\u{fd92}', '\u{fdc7}'),
('\u{fdf0}', '\u{fdfb}'),
('\u{fe70}', '\u{fe74}'),
('\u{fe76}', '\u{fefc}'),
('\u{ff66}', '\u{ff6f}'),
('\u{ff71}', '\u{ff9d}'),
('\u{ffa0}', '\u{ffbe}'),
('\u{ffc2}', '\u{ffc7}'),
('\u{ffca}', '\u{ffcf}'),
('\u{ffd2}', '\u{ffd7}'),
('\u{ffda}', '\u{ffdc}'),
('\u{10000}', '\u{1000b}'),
('\u{1000d}', '\u{10026}'),
('\u{10028}', '\u{1003a}'),
('\u{1003c}', '\u{1003d}'),
('\u{1003f}', '\u{1004d}'),
('\u{10050}', '\u{1005d}'),
('\u{10080}', '\u{100fa}'),
('\u{10280}', '\u{1029c}'),
('\u{102a0}', '\u{102d0}'),
('\u{10300}', '\u{1031f}'),
('\u{1032d}', '\u{10340}'),
('\u{10342}', '\u{10349}'),
('\u{10350}', '\u{10375}'),
('\u{10380}', '\u{1039d}'),
('\u{103a0}', '\u{103c3}'),
('\u{103c8}', '\u{103cf}'),
('\u{10450}', '\u{1049d}'),
('\u{10500}', '\u{10527}'),
('\u{10530}', '\u{10563}'),
('\u{105c0}', '\u{105f3}'),
('\u{10600}', '\u{10736}'),
('\u{10740}', '\u{10755}'),
('\u{10760}', '\u{10767}'),
('\u{10800}', '\u{10805}'),
('\u{10808}', '\u{10808}'),
('\u{1080a}', '\u{10835}'),
('\u{10837}', '\u{10838}'),
('\u{1083c}', '\u{1083c}'),
('\u{1083f}', '\u{10855}'),
('\u{10860}', '\u{10876}'),
('\u{10880}', '\u{1089e}'),
('\u{108e0}', '\u{108f2}'),
('\u{108f4}', '\u{108f5}'),
('\u{10900}', '\u{10915}'),
('\u{10920}', '\u{10939}'),
('\u{10980}', '\u{109b7}'),
('\u{109be}', '\u{109bf}'),
('\u{10a00}', '\u{10a00}'),
('\u{10a10}', '\u{10a13}'),
('\u{10a15}', '\u{10a17}'),
('\u{10a19}', '\u{10a35}'),
('\u{10a60}', '\u{10a7c}'),
('\u{10a80}', '\u{10a9c}'),
('\u{10ac0}', '\u{10ac7}'),
('\u{10ac9}', '\u{10ae4}'),
('\u{10b00}', '\u{10b35}'),
('\u{10b40}', '\u{10b55}'),
('\u{10b60}', '\u{10b72}'),
('\u{10b80}', '\u{10b91}'),
('\u{10c00}', '\u{10c48}'),
('\u{10d00}', '\u{10d23}'),
('\u{10d4a}', '\u{10d4d}'),
('\u{10d4f}', '\u{10d4f}'),
('\u{10e80}', '\u{10ea9}'),
('\u{10eb0}', '\u{10eb1}'),
('\u{10ec2}', '\u{10ec4}'),
('\u{10f00}', '\u{10f1c}'),
('\u{10f27}', '\u{10f27}'),
('\u{10f30}', '\u{10f45}'),
('\u{10f70}', '\u{10f81}'),
('\u{10fb0}', '\u{10fc4}'),
('\u{10fe0}', '\u{10ff6}'),
('\u{11003}', '\u{11037}'),
('\u{11071}', '\u{11072}'),
('\u{11075}', '\u{11075}'),
('\u{11083}', '\u{110af}'),
('\u{110d0}', '\u{110e8}'),
('\u{11103}', '\u{11126}'),
('\u{11144}', '\u{11144}'),
('\u{11147}', '\u{11147}'),
('\u{11150}', '\u{11172}'),
('\u{11176}', '\u{11176}'),
('\u{11183}', '\u{111b2}'),
('\u{111c1}', '\u{111c4}'),
('\u{111da}', '\u{111da}'),
('\u{111dc}', '\u{111dc}'),
('\u{11200}', '\u{11211}'),
('\u{11213}', '\u{1122b}'),
('\u{1123f}', '\u{11240}'),
('\u{11280}', '\u{11286}'),
('\u{11288}', '\u{11288}'),
('\u{1128a}', '\u{1128d}'),
('\u{1128f}', '\u{1129d}'),
('\u{1129f}', '\u{112a8}'),
('\u{112b0}', '\u{112de}'),
('\u{11305}', '\u{1130c}'),
('\u{1130f}', '\u{11310}'),
('\u{11313}', '\u{11328}'),
('\u{1132a}', '\u{11330}'),
('\u{11332}', '\u{11333}'),
('\u{11335}', '\u{11339}'),
('\u{1133d}', '\u{1133d}'),
('\u{11350}', '\u{11350}'),
('\u{1135d}', '\u{11361}'),
('\u{11380}', '\u{11389}'),
('\u{1138b}', '\u{1138b}'),
('\u{1138e}', '\u{1138e}'),
('\u{11390}', '\u{113b5}'),
('\u{113b7}', '\u{113b7}'),
('\u{113d1}', '\u{113d1}'),
('\u{113d3}', '\u{113d3}'),
('\u{11400}', '\u{11434}'),
('\u{11447}', '\u{1144a}'),
('\u{1145f}', '\u{11461}'),
('\u{11480}', '\u{114af}'),
('\u{114c4}', '\u{114c5}'),
('\u{114c7}', '\u{114c7}'),
('\u{11580}', '\u{115ae}'),
('\u{115d8}', '\u{115db}'),
('\u{11600}', '\u{1162f}'),
('\u{11644}', '\u{11644}'),
('\u{11680}', '\u{116aa}'),
('\u{116b8}', '\u{116b8}'),
('\u{11700}', '\u{1171a}'),
('\u{11740}', '\u{11746}'),
('\u{11800}', '\u{1182b}'),
('\u{118ff}', '\u{11906}'),
('\u{11909}', '\u{11909}'),
('\u{1190c}', '\u{11913}'),
('\u{11915}', '\u{11916}'),
('\u{11918}', '\u{1192f}'),
('\u{1193f}', '\u{1193f}'),
('\u{11941}', '\u{11941}'),
('\u{119a0}', '\u{119a7}'),
('\u{119aa}', '\u{119d0}'),
('\u{119e1}', '\u{119e1}'),
('\u{119e3}', '\u{119e3}'),
('\u{11a00}', '\u{11a00}'),
('\u{11a0b}', '\u{11a32}'),
('\u{11a3a}', '\u{11a3a}'),
('\u{11a50}', '\u{11a50}'),
('\u{11a5c}', '\u{11a89}'),
('\u{11a9d}', '\u{11a9d}'),
('\u{11ab0}', '\u{11af8}'),
('\u{11bc0}', '\u{11be0}'),
('\u{11c00}', '\u{11c08}'),
('\u{11c0a}', '\u{11c2e}'),
('\u{11c40}', '\u{11c40}'),
('\u{11c72}', '\u{11c8f}'),
('\u{11d00}', '\u{11d06}'),
('\u{11d08}', '\u{11d09}'),
('\u{11d0b}', '\u{11d30}'),
('\u{11d46}', '\u{11d46}'),
('\u{11d60}', '\u{11d65}'),
('\u{11d67}', '\u{11d68}'),
('\u{11d6a}', '\u{11d89}'),
('\u{11d98}', '\u{11d98}'),
('\u{11ee0}', '\u{11ef2}'),
('\u{11f02}', '\u{11f02}'),
('\u{11f04}', '\u{11f10}'),
('\u{11f12}', '\u{11f33}'),
('\u{11fb0}', '\u{11fb0}'),
('\u{12000}', '\u{12399}'),
('\u{12480}', '\u{12543}'),
('\u{12f90}', '\u{12ff0}'),
('\u{13000}', '\u{1342f}'),
('\u{13441}', '\u{13446}'),
('\u{13460}', '\u{143fa}'),
('\u{14400}', '\u{14646}'),
('\u{16100}', '\u{1611d}'),
('\u{16800}', '\u{16a38}'),
('\u{16a40}', '\u{16a5e}'),
('\u{16a70}', '\u{16abe}'),
('\u{16ad0}', '\u{16aed}'),
('\u{16b00}', '\u{16b2f}'),
('\u{16b63}', '\u{16b77}'),
('\u{16b7d}', '\u{16b8f}'),
('\u{16d43}', '\u{16d6a}'),
('\u{16f00}', '\u{16f4a}'),
('\u{16f50}', '\u{16f50}'),
('\u{17000}', '\u{17000}'),
('\u{187f7}', '\u{187f7}'),
('\u{18800}', '\u{18cd5}'),
('\u{18cff}', '\u{18d00}'),
('\u{18d08}', '\u{18d08}'),
('\u{1b000}', '\u{1b122}'),
('\u{1b132}', '\u{1b132}'),
('\u{1b150}', '\u{1b152}'),
('\u{1b155}', '\u{1b155}'),
('\u{1b164}', '\u{1b167}'),
('\u{1b170}', '\u{1b2fb}'),
('\u{1bc00}', '\u{1bc6a}'),
('\u{1bc70}', '\u{1bc7c}'),
('\u{1bc80}', '\u{1bc88}'),
('\u{1bc90}', '\u{1bc99}'),
('\u{1df0a}', '\u{1df0a}'),
('\u{1e100}', '\u{1e12c}'),
('\u{1e14e}', '\u{1e14e}'),
('\u{1e290}', '\u{1e2ad}'),
('\u{1e2c0}', '\u{1e2eb}'),
('\u{1e4d0}', '\u{1e4ea}'),
('\u{1e5d0}', '\u{1e5ed}'),
('\u{1e5f0}', '\u{1e5f0}'),
('\u{1e7e0}', '\u{1e7e6}'),
('\u{1e7e8}', '\u{1e7eb}'),
('\u{1e7ed}', '\u{1e7ee}'),
('\u{1e7f0}', '\u{1e7fe}'),
('\u{1e800}', '\u{1e8c4}'),
('\u{1ee00}', '\u{1ee03}'),
('\u{1ee05}', '\u{1ee1f}'),
('\u{1ee21}', '\u{1ee22}'),
('\u{1ee24}', '\u{1ee24}'),
('\u{1ee27}', '\u{1ee27}'),
('\u{1ee29}', '\u{1ee32}'),
('\u{1ee34}', '\u{1ee37}'),
('\u{1ee39}', '\u{1ee39}'),
('\u{1ee3b}', '\u{1ee3b}'),
('\u{1ee42}', '\u{1ee42}'),
('\u{1ee47}', '\u{1ee47}'),
('\u{1ee49}', '\u{1ee49}'),
('\u{1ee4b}', '\u{1ee4b}'),
('\u{1ee4d}', '\u{1ee4f}'),
('\u{1ee51}', '\u{1ee52}'),
('\u{1ee54}', '\u{1ee54}'),
('\u{1ee57}', '\u{1ee57}'),
('\u{1ee59}', '\u{1ee59}'),
('\u{1ee5b}', '\u{1ee5b}'),
('\u{1ee5d}', '\u{1ee5d}'),
('\u{1ee5f}', '\u{1ee5f}'),
('\u{1ee61}', '\u{1ee62}'),
('\u{1ee64}', '\u{1ee64}'),
('\u{1ee67}', '\u{1ee6a}'),
('\u{1ee6c}', '\u{1ee72}'),
('\u{1ee74}', '\u{1ee77}'),
('\u{1ee79}', '\u{1ee7c}'),
('\u{1ee7e}', '\u{1ee7e}'),
('\u{1ee80}', '\u{1ee89}'),
('\u{1ee8b}', '\u{1ee9b}'),
('\u{1eea1}', '\u{1eea3}'),
('\u{1eea5}', '\u{1eea9}'),
('\u{1eeab}', '\u{1eebb}'),
('\u{20000}', '\u{20000}'),
('\u{2a6df}', '\u{2a6df}'),
('\u{2a700}', '\u{2a700}'),
('\u{2b739}', '\u{2b739}'),
('\u{2b740}', '\u{2b740}'),
('\u{2b81d}', '\u{2b81d}'),
('\u{2b820}', '\u{2b820}'),
('\u{2cea1}', '\u{2cea1}'),
('\u{2ceb0}', '\u{2ceb0}'),
('\u{2ebe0}', '\u{2ebe0}'),
('\u{2ebf0}', '\u{2ebf0}'),
('\u{2ee5d}', '\u{2ee5d}'),
('\u{2f800}', '\u{2fa1d}'),
('\u{30000}', '\u{30000}'),
('\u{3134a}', '\u{3134a}'),
('\u{31350}', '\u{31350}'),
('\u{323af}', '\u{323af}'),
];
pub fn alternate_general_category_lo() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_LO.iter().copied()).unwrap()
}
pub fn negate_general_category_lo() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_LO.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_PI: &[(char, char)] = &[
('\u{ab}', '\u{ab}'),
('\u{2018}', '\u{2018}'),
('\u{201b}', '\u{201c}'),
('\u{201f}', '\u{201f}'),
('\u{2039}', '\u{2039}'),
('\u{2e02}', '\u{2e02}'),
('\u{2e04}', '\u{2e04}'),
('\u{2e09}', '\u{2e09}'),
('\u{2e0c}', '\u{2e0c}'),
('\u{2e1c}', '\u{2e1c}'),
('\u{2e20}', '\u{2e20}'),
];
pub fn alternate_general_category_pi() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_PI.iter().copied()).unwrap()
}
pub fn negate_general_category_pi() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_PI.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_CF: &[(char, char)] = &[
('\u{ad}', '\u{ad}'),
('\u{600}', '\u{605}'),
('\u{61c}', '\u{61c}'),
('\u{6dd}', '\u{6dd}'),
('\u{70f}', '\u{70f}'),
('\u{890}', '\u{891}'),
('\u{8e2}', '\u{8e2}'),
('\u{180e}', '\u{180e}'),
('\u{200b}', '\u{200f}'),
('\u{202a}', '\u{202e}'),
('\u{2060}', '\u{2064}'),
('\u{2066}', '\u{206f}'),
('\u{feff}', '\u{feff}'),
('\u{fff9}', '\u{fffb}'),
('\u{110bd}', '\u{110bd}'),
('\u{110cd}', '\u{110cd}'),
('\u{13430}', '\u{1343f}'),
('\u{1bca0}', '\u{1bca3}'),
('\u{1d173}', '\u{1d17a}'),
('\u{e0001}', '\u{e0001}'),
('\u{e0020}', '\u{e007f}'),
];
pub fn alternate_general_category_cf() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_CF.iter().copied()).unwrap()
}
pub fn negate_general_category_cf() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_CF.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_NO: &[(char, char)] = &[
('\u{b2}', '\u{b3}'),
('\u{b9}', '\u{b9}'),
('\u{bc}', '\u{be}'),
('\u{9f4}', '\u{9f9}'),
('\u{b72}', '\u{b77}'),
('\u{bf0}', '\u{bf2}'),
('\u{c78}', '\u{c7e}'),
('\u{d58}', '\u{d5e}'),
('\u{d70}', '\u{d78}'),
('\u{f2a}', '\u{f33}'),
('\u{1369}', '\u{137c}'),
('\u{17f0}', '\u{17f9}'),
('\u{19da}', '\u{19da}'),
('\u{2070}', '\u{2070}'),
('\u{2074}', '\u{2079}'),
('\u{2080}', '\u{2089}'),
('\u{2150}', '\u{215f}'),
('\u{2189}', '\u{2189}'),
('\u{2460}', '\u{249b}'),
('\u{24ea}', '\u{24ff}'),
('\u{2776}', '\u{2793}'),
('\u{2cfd}', '\u{2cfd}'),
('\u{3192}', '\u{3195}'),
('\u{3220}', '\u{3229}'),
('\u{3248}', '\u{324f}'),
('\u{3251}', '\u{325f}'),
('\u{3280}', '\u{3289}'),
('\u{32b1}', '\u{32bf}'),
('\u{a830}', '\u{a835}'),
('\u{10107}', '\u{10133}'),
('\u{10175}', '\u{10178}'),
('\u{1018a}', '\u{1018b}'),
('\u{102e1}', '\u{102fb}'),
('\u{10320}', '\u{10323}'),
('\u{10858}', '\u{1085f}'),
('\u{10879}', '\u{1087f}'),
('\u{108a7}', '\u{108af}'),
('\u{108fb}', '\u{108ff}'),
('\u{10916}', '\u{1091b}'),
('\u{109bc}', '\u{109bd}'),
('\u{109c0}', '\u{109cf}'),
('\u{109d2}', '\u{109ff}'),
('\u{10a40}', '\u{10a48}'),
('\u{10a7d}', '\u{10a7e}'),
('\u{10a9d}', '\u{10a9f}'),
('\u{10aeb}', '\u{10aef}'),
('\u{10b58}', '\u{10b5f}'),
('\u{10b78}', '\u{10b7f}'),
('\u{10ba9}', '\u{10baf}'),
('\u{10cfa}', '\u{10cff}'),
('\u{10e60}', '\u{10e7e}'),
('\u{10f1d}', '\u{10f26}'),
('\u{10f51}', '\u{10f54}'),
('\u{10fc5}', '\u{10fcb}'),
('\u{11052}', '\u{11065}'),
('\u{111e1}', '\u{111f4}'),
('\u{1173a}', '\u{1173b}'),
('\u{118ea}', '\u{118f2}'),
('\u{11c5a}', '\u{11c6c}'),
('\u{11fc0}', '\u{11fd4}'),
('\u{16b5b}', '\u{16b61}'),
('\u{16e80}', '\u{16e96}'),
('\u{1d2c0}', '\u{1d2d3}'),
('\u{1d2e0}', '\u{1d2f3}'),
('\u{1d360}', '\u{1d378}'),
('\u{1e8c7}', '\u{1e8cf}'),
('\u{1ec71}', '\u{1ecab}'),
('\u{1ecad}', '\u{1ecaf}'),
('\u{1ecb1}', '\u{1ecb4}'),
('\u{1ed01}', '\u{1ed2d}'),
('\u{1ed2f}', '\u{1ed3d}'),
('\u{1f100}', '\u{1f10c}'),
];
pub fn alternate_general_category_no() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_NO.iter().copied()).unwrap()
}
pub fn negate_general_category_no() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_NO.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_PF: &[(char, char)] = &[
('\u{bb}', '\u{bb}'),
('\u{2019}', '\u{2019}'),
('\u{201d}', '\u{201d}'),
('\u{203a}', '\u{203a}'),
('\u{2e03}', '\u{2e03}'),
('\u{2e05}', '\u{2e05}'),
('\u{2e0a}', '\u{2e0a}'),
('\u{2e0d}', '\u{2e0d}'),
('\u{2e1d}', '\u{2e1d}'),
('\u{2e21}', '\u{2e21}'),
];
pub fn alternate_general_category_pf() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_PF.iter().copied()).unwrap()
}
pub fn negate_general_category_pf() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_PF.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_LT: &[(char, char)] = &[
('\u{1c5}', '\u{1c5}'),
('\u{1c8}', '\u{1c8}'),
('\u{1cb}', '\u{1cb}'),
('\u{1f2}', '\u{1f2}'),
('\u{1f88}', '\u{1f8f}'),
('\u{1f98}', '\u{1f9f}'),
('\u{1fa8}', '\u{1faf}'),
('\u{1fbc}', '\u{1fbc}'),
('\u{1fcc}', '\u{1fcc}'),
('\u{1ffc}', '\u{1ffc}'),
];
pub fn alternate_general_category_lt() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_LT.iter().copied()).unwrap()
}
pub fn negate_general_category_lt() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_LT.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_LM: &[(char, char)] = &[
('\u{2b0}', '\u{2c1}'),
('\u{2c6}', '\u{2d1}'),
('\u{2e0}', '\u{2e4}'),
('\u{2ec}', '\u{2ec}'),
('\u{2ee}', '\u{2ee}'),
('\u{374}', '\u{374}'),
('\u{37a}', '\u{37a}'),
('\u{559}', '\u{559}'),
('\u{640}', '\u{640}'),
('\u{6e5}', '\u{6e6}'),
('\u{7f4}', '\u{7f5}'),
('\u{7fa}', '\u{7fa}'),
('\u{81a}', '\u{81a}'),
('\u{824}', '\u{824}'),
('\u{828}', '\u{828}'),
('\u{8c9}', '\u{8c9}'),
('\u{971}', '\u{971}'),
('\u{e46}', '\u{e46}'),
('\u{ec6}', '\u{ec6}'),
('\u{10fc}', '\u{10fc}'),
('\u{17d7}', '\u{17d7}'),
('\u{1843}', '\u{1843}'),
('\u{1aa7}', '\u{1aa7}'),
('\u{1c78}', '\u{1c7d}'),
('\u{1d2c}', '\u{1d6a}'),
('\u{1d78}', '\u{1d78}'),
('\u{1d9b}', '\u{1dbf}'),
('\u{2071}', '\u{2071}'),
('\u{207f}', '\u{207f}'),
('\u{2090}', '\u{209c}'),
('\u{2c7c}', '\u{2c7d}'),
('\u{2d6f}', '\u{2d6f}'),
('\u{2e2f}', '\u{2e2f}'),
('\u{3005}', '\u{3005}'),
('\u{3031}', '\u{3035}'),
('\u{303b}', '\u{303b}'),
('\u{309d}', '\u{309e}'),
('\u{30fc}', '\u{30fe}'),
('\u{a015}', '\u{a015}'),
('\u{a4f8}', '\u{a4fd}'),
('\u{a60c}', '\u{a60c}'),
('\u{a67f}', '\u{a67f}'),
('\u{a69c}', '\u{a69d}'),
('\u{a717}', '\u{a71f}'),
('\u{a770}', '\u{a770}'),
('\u{a788}', '\u{a788}'),
('\u{a7f2}', '\u{a7f4}'),
('\u{a7f8}', '\u{a7f9}'),
('\u{a9cf}', '\u{a9cf}'),
('\u{a9e6}', '\u{a9e6}'),
('\u{aa70}', '\u{aa70}'),
('\u{aadd}', '\u{aadd}'),
('\u{aaf3}', '\u{aaf4}'),
('\u{ab5c}', '\u{ab5f}'),
('\u{ab69}', '\u{ab69}'),
('\u{ff70}', '\u{ff70}'),
('\u{ff9e}', '\u{ff9f}'),
('\u{10780}', '\u{10785}'),
('\u{10787}', '\u{107b0}'),
('\u{107b2}', '\u{107ba}'),
('\u{10d4e}', '\u{10d4e}'),
('\u{10d6f}', '\u{10d6f}'),
('\u{16b40}', '\u{16b43}'),
('\u{16d40}', '\u{16d42}'),
('\u{16d6b}', '\u{16d6c}'),
('\u{16f93}', '\u{16f9f}'),
('\u{16fe0}', '\u{16fe1}'),
('\u{16fe3}', '\u{16fe3}'),
('\u{1aff0}', '\u{1aff3}'),
('\u{1aff5}', '\u{1affb}'),
('\u{1affd}', '\u{1affe}'),
('\u{1e030}', '\u{1e06d}'),
('\u{1e137}', '\u{1e13d}'),
('\u{1e4eb}', '\u{1e4eb}'),
('\u{1e94b}', '\u{1e94b}'),
];
pub fn alternate_general_category_lm() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_LM.iter().copied()).unwrap()
}
pub fn negate_general_category_lm() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_LM.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_MN: &[(char, char)] = &[
('\u{300}', '\u{36f}'),
('\u{483}', '\u{487}'),
('\u{591}', '\u{5bd}'),
('\u{5bf}', '\u{5bf}'),
('\u{5c1}', '\u{5c2}'),
('\u{5c4}', '\u{5c5}'),
('\u{5c7}', '\u{5c7}'),
('\u{610}', '\u{61a}'),
('\u{64b}', '\u{65f}'),
('\u{670}', '\u{670}'),
('\u{6d6}', '\u{6dc}'),
('\u{6df}', '\u{6e4}'),
('\u{6e7}', '\u{6e8}'),
('\u{6ea}', '\u{6ed}'),
('\u{711}', '\u{711}'),
('\u{730}', '\u{74a}'),
('\u{7a6}', '\u{7b0}'),
('\u{7eb}', '\u{7f3}'),
('\u{7fd}', '\u{7fd}'),
('\u{816}', '\u{819}'),
('\u{81b}', '\u{823}'),
('\u{825}', '\u{827}'),
('\u{829}', '\u{82d}'),
('\u{859}', '\u{85b}'),
('\u{897}', '\u{89f}'),
('\u{8ca}', '\u{8e1}'),
('\u{8e3}', '\u{902}'),
('\u{93a}', '\u{93a}'),
('\u{93c}', '\u{93c}'),
('\u{941}', '\u{948}'),
('\u{94d}', '\u{94d}'),
('\u{951}', '\u{957}'),
('\u{962}', '\u{963}'),
('\u{981}', '\u{981}'),
('\u{9bc}', '\u{9bc}'),
('\u{9c1}', '\u{9c4}'),
('\u{9cd}', '\u{9cd}'),
('\u{9e2}', '\u{9e3}'),
('\u{9fe}', '\u{9fe}'),
('\u{a01}', '\u{a02}'),
('\u{a3c}', '\u{a3c}'),
('\u{a41}', '\u{a42}'),
('\u{a47}', '\u{a48}'),
('\u{a4b}', '\u{a4d}'),
('\u{a51}', '\u{a51}'),
('\u{a70}', '\u{a71}'),
('\u{a75}', '\u{a75}'),
('\u{a81}', '\u{a82}'),
('\u{abc}', '\u{abc}'),
('\u{ac1}', '\u{ac5}'),
('\u{ac7}', '\u{ac8}'),
('\u{acd}', '\u{acd}'),
('\u{ae2}', '\u{ae3}'),
('\u{afa}', '\u{aff}'),
('\u{b01}', '\u{b01}'),
('\u{b3c}', '\u{b3c}'),
('\u{b3f}', '\u{b3f}'),
('\u{b41}', '\u{b44}'),
('\u{b4d}', '\u{b4d}'),
('\u{b55}', '\u{b56}'),
('\u{b62}', '\u{b63}'),
('\u{b82}', '\u{b82}'),
('\u{bc0}', '\u{bc0}'),
('\u{bcd}', '\u{bcd}'),
('\u{c00}', '\u{c00}'),
('\u{c04}', '\u{c04}'),
('\u{c3c}', '\u{c3c}'),
('\u{c3e}', '\u{c40}'),
('\u{c46}', '\u{c48}'),
('\u{c4a}', '\u{c4d}'),
('\u{c55}', '\u{c56}'),
('\u{c62}', '\u{c63}'),
('\u{c81}', '\u{c81}'),
('\u{cbc}', '\u{cbc}'),
('\u{cbf}', '\u{cbf}'),
('\u{cc6}', '\u{cc6}'),
('\u{ccc}', '\u{ccd}'),
('\u{ce2}', '\u{ce3}'),
('\u{d00}', '\u{d01}'),
('\u{d3b}', '\u{d3c}'),
('\u{d41}', '\u{d44}'),
('\u{d4d}', '\u{d4d}'),
('\u{d62}', '\u{d63}'),
('\u{d81}', '\u{d81}'),
('\u{dca}', '\u{dca}'),
('\u{dd2}', '\u{dd4}'),
('\u{dd6}', '\u{dd6}'),
('\u{e31}', '\u{e31}'),
('\u{e34}', '\u{e3a}'),
('\u{e47}', '\u{e4e}'),
('\u{eb1}', '\u{eb1}'),
('\u{eb4}', '\u{ebc}'),
('\u{ec8}', '\u{ece}'),
('\u{f18}', '\u{f19}'),
('\u{f35}', '\u{f35}'),
('\u{f37}', '\u{f37}'),
('\u{f39}', '\u{f39}'),
('\u{f71}', '\u{f7e}'),
('\u{f80}', '\u{f84}'),
('\u{f86}', '\u{f87}'),
('\u{f8d}', '\u{f97}'),
('\u{f99}', '\u{fbc}'),
('\u{fc6}', '\u{fc6}'),
('\u{102d}', '\u{1030}'),
('\u{1032}', '\u{1037}'),
('\u{1039}', '\u{103a}'),
('\u{103d}', '\u{103e}'),
('\u{1058}', '\u{1059}'),
('\u{105e}', '\u{1060}'),
('\u{1071}', '\u{1074}'),
('\u{1082}', '\u{1082}'),
('\u{1085}', '\u{1086}'),
('\u{108d}', '\u{108d}'),
('\u{109d}', '\u{109d}'),
('\u{135d}', '\u{135f}'),
('\u{1712}', '\u{1714}'),
('\u{1732}', '\u{1733}'),
('\u{1752}', '\u{1753}'),
('\u{1772}', '\u{1773}'),
('\u{17b4}', '\u{17b5}'),
('\u{17b7}', '\u{17bd}'),
('\u{17c6}', '\u{17c6}'),
('\u{17c9}', '\u{17d3}'),
('\u{17dd}', '\u{17dd}'),
('\u{180b}', '\u{180d}'),
('\u{180f}', '\u{180f}'),
('\u{1885}', '\u{1886}'),
('\u{18a9}', '\u{18a9}'),
('\u{1920}', '\u{1922}'),
('\u{1927}', '\u{1928}'),
('\u{1932}', '\u{1932}'),
('\u{1939}', '\u{193b}'),
('\u{1a17}', '\u{1a18}'),
('\u{1a1b}', '\u{1a1b}'),
('\u{1a56}', '\u{1a56}'),
('\u{1a58}', '\u{1a5e}'),
('\u{1a60}', '\u{1a60}'),
('\u{1a62}', '\u{1a62}'),
('\u{1a65}', '\u{1a6c}'),
('\u{1a73}', '\u{1a7c}'),
('\u{1a7f}', '\u{1a7f}'),
('\u{1ab0}', '\u{1abd}'),
('\u{1abf}', '\u{1ace}'),
('\u{1b00}', '\u{1b03}'),
('\u{1b34}', '\u{1b34}'),
('\u{1b36}', '\u{1b3a}'),
('\u{1b3c}', '\u{1b3c}'),
('\u{1b42}', '\u{1b42}'),
('\u{1b6b}', '\u{1b73}'),
('\u{1b80}', '\u{1b81}'),
('\u{1ba2}', '\u{1ba5}'),
('\u{1ba8}', '\u{1ba9}'),
('\u{1bab}', '\u{1bad}'),
('\u{1be6}', '\u{1be6}'),
('\u{1be8}', '\u{1be9}'),
('\u{1bed}', '\u{1bed}'),
('\u{1bef}', '\u{1bf1}'),
('\u{1c2c}', '\u{1c33}'),
('\u{1c36}', '\u{1c37}'),
('\u{1cd0}', '\u{1cd2}'),
('\u{1cd4}', '\u{1ce0}'),
('\u{1ce2}', '\u{1ce8}'),
('\u{1ced}', '\u{1ced}'),
('\u{1cf4}', '\u{1cf4}'),
('\u{1cf8}', '\u{1cf9}'),
('\u{1dc0}', '\u{1dff}'),
('\u{20d0}', '\u{20dc}'),
('\u{20e1}', '\u{20e1}'),
('\u{20e5}', '\u{20f0}'),
('\u{2cef}', '\u{2cf1}'),
('\u{2d7f}', '\u{2d7f}'),
('\u{2de0}', '\u{2dff}'),
('\u{302a}', '\u{302d}'),
('\u{3099}', '\u{309a}'),
('\u{a66f}', '\u{a66f}'),
('\u{a674}', '\u{a67d}'),
('\u{a69e}', '\u{a69f}'),
('\u{a6f0}', '\u{a6f1}'),
('\u{a802}', '\u{a802}'),
('\u{a806}', '\u{a806}'),
('\u{a80b}', '\u{a80b}'),
('\u{a825}', '\u{a826}'),
('\u{a82c}', '\u{a82c}'),
('\u{a8c4}', '\u{a8c5}'),
('\u{a8e0}', '\u{a8f1}'),
('\u{a8ff}', '\u{a8ff}'),
('\u{a926}', '\u{a92d}'),
('\u{a947}', '\u{a951}'),
('\u{a980}', '\u{a982}'),
('\u{a9b3}', '\u{a9b3}'),
('\u{a9b6}', '\u{a9b9}'),
('\u{a9bc}', '\u{a9bd}'),
('\u{a9e5}', '\u{a9e5}'),
('\u{aa29}', '\u{aa2e}'),
('\u{aa31}', '\u{aa32}'),
('\u{aa35}', '\u{aa36}'),
('\u{aa43}', '\u{aa43}'),
('\u{aa4c}', '\u{aa4c}'),
('\u{aa7c}', '\u{aa7c}'),
('\u{aab0}', '\u{aab0}'),
('\u{aab2}', '\u{aab4}'),
('\u{aab7}', '\u{aab8}'),
('\u{aabe}', '\u{aabf}'),
('\u{aac1}', '\u{aac1}'),
('\u{aaec}', '\u{aaed}'),
('\u{aaf6}', '\u{aaf6}'),
('\u{abe5}', '\u{abe5}'),
('\u{abe8}', '\u{abe8}'),
('\u{abed}', '\u{abed}'),
('\u{fb1e}', '\u{fb1e}'),
('\u{fe00}', '\u{fe0f}'),
('\u{fe20}', '\u{fe2f}'),
('\u{101fd}', '\u{101fd}'),
('\u{102e0}', '\u{102e0}'),
('\u{10376}', '\u{1037a}'),
('\u{10a01}', '\u{10a03}'),
('\u{10a05}', '\u{10a06}'),
('\u{10a0c}', '\u{10a0f}'),
('\u{10a38}', '\u{10a3a}'),
('\u{10a3f}', '\u{10a3f}'),
('\u{10ae5}', '\u{10ae6}'),
('\u{10d24}', '\u{10d27}'),
('\u{10d69}', '\u{10d6d}'),
('\u{10eab}', '\u{10eac}'),
('\u{10efc}', '\u{10eff}'),
('\u{10f46}', '\u{10f50}'),
('\u{10f82}', '\u{10f85}'),
('\u{11001}', '\u{11001}'),
('\u{11038}', '\u{11046}'),
('\u{11070}', '\u{11070}'),
('\u{11073}', '\u{11074}'),
('\u{1107f}', '\u{11081}'),
('\u{110b3}', '\u{110b6}'),
('\u{110b9}', '\u{110ba}'),
('\u{110c2}', '\u{110c2}'),
('\u{11100}', '\u{11102}'),
('\u{11127}', '\u{1112b}'),
('\u{1112d}', '\u{11134}'),
('\u{11173}', '\u{11173}'),
('\u{11180}', '\u{11181}'),
('\u{111b6}', '\u{111be}'),
('\u{111c9}', '\u{111cc}'),
('\u{111cf}', '\u{111cf}'),
('\u{1122f}', '\u{11231}'),
('\u{11234}', '\u{11234}'),
('\u{11236}', '\u{11237}'),
('\u{1123e}', '\u{1123e}'),
('\u{11241}', '\u{11241}'),
('\u{112df}', '\u{112df}'),
('\u{112e3}', '\u{112ea}'),
('\u{11300}', '\u{11301}'),
('\u{1133b}', '\u{1133c}'),
('\u{11340}', '\u{11340}'),
('\u{11366}', '\u{1136c}'),
('\u{11370}', '\u{11374}'),
('\u{113bb}', '\u{113c0}'),
('\u{113ce}', '\u{113ce}'),
('\u{113d0}', '\u{113d0}'),
('\u{113d2}', '\u{113d2}'),
('\u{113e1}', '\u{113e2}'),
('\u{11438}', '\u{1143f}'),
('\u{11442}', '\u{11444}'),
('\u{11446}', '\u{11446}'),
('\u{1145e}', '\u{1145e}'),
('\u{114b3}', '\u{114b8}'),
('\u{114ba}', '\u{114ba}'),
('\u{114bf}', '\u{114c0}'),
('\u{114c2}', '\u{114c3}'),
('\u{115b2}', '\u{115b5}'),
('\u{115bc}', '\u{115bd}'),
('\u{115bf}', '\u{115c0}'),
('\u{115dc}', '\u{115dd}'),
('\u{11633}', '\u{1163a}'),
('\u{1163d}', '\u{1163d}'),
('\u{1163f}', '\u{11640}'),
('\u{116ab}', '\u{116ab}'),
('\u{116ad}', '\u{116ad}'),
('\u{116b0}', '\u{116b5}'),
('\u{116b7}', '\u{116b7}'),
('\u{1171d}', '\u{1171d}'),
('\u{1171f}', '\u{1171f}'),
('\u{11722}', '\u{11725}'),
('\u{11727}', '\u{1172b}'),
('\u{1182f}', '\u{11837}'),
('\u{11839}', '\u{1183a}'),
('\u{1193b}', '\u{1193c}'),
('\u{1193e}', '\u{1193e}'),
('\u{11943}', '\u{11943}'),
('\u{119d4}', '\u{119d7}'),
('\u{119da}', '\u{119db}'),
('\u{119e0}', '\u{119e0}'),
('\u{11a01}', '\u{11a0a}'),
('\u{11a33}', '\u{11a38}'),
('\u{11a3b}', '\u{11a3e}'),
('\u{11a47}', '\u{11a47}'),
('\u{11a51}', '\u{11a56}'),
('\u{11a59}', '\u{11a5b}'),
('\u{11a8a}', '\u{11a96}'),
('\u{11a98}', '\u{11a99}'),
('\u{11c30}', '\u{11c36}'),
('\u{11c38}', '\u{11c3d}'),
('\u{11c3f}', '\u{11c3f}'),
('\u{11c92}', '\u{11ca7}'),
('\u{11caa}', '\u{11cb0}'),
('\u{11cb2}', '\u{11cb3}'),
('\u{11cb5}', '\u{11cb6}'),
('\u{11d31}', '\u{11d36}'),
('\u{11d3a}', '\u{11d3a}'),
('\u{11d3c}', '\u{11d3d}'),
('\u{11d3f}', '\u{11d45}'),
('\u{11d47}', '\u{11d47}'),
('\u{11d90}', '\u{11d91}'),
('\u{11d95}', '\u{11d95}'),
('\u{11d97}', '\u{11d97}'),
('\u{11ef3}', '\u{11ef4}'),
('\u{11f00}', '\u{11f01}'),
('\u{11f36}', '\u{11f3a}'),
('\u{11f40}', '\u{11f40}'),
('\u{11f42}', '\u{11f42}'),
('\u{11f5a}', '\u{11f5a}'),
('\u{13440}', '\u{13440}'),
('\u{13447}', '\u{13455}'),
('\u{1611e}', '\u{16129}'),
('\u{1612d}', '\u{1612f}'),
('\u{16af0}', '\u{16af4}'),
('\u{16b30}', '\u{16b36}'),
('\u{16f4f}', '\u{16f4f}'),
('\u{16f8f}', '\u{16f92}'),
('\u{16fe4}', '\u{16fe4}'),
('\u{1bc9d}', '\u{1bc9e}'),
('\u{1cf00}', '\u{1cf2d}'),
('\u{1cf30}', '\u{1cf46}'),
('\u{1d167}', '\u{1d169}'),
('\u{1d17b}', '\u{1d182}'),
('\u{1d185}', '\u{1d18b}'),
('\u{1d1aa}', '\u{1d1ad}'),
('\u{1d242}', '\u{1d244}'),
('\u{1da00}', '\u{1da36}'),
('\u{1da3b}', '\u{1da6c}'),
('\u{1da75}', '\u{1da75}'),
('\u{1da84}', '\u{1da84}'),
('\u{1da9b}', '\u{1da9f}'),
('\u{1daa1}', '\u{1daaf}'),
('\u{1e000}', '\u{1e006}'),
('\u{1e008}', '\u{1e018}'),
('\u{1e01b}', '\u{1e021}'),
('\u{1e023}', '\u{1e024}'),
('\u{1e026}', '\u{1e02a}'),
('\u{1e08f}', '\u{1e08f}'),
('\u{1e130}', '\u{1e136}'),
('\u{1e2ae}', '\u{1e2ae}'),
('\u{1e2ec}', '\u{1e2ef}'),
('\u{1e4ec}', '\u{1e4ef}'),
('\u{1e5ee}', '\u{1e5ef}'),
('\u{1e8d0}', '\u{1e8d6}'),
('\u{1e944}', '\u{1e94a}'),
('\u{e0100}', '\u{e01ef}'),
];
pub fn alternate_general_category_mn() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_MN.iter().copied()).unwrap()
}
pub fn negate_general_category_mn() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_MN.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_ME: &[(char, char)] = &[
('\u{488}', '\u{489}'),
('\u{1abe}', '\u{1abe}'),
('\u{20dd}', '\u{20e0}'),
('\u{20e2}', '\u{20e4}'),
('\u{a670}', '\u{a672}'),
];
pub fn alternate_general_category_me() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_ME.iter().copied()).unwrap()
}
pub fn negate_general_category_me() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_ME.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_MC: &[(char, char)] = &[
('\u{903}', '\u{903}'),
('\u{93b}', '\u{93b}'),
('\u{93e}', '\u{940}'),
('\u{949}', '\u{94c}'),
('\u{94e}', '\u{94f}'),
('\u{982}', '\u{983}'),
('\u{9be}', '\u{9c0}'),
('\u{9c7}', '\u{9c8}'),
('\u{9cb}', '\u{9cc}'),
('\u{9d7}', '\u{9d7}'),
('\u{a03}', '\u{a03}'),
('\u{a3e}', '\u{a40}'),
('\u{a83}', '\u{a83}'),
('\u{abe}', '\u{ac0}'),
('\u{ac9}', '\u{ac9}'),
('\u{acb}', '\u{acc}'),
('\u{b02}', '\u{b03}'),
('\u{b3e}', '\u{b3e}'),
('\u{b40}', '\u{b40}'),
('\u{b47}', '\u{b48}'),
('\u{b4b}', '\u{b4c}'),
('\u{b57}', '\u{b57}'),
('\u{bbe}', '\u{bbf}'),
('\u{bc1}', '\u{bc2}'),
('\u{bc6}', '\u{bc8}'),
('\u{bca}', '\u{bcc}'),
('\u{bd7}', '\u{bd7}'),
('\u{c01}', '\u{c03}'),
('\u{c41}', '\u{c44}'),
('\u{c82}', '\u{c83}'),
('\u{cbe}', '\u{cbe}'),
('\u{cc0}', '\u{cc4}'),
('\u{cc7}', '\u{cc8}'),
('\u{cca}', '\u{ccb}'),
('\u{cd5}', '\u{cd6}'),
('\u{cf3}', '\u{cf3}'),
('\u{d02}', '\u{d03}'),
('\u{d3e}', '\u{d40}'),
('\u{d46}', '\u{d48}'),
('\u{d4a}', '\u{d4c}'),
('\u{d57}', '\u{d57}'),
('\u{d82}', '\u{d83}'),
('\u{dcf}', '\u{dd1}'),
('\u{dd8}', '\u{ddf}'),
('\u{df2}', '\u{df3}'),
('\u{f3e}', '\u{f3f}'),
('\u{f7f}', '\u{f7f}'),
('\u{102b}', '\u{102c}'),
('\u{1031}', '\u{1031}'),
('\u{1038}', '\u{1038}'),
('\u{103b}', '\u{103c}'),
('\u{1056}', '\u{1057}'),
('\u{1062}', '\u{1064}'),
('\u{1067}', '\u{106d}'),
('\u{1083}', '\u{1084}'),
('\u{1087}', '\u{108c}'),
('\u{108f}', '\u{108f}'),
('\u{109a}', '\u{109c}'),
('\u{1715}', '\u{1715}'),
('\u{1734}', '\u{1734}'),
('\u{17b6}', '\u{17b6}'),
('\u{17be}', '\u{17c5}'),
('\u{17c7}', '\u{17c8}'),
('\u{1923}', '\u{1926}'),
('\u{1929}', '\u{192b}'),
('\u{1930}', '\u{1931}'),
('\u{1933}', '\u{1938}'),
('\u{1a19}', '\u{1a1a}'),
('\u{1a55}', '\u{1a55}'),
('\u{1a57}', '\u{1a57}'),
('\u{1a61}', '\u{1a61}'),
('\u{1a63}', '\u{1a64}'),
('\u{1a6d}', '\u{1a72}'),
('\u{1b04}', '\u{1b04}'),
('\u{1b35}', '\u{1b35}'),
('\u{1b3b}', '\u{1b3b}'),
('\u{1b3d}', '\u{1b41}'),
('\u{1b43}', '\u{1b44}'),
('\u{1b82}', '\u{1b82}'),
('\u{1ba1}', '\u{1ba1}'),
('\u{1ba6}', '\u{1ba7}'),
('\u{1baa}', '\u{1baa}'),
('\u{1be7}', '\u{1be7}'),
('\u{1bea}', '\u{1bec}'),
('\u{1bee}', '\u{1bee}'),
('\u{1bf2}', '\u{1bf3}'),
('\u{1c24}', '\u{1c2b}'),
('\u{1c34}', '\u{1c35}'),
('\u{1ce1}', '\u{1ce1}'),
('\u{1cf7}', '\u{1cf7}'),
('\u{302e}', '\u{302f}'),
('\u{a823}', '\u{a824}'),
('\u{a827}', '\u{a827}'),
('\u{a880}', '\u{a881}'),
('\u{a8b4}', '\u{a8c3}'),
('\u{a952}', '\u{a953}'),
('\u{a983}', '\u{a983}'),
('\u{a9b4}', '\u{a9b5}'),
('\u{a9ba}', '\u{a9bb}'),
('\u{a9be}', '\u{a9c0}'),
('\u{aa2f}', '\u{aa30}'),
('\u{aa33}', '\u{aa34}'),
('\u{aa4d}', '\u{aa4d}'),
('\u{aa7b}', '\u{aa7b}'),
('\u{aa7d}', '\u{aa7d}'),
('\u{aaeb}', '\u{aaeb}'),
('\u{aaee}', '\u{aaef}'),
('\u{aaf5}', '\u{aaf5}'),
('\u{abe3}', '\u{abe4}'),
('\u{abe6}', '\u{abe7}'),
('\u{abe9}', '\u{abea}'),
('\u{abec}', '\u{abec}'),
('\u{11000}', '\u{11000}'),
('\u{11002}', '\u{11002}'),
('\u{11082}', '\u{11082}'),
('\u{110b0}', '\u{110b2}'),
('\u{110b7}', '\u{110b8}'),
('\u{1112c}', '\u{1112c}'),
('\u{11145}', '\u{11146}'),
('\u{11182}', '\u{11182}'),
('\u{111b3}', '\u{111b5}'),
('\u{111bf}', '\u{111c0}'),
('\u{111ce}', '\u{111ce}'),
('\u{1122c}', '\u{1122e}'),
('\u{11232}', '\u{11233}'),
('\u{11235}', '\u{11235}'),
('\u{112e0}', '\u{112e2}'),
('\u{11302}', '\u{11303}'),
('\u{1133e}', '\u{1133f}'),
('\u{11341}', '\u{11344}'),
('\u{11347}', '\u{11348}'),
('\u{1134b}', '\u{1134d}'),
('\u{11357}', '\u{11357}'),
('\u{11362}', '\u{11363}'),
('\u{113b8}', '\u{113ba}'),
('\u{113c2}', '\u{113c2}'),
('\u{113c5}', '\u{113c5}'),
('\u{113c7}', '\u{113ca}'),
('\u{113cc}', '\u{113cd}'),
('\u{113cf}', '\u{113cf}'),
('\u{11435}', '\u{11437}'),
('\u{11440}', '\u{11441}'),
('\u{11445}', '\u{11445}'),
('\u{114b0}', '\u{114b2}'),
('\u{114b9}', '\u{114b9}'),
('\u{114bb}', '\u{114be}'),
('\u{114c1}', '\u{114c1}'),
('\u{115af}', '\u{115b1}'),
('\u{115b8}', '\u{115bb}'),
('\u{115be}', '\u{115be}'),
('\u{11630}', '\u{11632}'),
('\u{1163b}', '\u{1163c}'),
('\u{1163e}', '\u{1163e}'),
('\u{116ac}', '\u{116ac}'),
('\u{116ae}', '\u{116af}'),
('\u{116b6}', '\u{116b6}'),
('\u{1171e}', '\u{1171e}'),
('\u{11720}', '\u{11721}'),
('\u{11726}', '\u{11726}'),
('\u{1182c}', '\u{1182e}'),
('\u{11838}', '\u{11838}'),
('\u{11930}', '\u{11935}'),
('\u{11937}', '\u{11938}'),
('\u{1193d}', '\u{1193d}'),
('\u{11940}', '\u{11940}'),
('\u{11942}', '\u{11942}'),
('\u{119d1}', '\u{119d3}'),
('\u{119dc}', '\u{119df}'),
('\u{119e4}', '\u{119e4}'),
('\u{11a39}', '\u{11a39}'),
('\u{11a57}', '\u{11a58}'),
('\u{11a97}', '\u{11a97}'),
('\u{11c2f}', '\u{11c2f}'),
('\u{11c3e}', '\u{11c3e}'),
('\u{11ca9}', '\u{11ca9}'),
('\u{11cb1}', '\u{11cb1}'),
('\u{11cb4}', '\u{11cb4}'),
('\u{11d8a}', '\u{11d8e}'),
('\u{11d93}', '\u{11d94}'),
('\u{11d96}', '\u{11d96}'),
('\u{11ef5}', '\u{11ef6}'),
('\u{11f03}', '\u{11f03}'),
('\u{11f34}', '\u{11f35}'),
('\u{11f3e}', '\u{11f3f}'),
('\u{11f41}', '\u{11f41}'),
('\u{1612a}', '\u{1612c}'),
('\u{16f51}', '\u{16f87}'),
('\u{16ff0}', '\u{16ff1}'),
('\u{1d165}', '\u{1d166}'),
('\u{1d16d}', '\u{1d172}'),
];
pub fn alternate_general_category_mc() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_MC.iter().copied()).unwrap()
}
pub fn negate_general_category_mc() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_MC.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_NL: &[(char, char)] = &[
('\u{16ee}', '\u{16f0}'),
('\u{2160}', '\u{2182}'),
('\u{2185}', '\u{2188}'),
('\u{3007}', '\u{3007}'),
('\u{3021}', '\u{3029}'),
('\u{3038}', '\u{303a}'),
('\u{a6e6}', '\u{a6ef}'),
('\u{10140}', '\u{10174}'),
('\u{10341}', '\u{10341}'),
('\u{1034a}', '\u{1034a}'),
('\u{103d1}', '\u{103d5}'),
('\u{12400}', '\u{1246e}'),
];
pub fn alternate_general_category_nl() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_NL.iter().copied()).unwrap()
}
pub fn negate_general_category_nl() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_NL.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_ZL: &[(char, char)] = &[('\u{2028}', '\u{2028}')];
pub fn alternate_general_category_zl() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_ZL.iter().copied()).unwrap()
}
pub fn negate_general_category_zl() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_ZL.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_ZP: &[(char, char)] = &[('\u{2029}', '\u{2029}')];
pub fn alternate_general_category_zp() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_ZP.iter().copied()).unwrap()
}
pub fn negate_general_category_zp() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_ZP.iter().copied()).unwrap()
}
pub const GENERAL_CATEGORY_CO: &[(char, char)] = &[
('\u{e000}', '\u{e000}'),
('\u{f8ff}', '\u{f8ff}'),
('\u{f0000}', '\u{f0000}'),
('\u{ffffd}', '\u{ffffd}'),
('\u{100000}', '\u{100000}'),
('\u{10fffd}', '\u{10fffd}'),
];
pub fn alternate_general_category_co() -> ASTNode<char> {
ASTNode::alternate_all(GENERAL_CATEGORY_CO.iter().copied()).unwrap()
}
pub fn negate_general_category_co() -> ASTNode<char> {
ASTNode::negate_all(GENERAL_CATEGORY_CO.iter().copied()).unwrap()
}
pub fn iterate_general_category_c() -> impl Iterator<Item = (char, char)> {
GENERAL_CATEGORY_CO
.iter()
.chain(GENERAL_CATEGORY_CF.iter())
.chain(GENERAL_CATEGORY_CC.iter())
.copied()
}
pub fn iterate_general_category_z() -> impl Iterator<Item = (char, char)> {
GENERAL_CATEGORY_ZP
.iter()
.chain(GENERAL_CATEGORY_ZL.iter())
.chain(GENERAL_CATEGORY_ZS.iter())
.copied()
}
pub fn iterate_general_category_p() -> impl Iterator<Item = (char, char)> {
GENERAL_CATEGORY_PF
.iter()
.chain(GENERAL_CATEGORY_PI.iter())
.chain(GENERAL_CATEGORY_PC.iter())
.chain(GENERAL_CATEGORY_PD.iter())
.chain(GENERAL_CATEGORY_PE.iter())
.chain(GENERAL_CATEGORY_PS.iter())
.chain(GENERAL_CATEGORY_PO.iter())
.copied()
}
pub fn iterate_general_category_s() -> impl Iterator<Item = (char, char)> {
GENERAL_CATEGORY_SO
.iter()
.chain(GENERAL_CATEGORY_SK.iter())
.chain(GENERAL_CATEGORY_SM.iter())
.chain(GENERAL_CATEGORY_SC.iter())
.copied()
}
pub fn iterate_general_category_n() -> impl Iterator<Item = (char, char)> {
GENERAL_CATEGORY_NL
.iter()
.chain(GENERAL_CATEGORY_NO.iter())
.chain(GENERAL_CATEGORY_ND.iter())
.copied()
}
pub fn iterate_general_category_l() -> impl Iterator<Item = (char, char)> {
GENERAL_CATEGORY_LM
.iter()
.chain(GENERAL_CATEGORY_LT.iter())
.chain(GENERAL_CATEGORY_LO.iter())
.chain(GENERAL_CATEGORY_LL.iter())
.chain(GENERAL_CATEGORY_LU.iter())
.copied()
}
pub fn iterate_general_category_m() -> impl Iterator<Item = (char, char)> {
GENERAL_CATEGORY_MC
.iter()
.chain(GENERAL_CATEGORY_ME.iter())
.chain(GENERAL_CATEGORY_MN.iter())
.copied()
}
pub const BLOCK_TO_RANGES: &[(&str, char, char)] = &[
("adlam", '\u{1E900}', '\u{1E95F}'),
("aegeannumbers", '\u{10100}', '\u{1013F}'),
("ahom", '\u{11700}', '\u{1174F}'),
("alchemicalsymbols", '\u{1F700}', '\u{1F77F}'),
("alphabeticpresentationforms", '\u{FB00}', '\u{FB4F}'),
("anatolianhieroglyphs", '\u{14400}', '\u{1467F}'),
("ancientgreekmusicalnotation", '\u{1D200}', '\u{1D24F}'),
("ancientgreeknumbers", '\u{10140}', '\u{1018F}'),
("ancientsymbols", '\u{10190}', '\u{101CF}'),
("arabic", '\u{0600}', '\u{06FF}'),
("arabicextendeda", '\u{08A0}', '\u{08FF}'),
("arabicextendedb", '\u{0870}', '\u{089F}'),
("arabicextendedc", '\u{10EC0}', '\u{10EFF}'),
(
"arabicmathematicalalphabeticsymbols",
'\u{1EE00}',
'\u{1EEFF}',
),
("arabicpresentationformsa", '\u{FB50}', '\u{FDFF}'),
("arabicpresentationformsb", '\u{FE70}', '\u{FEFF}'),
("arabicsupplement", '\u{0750}', '\u{077F}'),
("armenian", '\u{0530}', '\u{058F}'),
("arrows", '\u{2190}', '\u{21FF}'),
("avestan", '\u{10B00}', '\u{10B3F}'),
("balinese", '\u{1B00}', '\u{1B7F}'),
("bamum", '\u{A6A0}', '\u{A6FF}'),
("bamumsupplement", '\u{16800}', '\u{16A3F}'),
("basiclatin", '\u{0000}', '\u{007F}'),
("bassavah", '\u{16AD0}', '\u{16AFF}'),
("batak", '\u{1BC0}', '\u{1BFF}'),
("bengali", '\u{0980}', '\u{09FF}'),
("bhaiksuki", '\u{11C00}', '\u{11C6F}'),
("blockelements", '\u{2580}', '\u{259F}'),
("bopomofo", '\u{3100}', '\u{312F}'),
("bopomofoextended", '\u{31A0}', '\u{31BF}'),
("boxdrawing", '\u{2500}', '\u{257F}'),
("brahmi", '\u{11000}', '\u{1107F}'),
("braillepatterns", '\u{2800}', '\u{28FF}'),
("buginese", '\u{1A00}', '\u{1A1F}'),
("buhid", '\u{1740}', '\u{175F}'),
("byzantinemusicalsymbols", '\u{1D000}', '\u{1D0FF}'),
("carian", '\u{102A0}', '\u{102DF}'),
("caucasianalbanian", '\u{10530}', '\u{1056F}'),
("chakma", '\u{11100}', '\u{1114F}'),
("cham", '\u{AA00}', '\u{AA5F}'),
("cherokee", '\u{13A0}', '\u{13FF}'),
("cherokeesupplement", '\u{AB70}', '\u{ABBF}'),
("chesssymbols", '\u{1FA00}', '\u{1FA6F}'),
("chorasmian", '\u{10FB0}', '\u{10FDF}'),
("cjkcompatibility", '\u{3300}', '\u{33FF}'),
("cjkcompatibilityforms", '\u{FE30}', '\u{FE4F}'),
("cjkcompatibilityideographs", '\u{F900}', '\u{FAFF}'),
(
"cjkcompatibilityideographssupplement",
'\u{2F800}',
'\u{2FA1F}',
),
("cjkradicalssupplement", '\u{2E80}', '\u{2EFF}'),
("cjkstrokes", '\u{31C0}', '\u{31EF}'),
("cjksymbolsandpunctuation", '\u{3000}', '\u{303F}'),
("cjkunifiedideographs", '\u{4E00}', '\u{9FFF}'),
("cjkunifiedideographsextensiona", '\u{3400}', '\u{4DBF}'),
("cjkunifiedideographsextensionb", '\u{20000}', '\u{2A6DF}'),
("cjkunifiedideographsextensionc", '\u{2A700}', '\u{2B73F}'),
("cjkunifiedideographsextensiond", '\u{2B740}', '\u{2B81F}'),
("cjkunifiedideographsextensione", '\u{2B820}', '\u{2CEAF}'),
("cjkunifiedideographsextensionf", '\u{2CEB0}', '\u{2EBEF}'),
("cjkunifiedideographsextensiong", '\u{30000}', '\u{3134F}'),
("cjkunifiedideographsextensionh", '\u{31350}', '\u{323AF}'),
("cjkunifiedideographsextensioni", '\u{2EBF0}', '\u{2EE5F}'),
("combiningdiacriticalmarks", '\u{0300}', '\u{036F}'),
("combiningdiacriticalmarksextended", '\u{1AB0}', '\u{1AFF}'),
(
"combiningdiacriticalmarksforsymbols",
'\u{20D0}',
'\u{20FF}',
),
(
"combiningdiacriticalmarkssupplement",
'\u{1DC0}',
'\u{1DFF}',
),
("combininghalfmarks", '\u{FE20}', '\u{FE2F}'),
("commonindicnumberforms", '\u{A830}', '\u{A83F}'),
("controlpictures", '\u{2400}', '\u{243F}'),
("coptic", '\u{2C80}', '\u{2CFF}'),
("copticepactnumbers", '\u{102E0}', '\u{102FF}'),
("countingrodnumerals", '\u{1D360}', '\u{1D37F}'),
("cuneiform", '\u{12000}', '\u{123FF}'),
("cuneiformnumbersandpunctuation", '\u{12400}', '\u{1247F}'),
("currencysymbols", '\u{20A0}', '\u{20CF}'),
("cypriotsyllabary", '\u{10800}', '\u{1083F}'),
("cyprominoan", '\u{12F90}', '\u{12FFF}'),
("cyrillic", '\u{0400}', '\u{04FF}'),
("cyrillicextendeda", '\u{2DE0}', '\u{2DFF}'),
("cyrillicextendedb", '\u{A640}', '\u{A69F}'),
("cyrillicextendedc", '\u{1C80}', '\u{1C8F}'),
("cyrillicextendedd", '\u{1E030}', '\u{1E08F}'),
("cyrillicsupplement", '\u{0500}', '\u{052F}'),
("deseret", '\u{10400}', '\u{1044F}'),
("devanagari", '\u{0900}', '\u{097F}'),
("devanagariextended", '\u{A8E0}', '\u{A8FF}'),
("devanagariextendeda", '\u{11B00}', '\u{11B5F}'),
("dingbats", '\u{2700}', '\u{27BF}'),
("divesakuru", '\u{11900}', '\u{1195F}'),
("dogra", '\u{11800}', '\u{1184F}'),
("dominotiles", '\u{1F030}', '\u{1F09F}'),
("duployan", '\u{1BC00}', '\u{1BC9F}'),
("earlydynasticcuneiform", '\u{12480}', '\u{1254F}'),
("egyptianhieroglyphformatcontrols", '\u{13430}', '\u{1345F}'),
("egyptianhieroglyphs", '\u{13000}', '\u{1342F}'),
("egyptianhieroglyphsextendeda", '\u{13460}', '\u{143FF}'),
("elbasan", '\u{10500}', '\u{1052F}'),
("elymaic", '\u{10FE0}', '\u{10FFF}'),
("emoticons", '\u{1F600}', '\u{1F64F}'),
("enclosedalphanumerics", '\u{2460}', '\u{24FF}'),
("enclosedalphanumericsupplement", '\u{1F100}', '\u{1F1FF}'),
("enclosedcjklettersandmonths", '\u{3200}', '\u{32FF}'),
("enclosedideographicsupplement", '\u{1F200}', '\u{1F2FF}'),
("ethiopic", '\u{1200}', '\u{137F}'),
("ethiopicextended", '\u{2D80}', '\u{2DDF}'),
("ethiopicextendeda", '\u{AB00}', '\u{AB2F}'),
("ethiopicextendedb", '\u{1E7E0}', '\u{1E7FF}'),
("ethiopicsupplement", '\u{1380}', '\u{139F}'),
("garay", '\u{10D40}', '\u{10D8F}'),
("generalpunctuation", '\u{2000}', '\u{206F}'),
("geometricshapes", '\u{25A0}', '\u{25FF}'),
("geometricshapesextended", '\u{1F780}', '\u{1F7FF}'),
("georgian", '\u{10A0}', '\u{10FF}'),
("georgianextended", '\u{1C90}', '\u{1CBF}'),
("georgiansupplement", '\u{2D00}', '\u{2D2F}'),
("glagolitic", '\u{2C00}', '\u{2C5F}'),
("glagoliticsupplement", '\u{1E000}', '\u{1E02F}'),
("gothic", '\u{10330}', '\u{1034F}'),
("grantha", '\u{11300}', '\u{1137F}'),
("greekandcoptic", '\u{0370}', '\u{03FF}'),
("greekextended", '\u{1F00}', '\u{1FFF}'),
("gujarati", '\u{0A80}', '\u{0AFF}'),
("gunjalagondi", '\u{11D60}', '\u{11DAF}'),
("gurmukhi", '\u{0A00}', '\u{0A7F}'),
("gurungkhema", '\u{16100}', '\u{1613F}'),
("halfwidthandfullwidthforms", '\u{FF00}', '\u{FFEF}'),
("hangulcompatibilityjamo", '\u{3130}', '\u{318F}'),
("hanguljamo", '\u{1100}', '\u{11FF}'),
("hanguljamoextendeda", '\u{A960}', '\u{A97F}'),
("hanguljamoextendedb", '\u{D7B0}', '\u{D7FF}'),
("hangulsyllables", '\u{AC00}', '\u{D7AF}'),
("hanifirohingya", '\u{10D00}', '\u{10D3F}'),
("hanunoo", '\u{1720}', '\u{173F}'),
("hatran", '\u{108E0}', '\u{108FF}'),
("hebrew", '\u{0590}', '\u{05FF}'),
("hiragana", '\u{3040}', '\u{309F}'),
("ideographicdescriptioncharacters", '\u{2FF0}', '\u{2FFF}'),
("ideographicsymbolsandpunctuation", '\u{16FE0}', '\u{16FFF}'),
("imperialaramaic", '\u{10840}', '\u{1085F}'),
("indicsiyaqnumbers", '\u{1EC70}', '\u{1ECBF}'),
("inscriptionalpahlavi", '\u{10B60}', '\u{10B7F}'),
("inscriptionalparthian", '\u{10B40}', '\u{10B5F}'),
("ipaextensions", '\u{0250}', '\u{02AF}'),
("javanese", '\u{A980}', '\u{A9DF}'),
("kaithi", '\u{11080}', '\u{110CF}'),
("kaktoviknumerals", '\u{1D2C0}', '\u{1D2DF}'),
("kanaextendeda", '\u{1B100}', '\u{1B12F}'),
("kanaextendedb", '\u{1AFF0}', '\u{1AFFF}'),
("kanasupplement", '\u{1B000}', '\u{1B0FF}'),
("kanbun", '\u{3190}', '\u{319F}'),
("kangxiradicals", '\u{2F00}', '\u{2FDF}'),
("kannada", '\u{0C80}', '\u{0CFF}'),
("katakana", '\u{30A0}', '\u{30FF}'),
("katakanaphoneticextensions", '\u{31F0}', '\u{31FF}'),
("kawi", '\u{11F00}', '\u{11F5F}'),
("kayahli", '\u{A900}', '\u{A92F}'),
("kharoshthi", '\u{10A00}', '\u{10A5F}'),
("khitansmallscript", '\u{18B00}', '\u{18CFF}'),
("khmer", '\u{1780}', '\u{17FF}'),
("khmersymbols", '\u{19E0}', '\u{19FF}'),
("khojki", '\u{11200}', '\u{1124F}'),
("khudawadi", '\u{112B0}', '\u{112FF}'),
("kiratrai", '\u{16D40}', '\u{16D7F}'),
("lao", '\u{0E80}', '\u{0EFF}'),
("latin1supplement", '\u{0080}', '\u{00FF}'),
("latinextendeda", '\u{0100}', '\u{017F}'),
("latinextendedadditional", '\u{1E00}', '\u{1EFF}'),
("latinextendedb", '\u{0180}', '\u{024F}'),
("latinextendedc", '\u{2C60}', '\u{2C7F}'),
("latinextendedd", '\u{A720}', '\u{A7FF}'),
("latinextendede", '\u{AB30}', '\u{AB6F}'),
("latinextendedf", '\u{10780}', '\u{107BF}'),
("latinextendedg", '\u{1DF00}', '\u{1DFFF}'),
("lepcha", '\u{1C00}', '\u{1C4F}'),
("letterlikesymbols", '\u{2100}', '\u{214F}'),
("limbu", '\u{1900}', '\u{194F}'),
("lineara", '\u{10600}', '\u{1077F}'),
("linearbideograms", '\u{10080}', '\u{100FF}'),
("linearbsyllabary", '\u{10000}', '\u{1007F}'),
("lisu", '\u{A4D0}', '\u{A4FF}'),
("lisusupplement", '\u{11FB0}', '\u{11FBF}'),
("lycian", '\u{10280}', '\u{1029F}'),
("lydian", '\u{10920}', '\u{1093F}'),
("mahajani", '\u{11150}', '\u{1117F}'),
("mahjongtiles", '\u{1F000}', '\u{1F02F}'),
("makasar", '\u{11EE0}', '\u{11EFF}'),
("malayalam", '\u{0D00}', '\u{0D7F}'),
("mandaic", '\u{0840}', '\u{085F}'),
("manichaean", '\u{10AC0}', '\u{10AFF}'),
("marchen", '\u{11C70}', '\u{11CBF}'),
("masaramgondi", '\u{11D00}', '\u{11D5F}'),
("mathematicalalphanumericsymbols", '\u{1D400}', '\u{1D7FF}'),
("mathematicaloperators", '\u{2200}', '\u{22FF}'),
("mayannumerals", '\u{1D2E0}', '\u{1D2FF}'),
("medefaidrin", '\u{16E40}', '\u{16E9F}'),
("meeteimayek", '\u{ABC0}', '\u{ABFF}'),
("meeteimayekextensions", '\u{AAE0}', '\u{AAFF}'),
("mendekikakui", '\u{1E800}', '\u{1E8DF}'),
("meroiticcursive", '\u{109A0}', '\u{109FF}'),
("meroitichieroglyphs", '\u{10980}', '\u{1099F}'),
("miao", '\u{16F00}', '\u{16F9F}'),
("miscellaneousmathematicalsymbolsa", '\u{27C0}', '\u{27EF}'),
("miscellaneousmathematicalsymbolsb", '\u{2980}', '\u{29FF}'),
("miscellaneoussymbols", '\u{2600}', '\u{26FF}'),
("miscellaneoussymbolsandarrows", '\u{2B00}', '\u{2BFF}'),
(
"miscellaneoussymbolsandpictographs",
'\u{1F300}',
'\u{1F5FF}',
),
("miscellaneoustechnical", '\u{2300}', '\u{23FF}'),
("modi", '\u{11600}', '\u{1165F}'),
("modifiertoneletters", '\u{A700}', '\u{A71F}'),
("mongolian", '\u{1800}', '\u{18AF}'),
("mongoliansupplement", '\u{11660}', '\u{1167F}'),
("mro", '\u{16A40}', '\u{16A6F}'),
("multani", '\u{11280}', '\u{112AF}'),
("musicalsymbols", '\u{1D100}', '\u{1D1FF}'),
("myanmar", '\u{1000}', '\u{109F}'),
("myanmarextendeda", '\u{AA60}', '\u{AA7F}'),
("myanmarextendedb", '\u{A9E0}', '\u{A9FF}'),
("myanmarextendedc", '\u{116D0}', '\u{116FF}'),
("nabataean", '\u{10880}', '\u{108AF}'),
("nagmundari", '\u{1E4D0}', '\u{1E4FF}'),
("nandinagari", '\u{119A0}', '\u{119FF}'),
("newa", '\u{11400}', '\u{1147F}'),
("newtailue", '\u{1980}', '\u{19DF}'),
("nko", '\u{07C0}', '\u{07FF}'),
("numberforms", '\u{2150}', '\u{218F}'),
("nushu", '\u{1B170}', '\u{1B2FF}'),
("nyiakengpuachuehmong", '\u{1E100}', '\u{1E14F}'),
("ogham", '\u{1680}', '\u{169F}'),
("olchiki", '\u{1C50}', '\u{1C7F}'),
("oldhungarian", '\u{10C80}', '\u{10CFF}'),
("olditalic", '\u{10300}', '\u{1032F}'),
("oldnortharabian", '\u{10A80}', '\u{10A9F}'),
("oldpermic", '\u{10350}', '\u{1037F}'),
("oldpersian", '\u{103A0}', '\u{103DF}'),
("oldsogdian", '\u{10F00}', '\u{10F2F}'),
("oldsoutharabian", '\u{10A60}', '\u{10A7F}'),
("oldturkic", '\u{10C00}', '\u{10C4F}'),
("olduyghur", '\u{10F70}', '\u{10FAF}'),
("olonal", '\u{1E5D0}', '\u{1E5FF}'),
("opticalcharacterrecognition", '\u{2440}', '\u{245F}'),
("oriya", '\u{0B00}', '\u{0B7F}'),
("ornamentaldingbats", '\u{1F650}', '\u{1F67F}'),
("osage", '\u{104B0}', '\u{104FF}'),
("osmanya", '\u{10480}', '\u{104AF}'),
("ottomansiyaqnumbers", '\u{1ED00}', '\u{1ED4F}'),
("pahawhhmong", '\u{16B00}', '\u{16B8F}'),
("palmyrene", '\u{10860}', '\u{1087F}'),
("paucinhau", '\u{11AC0}', '\u{11AFF}'),
("phagspa", '\u{A840}', '\u{A87F}'),
("phaistosdisc", '\u{101D0}', '\u{101FF}'),
("phoenician", '\u{10900}', '\u{1091F}'),
("phoneticextensions", '\u{1D00}', '\u{1D7F}'),
("phoneticextensionssupplement", '\u{1D80}', '\u{1DBF}'),
("playingcards", '\u{1F0A0}', '\u{1F0FF}'),
("privateusearea", '\u{E000}', '\u{F8FF}'),
("psalterpahlavi", '\u{10B80}', '\u{10BAF}'),
("rejang", '\u{A930}', '\u{A95F}'),
("ruminumeralsymbols", '\u{10E60}', '\u{10E7F}'),
("runic", '\u{16A0}', '\u{16FF}'),
("samaritan", '\u{0800}', '\u{083F}'),
("saurashtra", '\u{A880}', '\u{A8DF}'),
("sharada", '\u{11180}', '\u{111DF}'),
("shavian", '\u{10450}', '\u{1047F}'),
("shorthandformatcontrols", '\u{1BCA0}', '\u{1BCAF}'),
("siddham", '\u{11580}', '\u{115FF}'),
("sinhala", '\u{0D80}', '\u{0DFF}'),
("sinhalaarchaicnumbers", '\u{111E0}', '\u{111FF}'),
("smallformvariants", '\u{FE50}', '\u{FE6F}'),
("smallkanaextension", '\u{1B130}', '\u{1B16F}'),
("sogdian", '\u{10F30}', '\u{10F6F}'),
("sorasompeng", '\u{110D0}', '\u{110FF}'),
("soyombo", '\u{11A50}', '\u{11AAF}'),
("spacingmodifierletters", '\u{02B0}', '\u{02FF}'),
("specials", '\u{FFF0}', '\u{FFFF}'),
("sundanese", '\u{1B80}', '\u{1BBF}'),
("sundanesesupplement", '\u{1CC0}', '\u{1CCF}'),
("sunuwar", '\u{11BC0}', '\u{11BFF}'),
("superscriptsandsubscripts", '\u{2070}', '\u{209F}'),
("supplementalarrowsa", '\u{27F0}', '\u{27FF}'),
("supplementalarrowsb", '\u{2900}', '\u{297F}'),
("supplementalarrowsc", '\u{1F800}', '\u{1F8FF}'),
("supplementalmathematicaloperators", '\u{2A00}', '\u{2AFF}'),
("supplementalpunctuation", '\u{2E00}', '\u{2E7F}'),
(
"supplementalsymbolsandpictographs",
'\u{1F900}',
'\u{1F9FF}',
),
("supplementaryprivateuseareaa", '\u{F0000}', '\u{FFFFF}'),
("supplementaryprivateuseareab", '\u{100000}', '\u{10FFFF}'),
("suttonsignwriting", '\u{1D800}', '\u{1DAAF}'),
("sylotinagri", '\u{A800}', '\u{A82F}'),
("symbolsandpictographsextendeda", '\u{1FA70}', '\u{1FAFF}'),
("symbolsforlegacycomputing", '\u{1FB00}', '\u{1FBFF}'),
(
"symbolsforlegacycomputingsupplement",
'\u{1CC00}',
'\u{1CEBF}',
),
("syriac", '\u{0700}', '\u{074F}'),
("syriacsupplement", '\u{0860}', '\u{086F}'),
("tagalog", '\u{1700}', '\u{171F}'),
("tagbanwa", '\u{1760}', '\u{177F}'),
("tags", '\u{E0000}', '\u{E007F}'),
("taile", '\u{1950}', '\u{197F}'),
("taitham", '\u{1A20}', '\u{1AAF}'),
("taiviet", '\u{AA80}', '\u{AADF}'),
("taixuanjingsymbols", '\u{1D300}', '\u{1D35F}'),
("takri", '\u{11680}', '\u{116CF}'),
("tamil", '\u{0B80}', '\u{0BFF}'),
("tamilsupplement", '\u{11FC0}', '\u{11FFF}'),
("tangsa", '\u{16A70}', '\u{16ACF}'),
("tangut", '\u{17000}', '\u{187FF}'),
("tangutcomponents", '\u{18800}', '\u{18AFF}'),
("tangutsupplement", '\u{18D00}', '\u{18D7F}'),
("telugu", '\u{0C00}', '\u{0C7F}'),
("thaana", '\u{0780}', '\u{07BF}'),
("thai", '\u{0E00}', '\u{0E7F}'),
("tibetan", '\u{0F00}', '\u{0FFF}'),
("tifinagh", '\u{2D30}', '\u{2D7F}'),
("tirhuta", '\u{11480}', '\u{114DF}'),
("todhri", '\u{105C0}', '\u{105FF}'),
("toto", '\u{1E290}', '\u{1E2BF}'),
("transportandmapsymbols", '\u{1F680}', '\u{1F6FF}'),
("tulutigalari", '\u{11380}', '\u{113FF}'),
("ugaritic", '\u{10380}', '\u{1039F}'),
("unifiedcanadianaboriginalsyllabics", '\u{1400}', '\u{167F}'),
(
"unifiedcanadianaboriginalsyllabicsextended",
'\u{18B0}',
'\u{18FF}',
),
(
"unifiedcanadianaboriginalsyllabicsextendeda",
'\u{11AB0}',
'\u{11ABF}',
),
("vai", '\u{A500}', '\u{A63F}'),
("variationselectors", '\u{FE00}', '\u{FE0F}'),
("variationselectorssupplement", '\u{E0100}', '\u{E01EF}'),
("vedicextensions", '\u{1CD0}', '\u{1CFF}'),
("verticalforms", '\u{FE10}', '\u{FE1F}'),
("vithkuqi", '\u{10570}', '\u{105BF}'),
("wancho", '\u{1E2C0}', '\u{1E2FF}'),
("warangciti", '\u{118A0}', '\u{118FF}'),
("yezidi", '\u{10E80}', '\u{10EBF}'),
("yijinghexagramsymbols", '\u{4DC0}', '\u{4DFF}'),
("yiradicals", '\u{A490}', '\u{A4CF}'),
("yisyllables", '\u{A000}', '\u{A48F}'),
("zanabazarsquare", '\u{11A00}', '\u{11A4F}'),
("znamennymusicalnotation", '\u{1CF00}', '\u{1CFCF}'),
];
pub fn seach_block_range(block_name: &str) -> Option<(char, char)> {
let block_name = block_name
.trim()
.replace(|c: char| c.is_whitespace() || c == '-' || c == '_', "")
.to_lowercase();
BLOCK_TO_RANGES
.binary_search_by_key(&block_name.as_str(), |k| k.0)
.ok()
.map(|i| (BLOCK_TO_RANGES[i].1, BLOCK_TO_RANGES[i].2))
}