diff --git a/scripts/unicode.py b/scripts/unicode.py index 737542e..53dfe74 100755 --- a/scripts/unicode.py +++ b/scripts/unicode.py @@ -257,7 +257,6 @@ def emit_property_module(f, mod, tbl, emit): def emit_break_module(f, break_table, break_cats, name): Name = name.capitalize() f.write("""pub mod %s { - use core::slice::SliceExt; use core::result::Result::{Ok, Err}; pub use self::%sCat::*; diff --git a/src/grapheme.rs b/src/grapheme.rs index c1b98f7..f922c3c 100644 --- a/src/grapheme.rs +++ b/src/grapheme.rs @@ -48,17 +48,21 @@ pub struct Graphemes<'a> { extended: bool, cat: Option, catb: Option, + regional_count_back: Option, } // state machine for cluster boundary rules -#[derive(PartialEq,Eq)] +#[derive(Copy,Clone,PartialEq,Eq)] enum GraphemeState { Start, FindExtend, HangulL, HangulLV, HangulLVT, + Prepend, Regional, + Emoji, + Zwj, } impl<'a> Iterator for Graphemes<'a> { @@ -82,6 +86,11 @@ impl<'a> Iterator for Graphemes<'a> { let mut idx = 0; let mut state = Start; let mut cat = gr::GC_Any; + + // caching used by next_back() should be invalidated + self.regional_count_back = None; + self.catb = None; + for (curr, ch) in self.string.char_indices() { idx = curr; @@ -93,13 +102,18 @@ impl<'a> Iterator for Graphemes<'a> { _ => self.cat.take().unwrap() }; - if match cat { - gr::GC_Extend => true, - gr::GC_SpacingMark if self.extended => true, - _ => false + if (state, cat) == (Emoji, gr::GC_Extend) { + continue; // rule GB10 + } + + if let Some(new_state) = match cat { + gr::GC_Extend => Some(FindExtend), // rule GB9 + gr::GC_SpacingMark if self.extended => Some(FindExtend), // rule GB9a + gr::GC_ZWJ => Some(Zwj), // rule GB9/GB11 + _ => None } { - state = FindExtend; // rule GB9/GB9a - continue; + state = new_state; + continue; } state = match state { @@ -116,7 +130,9 @@ impl<'a> Iterator for Graphemes<'a> { gr::GC_L => HangulL, gr::GC_LV | gr::GC_V => HangulLV, gr::GC_LVT | gr::GC_T => HangulLVT, + gr::GC_Prepend if self.extended => Prepend, gr::GC_Regional_Indicator => Regional, + gr::GC_E_Base | gr::GC_E_Base_GAZ => Emoji, _ => FindExtend }, FindExtend => { // found non-extending when looking for extending @@ -147,13 +163,35 @@ impl<'a> Iterator for Graphemes<'a> { break; } }, - Regional => match cat { // rule GB8a - gr::GC_Regional_Indicator => continue, + Prepend => match cat { // rule GB9b + gr::GC_Control => { + take_curr = false; + break; + } + _ => continue + }, + Regional => match cat { // rule GB12/GB13 + gr::GC_Regional_Indicator => FindExtend, _ => { take_curr = false; break; } - } + }, + Emoji => match cat { // rule GB10: (E_Base|EBG) Extend* x E_Modifier + gr::GC_E_Modifier => continue, + _ => { + take_curr = false; + break; + } + }, + Zwj => match cat { // rule GB11: ZWJ x (GAZ|EBG) + gr::GC_Glue_After_Zwj => continue, + gr::GC_E_Base_GAZ => Emoji, + _ => { + take_curr = false; + break; + } + }, } } @@ -184,7 +222,11 @@ impl<'a> DoubleEndedIterator for Graphemes<'a> { let mut previdx = idx; let mut state = Start; let mut cat = gr::GC_Any; - for (curr, ch) in self.string.char_indices().rev() { + + // caching used by next() should be invalidated + self.cat = None; + + 'outer: for (curr, ch) in self.string.char_indices().rev() { previdx = idx; idx = curr; @@ -215,6 +257,9 @@ impl<'a> DoubleEndedIterator for Graphemes<'a> { Start | FindExtend => match cat { gr::GC_Extend => FindExtend, gr::GC_SpacingMark if self.extended => FindExtend, + gr::GC_ZWJ => FindExtend, + gr::GC_E_Modifier => Emoji, + gr::GC_Glue_After_Zwj | gr::GC_E_Base_GAZ => Zwj, gr::GC_L | gr::GC_LV | gr::GC_LVT => HangulL, gr::GC_V => HangulLV, gr::GC_T => HangulLVT, @@ -249,8 +294,62 @@ impl<'a> DoubleEndedIterator for Graphemes<'a> { break; } }, - Regional => match cat { // rule GB8a - gr::GC_Regional_Indicator => continue, + Prepend => { + // not used in reverse iteration + unreachable!() + }, + Regional => { // rule GB12/GB13 + // Need to scan backward to find if this is preceded by an odd or even number + // of Regional_Indicator characters. + let count = match self.regional_count_back { + Some(count) => count, + None => self.string[..previdx].chars().rev().take_while(|c| { + gr::grapheme_category(*c) == gr::GC_Regional_Indicator + }).count() + }; + // Cache the count to avoid re-scanning the same chars on the next iteration. + self.regional_count_back = count.checked_sub(1); + + if count % 2 == 0 { + take_curr = false; + break; + } + continue; + }, + Emoji => { // char to right is E_Modifier + // In order to decide whether to break before this E_Modifier char, we need to + // scan backward past any Extend chars to look for (E_Base|(ZWJ? EBG)). + let mut ebg_idx = None; + for (startidx, prev) in self.string[..previdx].char_indices().rev() { + match (ebg_idx, gr::grapheme_category(prev)) { + (None, gr::GC_Extend) => continue, + (None, gr::GC_E_Base) => { // rule GB10 + // Found an Emoji modifier sequence. Return the whole sequence. + idx = startidx; + break 'outer; + } + (None, gr::GC_E_Base_GAZ) => { // rule GB10 + // Keep scanning in case this is part of an ZWJ x EBJ pair. + ebg_idx = Some(startidx); + } + (Some(_), gr::GC_ZWJ) => { // rule GB11 + idx = startidx; + break 'outer; + } + _ => break + } + } + if let Some(ebg_idx) = ebg_idx { + // Found an EBG without a ZWJ before it. + idx = ebg_idx; + break; + } + // Not part of an Emoji modifier sequence. Break here. + take_curr = false; + break; + }, + Zwj => match cat { // char to right is (GAZ|EBG) + gr::GC_ZWJ => continue, // rule GB11: ZWJ x (GAZ|EBG) _ => { take_curr = false; break; @@ -266,6 +365,19 @@ impl<'a> DoubleEndedIterator for Graphemes<'a> { Some(cat) }; + if self.extended && cat != gr::GC_Control { + // rule GB9b: include any preceding Prepend characters + for (i, c) in self.string[..idx].char_indices().rev() { + match gr::grapheme_category(c) { + gr::GC_Prepend => idx = i, + cat => { + self.catb = Some(cat); + break; + } + } + } + } + let retstr = &self.string[idx..]; self.string = &self.string[..idx]; Some(retstr) @@ -274,7 +386,13 @@ impl<'a> DoubleEndedIterator for Graphemes<'a> { #[inline] pub fn new_graphemes<'b>(s: &'b str, is_extended: bool) -> Graphemes<'b> { - Graphemes { string: s, extended: is_extended, cat: None, catb: None } + Graphemes { + string: s, + extended: is_extended, + cat: None, + catb: None, + regional_count_back: None + } } #[inline] diff --git a/src/lib.rs b/src/lib.rs index ca716a8..8b84ca5 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -96,7 +96,7 @@ pub trait UnicodeSegmentation { /// assert_eq!(&gr1[..], b); /// /// let gr2 = UnicodeSegmentation::graphemes("a\r\nbπŸ‡·πŸ‡ΊπŸ‡ΈπŸ‡Ή", true).collect::>(); - /// let b: &[_] = &["a", "\r\n", "b", "πŸ‡·πŸ‡ΊπŸ‡ΈπŸ‡Ή"]; + /// let b: &[_] = &["a", "\r\n", "b", "πŸ‡·πŸ‡Ί", "πŸ‡ΈπŸ‡Ή"]; /// /// assert_eq!(&gr2[..], b); /// ``` diff --git a/src/tables.rs b/src/tables.rs index 0967e28..b491f62 100644 --- a/src/tables.rs +++ b/src/tables.rs @@ -14,7 +14,7 @@ /// The version of [Unicode](http://www.unicode.org/) /// that this version of unicode-segmentation is based on. -pub const UNICODE_VERSION: (u64, u64, u64) = (8, 0, 0); +pub const UNICODE_VERSION: (u64, u64, u64) = (9, 0, 0); pub mod util { #[inline] @@ -69,9 +69,10 @@ mod general_category { ('\u{10341}', '\u{10341}'), ('\u{1034a}', '\u{1034a}'), ('\u{103d1}', '\u{103d5}'), ('\u{104a0}', '\u{104a9}'), ('\u{11066}', '\u{1106f}'), ('\u{110f0}', '\u{110f9}'), ('\u{11136}', '\u{1113f}'), ('\u{111d0}', '\u{111d9}'), ('\u{112f0}', '\u{112f9}'), - ('\u{114d0}', '\u{114d9}'), ('\u{11650}', '\u{11659}'), ('\u{116c0}', '\u{116c9}'), - ('\u{11730}', '\u{11739}'), ('\u{118e0}', '\u{118e9}'), ('\u{12400}', '\u{1246e}'), - ('\u{16a60}', '\u{16a69}'), ('\u{16b50}', '\u{16b59}'), ('\u{1d7ce}', '\u{1d7ff}') + ('\u{11450}', '\u{11459}'), ('\u{114d0}', '\u{114d9}'), ('\u{11650}', '\u{11659}'), + ('\u{116c0}', '\u{116c9}'), ('\u{11730}', '\u{11739}'), ('\u{118e0}', '\u{118e9}'), + ('\u{11c50}', '\u{11c59}'), ('\u{12400}', '\u{1246e}'), ('\u{16a60}', '\u{16a69}'), + ('\u{16b50}', '\u{16b59}'), ('\u{1d7ce}', '\u{1d7ff}'), ('\u{1e950}', '\u{1e959}') ]; #[inline] @@ -97,178 +98,186 @@ mod derived_property { '\u{6e8}'), ('\u{6ed}', '\u{6ef}'), ('\u{6fa}', '\u{6fc}'), ('\u{6ff}', '\u{6ff}'), ('\u{710}', '\u{73f}'), ('\u{74d}', '\u{7b1}'), ('\u{7ca}', '\u{7ea}'), ('\u{7f4}', '\u{7f5}'), ('\u{7fa}', '\u{7fa}'), ('\u{800}', '\u{817}'), ('\u{81a}', '\u{82c}'), - ('\u{840}', '\u{858}'), ('\u{8a0}', '\u{8b4}'), ('\u{8e3}', '\u{8e9}'), ('\u{8f0}', - '\u{93b}'), ('\u{93d}', '\u{94c}'), ('\u{94e}', '\u{950}'), ('\u{955}', '\u{963}'), - ('\u{971}', '\u{983}'), ('\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{9c4}'), ('\u{9c7}', '\u{9c8}'), ('\u{9cb}', '\u{9cc}'), ('\u{9ce}', - '\u{9ce}'), ('\u{9d7}', '\u{9d7}'), ('\u{9dc}', '\u{9dd}'), ('\u{9df}', '\u{9e3}'), - ('\u{9f0}', '\u{9f1}'), ('\u{a01}', '\u{a03}'), ('\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{a3e}', '\u{a42}'), ('\u{a47}', - '\u{a48}'), ('\u{a4b}', '\u{a4c}'), ('\u{a51}', '\u{a51}'), ('\u{a59}', '\u{a5c}'), - ('\u{a5e}', '\u{a5e}'), ('\u{a70}', '\u{a75}'), ('\u{a81}', '\u{a83}'), ('\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{ac5}'), ('\u{ac7}', - '\u{ac9}'), ('\u{acb}', '\u{acc}'), ('\u{ad0}', '\u{ad0}'), ('\u{ae0}', '\u{ae3}'), - ('\u{af9}', '\u{af9}'), ('\u{b01}', '\u{b03}'), ('\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{b44}'), ('\u{b47}', '\u{b48}'), ('\u{b4b}', - '\u{b4c}'), ('\u{b56}', '\u{b57}'), ('\u{b5c}', '\u{b5d}'), ('\u{b5f}', '\u{b63}'), - ('\u{b71}', '\u{b71}'), ('\u{b82}', '\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{bbe}', '\u{bc2}'), ('\u{bc6}', '\u{bc8}'), ('\u{bca}', '\u{bcc}'), - ('\u{bd0}', '\u{bd0}'), ('\u{bd7}', '\u{bd7}'), ('\u{c00}', '\u{c03}'), ('\u{c05}', - '\u{c0c}'), ('\u{c0e}', '\u{c10}'), ('\u{c12}', '\u{c28}'), ('\u{c2a}', '\u{c39}'), - ('\u{c3d}', '\u{c44}'), ('\u{c46}', '\u{c48}'), ('\u{c4a}', '\u{c4c}'), ('\u{c55}', - '\u{c56}'), ('\u{c58}', '\u{c5a}'), ('\u{c60}', '\u{c63}'), ('\u{c81}', '\u{c83}'), - ('\u{c85}', '\u{c8c}'), ('\u{c8e}', '\u{c90}'), ('\u{c92}', '\u{ca8}'), ('\u{caa}', - '\u{cb3}'), ('\u{cb5}', '\u{cb9}'), ('\u{cbd}', '\u{cc4}'), ('\u{cc6}', '\u{cc8}'), - ('\u{cca}', '\u{ccc}'), ('\u{cd5}', '\u{cd6}'), ('\u{cde}', '\u{cde}'), ('\u{ce0}', - '\u{ce3}'), ('\u{cf1}', '\u{cf2}'), ('\u{d01}', '\u{d03}'), ('\u{d05}', '\u{d0c}'), - ('\u{d0e}', '\u{d10}'), ('\u{d12}', '\u{d3a}'), ('\u{d3d}', '\u{d44}'), ('\u{d46}', - '\u{d48}'), ('\u{d4a}', '\u{d4c}'), ('\u{d4e}', '\u{d4e}'), ('\u{d57}', '\u{d57}'), - ('\u{d5f}', '\u{d63}'), ('\u{d7a}', '\u{d7f}'), ('\u{d82}', '\u{d83}'), ('\u{d85}', - '\u{d96}'), ('\u{d9a}', '\u{db1}'), ('\u{db3}', '\u{dbb}'), ('\u{dbd}', '\u{dbd}'), - ('\u{dc0}', '\u{dc6}'), ('\u{dcf}', '\u{dd4}'), ('\u{dd6}', '\u{dd6}'), ('\u{dd8}', - '\u{ddf}'), ('\u{df2}', '\u{df3}'), ('\u{e01}', '\u{e3a}'), ('\u{e40}', '\u{e46}'), - ('\u{e4d}', '\u{e4d}'), ('\u{e81}', '\u{e82}'), ('\u{e84}', '\u{e84}'), ('\u{e87}', - '\u{e88}'), ('\u{e8a}', '\u{e8a}'), ('\u{e8d}', '\u{e8d}'), ('\u{e94}', '\u{e97}'), - ('\u{e99}', '\u{e9f}'), ('\u{ea1}', '\u{ea3}'), ('\u{ea5}', '\u{ea5}'), ('\u{ea7}', - '\u{ea7}'), ('\u{eaa}', '\u{eab}'), ('\u{ead}', '\u{eb9}'), ('\u{ebb}', '\u{ebd}'), - ('\u{ec0}', '\u{ec4}'), ('\u{ec6}', '\u{ec6}'), ('\u{ecd}', '\u{ecd}'), ('\u{edc}', - '\u{edf}'), ('\u{f00}', '\u{f00}'), ('\u{f40}', '\u{f47}'), ('\u{f49}', '\u{f6c}'), - ('\u{f71}', '\u{f81}'), ('\u{f88}', '\u{f97}'), ('\u{f99}', '\u{fbc}'), ('\u{1000}', - '\u{1036}'), ('\u{1038}', '\u{1038}'), ('\u{103b}', '\u{103f}'), ('\u{1050}', '\u{1062}'), - ('\u{1065}', '\u{1068}'), ('\u{106e}', '\u{1086}'), ('\u{108e}', '\u{108e}'), ('\u{109c}', - '\u{109d}'), ('\u{10a0}', '\u{10c5}'), ('\u{10c7}', '\u{10c7}'), ('\u{10cd}', '\u{10cd}'), - ('\u{10d0}', '\u{10fa}'), ('\u{10fc}', '\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{135f}', - '\u{135f}'), ('\u{1380}', '\u{138f}'), ('\u{13a0}', '\u{13f5}'), ('\u{13f8}', '\u{13fd}'), - ('\u{1401}', '\u{166c}'), ('\u{166f}', '\u{167f}'), ('\u{1681}', '\u{169a}'), ('\u{16a0}', - '\u{16ea}'), ('\u{16ee}', '\u{16f8}'), ('\u{1700}', '\u{170c}'), ('\u{170e}', '\u{1713}'), - ('\u{1720}', '\u{1733}'), ('\u{1740}', '\u{1753}'), ('\u{1760}', '\u{176c}'), ('\u{176e}', - '\u{1770}'), ('\u{1772}', '\u{1773}'), ('\u{1780}', '\u{17b3}'), ('\u{17b6}', '\u{17c8}'), - ('\u{17d7}', '\u{17d7}'), ('\u{17dc}', '\u{17dc}'), ('\u{1820}', '\u{1877}'), ('\u{1880}', - '\u{18aa}'), ('\u{18b0}', '\u{18f5}'), ('\u{1900}', '\u{191e}'), ('\u{1920}', '\u{192b}'), - ('\u{1930}', '\u{1938}'), ('\u{1950}', '\u{196d}'), ('\u{1970}', '\u{1974}'), ('\u{1980}', - '\u{19ab}'), ('\u{19b0}', '\u{19c9}'), ('\u{1a00}', '\u{1a1b}'), ('\u{1a20}', '\u{1a5e}'), - ('\u{1a61}', '\u{1a74}'), ('\u{1aa7}', '\u{1aa7}'), ('\u{1b00}', '\u{1b33}'), ('\u{1b35}', - '\u{1b43}'), ('\u{1b45}', '\u{1b4b}'), ('\u{1b80}', '\u{1ba9}'), ('\u{1bac}', '\u{1baf}'), - ('\u{1bba}', '\u{1be5}'), ('\u{1be7}', '\u{1bf1}'), ('\u{1c00}', '\u{1c35}'), ('\u{1c4d}', - '\u{1c4f}'), ('\u{1c5a}', '\u{1c7d}'), ('\u{1ce9}', '\u{1cec}'), ('\u{1cee}', '\u{1cf3}'), - ('\u{1cf5}', '\u{1cf6}'), ('\u{1d00}', '\u{1dbf}'), ('\u{1de7}', '\u{1df4}'), ('\u{1e00}', - '\u{1f15}'), ('\u{1f18}', '\u{1f1d}'), ('\u{1f20}', '\u{1f45}'), ('\u{1f48}', '\u{1f4d}'), - ('\u{1f50}', '\u{1f57}'), ('\u{1f59}', '\u{1f59}'), ('\u{1f5b}', '\u{1f5b}'), ('\u{1f5d}', - '\u{1f5d}'), ('\u{1f5f}', '\u{1f7d}'), ('\u{1f80}', '\u{1fb4}'), ('\u{1fb6}', '\u{1fbc}'), - ('\u{1fbe}', '\u{1fbe}'), ('\u{1fc2}', '\u{1fc4}'), ('\u{1fc6}', '\u{1fcc}'), ('\u{1fd0}', - '\u{1fd3}'), ('\u{1fd6}', '\u{1fdb}'), ('\u{1fe0}', '\u{1fec}'), ('\u{1ff2}', '\u{1ff4}'), - ('\u{1ff6}', '\u{1ffc}'), ('\u{2071}', '\u{2071}'), ('\u{207f}', '\u{207f}'), ('\u{2090}', - '\u{209c}'), ('\u{2102}', '\u{2102}'), ('\u{2107}', '\u{2107}'), ('\u{210a}', '\u{2113}'), - ('\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{212f}', '\u{2139}'), - ('\u{213c}', '\u{213f}'), ('\u{2145}', '\u{2149}'), ('\u{214e}', '\u{214e}'), ('\u{2160}', - '\u{2188}'), ('\u{24b6}', '\u{24e9}'), ('\u{2c00}', '\u{2c2e}'), ('\u{2c30}', '\u{2c5e}'), - ('\u{2c60}', '\u{2ce4}'), ('\u{2ceb}', '\u{2cee}'), ('\u{2cf2}', '\u{2cf3}'), ('\u{2d00}', - '\u{2d25}'), ('\u{2d27}', '\u{2d27}'), ('\u{2d2d}', '\u{2d2d}'), ('\u{2d30}', '\u{2d67}'), - ('\u{2d6f}', '\u{2d6f}'), ('\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{2de0}', - '\u{2dff}'), ('\u{2e2f}', '\u{2e2f}'), ('\u{3005}', '\u{3007}'), ('\u{3021}', '\u{3029}'), - ('\u{3031}', '\u{3035}'), ('\u{3038}', '\u{303c}'), ('\u{3041}', '\u{3096}'), ('\u{309d}', - '\u{309f}'), ('\u{30a1}', '\u{30fa}'), ('\u{30fc}', '\u{30ff}'), ('\u{3105}', '\u{312d}'), - ('\u{3131}', '\u{318e}'), ('\u{31a0}', '\u{31ba}'), ('\u{31f0}', '\u{31ff}'), ('\u{3400}', - '\u{4db5}'), ('\u{4e00}', '\u{9fd5}'), ('\u{a000}', '\u{a48c}'), ('\u{a4d0}', '\u{a4fd}'), - ('\u{a500}', '\u{a60c}'), ('\u{a610}', '\u{a61f}'), ('\u{a62a}', '\u{a62b}'), ('\u{a640}', - '\u{a66e}'), ('\u{a674}', '\u{a67b}'), ('\u{a67f}', '\u{a6ef}'), ('\u{a717}', '\u{a71f}'), - ('\u{a722}', '\u{a788}'), ('\u{a78b}', '\u{a7ad}'), ('\u{a7b0}', '\u{a7b7}'), ('\u{a7f7}', - '\u{a801}'), ('\u{a803}', '\u{a805}'), ('\u{a807}', '\u{a80a}'), ('\u{a80c}', '\u{a827}'), - ('\u{a840}', '\u{a873}'), ('\u{a880}', '\u{a8c3}'), ('\u{a8f2}', '\u{a8f7}'), ('\u{a8fb}', - '\u{a8fb}'), ('\u{a8fd}', '\u{a8fd}'), ('\u{a90a}', '\u{a92a}'), ('\u{a930}', '\u{a952}'), - ('\u{a960}', '\u{a97c}'), ('\u{a980}', '\u{a9b2}'), ('\u{a9b4}', '\u{a9bf}'), ('\u{a9cf}', - '\u{a9cf}'), ('\u{a9e0}', '\u{a9e4}'), ('\u{a9e6}', '\u{a9ef}'), ('\u{a9fa}', '\u{a9fe}'), - ('\u{aa00}', '\u{aa36}'), ('\u{aa40}', '\u{aa4d}'), ('\u{aa60}', '\u{aa76}'), ('\u{aa7a}', - '\u{aa7a}'), ('\u{aa7e}', '\u{aabe}'), ('\u{aac0}', '\u{aac0}'), ('\u{aac2}', '\u{aac2}'), - ('\u{aadb}', '\u{aadd}'), ('\u{aae0}', '\u{aaef}'), ('\u{aaf2}', '\u{aaf5}'), ('\u{ab01}', - '\u{ab06}'), ('\u{ab09}', '\u{ab0e}'), ('\u{ab11}', '\u{ab16}'), ('\u{ab20}', '\u{ab26}'), - ('\u{ab28}', '\u{ab2e}'), ('\u{ab30}', '\u{ab5a}'), ('\u{ab5c}', '\u{ab65}'), ('\u{ab70}', - '\u{abea}'), ('\u{ac00}', '\u{d7a3}'), ('\u{d7b0}', '\u{d7c6}'), ('\u{d7cb}', '\u{d7fb}'), - ('\u{f900}', '\u{fa6d}'), ('\u{fa70}', '\u{fad9}'), ('\u{fb00}', '\u{fb06}'), ('\u{fb13}', - '\u{fb17}'), ('\u{fb1d}', '\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{ff21}', - '\u{ff3a}'), ('\u{ff41}', '\u{ff5a}'), ('\u{ff66}', '\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{10140}', '\u{10174}'), ('\u{10280}', '\u{1029c}'), ('\u{102a0}', - '\u{102d0}'), ('\u{10300}', '\u{1031f}'), ('\u{10330}', '\u{1034a}'), ('\u{10350}', - '\u{1037a}'), ('\u{10380}', '\u{1039d}'), ('\u{103a0}', '\u{103c3}'), ('\u{103c8}', - '\u{103cf}'), ('\u{103d1}', '\u{103d5}'), ('\u{10400}', '\u{1049d}'), ('\u{10500}', - '\u{10527}'), ('\u{10530}', '\u{10563}'), ('\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{10a03}'), ('\u{10a05}', '\u{10a06}'), ('\u{10a0c}', - '\u{10a13}'), ('\u{10a15}', '\u{10a17}'), ('\u{10a19}', '\u{10a33}'), ('\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{10c80}', - '\u{10cb2}'), ('\u{10cc0}', '\u{10cf2}'), ('\u{11000}', '\u{11045}'), ('\u{11082}', - '\u{110b8}'), ('\u{110d0}', '\u{110e8}'), ('\u{11100}', '\u{11132}'), ('\u{11150}', - '\u{11172}'), ('\u{11176}', '\u{11176}'), ('\u{11180}', '\u{111bf}'), ('\u{111c1}', - '\u{111c4}'), ('\u{111da}', '\u{111da}'), ('\u{111dc}', '\u{111dc}'), ('\u{11200}', - '\u{11211}'), ('\u{11213}', '\u{11234}'), ('\u{11237}', '\u{11237}'), ('\u{11280}', - '\u{11286}'), ('\u{11288}', '\u{11288}'), ('\u{1128a}', '\u{1128d}'), ('\u{1128f}', - '\u{1129d}'), ('\u{1129f}', '\u{112a8}'), ('\u{112b0}', '\u{112e8}'), ('\u{11300}', - '\u{11303}'), ('\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{11344}'), ('\u{11347}', '\u{11348}'), ('\u{1134b}', - '\u{1134c}'), ('\u{11350}', '\u{11350}'), ('\u{11357}', '\u{11357}'), ('\u{1135d}', - '\u{11363}'), ('\u{11480}', '\u{114c1}'), ('\u{114c4}', '\u{114c5}'), ('\u{114c7}', - '\u{114c7}'), ('\u{11580}', '\u{115b5}'), ('\u{115b8}', '\u{115be}'), ('\u{115d8}', - '\u{115dd}'), ('\u{11600}', '\u{1163e}'), ('\u{11640}', '\u{11640}'), ('\u{11644}', - '\u{11644}'), ('\u{11680}', '\u{116b5}'), ('\u{11700}', '\u{11719}'), ('\u{1171d}', - '\u{1172a}'), ('\u{118a0}', '\u{118df}'), ('\u{118ff}', '\u{118ff}'), ('\u{11ac0}', - '\u{11af8}'), ('\u{12000}', '\u{12399}'), ('\u{12400}', '\u{1246e}'), ('\u{12480}', - '\u{12543}'), ('\u{13000}', '\u{1342e}'), ('\u{14400}', '\u{14646}'), ('\u{16800}', - '\u{16a38}'), ('\u{16a40}', '\u{16a5e}'), ('\u{16ad0}', '\u{16aed}'), ('\u{16b00}', - '\u{16b36}'), ('\u{16b40}', '\u{16b43}'), ('\u{16b63}', '\u{16b77}'), ('\u{16b7d}', - '\u{16b8f}'), ('\u{16f00}', '\u{16f44}'), ('\u{16f50}', '\u{16f7e}'), ('\u{16f93}', - '\u{16f9f}'), ('\u{1b000}', '\u{1b001}'), ('\u{1bc00}', '\u{1bc6a}'), ('\u{1bc70}', - '\u{1bc7c}'), ('\u{1bc80}', '\u{1bc88}'), ('\u{1bc90}', '\u{1bc99}'), ('\u{1bc9e}', - '\u{1bc9e}'), ('\u{1d400}', '\u{1d454}'), ('\u{1d456}', '\u{1d49c}'), ('\u{1d49e}', - '\u{1d49f}'), ('\u{1d4a2}', '\u{1d4a2}'), ('\u{1d4a5}', '\u{1d4a6}'), ('\u{1d4a9}', - '\u{1d4ac}'), ('\u{1d4ae}', '\u{1d4b9}'), ('\u{1d4bb}', '\u{1d4bb}'), ('\u{1d4bd}', - '\u{1d4c3}'), ('\u{1d4c5}', '\u{1d505}'), ('\u{1d507}', '\u{1d50a}'), ('\u{1d50d}', - '\u{1d514}'), ('\u{1d516}', '\u{1d51c}'), ('\u{1d51e}', '\u{1d539}'), ('\u{1d53b}', - '\u{1d53e}'), ('\u{1d540}', '\u{1d544}'), ('\u{1d546}', '\u{1d546}'), ('\u{1d54a}', - '\u{1d550}'), ('\u{1d552}', '\u{1d6a5}'), ('\u{1d6a8}', '\u{1d6c0}'), ('\u{1d6c2}', - '\u{1d6da}'), ('\u{1d6dc}', '\u{1d6fa}'), ('\u{1d6fc}', '\u{1d714}'), ('\u{1d716}', - '\u{1d734}'), ('\u{1d736}', '\u{1d74e}'), ('\u{1d750}', '\u{1d76e}'), ('\u{1d770}', - '\u{1d788}'), ('\u{1d78a}', '\u{1d7a8}'), ('\u{1d7aa}', '\u{1d7c2}'), ('\u{1d7c4}', - '\u{1d7cb}'), ('\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{1f130}', '\u{1f149}'), ('\u{1f150}', - '\u{1f169}'), ('\u{1f170}', '\u{1f189}'), ('\u{20000}', '\u{2a6d6}'), ('\u{2a700}', - '\u{2b734}'), ('\u{2b740}', '\u{2b81d}'), ('\u{2b820}', '\u{2cea1}'), ('\u{2f800}', - '\u{2fa1d}') + ('\u{840}', '\u{858}'), ('\u{8a0}', '\u{8b4}'), ('\u{8b6}', '\u{8bd}'), ('\u{8d4}', + '\u{8df}'), ('\u{8e3}', '\u{8e9}'), ('\u{8f0}', '\u{93b}'), ('\u{93d}', '\u{94c}'), + ('\u{94e}', '\u{950}'), ('\u{955}', '\u{963}'), ('\u{971}', '\u{983}'), ('\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{9c4}'), ('\u{9c7}', + '\u{9c8}'), ('\u{9cb}', '\u{9cc}'), ('\u{9ce}', '\u{9ce}'), ('\u{9d7}', '\u{9d7}'), + ('\u{9dc}', '\u{9dd}'), ('\u{9df}', '\u{9e3}'), ('\u{9f0}', '\u{9f1}'), ('\u{a01}', + '\u{a03}'), ('\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{a3e}', '\u{a42}'), ('\u{a47}', '\u{a48}'), ('\u{a4b}', '\u{a4c}'), + ('\u{a51}', '\u{a51}'), ('\u{a59}', '\u{a5c}'), ('\u{a5e}', '\u{a5e}'), ('\u{a70}', + '\u{a75}'), ('\u{a81}', '\u{a83}'), ('\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{ac5}'), ('\u{ac7}', '\u{ac9}'), ('\u{acb}', '\u{acc}'), + ('\u{ad0}', '\u{ad0}'), ('\u{ae0}', '\u{ae3}'), ('\u{af9}', '\u{af9}'), ('\u{b01}', + '\u{b03}'), ('\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{b44}'), ('\u{b47}', '\u{b48}'), ('\u{b4b}', '\u{b4c}'), ('\u{b56}', '\u{b57}'), + ('\u{b5c}', '\u{b5d}'), ('\u{b5f}', '\u{b63}'), ('\u{b71}', '\u{b71}'), ('\u{b82}', + '\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{bbe}', '\u{bc2}'), + ('\u{bc6}', '\u{bc8}'), ('\u{bca}', '\u{bcc}'), ('\u{bd0}', '\u{bd0}'), ('\u{bd7}', + '\u{bd7}'), ('\u{c00}', '\u{c03}'), ('\u{c05}', '\u{c0c}'), ('\u{c0e}', '\u{c10}'), + ('\u{c12}', '\u{c28}'), ('\u{c2a}', '\u{c39}'), ('\u{c3d}', '\u{c44}'), ('\u{c46}', + '\u{c48}'), ('\u{c4a}', '\u{c4c}'), ('\u{c55}', '\u{c56}'), ('\u{c58}', '\u{c5a}'), + ('\u{c60}', '\u{c63}'), ('\u{c80}', '\u{c83}'), ('\u{c85}', '\u{c8c}'), ('\u{c8e}', + '\u{c90}'), ('\u{c92}', '\u{ca8}'), ('\u{caa}', '\u{cb3}'), ('\u{cb5}', '\u{cb9}'), + ('\u{cbd}', '\u{cc4}'), ('\u{cc6}', '\u{cc8}'), ('\u{cca}', '\u{ccc}'), ('\u{cd5}', + '\u{cd6}'), ('\u{cde}', '\u{cde}'), ('\u{ce0}', '\u{ce3}'), ('\u{cf1}', '\u{cf2}'), + ('\u{d01}', '\u{d03}'), ('\u{d05}', '\u{d0c}'), ('\u{d0e}', '\u{d10}'), ('\u{d12}', + '\u{d3a}'), ('\u{d3d}', '\u{d44}'), ('\u{d46}', '\u{d48}'), ('\u{d4a}', '\u{d4c}'), + ('\u{d4e}', '\u{d4e}'), ('\u{d54}', '\u{d57}'), ('\u{d5f}', '\u{d63}'), ('\u{d7a}', + '\u{d7f}'), ('\u{d82}', '\u{d83}'), ('\u{d85}', '\u{d96}'), ('\u{d9a}', '\u{db1}'), + ('\u{db3}', '\u{dbb}'), ('\u{dbd}', '\u{dbd}'), ('\u{dc0}', '\u{dc6}'), ('\u{dcf}', + '\u{dd4}'), ('\u{dd6}', '\u{dd6}'), ('\u{dd8}', '\u{ddf}'), ('\u{df2}', '\u{df3}'), + ('\u{e01}', '\u{e3a}'), ('\u{e40}', '\u{e46}'), ('\u{e4d}', '\u{e4d}'), ('\u{e81}', + '\u{e82}'), ('\u{e84}', '\u{e84}'), ('\u{e87}', '\u{e88}'), ('\u{e8a}', '\u{e8a}'), + ('\u{e8d}', '\u{e8d}'), ('\u{e94}', '\u{e97}'), ('\u{e99}', '\u{e9f}'), ('\u{ea1}', + '\u{ea3}'), ('\u{ea5}', '\u{ea5}'), ('\u{ea7}', '\u{ea7}'), ('\u{eaa}', '\u{eab}'), + ('\u{ead}', '\u{eb9}'), ('\u{ebb}', '\u{ebd}'), ('\u{ec0}', '\u{ec4}'), ('\u{ec6}', + '\u{ec6}'), ('\u{ecd}', '\u{ecd}'), ('\u{edc}', '\u{edf}'), ('\u{f00}', '\u{f00}'), + ('\u{f40}', '\u{f47}'), ('\u{f49}', '\u{f6c}'), ('\u{f71}', '\u{f81}'), ('\u{f88}', + '\u{f97}'), ('\u{f99}', '\u{fbc}'), ('\u{1000}', '\u{1036}'), ('\u{1038}', '\u{1038}'), + ('\u{103b}', '\u{103f}'), ('\u{1050}', '\u{1062}'), ('\u{1065}', '\u{1068}'), ('\u{106e}', + '\u{1086}'), ('\u{108e}', '\u{108e}'), ('\u{109c}', '\u{109d}'), ('\u{10a0}', '\u{10c5}'), + ('\u{10c7}', '\u{10c7}'), ('\u{10cd}', '\u{10cd}'), ('\u{10d0}', '\u{10fa}'), ('\u{10fc}', + '\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{135f}', '\u{135f}'), ('\u{1380}', '\u{138f}'), + ('\u{13a0}', '\u{13f5}'), ('\u{13f8}', '\u{13fd}'), ('\u{1401}', '\u{166c}'), ('\u{166f}', + '\u{167f}'), ('\u{1681}', '\u{169a}'), ('\u{16a0}', '\u{16ea}'), ('\u{16ee}', '\u{16f8}'), + ('\u{1700}', '\u{170c}'), ('\u{170e}', '\u{1713}'), ('\u{1720}', '\u{1733}'), ('\u{1740}', + '\u{1753}'), ('\u{1760}', '\u{176c}'), ('\u{176e}', '\u{1770}'), ('\u{1772}', '\u{1773}'), + ('\u{1780}', '\u{17b3}'), ('\u{17b6}', '\u{17c8}'), ('\u{17d7}', '\u{17d7}'), ('\u{17dc}', + '\u{17dc}'), ('\u{1820}', '\u{1877}'), ('\u{1880}', '\u{18aa}'), ('\u{18b0}', '\u{18f5}'), + ('\u{1900}', '\u{191e}'), ('\u{1920}', '\u{192b}'), ('\u{1930}', '\u{1938}'), ('\u{1950}', + '\u{196d}'), ('\u{1970}', '\u{1974}'), ('\u{1980}', '\u{19ab}'), ('\u{19b0}', '\u{19c9}'), + ('\u{1a00}', '\u{1a1b}'), ('\u{1a20}', '\u{1a5e}'), ('\u{1a61}', '\u{1a74}'), ('\u{1aa7}', + '\u{1aa7}'), ('\u{1b00}', '\u{1b33}'), ('\u{1b35}', '\u{1b43}'), ('\u{1b45}', '\u{1b4b}'), + ('\u{1b80}', '\u{1ba9}'), ('\u{1bac}', '\u{1baf}'), ('\u{1bba}', '\u{1be5}'), ('\u{1be7}', + '\u{1bf1}'), ('\u{1c00}', '\u{1c35}'), ('\u{1c4d}', '\u{1c4f}'), ('\u{1c5a}', '\u{1c7d}'), + ('\u{1c80}', '\u{1c88}'), ('\u{1ce9}', '\u{1cec}'), ('\u{1cee}', '\u{1cf3}'), ('\u{1cf5}', + '\u{1cf6}'), ('\u{1d00}', '\u{1dbf}'), ('\u{1de7}', '\u{1df4}'), ('\u{1e00}', '\u{1f15}'), + ('\u{1f18}', '\u{1f1d}'), ('\u{1f20}', '\u{1f45}'), ('\u{1f48}', '\u{1f4d}'), ('\u{1f50}', + '\u{1f57}'), ('\u{1f59}', '\u{1f59}'), ('\u{1f5b}', '\u{1f5b}'), ('\u{1f5d}', '\u{1f5d}'), + ('\u{1f5f}', '\u{1f7d}'), ('\u{1f80}', '\u{1fb4}'), ('\u{1fb6}', '\u{1fbc}'), ('\u{1fbe}', + '\u{1fbe}'), ('\u{1fc2}', '\u{1fc4}'), ('\u{1fc6}', '\u{1fcc}'), ('\u{1fd0}', '\u{1fd3}'), + ('\u{1fd6}', '\u{1fdb}'), ('\u{1fe0}', '\u{1fec}'), ('\u{1ff2}', '\u{1ff4}'), ('\u{1ff6}', + '\u{1ffc}'), ('\u{2071}', '\u{2071}'), ('\u{207f}', '\u{207f}'), ('\u{2090}', '\u{209c}'), + ('\u{2102}', '\u{2102}'), ('\u{2107}', '\u{2107}'), ('\u{210a}', '\u{2113}'), ('\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{212f}', '\u{2139}'), ('\u{213c}', + '\u{213f}'), ('\u{2145}', '\u{2149}'), ('\u{214e}', '\u{214e}'), ('\u{2160}', '\u{2188}'), + ('\u{24b6}', '\u{24e9}'), ('\u{2c00}', '\u{2c2e}'), ('\u{2c30}', '\u{2c5e}'), ('\u{2c60}', + '\u{2ce4}'), ('\u{2ceb}', '\u{2cee}'), ('\u{2cf2}', '\u{2cf3}'), ('\u{2d00}', '\u{2d25}'), + ('\u{2d27}', '\u{2d27}'), ('\u{2d2d}', '\u{2d2d}'), ('\u{2d30}', '\u{2d67}'), ('\u{2d6f}', + '\u{2d6f}'), ('\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{2de0}', '\u{2dff}'), + ('\u{2e2f}', '\u{2e2f}'), ('\u{3005}', '\u{3007}'), ('\u{3021}', '\u{3029}'), ('\u{3031}', + '\u{3035}'), ('\u{3038}', '\u{303c}'), ('\u{3041}', '\u{3096}'), ('\u{309d}', '\u{309f}'), + ('\u{30a1}', '\u{30fa}'), ('\u{30fc}', '\u{30ff}'), ('\u{3105}', '\u{312d}'), ('\u{3131}', + '\u{318e}'), ('\u{31a0}', '\u{31ba}'), ('\u{31f0}', '\u{31ff}'), ('\u{3400}', '\u{4db5}'), + ('\u{4e00}', '\u{9fd5}'), ('\u{a000}', '\u{a48c}'), ('\u{a4d0}', '\u{a4fd}'), ('\u{a500}', + '\u{a60c}'), ('\u{a610}', '\u{a61f}'), ('\u{a62a}', '\u{a62b}'), ('\u{a640}', '\u{a66e}'), + ('\u{a674}', '\u{a67b}'), ('\u{a67f}', '\u{a6ef}'), ('\u{a717}', '\u{a71f}'), ('\u{a722}', + '\u{a788}'), ('\u{a78b}', '\u{a7ae}'), ('\u{a7b0}', '\u{a7b7}'), ('\u{a7f7}', '\u{a801}'), + ('\u{a803}', '\u{a805}'), ('\u{a807}', '\u{a80a}'), ('\u{a80c}', '\u{a827}'), ('\u{a840}', + '\u{a873}'), ('\u{a880}', '\u{a8c3}'), ('\u{a8c5}', '\u{a8c5}'), ('\u{a8f2}', '\u{a8f7}'), + ('\u{a8fb}', '\u{a8fb}'), ('\u{a8fd}', '\u{a8fd}'), ('\u{a90a}', '\u{a92a}'), ('\u{a930}', + '\u{a952}'), ('\u{a960}', '\u{a97c}'), ('\u{a980}', '\u{a9b2}'), ('\u{a9b4}', '\u{a9bf}'), + ('\u{a9cf}', '\u{a9cf}'), ('\u{a9e0}', '\u{a9e4}'), ('\u{a9e6}', '\u{a9ef}'), ('\u{a9fa}', + '\u{a9fe}'), ('\u{aa00}', '\u{aa36}'), ('\u{aa40}', '\u{aa4d}'), ('\u{aa60}', '\u{aa76}'), + ('\u{aa7a}', '\u{aa7a}'), ('\u{aa7e}', '\u{aabe}'), ('\u{aac0}', '\u{aac0}'), ('\u{aac2}', + '\u{aac2}'), ('\u{aadb}', '\u{aadd}'), ('\u{aae0}', '\u{aaef}'), ('\u{aaf2}', '\u{aaf5}'), + ('\u{ab01}', '\u{ab06}'), ('\u{ab09}', '\u{ab0e}'), ('\u{ab11}', '\u{ab16}'), ('\u{ab20}', + '\u{ab26}'), ('\u{ab28}', '\u{ab2e}'), ('\u{ab30}', '\u{ab5a}'), ('\u{ab5c}', '\u{ab65}'), + ('\u{ab70}', '\u{abea}'), ('\u{ac00}', '\u{d7a3}'), ('\u{d7b0}', '\u{d7c6}'), ('\u{d7cb}', + '\u{d7fb}'), ('\u{f900}', '\u{fa6d}'), ('\u{fa70}', '\u{fad9}'), ('\u{fb00}', '\u{fb06}'), + ('\u{fb13}', '\u{fb17}'), ('\u{fb1d}', '\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{ff21}', '\u{ff3a}'), ('\u{ff41}', '\u{ff5a}'), ('\u{ff66}', '\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{10140}', '\u{10174}'), ('\u{10280}', '\u{1029c}'), + ('\u{102a0}', '\u{102d0}'), ('\u{10300}', '\u{1031f}'), ('\u{10330}', '\u{1034a}'), + ('\u{10350}', '\u{1037a}'), ('\u{10380}', '\u{1039d}'), ('\u{103a0}', '\u{103c3}'), + ('\u{103c8}', '\u{103cf}'), ('\u{103d1}', '\u{103d5}'), ('\u{10400}', '\u{1049d}'), + ('\u{104b0}', '\u{104d3}'), ('\u{104d8}', '\u{104fb}'), ('\u{10500}', '\u{10527}'), + ('\u{10530}', '\u{10563}'), ('\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{10a03}'), ('\u{10a05}', '\u{10a06}'), ('\u{10a0c}', '\u{10a13}'), + ('\u{10a15}', '\u{10a17}'), ('\u{10a19}', '\u{10a33}'), ('\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{10c80}', '\u{10cb2}'), + ('\u{10cc0}', '\u{10cf2}'), ('\u{11000}', '\u{11045}'), ('\u{11082}', '\u{110b8}'), + ('\u{110d0}', '\u{110e8}'), ('\u{11100}', '\u{11132}'), ('\u{11150}', '\u{11172}'), + ('\u{11176}', '\u{11176}'), ('\u{11180}', '\u{111bf}'), ('\u{111c1}', '\u{111c4}'), + ('\u{111da}', '\u{111da}'), ('\u{111dc}', '\u{111dc}'), ('\u{11200}', '\u{11211}'), + ('\u{11213}', '\u{11234}'), ('\u{11237}', '\u{11237}'), ('\u{1123e}', '\u{1123e}'), + ('\u{11280}', '\u{11286}'), ('\u{11288}', '\u{11288}'), ('\u{1128a}', '\u{1128d}'), + ('\u{1128f}', '\u{1129d}'), ('\u{1129f}', '\u{112a8}'), ('\u{112b0}', '\u{112e8}'), + ('\u{11300}', '\u{11303}'), ('\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{11344}'), ('\u{11347}', '\u{11348}'), + ('\u{1134b}', '\u{1134c}'), ('\u{11350}', '\u{11350}'), ('\u{11357}', '\u{11357}'), + ('\u{1135d}', '\u{11363}'), ('\u{11400}', '\u{11441}'), ('\u{11443}', '\u{11445}'), + ('\u{11447}', '\u{1144a}'), ('\u{11480}', '\u{114c1}'), ('\u{114c4}', '\u{114c5}'), + ('\u{114c7}', '\u{114c7}'), ('\u{11580}', '\u{115b5}'), ('\u{115b8}', '\u{115be}'), + ('\u{115d8}', '\u{115dd}'), ('\u{11600}', '\u{1163e}'), ('\u{11640}', '\u{11640}'), + ('\u{11644}', '\u{11644}'), ('\u{11680}', '\u{116b5}'), ('\u{11700}', '\u{11719}'), + ('\u{1171d}', '\u{1172a}'), ('\u{118a0}', '\u{118df}'), ('\u{118ff}', '\u{118ff}'), + ('\u{11ac0}', '\u{11af8}'), ('\u{11c00}', '\u{11c08}'), ('\u{11c0a}', '\u{11c36}'), + ('\u{11c38}', '\u{11c3e}'), ('\u{11c40}', '\u{11c40}'), ('\u{11c72}', '\u{11c8f}'), + ('\u{11c92}', '\u{11ca7}'), ('\u{11ca9}', '\u{11cb6}'), ('\u{12000}', '\u{12399}'), + ('\u{12400}', '\u{1246e}'), ('\u{12480}', '\u{12543}'), ('\u{13000}', '\u{1342e}'), + ('\u{14400}', '\u{14646}'), ('\u{16800}', '\u{16a38}'), ('\u{16a40}', '\u{16a5e}'), + ('\u{16ad0}', '\u{16aed}'), ('\u{16b00}', '\u{16b36}'), ('\u{16b40}', '\u{16b43}'), + ('\u{16b63}', '\u{16b77}'), ('\u{16b7d}', '\u{16b8f}'), ('\u{16f00}', '\u{16f44}'), + ('\u{16f50}', '\u{16f7e}'), ('\u{16f93}', '\u{16f9f}'), ('\u{16fe0}', '\u{16fe0}'), + ('\u{17000}', '\u{187ec}'), ('\u{18800}', '\u{18af2}'), ('\u{1b000}', '\u{1b001}'), + ('\u{1bc00}', '\u{1bc6a}'), ('\u{1bc70}', '\u{1bc7c}'), ('\u{1bc80}', '\u{1bc88}'), + ('\u{1bc90}', '\u{1bc99}'), ('\u{1bc9e}', '\u{1bc9e}'), ('\u{1d400}', '\u{1d454}'), + ('\u{1d456}', '\u{1d49c}'), ('\u{1d49e}', '\u{1d49f}'), ('\u{1d4a2}', '\u{1d4a2}'), + ('\u{1d4a5}', '\u{1d4a6}'), ('\u{1d4a9}', '\u{1d4ac}'), ('\u{1d4ae}', '\u{1d4b9}'), + ('\u{1d4bb}', '\u{1d4bb}'), ('\u{1d4bd}', '\u{1d4c3}'), ('\u{1d4c5}', '\u{1d505}'), + ('\u{1d507}', '\u{1d50a}'), ('\u{1d50d}', '\u{1d514}'), ('\u{1d516}', '\u{1d51c}'), + ('\u{1d51e}', '\u{1d539}'), ('\u{1d53b}', '\u{1d53e}'), ('\u{1d540}', '\u{1d544}'), + ('\u{1d546}', '\u{1d546}'), ('\u{1d54a}', '\u{1d550}'), ('\u{1d552}', '\u{1d6a5}'), + ('\u{1d6a8}', '\u{1d6c0}'), ('\u{1d6c2}', '\u{1d6da}'), ('\u{1d6dc}', '\u{1d6fa}'), + ('\u{1d6fc}', '\u{1d714}'), ('\u{1d716}', '\u{1d734}'), ('\u{1d736}', '\u{1d74e}'), + ('\u{1d750}', '\u{1d76e}'), ('\u{1d770}', '\u{1d788}'), ('\u{1d78a}', '\u{1d7a8}'), + ('\u{1d7aa}', '\u{1d7c2}'), ('\u{1d7c4}', '\u{1d7cb}'), ('\u{1e000}', '\u{1e006}'), + ('\u{1e008}', '\u{1e018}'), ('\u{1e01b}', '\u{1e021}'), ('\u{1e023}', '\u{1e024}'), + ('\u{1e026}', '\u{1e02a}'), ('\u{1e800}', '\u{1e8c4}'), ('\u{1e900}', '\u{1e943}'), + ('\u{1e947}', '\u{1e947}'), ('\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{1f130}', '\u{1f149}'), ('\u{1f150}', '\u{1f169}'), + ('\u{1f170}', '\u{1f189}'), ('\u{20000}', '\u{2a6d6}'), ('\u{2a700}', '\u{2b734}'), + ('\u{2b740}', '\u{2b81d}'), ('\u{2b820}', '\u{2cea1}'), ('\u{2f800}', '\u{2fa1d}') ]; #[inline] @@ -288,14 +297,20 @@ pub mod grapheme { pub enum GraphemeCat { GC_Any, GC_Control, + GC_E_Base, + GC_E_Base_GAZ, + GC_E_Modifier, GC_Extend, + GC_Glue_After_Zwj, GC_L, GC_LV, GC_LVT, + GC_Prepend, GC_Regional_Indicator, GC_SpacingMark, GC_T, GC_V, + GC_ZWJ, } fn bsearch_range_value_table(c: char, r: &'static [(char, char, GraphemeCat)]) -> GraphemeCat { @@ -322,57 +337,58 @@ pub mod grapheme { GC_Control), ('\u{300}', '\u{36f}', GC_Extend), ('\u{483}', '\u{489}', GC_Extend), ('\u{591}', '\u{5bd}', GC_Extend), ('\u{5bf}', '\u{5bf}', GC_Extend), ('\u{5c1}', '\u{5c2}', GC_Extend), ('\u{5c4}', '\u{5c5}', GC_Extend), ('\u{5c7}', '\u{5c7}', GC_Extend), - ('\u{600}', '\u{605}', GC_Control), ('\u{610}', '\u{61a}', GC_Extend), ('\u{61c}', + ('\u{600}', '\u{605}', GC_Prepend), ('\u{610}', '\u{61a}', GC_Extend), ('\u{61c}', '\u{61c}', GC_Control), ('\u{64b}', '\u{65f}', GC_Extend), ('\u{670}', '\u{670}', - GC_Extend), ('\u{6d6}', '\u{6dc}', GC_Extend), ('\u{6dd}', '\u{6dd}', GC_Control), + GC_Extend), ('\u{6d6}', '\u{6dc}', GC_Extend), ('\u{6dd}', '\u{6dd}', GC_Prepend), ('\u{6df}', '\u{6e4}', GC_Extend), ('\u{6e7}', '\u{6e8}', GC_Extend), ('\u{6ea}', '\u{6ed}', - GC_Extend), ('\u{70f}', '\u{70f}', GC_Control), ('\u{711}', '\u{711}', GC_Extend), + GC_Extend), ('\u{70f}', '\u{70f}', GC_Prepend), ('\u{711}', '\u{711}', GC_Extend), ('\u{730}', '\u{74a}', GC_Extend), ('\u{7a6}', '\u{7b0}', GC_Extend), ('\u{7eb}', '\u{7f3}', GC_Extend), ('\u{816}', '\u{819}', GC_Extend), ('\u{81b}', '\u{823}', GC_Extend), ('\u{825}', '\u{827}', GC_Extend), ('\u{829}', '\u{82d}', GC_Extend), ('\u{859}', '\u{85b}', - GC_Extend), ('\u{8e3}', '\u{902}', GC_Extend), ('\u{903}', '\u{903}', GC_SpacingMark), - ('\u{93a}', '\u{93a}', GC_Extend), ('\u{93b}', '\u{93b}', GC_SpacingMark), ('\u{93c}', - '\u{93c}', GC_Extend), ('\u{93e}', '\u{940}', GC_SpacingMark), ('\u{941}', '\u{948}', - GC_Extend), ('\u{949}', '\u{94c}', GC_SpacingMark), ('\u{94d}', '\u{94d}', GC_Extend), - ('\u{94e}', '\u{94f}', GC_SpacingMark), ('\u{951}', '\u{957}', GC_Extend), ('\u{962}', - '\u{963}', GC_Extend), ('\u{981}', '\u{981}', GC_Extend), ('\u{982}', '\u{983}', - GC_SpacingMark), ('\u{9bc}', '\u{9bc}', GC_Extend), ('\u{9be}', '\u{9be}', GC_Extend), - ('\u{9bf}', '\u{9c0}', GC_SpacingMark), ('\u{9c1}', '\u{9c4}', GC_Extend), ('\u{9c7}', - '\u{9c8}', GC_SpacingMark), ('\u{9cb}', '\u{9cc}', GC_SpacingMark), ('\u{9cd}', '\u{9cd}', - GC_Extend), ('\u{9d7}', '\u{9d7}', GC_Extend), ('\u{9e2}', '\u{9e3}', GC_Extend), - ('\u{a01}', '\u{a02}', GC_Extend), ('\u{a03}', '\u{a03}', GC_SpacingMark), ('\u{a3c}', - '\u{a3c}', GC_Extend), ('\u{a3e}', '\u{a40}', GC_SpacingMark), ('\u{a41}', '\u{a42}', - GC_Extend), ('\u{a47}', '\u{a48}', GC_Extend), ('\u{a4b}', '\u{a4d}', GC_Extend), - ('\u{a51}', '\u{a51}', GC_Extend), ('\u{a70}', '\u{a71}', GC_Extend), ('\u{a75}', '\u{a75}', - GC_Extend), ('\u{a81}', '\u{a82}', GC_Extend), ('\u{a83}', '\u{a83}', GC_SpacingMark), - ('\u{abc}', '\u{abc}', GC_Extend), ('\u{abe}', '\u{ac0}', GC_SpacingMark), ('\u{ac1}', - '\u{ac5}', GC_Extend), ('\u{ac7}', '\u{ac8}', GC_Extend), ('\u{ac9}', '\u{ac9}', - GC_SpacingMark), ('\u{acb}', '\u{acc}', GC_SpacingMark), ('\u{acd}', '\u{acd}', GC_Extend), - ('\u{ae2}', '\u{ae3}', GC_Extend), ('\u{b01}', '\u{b01}', GC_Extend), ('\u{b02}', '\u{b03}', - GC_SpacingMark), ('\u{b3c}', '\u{b3c}', GC_Extend), ('\u{b3e}', '\u{b3f}', GC_Extend), - ('\u{b40}', '\u{b40}', GC_SpacingMark), ('\u{b41}', '\u{b44}', GC_Extend), ('\u{b47}', - '\u{b48}', GC_SpacingMark), ('\u{b4b}', '\u{b4c}', GC_SpacingMark), ('\u{b4d}', '\u{b4d}', - GC_Extend), ('\u{b56}', '\u{b57}', GC_Extend), ('\u{b62}', '\u{b63}', GC_Extend), - ('\u{b82}', '\u{b82}', GC_Extend), ('\u{bbe}', '\u{bbe}', GC_Extend), ('\u{bbf}', '\u{bbf}', - GC_SpacingMark), ('\u{bc0}', '\u{bc0}', GC_Extend), ('\u{bc1}', '\u{bc2}', GC_SpacingMark), - ('\u{bc6}', '\u{bc8}', GC_SpacingMark), ('\u{bca}', '\u{bcc}', GC_SpacingMark), ('\u{bcd}', - '\u{bcd}', GC_Extend), ('\u{bd7}', '\u{bd7}', GC_Extend), ('\u{c00}', '\u{c00}', GC_Extend), - ('\u{c01}', '\u{c03}', GC_SpacingMark), ('\u{c3e}', '\u{c40}', GC_Extend), ('\u{c41}', - '\u{c44}', GC_SpacingMark), ('\u{c46}', '\u{c48}', GC_Extend), ('\u{c4a}', '\u{c4d}', - GC_Extend), ('\u{c55}', '\u{c56}', GC_Extend), ('\u{c62}', '\u{c63}', GC_Extend), - ('\u{c81}', '\u{c81}', GC_Extend), ('\u{c82}', '\u{c83}', GC_SpacingMark), ('\u{cbc}', - '\u{cbc}', GC_Extend), ('\u{cbe}', '\u{cbe}', GC_SpacingMark), ('\u{cbf}', '\u{cbf}', - GC_Extend), ('\u{cc0}', '\u{cc1}', GC_SpacingMark), ('\u{cc2}', '\u{cc2}', GC_Extend), - ('\u{cc3}', '\u{cc4}', GC_SpacingMark), ('\u{cc6}', '\u{cc6}', GC_Extend), ('\u{cc7}', - '\u{cc8}', GC_SpacingMark), ('\u{cca}', '\u{ccb}', GC_SpacingMark), ('\u{ccc}', '\u{ccd}', - GC_Extend), ('\u{cd5}', '\u{cd6}', GC_Extend), ('\u{ce2}', '\u{ce3}', GC_Extend), - ('\u{d01}', '\u{d01}', GC_Extend), ('\u{d02}', '\u{d03}', GC_SpacingMark), ('\u{d3e}', - '\u{d3e}', GC_Extend), ('\u{d3f}', '\u{d40}', GC_SpacingMark), ('\u{d41}', '\u{d44}', - GC_Extend), ('\u{d46}', '\u{d48}', GC_SpacingMark), ('\u{d4a}', '\u{d4c}', GC_SpacingMark), - ('\u{d4d}', '\u{d4d}', GC_Extend), ('\u{d57}', '\u{d57}', GC_Extend), ('\u{d62}', '\u{d63}', - GC_Extend), ('\u{d82}', '\u{d83}', GC_SpacingMark), ('\u{dca}', '\u{dca}', GC_Extend), - ('\u{dcf}', '\u{dcf}', GC_Extend), ('\u{dd0}', '\u{dd1}', GC_SpacingMark), ('\u{dd2}', - '\u{dd4}', GC_Extend), ('\u{dd6}', '\u{dd6}', GC_Extend), ('\u{dd8}', '\u{dde}', + GC_Extend), ('\u{8d4}', '\u{8e1}', GC_Extend), ('\u{8e2}', '\u{8e2}', GC_Prepend), + ('\u{8e3}', '\u{902}', GC_Extend), ('\u{903}', '\u{903}', GC_SpacingMark), ('\u{93a}', + '\u{93a}', GC_Extend), ('\u{93b}', '\u{93b}', GC_SpacingMark), ('\u{93c}', '\u{93c}', + GC_Extend), ('\u{93e}', '\u{940}', GC_SpacingMark), ('\u{941}', '\u{948}', GC_Extend), + ('\u{949}', '\u{94c}', GC_SpacingMark), ('\u{94d}', '\u{94d}', GC_Extend), ('\u{94e}', + '\u{94f}', GC_SpacingMark), ('\u{951}', '\u{957}', GC_Extend), ('\u{962}', '\u{963}', + GC_Extend), ('\u{981}', '\u{981}', GC_Extend), ('\u{982}', '\u{983}', GC_SpacingMark), + ('\u{9bc}', '\u{9bc}', GC_Extend), ('\u{9be}', '\u{9be}', GC_Extend), ('\u{9bf}', '\u{9c0}', + GC_SpacingMark), ('\u{9c1}', '\u{9c4}', GC_Extend), ('\u{9c7}', '\u{9c8}', GC_SpacingMark), + ('\u{9cb}', '\u{9cc}', GC_SpacingMark), ('\u{9cd}', '\u{9cd}', GC_Extend), ('\u{9d7}', + '\u{9d7}', GC_Extend), ('\u{9e2}', '\u{9e3}', GC_Extend), ('\u{a01}', '\u{a02}', GC_Extend), + ('\u{a03}', '\u{a03}', GC_SpacingMark), ('\u{a3c}', '\u{a3c}', GC_Extend), ('\u{a3e}', + '\u{a40}', GC_SpacingMark), ('\u{a41}', '\u{a42}', GC_Extend), ('\u{a47}', '\u{a48}', + GC_Extend), ('\u{a4b}', '\u{a4d}', GC_Extend), ('\u{a51}', '\u{a51}', GC_Extend), + ('\u{a70}', '\u{a71}', GC_Extend), ('\u{a75}', '\u{a75}', GC_Extend), ('\u{a81}', '\u{a82}', + GC_Extend), ('\u{a83}', '\u{a83}', GC_SpacingMark), ('\u{abc}', '\u{abc}', GC_Extend), + ('\u{abe}', '\u{ac0}', GC_SpacingMark), ('\u{ac1}', '\u{ac5}', GC_Extend), ('\u{ac7}', + '\u{ac8}', GC_Extend), ('\u{ac9}', '\u{ac9}', GC_SpacingMark), ('\u{acb}', '\u{acc}', + GC_SpacingMark), ('\u{acd}', '\u{acd}', GC_Extend), ('\u{ae2}', '\u{ae3}', GC_Extend), + ('\u{b01}', '\u{b01}', GC_Extend), ('\u{b02}', '\u{b03}', GC_SpacingMark), ('\u{b3c}', + '\u{b3c}', GC_Extend), ('\u{b3e}', '\u{b3f}', GC_Extend), ('\u{b40}', '\u{b40}', + GC_SpacingMark), ('\u{b41}', '\u{b44}', GC_Extend), ('\u{b47}', '\u{b48}', GC_SpacingMark), + ('\u{b4b}', '\u{b4c}', GC_SpacingMark), ('\u{b4d}', '\u{b4d}', GC_Extend), ('\u{b56}', + '\u{b57}', GC_Extend), ('\u{b62}', '\u{b63}', GC_Extend), ('\u{b82}', '\u{b82}', GC_Extend), + ('\u{bbe}', '\u{bbe}', GC_Extend), ('\u{bbf}', '\u{bbf}', GC_SpacingMark), ('\u{bc0}', + '\u{bc0}', GC_Extend), ('\u{bc1}', '\u{bc2}', GC_SpacingMark), ('\u{bc6}', '\u{bc8}', + GC_SpacingMark), ('\u{bca}', '\u{bcc}', GC_SpacingMark), ('\u{bcd}', '\u{bcd}', GC_Extend), + ('\u{bd7}', '\u{bd7}', GC_Extend), ('\u{c00}', '\u{c00}', GC_Extend), ('\u{c01}', '\u{c03}', + GC_SpacingMark), ('\u{c3e}', '\u{c40}', GC_Extend), ('\u{c41}', '\u{c44}', GC_SpacingMark), + ('\u{c46}', '\u{c48}', GC_Extend), ('\u{c4a}', '\u{c4d}', GC_Extend), ('\u{c55}', '\u{c56}', + GC_Extend), ('\u{c62}', '\u{c63}', GC_Extend), ('\u{c81}', '\u{c81}', GC_Extend), + ('\u{c82}', '\u{c83}', GC_SpacingMark), ('\u{cbc}', '\u{cbc}', GC_Extend), ('\u{cbe}', + '\u{cbe}', GC_SpacingMark), ('\u{cbf}', '\u{cbf}', GC_Extend), ('\u{cc0}', '\u{cc1}', + GC_SpacingMark), ('\u{cc2}', '\u{cc2}', GC_Extend), ('\u{cc3}', '\u{cc4}', GC_SpacingMark), + ('\u{cc6}', '\u{cc6}', GC_Extend), ('\u{cc7}', '\u{cc8}', GC_SpacingMark), ('\u{cca}', + '\u{ccb}', GC_SpacingMark), ('\u{ccc}', '\u{ccd}', GC_Extend), ('\u{cd5}', '\u{cd6}', + GC_Extend), ('\u{ce2}', '\u{ce3}', GC_Extend), ('\u{d01}', '\u{d01}', GC_Extend), + ('\u{d02}', '\u{d03}', GC_SpacingMark), ('\u{d3e}', '\u{d3e}', GC_Extend), ('\u{d3f}', + '\u{d40}', GC_SpacingMark), ('\u{d41}', '\u{d44}', GC_Extend), ('\u{d46}', '\u{d48}', + GC_SpacingMark), ('\u{d4a}', '\u{d4c}', GC_SpacingMark), ('\u{d4d}', '\u{d4d}', GC_Extend), + ('\u{d4e}', '\u{d4e}', GC_Prepend), ('\u{d57}', '\u{d57}', GC_Extend), ('\u{d62}', + '\u{d63}', GC_Extend), ('\u{d82}', '\u{d83}', GC_SpacingMark), ('\u{dca}', '\u{dca}', + GC_Extend), ('\u{dcf}', '\u{dcf}', GC_Extend), ('\u{dd0}', '\u{dd1}', GC_SpacingMark), + ('\u{dd2}', '\u{dd4}', GC_Extend), ('\u{dd6}', '\u{dd6}', GC_Extend), ('\u{dd8}', '\u{dde}', GC_SpacingMark), ('\u{ddf}', '\u{ddf}', GC_Extend), ('\u{df2}', '\u{df3}', GC_SpacingMark), ('\u{e31}', '\u{e31}', GC_Extend), ('\u{e33}', '\u{e33}', GC_SpacingMark), ('\u{e34}', '\u{e3a}', GC_Extend), ('\u{e47}', '\u{e4e}', GC_Extend), ('\u{eb1}', '\u{eb1}', GC_Extend), @@ -396,49 +412,52 @@ pub mod grapheme { ('\u{17b7}', '\u{17bd}', GC_Extend), ('\u{17be}', '\u{17c5}', GC_SpacingMark), ('\u{17c6}', '\u{17c6}', GC_Extend), ('\u{17c7}', '\u{17c8}', GC_SpacingMark), ('\u{17c9}', '\u{17d3}', GC_Extend), ('\u{17dd}', '\u{17dd}', GC_Extend), ('\u{180b}', '\u{180d}', GC_Extend), - ('\u{180e}', '\u{180e}', GC_Control), ('\u{18a9}', '\u{18a9}', GC_Extend), ('\u{1920}', - '\u{1922}', GC_Extend), ('\u{1923}', '\u{1926}', GC_SpacingMark), ('\u{1927}', '\u{1928}', - GC_Extend), ('\u{1929}', '\u{192b}', GC_SpacingMark), ('\u{1930}', '\u{1931}', - GC_SpacingMark), ('\u{1932}', '\u{1932}', GC_Extend), ('\u{1933}', '\u{1938}', - GC_SpacingMark), ('\u{1939}', '\u{193b}', GC_Extend), ('\u{1a17}', '\u{1a18}', GC_Extend), - ('\u{1a19}', '\u{1a1a}', GC_SpacingMark), ('\u{1a1b}', '\u{1a1b}', GC_Extend), ('\u{1a55}', - '\u{1a55}', GC_SpacingMark), ('\u{1a56}', '\u{1a56}', GC_Extend), ('\u{1a57}', '\u{1a57}', - GC_SpacingMark), ('\u{1a58}', '\u{1a5e}', GC_Extend), ('\u{1a60}', '\u{1a60}', GC_Extend), - ('\u{1a62}', '\u{1a62}', GC_Extend), ('\u{1a65}', '\u{1a6c}', GC_Extend), ('\u{1a6d}', - '\u{1a72}', GC_SpacingMark), ('\u{1a73}', '\u{1a7c}', GC_Extend), ('\u{1a7f}', '\u{1a7f}', - GC_Extend), ('\u{1ab0}', '\u{1abe}', GC_Extend), ('\u{1b00}', '\u{1b03}', GC_Extend), - ('\u{1b04}', '\u{1b04}', GC_SpacingMark), ('\u{1b34}', '\u{1b34}', GC_Extend), ('\u{1b35}', - '\u{1b35}', GC_SpacingMark), ('\u{1b36}', '\u{1b3a}', GC_Extend), ('\u{1b3b}', '\u{1b3b}', - GC_SpacingMark), ('\u{1b3c}', '\u{1b3c}', GC_Extend), ('\u{1b3d}', '\u{1b41}', - GC_SpacingMark), ('\u{1b42}', '\u{1b42}', GC_Extend), ('\u{1b43}', '\u{1b44}', - GC_SpacingMark), ('\u{1b6b}', '\u{1b73}', GC_Extend), ('\u{1b80}', '\u{1b81}', GC_Extend), - ('\u{1b82}', '\u{1b82}', GC_SpacingMark), ('\u{1ba1}', '\u{1ba1}', GC_SpacingMark), - ('\u{1ba2}', '\u{1ba5}', GC_Extend), ('\u{1ba6}', '\u{1ba7}', GC_SpacingMark), ('\u{1ba8}', - '\u{1ba9}', GC_Extend), ('\u{1baa}', '\u{1baa}', GC_SpacingMark), ('\u{1bab}', '\u{1bad}', - GC_Extend), ('\u{1be6}', '\u{1be6}', GC_Extend), ('\u{1be7}', '\u{1be7}', GC_SpacingMark), - ('\u{1be8}', '\u{1be9}', GC_Extend), ('\u{1bea}', '\u{1bec}', GC_SpacingMark), ('\u{1bed}', - '\u{1bed}', GC_Extend), ('\u{1bee}', '\u{1bee}', GC_SpacingMark), ('\u{1bef}', '\u{1bf1}', - GC_Extend), ('\u{1bf2}', '\u{1bf3}', GC_SpacingMark), ('\u{1c24}', '\u{1c2b}', - GC_SpacingMark), ('\u{1c2c}', '\u{1c33}', GC_Extend), ('\u{1c34}', '\u{1c35}', - GC_SpacingMark), ('\u{1c36}', '\u{1c37}', GC_Extend), ('\u{1cd0}', '\u{1cd2}', GC_Extend), - ('\u{1cd4}', '\u{1ce0}', GC_Extend), ('\u{1ce1}', '\u{1ce1}', GC_SpacingMark), ('\u{1ce2}', - '\u{1ce8}', GC_Extend), ('\u{1ced}', '\u{1ced}', GC_Extend), ('\u{1cf2}', '\u{1cf3}', - GC_SpacingMark), ('\u{1cf4}', '\u{1cf4}', GC_Extend), ('\u{1cf8}', '\u{1cf9}', GC_Extend), - ('\u{1dc0}', '\u{1df5}', GC_Extend), ('\u{1dfc}', '\u{1dff}', GC_Extend), ('\u{200b}', - '\u{200b}', GC_Control), ('\u{200c}', '\u{200d}', GC_Extend), ('\u{200e}', '\u{200f}', - GC_Control), ('\u{2028}', '\u{202e}', GC_Control), ('\u{2060}', '\u{206f}', GC_Control), - ('\u{20d0}', '\u{20f0}', GC_Extend), ('\u{2cef}', '\u{2cf1}', GC_Extend), ('\u{2d7f}', - '\u{2d7f}', GC_Extend), ('\u{2de0}', '\u{2dff}', GC_Extend), ('\u{302a}', '\u{302f}', - GC_Extend), ('\u{3099}', '\u{309a}', GC_Extend), ('\u{a66f}', '\u{a672}', GC_Extend), - ('\u{a674}', '\u{a67d}', GC_Extend), ('\u{a69e}', '\u{a69f}', GC_Extend), ('\u{a6f0}', - '\u{a6f1}', GC_Extend), ('\u{a802}', '\u{a802}', GC_Extend), ('\u{a806}', '\u{a806}', - GC_Extend), ('\u{a80b}', '\u{a80b}', GC_Extend), ('\u{a823}', '\u{a824}', GC_SpacingMark), - ('\u{a825}', '\u{a826}', GC_Extend), ('\u{a827}', '\u{a827}', GC_SpacingMark), ('\u{a880}', - '\u{a881}', GC_SpacingMark), ('\u{a8b4}', '\u{a8c3}', GC_SpacingMark), ('\u{a8c4}', - '\u{a8c4}', GC_Extend), ('\u{a8e0}', '\u{a8f1}', GC_Extend), ('\u{a926}', '\u{a92d}', - GC_Extend), ('\u{a947}', '\u{a951}', GC_Extend), ('\u{a952}', '\u{a953}', GC_SpacingMark), - ('\u{a960}', '\u{a97c}', GC_L), ('\u{a980}', '\u{a982}', GC_Extend), ('\u{a983}', - '\u{a983}', GC_SpacingMark), ('\u{a9b3}', '\u{a9b3}', GC_Extend), ('\u{a9b4}', '\u{a9b5}', + ('\u{180e}', '\u{180e}', GC_Control), ('\u{1885}', '\u{1886}', GC_Extend), ('\u{18a9}', + '\u{18a9}', GC_Extend), ('\u{1920}', '\u{1922}', GC_Extend), ('\u{1923}', '\u{1926}', + GC_SpacingMark), ('\u{1927}', '\u{1928}', GC_Extend), ('\u{1929}', '\u{192b}', + GC_SpacingMark), ('\u{1930}', '\u{1931}', GC_SpacingMark), ('\u{1932}', '\u{1932}', + GC_Extend), ('\u{1933}', '\u{1938}', GC_SpacingMark), ('\u{1939}', '\u{193b}', GC_Extend), + ('\u{1a17}', '\u{1a18}', GC_Extend), ('\u{1a19}', '\u{1a1a}', GC_SpacingMark), ('\u{1a1b}', + '\u{1a1b}', GC_Extend), ('\u{1a55}', '\u{1a55}', GC_SpacingMark), ('\u{1a56}', '\u{1a56}', + GC_Extend), ('\u{1a57}', '\u{1a57}', GC_SpacingMark), ('\u{1a58}', '\u{1a5e}', GC_Extend), + ('\u{1a60}', '\u{1a60}', GC_Extend), ('\u{1a62}', '\u{1a62}', GC_Extend), ('\u{1a65}', + '\u{1a6c}', GC_Extend), ('\u{1a6d}', '\u{1a72}', GC_SpacingMark), ('\u{1a73}', '\u{1a7c}', + GC_Extend), ('\u{1a7f}', '\u{1a7f}', GC_Extend), ('\u{1ab0}', '\u{1abe}', GC_Extend), + ('\u{1b00}', '\u{1b03}', GC_Extend), ('\u{1b04}', '\u{1b04}', GC_SpacingMark), ('\u{1b34}', + '\u{1b34}', GC_Extend), ('\u{1b35}', '\u{1b35}', GC_SpacingMark), ('\u{1b36}', '\u{1b3a}', + GC_Extend), ('\u{1b3b}', '\u{1b3b}', GC_SpacingMark), ('\u{1b3c}', '\u{1b3c}', GC_Extend), + ('\u{1b3d}', '\u{1b41}', GC_SpacingMark), ('\u{1b42}', '\u{1b42}', GC_Extend), ('\u{1b43}', + '\u{1b44}', GC_SpacingMark), ('\u{1b6b}', '\u{1b73}', GC_Extend), ('\u{1b80}', '\u{1b81}', + GC_Extend), ('\u{1b82}', '\u{1b82}', GC_SpacingMark), ('\u{1ba1}', '\u{1ba1}', + GC_SpacingMark), ('\u{1ba2}', '\u{1ba5}', GC_Extend), ('\u{1ba6}', '\u{1ba7}', + GC_SpacingMark), ('\u{1ba8}', '\u{1ba9}', GC_Extend), ('\u{1baa}', '\u{1baa}', + GC_SpacingMark), ('\u{1bab}', '\u{1bad}', GC_Extend), ('\u{1be6}', '\u{1be6}', GC_Extend), + ('\u{1be7}', '\u{1be7}', GC_SpacingMark), ('\u{1be8}', '\u{1be9}', GC_Extend), ('\u{1bea}', + '\u{1bec}', GC_SpacingMark), ('\u{1bed}', '\u{1bed}', GC_Extend), ('\u{1bee}', '\u{1bee}', + GC_SpacingMark), ('\u{1bef}', '\u{1bf1}', GC_Extend), ('\u{1bf2}', '\u{1bf3}', + GC_SpacingMark), ('\u{1c24}', '\u{1c2b}', GC_SpacingMark), ('\u{1c2c}', '\u{1c33}', + GC_Extend), ('\u{1c34}', '\u{1c35}', GC_SpacingMark), ('\u{1c36}', '\u{1c37}', GC_Extend), + ('\u{1cd0}', '\u{1cd2}', GC_Extend), ('\u{1cd4}', '\u{1ce0}', GC_Extend), ('\u{1ce1}', + '\u{1ce1}', GC_SpacingMark), ('\u{1ce2}', '\u{1ce8}', GC_Extend), ('\u{1ced}', '\u{1ced}', + GC_Extend), ('\u{1cf2}', '\u{1cf3}', GC_SpacingMark), ('\u{1cf4}', '\u{1cf4}', GC_Extend), + ('\u{1cf8}', '\u{1cf9}', GC_Extend), ('\u{1dc0}', '\u{1df5}', GC_Extend), ('\u{1dfb}', + '\u{1dff}', GC_Extend), ('\u{200b}', '\u{200b}', GC_Control), ('\u{200c}', '\u{200c}', + GC_Extend), ('\u{200d}', '\u{200d}', GC_ZWJ), ('\u{200e}', '\u{200f}', GC_Control), + ('\u{2028}', '\u{202e}', GC_Control), ('\u{2060}', '\u{206f}', GC_Control), ('\u{20d0}', + '\u{20f0}', GC_Extend), ('\u{261d}', '\u{261d}', GC_E_Base), ('\u{26f9}', '\u{26f9}', + GC_E_Base), ('\u{270a}', '\u{270d}', GC_E_Base), ('\u{2764}', '\u{2764}', + GC_Glue_After_Zwj), ('\u{2cef}', '\u{2cf1}', GC_Extend), ('\u{2d7f}', '\u{2d7f}', + GC_Extend), ('\u{2de0}', '\u{2dff}', GC_Extend), ('\u{302a}', '\u{302f}', GC_Extend), + ('\u{3099}', '\u{309a}', GC_Extend), ('\u{a66f}', '\u{a672}', GC_Extend), ('\u{a674}', + '\u{a67d}', GC_Extend), ('\u{a69e}', '\u{a69f}', GC_Extend), ('\u{a6f0}', '\u{a6f1}', + GC_Extend), ('\u{a802}', '\u{a802}', GC_Extend), ('\u{a806}', '\u{a806}', GC_Extend), + ('\u{a80b}', '\u{a80b}', GC_Extend), ('\u{a823}', '\u{a824}', GC_SpacingMark), ('\u{a825}', + '\u{a826}', GC_Extend), ('\u{a827}', '\u{a827}', GC_SpacingMark), ('\u{a880}', '\u{a881}', + GC_SpacingMark), ('\u{a8b4}', '\u{a8c3}', GC_SpacingMark), ('\u{a8c4}', '\u{a8c5}', + GC_Extend), ('\u{a8e0}', '\u{a8f1}', GC_Extend), ('\u{a926}', '\u{a92d}', GC_Extend), + ('\u{a947}', '\u{a951}', GC_Extend), ('\u{a952}', '\u{a953}', GC_SpacingMark), ('\u{a960}', + '\u{a97c}', GC_L), ('\u{a980}', '\u{a982}', GC_Extend), ('\u{a983}', '\u{a983}', + GC_SpacingMark), ('\u{a9b3}', '\u{a9b3}', GC_Extend), ('\u{a9b4}', '\u{a9b5}', GC_SpacingMark), ('\u{a9b6}', '\u{a9b9}', GC_Extend), ('\u{a9ba}', '\u{a9bb}', GC_SpacingMark), ('\u{a9bc}', '\u{a9bc}', GC_Extend), ('\u{a9bd}', '\u{a9c0}', GC_SpacingMark), ('\u{a9e5}', '\u{a9e5}', GC_Extend), ('\u{aa29}', '\u{aa2e}', GC_Extend), @@ -765,15 +784,16 @@ pub mod grapheme { GC_Extend), ('\u{11082}', '\u{11082}', GC_SpacingMark), ('\u{110b0}', '\u{110b2}', GC_SpacingMark), ('\u{110b3}', '\u{110b6}', GC_Extend), ('\u{110b7}', '\u{110b8}', GC_SpacingMark), ('\u{110b9}', '\u{110ba}', GC_Extend), ('\u{110bd}', '\u{110bd}', - GC_Control), ('\u{11100}', '\u{11102}', GC_Extend), ('\u{11127}', '\u{1112b}', GC_Extend), + GC_Prepend), ('\u{11100}', '\u{11102}', GC_Extend), ('\u{11127}', '\u{1112b}', GC_Extend), ('\u{1112c}', '\u{1112c}', GC_SpacingMark), ('\u{1112d}', '\u{11134}', GC_Extend), ('\u{11173}', '\u{11173}', GC_Extend), ('\u{11180}', '\u{11181}', GC_Extend), ('\u{11182}', '\u{11182}', GC_SpacingMark), ('\u{111b3}', '\u{111b5}', GC_SpacingMark), ('\u{111b6}', - '\u{111be}', GC_Extend), ('\u{111bf}', '\u{111c0}', GC_SpacingMark), ('\u{111ca}', - '\u{111cc}', GC_Extend), ('\u{1122c}', '\u{1122e}', GC_SpacingMark), ('\u{1122f}', - '\u{11231}', GC_Extend), ('\u{11232}', '\u{11233}', GC_SpacingMark), ('\u{11234}', - '\u{11234}', GC_Extend), ('\u{11235}', '\u{11235}', GC_SpacingMark), ('\u{11236}', - '\u{11237}', GC_Extend), ('\u{112df}', '\u{112df}', GC_Extend), ('\u{112e0}', '\u{112e2}', + '\u{111be}', GC_Extend), ('\u{111bf}', '\u{111c0}', GC_SpacingMark), ('\u{111c2}', + '\u{111c3}', GC_Prepend), ('\u{111ca}', '\u{111cc}', GC_Extend), ('\u{1122c}', '\u{1122e}', + GC_SpacingMark), ('\u{1122f}', '\u{11231}', GC_Extend), ('\u{11232}', '\u{11233}', + GC_SpacingMark), ('\u{11234}', '\u{11234}', GC_Extend), ('\u{11235}', '\u{11235}', + GC_SpacingMark), ('\u{11236}', '\u{11237}', GC_Extend), ('\u{1123e}', '\u{1123e}', + GC_Extend), ('\u{112df}', '\u{112df}', GC_Extend), ('\u{112e0}', '\u{112e2}', GC_SpacingMark), ('\u{112e3}', '\u{112ea}', GC_Extend), ('\u{11300}', '\u{11301}', GC_Extend), ('\u{11302}', '\u{11303}', GC_SpacingMark), ('\u{1133c}', '\u{1133c}', GC_Extend), ('\u{1133e}', '\u{1133e}', GC_Extend), ('\u{1133f}', '\u{1133f}', @@ -781,6 +801,9 @@ pub mod grapheme { GC_SpacingMark), ('\u{11347}', '\u{11348}', GC_SpacingMark), ('\u{1134b}', '\u{1134d}', GC_SpacingMark), ('\u{11357}', '\u{11357}', GC_Extend), ('\u{11362}', '\u{11363}', GC_SpacingMark), ('\u{11366}', '\u{1136c}', GC_Extend), ('\u{11370}', '\u{11374}', + GC_Extend), ('\u{11435}', '\u{11437}', GC_SpacingMark), ('\u{11438}', '\u{1143f}', + GC_Extend), ('\u{11440}', '\u{11441}', GC_SpacingMark), ('\u{11442}', '\u{11444}', + GC_Extend), ('\u{11445}', '\u{11445}', GC_SpacingMark), ('\u{11446}', '\u{11446}', GC_Extend), ('\u{114b0}', '\u{114b0}', GC_Extend), ('\u{114b1}', '\u{114b2}', GC_SpacingMark), ('\u{114b3}', '\u{114b8}', GC_Extend), ('\u{114b9}', '\u{114b9}', GC_SpacingMark), ('\u{114ba}', '\u{114ba}', GC_Extend), ('\u{114bb}', '\u{114bc}', @@ -799,7 +822,13 @@ pub mod grapheme { GC_Extend), ('\u{116b6}', '\u{116b6}', GC_SpacingMark), ('\u{116b7}', '\u{116b7}', GC_Extend), ('\u{1171d}', '\u{1171f}', GC_Extend), ('\u{11720}', '\u{11721}', GC_SpacingMark), ('\u{11722}', '\u{11725}', GC_Extend), ('\u{11726}', '\u{11726}', - GC_SpacingMark), ('\u{11727}', '\u{1172b}', GC_Extend), ('\u{16af0}', '\u{16af4}', + GC_SpacingMark), ('\u{11727}', '\u{1172b}', GC_Extend), ('\u{11c2f}', '\u{11c2f}', + GC_SpacingMark), ('\u{11c30}', '\u{11c36}', GC_Extend), ('\u{11c38}', '\u{11c3d}', + GC_Extend), ('\u{11c3e}', '\u{11c3e}', GC_SpacingMark), ('\u{11c3f}', '\u{11c3f}', + GC_Extend), ('\u{11c92}', '\u{11ca7}', GC_Extend), ('\u{11ca9}', '\u{11ca9}', + GC_SpacingMark), ('\u{11caa}', '\u{11cb0}', GC_Extend), ('\u{11cb1}', '\u{11cb1}', + GC_SpacingMark), ('\u{11cb2}', '\u{11cb3}', GC_Extend), ('\u{11cb4}', '\u{11cb4}', + GC_SpacingMark), ('\u{11cb5}', '\u{11cb6}', GC_Extend), ('\u{16af0}', '\u{16af4}', GC_Extend), ('\u{16b30}', '\u{16b36}', GC_Extend), ('\u{16f51}', '\u{16f7e}', GC_SpacingMark), ('\u{16f8f}', '\u{16f92}', GC_Extend), ('\u{1bc9d}', '\u{1bc9e}', GC_Extend), ('\u{1bca0}', '\u{1bca3}', GC_Control), ('\u{1d165}', '\u{1d165}', GC_Extend), @@ -809,9 +838,26 @@ pub mod grapheme { '\u{1d18b}', GC_Extend), ('\u{1d1aa}', '\u{1d1ad}', GC_Extend), ('\u{1d242}', '\u{1d244}', GC_Extend), ('\u{1da00}', '\u{1da36}', GC_Extend), ('\u{1da3b}', '\u{1da6c}', GC_Extend), ('\u{1da75}', '\u{1da75}', GC_Extend), ('\u{1da84}', '\u{1da84}', GC_Extend), ('\u{1da9b}', - '\u{1da9f}', GC_Extend), ('\u{1daa1}', '\u{1daaf}', GC_Extend), ('\u{1e8d0}', '\u{1e8d6}', - GC_Extend), ('\u{1f1e6}', '\u{1f1ff}', GC_Regional_Indicator), ('\u{e0000}', '\u{e00ff}', - GC_Control), ('\u{e0100}', '\u{e01ef}', GC_Extend), ('\u{e01f0}', '\u{e0fff}', GC_Control) + '\u{1da9f}', GC_Extend), ('\u{1daa1}', '\u{1daaf}', GC_Extend), ('\u{1e000}', '\u{1e006}', + GC_Extend), ('\u{1e008}', '\u{1e018}', GC_Extend), ('\u{1e01b}', '\u{1e021}', GC_Extend), + ('\u{1e023}', '\u{1e024}', GC_Extend), ('\u{1e026}', '\u{1e02a}', GC_Extend), ('\u{1e8d0}', + '\u{1e8d6}', GC_Extend), ('\u{1e944}', '\u{1e94a}', GC_Extend), ('\u{1f1e6}', '\u{1f1ff}', + GC_Regional_Indicator), ('\u{1f385}', '\u{1f385}', GC_E_Base), ('\u{1f3c3}', '\u{1f3c4}', + GC_E_Base), ('\u{1f3ca}', '\u{1f3cb}', GC_E_Base), ('\u{1f3fb}', '\u{1f3ff}', + GC_E_Modifier), ('\u{1f442}', '\u{1f443}', GC_E_Base), ('\u{1f446}', '\u{1f450}', + GC_E_Base), ('\u{1f466}', '\u{1f469}', GC_E_Base_GAZ), ('\u{1f46e}', '\u{1f46e}', + GC_E_Base), ('\u{1f470}', '\u{1f478}', GC_E_Base), ('\u{1f47c}', '\u{1f47c}', GC_E_Base), + ('\u{1f481}', '\u{1f483}', GC_E_Base), ('\u{1f485}', '\u{1f487}', GC_E_Base), ('\u{1f48b}', + '\u{1f48b}', GC_Glue_After_Zwj), ('\u{1f4aa}', '\u{1f4aa}', GC_E_Base), ('\u{1f575}', + '\u{1f575}', GC_E_Base), ('\u{1f57a}', '\u{1f57a}', GC_E_Base), ('\u{1f590}', '\u{1f590}', + GC_E_Base), ('\u{1f595}', '\u{1f596}', GC_E_Base), ('\u{1f5e8}', '\u{1f5e8}', + GC_Glue_After_Zwj), ('\u{1f645}', '\u{1f647}', GC_E_Base), ('\u{1f64b}', '\u{1f64f}', + GC_E_Base), ('\u{1f6a3}', '\u{1f6a3}', GC_E_Base), ('\u{1f6b4}', '\u{1f6b6}', GC_E_Base), + ('\u{1f6c0}', '\u{1f6c0}', GC_E_Base), ('\u{1f918}', '\u{1f91e}', GC_E_Base), ('\u{1f926}', + '\u{1f926}', GC_E_Base), ('\u{1f930}', '\u{1f930}', GC_E_Base), ('\u{1f933}', '\u{1f939}', + GC_E_Base), ('\u{1f93c}', '\u{1f93e}', GC_E_Base), ('\u{e0000}', '\u{e001f}', GC_Control), + ('\u{e0020}', '\u{e007f}', GC_Extend), ('\u{e0080}', '\u{e00ff}', GC_Control), ('\u{e0100}', + '\u{e01ef}', GC_Extend), ('\u{e01f0}', '\u{e0fff}', GC_Control) ]; } @@ -822,15 +868,19 @@ pub mod word { pub use self::WordCat::*; #[allow(non_camel_case_types)] - #[derive(Clone, Copy, PartialEq, Eq)] + #[derive(Clone, Copy, PartialEq, Eq, Debug)] pub enum WordCat { WC_ALetter, WC_Any, WC_CR, WC_Double_Quote, + WC_E_Base, + WC_E_Base_GAZ, + WC_E_Modifier, WC_Extend, WC_ExtendNumLet, WC_Format, + WC_Glue_After_Zwj, WC_Hebrew_Letter, WC_Katakana, WC_LF, @@ -841,6 +891,7 @@ pub mod word { WC_Numeric, WC_Regional_Indicator, WC_Single_Quote, + WC_ZWJ, } fn bsearch_range_value_table(c: char, r: &'static [(char, char, WordCat)]) -> WordCat { @@ -905,80 +956,82 @@ pub mod word { ('\u{81a}', '\u{81a}', WC_ALetter), ('\u{81b}', '\u{823}', WC_Extend), ('\u{824}', '\u{824}', WC_ALetter), ('\u{825}', '\u{827}', WC_Extend), ('\u{828}', '\u{828}', WC_ALetter), ('\u{829}', '\u{82d}', WC_Extend), ('\u{840}', '\u{858}', WC_ALetter), - ('\u{859}', '\u{85b}', WC_Extend), ('\u{8a0}', '\u{8b4}', WC_ALetter), ('\u{8e3}', - '\u{903}', WC_Extend), ('\u{904}', '\u{939}', WC_ALetter), ('\u{93a}', '\u{93c}', - WC_Extend), ('\u{93d}', '\u{93d}', WC_ALetter), ('\u{93e}', '\u{94f}', WC_Extend), - ('\u{950}', '\u{950}', WC_ALetter), ('\u{951}', '\u{957}', WC_Extend), ('\u{958}', - '\u{961}', WC_ALetter), ('\u{962}', '\u{963}', WC_Extend), ('\u{966}', '\u{96f}', - WC_Numeric), ('\u{971}', '\u{980}', WC_ALetter), ('\u{981}', '\u{983}', WC_Extend), - ('\u{985}', '\u{98c}', WC_ALetter), ('\u{98f}', '\u{990}', WC_ALetter), ('\u{993}', - '\u{9a8}', WC_ALetter), ('\u{9aa}', '\u{9b0}', WC_ALetter), ('\u{9b2}', '\u{9b2}', - WC_ALetter), ('\u{9b6}', '\u{9b9}', WC_ALetter), ('\u{9bc}', '\u{9bc}', WC_Extend), - ('\u{9bd}', '\u{9bd}', WC_ALetter), ('\u{9be}', '\u{9c4}', WC_Extend), ('\u{9c7}', - '\u{9c8}', WC_Extend), ('\u{9cb}', '\u{9cd}', WC_Extend), ('\u{9ce}', '\u{9ce}', - WC_ALetter), ('\u{9d7}', '\u{9d7}', WC_Extend), ('\u{9dc}', '\u{9dd}', WC_ALetter), - ('\u{9df}', '\u{9e1}', WC_ALetter), ('\u{9e2}', '\u{9e3}', WC_Extend), ('\u{9e6}', - '\u{9ef}', WC_Numeric), ('\u{9f0}', '\u{9f1}', WC_ALetter), ('\u{a01}', '\u{a03}', - WC_Extend), ('\u{a05}', '\u{a0a}', WC_ALetter), ('\u{a0f}', '\u{a10}', WC_ALetter), - ('\u{a13}', '\u{a28}', WC_ALetter), ('\u{a2a}', '\u{a30}', WC_ALetter), ('\u{a32}', - '\u{a33}', WC_ALetter), ('\u{a35}', '\u{a36}', WC_ALetter), ('\u{a38}', '\u{a39}', - WC_ALetter), ('\u{a3c}', '\u{a3c}', WC_Extend), ('\u{a3e}', '\u{a42}', WC_Extend), - ('\u{a47}', '\u{a48}', WC_Extend), ('\u{a4b}', '\u{a4d}', WC_Extend), ('\u{a51}', '\u{a51}', - WC_Extend), ('\u{a59}', '\u{a5c}', WC_ALetter), ('\u{a5e}', '\u{a5e}', WC_ALetter), - ('\u{a66}', '\u{a6f}', WC_Numeric), ('\u{a70}', '\u{a71}', WC_Extend), ('\u{a72}', - '\u{a74}', WC_ALetter), ('\u{a75}', '\u{a75}', WC_Extend), ('\u{a81}', '\u{a83}', - WC_Extend), ('\u{a85}', '\u{a8d}', WC_ALetter), ('\u{a8f}', '\u{a91}', WC_ALetter), - ('\u{a93}', '\u{aa8}', WC_ALetter), ('\u{aaa}', '\u{ab0}', WC_ALetter), ('\u{ab2}', - '\u{ab3}', WC_ALetter), ('\u{ab5}', '\u{ab9}', WC_ALetter), ('\u{abc}', '\u{abc}', - WC_Extend), ('\u{abd}', '\u{abd}', WC_ALetter), ('\u{abe}', '\u{ac5}', WC_Extend), - ('\u{ac7}', '\u{ac9}', WC_Extend), ('\u{acb}', '\u{acd}', WC_Extend), ('\u{ad0}', '\u{ad0}', - WC_ALetter), ('\u{ae0}', '\u{ae1}', WC_ALetter), ('\u{ae2}', '\u{ae3}', WC_Extend), - ('\u{ae6}', '\u{aef}', WC_Numeric), ('\u{af9}', '\u{af9}', WC_ALetter), ('\u{b01}', - '\u{b03}', WC_Extend), ('\u{b05}', '\u{b0c}', WC_ALetter), ('\u{b0f}', '\u{b10}', - WC_ALetter), ('\u{b13}', '\u{b28}', WC_ALetter), ('\u{b2a}', '\u{b30}', WC_ALetter), - ('\u{b32}', '\u{b33}', WC_ALetter), ('\u{b35}', '\u{b39}', WC_ALetter), ('\u{b3c}', - '\u{b3c}', WC_Extend), ('\u{b3d}', '\u{b3d}', WC_ALetter), ('\u{b3e}', '\u{b44}', - WC_Extend), ('\u{b47}', '\u{b48}', WC_Extend), ('\u{b4b}', '\u{b4d}', WC_Extend), - ('\u{b56}', '\u{b57}', WC_Extend), ('\u{b5c}', '\u{b5d}', WC_ALetter), ('\u{b5f}', - '\u{b61}', WC_ALetter), ('\u{b62}', '\u{b63}', WC_Extend), ('\u{b66}', '\u{b6f}', - WC_Numeric), ('\u{b71}', '\u{b71}', WC_ALetter), ('\u{b82}', '\u{b82}', WC_Extend), - ('\u{b83}', '\u{b83}', WC_ALetter), ('\u{b85}', '\u{b8a}', WC_ALetter), ('\u{b8e}', - '\u{b90}', WC_ALetter), ('\u{b92}', '\u{b95}', WC_ALetter), ('\u{b99}', '\u{b9a}', - WC_ALetter), ('\u{b9c}', '\u{b9c}', WC_ALetter), ('\u{b9e}', '\u{b9f}', WC_ALetter), - ('\u{ba3}', '\u{ba4}', WC_ALetter), ('\u{ba8}', '\u{baa}', WC_ALetter), ('\u{bae}', - '\u{bb9}', WC_ALetter), ('\u{bbe}', '\u{bc2}', WC_Extend), ('\u{bc6}', '\u{bc8}', - WC_Extend), ('\u{bca}', '\u{bcd}', WC_Extend), ('\u{bd0}', '\u{bd0}', WC_ALetter), - ('\u{bd7}', '\u{bd7}', WC_Extend), ('\u{be6}', '\u{bef}', WC_Numeric), ('\u{c00}', - '\u{c03}', WC_Extend), ('\u{c05}', '\u{c0c}', WC_ALetter), ('\u{c0e}', '\u{c10}', - WC_ALetter), ('\u{c12}', '\u{c28}', WC_ALetter), ('\u{c2a}', '\u{c39}', WC_ALetter), - ('\u{c3d}', '\u{c3d}', WC_ALetter), ('\u{c3e}', '\u{c44}', WC_Extend), ('\u{c46}', - '\u{c48}', WC_Extend), ('\u{c4a}', '\u{c4d}', WC_Extend), ('\u{c55}', '\u{c56}', WC_Extend), - ('\u{c58}', '\u{c5a}', WC_ALetter), ('\u{c60}', '\u{c61}', WC_ALetter), ('\u{c62}', - '\u{c63}', WC_Extend), ('\u{c66}', '\u{c6f}', WC_Numeric), ('\u{c81}', '\u{c83}', - WC_Extend), ('\u{c85}', '\u{c8c}', WC_ALetter), ('\u{c8e}', '\u{c90}', WC_ALetter), - ('\u{c92}', '\u{ca8}', WC_ALetter), ('\u{caa}', '\u{cb3}', WC_ALetter), ('\u{cb5}', - '\u{cb9}', WC_ALetter), ('\u{cbc}', '\u{cbc}', WC_Extend), ('\u{cbd}', '\u{cbd}', - WC_ALetter), ('\u{cbe}', '\u{cc4}', WC_Extend), ('\u{cc6}', '\u{cc8}', WC_Extend), - ('\u{cca}', '\u{ccd}', WC_Extend), ('\u{cd5}', '\u{cd6}', WC_Extend), ('\u{cde}', '\u{cde}', - WC_ALetter), ('\u{ce0}', '\u{ce1}', WC_ALetter), ('\u{ce2}', '\u{ce3}', WC_Extend), - ('\u{ce6}', '\u{cef}', WC_Numeric), ('\u{cf1}', '\u{cf2}', WC_ALetter), ('\u{d01}', - '\u{d03}', WC_Extend), ('\u{d05}', '\u{d0c}', WC_ALetter), ('\u{d0e}', '\u{d10}', - WC_ALetter), ('\u{d12}', '\u{d3a}', WC_ALetter), ('\u{d3d}', '\u{d3d}', WC_ALetter), - ('\u{d3e}', '\u{d44}', WC_Extend), ('\u{d46}', '\u{d48}', WC_Extend), ('\u{d4a}', '\u{d4d}', - WC_Extend), ('\u{d4e}', '\u{d4e}', WC_ALetter), ('\u{d57}', '\u{d57}', WC_Extend), - ('\u{d5f}', '\u{d61}', WC_ALetter), ('\u{d62}', '\u{d63}', WC_Extend), ('\u{d66}', - '\u{d6f}', WC_Numeric), ('\u{d7a}', '\u{d7f}', WC_ALetter), ('\u{d82}', '\u{d83}', - WC_Extend), ('\u{d85}', '\u{d96}', WC_ALetter), ('\u{d9a}', '\u{db1}', WC_ALetter), - ('\u{db3}', '\u{dbb}', WC_ALetter), ('\u{dbd}', '\u{dbd}', WC_ALetter), ('\u{dc0}', - '\u{dc6}', WC_ALetter), ('\u{dca}', '\u{dca}', WC_Extend), ('\u{dcf}', '\u{dd4}', - WC_Extend), ('\u{dd6}', '\u{dd6}', WC_Extend), ('\u{dd8}', '\u{ddf}', WC_Extend), - ('\u{de6}', '\u{def}', WC_Numeric), ('\u{df2}', '\u{df3}', WC_Extend), ('\u{e31}', - '\u{e31}', WC_Extend), ('\u{e34}', '\u{e3a}', WC_Extend), ('\u{e47}', '\u{e4e}', WC_Extend), - ('\u{e50}', '\u{e59}', WC_Numeric), ('\u{eb1}', '\u{eb1}', WC_Extend), ('\u{eb4}', - '\u{eb9}', WC_Extend), ('\u{ebb}', '\u{ebc}', WC_Extend), ('\u{ec8}', '\u{ecd}', WC_Extend), - ('\u{ed0}', '\u{ed9}', WC_Numeric), ('\u{f00}', '\u{f00}', WC_ALetter), ('\u{f18}', - '\u{f19}', WC_Extend), ('\u{f20}', '\u{f29}', WC_Numeric), ('\u{f35}', '\u{f35}', - WC_Extend), ('\u{f37}', '\u{f37}', WC_Extend), ('\u{f39}', '\u{f39}', WC_Extend), + ('\u{859}', '\u{85b}', WC_Extend), ('\u{8a0}', '\u{8b4}', WC_ALetter), ('\u{8b6}', + '\u{8bd}', WC_ALetter), ('\u{8d4}', '\u{8e1}', WC_Extend), ('\u{8e2}', '\u{8e2}', + WC_Format), ('\u{8e3}', '\u{903}', WC_Extend), ('\u{904}', '\u{939}', WC_ALetter), + ('\u{93a}', '\u{93c}', WC_Extend), ('\u{93d}', '\u{93d}', WC_ALetter), ('\u{93e}', + '\u{94f}', WC_Extend), ('\u{950}', '\u{950}', WC_ALetter), ('\u{951}', '\u{957}', + WC_Extend), ('\u{958}', '\u{961}', WC_ALetter), ('\u{962}', '\u{963}', WC_Extend), + ('\u{966}', '\u{96f}', WC_Numeric), ('\u{971}', '\u{980}', WC_ALetter), ('\u{981}', + '\u{983}', WC_Extend), ('\u{985}', '\u{98c}', WC_ALetter), ('\u{98f}', '\u{990}', + WC_ALetter), ('\u{993}', '\u{9a8}', WC_ALetter), ('\u{9aa}', '\u{9b0}', WC_ALetter), + ('\u{9b2}', '\u{9b2}', WC_ALetter), ('\u{9b6}', '\u{9b9}', WC_ALetter), ('\u{9bc}', + '\u{9bc}', WC_Extend), ('\u{9bd}', '\u{9bd}', WC_ALetter), ('\u{9be}', '\u{9c4}', + WC_Extend), ('\u{9c7}', '\u{9c8}', WC_Extend), ('\u{9cb}', '\u{9cd}', WC_Extend), + ('\u{9ce}', '\u{9ce}', WC_ALetter), ('\u{9d7}', '\u{9d7}', WC_Extend), ('\u{9dc}', + '\u{9dd}', WC_ALetter), ('\u{9df}', '\u{9e1}', WC_ALetter), ('\u{9e2}', '\u{9e3}', + WC_Extend), ('\u{9e6}', '\u{9ef}', WC_Numeric), ('\u{9f0}', '\u{9f1}', WC_ALetter), + ('\u{a01}', '\u{a03}', WC_Extend), ('\u{a05}', '\u{a0a}', WC_ALetter), ('\u{a0f}', + '\u{a10}', WC_ALetter), ('\u{a13}', '\u{a28}', WC_ALetter), ('\u{a2a}', '\u{a30}', + WC_ALetter), ('\u{a32}', '\u{a33}', WC_ALetter), ('\u{a35}', '\u{a36}', WC_ALetter), + ('\u{a38}', '\u{a39}', WC_ALetter), ('\u{a3c}', '\u{a3c}', WC_Extend), ('\u{a3e}', + '\u{a42}', WC_Extend), ('\u{a47}', '\u{a48}', WC_Extend), ('\u{a4b}', '\u{a4d}', WC_Extend), + ('\u{a51}', '\u{a51}', WC_Extend), ('\u{a59}', '\u{a5c}', WC_ALetter), ('\u{a5e}', + '\u{a5e}', WC_ALetter), ('\u{a66}', '\u{a6f}', WC_Numeric), ('\u{a70}', '\u{a71}', + WC_Extend), ('\u{a72}', '\u{a74}', WC_ALetter), ('\u{a75}', '\u{a75}', WC_Extend), + ('\u{a81}', '\u{a83}', WC_Extend), ('\u{a85}', '\u{a8d}', WC_ALetter), ('\u{a8f}', + '\u{a91}', WC_ALetter), ('\u{a93}', '\u{aa8}', WC_ALetter), ('\u{aaa}', '\u{ab0}', + WC_ALetter), ('\u{ab2}', '\u{ab3}', WC_ALetter), ('\u{ab5}', '\u{ab9}', WC_ALetter), + ('\u{abc}', '\u{abc}', WC_Extend), ('\u{abd}', '\u{abd}', WC_ALetter), ('\u{abe}', + '\u{ac5}', WC_Extend), ('\u{ac7}', '\u{ac9}', WC_Extend), ('\u{acb}', '\u{acd}', WC_Extend), + ('\u{ad0}', '\u{ad0}', WC_ALetter), ('\u{ae0}', '\u{ae1}', WC_ALetter), ('\u{ae2}', + '\u{ae3}', WC_Extend), ('\u{ae6}', '\u{aef}', WC_Numeric), ('\u{af9}', '\u{af9}', + WC_ALetter), ('\u{b01}', '\u{b03}', WC_Extend), ('\u{b05}', '\u{b0c}', WC_ALetter), + ('\u{b0f}', '\u{b10}', WC_ALetter), ('\u{b13}', '\u{b28}', WC_ALetter), ('\u{b2a}', + '\u{b30}', WC_ALetter), ('\u{b32}', '\u{b33}', WC_ALetter), ('\u{b35}', '\u{b39}', + WC_ALetter), ('\u{b3c}', '\u{b3c}', WC_Extend), ('\u{b3d}', '\u{b3d}', WC_ALetter), + ('\u{b3e}', '\u{b44}', WC_Extend), ('\u{b47}', '\u{b48}', WC_Extend), ('\u{b4b}', '\u{b4d}', + WC_Extend), ('\u{b56}', '\u{b57}', WC_Extend), ('\u{b5c}', '\u{b5d}', WC_ALetter), + ('\u{b5f}', '\u{b61}', WC_ALetter), ('\u{b62}', '\u{b63}', WC_Extend), ('\u{b66}', + '\u{b6f}', WC_Numeric), ('\u{b71}', '\u{b71}', WC_ALetter), ('\u{b82}', '\u{b82}', + WC_Extend), ('\u{b83}', '\u{b83}', WC_ALetter), ('\u{b85}', '\u{b8a}', WC_ALetter), + ('\u{b8e}', '\u{b90}', WC_ALetter), ('\u{b92}', '\u{b95}', WC_ALetter), ('\u{b99}', + '\u{b9a}', WC_ALetter), ('\u{b9c}', '\u{b9c}', WC_ALetter), ('\u{b9e}', '\u{b9f}', + WC_ALetter), ('\u{ba3}', '\u{ba4}', WC_ALetter), ('\u{ba8}', '\u{baa}', WC_ALetter), + ('\u{bae}', '\u{bb9}', WC_ALetter), ('\u{bbe}', '\u{bc2}', WC_Extend), ('\u{bc6}', + '\u{bc8}', WC_Extend), ('\u{bca}', '\u{bcd}', WC_Extend), ('\u{bd0}', '\u{bd0}', + WC_ALetter), ('\u{bd7}', '\u{bd7}', WC_Extend), ('\u{be6}', '\u{bef}', WC_Numeric), + ('\u{c00}', '\u{c03}', WC_Extend), ('\u{c05}', '\u{c0c}', WC_ALetter), ('\u{c0e}', + '\u{c10}', WC_ALetter), ('\u{c12}', '\u{c28}', WC_ALetter), ('\u{c2a}', '\u{c39}', + WC_ALetter), ('\u{c3d}', '\u{c3d}', WC_ALetter), ('\u{c3e}', '\u{c44}', WC_Extend), + ('\u{c46}', '\u{c48}', WC_Extend), ('\u{c4a}', '\u{c4d}', WC_Extend), ('\u{c55}', '\u{c56}', + WC_Extend), ('\u{c58}', '\u{c5a}', WC_ALetter), ('\u{c60}', '\u{c61}', WC_ALetter), + ('\u{c62}', '\u{c63}', WC_Extend), ('\u{c66}', '\u{c6f}', WC_Numeric), ('\u{c80}', + '\u{c80}', WC_ALetter), ('\u{c81}', '\u{c83}', WC_Extend), ('\u{c85}', '\u{c8c}', + WC_ALetter), ('\u{c8e}', '\u{c90}', WC_ALetter), ('\u{c92}', '\u{ca8}', WC_ALetter), + ('\u{caa}', '\u{cb3}', WC_ALetter), ('\u{cb5}', '\u{cb9}', WC_ALetter), ('\u{cbc}', + '\u{cbc}', WC_Extend), ('\u{cbd}', '\u{cbd}', WC_ALetter), ('\u{cbe}', '\u{cc4}', + WC_Extend), ('\u{cc6}', '\u{cc8}', WC_Extend), ('\u{cca}', '\u{ccd}', WC_Extend), + ('\u{cd5}', '\u{cd6}', WC_Extend), ('\u{cde}', '\u{cde}', WC_ALetter), ('\u{ce0}', + '\u{ce1}', WC_ALetter), ('\u{ce2}', '\u{ce3}', WC_Extend), ('\u{ce6}', '\u{cef}', + WC_Numeric), ('\u{cf1}', '\u{cf2}', WC_ALetter), ('\u{d01}', '\u{d03}', WC_Extend), + ('\u{d05}', '\u{d0c}', WC_ALetter), ('\u{d0e}', '\u{d10}', WC_ALetter), ('\u{d12}', + '\u{d3a}', WC_ALetter), ('\u{d3d}', '\u{d3d}', WC_ALetter), ('\u{d3e}', '\u{d44}', + WC_Extend), ('\u{d46}', '\u{d48}', WC_Extend), ('\u{d4a}', '\u{d4d}', WC_Extend), + ('\u{d4e}', '\u{d4e}', WC_ALetter), ('\u{d54}', '\u{d56}', WC_ALetter), ('\u{d57}', + '\u{d57}', WC_Extend), ('\u{d5f}', '\u{d61}', WC_ALetter), ('\u{d62}', '\u{d63}', + WC_Extend), ('\u{d66}', '\u{d6f}', WC_Numeric), ('\u{d7a}', '\u{d7f}', WC_ALetter), + ('\u{d82}', '\u{d83}', WC_Extend), ('\u{d85}', '\u{d96}', WC_ALetter), ('\u{d9a}', + '\u{db1}', WC_ALetter), ('\u{db3}', '\u{dbb}', WC_ALetter), ('\u{dbd}', '\u{dbd}', + WC_ALetter), ('\u{dc0}', '\u{dc6}', WC_ALetter), ('\u{dca}', '\u{dca}', WC_Extend), + ('\u{dcf}', '\u{dd4}', WC_Extend), ('\u{dd6}', '\u{dd6}', WC_Extend), ('\u{dd8}', '\u{ddf}', + WC_Extend), ('\u{de6}', '\u{def}', WC_Numeric), ('\u{df2}', '\u{df3}', WC_Extend), + ('\u{e31}', '\u{e31}', WC_Extend), ('\u{e34}', '\u{e3a}', WC_Extend), ('\u{e47}', '\u{e4e}', + WC_Extend), ('\u{e50}', '\u{e59}', WC_Numeric), ('\u{eb1}', '\u{eb1}', WC_Extend), + ('\u{eb4}', '\u{eb9}', WC_Extend), ('\u{ebb}', '\u{ebc}', WC_Extend), ('\u{ec8}', '\u{ecd}', + WC_Extend), ('\u{ed0}', '\u{ed9}', WC_Numeric), ('\u{f00}', '\u{f00}', WC_ALetter), + ('\u{f18}', '\u{f19}', WC_Extend), ('\u{f20}', '\u{f29}', WC_Numeric), ('\u{f35}', + '\u{f35}', WC_Extend), ('\u{f37}', '\u{f37}', WC_Extend), ('\u{f39}', '\u{f39}', WC_Extend), ('\u{f3e}', '\u{f3f}', WC_Extend), ('\u{f40}', '\u{f47}', WC_ALetter), ('\u{f49}', '\u{f6c}', WC_ALetter), ('\u{f71}', '\u{f84}', WC_Extend), ('\u{f86}', '\u{f87}', WC_Extend), ('\u{f88}', '\u{f8c}', WC_ALetter), ('\u{f8d}', '\u{f97}', WC_Extend), @@ -1007,114 +1060,118 @@ pub mod word { '\u{1773}', WC_Extend), ('\u{17b4}', '\u{17d3}', WC_Extend), ('\u{17dd}', '\u{17dd}', WC_Extend), ('\u{17e0}', '\u{17e9}', WC_Numeric), ('\u{180b}', '\u{180d}', WC_Extend), ('\u{180e}', '\u{180e}', WC_Format), ('\u{1810}', '\u{1819}', WC_Numeric), ('\u{1820}', - '\u{1877}', WC_ALetter), ('\u{1880}', '\u{18a8}', WC_ALetter), ('\u{18a9}', '\u{18a9}', - WC_Extend), ('\u{18aa}', '\u{18aa}', WC_ALetter), ('\u{18b0}', '\u{18f5}', WC_ALetter), - ('\u{1900}', '\u{191e}', WC_ALetter), ('\u{1920}', '\u{192b}', WC_Extend), ('\u{1930}', - '\u{193b}', WC_Extend), ('\u{1946}', '\u{194f}', WC_Numeric), ('\u{19d0}', '\u{19d9}', - WC_Numeric), ('\u{1a00}', '\u{1a16}', WC_ALetter), ('\u{1a17}', '\u{1a1b}', WC_Extend), - ('\u{1a55}', '\u{1a5e}', WC_Extend), ('\u{1a60}', '\u{1a7c}', WC_Extend), ('\u{1a7f}', - '\u{1a7f}', WC_Extend), ('\u{1a80}', '\u{1a89}', WC_Numeric), ('\u{1a90}', '\u{1a99}', - WC_Numeric), ('\u{1ab0}', '\u{1abe}', WC_Extend), ('\u{1b00}', '\u{1b04}', WC_Extend), - ('\u{1b05}', '\u{1b33}', WC_ALetter), ('\u{1b34}', '\u{1b44}', WC_Extend), ('\u{1b45}', - '\u{1b4b}', WC_ALetter), ('\u{1b50}', '\u{1b59}', WC_Numeric), ('\u{1b6b}', '\u{1b73}', - WC_Extend), ('\u{1b80}', '\u{1b82}', WC_Extend), ('\u{1b83}', '\u{1ba0}', WC_ALetter), - ('\u{1ba1}', '\u{1bad}', WC_Extend), ('\u{1bae}', '\u{1baf}', WC_ALetter), ('\u{1bb0}', - '\u{1bb9}', WC_Numeric), ('\u{1bba}', '\u{1be5}', WC_ALetter), ('\u{1be6}', '\u{1bf3}', - WC_Extend), ('\u{1c00}', '\u{1c23}', WC_ALetter), ('\u{1c24}', '\u{1c37}', WC_Extend), - ('\u{1c40}', '\u{1c49}', WC_Numeric), ('\u{1c4d}', '\u{1c4f}', WC_ALetter), ('\u{1c50}', - '\u{1c59}', WC_Numeric), ('\u{1c5a}', '\u{1c7d}', WC_ALetter), ('\u{1cd0}', '\u{1cd2}', - WC_Extend), ('\u{1cd4}', '\u{1ce8}', WC_Extend), ('\u{1ce9}', '\u{1cec}', WC_ALetter), - ('\u{1ced}', '\u{1ced}', WC_Extend), ('\u{1cee}', '\u{1cf1}', WC_ALetter), ('\u{1cf2}', - '\u{1cf4}', WC_Extend), ('\u{1cf5}', '\u{1cf6}', WC_ALetter), ('\u{1cf8}', '\u{1cf9}', - WC_Extend), ('\u{1d00}', '\u{1dbf}', WC_ALetter), ('\u{1dc0}', '\u{1df5}', WC_Extend), - ('\u{1dfc}', '\u{1dff}', WC_Extend), ('\u{1e00}', '\u{1f15}', WC_ALetter), ('\u{1f18}', - '\u{1f1d}', WC_ALetter), ('\u{1f20}', '\u{1f45}', WC_ALetter), ('\u{1f48}', '\u{1f4d}', - WC_ALetter), ('\u{1f50}', '\u{1f57}', WC_ALetter), ('\u{1f59}', '\u{1f59}', WC_ALetter), - ('\u{1f5b}', '\u{1f5b}', WC_ALetter), ('\u{1f5d}', '\u{1f5d}', WC_ALetter), ('\u{1f5f}', - '\u{1f7d}', WC_ALetter), ('\u{1f80}', '\u{1fb4}', WC_ALetter), ('\u{1fb6}', '\u{1fbc}', - WC_ALetter), ('\u{1fbe}', '\u{1fbe}', WC_ALetter), ('\u{1fc2}', '\u{1fc4}', WC_ALetter), - ('\u{1fc6}', '\u{1fcc}', WC_ALetter), ('\u{1fd0}', '\u{1fd3}', WC_ALetter), ('\u{1fd6}', - '\u{1fdb}', WC_ALetter), ('\u{1fe0}', '\u{1fec}', WC_ALetter), ('\u{1ff2}', '\u{1ff4}', - WC_ALetter), ('\u{1ff6}', '\u{1ffc}', WC_ALetter), ('\u{200c}', '\u{200d}', WC_Extend), - ('\u{200e}', '\u{200f}', WC_Format), ('\u{2018}', '\u{2019}', WC_MidNumLet), ('\u{2024}', - '\u{2024}', WC_MidNumLet), ('\u{2027}', '\u{2027}', WC_MidLetter), ('\u{2028}', '\u{2029}', - WC_Newline), ('\u{202a}', '\u{202e}', WC_Format), ('\u{203f}', '\u{2040}', WC_ExtendNumLet), - ('\u{2044}', '\u{2044}', WC_MidNum), ('\u{2054}', '\u{2054}', WC_ExtendNumLet), ('\u{2060}', - '\u{2064}', WC_Format), ('\u{2066}', '\u{206f}', WC_Format), ('\u{2071}', '\u{2071}', - WC_ALetter), ('\u{207f}', '\u{207f}', WC_ALetter), ('\u{2090}', '\u{209c}', WC_ALetter), - ('\u{20d0}', '\u{20f0}', WC_Extend), ('\u{2102}', '\u{2102}', WC_ALetter), ('\u{2107}', - '\u{2107}', WC_ALetter), ('\u{210a}', '\u{2113}', WC_ALetter), ('\u{2115}', '\u{2115}', - WC_ALetter), ('\u{2119}', '\u{211d}', WC_ALetter), ('\u{2124}', '\u{2124}', WC_ALetter), - ('\u{2126}', '\u{2126}', WC_ALetter), ('\u{2128}', '\u{2128}', WC_ALetter), ('\u{212a}', - '\u{212d}', WC_ALetter), ('\u{212f}', '\u{2139}', WC_ALetter), ('\u{213c}', '\u{213f}', - WC_ALetter), ('\u{2145}', '\u{2149}', WC_ALetter), ('\u{214e}', '\u{214e}', WC_ALetter), - ('\u{2160}', '\u{2188}', WC_ALetter), ('\u{24b6}', '\u{24e9}', WC_ALetter), ('\u{2c00}', - '\u{2c2e}', WC_ALetter), ('\u{2c30}', '\u{2c5e}', WC_ALetter), ('\u{2c60}', '\u{2ce4}', - WC_ALetter), ('\u{2ceb}', '\u{2cee}', WC_ALetter), ('\u{2cef}', '\u{2cf1}', WC_Extend), - ('\u{2cf2}', '\u{2cf3}', WC_ALetter), ('\u{2d00}', '\u{2d25}', WC_ALetter), ('\u{2d27}', - '\u{2d27}', WC_ALetter), ('\u{2d2d}', '\u{2d2d}', WC_ALetter), ('\u{2d30}', '\u{2d67}', - WC_ALetter), ('\u{2d6f}', '\u{2d6f}', WC_ALetter), ('\u{2d7f}', '\u{2d7f}', WC_Extend), - ('\u{2d80}', '\u{2d96}', WC_ALetter), ('\u{2da0}', '\u{2da6}', WC_ALetter), ('\u{2da8}', - '\u{2dae}', WC_ALetter), ('\u{2db0}', '\u{2db6}', WC_ALetter), ('\u{2db8}', '\u{2dbe}', - WC_ALetter), ('\u{2dc0}', '\u{2dc6}', WC_ALetter), ('\u{2dc8}', '\u{2dce}', WC_ALetter), - ('\u{2dd0}', '\u{2dd6}', WC_ALetter), ('\u{2dd8}', '\u{2dde}', WC_ALetter), ('\u{2de0}', - '\u{2dff}', WC_Extend), ('\u{2e2f}', '\u{2e2f}', WC_ALetter), ('\u{3005}', '\u{3005}', - WC_ALetter), ('\u{302a}', '\u{302f}', WC_Extend), ('\u{3031}', '\u{3035}', WC_Katakana), - ('\u{303b}', '\u{303c}', WC_ALetter), ('\u{3099}', '\u{309a}', WC_Extend), ('\u{309b}', - '\u{309c}', WC_Katakana), ('\u{30a0}', '\u{30fa}', WC_Katakana), ('\u{30fc}', '\u{30ff}', - WC_Katakana), ('\u{3105}', '\u{312d}', WC_ALetter), ('\u{3131}', '\u{318e}', WC_ALetter), - ('\u{31a0}', '\u{31ba}', WC_ALetter), ('\u{31f0}', '\u{31ff}', WC_Katakana), ('\u{32d0}', - '\u{32fe}', WC_Katakana), ('\u{3300}', '\u{3357}', WC_Katakana), ('\u{a000}', '\u{a48c}', - WC_ALetter), ('\u{a4d0}', '\u{a4fd}', WC_ALetter), ('\u{a500}', '\u{a60c}', WC_ALetter), - ('\u{a610}', '\u{a61f}', WC_ALetter), ('\u{a620}', '\u{a629}', WC_Numeric), ('\u{a62a}', - '\u{a62b}', WC_ALetter), ('\u{a640}', '\u{a66e}', WC_ALetter), ('\u{a66f}', '\u{a672}', - WC_Extend), ('\u{a674}', '\u{a67d}', WC_Extend), ('\u{a67f}', '\u{a69d}', WC_ALetter), - ('\u{a69e}', '\u{a69f}', WC_Extend), ('\u{a6a0}', '\u{a6ef}', WC_ALetter), ('\u{a6f0}', - '\u{a6f1}', WC_Extend), ('\u{a717}', '\u{a71f}', WC_ALetter), ('\u{a722}', '\u{a788}', - WC_ALetter), ('\u{a78b}', '\u{a7ad}', WC_ALetter), ('\u{a7b0}', '\u{a7b7}', WC_ALetter), - ('\u{a7f7}', '\u{a801}', WC_ALetter), ('\u{a802}', '\u{a802}', WC_Extend), ('\u{a803}', - '\u{a805}', WC_ALetter), ('\u{a806}', '\u{a806}', WC_Extend), ('\u{a807}', '\u{a80a}', - WC_ALetter), ('\u{a80b}', '\u{a80b}', WC_Extend), ('\u{a80c}', '\u{a822}', WC_ALetter), - ('\u{a823}', '\u{a827}', WC_Extend), ('\u{a840}', '\u{a873}', WC_ALetter), ('\u{a880}', - '\u{a881}', WC_Extend), ('\u{a882}', '\u{a8b3}', WC_ALetter), ('\u{a8b4}', '\u{a8c4}', - WC_Extend), ('\u{a8d0}', '\u{a8d9}', WC_Numeric), ('\u{a8e0}', '\u{a8f1}', WC_Extend), - ('\u{a8f2}', '\u{a8f7}', WC_ALetter), ('\u{a8fb}', '\u{a8fb}', WC_ALetter), ('\u{a8fd}', - '\u{a8fd}', WC_ALetter), ('\u{a900}', '\u{a909}', WC_Numeric), ('\u{a90a}', '\u{a925}', - WC_ALetter), ('\u{a926}', '\u{a92d}', WC_Extend), ('\u{a930}', '\u{a946}', WC_ALetter), - ('\u{a947}', '\u{a953}', WC_Extend), ('\u{a960}', '\u{a97c}', WC_ALetter), ('\u{a980}', - '\u{a983}', WC_Extend), ('\u{a984}', '\u{a9b2}', WC_ALetter), ('\u{a9b3}', '\u{a9c0}', - WC_Extend), ('\u{a9cf}', '\u{a9cf}', WC_ALetter), ('\u{a9d0}', '\u{a9d9}', WC_Numeric), - ('\u{a9e5}', '\u{a9e5}', WC_Extend), ('\u{a9f0}', '\u{a9f9}', WC_Numeric), ('\u{aa00}', - '\u{aa28}', WC_ALetter), ('\u{aa29}', '\u{aa36}', WC_Extend), ('\u{aa40}', '\u{aa42}', - WC_ALetter), ('\u{aa43}', '\u{aa43}', WC_Extend), ('\u{aa44}', '\u{aa4b}', WC_ALetter), - ('\u{aa4c}', '\u{aa4d}', WC_Extend), ('\u{aa50}', '\u{aa59}', WC_Numeric), ('\u{aa7b}', - '\u{aa7d}', WC_Extend), ('\u{aab0}', '\u{aab0}', WC_Extend), ('\u{aab2}', '\u{aab4}', - WC_Extend), ('\u{aab7}', '\u{aab8}', WC_Extend), ('\u{aabe}', '\u{aabf}', WC_Extend), - ('\u{aac1}', '\u{aac1}', WC_Extend), ('\u{aae0}', '\u{aaea}', WC_ALetter), ('\u{aaeb}', - '\u{aaef}', WC_Extend), ('\u{aaf2}', '\u{aaf4}', WC_ALetter), ('\u{aaf5}', '\u{aaf6}', - WC_Extend), ('\u{ab01}', '\u{ab06}', WC_ALetter), ('\u{ab09}', '\u{ab0e}', WC_ALetter), - ('\u{ab11}', '\u{ab16}', WC_ALetter), ('\u{ab20}', '\u{ab26}', WC_ALetter), ('\u{ab28}', - '\u{ab2e}', WC_ALetter), ('\u{ab30}', '\u{ab5a}', WC_ALetter), ('\u{ab5c}', '\u{ab65}', - WC_ALetter), ('\u{ab70}', '\u{abe2}', WC_ALetter), ('\u{abe3}', '\u{abea}', WC_Extend), - ('\u{abec}', '\u{abed}', WC_Extend), ('\u{abf0}', '\u{abf9}', WC_Numeric), ('\u{ac00}', - '\u{d7a3}', WC_ALetter), ('\u{d7b0}', '\u{d7c6}', WC_ALetter), ('\u{d7cb}', '\u{d7fb}', - WC_ALetter), ('\u{fb00}', '\u{fb06}', WC_ALetter), ('\u{fb13}', '\u{fb17}', WC_ALetter), - ('\u{fb1d}', '\u{fb1d}', WC_Hebrew_Letter), ('\u{fb1e}', '\u{fb1e}', WC_Extend), - ('\u{fb1f}', '\u{fb28}', WC_Hebrew_Letter), ('\u{fb2a}', '\u{fb36}', WC_Hebrew_Letter), - ('\u{fb38}', '\u{fb3c}', WC_Hebrew_Letter), ('\u{fb3e}', '\u{fb3e}', WC_Hebrew_Letter), - ('\u{fb40}', '\u{fb41}', WC_Hebrew_Letter), ('\u{fb43}', '\u{fb44}', WC_Hebrew_Letter), - ('\u{fb46}', '\u{fb4f}', WC_Hebrew_Letter), ('\u{fb50}', '\u{fbb1}', WC_ALetter), - ('\u{fbd3}', '\u{fd3d}', WC_ALetter), ('\u{fd50}', '\u{fd8f}', WC_ALetter), ('\u{fd92}', - '\u{fdc7}', WC_ALetter), ('\u{fdf0}', '\u{fdfb}', WC_ALetter), ('\u{fe00}', '\u{fe0f}', - WC_Extend), ('\u{fe10}', '\u{fe10}', WC_MidNum), ('\u{fe13}', '\u{fe13}', WC_MidLetter), - ('\u{fe14}', '\u{fe14}', WC_MidNum), ('\u{fe20}', '\u{fe2f}', WC_Extend), ('\u{fe33}', - '\u{fe34}', WC_ExtendNumLet), ('\u{fe4d}', '\u{fe4f}', WC_ExtendNumLet), ('\u{fe50}', - '\u{fe50}', WC_MidNum), ('\u{fe52}', '\u{fe52}', WC_MidNumLet), ('\u{fe54}', '\u{fe54}', - WC_MidNum), ('\u{fe55}', '\u{fe55}', WC_MidLetter), ('\u{fe70}', '\u{fe74}', WC_ALetter), - ('\u{fe76}', '\u{fefc}', WC_ALetter), ('\u{feff}', '\u{feff}', WC_Format), ('\u{ff07}', - '\u{ff07}', WC_MidNumLet), ('\u{ff0c}', '\u{ff0c}', WC_MidNum), ('\u{ff0e}', '\u{ff0e}', - WC_MidNumLet), ('\u{ff1a}', '\u{ff1a}', WC_MidLetter), ('\u{ff1b}', '\u{ff1b}', WC_MidNum), - ('\u{ff21}', '\u{ff3a}', WC_ALetter), ('\u{ff3f}', '\u{ff3f}', WC_ExtendNumLet), + '\u{1877}', WC_ALetter), ('\u{1880}', '\u{1884}', WC_ALetter), ('\u{1885}', '\u{1886}', + WC_Extend), ('\u{1887}', '\u{18a8}', WC_ALetter), ('\u{18a9}', '\u{18a9}', WC_Extend), + ('\u{18aa}', '\u{18aa}', WC_ALetter), ('\u{18b0}', '\u{18f5}', WC_ALetter), ('\u{1900}', + '\u{191e}', WC_ALetter), ('\u{1920}', '\u{192b}', WC_Extend), ('\u{1930}', '\u{193b}', + WC_Extend), ('\u{1946}', '\u{194f}', WC_Numeric), ('\u{19d0}', '\u{19d9}', WC_Numeric), + ('\u{1a00}', '\u{1a16}', WC_ALetter), ('\u{1a17}', '\u{1a1b}', WC_Extend), ('\u{1a55}', + '\u{1a5e}', WC_Extend), ('\u{1a60}', '\u{1a7c}', WC_Extend), ('\u{1a7f}', '\u{1a7f}', + WC_Extend), ('\u{1a80}', '\u{1a89}', WC_Numeric), ('\u{1a90}', '\u{1a99}', WC_Numeric), + ('\u{1ab0}', '\u{1abe}', WC_Extend), ('\u{1b00}', '\u{1b04}', WC_Extend), ('\u{1b05}', + '\u{1b33}', WC_ALetter), ('\u{1b34}', '\u{1b44}', WC_Extend), ('\u{1b45}', '\u{1b4b}', + WC_ALetter), ('\u{1b50}', '\u{1b59}', WC_Numeric), ('\u{1b6b}', '\u{1b73}', WC_Extend), + ('\u{1b80}', '\u{1b82}', WC_Extend), ('\u{1b83}', '\u{1ba0}', WC_ALetter), ('\u{1ba1}', + '\u{1bad}', WC_Extend), ('\u{1bae}', '\u{1baf}', WC_ALetter), ('\u{1bb0}', '\u{1bb9}', + WC_Numeric), ('\u{1bba}', '\u{1be5}', WC_ALetter), ('\u{1be6}', '\u{1bf3}', WC_Extend), + ('\u{1c00}', '\u{1c23}', WC_ALetter), ('\u{1c24}', '\u{1c37}', WC_Extend), ('\u{1c40}', + '\u{1c49}', WC_Numeric), ('\u{1c4d}', '\u{1c4f}', WC_ALetter), ('\u{1c50}', '\u{1c59}', + WC_Numeric), ('\u{1c5a}', '\u{1c7d}', WC_ALetter), ('\u{1c80}', '\u{1c88}', WC_ALetter), + ('\u{1cd0}', '\u{1cd2}', WC_Extend), ('\u{1cd4}', '\u{1ce8}', WC_Extend), ('\u{1ce9}', + '\u{1cec}', WC_ALetter), ('\u{1ced}', '\u{1ced}', WC_Extend), ('\u{1cee}', '\u{1cf1}', + WC_ALetter), ('\u{1cf2}', '\u{1cf4}', WC_Extend), ('\u{1cf5}', '\u{1cf6}', WC_ALetter), + ('\u{1cf8}', '\u{1cf9}', WC_Extend), ('\u{1d00}', '\u{1dbf}', WC_ALetter), ('\u{1dc0}', + '\u{1df5}', WC_Extend), ('\u{1dfb}', '\u{1dff}', WC_Extend), ('\u{1e00}', '\u{1f15}', + WC_ALetter), ('\u{1f18}', '\u{1f1d}', WC_ALetter), ('\u{1f20}', '\u{1f45}', WC_ALetter), + ('\u{1f48}', '\u{1f4d}', WC_ALetter), ('\u{1f50}', '\u{1f57}', WC_ALetter), ('\u{1f59}', + '\u{1f59}', WC_ALetter), ('\u{1f5b}', '\u{1f5b}', WC_ALetter), ('\u{1f5d}', '\u{1f5d}', + WC_ALetter), ('\u{1f5f}', '\u{1f7d}', WC_ALetter), ('\u{1f80}', '\u{1fb4}', WC_ALetter), + ('\u{1fb6}', '\u{1fbc}', WC_ALetter), ('\u{1fbe}', '\u{1fbe}', WC_ALetter), ('\u{1fc2}', + '\u{1fc4}', WC_ALetter), ('\u{1fc6}', '\u{1fcc}', WC_ALetter), ('\u{1fd0}', '\u{1fd3}', + WC_ALetter), ('\u{1fd6}', '\u{1fdb}', WC_ALetter), ('\u{1fe0}', '\u{1fec}', WC_ALetter), + ('\u{1ff2}', '\u{1ff4}', WC_ALetter), ('\u{1ff6}', '\u{1ffc}', WC_ALetter), ('\u{200c}', + '\u{200c}', WC_Extend), ('\u{200d}', '\u{200d}', WC_ZWJ), ('\u{200e}', '\u{200f}', + WC_Format), ('\u{2018}', '\u{2019}', WC_MidNumLet), ('\u{2024}', '\u{2024}', WC_MidNumLet), + ('\u{2027}', '\u{2027}', WC_MidLetter), ('\u{2028}', '\u{2029}', WC_Newline), ('\u{202a}', + '\u{202e}', WC_Format), ('\u{202f}', '\u{202f}', WC_ExtendNumLet), ('\u{203f}', '\u{2040}', + WC_ExtendNumLet), ('\u{2044}', '\u{2044}', WC_MidNum), ('\u{2054}', '\u{2054}', + WC_ExtendNumLet), ('\u{2060}', '\u{2064}', WC_Format), ('\u{2066}', '\u{206f}', WC_Format), + ('\u{2071}', '\u{2071}', WC_ALetter), ('\u{207f}', '\u{207f}', WC_ALetter), ('\u{2090}', + '\u{209c}', WC_ALetter), ('\u{20d0}', '\u{20f0}', WC_Extend), ('\u{2102}', '\u{2102}', + WC_ALetter), ('\u{2107}', '\u{2107}', WC_ALetter), ('\u{210a}', '\u{2113}', WC_ALetter), + ('\u{2115}', '\u{2115}', WC_ALetter), ('\u{2119}', '\u{211d}', WC_ALetter), ('\u{2124}', + '\u{2124}', WC_ALetter), ('\u{2126}', '\u{2126}', WC_ALetter), ('\u{2128}', '\u{2128}', + WC_ALetter), ('\u{212a}', '\u{212d}', WC_ALetter), ('\u{212f}', '\u{2139}', WC_ALetter), + ('\u{213c}', '\u{213f}', WC_ALetter), ('\u{2145}', '\u{2149}', WC_ALetter), ('\u{214e}', + '\u{214e}', WC_ALetter), ('\u{2160}', '\u{2188}', WC_ALetter), ('\u{24b6}', '\u{24e9}', + WC_ALetter), ('\u{261d}', '\u{261d}', WC_E_Base), ('\u{26f9}', '\u{26f9}', WC_E_Base), + ('\u{270a}', '\u{270d}', WC_E_Base), ('\u{2764}', '\u{2764}', WC_Glue_After_Zwj), + ('\u{2c00}', '\u{2c2e}', WC_ALetter), ('\u{2c30}', '\u{2c5e}', WC_ALetter), ('\u{2c60}', + '\u{2ce4}', WC_ALetter), ('\u{2ceb}', '\u{2cee}', WC_ALetter), ('\u{2cef}', '\u{2cf1}', + WC_Extend), ('\u{2cf2}', '\u{2cf3}', WC_ALetter), ('\u{2d00}', '\u{2d25}', WC_ALetter), + ('\u{2d27}', '\u{2d27}', WC_ALetter), ('\u{2d2d}', '\u{2d2d}', WC_ALetter), ('\u{2d30}', + '\u{2d67}', WC_ALetter), ('\u{2d6f}', '\u{2d6f}', WC_ALetter), ('\u{2d7f}', '\u{2d7f}', + WC_Extend), ('\u{2d80}', '\u{2d96}', WC_ALetter), ('\u{2da0}', '\u{2da6}', WC_ALetter), + ('\u{2da8}', '\u{2dae}', WC_ALetter), ('\u{2db0}', '\u{2db6}', WC_ALetter), ('\u{2db8}', + '\u{2dbe}', WC_ALetter), ('\u{2dc0}', '\u{2dc6}', WC_ALetter), ('\u{2dc8}', '\u{2dce}', + WC_ALetter), ('\u{2dd0}', '\u{2dd6}', WC_ALetter), ('\u{2dd8}', '\u{2dde}', WC_ALetter), + ('\u{2de0}', '\u{2dff}', WC_Extend), ('\u{2e2f}', '\u{2e2f}', WC_ALetter), ('\u{3005}', + '\u{3005}', WC_ALetter), ('\u{302a}', '\u{302f}', WC_Extend), ('\u{3031}', '\u{3035}', + WC_Katakana), ('\u{303b}', '\u{303c}', WC_ALetter), ('\u{3099}', '\u{309a}', WC_Extend), + ('\u{309b}', '\u{309c}', WC_Katakana), ('\u{30a0}', '\u{30fa}', WC_Katakana), ('\u{30fc}', + '\u{30ff}', WC_Katakana), ('\u{3105}', '\u{312d}', WC_ALetter), ('\u{3131}', '\u{318e}', + WC_ALetter), ('\u{31a0}', '\u{31ba}', WC_ALetter), ('\u{31f0}', '\u{31ff}', WC_Katakana), + ('\u{32d0}', '\u{32fe}', WC_Katakana), ('\u{3300}', '\u{3357}', WC_Katakana), ('\u{a000}', + '\u{a48c}', WC_ALetter), ('\u{a4d0}', '\u{a4fd}', WC_ALetter), ('\u{a500}', '\u{a60c}', + WC_ALetter), ('\u{a610}', '\u{a61f}', WC_ALetter), ('\u{a620}', '\u{a629}', WC_Numeric), + ('\u{a62a}', '\u{a62b}', WC_ALetter), ('\u{a640}', '\u{a66e}', WC_ALetter), ('\u{a66f}', + '\u{a672}', WC_Extend), ('\u{a674}', '\u{a67d}', WC_Extend), ('\u{a67f}', '\u{a69d}', + WC_ALetter), ('\u{a69e}', '\u{a69f}', WC_Extend), ('\u{a6a0}', '\u{a6ef}', WC_ALetter), + ('\u{a6f0}', '\u{a6f1}', WC_Extend), ('\u{a717}', '\u{a71f}', WC_ALetter), ('\u{a722}', + '\u{a788}', WC_ALetter), ('\u{a78b}', '\u{a7ae}', WC_ALetter), ('\u{a7b0}', '\u{a7b7}', + WC_ALetter), ('\u{a7f7}', '\u{a801}', WC_ALetter), ('\u{a802}', '\u{a802}', WC_Extend), + ('\u{a803}', '\u{a805}', WC_ALetter), ('\u{a806}', '\u{a806}', WC_Extend), ('\u{a807}', + '\u{a80a}', WC_ALetter), ('\u{a80b}', '\u{a80b}', WC_Extend), ('\u{a80c}', '\u{a822}', + WC_ALetter), ('\u{a823}', '\u{a827}', WC_Extend), ('\u{a840}', '\u{a873}', WC_ALetter), + ('\u{a880}', '\u{a881}', WC_Extend), ('\u{a882}', '\u{a8b3}', WC_ALetter), ('\u{a8b4}', + '\u{a8c5}', WC_Extend), ('\u{a8d0}', '\u{a8d9}', WC_Numeric), ('\u{a8e0}', '\u{a8f1}', + WC_Extend), ('\u{a8f2}', '\u{a8f7}', WC_ALetter), ('\u{a8fb}', '\u{a8fb}', WC_ALetter), + ('\u{a8fd}', '\u{a8fd}', WC_ALetter), ('\u{a900}', '\u{a909}', WC_Numeric), ('\u{a90a}', + '\u{a925}', WC_ALetter), ('\u{a926}', '\u{a92d}', WC_Extend), ('\u{a930}', '\u{a946}', + WC_ALetter), ('\u{a947}', '\u{a953}', WC_Extend), ('\u{a960}', '\u{a97c}', WC_ALetter), + ('\u{a980}', '\u{a983}', WC_Extend), ('\u{a984}', '\u{a9b2}', WC_ALetter), ('\u{a9b3}', + '\u{a9c0}', WC_Extend), ('\u{a9cf}', '\u{a9cf}', WC_ALetter), ('\u{a9d0}', '\u{a9d9}', + WC_Numeric), ('\u{a9e5}', '\u{a9e5}', WC_Extend), ('\u{a9f0}', '\u{a9f9}', WC_Numeric), + ('\u{aa00}', '\u{aa28}', WC_ALetter), ('\u{aa29}', '\u{aa36}', WC_Extend), ('\u{aa40}', + '\u{aa42}', WC_ALetter), ('\u{aa43}', '\u{aa43}', WC_Extend), ('\u{aa44}', '\u{aa4b}', + WC_ALetter), ('\u{aa4c}', '\u{aa4d}', WC_Extend), ('\u{aa50}', '\u{aa59}', WC_Numeric), + ('\u{aa7b}', '\u{aa7d}', WC_Extend), ('\u{aab0}', '\u{aab0}', WC_Extend), ('\u{aab2}', + '\u{aab4}', WC_Extend), ('\u{aab7}', '\u{aab8}', WC_Extend), ('\u{aabe}', '\u{aabf}', + WC_Extend), ('\u{aac1}', '\u{aac1}', WC_Extend), ('\u{aae0}', '\u{aaea}', WC_ALetter), + ('\u{aaeb}', '\u{aaef}', WC_Extend), ('\u{aaf2}', '\u{aaf4}', WC_ALetter), ('\u{aaf5}', + '\u{aaf6}', WC_Extend), ('\u{ab01}', '\u{ab06}', WC_ALetter), ('\u{ab09}', '\u{ab0e}', + WC_ALetter), ('\u{ab11}', '\u{ab16}', WC_ALetter), ('\u{ab20}', '\u{ab26}', WC_ALetter), + ('\u{ab28}', '\u{ab2e}', WC_ALetter), ('\u{ab30}', '\u{ab5a}', WC_ALetter), ('\u{ab5c}', + '\u{ab65}', WC_ALetter), ('\u{ab70}', '\u{abe2}', WC_ALetter), ('\u{abe3}', '\u{abea}', + WC_Extend), ('\u{abec}', '\u{abed}', WC_Extend), ('\u{abf0}', '\u{abf9}', WC_Numeric), + ('\u{ac00}', '\u{d7a3}', WC_ALetter), ('\u{d7b0}', '\u{d7c6}', WC_ALetter), ('\u{d7cb}', + '\u{d7fb}', WC_ALetter), ('\u{fb00}', '\u{fb06}', WC_ALetter), ('\u{fb13}', '\u{fb17}', + WC_ALetter), ('\u{fb1d}', '\u{fb1d}', WC_Hebrew_Letter), ('\u{fb1e}', '\u{fb1e}', + WC_Extend), ('\u{fb1f}', '\u{fb28}', WC_Hebrew_Letter), ('\u{fb2a}', '\u{fb36}', + WC_Hebrew_Letter), ('\u{fb38}', '\u{fb3c}', WC_Hebrew_Letter), ('\u{fb3e}', '\u{fb3e}', + WC_Hebrew_Letter), ('\u{fb40}', '\u{fb41}', WC_Hebrew_Letter), ('\u{fb43}', '\u{fb44}', + WC_Hebrew_Letter), ('\u{fb46}', '\u{fb4f}', WC_Hebrew_Letter), ('\u{fb50}', '\u{fbb1}', + WC_ALetter), ('\u{fbd3}', '\u{fd3d}', WC_ALetter), ('\u{fd50}', '\u{fd8f}', WC_ALetter), + ('\u{fd92}', '\u{fdc7}', WC_ALetter), ('\u{fdf0}', '\u{fdfb}', WC_ALetter), ('\u{fe00}', + '\u{fe0f}', WC_Extend), ('\u{fe10}', '\u{fe10}', WC_MidNum), ('\u{fe13}', '\u{fe13}', + WC_MidLetter), ('\u{fe14}', '\u{fe14}', WC_MidNum), ('\u{fe20}', '\u{fe2f}', WC_Extend), + ('\u{fe33}', '\u{fe34}', WC_ExtendNumLet), ('\u{fe4d}', '\u{fe4f}', WC_ExtendNumLet), + ('\u{fe50}', '\u{fe50}', WC_MidNum), ('\u{fe52}', '\u{fe52}', WC_MidNumLet), ('\u{fe54}', + '\u{fe54}', WC_MidNum), ('\u{fe55}', '\u{fe55}', WC_MidLetter), ('\u{fe70}', '\u{fe74}', + WC_ALetter), ('\u{fe76}', '\u{fefc}', WC_ALetter), ('\u{feff}', '\u{feff}', WC_Format), + ('\u{ff07}', '\u{ff07}', WC_MidNumLet), ('\u{ff0c}', '\u{ff0c}', WC_MidNum), ('\u{ff0e}', + '\u{ff0e}', WC_MidNumLet), ('\u{ff1a}', '\u{ff1a}', WC_MidLetter), ('\u{ff1b}', '\u{ff1b}', + WC_MidNum), ('\u{ff21}', '\u{ff3a}', WC_ALetter), ('\u{ff3f}', '\u{ff3f}', WC_ExtendNumLet), ('\u{ff41}', '\u{ff5a}', WC_ALetter), ('\u{ff66}', '\u{ff9d}', WC_Katakana), ('\u{ff9e}', '\u{ff9f}', WC_Extend), ('\u{ffa0}', '\u{ffbe}', WC_ALetter), ('\u{ffc2}', '\u{ffc7}', WC_ALetter), ('\u{ffca}', '\u{ffcf}', WC_ALetter), ('\u{ffd2}', '\u{ffd7}', WC_ALetter), @@ -1128,7 +1185,8 @@ pub mod word { ('\u{10350}', '\u{10375}', WC_ALetter), ('\u{10376}', '\u{1037a}', WC_Extend), ('\u{10380}', '\u{1039d}', WC_ALetter), ('\u{103a0}', '\u{103c3}', WC_ALetter), ('\u{103c8}', '\u{103cf}', WC_ALetter), ('\u{103d1}', '\u{103d5}', WC_ALetter), ('\u{10400}', '\u{1049d}', WC_ALetter), - ('\u{104a0}', '\u{104a9}', WC_Numeric), ('\u{10500}', '\u{10527}', WC_ALetter), + ('\u{104a0}', '\u{104a9}', WC_Numeric), ('\u{104b0}', '\u{104d3}', WC_ALetter), + ('\u{104d8}', '\u{104fb}', WC_ALetter), ('\u{10500}', '\u{10527}', WC_ALetter), ('\u{10530}', '\u{10563}', WC_ALetter), ('\u{10600}', '\u{10736}', WC_ALetter), ('\u{10740}', '\u{10755}', WC_ALetter), ('\u{10760}', '\u{10767}', WC_ALetter), ('\u{10800}', '\u{10805}', WC_ALetter), ('\u{10808}', '\u{10808}', WC_ALetter), @@ -1159,47 +1217,53 @@ pub mod word { WC_Extend), ('\u{111c1}', '\u{111c4}', WC_ALetter), ('\u{111ca}', '\u{111cc}', WC_Extend), ('\u{111d0}', '\u{111d9}', WC_Numeric), ('\u{111da}', '\u{111da}', WC_ALetter), ('\u{111dc}', '\u{111dc}', WC_ALetter), ('\u{11200}', '\u{11211}', WC_ALetter), - ('\u{11213}', '\u{1122b}', WC_ALetter), ('\u{1122c}', '\u{11237}', WC_Extend), ('\u{11280}', - '\u{11286}', WC_ALetter), ('\u{11288}', '\u{11288}', WC_ALetter), ('\u{1128a}', '\u{1128d}', - WC_ALetter), ('\u{1128f}', '\u{1129d}', WC_ALetter), ('\u{1129f}', '\u{112a8}', WC_ALetter), - ('\u{112b0}', '\u{112de}', WC_ALetter), ('\u{112df}', '\u{112ea}', WC_Extend), ('\u{112f0}', - '\u{112f9}', WC_Numeric), ('\u{11300}', '\u{11303}', WC_Extend), ('\u{11305}', '\u{1130c}', - WC_ALetter), ('\u{1130f}', '\u{11310}', WC_ALetter), ('\u{11313}', '\u{11328}', WC_ALetter), - ('\u{1132a}', '\u{11330}', WC_ALetter), ('\u{11332}', '\u{11333}', WC_ALetter), - ('\u{11335}', '\u{11339}', WC_ALetter), ('\u{1133c}', '\u{1133c}', WC_Extend), ('\u{1133d}', - '\u{1133d}', WC_ALetter), ('\u{1133e}', '\u{11344}', WC_Extend), ('\u{11347}', '\u{11348}', - WC_Extend), ('\u{1134b}', '\u{1134d}', WC_Extend), ('\u{11350}', '\u{11350}', WC_ALetter), - ('\u{11357}', '\u{11357}', WC_Extend), ('\u{1135d}', '\u{11361}', WC_ALetter), ('\u{11362}', - '\u{11363}', WC_Extend), ('\u{11366}', '\u{1136c}', WC_Extend), ('\u{11370}', '\u{11374}', - WC_Extend), ('\u{11480}', '\u{114af}', WC_ALetter), ('\u{114b0}', '\u{114c3}', WC_Extend), - ('\u{114c4}', '\u{114c5}', WC_ALetter), ('\u{114c7}', '\u{114c7}', WC_ALetter), - ('\u{114d0}', '\u{114d9}', WC_Numeric), ('\u{11580}', '\u{115ae}', WC_ALetter), - ('\u{115af}', '\u{115b5}', WC_Extend), ('\u{115b8}', '\u{115c0}', WC_Extend), ('\u{115d8}', - '\u{115db}', WC_ALetter), ('\u{115dc}', '\u{115dd}', WC_Extend), ('\u{11600}', '\u{1162f}', - WC_ALetter), ('\u{11630}', '\u{11640}', WC_Extend), ('\u{11644}', '\u{11644}', WC_ALetter), - ('\u{11650}', '\u{11659}', WC_Numeric), ('\u{11680}', '\u{116aa}', WC_ALetter), + ('\u{11213}', '\u{1122b}', WC_ALetter), ('\u{1122c}', '\u{11237}', WC_Extend), ('\u{1123e}', + '\u{1123e}', WC_Extend), ('\u{11280}', '\u{11286}', WC_ALetter), ('\u{11288}', '\u{11288}', + WC_ALetter), ('\u{1128a}', '\u{1128d}', WC_ALetter), ('\u{1128f}', '\u{1129d}', WC_ALetter), + ('\u{1129f}', '\u{112a8}', WC_ALetter), ('\u{112b0}', '\u{112de}', WC_ALetter), + ('\u{112df}', '\u{112ea}', WC_Extend), ('\u{112f0}', '\u{112f9}', WC_Numeric), ('\u{11300}', + '\u{11303}', WC_Extend), ('\u{11305}', '\u{1130c}', WC_ALetter), ('\u{1130f}', '\u{11310}', + WC_ALetter), ('\u{11313}', '\u{11328}', WC_ALetter), ('\u{1132a}', '\u{11330}', WC_ALetter), + ('\u{11332}', '\u{11333}', WC_ALetter), ('\u{11335}', '\u{11339}', WC_ALetter), + ('\u{1133c}', '\u{1133c}', WC_Extend), ('\u{1133d}', '\u{1133d}', WC_ALetter), ('\u{1133e}', + '\u{11344}', WC_Extend), ('\u{11347}', '\u{11348}', WC_Extend), ('\u{1134b}', '\u{1134d}', + WC_Extend), ('\u{11350}', '\u{11350}', WC_ALetter), ('\u{11357}', '\u{11357}', WC_Extend), + ('\u{1135d}', '\u{11361}', WC_ALetter), ('\u{11362}', '\u{11363}', WC_Extend), ('\u{11366}', + '\u{1136c}', WC_Extend), ('\u{11370}', '\u{11374}', WC_Extend), ('\u{11400}', '\u{11434}', + WC_ALetter), ('\u{11435}', '\u{11446}', WC_Extend), ('\u{11447}', '\u{1144a}', WC_ALetter), + ('\u{11450}', '\u{11459}', WC_Numeric), ('\u{11480}', '\u{114af}', WC_ALetter), + ('\u{114b0}', '\u{114c3}', WC_Extend), ('\u{114c4}', '\u{114c5}', WC_ALetter), ('\u{114c7}', + '\u{114c7}', WC_ALetter), ('\u{114d0}', '\u{114d9}', WC_Numeric), ('\u{11580}', '\u{115ae}', + WC_ALetter), ('\u{115af}', '\u{115b5}', WC_Extend), ('\u{115b8}', '\u{115c0}', WC_Extend), + ('\u{115d8}', '\u{115db}', WC_ALetter), ('\u{115dc}', '\u{115dd}', WC_Extend), ('\u{11600}', + '\u{1162f}', WC_ALetter), ('\u{11630}', '\u{11640}', WC_Extend), ('\u{11644}', '\u{11644}', + WC_ALetter), ('\u{11650}', '\u{11659}', WC_Numeric), ('\u{11680}', '\u{116aa}', WC_ALetter), ('\u{116ab}', '\u{116b7}', WC_Extend), ('\u{116c0}', '\u{116c9}', WC_Numeric), ('\u{1171d}', '\u{1172b}', WC_Extend), ('\u{11730}', '\u{11739}', WC_Numeric), ('\u{118a0}', '\u{118df}', WC_ALetter), ('\u{118e0}', '\u{118e9}', WC_Numeric), ('\u{118ff}', '\u{118ff}', WC_ALetter), - ('\u{11ac0}', '\u{11af8}', WC_ALetter), ('\u{12000}', '\u{12399}', WC_ALetter), - ('\u{12400}', '\u{1246e}', WC_ALetter), ('\u{12480}', '\u{12543}', WC_ALetter), - ('\u{13000}', '\u{1342e}', WC_ALetter), ('\u{14400}', '\u{14646}', WC_ALetter), - ('\u{16800}', '\u{16a38}', WC_ALetter), ('\u{16a40}', '\u{16a5e}', WC_ALetter), - ('\u{16a60}', '\u{16a69}', WC_Numeric), ('\u{16ad0}', '\u{16aed}', WC_ALetter), - ('\u{16af0}', '\u{16af4}', WC_Extend), ('\u{16b00}', '\u{16b2f}', WC_ALetter), ('\u{16b30}', - '\u{16b36}', WC_Extend), ('\u{16b40}', '\u{16b43}', WC_ALetter), ('\u{16b50}', '\u{16b59}', - WC_Numeric), ('\u{16b63}', '\u{16b77}', WC_ALetter), ('\u{16b7d}', '\u{16b8f}', WC_ALetter), - ('\u{16f00}', '\u{16f44}', WC_ALetter), ('\u{16f50}', '\u{16f50}', WC_ALetter), - ('\u{16f51}', '\u{16f7e}', WC_Extend), ('\u{16f8f}', '\u{16f92}', WC_Extend), ('\u{16f93}', - '\u{16f9f}', WC_ALetter), ('\u{1b000}', '\u{1b000}', WC_Katakana), ('\u{1bc00}', - '\u{1bc6a}', WC_ALetter), ('\u{1bc70}', '\u{1bc7c}', WC_ALetter), ('\u{1bc80}', '\u{1bc88}', - WC_ALetter), ('\u{1bc90}', '\u{1bc99}', WC_ALetter), ('\u{1bc9d}', '\u{1bc9e}', WC_Extend), - ('\u{1bca0}', '\u{1bca3}', WC_Format), ('\u{1d165}', '\u{1d169}', WC_Extend), ('\u{1d16d}', - '\u{1d172}', WC_Extend), ('\u{1d173}', '\u{1d17a}', WC_Format), ('\u{1d17b}', '\u{1d182}', - WC_Extend), ('\u{1d185}', '\u{1d18b}', WC_Extend), ('\u{1d1aa}', '\u{1d1ad}', WC_Extend), - ('\u{1d242}', '\u{1d244}', WC_Extend), ('\u{1d400}', '\u{1d454}', WC_ALetter), ('\u{1d456}', - '\u{1d49c}', WC_ALetter), ('\u{1d49e}', '\u{1d49f}', WC_ALetter), ('\u{1d4a2}', '\u{1d4a2}', - WC_ALetter), ('\u{1d4a5}', '\u{1d4a6}', WC_ALetter), ('\u{1d4a9}', '\u{1d4ac}', WC_ALetter), + ('\u{11ac0}', '\u{11af8}', WC_ALetter), ('\u{11c00}', '\u{11c08}', WC_ALetter), + ('\u{11c0a}', '\u{11c2e}', WC_ALetter), ('\u{11c2f}', '\u{11c36}', WC_Extend), ('\u{11c38}', + '\u{11c3f}', WC_Extend), ('\u{11c40}', '\u{11c40}', WC_ALetter), ('\u{11c50}', '\u{11c59}', + WC_Numeric), ('\u{11c72}', '\u{11c8f}', WC_ALetter), ('\u{11c92}', '\u{11ca7}', WC_Extend), + ('\u{11ca9}', '\u{11cb6}', WC_Extend), ('\u{12000}', '\u{12399}', WC_ALetter), ('\u{12400}', + '\u{1246e}', WC_ALetter), ('\u{12480}', '\u{12543}', WC_ALetter), ('\u{13000}', '\u{1342e}', + WC_ALetter), ('\u{14400}', '\u{14646}', WC_ALetter), ('\u{16800}', '\u{16a38}', WC_ALetter), + ('\u{16a40}', '\u{16a5e}', WC_ALetter), ('\u{16a60}', '\u{16a69}', WC_Numeric), + ('\u{16ad0}', '\u{16aed}', WC_ALetter), ('\u{16af0}', '\u{16af4}', WC_Extend), ('\u{16b00}', + '\u{16b2f}', WC_ALetter), ('\u{16b30}', '\u{16b36}', WC_Extend), ('\u{16b40}', '\u{16b43}', + WC_ALetter), ('\u{16b50}', '\u{16b59}', WC_Numeric), ('\u{16b63}', '\u{16b77}', WC_ALetter), + ('\u{16b7d}', '\u{16b8f}', WC_ALetter), ('\u{16f00}', '\u{16f44}', WC_ALetter), + ('\u{16f50}', '\u{16f50}', WC_ALetter), ('\u{16f51}', '\u{16f7e}', WC_Extend), ('\u{16f8f}', + '\u{16f92}', WC_Extend), ('\u{16f93}', '\u{16f9f}', WC_ALetter), ('\u{16fe0}', '\u{16fe0}', + WC_ALetter), ('\u{1b000}', '\u{1b000}', WC_Katakana), ('\u{1bc00}', '\u{1bc6a}', + WC_ALetter), ('\u{1bc70}', '\u{1bc7c}', WC_ALetter), ('\u{1bc80}', '\u{1bc88}', WC_ALetter), + ('\u{1bc90}', '\u{1bc99}', WC_ALetter), ('\u{1bc9d}', '\u{1bc9e}', WC_Extend), ('\u{1bca0}', + '\u{1bca3}', WC_Format), ('\u{1d165}', '\u{1d169}', WC_Extend), ('\u{1d16d}', '\u{1d172}', + WC_Extend), ('\u{1d173}', '\u{1d17a}', WC_Format), ('\u{1d17b}', '\u{1d182}', WC_Extend), + ('\u{1d185}', '\u{1d18b}', WC_Extend), ('\u{1d1aa}', '\u{1d1ad}', WC_Extend), ('\u{1d242}', + '\u{1d244}', WC_Extend), ('\u{1d400}', '\u{1d454}', WC_ALetter), ('\u{1d456}', '\u{1d49c}', + WC_ALetter), ('\u{1d49e}', '\u{1d49f}', WC_ALetter), ('\u{1d4a2}', '\u{1d4a2}', WC_ALetter), + ('\u{1d4a5}', '\u{1d4a6}', WC_ALetter), ('\u{1d4a9}', '\u{1d4ac}', WC_ALetter), ('\u{1d4ae}', '\u{1d4b9}', WC_ALetter), ('\u{1d4bb}', '\u{1d4bb}', WC_ALetter), ('\u{1d4bd}', '\u{1d4c3}', WC_ALetter), ('\u{1d4c5}', '\u{1d505}', WC_ALetter), ('\u{1d507}', '\u{1d50a}', WC_ALetter), ('\u{1d50d}', '\u{1d514}', WC_ALetter), @@ -1215,27 +1279,43 @@ pub mod word { ('\u{1d7ce}', '\u{1d7ff}', WC_Numeric), ('\u{1da00}', '\u{1da36}', WC_Extend), ('\u{1da3b}', '\u{1da6c}', WC_Extend), ('\u{1da75}', '\u{1da75}', WC_Extend), ('\u{1da84}', '\u{1da84}', WC_Extend), ('\u{1da9b}', '\u{1da9f}', WC_Extend), ('\u{1daa1}', '\u{1daaf}', WC_Extend), - ('\u{1e800}', '\u{1e8c4}', WC_ALetter), ('\u{1e8d0}', '\u{1e8d6}', WC_Extend), ('\u{1ee00}', - '\u{1ee03}', WC_ALetter), ('\u{1ee05}', '\u{1ee1f}', WC_ALetter), ('\u{1ee21}', '\u{1ee22}', - WC_ALetter), ('\u{1ee24}', '\u{1ee24}', WC_ALetter), ('\u{1ee27}', '\u{1ee27}', WC_ALetter), - ('\u{1ee29}', '\u{1ee32}', WC_ALetter), ('\u{1ee34}', '\u{1ee37}', WC_ALetter), - ('\u{1ee39}', '\u{1ee39}', WC_ALetter), ('\u{1ee3b}', '\u{1ee3b}', WC_ALetter), - ('\u{1ee42}', '\u{1ee42}', WC_ALetter), ('\u{1ee47}', '\u{1ee47}', WC_ALetter), - ('\u{1ee49}', '\u{1ee49}', WC_ALetter), ('\u{1ee4b}', '\u{1ee4b}', WC_ALetter), - ('\u{1ee4d}', '\u{1ee4f}', WC_ALetter), ('\u{1ee51}', '\u{1ee52}', WC_ALetter), - ('\u{1ee54}', '\u{1ee54}', WC_ALetter), ('\u{1ee57}', '\u{1ee57}', WC_ALetter), - ('\u{1ee59}', '\u{1ee59}', WC_ALetter), ('\u{1ee5b}', '\u{1ee5b}', WC_ALetter), - ('\u{1ee5d}', '\u{1ee5d}', WC_ALetter), ('\u{1ee5f}', '\u{1ee5f}', WC_ALetter), - ('\u{1ee61}', '\u{1ee62}', WC_ALetter), ('\u{1ee64}', '\u{1ee64}', WC_ALetter), - ('\u{1ee67}', '\u{1ee6a}', WC_ALetter), ('\u{1ee6c}', '\u{1ee72}', WC_ALetter), - ('\u{1ee74}', '\u{1ee77}', WC_ALetter), ('\u{1ee79}', '\u{1ee7c}', WC_ALetter), - ('\u{1ee7e}', '\u{1ee7e}', WC_ALetter), ('\u{1ee80}', '\u{1ee89}', WC_ALetter), - ('\u{1ee8b}', '\u{1ee9b}', WC_ALetter), ('\u{1eea1}', '\u{1eea3}', WC_ALetter), - ('\u{1eea5}', '\u{1eea9}', WC_ALetter), ('\u{1eeab}', '\u{1eebb}', WC_ALetter), - ('\u{1f130}', '\u{1f149}', WC_ALetter), ('\u{1f150}', '\u{1f169}', WC_ALetter), - ('\u{1f170}', '\u{1f189}', WC_ALetter), ('\u{1f1e6}', '\u{1f1ff}', WC_Regional_Indicator), - ('\u{e0001}', '\u{e0001}', WC_Format), ('\u{e0020}', '\u{e007f}', WC_Format), ('\u{e0100}', - '\u{e01ef}', WC_Extend) + ('\u{1e000}', '\u{1e006}', WC_Extend), ('\u{1e008}', '\u{1e018}', WC_Extend), ('\u{1e01b}', + '\u{1e021}', WC_Extend), ('\u{1e023}', '\u{1e024}', WC_Extend), ('\u{1e026}', '\u{1e02a}', + WC_Extend), ('\u{1e800}', '\u{1e8c4}', WC_ALetter), ('\u{1e8d0}', '\u{1e8d6}', WC_Extend), + ('\u{1e900}', '\u{1e943}', WC_ALetter), ('\u{1e944}', '\u{1e94a}', WC_Extend), ('\u{1e950}', + '\u{1e959}', WC_Numeric), ('\u{1ee00}', '\u{1ee03}', WC_ALetter), ('\u{1ee05}', '\u{1ee1f}', + WC_ALetter), ('\u{1ee21}', '\u{1ee22}', WC_ALetter), ('\u{1ee24}', '\u{1ee24}', WC_ALetter), + ('\u{1ee27}', '\u{1ee27}', WC_ALetter), ('\u{1ee29}', '\u{1ee32}', WC_ALetter), + ('\u{1ee34}', '\u{1ee37}', WC_ALetter), ('\u{1ee39}', '\u{1ee39}', WC_ALetter), + ('\u{1ee3b}', '\u{1ee3b}', WC_ALetter), ('\u{1ee42}', '\u{1ee42}', WC_ALetter), + ('\u{1ee47}', '\u{1ee47}', WC_ALetter), ('\u{1ee49}', '\u{1ee49}', WC_ALetter), + ('\u{1ee4b}', '\u{1ee4b}', WC_ALetter), ('\u{1ee4d}', '\u{1ee4f}', WC_ALetter), + ('\u{1ee51}', '\u{1ee52}', WC_ALetter), ('\u{1ee54}', '\u{1ee54}', WC_ALetter), + ('\u{1ee57}', '\u{1ee57}', WC_ALetter), ('\u{1ee59}', '\u{1ee59}', WC_ALetter), + ('\u{1ee5b}', '\u{1ee5b}', WC_ALetter), ('\u{1ee5d}', '\u{1ee5d}', WC_ALetter), + ('\u{1ee5f}', '\u{1ee5f}', WC_ALetter), ('\u{1ee61}', '\u{1ee62}', WC_ALetter), + ('\u{1ee64}', '\u{1ee64}', WC_ALetter), ('\u{1ee67}', '\u{1ee6a}', WC_ALetter), + ('\u{1ee6c}', '\u{1ee72}', WC_ALetter), ('\u{1ee74}', '\u{1ee77}', WC_ALetter), + ('\u{1ee79}', '\u{1ee7c}', WC_ALetter), ('\u{1ee7e}', '\u{1ee7e}', WC_ALetter), + ('\u{1ee80}', '\u{1ee89}', WC_ALetter), ('\u{1ee8b}', '\u{1ee9b}', WC_ALetter), + ('\u{1eea1}', '\u{1eea3}', WC_ALetter), ('\u{1eea5}', '\u{1eea9}', WC_ALetter), + ('\u{1eeab}', '\u{1eebb}', WC_ALetter), ('\u{1f130}', '\u{1f149}', WC_ALetter), + ('\u{1f150}', '\u{1f169}', WC_ALetter), ('\u{1f170}', '\u{1f189}', WC_ALetter), + ('\u{1f1e6}', '\u{1f1ff}', WC_Regional_Indicator), ('\u{1f385}', '\u{1f385}', WC_E_Base), + ('\u{1f3c3}', '\u{1f3c4}', WC_E_Base), ('\u{1f3ca}', '\u{1f3cb}', WC_E_Base), ('\u{1f3fb}', + '\u{1f3ff}', WC_E_Modifier), ('\u{1f442}', '\u{1f443}', WC_E_Base), ('\u{1f446}', + '\u{1f450}', WC_E_Base), ('\u{1f466}', '\u{1f469}', WC_E_Base_GAZ), ('\u{1f46e}', + '\u{1f46e}', WC_E_Base), ('\u{1f470}', '\u{1f478}', WC_E_Base), ('\u{1f47c}', '\u{1f47c}', + WC_E_Base), ('\u{1f481}', '\u{1f483}', WC_E_Base), ('\u{1f485}', '\u{1f487}', WC_E_Base), + ('\u{1f48b}', '\u{1f48b}', WC_Glue_After_Zwj), ('\u{1f4aa}', '\u{1f4aa}', WC_E_Base), + ('\u{1f575}', '\u{1f575}', WC_E_Base), ('\u{1f57a}', '\u{1f57a}', WC_E_Base), ('\u{1f590}', + '\u{1f590}', WC_E_Base), ('\u{1f595}', '\u{1f596}', WC_E_Base), ('\u{1f5e8}', '\u{1f5e8}', + WC_Glue_After_Zwj), ('\u{1f645}', '\u{1f647}', WC_E_Base), ('\u{1f64b}', '\u{1f64f}', + WC_E_Base), ('\u{1f6a3}', '\u{1f6a3}', WC_E_Base), ('\u{1f6b4}', '\u{1f6b6}', WC_E_Base), + ('\u{1f6c0}', '\u{1f6c0}', WC_E_Base), ('\u{1f918}', '\u{1f91e}', WC_E_Base), ('\u{1f926}', + '\u{1f926}', WC_E_Base), ('\u{1f930}', '\u{1f930}', WC_E_Base), ('\u{1f933}', '\u{1f939}', + WC_E_Base), ('\u{1f93c}', '\u{1f93e}', WC_E_Base), ('\u{e0001}', '\u{e0001}', WC_Format), + ('\u{e0020}', '\u{e007f}', WC_Extend), ('\u{e0100}', '\u{e01ef}', WC_Extend) ]; } diff --git a/src/test.rs b/src/test.rs index dece942..70e0aa9 100644 --- a/src/test.rs +++ b/src/test.rs @@ -16,6 +16,15 @@ use std::prelude::v1::*; fn test_graphemes() { use testdata::{TEST_SAME, TEST_DIFF}; + pub const EXTRA_DIFF: &'static [(&'static str, + &'static [&'static str], + &'static [&'static str])] = &[ + // Official test suite doesn't include two Prepend chars between two other chars. + ("\u{20}\u{600}\u{600}\u{20}", + &["\u{20}", "\u{600}\u{600}\u{20}"], + &["\u{20}", "\u{600}", "\u{600}", "\u{20}"]), + ]; + for &(s, g) in TEST_SAME { // test forward iterator assert!(UnicodeSegmentation::graphemes(s, true) @@ -34,11 +43,11 @@ fn test_graphemes() { .all(|(a,b)| a == b)); } - for &(s, gt, gf) in TEST_DIFF { + for &(s, gt, gf) in TEST_DIFF.iter().chain(EXTRA_DIFF) { // test forward iterator assert!(UnicodeSegmentation::graphemes(s, true) .zip(gt.iter().cloned()) - .all(|(a,b)| a == b)); + .all(|(a,b)| a == b), "{:?}", s); assert!(UnicodeSegmentation::graphemes(s, false) .zip(gf.iter().cloned()) .all(|(a,b)| a == b)); @@ -82,16 +91,36 @@ fn test_graphemes() { fn test_words() { use testdata::TEST_WORD; - for &(s, w) in TEST_WORD { + // Unicode's official tests don't really test longer chains of flag emoji + // TODO This could be improved with more tests like flag emoji with interspersed Extend chars and ZWJ + const EXTRA_TESTS: &'static [(&'static str, &'static [&'static str])] = &[ + ("πŸ‡¦πŸ‡«πŸ‡¦πŸ‡½πŸ‡¦πŸ‡±πŸ‡©πŸ‡ΏπŸ‡¦πŸ‡ΈπŸ‡¦πŸ‡©πŸ‡¦πŸ‡΄", &["πŸ‡¦πŸ‡«", "πŸ‡¦πŸ‡½", "πŸ‡¦πŸ‡±", "πŸ‡©πŸ‡Ώ", "πŸ‡¦πŸ‡Έ", "πŸ‡¦πŸ‡©", "πŸ‡¦πŸ‡΄"]), + ("πŸ‡¦πŸ‡«πŸ‡¦πŸ‡½πŸ‡¦πŸ‡±πŸ‡©πŸ‡ΏπŸ‡¦πŸ‡ΈπŸ‡¦πŸ‡©πŸ‡¦", &["πŸ‡¦πŸ‡«", "πŸ‡¦πŸ‡½", "πŸ‡¦πŸ‡±", "πŸ‡©πŸ‡Ώ", "πŸ‡¦πŸ‡Έ", "πŸ‡¦πŸ‡©", "πŸ‡¦"]), + ("πŸ‡¦aπŸ‡«πŸ‡¦πŸ‡½aπŸ‡¦πŸ‡±πŸ‡©πŸ‡ΏπŸ‡¦πŸ‡ΈπŸ‡¦πŸ‡©πŸ‡¦", &["πŸ‡¦", "a", "πŸ‡«πŸ‡¦", "πŸ‡½", "a", "πŸ‡¦πŸ‡±", "πŸ‡©πŸ‡Ώ", "πŸ‡¦πŸ‡Έ", "πŸ‡¦πŸ‡©", "πŸ‡¦"]), + ("\u{1f468}\u{200d}\u{1f468}\u{200d}\u{1f466}", &["\u{1f468}\u{200d}\u{1f468}\u{200d}\u{1f466}"]), + ("πŸ˜ŒπŸ‘ŽπŸΌ", &["😌", "πŸ‘ŽπŸΌ"]), + // perhaps wrong, spaces should not be included? + ("hello world", &["hello", " ", "world"]), + ("πŸ‡¨πŸ‡¦πŸ‡¨πŸ‡­πŸ‡ΏπŸ‡²πŸ‡Ώ hi", &["πŸ‡¨πŸ‡¦", "πŸ‡¨πŸ‡­", "πŸ‡ΏπŸ‡²", "πŸ‡Ώ", " ", "hi"]), + ]; + for &(s, w) in TEST_WORD.iter().chain(EXTRA_TESTS.iter()) { + macro_rules! assert_ { + ($test:expr, $exp:expr, $name:expr) => { + // collect into vector for better diagnostics in failure case + let testing = $test.collect::>(); + let expected = $exp.collect::>(); + assert_eq!(testing, expected, "{} test for testcase ({:?}, {:?}) failed.", $name, s, w) + } + } // test forward iterator - assert!(s.split_word_bounds() - .zip(w.iter().cloned()) - .all(|(a,b)| a == b)); + assert_!(s.split_word_bounds(), + w.iter().cloned(), + "Forward word boundaries"); // test reverse iterator - assert!(s.split_word_bounds().rev() - .zip(w.iter().rev().cloned()) - .all(|(a,b)| a == b)); + assert_!(s.split_word_bounds().rev(), + w.iter().rev().cloned(), + "Reverse word boundaries"); // generate offsets from word string lengths let mut indices = vec![0]; @@ -102,13 +131,13 @@ fn test_words() { let indices = indices; // test forward indices iterator - assert!(s.split_word_bound_indices() - .zip(indices.iter()) - .all(|((l,_),m)| l == *m)); + assert_!(s.split_word_bound_indices().map(|(l,_)| l), + indices.iter().cloned(), + "Forward word indices"); // test backward indices iterator - assert!(s.split_word_bound_indices().rev() - .zip(indices.iter().rev()) - .all(|((l,_),m)| l == *m)); + assert_!(s.split_word_bound_indices().rev().map(|(l,_)| l), + indices.iter().rev().cloned(), + "Reverse word indices"); } } diff --git a/src/testdata.rs b/src/testdata.rs index 822dc8e..185489e 100644 --- a/src/testdata.rs +++ b/src/testdata.rs @@ -19,102 +19,171 @@ "\u{d}"]), ("\u{20}\u{a}", &["\u{20}", "\u{a}"]), ("\u{20}\u{308}\u{a}", &["\u{20}\u{308}", "\u{a}"]), ("\u{20}\u{1}", &["\u{20}", "\u{1}"]), ("\u{20}\u{308}\u{1}", &["\u{20}\u{308}", "\u{1}"]), ("\u{20}\u{300}", &["\u{20}\u{300}"]), ("\u{20}\u{308}\u{300}", - &["\u{20}\u{308}\u{300}"]), ("\u{20}\u{1100}", &["\u{20}", "\u{1100}"]), - ("\u{20}\u{308}\u{1100}", &["\u{20}\u{308}", "\u{1100}"]), ("\u{20}\u{1160}", &["\u{20}", - "\u{1160}"]), ("\u{20}\u{308}\u{1160}", &["\u{20}\u{308}", "\u{1160}"]), ("\u{20}\u{11a8}", - &["\u{20}", "\u{11a8}"]), ("\u{20}\u{308}\u{11a8}", &["\u{20}\u{308}", "\u{11a8}"]), - ("\u{20}\u{ac00}", &["\u{20}", "\u{ac00}"]), ("\u{20}\u{308}\u{ac00}", &["\u{20}\u{308}", - "\u{ac00}"]), ("\u{20}\u{ac01}", &["\u{20}", "\u{ac01}"]), ("\u{20}\u{308}\u{ac01}", - &["\u{20}\u{308}", "\u{ac01}"]), ("\u{20}\u{1f1e6}", &["\u{20}", "\u{1f1e6}"]), - ("\u{20}\u{308}\u{1f1e6}", &["\u{20}\u{308}", "\u{1f1e6}"]), ("\u{20}\u{378}", &["\u{20}", - "\u{378}"]), ("\u{20}\u{308}\u{378}", &["\u{20}\u{308}", "\u{378}"]), ("\u{d}\u{20}", - &["\u{d}", "\u{20}"]), ("\u{d}\u{308}\u{20}", &["\u{d}", "\u{308}", "\u{20}"]), - ("\u{d}\u{d}", &["\u{d}", "\u{d}"]), ("\u{d}\u{308}\u{d}", &["\u{d}", "\u{308}", "\u{d}"]), - ("\u{d}\u{a}", &["\u{d}\u{a}"]), ("\u{d}\u{308}\u{a}", &["\u{d}", "\u{308}", "\u{a}"]), - ("\u{d}\u{1}", &["\u{d}", "\u{1}"]), ("\u{d}\u{308}\u{1}", &["\u{d}", "\u{308}", "\u{1}"]), - ("\u{d}\u{300}", &["\u{d}", "\u{300}"]), ("\u{d}\u{308}\u{300}", &["\u{d}", - "\u{308}\u{300}"]), ("\u{d}\u{903}", &["\u{d}", "\u{903}"]), ("\u{d}\u{1100}", &["\u{d}", - "\u{1100}"]), ("\u{d}\u{308}\u{1100}", &["\u{d}", "\u{308}", "\u{1100}"]), ("\u{d}\u{1160}", - &["\u{d}", "\u{1160}"]), ("\u{d}\u{308}\u{1160}", &["\u{d}", "\u{308}", "\u{1160}"]), - ("\u{d}\u{11a8}", &["\u{d}", "\u{11a8}"]), ("\u{d}\u{308}\u{11a8}", &["\u{d}", "\u{308}", - "\u{11a8}"]), ("\u{d}\u{ac00}", &["\u{d}", "\u{ac00}"]), ("\u{d}\u{308}\u{ac00}", &["\u{d}", - "\u{308}", "\u{ac00}"]), ("\u{d}\u{ac01}", &["\u{d}", "\u{ac01}"]), ("\u{d}\u{308}\u{ac01}", - &["\u{d}", "\u{308}", "\u{ac01}"]), ("\u{d}\u{1f1e6}", &["\u{d}", "\u{1f1e6}"]), - ("\u{d}\u{308}\u{1f1e6}", &["\u{d}", "\u{308}", "\u{1f1e6}"]), ("\u{d}\u{378}", &["\u{d}", - "\u{378}"]), ("\u{d}\u{308}\u{378}", &["\u{d}", "\u{308}", "\u{378}"]), ("\u{a}\u{20}", - &["\u{a}", "\u{20}"]), ("\u{a}\u{308}\u{20}", &["\u{a}", "\u{308}", "\u{20}"]), - ("\u{a}\u{d}", &["\u{a}", "\u{d}"]), ("\u{a}\u{308}\u{d}", &["\u{a}", "\u{308}", "\u{d}"]), - ("\u{a}\u{a}", &["\u{a}", "\u{a}"]), ("\u{a}\u{308}\u{a}", &["\u{a}", "\u{308}", "\u{a}"]), - ("\u{a}\u{1}", &["\u{a}", "\u{1}"]), ("\u{a}\u{308}\u{1}", &["\u{a}", "\u{308}", "\u{1}"]), - ("\u{a}\u{300}", &["\u{a}", "\u{300}"]), ("\u{a}\u{308}\u{300}", &["\u{a}", - "\u{308}\u{300}"]), ("\u{a}\u{903}", &["\u{a}", "\u{903}"]), ("\u{a}\u{1100}", &["\u{a}", - "\u{1100}"]), ("\u{a}\u{308}\u{1100}", &["\u{a}", "\u{308}", "\u{1100}"]), ("\u{a}\u{1160}", - &["\u{a}", "\u{1160}"]), ("\u{a}\u{308}\u{1160}", &["\u{a}", "\u{308}", "\u{1160}"]), - ("\u{a}\u{11a8}", &["\u{a}", "\u{11a8}"]), ("\u{a}\u{308}\u{11a8}", &["\u{a}", "\u{308}", - "\u{11a8}"]), ("\u{a}\u{ac00}", &["\u{a}", "\u{ac00}"]), ("\u{a}\u{308}\u{ac00}", &["\u{a}", - "\u{308}", "\u{ac00}"]), ("\u{a}\u{ac01}", &["\u{a}", "\u{ac01}"]), ("\u{a}\u{308}\u{ac01}", - &["\u{a}", "\u{308}", "\u{ac01}"]), ("\u{a}\u{1f1e6}", &["\u{a}", "\u{1f1e6}"]), - ("\u{a}\u{308}\u{1f1e6}", &["\u{a}", "\u{308}", "\u{1f1e6}"]), ("\u{a}\u{378}", &["\u{a}", + &["\u{20}\u{308}\u{300}"]), ("\u{20}\u{600}", &["\u{20}", "\u{600}"]), + ("\u{20}\u{308}\u{600}", &["\u{20}\u{308}", "\u{600}"]), ("\u{20}\u{1100}", &["\u{20}", + "\u{1100}"]), ("\u{20}\u{308}\u{1100}", &["\u{20}\u{308}", "\u{1100}"]), ("\u{20}\u{1160}", + &["\u{20}", "\u{1160}"]), ("\u{20}\u{308}\u{1160}", &["\u{20}\u{308}", "\u{1160}"]), + ("\u{20}\u{11a8}", &["\u{20}", "\u{11a8}"]), ("\u{20}\u{308}\u{11a8}", &["\u{20}\u{308}", + "\u{11a8}"]), ("\u{20}\u{ac00}", &["\u{20}", "\u{ac00}"]), ("\u{20}\u{308}\u{ac00}", + &["\u{20}\u{308}", "\u{ac00}"]), ("\u{20}\u{ac01}", &["\u{20}", "\u{ac01}"]), + ("\u{20}\u{308}\u{ac01}", &["\u{20}\u{308}", "\u{ac01}"]), ("\u{20}\u{1f1e6}", &["\u{20}", + "\u{1f1e6}"]), ("\u{20}\u{308}\u{1f1e6}", &["\u{20}\u{308}", "\u{1f1e6}"]), + ("\u{20}\u{261d}", &["\u{20}", "\u{261d}"]), ("\u{20}\u{308}\u{261d}", &["\u{20}\u{308}", + "\u{261d}"]), ("\u{20}\u{1f3fb}", &["\u{20}", "\u{1f3fb}"]), ("\u{20}\u{308}\u{1f3fb}", + &["\u{20}\u{308}", "\u{1f3fb}"]), ("\u{20}\u{200d}", &["\u{20}\u{200d}"]), + ("\u{20}\u{308}\u{200d}", &["\u{20}\u{308}\u{200d}"]), ("\u{20}\u{2764}", &["\u{20}", + "\u{2764}"]), ("\u{20}\u{308}\u{2764}", &["\u{20}\u{308}", "\u{2764}"]), ("\u{20}\u{1f466}", + &["\u{20}", "\u{1f466}"]), ("\u{20}\u{308}\u{1f466}", &["\u{20}\u{308}", "\u{1f466}"]), + ("\u{20}\u{378}", &["\u{20}", "\u{378}"]), ("\u{20}\u{308}\u{378}", &["\u{20}\u{308}", + "\u{378}"]), ("\u{d}\u{20}", &["\u{d}", "\u{20}"]), ("\u{d}\u{308}\u{20}", &["\u{d}", + "\u{308}", "\u{20}"]), ("\u{d}\u{d}", &["\u{d}", "\u{d}"]), ("\u{d}\u{308}\u{d}", &["\u{d}", + "\u{308}", "\u{d}"]), ("\u{d}\u{a}", &["\u{d}\u{a}"]), ("\u{d}\u{308}\u{a}", &["\u{d}", + "\u{308}", "\u{a}"]), ("\u{d}\u{1}", &["\u{d}", "\u{1}"]), ("\u{d}\u{308}\u{1}", &["\u{d}", + "\u{308}", "\u{1}"]), ("\u{d}\u{300}", &["\u{d}", "\u{300}"]), ("\u{d}\u{308}\u{300}", + &["\u{d}", "\u{308}\u{300}"]), ("\u{d}\u{600}", &["\u{d}", "\u{600}"]), + ("\u{d}\u{308}\u{600}", &["\u{d}", "\u{308}", "\u{600}"]), ("\u{d}\u{903}", &["\u{d}", + "\u{903}"]), ("\u{d}\u{1100}", &["\u{d}", "\u{1100}"]), ("\u{d}\u{308}\u{1100}", &["\u{d}", + "\u{308}", "\u{1100}"]), ("\u{d}\u{1160}", &["\u{d}", "\u{1160}"]), ("\u{d}\u{308}\u{1160}", + &["\u{d}", "\u{308}", "\u{1160}"]), ("\u{d}\u{11a8}", &["\u{d}", "\u{11a8}"]), + ("\u{d}\u{308}\u{11a8}", &["\u{d}", "\u{308}", "\u{11a8}"]), ("\u{d}\u{ac00}", &["\u{d}", + "\u{ac00}"]), ("\u{d}\u{308}\u{ac00}", &["\u{d}", "\u{308}", "\u{ac00}"]), ("\u{d}\u{ac01}", + &["\u{d}", "\u{ac01}"]), ("\u{d}\u{308}\u{ac01}", &["\u{d}", "\u{308}", "\u{ac01}"]), + ("\u{d}\u{1f1e6}", &["\u{d}", "\u{1f1e6}"]), ("\u{d}\u{308}\u{1f1e6}", &["\u{d}", "\u{308}", + "\u{1f1e6}"]), ("\u{d}\u{261d}", &["\u{d}", "\u{261d}"]), ("\u{d}\u{308}\u{261d}", + &["\u{d}", "\u{308}", "\u{261d}"]), ("\u{d}\u{1f3fb}", &["\u{d}", "\u{1f3fb}"]), + ("\u{d}\u{308}\u{1f3fb}", &["\u{d}", "\u{308}", "\u{1f3fb}"]), ("\u{d}\u{200d}", &["\u{d}", + "\u{200d}"]), ("\u{d}\u{308}\u{200d}", &["\u{d}", "\u{308}\u{200d}"]), ("\u{d}\u{2764}", + &["\u{d}", "\u{2764}"]), ("\u{d}\u{308}\u{2764}", &["\u{d}", "\u{308}", "\u{2764}"]), + ("\u{d}\u{1f466}", &["\u{d}", "\u{1f466}"]), ("\u{d}\u{308}\u{1f466}", &["\u{d}", "\u{308}", + "\u{1f466}"]), ("\u{d}\u{378}", &["\u{d}", "\u{378}"]), ("\u{d}\u{308}\u{378}", &["\u{d}", + "\u{308}", "\u{378}"]), ("\u{a}\u{20}", &["\u{a}", "\u{20}"]), ("\u{a}\u{308}\u{20}", + &["\u{a}", "\u{308}", "\u{20}"]), ("\u{a}\u{d}", &["\u{a}", "\u{d}"]), ("\u{a}\u{308}\u{d}", + &["\u{a}", "\u{308}", "\u{d}"]), ("\u{a}\u{a}", &["\u{a}", "\u{a}"]), ("\u{a}\u{308}\u{a}", + &["\u{a}", "\u{308}", "\u{a}"]), ("\u{a}\u{1}", &["\u{a}", "\u{1}"]), ("\u{a}\u{308}\u{1}", + &["\u{a}", "\u{308}", "\u{1}"]), ("\u{a}\u{300}", &["\u{a}", "\u{300}"]), + ("\u{a}\u{308}\u{300}", &["\u{a}", "\u{308}\u{300}"]), ("\u{a}\u{600}", &["\u{a}", + "\u{600}"]), ("\u{a}\u{308}\u{600}", &["\u{a}", "\u{308}", "\u{600}"]), ("\u{a}\u{903}", + &["\u{a}", "\u{903}"]), ("\u{a}\u{1100}", &["\u{a}", "\u{1100}"]), ("\u{a}\u{308}\u{1100}", + &["\u{a}", "\u{308}", "\u{1100}"]), ("\u{a}\u{1160}", &["\u{a}", "\u{1160}"]), + ("\u{a}\u{308}\u{1160}", &["\u{a}", "\u{308}", "\u{1160}"]), ("\u{a}\u{11a8}", &["\u{a}", + "\u{11a8}"]), ("\u{a}\u{308}\u{11a8}", &["\u{a}", "\u{308}", "\u{11a8}"]), ("\u{a}\u{ac00}", + &["\u{a}", "\u{ac00}"]), ("\u{a}\u{308}\u{ac00}", &["\u{a}", "\u{308}", "\u{ac00}"]), + ("\u{a}\u{ac01}", &["\u{a}", "\u{ac01}"]), ("\u{a}\u{308}\u{ac01}", &["\u{a}", "\u{308}", + "\u{ac01}"]), ("\u{a}\u{1f1e6}", &["\u{a}", "\u{1f1e6}"]), ("\u{a}\u{308}\u{1f1e6}", + &["\u{a}", "\u{308}", "\u{1f1e6}"]), ("\u{a}\u{261d}", &["\u{a}", "\u{261d}"]), + ("\u{a}\u{308}\u{261d}", &["\u{a}", "\u{308}", "\u{261d}"]), ("\u{a}\u{1f3fb}", &["\u{a}", + "\u{1f3fb}"]), ("\u{a}\u{308}\u{1f3fb}", &["\u{a}", "\u{308}", "\u{1f3fb}"]), + ("\u{a}\u{200d}", &["\u{a}", "\u{200d}"]), ("\u{a}\u{308}\u{200d}", &["\u{a}", + "\u{308}\u{200d}"]), ("\u{a}\u{2764}", &["\u{a}", "\u{2764}"]), ("\u{a}\u{308}\u{2764}", + &["\u{a}", "\u{308}", "\u{2764}"]), ("\u{a}\u{1f466}", &["\u{a}", "\u{1f466}"]), + ("\u{a}\u{308}\u{1f466}", &["\u{a}", "\u{308}", "\u{1f466}"]), ("\u{a}\u{378}", &["\u{a}", "\u{378}"]), ("\u{a}\u{308}\u{378}", &["\u{a}", "\u{308}", "\u{378}"]), ("\u{1}\u{20}", &["\u{1}", "\u{20}"]), ("\u{1}\u{308}\u{20}", &["\u{1}", "\u{308}", "\u{20}"]), ("\u{1}\u{d}", &["\u{1}", "\u{d}"]), ("\u{1}\u{308}\u{d}", &["\u{1}", "\u{308}", "\u{d}"]), ("\u{1}\u{a}", &["\u{1}", "\u{a}"]), ("\u{1}\u{308}\u{a}", &["\u{1}", "\u{308}", "\u{a}"]), ("\u{1}\u{1}", &["\u{1}", "\u{1}"]), ("\u{1}\u{308}\u{1}", &["\u{1}", "\u{308}", "\u{1}"]), ("\u{1}\u{300}", &["\u{1}", "\u{300}"]), ("\u{1}\u{308}\u{300}", &["\u{1}", - "\u{308}\u{300}"]), ("\u{1}\u{903}", &["\u{1}", "\u{903}"]), ("\u{1}\u{1100}", &["\u{1}", - "\u{1100}"]), ("\u{1}\u{308}\u{1100}", &["\u{1}", "\u{308}", "\u{1100}"]), ("\u{1}\u{1160}", - &["\u{1}", "\u{1160}"]), ("\u{1}\u{308}\u{1160}", &["\u{1}", "\u{308}", "\u{1160}"]), - ("\u{1}\u{11a8}", &["\u{1}", "\u{11a8}"]), ("\u{1}\u{308}\u{11a8}", &["\u{1}", "\u{308}", - "\u{11a8}"]), ("\u{1}\u{ac00}", &["\u{1}", "\u{ac00}"]), ("\u{1}\u{308}\u{ac00}", &["\u{1}", - "\u{308}", "\u{ac00}"]), ("\u{1}\u{ac01}", &["\u{1}", "\u{ac01}"]), ("\u{1}\u{308}\u{ac01}", - &["\u{1}", "\u{308}", "\u{ac01}"]), ("\u{1}\u{1f1e6}", &["\u{1}", "\u{1f1e6}"]), - ("\u{1}\u{308}\u{1f1e6}", &["\u{1}", "\u{308}", "\u{1f1e6}"]), ("\u{1}\u{378}", &["\u{1}", - "\u{378}"]), ("\u{1}\u{308}\u{378}", &["\u{1}", "\u{308}", "\u{378}"]), ("\u{300}\u{20}", - &["\u{300}", "\u{20}"]), ("\u{300}\u{308}\u{20}", &["\u{300}\u{308}", "\u{20}"]), - ("\u{300}\u{d}", &["\u{300}", "\u{d}"]), ("\u{300}\u{308}\u{d}", &["\u{300}\u{308}", - "\u{d}"]), ("\u{300}\u{a}", &["\u{300}", "\u{a}"]), ("\u{300}\u{308}\u{a}", - &["\u{300}\u{308}", "\u{a}"]), ("\u{300}\u{1}", &["\u{300}", "\u{1}"]), - ("\u{300}\u{308}\u{1}", &["\u{300}\u{308}", "\u{1}"]), ("\u{300}\u{300}", - &["\u{300}\u{300}"]), ("\u{300}\u{308}\u{300}", &["\u{300}\u{308}\u{300}"]), - ("\u{300}\u{1100}", &["\u{300}", "\u{1100}"]), ("\u{300}\u{308}\u{1100}", - &["\u{300}\u{308}", "\u{1100}"]), ("\u{300}\u{1160}", &["\u{300}", "\u{1160}"]), - ("\u{300}\u{308}\u{1160}", &["\u{300}\u{308}", "\u{1160}"]), ("\u{300}\u{11a8}", - &["\u{300}", "\u{11a8}"]), ("\u{300}\u{308}\u{11a8}", &["\u{300}\u{308}", "\u{11a8}"]), - ("\u{300}\u{ac00}", &["\u{300}", "\u{ac00}"]), ("\u{300}\u{308}\u{ac00}", - &["\u{300}\u{308}", "\u{ac00}"]), ("\u{300}\u{ac01}", &["\u{300}", "\u{ac01}"]), - ("\u{300}\u{308}\u{ac01}", &["\u{300}\u{308}", "\u{ac01}"]), ("\u{300}\u{1f1e6}", - &["\u{300}", "\u{1f1e6}"]), ("\u{300}\u{308}\u{1f1e6}", &["\u{300}\u{308}", "\u{1f1e6}"]), - ("\u{300}\u{378}", &["\u{300}", "\u{378}"]), ("\u{300}\u{308}\u{378}", &["\u{300}\u{308}", - "\u{378}"]), ("\u{903}\u{20}", &["\u{903}", "\u{20}"]), ("\u{903}\u{308}\u{20}", - &["\u{903}\u{308}", "\u{20}"]), ("\u{903}\u{d}", &["\u{903}", "\u{d}"]), - ("\u{903}\u{308}\u{d}", &["\u{903}\u{308}", "\u{d}"]), ("\u{903}\u{a}", &["\u{903}", - "\u{a}"]), ("\u{903}\u{308}\u{a}", &["\u{903}\u{308}", "\u{a}"]), ("\u{903}\u{1}", - &["\u{903}", "\u{1}"]), ("\u{903}\u{308}\u{1}", &["\u{903}\u{308}", "\u{1}"]), - ("\u{903}\u{300}", &["\u{903}\u{300}"]), ("\u{903}\u{308}\u{300}", - &["\u{903}\u{308}\u{300}"]), ("\u{903}\u{1100}", &["\u{903}", "\u{1100}"]), - ("\u{903}\u{308}\u{1100}", &["\u{903}\u{308}", "\u{1100}"]), ("\u{903}\u{1160}", - &["\u{903}", "\u{1160}"]), ("\u{903}\u{308}\u{1160}", &["\u{903}\u{308}", "\u{1160}"]), - ("\u{903}\u{11a8}", &["\u{903}", "\u{11a8}"]), ("\u{903}\u{308}\u{11a8}", - &["\u{903}\u{308}", "\u{11a8}"]), ("\u{903}\u{ac00}", &["\u{903}", "\u{ac00}"]), - ("\u{903}\u{308}\u{ac00}", &["\u{903}\u{308}", "\u{ac00}"]), ("\u{903}\u{ac01}", - &["\u{903}", "\u{ac01}"]), ("\u{903}\u{308}\u{ac01}", &["\u{903}\u{308}", "\u{ac01}"]), - ("\u{903}\u{1f1e6}", &["\u{903}", "\u{1f1e6}"]), ("\u{903}\u{308}\u{1f1e6}", - &["\u{903}\u{308}", "\u{1f1e6}"]), ("\u{903}\u{378}", &["\u{903}", "\u{378}"]), + "\u{308}\u{300}"]), ("\u{1}\u{600}", &["\u{1}", "\u{600}"]), ("\u{1}\u{308}\u{600}", + &["\u{1}", "\u{308}", "\u{600}"]), ("\u{1}\u{903}", &["\u{1}", "\u{903}"]), + ("\u{1}\u{1100}", &["\u{1}", "\u{1100}"]), ("\u{1}\u{308}\u{1100}", &["\u{1}", "\u{308}", + "\u{1100}"]), ("\u{1}\u{1160}", &["\u{1}", "\u{1160}"]), ("\u{1}\u{308}\u{1160}", &["\u{1}", + "\u{308}", "\u{1160}"]), ("\u{1}\u{11a8}", &["\u{1}", "\u{11a8}"]), ("\u{1}\u{308}\u{11a8}", + &["\u{1}", "\u{308}", "\u{11a8}"]), ("\u{1}\u{ac00}", &["\u{1}", "\u{ac00}"]), + ("\u{1}\u{308}\u{ac00}", &["\u{1}", "\u{308}", "\u{ac00}"]), ("\u{1}\u{ac01}", &["\u{1}", + "\u{ac01}"]), ("\u{1}\u{308}\u{ac01}", &["\u{1}", "\u{308}", "\u{ac01}"]), + ("\u{1}\u{1f1e6}", &["\u{1}", "\u{1f1e6}"]), ("\u{1}\u{308}\u{1f1e6}", &["\u{1}", "\u{308}", + "\u{1f1e6}"]), ("\u{1}\u{261d}", &["\u{1}", "\u{261d}"]), ("\u{1}\u{308}\u{261d}", + &["\u{1}", "\u{308}", "\u{261d}"]), ("\u{1}\u{1f3fb}", &["\u{1}", "\u{1f3fb}"]), + ("\u{1}\u{308}\u{1f3fb}", &["\u{1}", "\u{308}", "\u{1f3fb}"]), ("\u{1}\u{200d}", &["\u{1}", + "\u{200d}"]), ("\u{1}\u{308}\u{200d}", &["\u{1}", "\u{308}\u{200d}"]), ("\u{1}\u{2764}", + &["\u{1}", "\u{2764}"]), ("\u{1}\u{308}\u{2764}", &["\u{1}", "\u{308}", "\u{2764}"]), + ("\u{1}\u{1f466}", &["\u{1}", "\u{1f466}"]), ("\u{1}\u{308}\u{1f466}", &["\u{1}", "\u{308}", + "\u{1f466}"]), ("\u{1}\u{378}", &["\u{1}", "\u{378}"]), ("\u{1}\u{308}\u{378}", &["\u{1}", + "\u{308}", "\u{378}"]), ("\u{300}\u{20}", &["\u{300}", "\u{20}"]), ("\u{300}\u{308}\u{20}", + &["\u{300}\u{308}", "\u{20}"]), ("\u{300}\u{d}", &["\u{300}", "\u{d}"]), + ("\u{300}\u{308}\u{d}", &["\u{300}\u{308}", "\u{d}"]), ("\u{300}\u{a}", &["\u{300}", + "\u{a}"]), ("\u{300}\u{308}\u{a}", &["\u{300}\u{308}", "\u{a}"]), ("\u{300}\u{1}", + &["\u{300}", "\u{1}"]), ("\u{300}\u{308}\u{1}", &["\u{300}\u{308}", "\u{1}"]), + ("\u{300}\u{300}", &["\u{300}\u{300}"]), ("\u{300}\u{308}\u{300}", + &["\u{300}\u{308}\u{300}"]), ("\u{300}\u{600}", &["\u{300}", "\u{600}"]), + ("\u{300}\u{308}\u{600}", &["\u{300}\u{308}", "\u{600}"]), ("\u{300}\u{1100}", &["\u{300}", + "\u{1100}"]), ("\u{300}\u{308}\u{1100}", &["\u{300}\u{308}", "\u{1100}"]), + ("\u{300}\u{1160}", &["\u{300}", "\u{1160}"]), ("\u{300}\u{308}\u{1160}", + &["\u{300}\u{308}", "\u{1160}"]), ("\u{300}\u{11a8}", &["\u{300}", "\u{11a8}"]), + ("\u{300}\u{308}\u{11a8}", &["\u{300}\u{308}", "\u{11a8}"]), ("\u{300}\u{ac00}", + &["\u{300}", "\u{ac00}"]), ("\u{300}\u{308}\u{ac00}", &["\u{300}\u{308}", "\u{ac00}"]), + ("\u{300}\u{ac01}", &["\u{300}", "\u{ac01}"]), ("\u{300}\u{308}\u{ac01}", + &["\u{300}\u{308}", "\u{ac01}"]), ("\u{300}\u{1f1e6}", &["\u{300}", "\u{1f1e6}"]), + ("\u{300}\u{308}\u{1f1e6}", &["\u{300}\u{308}", "\u{1f1e6}"]), ("\u{300}\u{261d}", + &["\u{300}", "\u{261d}"]), ("\u{300}\u{308}\u{261d}", &["\u{300}\u{308}", "\u{261d}"]), + ("\u{300}\u{1f3fb}", &["\u{300}", "\u{1f3fb}"]), ("\u{300}\u{308}\u{1f3fb}", + &["\u{300}\u{308}", "\u{1f3fb}"]), ("\u{300}\u{200d}", &["\u{300}\u{200d}"]), + ("\u{300}\u{308}\u{200d}", &["\u{300}\u{308}\u{200d}"]), ("\u{300}\u{2764}", &["\u{300}", + "\u{2764}"]), ("\u{300}\u{308}\u{2764}", &["\u{300}\u{308}", "\u{2764}"]), + ("\u{300}\u{1f466}", &["\u{300}", "\u{1f466}"]), ("\u{300}\u{308}\u{1f466}", + &["\u{300}\u{308}", "\u{1f466}"]), ("\u{300}\u{378}", &["\u{300}", "\u{378}"]), + ("\u{300}\u{308}\u{378}", &["\u{300}\u{308}", "\u{378}"]), ("\u{600}\u{308}\u{20}", + &["\u{600}\u{308}", "\u{20}"]), ("\u{600}\u{d}", &["\u{600}", "\u{d}"]), + ("\u{600}\u{308}\u{d}", &["\u{600}\u{308}", "\u{d}"]), ("\u{600}\u{a}", &["\u{600}", + "\u{a}"]), ("\u{600}\u{308}\u{a}", &["\u{600}\u{308}", "\u{a}"]), ("\u{600}\u{1}", + &["\u{600}", "\u{1}"]), ("\u{600}\u{308}\u{1}", &["\u{600}\u{308}", "\u{1}"]), + ("\u{600}\u{300}", &["\u{600}\u{300}"]), ("\u{600}\u{308}\u{300}", + &["\u{600}\u{308}\u{300}"]), ("\u{600}\u{308}\u{600}", &["\u{600}\u{308}", "\u{600}"]), + ("\u{600}\u{308}\u{1100}", &["\u{600}\u{308}", "\u{1100}"]), ("\u{600}\u{308}\u{1160}", + &["\u{600}\u{308}", "\u{1160}"]), ("\u{600}\u{308}\u{11a8}", &["\u{600}\u{308}", + "\u{11a8}"]), ("\u{600}\u{308}\u{ac00}", &["\u{600}\u{308}", "\u{ac00}"]), + ("\u{600}\u{308}\u{ac01}", &["\u{600}\u{308}", "\u{ac01}"]), ("\u{600}\u{308}\u{1f1e6}", + &["\u{600}\u{308}", "\u{1f1e6}"]), ("\u{600}\u{308}\u{261d}", &["\u{600}\u{308}", + "\u{261d}"]), ("\u{600}\u{308}\u{1f3fb}", &["\u{600}\u{308}", "\u{1f3fb}"]), + ("\u{600}\u{200d}", &["\u{600}\u{200d}"]), ("\u{600}\u{308}\u{200d}", + &["\u{600}\u{308}\u{200d}"]), ("\u{600}\u{308}\u{2764}", &["\u{600}\u{308}", "\u{2764}"]), + ("\u{600}\u{308}\u{1f466}", &["\u{600}\u{308}", "\u{1f466}"]), ("\u{600}\u{308}\u{378}", + &["\u{600}\u{308}", "\u{378}"]), ("\u{903}\u{20}", &["\u{903}", "\u{20}"]), + ("\u{903}\u{308}\u{20}", &["\u{903}\u{308}", "\u{20}"]), ("\u{903}\u{d}", &["\u{903}", + "\u{d}"]), ("\u{903}\u{308}\u{d}", &["\u{903}\u{308}", "\u{d}"]), ("\u{903}\u{a}", + &["\u{903}", "\u{a}"]), ("\u{903}\u{308}\u{a}", &["\u{903}\u{308}", "\u{a}"]), + ("\u{903}\u{1}", &["\u{903}", "\u{1}"]), ("\u{903}\u{308}\u{1}", &["\u{903}\u{308}", + "\u{1}"]), ("\u{903}\u{300}", &["\u{903}\u{300}"]), ("\u{903}\u{308}\u{300}", + &["\u{903}\u{308}\u{300}"]), ("\u{903}\u{600}", &["\u{903}", "\u{600}"]), + ("\u{903}\u{308}\u{600}", &["\u{903}\u{308}", "\u{600}"]), ("\u{903}\u{1100}", &["\u{903}", + "\u{1100}"]), ("\u{903}\u{308}\u{1100}", &["\u{903}\u{308}", "\u{1100}"]), + ("\u{903}\u{1160}", &["\u{903}", "\u{1160}"]), ("\u{903}\u{308}\u{1160}", + &["\u{903}\u{308}", "\u{1160}"]), ("\u{903}\u{11a8}", &["\u{903}", "\u{11a8}"]), + ("\u{903}\u{308}\u{11a8}", &["\u{903}\u{308}", "\u{11a8}"]), ("\u{903}\u{ac00}", + &["\u{903}", "\u{ac00}"]), ("\u{903}\u{308}\u{ac00}", &["\u{903}\u{308}", "\u{ac00}"]), + ("\u{903}\u{ac01}", &["\u{903}", "\u{ac01}"]), ("\u{903}\u{308}\u{ac01}", + &["\u{903}\u{308}", "\u{ac01}"]), ("\u{903}\u{1f1e6}", &["\u{903}", "\u{1f1e6}"]), + ("\u{903}\u{308}\u{1f1e6}", &["\u{903}\u{308}", "\u{1f1e6}"]), ("\u{903}\u{261d}", + &["\u{903}", "\u{261d}"]), ("\u{903}\u{308}\u{261d}", &["\u{903}\u{308}", "\u{261d}"]), + ("\u{903}\u{1f3fb}", &["\u{903}", "\u{1f3fb}"]), ("\u{903}\u{308}\u{1f3fb}", + &["\u{903}\u{308}", "\u{1f3fb}"]), ("\u{903}\u{200d}", &["\u{903}\u{200d}"]), + ("\u{903}\u{308}\u{200d}", &["\u{903}\u{308}\u{200d}"]), ("\u{903}\u{2764}", &["\u{903}", + "\u{2764}"]), ("\u{903}\u{308}\u{2764}", &["\u{903}\u{308}", "\u{2764}"]), + ("\u{903}\u{1f466}", &["\u{903}", "\u{1f466}"]), ("\u{903}\u{308}\u{1f466}", + &["\u{903}\u{308}", "\u{1f466}"]), ("\u{903}\u{378}", &["\u{903}", "\u{378}"]), ("\u{903}\u{308}\u{378}", &["\u{903}\u{308}", "\u{378}"]), ("\u{1100}\u{20}", &["\u{1100}", "\u{20}"]), ("\u{1100}\u{308}\u{20}", &["\u{1100}\u{308}", "\u{20}"]), ("\u{1100}\u{d}", &["\u{1100}", "\u{d}"]), ("\u{1100}\u{308}\u{d}", &["\u{1100}\u{308}", "\u{d}"]), ("\u{1100}\u{a}", &["\u{1100}", "\u{a}"]), ("\u{1100}\u{308}\u{a}", &["\u{1100}\u{308}", "\u{a}"]), ("\u{1100}\u{1}", &["\u{1100}", "\u{1}"]), ("\u{1100}\u{308}\u{1}", &["\u{1100}\u{308}", "\u{1}"]), ("\u{1100}\u{300}", &["\u{1100}\u{300}"]), - ("\u{1100}\u{308}\u{300}", &["\u{1100}\u{308}\u{300}"]), ("\u{1100}\u{1100}", - &["\u{1100}\u{1100}"]), ("\u{1100}\u{308}\u{1100}", &["\u{1100}\u{308}", "\u{1100}"]), - ("\u{1100}\u{1160}", &["\u{1100}\u{1160}"]), ("\u{1100}\u{308}\u{1160}", - &["\u{1100}\u{308}", "\u{1160}"]), ("\u{1100}\u{11a8}", &["\u{1100}", "\u{11a8}"]), - ("\u{1100}\u{308}\u{11a8}", &["\u{1100}\u{308}", "\u{11a8}"]), ("\u{1100}\u{ac00}", - &["\u{1100}\u{ac00}"]), ("\u{1100}\u{308}\u{ac00}", &["\u{1100}\u{308}", "\u{ac00}"]), - ("\u{1100}\u{ac01}", &["\u{1100}\u{ac01}"]), ("\u{1100}\u{308}\u{ac01}", - &["\u{1100}\u{308}", "\u{ac01}"]), ("\u{1100}\u{1f1e6}", &["\u{1100}", "\u{1f1e6}"]), - ("\u{1100}\u{308}\u{1f1e6}", &["\u{1100}\u{308}", "\u{1f1e6}"]), ("\u{1100}\u{378}", + ("\u{1100}\u{308}\u{300}", &["\u{1100}\u{308}\u{300}"]), ("\u{1100}\u{600}", &["\u{1100}", + "\u{600}"]), ("\u{1100}\u{308}\u{600}", &["\u{1100}\u{308}", "\u{600}"]), + ("\u{1100}\u{1100}", &["\u{1100}\u{1100}"]), ("\u{1100}\u{308}\u{1100}", + &["\u{1100}\u{308}", "\u{1100}"]), ("\u{1100}\u{1160}", &["\u{1100}\u{1160}"]), + ("\u{1100}\u{308}\u{1160}", &["\u{1100}\u{308}", "\u{1160}"]), ("\u{1100}\u{11a8}", + &["\u{1100}", "\u{11a8}"]), ("\u{1100}\u{308}\u{11a8}", &["\u{1100}\u{308}", "\u{11a8}"]), + ("\u{1100}\u{ac00}", &["\u{1100}\u{ac00}"]), ("\u{1100}\u{308}\u{ac00}", + &["\u{1100}\u{308}", "\u{ac00}"]), ("\u{1100}\u{ac01}", &["\u{1100}\u{ac01}"]), + ("\u{1100}\u{308}\u{ac01}", &["\u{1100}\u{308}", "\u{ac01}"]), ("\u{1100}\u{1f1e6}", + &["\u{1100}", "\u{1f1e6}"]), ("\u{1100}\u{308}\u{1f1e6}", &["\u{1100}\u{308}", + "\u{1f1e6}"]), ("\u{1100}\u{261d}", &["\u{1100}", "\u{261d}"]), ("\u{1100}\u{308}\u{261d}", + &["\u{1100}\u{308}", "\u{261d}"]), ("\u{1100}\u{1f3fb}", &["\u{1100}", "\u{1f3fb}"]), + ("\u{1100}\u{308}\u{1f3fb}", &["\u{1100}\u{308}", "\u{1f3fb}"]), ("\u{1100}\u{200d}", + &["\u{1100}\u{200d}"]), ("\u{1100}\u{308}\u{200d}", &["\u{1100}\u{308}\u{200d}"]), + ("\u{1100}\u{2764}", &["\u{1100}", "\u{2764}"]), ("\u{1100}\u{308}\u{2764}", + &["\u{1100}\u{308}", "\u{2764}"]), ("\u{1100}\u{1f466}", &["\u{1100}", "\u{1f466}"]), + ("\u{1100}\u{308}\u{1f466}", &["\u{1100}\u{308}", "\u{1f466}"]), ("\u{1100}\u{378}", &["\u{1100}", "\u{378}"]), ("\u{1100}\u{308}\u{378}", &["\u{1100}\u{308}", "\u{378}"]), ("\u{1160}\u{20}", &["\u{1160}", "\u{20}"]), ("\u{1160}\u{308}\u{20}", &["\u{1160}\u{308}", "\u{20}"]), ("\u{1160}\u{d}", &["\u{1160}", "\u{d}"]), ("\u{1160}\u{308}\u{d}", @@ -122,30 +191,46 @@ ("\u{1160}\u{308}\u{a}", &["\u{1160}\u{308}", "\u{a}"]), ("\u{1160}\u{1}", &["\u{1160}", "\u{1}"]), ("\u{1160}\u{308}\u{1}", &["\u{1160}\u{308}", "\u{1}"]), ("\u{1160}\u{300}", &["\u{1160}\u{300}"]), ("\u{1160}\u{308}\u{300}", &["\u{1160}\u{308}\u{300}"]), - ("\u{1160}\u{1100}", &["\u{1160}", "\u{1100}"]), ("\u{1160}\u{308}\u{1100}", - &["\u{1160}\u{308}", "\u{1100}"]), ("\u{1160}\u{1160}", &["\u{1160}\u{1160}"]), - ("\u{1160}\u{308}\u{1160}", &["\u{1160}\u{308}", "\u{1160}"]), ("\u{1160}\u{11a8}", - &["\u{1160}\u{11a8}"]), ("\u{1160}\u{308}\u{11a8}", &["\u{1160}\u{308}", "\u{11a8}"]), - ("\u{1160}\u{ac00}", &["\u{1160}", "\u{ac00}"]), ("\u{1160}\u{308}\u{ac00}", - &["\u{1160}\u{308}", "\u{ac00}"]), ("\u{1160}\u{ac01}", &["\u{1160}", "\u{ac01}"]), - ("\u{1160}\u{308}\u{ac01}", &["\u{1160}\u{308}", "\u{ac01}"]), ("\u{1160}\u{1f1e6}", - &["\u{1160}", "\u{1f1e6}"]), ("\u{1160}\u{308}\u{1f1e6}", &["\u{1160}\u{308}", - "\u{1f1e6}"]), ("\u{1160}\u{378}", &["\u{1160}", "\u{378}"]), ("\u{1160}\u{308}\u{378}", + ("\u{1160}\u{600}", &["\u{1160}", "\u{600}"]), ("\u{1160}\u{308}\u{600}", + &["\u{1160}\u{308}", "\u{600}"]), ("\u{1160}\u{1100}", &["\u{1160}", "\u{1100}"]), + ("\u{1160}\u{308}\u{1100}", &["\u{1160}\u{308}", "\u{1100}"]), ("\u{1160}\u{1160}", + &["\u{1160}\u{1160}"]), ("\u{1160}\u{308}\u{1160}", &["\u{1160}\u{308}", "\u{1160}"]), + ("\u{1160}\u{11a8}", &["\u{1160}\u{11a8}"]), ("\u{1160}\u{308}\u{11a8}", + &["\u{1160}\u{308}", "\u{11a8}"]), ("\u{1160}\u{ac00}", &["\u{1160}", "\u{ac00}"]), + ("\u{1160}\u{308}\u{ac00}", &["\u{1160}\u{308}", "\u{ac00}"]), ("\u{1160}\u{ac01}", + &["\u{1160}", "\u{ac01}"]), ("\u{1160}\u{308}\u{ac01}", &["\u{1160}\u{308}", "\u{ac01}"]), + ("\u{1160}\u{1f1e6}", &["\u{1160}", "\u{1f1e6}"]), ("\u{1160}\u{308}\u{1f1e6}", + &["\u{1160}\u{308}", "\u{1f1e6}"]), ("\u{1160}\u{261d}", &["\u{1160}", "\u{261d}"]), + ("\u{1160}\u{308}\u{261d}", &["\u{1160}\u{308}", "\u{261d}"]), ("\u{1160}\u{1f3fb}", + &["\u{1160}", "\u{1f3fb}"]), ("\u{1160}\u{308}\u{1f3fb}", &["\u{1160}\u{308}", + "\u{1f3fb}"]), ("\u{1160}\u{200d}", &["\u{1160}\u{200d}"]), ("\u{1160}\u{308}\u{200d}", + &["\u{1160}\u{308}\u{200d}"]), ("\u{1160}\u{2764}", &["\u{1160}", "\u{2764}"]), + ("\u{1160}\u{308}\u{2764}", &["\u{1160}\u{308}", "\u{2764}"]), ("\u{1160}\u{1f466}", + &["\u{1160}", "\u{1f466}"]), ("\u{1160}\u{308}\u{1f466}", &["\u{1160}\u{308}", + "\u{1f466}"]), ("\u{1160}\u{378}", &["\u{1160}", "\u{378}"]), ("\u{1160}\u{308}\u{378}", &["\u{1160}\u{308}", "\u{378}"]), ("\u{11a8}\u{20}", &["\u{11a8}", "\u{20}"]), ("\u{11a8}\u{308}\u{20}", &["\u{11a8}\u{308}", "\u{20}"]), ("\u{11a8}\u{d}", &["\u{11a8}", "\u{d}"]), ("\u{11a8}\u{308}\u{d}", &["\u{11a8}\u{308}", "\u{d}"]), ("\u{11a8}\u{a}", &["\u{11a8}", "\u{a}"]), ("\u{11a8}\u{308}\u{a}", &["\u{11a8}\u{308}", "\u{a}"]), ("\u{11a8}\u{1}", &["\u{11a8}", "\u{1}"]), ("\u{11a8}\u{308}\u{1}", &["\u{11a8}\u{308}", "\u{1}"]), ("\u{11a8}\u{300}", &["\u{11a8}\u{300}"]), ("\u{11a8}\u{308}\u{300}", - &["\u{11a8}\u{308}\u{300}"]), ("\u{11a8}\u{1100}", &["\u{11a8}", "\u{1100}"]), - ("\u{11a8}\u{308}\u{1100}", &["\u{11a8}\u{308}", "\u{1100}"]), ("\u{11a8}\u{1160}", - &["\u{11a8}", "\u{1160}"]), ("\u{11a8}\u{308}\u{1160}", &["\u{11a8}\u{308}", "\u{1160}"]), - ("\u{11a8}\u{11a8}", &["\u{11a8}\u{11a8}"]), ("\u{11a8}\u{308}\u{11a8}", - &["\u{11a8}\u{308}", "\u{11a8}"]), ("\u{11a8}\u{ac00}", &["\u{11a8}", "\u{ac00}"]), - ("\u{11a8}\u{308}\u{ac00}", &["\u{11a8}\u{308}", "\u{ac00}"]), ("\u{11a8}\u{ac01}", - &["\u{11a8}", "\u{ac01}"]), ("\u{11a8}\u{308}\u{ac01}", &["\u{11a8}\u{308}", "\u{ac01}"]), - ("\u{11a8}\u{1f1e6}", &["\u{11a8}", "\u{1f1e6}"]), ("\u{11a8}\u{308}\u{1f1e6}", - &["\u{11a8}\u{308}", "\u{1f1e6}"]), ("\u{11a8}\u{378}", &["\u{11a8}", "\u{378}"]), + &["\u{11a8}\u{308}\u{300}"]), ("\u{11a8}\u{600}", &["\u{11a8}", "\u{600}"]), + ("\u{11a8}\u{308}\u{600}", &["\u{11a8}\u{308}", "\u{600}"]), ("\u{11a8}\u{1100}", + &["\u{11a8}", "\u{1100}"]), ("\u{11a8}\u{308}\u{1100}", &["\u{11a8}\u{308}", "\u{1100}"]), + ("\u{11a8}\u{1160}", &["\u{11a8}", "\u{1160}"]), ("\u{11a8}\u{308}\u{1160}", + &["\u{11a8}\u{308}", "\u{1160}"]), ("\u{11a8}\u{11a8}", &["\u{11a8}\u{11a8}"]), + ("\u{11a8}\u{308}\u{11a8}", &["\u{11a8}\u{308}", "\u{11a8}"]), ("\u{11a8}\u{ac00}", + &["\u{11a8}", "\u{ac00}"]), ("\u{11a8}\u{308}\u{ac00}", &["\u{11a8}\u{308}", "\u{ac00}"]), + ("\u{11a8}\u{ac01}", &["\u{11a8}", "\u{ac01}"]), ("\u{11a8}\u{308}\u{ac01}", + &["\u{11a8}\u{308}", "\u{ac01}"]), ("\u{11a8}\u{1f1e6}", &["\u{11a8}", "\u{1f1e6}"]), + ("\u{11a8}\u{308}\u{1f1e6}", &["\u{11a8}\u{308}", "\u{1f1e6}"]), ("\u{11a8}\u{261d}", + &["\u{11a8}", "\u{261d}"]), ("\u{11a8}\u{308}\u{261d}", &["\u{11a8}\u{308}", "\u{261d}"]), + ("\u{11a8}\u{1f3fb}", &["\u{11a8}", "\u{1f3fb}"]), ("\u{11a8}\u{308}\u{1f3fb}", + &["\u{11a8}\u{308}", "\u{1f3fb}"]), ("\u{11a8}\u{200d}", &["\u{11a8}\u{200d}"]), + ("\u{11a8}\u{308}\u{200d}", &["\u{11a8}\u{308}\u{200d}"]), ("\u{11a8}\u{2764}", + &["\u{11a8}", "\u{2764}"]), ("\u{11a8}\u{308}\u{2764}", &["\u{11a8}\u{308}", "\u{2764}"]), + ("\u{11a8}\u{1f466}", &["\u{11a8}", "\u{1f466}"]), ("\u{11a8}\u{308}\u{1f466}", + &["\u{11a8}\u{308}", "\u{1f466}"]), ("\u{11a8}\u{378}", &["\u{11a8}", "\u{378}"]), ("\u{11a8}\u{308}\u{378}", &["\u{11a8}\u{308}", "\u{378}"]), ("\u{ac00}\u{20}", &["\u{ac00}", "\u{20}"]), ("\u{ac00}\u{308}\u{20}", &["\u{ac00}\u{308}", "\u{20}"]), ("\u{ac00}\u{d}", &["\u{ac00}", "\u{d}"]), ("\u{ac00}\u{308}\u{d}", &["\u{ac00}\u{308}", @@ -153,30 +238,46 @@ &["\u{ac00}\u{308}", "\u{a}"]), ("\u{ac00}\u{1}", &["\u{ac00}", "\u{1}"]), ("\u{ac00}\u{308}\u{1}", &["\u{ac00}\u{308}", "\u{1}"]), ("\u{ac00}\u{300}", &["\u{ac00}\u{300}"]), ("\u{ac00}\u{308}\u{300}", &["\u{ac00}\u{308}\u{300}"]), - ("\u{ac00}\u{1100}", &["\u{ac00}", "\u{1100}"]), ("\u{ac00}\u{308}\u{1100}", - &["\u{ac00}\u{308}", "\u{1100}"]), ("\u{ac00}\u{1160}", &["\u{ac00}\u{1160}"]), - ("\u{ac00}\u{308}\u{1160}", &["\u{ac00}\u{308}", "\u{1160}"]), ("\u{ac00}\u{11a8}", - &["\u{ac00}\u{11a8}"]), ("\u{ac00}\u{308}\u{11a8}", &["\u{ac00}\u{308}", "\u{11a8}"]), - ("\u{ac00}\u{ac00}", &["\u{ac00}", "\u{ac00}"]), ("\u{ac00}\u{308}\u{ac00}", - &["\u{ac00}\u{308}", "\u{ac00}"]), ("\u{ac00}\u{ac01}", &["\u{ac00}", "\u{ac01}"]), - ("\u{ac00}\u{308}\u{ac01}", &["\u{ac00}\u{308}", "\u{ac01}"]), ("\u{ac00}\u{1f1e6}", - &["\u{ac00}", "\u{1f1e6}"]), ("\u{ac00}\u{308}\u{1f1e6}", &["\u{ac00}\u{308}", - "\u{1f1e6}"]), ("\u{ac00}\u{378}", &["\u{ac00}", "\u{378}"]), ("\u{ac00}\u{308}\u{378}", + ("\u{ac00}\u{600}", &["\u{ac00}", "\u{600}"]), ("\u{ac00}\u{308}\u{600}", + &["\u{ac00}\u{308}", "\u{600}"]), ("\u{ac00}\u{1100}", &["\u{ac00}", "\u{1100}"]), + ("\u{ac00}\u{308}\u{1100}", &["\u{ac00}\u{308}", "\u{1100}"]), ("\u{ac00}\u{1160}", + &["\u{ac00}\u{1160}"]), ("\u{ac00}\u{308}\u{1160}", &["\u{ac00}\u{308}", "\u{1160}"]), + ("\u{ac00}\u{11a8}", &["\u{ac00}\u{11a8}"]), ("\u{ac00}\u{308}\u{11a8}", + &["\u{ac00}\u{308}", "\u{11a8}"]), ("\u{ac00}\u{ac00}", &["\u{ac00}", "\u{ac00}"]), + ("\u{ac00}\u{308}\u{ac00}", &["\u{ac00}\u{308}", "\u{ac00}"]), ("\u{ac00}\u{ac01}", + &["\u{ac00}", "\u{ac01}"]), ("\u{ac00}\u{308}\u{ac01}", &["\u{ac00}\u{308}", "\u{ac01}"]), + ("\u{ac00}\u{1f1e6}", &["\u{ac00}", "\u{1f1e6}"]), ("\u{ac00}\u{308}\u{1f1e6}", + &["\u{ac00}\u{308}", "\u{1f1e6}"]), ("\u{ac00}\u{261d}", &["\u{ac00}", "\u{261d}"]), + ("\u{ac00}\u{308}\u{261d}", &["\u{ac00}\u{308}", "\u{261d}"]), ("\u{ac00}\u{1f3fb}", + &["\u{ac00}", "\u{1f3fb}"]), ("\u{ac00}\u{308}\u{1f3fb}", &["\u{ac00}\u{308}", + "\u{1f3fb}"]), ("\u{ac00}\u{200d}", &["\u{ac00}\u{200d}"]), ("\u{ac00}\u{308}\u{200d}", + &["\u{ac00}\u{308}\u{200d}"]), ("\u{ac00}\u{2764}", &["\u{ac00}", "\u{2764}"]), + ("\u{ac00}\u{308}\u{2764}", &["\u{ac00}\u{308}", "\u{2764}"]), ("\u{ac00}\u{1f466}", + &["\u{ac00}", "\u{1f466}"]), ("\u{ac00}\u{308}\u{1f466}", &["\u{ac00}\u{308}", + "\u{1f466}"]), ("\u{ac00}\u{378}", &["\u{ac00}", "\u{378}"]), ("\u{ac00}\u{308}\u{378}", &["\u{ac00}\u{308}", "\u{378}"]), ("\u{ac01}\u{20}", &["\u{ac01}", "\u{20}"]), ("\u{ac01}\u{308}\u{20}", &["\u{ac01}\u{308}", "\u{20}"]), ("\u{ac01}\u{d}", &["\u{ac01}", "\u{d}"]), ("\u{ac01}\u{308}\u{d}", &["\u{ac01}\u{308}", "\u{d}"]), ("\u{ac01}\u{a}", &["\u{ac01}", "\u{a}"]), ("\u{ac01}\u{308}\u{a}", &["\u{ac01}\u{308}", "\u{a}"]), ("\u{ac01}\u{1}", &["\u{ac01}", "\u{1}"]), ("\u{ac01}\u{308}\u{1}", &["\u{ac01}\u{308}", "\u{1}"]), ("\u{ac01}\u{300}", &["\u{ac01}\u{300}"]), ("\u{ac01}\u{308}\u{300}", - &["\u{ac01}\u{308}\u{300}"]), ("\u{ac01}\u{1100}", &["\u{ac01}", "\u{1100}"]), - ("\u{ac01}\u{308}\u{1100}", &["\u{ac01}\u{308}", "\u{1100}"]), ("\u{ac01}\u{1160}", - &["\u{ac01}", "\u{1160}"]), ("\u{ac01}\u{308}\u{1160}", &["\u{ac01}\u{308}", "\u{1160}"]), - ("\u{ac01}\u{11a8}", &["\u{ac01}\u{11a8}"]), ("\u{ac01}\u{308}\u{11a8}", - &["\u{ac01}\u{308}", "\u{11a8}"]), ("\u{ac01}\u{ac00}", &["\u{ac01}", "\u{ac00}"]), - ("\u{ac01}\u{308}\u{ac00}", &["\u{ac01}\u{308}", "\u{ac00}"]), ("\u{ac01}\u{ac01}", - &["\u{ac01}", "\u{ac01}"]), ("\u{ac01}\u{308}\u{ac01}", &["\u{ac01}\u{308}", "\u{ac01}"]), - ("\u{ac01}\u{1f1e6}", &["\u{ac01}", "\u{1f1e6}"]), ("\u{ac01}\u{308}\u{1f1e6}", - &["\u{ac01}\u{308}", "\u{1f1e6}"]), ("\u{ac01}\u{378}", &["\u{ac01}", "\u{378}"]), + &["\u{ac01}\u{308}\u{300}"]), ("\u{ac01}\u{600}", &["\u{ac01}", "\u{600}"]), + ("\u{ac01}\u{308}\u{600}", &["\u{ac01}\u{308}", "\u{600}"]), ("\u{ac01}\u{1100}", + &["\u{ac01}", "\u{1100}"]), ("\u{ac01}\u{308}\u{1100}", &["\u{ac01}\u{308}", "\u{1100}"]), + ("\u{ac01}\u{1160}", &["\u{ac01}", "\u{1160}"]), ("\u{ac01}\u{308}\u{1160}", + &["\u{ac01}\u{308}", "\u{1160}"]), ("\u{ac01}\u{11a8}", &["\u{ac01}\u{11a8}"]), + ("\u{ac01}\u{308}\u{11a8}", &["\u{ac01}\u{308}", "\u{11a8}"]), ("\u{ac01}\u{ac00}", + &["\u{ac01}", "\u{ac00}"]), ("\u{ac01}\u{308}\u{ac00}", &["\u{ac01}\u{308}", "\u{ac00}"]), + ("\u{ac01}\u{ac01}", &["\u{ac01}", "\u{ac01}"]), ("\u{ac01}\u{308}\u{ac01}", + &["\u{ac01}\u{308}", "\u{ac01}"]), ("\u{ac01}\u{1f1e6}", &["\u{ac01}", "\u{1f1e6}"]), + ("\u{ac01}\u{308}\u{1f1e6}", &["\u{ac01}\u{308}", "\u{1f1e6}"]), ("\u{ac01}\u{261d}", + &["\u{ac01}", "\u{261d}"]), ("\u{ac01}\u{308}\u{261d}", &["\u{ac01}\u{308}", "\u{261d}"]), + ("\u{ac01}\u{1f3fb}", &["\u{ac01}", "\u{1f3fb}"]), ("\u{ac01}\u{308}\u{1f3fb}", + &["\u{ac01}\u{308}", "\u{1f3fb}"]), ("\u{ac01}\u{200d}", &["\u{ac01}\u{200d}"]), + ("\u{ac01}\u{308}\u{200d}", &["\u{ac01}\u{308}\u{200d}"]), ("\u{ac01}\u{2764}", + &["\u{ac01}", "\u{2764}"]), ("\u{ac01}\u{308}\u{2764}", &["\u{ac01}\u{308}", "\u{2764}"]), + ("\u{ac01}\u{1f466}", &["\u{ac01}", "\u{1f466}"]), ("\u{ac01}\u{308}\u{1f466}", + &["\u{ac01}\u{308}", "\u{1f466}"]), ("\u{ac01}\u{378}", &["\u{ac01}", "\u{378}"]), ("\u{ac01}\u{308}\u{378}", &["\u{ac01}\u{308}", "\u{378}"]), ("\u{1f1e6}\u{20}", &["\u{1f1e6}", "\u{20}"]), ("\u{1f1e6}\u{308}\u{20}", &["\u{1f1e6}\u{308}", "\u{20}"]), ("\u{1f1e6}\u{d}", &["\u{1f1e6}", "\u{d}"]), ("\u{1f1e6}\u{308}\u{d}", &["\u{1f1e6}\u{308}", @@ -184,40 +285,184 @@ &["\u{1f1e6}\u{308}", "\u{a}"]), ("\u{1f1e6}\u{1}", &["\u{1f1e6}", "\u{1}"]), ("\u{1f1e6}\u{308}\u{1}", &["\u{1f1e6}\u{308}", "\u{1}"]), ("\u{1f1e6}\u{300}", &["\u{1f1e6}\u{300}"]), ("\u{1f1e6}\u{308}\u{300}", &["\u{1f1e6}\u{308}\u{300}"]), - ("\u{1f1e6}\u{1100}", &["\u{1f1e6}", "\u{1100}"]), ("\u{1f1e6}\u{308}\u{1100}", - &["\u{1f1e6}\u{308}", "\u{1100}"]), ("\u{1f1e6}\u{1160}", &["\u{1f1e6}", "\u{1160}"]), - ("\u{1f1e6}\u{308}\u{1160}", &["\u{1f1e6}\u{308}", "\u{1160}"]), ("\u{1f1e6}\u{11a8}", - &["\u{1f1e6}", "\u{11a8}"]), ("\u{1f1e6}\u{308}\u{11a8}", &["\u{1f1e6}\u{308}", - "\u{11a8}"]), ("\u{1f1e6}\u{ac00}", &["\u{1f1e6}", "\u{ac00}"]), - ("\u{1f1e6}\u{308}\u{ac00}", &["\u{1f1e6}\u{308}", "\u{ac00}"]), ("\u{1f1e6}\u{ac01}", - &["\u{1f1e6}", "\u{ac01}"]), ("\u{1f1e6}\u{308}\u{ac01}", &["\u{1f1e6}\u{308}", - "\u{ac01}"]), ("\u{1f1e6}\u{1f1e6}", &["\u{1f1e6}\u{1f1e6}"]), ("\u{1f1e6}\u{308}\u{1f1e6}", - &["\u{1f1e6}\u{308}", "\u{1f1e6}"]), ("\u{1f1e6}\u{378}", &["\u{1f1e6}", "\u{378}"]), - ("\u{1f1e6}\u{308}\u{378}", &["\u{1f1e6}\u{308}", "\u{378}"]), ("\u{378}\u{20}", - &["\u{378}", "\u{20}"]), ("\u{378}\u{308}\u{20}", &["\u{378}\u{308}", "\u{20}"]), - ("\u{378}\u{d}", &["\u{378}", "\u{d}"]), ("\u{378}\u{308}\u{d}", &["\u{378}\u{308}", - "\u{d}"]), ("\u{378}\u{a}", &["\u{378}", "\u{a}"]), ("\u{378}\u{308}\u{a}", - &["\u{378}\u{308}", "\u{a}"]), ("\u{378}\u{1}", &["\u{378}", "\u{1}"]), - ("\u{378}\u{308}\u{1}", &["\u{378}\u{308}", "\u{1}"]), ("\u{378}\u{300}", - &["\u{378}\u{300}"]), ("\u{378}\u{308}\u{300}", &["\u{378}\u{308}\u{300}"]), - ("\u{378}\u{1100}", &["\u{378}", "\u{1100}"]), ("\u{378}\u{308}\u{1100}", - &["\u{378}\u{308}", "\u{1100}"]), ("\u{378}\u{1160}", &["\u{378}", "\u{1160}"]), - ("\u{378}\u{308}\u{1160}", &["\u{378}\u{308}", "\u{1160}"]), ("\u{378}\u{11a8}", - &["\u{378}", "\u{11a8}"]), ("\u{378}\u{308}\u{11a8}", &["\u{378}\u{308}", "\u{11a8}"]), - ("\u{378}\u{ac00}", &["\u{378}", "\u{ac00}"]), ("\u{378}\u{308}\u{ac00}", - &["\u{378}\u{308}", "\u{ac00}"]), ("\u{378}\u{ac01}", &["\u{378}", "\u{ac01}"]), - ("\u{378}\u{308}\u{ac01}", &["\u{378}\u{308}", "\u{ac01}"]), ("\u{378}\u{1f1e6}", - &["\u{378}", "\u{1f1e6}"]), ("\u{378}\u{308}\u{1f1e6}", &["\u{378}\u{308}", "\u{1f1e6}"]), - ("\u{378}\u{378}", &["\u{378}", "\u{378}"]), ("\u{378}\u{308}\u{378}", &["\u{378}\u{308}", - "\u{378}"]), ("\u{61}\u{1f1e6}\u{62}", &["\u{61}", "\u{1f1e6}", "\u{62}"]), - ("\u{1f1f7}\u{1f1fa}", &["\u{1f1f7}\u{1f1fa}"]), ("\u{1f1f7}\u{1f1fa}\u{1f1f8}", - &["\u{1f1f7}\u{1f1fa}\u{1f1f8}"]), ("\u{1f1f7}\u{1f1fa}\u{1f1f8}\u{1f1ea}", - &["\u{1f1f7}\u{1f1fa}\u{1f1f8}\u{1f1ea}"]), ("\u{1f1f7}\u{1f1fa}\u{200b}\u{1f1f8}\u{1f1ea}", - &["\u{1f1f7}\u{1f1fa}", "\u{200b}", "\u{1f1f8}\u{1f1ea}"]), ("\u{1f1e6}\u{1f1e7}\u{1f1e8}", - &["\u{1f1e6}\u{1f1e7}\u{1f1e8}"]), ("\u{1f1e6}\u{200d}\u{1f1e7}\u{1f1e8}", - &["\u{1f1e6}\u{200d}", "\u{1f1e7}\u{1f1e8}"]), ("\u{1f1e6}\u{1f1e7}\u{200d}\u{1f1e8}", - &["\u{1f1e6}\u{1f1e7}\u{200d}", "\u{1f1e8}"]), ("\u{20}\u{200d}\u{646}", &["\u{20}\u{200d}", - "\u{646}"]), ("\u{646}\u{200d}\u{20}", &["\u{646}\u{200d}", "\u{20}"]) + ("\u{1f1e6}\u{600}", &["\u{1f1e6}", "\u{600}"]), ("\u{1f1e6}\u{308}\u{600}", + &["\u{1f1e6}\u{308}", "\u{600}"]), ("\u{1f1e6}\u{1100}", &["\u{1f1e6}", "\u{1100}"]), + ("\u{1f1e6}\u{308}\u{1100}", &["\u{1f1e6}\u{308}", "\u{1100}"]), ("\u{1f1e6}\u{1160}", + &["\u{1f1e6}", "\u{1160}"]), ("\u{1f1e6}\u{308}\u{1160}", &["\u{1f1e6}\u{308}", + "\u{1160}"]), ("\u{1f1e6}\u{11a8}", &["\u{1f1e6}", "\u{11a8}"]), + ("\u{1f1e6}\u{308}\u{11a8}", &["\u{1f1e6}\u{308}", "\u{11a8}"]), ("\u{1f1e6}\u{ac00}", + &["\u{1f1e6}", "\u{ac00}"]), ("\u{1f1e6}\u{308}\u{ac00}", &["\u{1f1e6}\u{308}", + "\u{ac00}"]), ("\u{1f1e6}\u{ac01}", &["\u{1f1e6}", "\u{ac01}"]), + ("\u{1f1e6}\u{308}\u{ac01}", &["\u{1f1e6}\u{308}", "\u{ac01}"]), ("\u{1f1e6}\u{1f1e6}", + &["\u{1f1e6}\u{1f1e6}"]), ("\u{1f1e6}\u{308}\u{1f1e6}", &["\u{1f1e6}\u{308}", "\u{1f1e6}"]), + ("\u{1f1e6}\u{261d}", &["\u{1f1e6}", "\u{261d}"]), ("\u{1f1e6}\u{308}\u{261d}", + &["\u{1f1e6}\u{308}", "\u{261d}"]), ("\u{1f1e6}\u{1f3fb}", &["\u{1f1e6}", "\u{1f3fb}"]), + ("\u{1f1e6}\u{308}\u{1f3fb}", &["\u{1f1e6}\u{308}", "\u{1f3fb}"]), ("\u{1f1e6}\u{200d}", + &["\u{1f1e6}\u{200d}"]), ("\u{1f1e6}\u{308}\u{200d}", &["\u{1f1e6}\u{308}\u{200d}"]), + ("\u{1f1e6}\u{2764}", &["\u{1f1e6}", "\u{2764}"]), ("\u{1f1e6}\u{308}\u{2764}", + &["\u{1f1e6}\u{308}", "\u{2764}"]), ("\u{1f1e6}\u{1f466}", &["\u{1f1e6}", "\u{1f466}"]), + ("\u{1f1e6}\u{308}\u{1f466}", &["\u{1f1e6}\u{308}", "\u{1f466}"]), ("\u{1f1e6}\u{378}", + &["\u{1f1e6}", "\u{378}"]), ("\u{1f1e6}\u{308}\u{378}", &["\u{1f1e6}\u{308}", "\u{378}"]), + ("\u{261d}\u{20}", &["\u{261d}", "\u{20}"]), ("\u{261d}\u{308}\u{20}", &["\u{261d}\u{308}", + "\u{20}"]), ("\u{261d}\u{d}", &["\u{261d}", "\u{d}"]), ("\u{261d}\u{308}\u{d}", + &["\u{261d}\u{308}", "\u{d}"]), ("\u{261d}\u{a}", &["\u{261d}", "\u{a}"]), + ("\u{261d}\u{308}\u{a}", &["\u{261d}\u{308}", "\u{a}"]), ("\u{261d}\u{1}", &["\u{261d}", + "\u{1}"]), ("\u{261d}\u{308}\u{1}", &["\u{261d}\u{308}", "\u{1}"]), ("\u{261d}\u{300}", + &["\u{261d}\u{300}"]), ("\u{261d}\u{308}\u{300}", &["\u{261d}\u{308}\u{300}"]), + ("\u{261d}\u{600}", &["\u{261d}", "\u{600}"]), ("\u{261d}\u{308}\u{600}", + &["\u{261d}\u{308}", "\u{600}"]), ("\u{261d}\u{1100}", &["\u{261d}", "\u{1100}"]), + ("\u{261d}\u{308}\u{1100}", &["\u{261d}\u{308}", "\u{1100}"]), ("\u{261d}\u{1160}", + &["\u{261d}", "\u{1160}"]), ("\u{261d}\u{308}\u{1160}", &["\u{261d}\u{308}", "\u{1160}"]), + ("\u{261d}\u{11a8}", &["\u{261d}", "\u{11a8}"]), ("\u{261d}\u{308}\u{11a8}", + &["\u{261d}\u{308}", "\u{11a8}"]), ("\u{261d}\u{ac00}", &["\u{261d}", "\u{ac00}"]), + ("\u{261d}\u{308}\u{ac00}", &["\u{261d}\u{308}", "\u{ac00}"]), ("\u{261d}\u{ac01}", + &["\u{261d}", "\u{ac01}"]), ("\u{261d}\u{308}\u{ac01}", &["\u{261d}\u{308}", "\u{ac01}"]), + ("\u{261d}\u{1f1e6}", &["\u{261d}", "\u{1f1e6}"]), ("\u{261d}\u{308}\u{1f1e6}", + &["\u{261d}\u{308}", "\u{1f1e6}"]), ("\u{261d}\u{261d}", &["\u{261d}", "\u{261d}"]), + ("\u{261d}\u{308}\u{261d}", &["\u{261d}\u{308}", "\u{261d}"]), ("\u{261d}\u{1f3fb}", + &["\u{261d}\u{1f3fb}"]), ("\u{261d}\u{308}\u{1f3fb}", &["\u{261d}\u{308}\u{1f3fb}"]), + ("\u{261d}\u{200d}", &["\u{261d}\u{200d}"]), ("\u{261d}\u{308}\u{200d}", + &["\u{261d}\u{308}\u{200d}"]), ("\u{261d}\u{2764}", &["\u{261d}", "\u{2764}"]), + ("\u{261d}\u{308}\u{2764}", &["\u{261d}\u{308}", "\u{2764}"]), ("\u{261d}\u{1f466}", + &["\u{261d}", "\u{1f466}"]), ("\u{261d}\u{308}\u{1f466}", &["\u{261d}\u{308}", + "\u{1f466}"]), ("\u{261d}\u{378}", &["\u{261d}", "\u{378}"]), ("\u{261d}\u{308}\u{378}", + &["\u{261d}\u{308}", "\u{378}"]), ("\u{1f3fb}\u{20}", &["\u{1f3fb}", "\u{20}"]), + ("\u{1f3fb}\u{308}\u{20}", &["\u{1f3fb}\u{308}", "\u{20}"]), ("\u{1f3fb}\u{d}", + &["\u{1f3fb}", "\u{d}"]), ("\u{1f3fb}\u{308}\u{d}", &["\u{1f3fb}\u{308}", "\u{d}"]), + ("\u{1f3fb}\u{a}", &["\u{1f3fb}", "\u{a}"]), ("\u{1f3fb}\u{308}\u{a}", &["\u{1f3fb}\u{308}", + "\u{a}"]), ("\u{1f3fb}\u{1}", &["\u{1f3fb}", "\u{1}"]), ("\u{1f3fb}\u{308}\u{1}", + &["\u{1f3fb}\u{308}", "\u{1}"]), ("\u{1f3fb}\u{300}", &["\u{1f3fb}\u{300}"]), + ("\u{1f3fb}\u{308}\u{300}", &["\u{1f3fb}\u{308}\u{300}"]), ("\u{1f3fb}\u{600}", + &["\u{1f3fb}", "\u{600}"]), ("\u{1f3fb}\u{308}\u{600}", &["\u{1f3fb}\u{308}", "\u{600}"]), + ("\u{1f3fb}\u{1100}", &["\u{1f3fb}", "\u{1100}"]), ("\u{1f3fb}\u{308}\u{1100}", + &["\u{1f3fb}\u{308}", "\u{1100}"]), ("\u{1f3fb}\u{1160}", &["\u{1f3fb}", "\u{1160}"]), + ("\u{1f3fb}\u{308}\u{1160}", &["\u{1f3fb}\u{308}", "\u{1160}"]), ("\u{1f3fb}\u{11a8}", + &["\u{1f3fb}", "\u{11a8}"]), ("\u{1f3fb}\u{308}\u{11a8}", &["\u{1f3fb}\u{308}", + "\u{11a8}"]), ("\u{1f3fb}\u{ac00}", &["\u{1f3fb}", "\u{ac00}"]), + ("\u{1f3fb}\u{308}\u{ac00}", &["\u{1f3fb}\u{308}", "\u{ac00}"]), ("\u{1f3fb}\u{ac01}", + &["\u{1f3fb}", "\u{ac01}"]), ("\u{1f3fb}\u{308}\u{ac01}", &["\u{1f3fb}\u{308}", + "\u{ac01}"]), ("\u{1f3fb}\u{1f1e6}", &["\u{1f3fb}", "\u{1f1e6}"]), + ("\u{1f3fb}\u{308}\u{1f1e6}", &["\u{1f3fb}\u{308}", "\u{1f1e6}"]), ("\u{1f3fb}\u{261d}", + &["\u{1f3fb}", "\u{261d}"]), ("\u{1f3fb}\u{308}\u{261d}", &["\u{1f3fb}\u{308}", + "\u{261d}"]), ("\u{1f3fb}\u{1f3fb}", &["\u{1f3fb}", "\u{1f3fb}"]), + ("\u{1f3fb}\u{308}\u{1f3fb}", &["\u{1f3fb}\u{308}", "\u{1f3fb}"]), ("\u{1f3fb}\u{200d}", + &["\u{1f3fb}\u{200d}"]), ("\u{1f3fb}\u{308}\u{200d}", &["\u{1f3fb}\u{308}\u{200d}"]), + ("\u{1f3fb}\u{2764}", &["\u{1f3fb}", "\u{2764}"]), ("\u{1f3fb}\u{308}\u{2764}", + &["\u{1f3fb}\u{308}", "\u{2764}"]), ("\u{1f3fb}\u{1f466}", &["\u{1f3fb}", "\u{1f466}"]), + ("\u{1f3fb}\u{308}\u{1f466}", &["\u{1f3fb}\u{308}", "\u{1f466}"]), ("\u{1f3fb}\u{378}", + &["\u{1f3fb}", "\u{378}"]), ("\u{1f3fb}\u{308}\u{378}", &["\u{1f3fb}\u{308}", "\u{378}"]), + ("\u{200d}\u{20}", &["\u{200d}", "\u{20}"]), ("\u{200d}\u{308}\u{20}", &["\u{200d}\u{308}", + "\u{20}"]), ("\u{200d}\u{d}", &["\u{200d}", "\u{d}"]), ("\u{200d}\u{308}\u{d}", + &["\u{200d}\u{308}", "\u{d}"]), ("\u{200d}\u{a}", &["\u{200d}", "\u{a}"]), + ("\u{200d}\u{308}\u{a}", &["\u{200d}\u{308}", "\u{a}"]), ("\u{200d}\u{1}", &["\u{200d}", + "\u{1}"]), ("\u{200d}\u{308}\u{1}", &["\u{200d}\u{308}", "\u{1}"]), ("\u{200d}\u{300}", + &["\u{200d}\u{300}"]), ("\u{200d}\u{308}\u{300}", &["\u{200d}\u{308}\u{300}"]), + ("\u{200d}\u{600}", &["\u{200d}", "\u{600}"]), ("\u{200d}\u{308}\u{600}", + &["\u{200d}\u{308}", "\u{600}"]), ("\u{200d}\u{1100}", &["\u{200d}", "\u{1100}"]), + ("\u{200d}\u{308}\u{1100}", &["\u{200d}\u{308}", "\u{1100}"]), ("\u{200d}\u{1160}", + &["\u{200d}", "\u{1160}"]), ("\u{200d}\u{308}\u{1160}", &["\u{200d}\u{308}", "\u{1160}"]), + ("\u{200d}\u{11a8}", &["\u{200d}", "\u{11a8}"]), ("\u{200d}\u{308}\u{11a8}", + &["\u{200d}\u{308}", "\u{11a8}"]), ("\u{200d}\u{ac00}", &["\u{200d}", "\u{ac00}"]), + ("\u{200d}\u{308}\u{ac00}", &["\u{200d}\u{308}", "\u{ac00}"]), ("\u{200d}\u{ac01}", + &["\u{200d}", "\u{ac01}"]), ("\u{200d}\u{308}\u{ac01}", &["\u{200d}\u{308}", "\u{ac01}"]), + ("\u{200d}\u{1f1e6}", &["\u{200d}", "\u{1f1e6}"]), ("\u{200d}\u{308}\u{1f1e6}", + &["\u{200d}\u{308}", "\u{1f1e6}"]), ("\u{200d}\u{261d}", &["\u{200d}", "\u{261d}"]), + ("\u{200d}\u{308}\u{261d}", &["\u{200d}\u{308}", "\u{261d}"]), ("\u{200d}\u{1f3fb}", + &["\u{200d}", "\u{1f3fb}"]), ("\u{200d}\u{308}\u{1f3fb}", &["\u{200d}\u{308}", + "\u{1f3fb}"]), ("\u{200d}\u{200d}", &["\u{200d}\u{200d}"]), ("\u{200d}\u{308}\u{200d}", + &["\u{200d}\u{308}\u{200d}"]), ("\u{200d}\u{2764}", &["\u{200d}\u{2764}"]), + ("\u{200d}\u{308}\u{2764}", &["\u{200d}\u{308}", "\u{2764}"]), ("\u{200d}\u{1f466}", + &["\u{200d}\u{1f466}"]), ("\u{200d}\u{308}\u{1f466}", &["\u{200d}\u{308}", "\u{1f466}"]), + ("\u{200d}\u{378}", &["\u{200d}", "\u{378}"]), ("\u{200d}\u{308}\u{378}", + &["\u{200d}\u{308}", "\u{378}"]), ("\u{2764}\u{20}", &["\u{2764}", "\u{20}"]), + ("\u{2764}\u{308}\u{20}", &["\u{2764}\u{308}", "\u{20}"]), ("\u{2764}\u{d}", &["\u{2764}", + "\u{d}"]), ("\u{2764}\u{308}\u{d}", &["\u{2764}\u{308}", "\u{d}"]), ("\u{2764}\u{a}", + &["\u{2764}", "\u{a}"]), ("\u{2764}\u{308}\u{a}", &["\u{2764}\u{308}", "\u{a}"]), + ("\u{2764}\u{1}", &["\u{2764}", "\u{1}"]), ("\u{2764}\u{308}\u{1}", &["\u{2764}\u{308}", + "\u{1}"]), ("\u{2764}\u{300}", &["\u{2764}\u{300}"]), ("\u{2764}\u{308}\u{300}", + &["\u{2764}\u{308}\u{300}"]), ("\u{2764}\u{600}", &["\u{2764}", "\u{600}"]), + ("\u{2764}\u{308}\u{600}", &["\u{2764}\u{308}", "\u{600}"]), ("\u{2764}\u{1100}", + &["\u{2764}", "\u{1100}"]), ("\u{2764}\u{308}\u{1100}", &["\u{2764}\u{308}", "\u{1100}"]), + ("\u{2764}\u{1160}", &["\u{2764}", "\u{1160}"]), ("\u{2764}\u{308}\u{1160}", + &["\u{2764}\u{308}", "\u{1160}"]), ("\u{2764}\u{11a8}", &["\u{2764}", "\u{11a8}"]), + ("\u{2764}\u{308}\u{11a8}", &["\u{2764}\u{308}", "\u{11a8}"]), ("\u{2764}\u{ac00}", + &["\u{2764}", "\u{ac00}"]), ("\u{2764}\u{308}\u{ac00}", &["\u{2764}\u{308}", "\u{ac00}"]), + ("\u{2764}\u{ac01}", &["\u{2764}", "\u{ac01}"]), ("\u{2764}\u{308}\u{ac01}", + &["\u{2764}\u{308}", "\u{ac01}"]), ("\u{2764}\u{1f1e6}", &["\u{2764}", "\u{1f1e6}"]), + ("\u{2764}\u{308}\u{1f1e6}", &["\u{2764}\u{308}", "\u{1f1e6}"]), ("\u{2764}\u{261d}", + &["\u{2764}", "\u{261d}"]), ("\u{2764}\u{308}\u{261d}", &["\u{2764}\u{308}", "\u{261d}"]), + ("\u{2764}\u{1f3fb}", &["\u{2764}", "\u{1f3fb}"]), ("\u{2764}\u{308}\u{1f3fb}", + &["\u{2764}\u{308}", "\u{1f3fb}"]), ("\u{2764}\u{200d}", &["\u{2764}\u{200d}"]), + ("\u{2764}\u{308}\u{200d}", &["\u{2764}\u{308}\u{200d}"]), ("\u{2764}\u{2764}", + &["\u{2764}", "\u{2764}"]), ("\u{2764}\u{308}\u{2764}", &["\u{2764}\u{308}", "\u{2764}"]), + ("\u{2764}\u{1f466}", &["\u{2764}", "\u{1f466}"]), ("\u{2764}\u{308}\u{1f466}", + &["\u{2764}\u{308}", "\u{1f466}"]), ("\u{2764}\u{378}", &["\u{2764}", "\u{378}"]), + ("\u{2764}\u{308}\u{378}", &["\u{2764}\u{308}", "\u{378}"]), ("\u{1f466}\u{20}", + &["\u{1f466}", "\u{20}"]), ("\u{1f466}\u{308}\u{20}", &["\u{1f466}\u{308}", "\u{20}"]), + ("\u{1f466}\u{d}", &["\u{1f466}", "\u{d}"]), ("\u{1f466}\u{308}\u{d}", &["\u{1f466}\u{308}", + "\u{d}"]), ("\u{1f466}\u{a}", &["\u{1f466}", "\u{a}"]), ("\u{1f466}\u{308}\u{a}", + &["\u{1f466}\u{308}", "\u{a}"]), ("\u{1f466}\u{1}", &["\u{1f466}", "\u{1}"]), + ("\u{1f466}\u{308}\u{1}", &["\u{1f466}\u{308}", "\u{1}"]), ("\u{1f466}\u{300}", + &["\u{1f466}\u{300}"]), ("\u{1f466}\u{308}\u{300}", &["\u{1f466}\u{308}\u{300}"]), + ("\u{1f466}\u{600}", &["\u{1f466}", "\u{600}"]), ("\u{1f466}\u{308}\u{600}", + &["\u{1f466}\u{308}", "\u{600}"]), ("\u{1f466}\u{1100}", &["\u{1f466}", "\u{1100}"]), + ("\u{1f466}\u{308}\u{1100}", &["\u{1f466}\u{308}", "\u{1100}"]), ("\u{1f466}\u{1160}", + &["\u{1f466}", "\u{1160}"]), ("\u{1f466}\u{308}\u{1160}", &["\u{1f466}\u{308}", + "\u{1160}"]), ("\u{1f466}\u{11a8}", &["\u{1f466}", "\u{11a8}"]), + ("\u{1f466}\u{308}\u{11a8}", &["\u{1f466}\u{308}", "\u{11a8}"]), ("\u{1f466}\u{ac00}", + &["\u{1f466}", "\u{ac00}"]), ("\u{1f466}\u{308}\u{ac00}", &["\u{1f466}\u{308}", + "\u{ac00}"]), ("\u{1f466}\u{ac01}", &["\u{1f466}", "\u{ac01}"]), + ("\u{1f466}\u{308}\u{ac01}", &["\u{1f466}\u{308}", "\u{ac01}"]), ("\u{1f466}\u{1f1e6}", + &["\u{1f466}", "\u{1f1e6}"]), ("\u{1f466}\u{308}\u{1f1e6}", &["\u{1f466}\u{308}", + "\u{1f1e6}"]), ("\u{1f466}\u{261d}", &["\u{1f466}", "\u{261d}"]), + ("\u{1f466}\u{308}\u{261d}", &["\u{1f466}\u{308}", "\u{261d}"]), ("\u{1f466}\u{1f3fb}", + &["\u{1f466}\u{1f3fb}"]), ("\u{1f466}\u{308}\u{1f3fb}", &["\u{1f466}\u{308}\u{1f3fb}"]), + ("\u{1f466}\u{200d}", &["\u{1f466}\u{200d}"]), ("\u{1f466}\u{308}\u{200d}", + &["\u{1f466}\u{308}\u{200d}"]), ("\u{1f466}\u{2764}", &["\u{1f466}", "\u{2764}"]), + ("\u{1f466}\u{308}\u{2764}", &["\u{1f466}\u{308}", "\u{2764}"]), ("\u{1f466}\u{1f466}", + &["\u{1f466}", "\u{1f466}"]), ("\u{1f466}\u{308}\u{1f466}", &["\u{1f466}\u{308}", + "\u{1f466}"]), ("\u{1f466}\u{378}", &["\u{1f466}", "\u{378}"]), ("\u{1f466}\u{308}\u{378}", + &["\u{1f466}\u{308}", "\u{378}"]), ("\u{378}\u{20}", &["\u{378}", "\u{20}"]), + ("\u{378}\u{308}\u{20}", &["\u{378}\u{308}", "\u{20}"]), ("\u{378}\u{d}", &["\u{378}", + "\u{d}"]), ("\u{378}\u{308}\u{d}", &["\u{378}\u{308}", "\u{d}"]), ("\u{378}\u{a}", + &["\u{378}", "\u{a}"]), ("\u{378}\u{308}\u{a}", &["\u{378}\u{308}", "\u{a}"]), + ("\u{378}\u{1}", &["\u{378}", "\u{1}"]), ("\u{378}\u{308}\u{1}", &["\u{378}\u{308}", + "\u{1}"]), ("\u{378}\u{300}", &["\u{378}\u{300}"]), ("\u{378}\u{308}\u{300}", + &["\u{378}\u{308}\u{300}"]), ("\u{378}\u{600}", &["\u{378}", "\u{600}"]), + ("\u{378}\u{308}\u{600}", &["\u{378}\u{308}", "\u{600}"]), ("\u{378}\u{1100}", &["\u{378}", + "\u{1100}"]), ("\u{378}\u{308}\u{1100}", &["\u{378}\u{308}", "\u{1100}"]), + ("\u{378}\u{1160}", &["\u{378}", "\u{1160}"]), ("\u{378}\u{308}\u{1160}", + &["\u{378}\u{308}", "\u{1160}"]), ("\u{378}\u{11a8}", &["\u{378}", "\u{11a8}"]), + ("\u{378}\u{308}\u{11a8}", &["\u{378}\u{308}", "\u{11a8}"]), ("\u{378}\u{ac00}", + &["\u{378}", "\u{ac00}"]), ("\u{378}\u{308}\u{ac00}", &["\u{378}\u{308}", "\u{ac00}"]), + ("\u{378}\u{ac01}", &["\u{378}", "\u{ac01}"]), ("\u{378}\u{308}\u{ac01}", + &["\u{378}\u{308}", "\u{ac01}"]), ("\u{378}\u{1f1e6}", &["\u{378}", "\u{1f1e6}"]), + ("\u{378}\u{308}\u{1f1e6}", &["\u{378}\u{308}", "\u{1f1e6}"]), ("\u{378}\u{261d}", + &["\u{378}", "\u{261d}"]), ("\u{378}\u{308}\u{261d}", &["\u{378}\u{308}", "\u{261d}"]), + ("\u{378}\u{1f3fb}", &["\u{378}", "\u{1f3fb}"]), ("\u{378}\u{308}\u{1f3fb}", + &["\u{378}\u{308}", "\u{1f3fb}"]), ("\u{378}\u{200d}", &["\u{378}\u{200d}"]), + ("\u{378}\u{308}\u{200d}", &["\u{378}\u{308}\u{200d}"]), ("\u{378}\u{2764}", &["\u{378}", + "\u{2764}"]), ("\u{378}\u{308}\u{2764}", &["\u{378}\u{308}", "\u{2764}"]), + ("\u{378}\u{1f466}", &["\u{378}", "\u{1f466}"]), ("\u{378}\u{308}\u{1f466}", + &["\u{378}\u{308}", "\u{1f466}"]), ("\u{378}\u{378}", &["\u{378}", "\u{378}"]), + ("\u{378}\u{308}\u{378}", &["\u{378}\u{308}", "\u{378}"]), ("\u{d}\u{a}\u{61}\u{a}\u{308}", + &["\u{d}\u{a}", "\u{61}", "\u{a}", "\u{308}"]), ("\u{61}\u{308}", &["\u{61}\u{308}"]), + ("\u{20}\u{200d}\u{646}", &["\u{20}\u{200d}", "\u{646}"]), ("\u{646}\u{200d}\u{20}", + &["\u{646}\u{200d}", "\u{20}"]), ("\u{1100}\u{1100}", &["\u{1100}\u{1100}"]), + ("\u{ac00}\u{11a8}\u{1100}", &["\u{ac00}\u{11a8}", "\u{1100}"]), + ("\u{ac01}\u{11a8}\u{1100}", &["\u{ac01}\u{11a8}", "\u{1100}"]), + ("\u{1f1e6}\u{1f1e7}\u{1f1e8}\u{62}", &["\u{1f1e6}\u{1f1e7}", "\u{1f1e8}", "\u{62}"]), + ("\u{61}\u{1f1e6}\u{1f1e7}\u{1f1e8}\u{62}", &["\u{61}", "\u{1f1e6}\u{1f1e7}", "\u{1f1e8}", + "\u{62}"]), ("\u{61}\u{1f1e6}\u{1f1e7}\u{200d}\u{1f1e8}\u{62}", &["\u{61}", + "\u{1f1e6}\u{1f1e7}\u{200d}", "\u{1f1e8}", "\u{62}"]), + ("\u{61}\u{1f1e6}\u{200d}\u{1f1e7}\u{1f1e8}\u{62}", &["\u{61}", "\u{1f1e6}\u{200d}", + "\u{1f1e7}\u{1f1e8}", "\u{62}"]), ("\u{61}\u{1f1e6}\u{1f1e7}\u{1f1e8}\u{1f1e9}\u{62}", + &["\u{61}", "\u{1f1e6}\u{1f1e7}", "\u{1f1e8}\u{1f1e9}", "\u{62}"]), ("\u{61}\u{200d}", + &["\u{61}\u{200d}"]), ("\u{61}\u{308}\u{62}", &["\u{61}\u{308}", "\u{62}"]), + ("\u{261d}\u{1f3fb}\u{261d}", &["\u{261d}\u{1f3fb}", "\u{261d}"]), ("\u{1f466}\u{1f3fb}", + &["\u{1f466}\u{1f3fb}"]), ("\u{200d}\u{1f466}\u{1f3fb}", &["\u{200d}\u{1f466}\u{1f3fb}"]), + ("\u{200d}\u{2764}", &["\u{200d}\u{2764}"]), ("\u{200d}\u{1f466}", &["\u{200d}\u{1f466}"]), + ("\u{1f466}\u{1f466}", &["\u{1f466}", "\u{1f466}"]) ]; pub const TEST_DIFF: &'static [(&'static str, &'static [&'static str], &'static [&'static str])] = &[ @@ -227,7 +472,19 @@ &["\u{a}", "\u{308}\u{903}"], &["\u{a}", "\u{308}", "\u{903}"]), ("\u{1}\u{308}\u{903}", &["\u{1}", "\u{308}\u{903}"], &["\u{1}", "\u{308}", "\u{903}"]), ("\u{300}\u{903}", &["\u{300}\u{903}"], &["\u{300}", "\u{903}"]), ("\u{300}\u{308}\u{903}", - &["\u{300}\u{308}\u{903}"], &["\u{300}\u{308}", "\u{903}"]), ("\u{903}\u{903}", + &["\u{300}\u{308}\u{903}"], &["\u{300}\u{308}", "\u{903}"]), ("\u{600}\u{20}", + &["\u{600}\u{20}"], &["\u{600}", "\u{20}"]), ("\u{600}\u{600}", &["\u{600}\u{600}"], + &["\u{600}", "\u{600}"]), ("\u{600}\u{903}", &["\u{600}\u{903}"], &["\u{600}", "\u{903}"]), + ("\u{600}\u{308}\u{903}", &["\u{600}\u{308}\u{903}"], &["\u{600}\u{308}", "\u{903}"]), + ("\u{600}\u{1100}", &["\u{600}\u{1100}"], &["\u{600}", "\u{1100}"]), ("\u{600}\u{1160}", + &["\u{600}\u{1160}"], &["\u{600}", "\u{1160}"]), ("\u{600}\u{11a8}", &["\u{600}\u{11a8}"], + &["\u{600}", "\u{11a8}"]), ("\u{600}\u{ac00}", &["\u{600}\u{ac00}"], &["\u{600}", + "\u{ac00}"]), ("\u{600}\u{ac01}", &["\u{600}\u{ac01}"], &["\u{600}", "\u{ac01}"]), + ("\u{600}\u{1f1e6}", &["\u{600}\u{1f1e6}"], &["\u{600}", "\u{1f1e6}"]), ("\u{600}\u{261d}", + &["\u{600}\u{261d}"], &["\u{600}", "\u{261d}"]), ("\u{600}\u{1f3fb}", &["\u{600}\u{1f3fb}"], + &["\u{600}", "\u{1f3fb}"]), ("\u{600}\u{2764}", &["\u{600}\u{2764}"], &["\u{600}", + "\u{2764}"]), ("\u{600}\u{1f466}", &["\u{600}\u{1f466}"], &["\u{600}", "\u{1f466}"]), + ("\u{600}\u{378}", &["\u{600}\u{378}"], &["\u{600}", "\u{378}"]), ("\u{903}\u{903}", &["\u{903}\u{903}"], &["\u{903}", "\u{903}"]), ("\u{903}\u{308}\u{903}", &["\u{903}\u{308}\u{903}"], &["\u{903}\u{308}", "\u{903}"]), ("\u{1100}\u{903}", &["\u{1100}\u{903}"], &["\u{1100}", "\u{903}"]), ("\u{1100}\u{308}\u{903}", @@ -241,9 +498,21 @@ &["\u{ac01}\u{903}"], &["\u{ac01}", "\u{903}"]), ("\u{ac01}\u{308}\u{903}", &["\u{ac01}\u{308}\u{903}"], &["\u{ac01}\u{308}", "\u{903}"]), ("\u{1f1e6}\u{903}", &["\u{1f1e6}\u{903}"], &["\u{1f1e6}", "\u{903}"]), ("\u{1f1e6}\u{308}\u{903}", - &["\u{1f1e6}\u{308}\u{903}"], &["\u{1f1e6}\u{308}", "\u{903}"]), ("\u{378}\u{903}", + &["\u{1f1e6}\u{308}\u{903}"], &["\u{1f1e6}\u{308}", "\u{903}"]), ("\u{261d}\u{903}", + &["\u{261d}\u{903}"], &["\u{261d}", "\u{903}"]), ("\u{261d}\u{308}\u{903}", + &["\u{261d}\u{308}\u{903}"], &["\u{261d}\u{308}", "\u{903}"]), ("\u{1f3fb}\u{903}", + &["\u{1f3fb}\u{903}"], &["\u{1f3fb}", "\u{903}"]), ("\u{1f3fb}\u{308}\u{903}", + &["\u{1f3fb}\u{308}\u{903}"], &["\u{1f3fb}\u{308}", "\u{903}"]), ("\u{200d}\u{903}", + &["\u{200d}\u{903}"], &["\u{200d}", "\u{903}"]), ("\u{200d}\u{308}\u{903}", + &["\u{200d}\u{308}\u{903}"], &["\u{200d}\u{308}", "\u{903}"]), ("\u{2764}\u{903}", + &["\u{2764}\u{903}"], &["\u{2764}", "\u{903}"]), ("\u{2764}\u{308}\u{903}", + &["\u{2764}\u{308}\u{903}"], &["\u{2764}\u{308}", "\u{903}"]), ("\u{1f466}\u{903}", + &["\u{1f466}\u{903}"], &["\u{1f466}", "\u{903}"]), ("\u{1f466}\u{308}\u{903}", + &["\u{1f466}\u{308}\u{903}"], &["\u{1f466}\u{308}", "\u{903}"]), ("\u{378}\u{903}", &["\u{378}\u{903}"], &["\u{378}", "\u{903}"]), ("\u{378}\u{308}\u{903}", - &["\u{378}\u{308}\u{903}"], &["\u{378}\u{308}", "\u{903}"]) + &["\u{378}\u{308}\u{903}"], &["\u{378}\u{308}", "\u{903}"]), ("\u{61}\u{903}\u{62}", + &["\u{61}\u{903}", "\u{62}"], &["\u{61}", "\u{903}", "\u{62}"]), ("\u{61}\u{600}\u{62}", + &["\u{61}", "\u{600}\u{62}"], &["\u{61}", "\u{600}", "\u{62}"]) ]; // official Unicode test data @@ -264,9 +533,15 @@ ("\u{1}\u{308}\u{1f1e6}", &["\u{1}\u{308}", "\u{1f1e6}"]), ("\u{1}\u{5d0}", &["\u{1}", "\u{5d0}"]), ("\u{1}\u{308}\u{5d0}", &["\u{1}\u{308}", "\u{5d0}"]), ("\u{1}\u{22}", &["\u{1}", "\u{22}"]), ("\u{1}\u{308}\u{22}", &["\u{1}\u{308}", "\u{22}"]), ("\u{1}\u{27}", - &["\u{1}", "\u{27}"]), ("\u{1}\u{308}\u{27}", &["\u{1}\u{308}", "\u{27}"]), ("\u{1}\u{ad}", + &["\u{1}", "\u{27}"]), ("\u{1}\u{308}\u{27}", &["\u{1}\u{308}", "\u{27}"]), + ("\u{1}\u{261d}", &["\u{1}", "\u{261d}"]), ("\u{1}\u{308}\u{261d}", &["\u{1}\u{308}", + "\u{261d}"]), ("\u{1}\u{1f3fb}", &["\u{1}", "\u{1f3fb}"]), ("\u{1}\u{308}\u{1f3fb}", + &["\u{1}\u{308}", "\u{1f3fb}"]), ("\u{1}\u{2764}", &["\u{1}", "\u{2764}"]), + ("\u{1}\u{308}\u{2764}", &["\u{1}\u{308}", "\u{2764}"]), ("\u{1}\u{1f466}", &["\u{1}", + "\u{1f466}"]), ("\u{1}\u{308}\u{1f466}", &["\u{1}\u{308}", "\u{1f466}"]), ("\u{1}\u{ad}", &["\u{1}\u{ad}"]), ("\u{1}\u{308}\u{ad}", &["\u{1}\u{308}\u{ad}"]), ("\u{1}\u{300}", - &["\u{1}\u{300}"]), ("\u{1}\u{308}\u{300}", &["\u{1}\u{308}\u{300}"]), + &["\u{1}\u{300}"]), ("\u{1}\u{308}\u{300}", &["\u{1}\u{308}\u{300}"]), ("\u{1}\u{200d}", + &["\u{1}\u{200d}"]), ("\u{1}\u{308}\u{200d}", &["\u{1}\u{308}\u{200d}"]), ("\u{1}\u{61}\u{2060}", &["\u{1}", "\u{61}\u{2060}"]), ("\u{1}\u{308}\u{61}\u{2060}", &["\u{1}\u{308}", "\u{61}\u{2060}"]), ("\u{1}\u{61}\u{3a}", &["\u{1}", "\u{61}", "\u{3a}"]), ("\u{1}\u{308}\u{61}\u{3a}", &["\u{1}\u{308}", "\u{61}", "\u{3a}"]), ("\u{1}\u{61}\u{27}", @@ -298,9 +573,15 @@ ("\u{d}\u{308}\u{5d0}", &["\u{d}", "\u{308}", "\u{5d0}"]), ("\u{d}\u{22}", &["\u{d}", "\u{22}"]), ("\u{d}\u{308}\u{22}", &["\u{d}", "\u{308}", "\u{22}"]), ("\u{d}\u{27}", &["\u{d}", "\u{27}"]), ("\u{d}\u{308}\u{27}", &["\u{d}", "\u{308}", "\u{27}"]), + ("\u{d}\u{261d}", &["\u{d}", "\u{261d}"]), ("\u{d}\u{308}\u{261d}", &["\u{d}", "\u{308}", + "\u{261d}"]), ("\u{d}\u{1f3fb}", &["\u{d}", "\u{1f3fb}"]), ("\u{d}\u{308}\u{1f3fb}", + &["\u{d}", "\u{308}", "\u{1f3fb}"]), ("\u{d}\u{2764}", &["\u{d}", "\u{2764}"]), + ("\u{d}\u{308}\u{2764}", &["\u{d}", "\u{308}", "\u{2764}"]), ("\u{d}\u{1f466}", &["\u{d}", + "\u{1f466}"]), ("\u{d}\u{308}\u{1f466}", &["\u{d}", "\u{308}", "\u{1f466}"]), ("\u{d}\u{ad}", &["\u{d}", "\u{ad}"]), ("\u{d}\u{308}\u{ad}", &["\u{d}", "\u{308}\u{ad}"]), ("\u{d}\u{300}", &["\u{d}", "\u{300}"]), ("\u{d}\u{308}\u{300}", &["\u{d}", - "\u{308}\u{300}"]), ("\u{d}\u{61}\u{2060}", &["\u{d}", "\u{61}\u{2060}"]), + "\u{308}\u{300}"]), ("\u{d}\u{200d}", &["\u{d}", "\u{200d}"]), ("\u{d}\u{308}\u{200d}", + &["\u{d}", "\u{308}\u{200d}"]), ("\u{d}\u{61}\u{2060}", &["\u{d}", "\u{61}\u{2060}"]), ("\u{d}\u{308}\u{61}\u{2060}", &["\u{d}", "\u{308}", "\u{61}\u{2060}"]), ("\u{d}\u{61}\u{3a}", &["\u{d}", "\u{61}", "\u{3a}"]), ("\u{d}\u{308}\u{61}\u{3a}", &["\u{d}", "\u{308}", "\u{61}", "\u{3a}"]), ("\u{d}\u{61}\u{27}", &["\u{d}", "\u{61}", @@ -332,9 +613,15 @@ ("\u{a}\u{308}\u{5d0}", &["\u{a}", "\u{308}", "\u{5d0}"]), ("\u{a}\u{22}", &["\u{a}", "\u{22}"]), ("\u{a}\u{308}\u{22}", &["\u{a}", "\u{308}", "\u{22}"]), ("\u{a}\u{27}", &["\u{a}", "\u{27}"]), ("\u{a}\u{308}\u{27}", &["\u{a}", "\u{308}", "\u{27}"]), + ("\u{a}\u{261d}", &["\u{a}", "\u{261d}"]), ("\u{a}\u{308}\u{261d}", &["\u{a}", "\u{308}", + "\u{261d}"]), ("\u{a}\u{1f3fb}", &["\u{a}", "\u{1f3fb}"]), ("\u{a}\u{308}\u{1f3fb}", + &["\u{a}", "\u{308}", "\u{1f3fb}"]), ("\u{a}\u{2764}", &["\u{a}", "\u{2764}"]), + ("\u{a}\u{308}\u{2764}", &["\u{a}", "\u{308}", "\u{2764}"]), ("\u{a}\u{1f466}", &["\u{a}", + "\u{1f466}"]), ("\u{a}\u{308}\u{1f466}", &["\u{a}", "\u{308}", "\u{1f466}"]), ("\u{a}\u{ad}", &["\u{a}", "\u{ad}"]), ("\u{a}\u{308}\u{ad}", &["\u{a}", "\u{308}\u{ad}"]), ("\u{a}\u{300}", &["\u{a}", "\u{300}"]), ("\u{a}\u{308}\u{300}", &["\u{a}", - "\u{308}\u{300}"]), ("\u{a}\u{61}\u{2060}", &["\u{a}", "\u{61}\u{2060}"]), + "\u{308}\u{300}"]), ("\u{a}\u{200d}", &["\u{a}", "\u{200d}"]), ("\u{a}\u{308}\u{200d}", + &["\u{a}", "\u{308}\u{200d}"]), ("\u{a}\u{61}\u{2060}", &["\u{a}", "\u{61}\u{2060}"]), ("\u{a}\u{308}\u{61}\u{2060}", &["\u{a}", "\u{308}", "\u{61}\u{2060}"]), ("\u{a}\u{61}\u{3a}", &["\u{a}", "\u{61}", "\u{3a}"]), ("\u{a}\u{308}\u{61}\u{3a}", &["\u{a}", "\u{308}", "\u{61}", "\u{3a}"]), ("\u{a}\u{61}\u{27}", &["\u{a}", "\u{61}", @@ -366,9 +653,15 @@ ("\u{b}\u{308}\u{5d0}", &["\u{b}", "\u{308}", "\u{5d0}"]), ("\u{b}\u{22}", &["\u{b}", "\u{22}"]), ("\u{b}\u{308}\u{22}", &["\u{b}", "\u{308}", "\u{22}"]), ("\u{b}\u{27}", &["\u{b}", "\u{27}"]), ("\u{b}\u{308}\u{27}", &["\u{b}", "\u{308}", "\u{27}"]), + ("\u{b}\u{261d}", &["\u{b}", "\u{261d}"]), ("\u{b}\u{308}\u{261d}", &["\u{b}", "\u{308}", + "\u{261d}"]), ("\u{b}\u{1f3fb}", &["\u{b}", "\u{1f3fb}"]), ("\u{b}\u{308}\u{1f3fb}", + &["\u{b}", "\u{308}", "\u{1f3fb}"]), ("\u{b}\u{2764}", &["\u{b}", "\u{2764}"]), + ("\u{b}\u{308}\u{2764}", &["\u{b}", "\u{308}", "\u{2764}"]), ("\u{b}\u{1f466}", &["\u{b}", + "\u{1f466}"]), ("\u{b}\u{308}\u{1f466}", &["\u{b}", "\u{308}", "\u{1f466}"]), ("\u{b}\u{ad}", &["\u{b}", "\u{ad}"]), ("\u{b}\u{308}\u{ad}", &["\u{b}", "\u{308}\u{ad}"]), ("\u{b}\u{300}", &["\u{b}", "\u{300}"]), ("\u{b}\u{308}\u{300}", &["\u{b}", - "\u{308}\u{300}"]), ("\u{b}\u{61}\u{2060}", &["\u{b}", "\u{61}\u{2060}"]), + "\u{308}\u{300}"]), ("\u{b}\u{200d}", &["\u{b}", "\u{200d}"]), ("\u{b}\u{308}\u{200d}", + &["\u{b}", "\u{308}\u{200d}"]), ("\u{b}\u{61}\u{2060}", &["\u{b}", "\u{61}\u{2060}"]), ("\u{b}\u{308}\u{61}\u{2060}", &["\u{b}", "\u{308}", "\u{61}\u{2060}"]), ("\u{b}\u{61}\u{3a}", &["\u{b}", "\u{61}", "\u{3a}"]), ("\u{b}\u{308}\u{61}\u{3a}", &["\u{b}", "\u{308}", "\u{61}", "\u{3a}"]), ("\u{b}\u{61}\u{27}", &["\u{b}", "\u{61}", @@ -401,43 +694,56 @@ &["\u{3031}", "\u{5d0}"]), ("\u{3031}\u{308}\u{5d0}", &["\u{3031}\u{308}", "\u{5d0}"]), ("\u{3031}\u{22}", &["\u{3031}", "\u{22}"]), ("\u{3031}\u{308}\u{22}", &["\u{3031}\u{308}", "\u{22}"]), ("\u{3031}\u{27}", &["\u{3031}", "\u{27}"]), ("\u{3031}\u{308}\u{27}", - &["\u{3031}\u{308}", "\u{27}"]), ("\u{3031}\u{ad}", &["\u{3031}\u{ad}"]), - ("\u{3031}\u{308}\u{ad}", &["\u{3031}\u{308}\u{ad}"]), ("\u{3031}\u{300}", - &["\u{3031}\u{300}"]), ("\u{3031}\u{308}\u{300}", &["\u{3031}\u{308}\u{300}"]), - ("\u{3031}\u{61}\u{2060}", &["\u{3031}", "\u{61}\u{2060}"]), - ("\u{3031}\u{308}\u{61}\u{2060}", &["\u{3031}\u{308}", "\u{61}\u{2060}"]), - ("\u{3031}\u{61}\u{3a}", &["\u{3031}", "\u{61}", "\u{3a}"]), ("\u{3031}\u{308}\u{61}\u{3a}", - &["\u{3031}\u{308}", "\u{61}", "\u{3a}"]), ("\u{3031}\u{61}\u{27}", &["\u{3031}", "\u{61}", - "\u{27}"]), ("\u{3031}\u{308}\u{61}\u{27}", &["\u{3031}\u{308}", "\u{61}", "\u{27}"]), - ("\u{3031}\u{61}\u{27}\u{2060}", &["\u{3031}", "\u{61}", "\u{27}\u{2060}"]), - ("\u{3031}\u{308}\u{61}\u{27}\u{2060}", &["\u{3031}\u{308}", "\u{61}", "\u{27}\u{2060}"]), - ("\u{3031}\u{61}\u{2c}", &["\u{3031}", "\u{61}", "\u{2c}"]), ("\u{3031}\u{308}\u{61}\u{2c}", - &["\u{3031}\u{308}", "\u{61}", "\u{2c}"]), ("\u{3031}\u{31}\u{3a}", &["\u{3031}", "\u{31}", - "\u{3a}"]), ("\u{3031}\u{308}\u{31}\u{3a}", &["\u{3031}\u{308}", "\u{31}", "\u{3a}"]), - ("\u{3031}\u{31}\u{27}", &["\u{3031}", "\u{31}", "\u{27}"]), ("\u{3031}\u{308}\u{31}\u{27}", - &["\u{3031}\u{308}", "\u{31}", "\u{27}"]), ("\u{3031}\u{31}\u{2c}", &["\u{3031}", "\u{31}", - "\u{2c}"]), ("\u{3031}\u{308}\u{31}\u{2c}", &["\u{3031}\u{308}", "\u{31}", "\u{2c}"]), - ("\u{3031}\u{31}\u{2e}\u{2060}", &["\u{3031}", "\u{31}", "\u{2e}\u{2060}"]), - ("\u{3031}\u{308}\u{31}\u{2e}\u{2060}", &["\u{3031}\u{308}", "\u{31}", "\u{2e}\u{2060}"]), - ("\u{41}\u{1}", &["\u{41}", "\u{1}"]), ("\u{41}\u{308}\u{1}", &["\u{41}\u{308}", "\u{1}"]), - ("\u{41}\u{d}", &["\u{41}", "\u{d}"]), ("\u{41}\u{308}\u{d}", &["\u{41}\u{308}", "\u{d}"]), - ("\u{41}\u{a}", &["\u{41}", "\u{a}"]), ("\u{41}\u{308}\u{a}", &["\u{41}\u{308}", "\u{a}"]), - ("\u{41}\u{b}", &["\u{41}", "\u{b}"]), ("\u{41}\u{308}\u{b}", &["\u{41}\u{308}", "\u{b}"]), - ("\u{41}\u{3031}", &["\u{41}", "\u{3031}"]), ("\u{41}\u{308}\u{3031}", &["\u{41}\u{308}", - "\u{3031}"]), ("\u{41}\u{41}", &["\u{41}\u{41}"]), ("\u{41}\u{308}\u{41}", - &["\u{41}\u{308}\u{41}"]), ("\u{41}\u{3a}", &["\u{41}", "\u{3a}"]), ("\u{41}\u{308}\u{3a}", - &["\u{41}\u{308}", "\u{3a}"]), ("\u{41}\u{2c}", &["\u{41}", "\u{2c}"]), - ("\u{41}\u{308}\u{2c}", &["\u{41}\u{308}", "\u{2c}"]), ("\u{41}\u{2e}", &["\u{41}", - "\u{2e}"]), ("\u{41}\u{308}\u{2e}", &["\u{41}\u{308}", "\u{2e}"]), ("\u{41}\u{30}", - &["\u{41}\u{30}"]), ("\u{41}\u{308}\u{30}", &["\u{41}\u{308}\u{30}"]), ("\u{41}\u{5f}", - &["\u{41}\u{5f}"]), ("\u{41}\u{308}\u{5f}", &["\u{41}\u{308}\u{5f}"]), ("\u{41}\u{1f1e6}", - &["\u{41}", "\u{1f1e6}"]), ("\u{41}\u{308}\u{1f1e6}", &["\u{41}\u{308}", "\u{1f1e6}"]), - ("\u{41}\u{5d0}", &["\u{41}\u{5d0}"]), ("\u{41}\u{308}\u{5d0}", &["\u{41}\u{308}\u{5d0}"]), - ("\u{41}\u{22}", &["\u{41}", "\u{22}"]), ("\u{41}\u{308}\u{22}", &["\u{41}\u{308}", - "\u{22}"]), ("\u{41}\u{27}", &["\u{41}", "\u{27}"]), ("\u{41}\u{308}\u{27}", - &["\u{41}\u{308}", "\u{27}"]), ("\u{41}\u{ad}", &["\u{41}\u{ad}"]), ("\u{41}\u{308}\u{ad}", - &["\u{41}\u{308}\u{ad}"]), ("\u{41}\u{300}", &["\u{41}\u{300}"]), ("\u{41}\u{308}\u{300}", - &["\u{41}\u{308}\u{300}"]), ("\u{41}\u{61}\u{2060}", &["\u{41}\u{61}\u{2060}"]), + &["\u{3031}\u{308}", "\u{27}"]), ("\u{3031}\u{261d}", &["\u{3031}", "\u{261d}"]), + ("\u{3031}\u{308}\u{261d}", &["\u{3031}\u{308}", "\u{261d}"]), ("\u{3031}\u{1f3fb}", + &["\u{3031}", "\u{1f3fb}"]), ("\u{3031}\u{308}\u{1f3fb}", &["\u{3031}\u{308}", + "\u{1f3fb}"]), ("\u{3031}\u{2764}", &["\u{3031}", "\u{2764}"]), ("\u{3031}\u{308}\u{2764}", + &["\u{3031}\u{308}", "\u{2764}"]), ("\u{3031}\u{1f466}", &["\u{3031}", "\u{1f466}"]), + ("\u{3031}\u{308}\u{1f466}", &["\u{3031}\u{308}", "\u{1f466}"]), ("\u{3031}\u{ad}", + &["\u{3031}\u{ad}"]), ("\u{3031}\u{308}\u{ad}", &["\u{3031}\u{308}\u{ad}"]), + ("\u{3031}\u{300}", &["\u{3031}\u{300}"]), ("\u{3031}\u{308}\u{300}", + &["\u{3031}\u{308}\u{300}"]), ("\u{3031}\u{200d}", &["\u{3031}\u{200d}"]), + ("\u{3031}\u{308}\u{200d}", &["\u{3031}\u{308}\u{200d}"]), ("\u{3031}\u{61}\u{2060}", + &["\u{3031}", "\u{61}\u{2060}"]), ("\u{3031}\u{308}\u{61}\u{2060}", &["\u{3031}\u{308}", + "\u{61}\u{2060}"]), ("\u{3031}\u{61}\u{3a}", &["\u{3031}", "\u{61}", "\u{3a}"]), + ("\u{3031}\u{308}\u{61}\u{3a}", &["\u{3031}\u{308}", "\u{61}", "\u{3a}"]), + ("\u{3031}\u{61}\u{27}", &["\u{3031}", "\u{61}", "\u{27}"]), ("\u{3031}\u{308}\u{61}\u{27}", + &["\u{3031}\u{308}", "\u{61}", "\u{27}"]), ("\u{3031}\u{61}\u{27}\u{2060}", &["\u{3031}", + "\u{61}", "\u{27}\u{2060}"]), ("\u{3031}\u{308}\u{61}\u{27}\u{2060}", &["\u{3031}\u{308}", + "\u{61}", "\u{27}\u{2060}"]), ("\u{3031}\u{61}\u{2c}", &["\u{3031}", "\u{61}", "\u{2c}"]), + ("\u{3031}\u{308}\u{61}\u{2c}", &["\u{3031}\u{308}", "\u{61}", "\u{2c}"]), + ("\u{3031}\u{31}\u{3a}", &["\u{3031}", "\u{31}", "\u{3a}"]), ("\u{3031}\u{308}\u{31}\u{3a}", + &["\u{3031}\u{308}", "\u{31}", "\u{3a}"]), ("\u{3031}\u{31}\u{27}", &["\u{3031}", "\u{31}", + "\u{27}"]), ("\u{3031}\u{308}\u{31}\u{27}", &["\u{3031}\u{308}", "\u{31}", "\u{27}"]), + ("\u{3031}\u{31}\u{2c}", &["\u{3031}", "\u{31}", "\u{2c}"]), ("\u{3031}\u{308}\u{31}\u{2c}", + &["\u{3031}\u{308}", "\u{31}", "\u{2c}"]), ("\u{3031}\u{31}\u{2e}\u{2060}", &["\u{3031}", + "\u{31}", "\u{2e}\u{2060}"]), ("\u{3031}\u{308}\u{31}\u{2e}\u{2060}", &["\u{3031}\u{308}", + "\u{31}", "\u{2e}\u{2060}"]), ("\u{41}\u{1}", &["\u{41}", "\u{1}"]), ("\u{41}\u{308}\u{1}", + &["\u{41}\u{308}", "\u{1}"]), ("\u{41}\u{d}", &["\u{41}", "\u{d}"]), ("\u{41}\u{308}\u{d}", + &["\u{41}\u{308}", "\u{d}"]), ("\u{41}\u{a}", &["\u{41}", "\u{a}"]), ("\u{41}\u{308}\u{a}", + &["\u{41}\u{308}", "\u{a}"]), ("\u{41}\u{b}", &["\u{41}", "\u{b}"]), ("\u{41}\u{308}\u{b}", + &["\u{41}\u{308}", "\u{b}"]), ("\u{41}\u{3031}", &["\u{41}", "\u{3031}"]), + ("\u{41}\u{308}\u{3031}", &["\u{41}\u{308}", "\u{3031}"]), ("\u{41}\u{41}", + &["\u{41}\u{41}"]), ("\u{41}\u{308}\u{41}", &["\u{41}\u{308}\u{41}"]), ("\u{41}\u{3a}", + &["\u{41}", "\u{3a}"]), ("\u{41}\u{308}\u{3a}", &["\u{41}\u{308}", "\u{3a}"]), + ("\u{41}\u{2c}", &["\u{41}", "\u{2c}"]), ("\u{41}\u{308}\u{2c}", &["\u{41}\u{308}", + "\u{2c}"]), ("\u{41}\u{2e}", &["\u{41}", "\u{2e}"]), ("\u{41}\u{308}\u{2e}", + &["\u{41}\u{308}", "\u{2e}"]), ("\u{41}\u{30}", &["\u{41}\u{30}"]), ("\u{41}\u{308}\u{30}", + &["\u{41}\u{308}\u{30}"]), ("\u{41}\u{5f}", &["\u{41}\u{5f}"]), ("\u{41}\u{308}\u{5f}", + &["\u{41}\u{308}\u{5f}"]), ("\u{41}\u{1f1e6}", &["\u{41}", "\u{1f1e6}"]), + ("\u{41}\u{308}\u{1f1e6}", &["\u{41}\u{308}", "\u{1f1e6}"]), ("\u{41}\u{5d0}", + &["\u{41}\u{5d0}"]), ("\u{41}\u{308}\u{5d0}", &["\u{41}\u{308}\u{5d0}"]), ("\u{41}\u{22}", + &["\u{41}", "\u{22}"]), ("\u{41}\u{308}\u{22}", &["\u{41}\u{308}", "\u{22}"]), + ("\u{41}\u{27}", &["\u{41}", "\u{27}"]), ("\u{41}\u{308}\u{27}", &["\u{41}\u{308}", + "\u{27}"]), ("\u{41}\u{261d}", &["\u{41}", "\u{261d}"]), ("\u{41}\u{308}\u{261d}", + &["\u{41}\u{308}", "\u{261d}"]), ("\u{41}\u{1f3fb}", &["\u{41}", "\u{1f3fb}"]), + ("\u{41}\u{308}\u{1f3fb}", &["\u{41}\u{308}", "\u{1f3fb}"]), ("\u{41}\u{2764}", &["\u{41}", + "\u{2764}"]), ("\u{41}\u{308}\u{2764}", &["\u{41}\u{308}", "\u{2764}"]), ("\u{41}\u{1f466}", + &["\u{41}", "\u{1f466}"]), ("\u{41}\u{308}\u{1f466}", &["\u{41}\u{308}", "\u{1f466}"]), + ("\u{41}\u{ad}", &["\u{41}\u{ad}"]), ("\u{41}\u{308}\u{ad}", &["\u{41}\u{308}\u{ad}"]), + ("\u{41}\u{300}", &["\u{41}\u{300}"]), ("\u{41}\u{308}\u{300}", &["\u{41}\u{308}\u{300}"]), + ("\u{41}\u{200d}", &["\u{41}\u{200d}"]), ("\u{41}\u{308}\u{200d}", + &["\u{41}\u{308}\u{200d}"]), ("\u{41}\u{61}\u{2060}", &["\u{41}\u{61}\u{2060}"]), ("\u{41}\u{308}\u{61}\u{2060}", &["\u{41}\u{308}\u{61}\u{2060}"]), ("\u{41}\u{61}\u{3a}", &["\u{41}\u{61}", "\u{3a}"]), ("\u{41}\u{308}\u{61}\u{3a}", &["\u{41}\u{308}\u{61}", "\u{3a}"]), ("\u{41}\u{61}\u{27}", &["\u{41}\u{61}", "\u{27}"]), @@ -469,9 +775,15 @@ "\u{5d0}"]), ("\u{3a}\u{308}\u{5d0}", &["\u{3a}\u{308}", "\u{5d0}"]), ("\u{3a}\u{22}", &["\u{3a}", "\u{22}"]), ("\u{3a}\u{308}\u{22}", &["\u{3a}\u{308}", "\u{22}"]), ("\u{3a}\u{27}", &["\u{3a}", "\u{27}"]), ("\u{3a}\u{308}\u{27}", &["\u{3a}\u{308}", - "\u{27}"]), ("\u{3a}\u{ad}", &["\u{3a}\u{ad}"]), ("\u{3a}\u{308}\u{ad}", - &["\u{3a}\u{308}\u{ad}"]), ("\u{3a}\u{300}", &["\u{3a}\u{300}"]), ("\u{3a}\u{308}\u{300}", - &["\u{3a}\u{308}\u{300}"]), ("\u{3a}\u{61}\u{2060}", &["\u{3a}", "\u{61}\u{2060}"]), + "\u{27}"]), ("\u{3a}\u{261d}", &["\u{3a}", "\u{261d}"]), ("\u{3a}\u{308}\u{261d}", + &["\u{3a}\u{308}", "\u{261d}"]), ("\u{3a}\u{1f3fb}", &["\u{3a}", "\u{1f3fb}"]), + ("\u{3a}\u{308}\u{1f3fb}", &["\u{3a}\u{308}", "\u{1f3fb}"]), ("\u{3a}\u{2764}", &["\u{3a}", + "\u{2764}"]), ("\u{3a}\u{308}\u{2764}", &["\u{3a}\u{308}", "\u{2764}"]), ("\u{3a}\u{1f466}", + &["\u{3a}", "\u{1f466}"]), ("\u{3a}\u{308}\u{1f466}", &["\u{3a}\u{308}", "\u{1f466}"]), + ("\u{3a}\u{ad}", &["\u{3a}\u{ad}"]), ("\u{3a}\u{308}\u{ad}", &["\u{3a}\u{308}\u{ad}"]), + ("\u{3a}\u{300}", &["\u{3a}\u{300}"]), ("\u{3a}\u{308}\u{300}", &["\u{3a}\u{308}\u{300}"]), + ("\u{3a}\u{200d}", &["\u{3a}\u{200d}"]), ("\u{3a}\u{308}\u{200d}", + &["\u{3a}\u{308}\u{200d}"]), ("\u{3a}\u{61}\u{2060}", &["\u{3a}", "\u{61}\u{2060}"]), ("\u{3a}\u{308}\u{61}\u{2060}", &["\u{3a}\u{308}", "\u{61}\u{2060}"]), ("\u{3a}\u{61}\u{3a}", &["\u{3a}", "\u{61}", "\u{3a}"]), ("\u{3a}\u{308}\u{61}\u{3a}", &["\u{3a}\u{308}", "\u{61}", "\u{3a}"]), ("\u{3a}\u{61}\u{27}", &["\u{3a}", "\u{61}", @@ -503,9 +815,15 @@ "\u{5d0}"]), ("\u{2c}\u{308}\u{5d0}", &["\u{2c}\u{308}", "\u{5d0}"]), ("\u{2c}\u{22}", &["\u{2c}", "\u{22}"]), ("\u{2c}\u{308}\u{22}", &["\u{2c}\u{308}", "\u{22}"]), ("\u{2c}\u{27}", &["\u{2c}", "\u{27}"]), ("\u{2c}\u{308}\u{27}", &["\u{2c}\u{308}", - "\u{27}"]), ("\u{2c}\u{ad}", &["\u{2c}\u{ad}"]), ("\u{2c}\u{308}\u{ad}", - &["\u{2c}\u{308}\u{ad}"]), ("\u{2c}\u{300}", &["\u{2c}\u{300}"]), ("\u{2c}\u{308}\u{300}", - &["\u{2c}\u{308}\u{300}"]), ("\u{2c}\u{61}\u{2060}", &["\u{2c}", "\u{61}\u{2060}"]), + "\u{27}"]), ("\u{2c}\u{261d}", &["\u{2c}", "\u{261d}"]), ("\u{2c}\u{308}\u{261d}", + &["\u{2c}\u{308}", "\u{261d}"]), ("\u{2c}\u{1f3fb}", &["\u{2c}", "\u{1f3fb}"]), + ("\u{2c}\u{308}\u{1f3fb}", &["\u{2c}\u{308}", "\u{1f3fb}"]), ("\u{2c}\u{2764}", &["\u{2c}", + "\u{2764}"]), ("\u{2c}\u{308}\u{2764}", &["\u{2c}\u{308}", "\u{2764}"]), ("\u{2c}\u{1f466}", + &["\u{2c}", "\u{1f466}"]), ("\u{2c}\u{308}\u{1f466}", &["\u{2c}\u{308}", "\u{1f466}"]), + ("\u{2c}\u{ad}", &["\u{2c}\u{ad}"]), ("\u{2c}\u{308}\u{ad}", &["\u{2c}\u{308}\u{ad}"]), + ("\u{2c}\u{300}", &["\u{2c}\u{300}"]), ("\u{2c}\u{308}\u{300}", &["\u{2c}\u{308}\u{300}"]), + ("\u{2c}\u{200d}", &["\u{2c}\u{200d}"]), ("\u{2c}\u{308}\u{200d}", + &["\u{2c}\u{308}\u{200d}"]), ("\u{2c}\u{61}\u{2060}", &["\u{2c}", "\u{61}\u{2060}"]), ("\u{2c}\u{308}\u{61}\u{2060}", &["\u{2c}\u{308}", "\u{61}\u{2060}"]), ("\u{2c}\u{61}\u{3a}", &["\u{2c}", "\u{61}", "\u{3a}"]), ("\u{2c}\u{308}\u{61}\u{3a}", &["\u{2c}\u{308}", "\u{61}", "\u{3a}"]), ("\u{2c}\u{61}\u{27}", &["\u{2c}", "\u{61}", @@ -537,9 +855,15 @@ "\u{5d0}"]), ("\u{2e}\u{308}\u{5d0}", &["\u{2e}\u{308}", "\u{5d0}"]), ("\u{2e}\u{22}", &["\u{2e}", "\u{22}"]), ("\u{2e}\u{308}\u{22}", &["\u{2e}\u{308}", "\u{22}"]), ("\u{2e}\u{27}", &["\u{2e}", "\u{27}"]), ("\u{2e}\u{308}\u{27}", &["\u{2e}\u{308}", - "\u{27}"]), ("\u{2e}\u{ad}", &["\u{2e}\u{ad}"]), ("\u{2e}\u{308}\u{ad}", - &["\u{2e}\u{308}\u{ad}"]), ("\u{2e}\u{300}", &["\u{2e}\u{300}"]), ("\u{2e}\u{308}\u{300}", - &["\u{2e}\u{308}\u{300}"]), ("\u{2e}\u{61}\u{2060}", &["\u{2e}", "\u{61}\u{2060}"]), + "\u{27}"]), ("\u{2e}\u{261d}", &["\u{2e}", "\u{261d}"]), ("\u{2e}\u{308}\u{261d}", + &["\u{2e}\u{308}", "\u{261d}"]), ("\u{2e}\u{1f3fb}", &["\u{2e}", "\u{1f3fb}"]), + ("\u{2e}\u{308}\u{1f3fb}", &["\u{2e}\u{308}", "\u{1f3fb}"]), ("\u{2e}\u{2764}", &["\u{2e}", + "\u{2764}"]), ("\u{2e}\u{308}\u{2764}", &["\u{2e}\u{308}", "\u{2764}"]), ("\u{2e}\u{1f466}", + &["\u{2e}", "\u{1f466}"]), ("\u{2e}\u{308}\u{1f466}", &["\u{2e}\u{308}", "\u{1f466}"]), + ("\u{2e}\u{ad}", &["\u{2e}\u{ad}"]), ("\u{2e}\u{308}\u{ad}", &["\u{2e}\u{308}\u{ad}"]), + ("\u{2e}\u{300}", &["\u{2e}\u{300}"]), ("\u{2e}\u{308}\u{300}", &["\u{2e}\u{308}\u{300}"]), + ("\u{2e}\u{200d}", &["\u{2e}\u{200d}"]), ("\u{2e}\u{308}\u{200d}", + &["\u{2e}\u{308}\u{200d}"]), ("\u{2e}\u{61}\u{2060}", &["\u{2e}", "\u{61}\u{2060}"]), ("\u{2e}\u{308}\u{61}\u{2060}", &["\u{2e}\u{308}", "\u{61}\u{2060}"]), ("\u{2e}\u{61}\u{3a}", &["\u{2e}", "\u{61}", "\u{3a}"]), ("\u{2e}\u{308}\u{61}\u{3a}", &["\u{2e}\u{308}", "\u{61}", "\u{3a}"]), ("\u{2e}\u{61}\u{27}", &["\u{2e}", "\u{61}", @@ -570,14 +894,20 @@ ("\u{30}\u{5d0}", &["\u{30}\u{5d0}"]), ("\u{30}\u{308}\u{5d0}", &["\u{30}\u{308}\u{5d0}"]), ("\u{30}\u{22}", &["\u{30}", "\u{22}"]), ("\u{30}\u{308}\u{22}", &["\u{30}\u{308}", "\u{22}"]), ("\u{30}\u{27}", &["\u{30}", "\u{27}"]), ("\u{30}\u{308}\u{27}", - &["\u{30}\u{308}", "\u{27}"]), ("\u{30}\u{ad}", &["\u{30}\u{ad}"]), ("\u{30}\u{308}\u{ad}", - &["\u{30}\u{308}\u{ad}"]), ("\u{30}\u{300}", &["\u{30}\u{300}"]), ("\u{30}\u{308}\u{300}", - &["\u{30}\u{308}\u{300}"]), ("\u{30}\u{61}\u{2060}", &["\u{30}\u{61}\u{2060}"]), - ("\u{30}\u{308}\u{61}\u{2060}", &["\u{30}\u{308}\u{61}\u{2060}"]), ("\u{30}\u{61}\u{3a}", - &["\u{30}\u{61}", "\u{3a}"]), ("\u{30}\u{308}\u{61}\u{3a}", &["\u{30}\u{308}\u{61}", - "\u{3a}"]), ("\u{30}\u{61}\u{27}", &["\u{30}\u{61}", "\u{27}"]), - ("\u{30}\u{308}\u{61}\u{27}", &["\u{30}\u{308}\u{61}", "\u{27}"]), - ("\u{30}\u{61}\u{27}\u{2060}", &["\u{30}\u{61}", "\u{27}\u{2060}"]), + &["\u{30}\u{308}", "\u{27}"]), ("\u{30}\u{261d}", &["\u{30}", "\u{261d}"]), + ("\u{30}\u{308}\u{261d}", &["\u{30}\u{308}", "\u{261d}"]), ("\u{30}\u{1f3fb}", &["\u{30}", + "\u{1f3fb}"]), ("\u{30}\u{308}\u{1f3fb}", &["\u{30}\u{308}", "\u{1f3fb}"]), + ("\u{30}\u{2764}", &["\u{30}", "\u{2764}"]), ("\u{30}\u{308}\u{2764}", &["\u{30}\u{308}", + "\u{2764}"]), ("\u{30}\u{1f466}", &["\u{30}", "\u{1f466}"]), ("\u{30}\u{308}\u{1f466}", + &["\u{30}\u{308}", "\u{1f466}"]), ("\u{30}\u{ad}", &["\u{30}\u{ad}"]), + ("\u{30}\u{308}\u{ad}", &["\u{30}\u{308}\u{ad}"]), ("\u{30}\u{300}", &["\u{30}\u{300}"]), + ("\u{30}\u{308}\u{300}", &["\u{30}\u{308}\u{300}"]), ("\u{30}\u{200d}", + &["\u{30}\u{200d}"]), ("\u{30}\u{308}\u{200d}", &["\u{30}\u{308}\u{200d}"]), + ("\u{30}\u{61}\u{2060}", &["\u{30}\u{61}\u{2060}"]), ("\u{30}\u{308}\u{61}\u{2060}", + &["\u{30}\u{308}\u{61}\u{2060}"]), ("\u{30}\u{61}\u{3a}", &["\u{30}\u{61}", "\u{3a}"]), + ("\u{30}\u{308}\u{61}\u{3a}", &["\u{30}\u{308}\u{61}", "\u{3a}"]), ("\u{30}\u{61}\u{27}", + &["\u{30}\u{61}", "\u{27}"]), ("\u{30}\u{308}\u{61}\u{27}", &["\u{30}\u{308}\u{61}", + "\u{27}"]), ("\u{30}\u{61}\u{27}\u{2060}", &["\u{30}\u{61}", "\u{27}\u{2060}"]), ("\u{30}\u{308}\u{61}\u{27}\u{2060}", &["\u{30}\u{308}\u{61}", "\u{27}\u{2060}"]), ("\u{30}\u{61}\u{2c}", &["\u{30}\u{61}", "\u{2c}"]), ("\u{30}\u{308}\u{61}\u{2c}", &["\u{30}\u{308}\u{61}", "\u{2c}"]), ("\u{30}\u{31}\u{3a}", &["\u{30}\u{31}", "\u{3a}"]), @@ -603,14 +933,20 @@ ("\u{5f}\u{5d0}", &["\u{5f}\u{5d0}"]), ("\u{5f}\u{308}\u{5d0}", &["\u{5f}\u{308}\u{5d0}"]), ("\u{5f}\u{22}", &["\u{5f}", "\u{22}"]), ("\u{5f}\u{308}\u{22}", &["\u{5f}\u{308}", "\u{22}"]), ("\u{5f}\u{27}", &["\u{5f}", "\u{27}"]), ("\u{5f}\u{308}\u{27}", - &["\u{5f}\u{308}", "\u{27}"]), ("\u{5f}\u{ad}", &["\u{5f}\u{ad}"]), ("\u{5f}\u{308}\u{ad}", - &["\u{5f}\u{308}\u{ad}"]), ("\u{5f}\u{300}", &["\u{5f}\u{300}"]), ("\u{5f}\u{308}\u{300}", - &["\u{5f}\u{308}\u{300}"]), ("\u{5f}\u{61}\u{2060}", &["\u{5f}\u{61}\u{2060}"]), - ("\u{5f}\u{308}\u{61}\u{2060}", &["\u{5f}\u{308}\u{61}\u{2060}"]), ("\u{5f}\u{61}\u{3a}", - &["\u{5f}\u{61}", "\u{3a}"]), ("\u{5f}\u{308}\u{61}\u{3a}", &["\u{5f}\u{308}\u{61}", - "\u{3a}"]), ("\u{5f}\u{61}\u{27}", &["\u{5f}\u{61}", "\u{27}"]), - ("\u{5f}\u{308}\u{61}\u{27}", &["\u{5f}\u{308}\u{61}", "\u{27}"]), - ("\u{5f}\u{61}\u{27}\u{2060}", &["\u{5f}\u{61}", "\u{27}\u{2060}"]), + &["\u{5f}\u{308}", "\u{27}"]), ("\u{5f}\u{261d}", &["\u{5f}", "\u{261d}"]), + ("\u{5f}\u{308}\u{261d}", &["\u{5f}\u{308}", "\u{261d}"]), ("\u{5f}\u{1f3fb}", &["\u{5f}", + "\u{1f3fb}"]), ("\u{5f}\u{308}\u{1f3fb}", &["\u{5f}\u{308}", "\u{1f3fb}"]), + ("\u{5f}\u{2764}", &["\u{5f}", "\u{2764}"]), ("\u{5f}\u{308}\u{2764}", &["\u{5f}\u{308}", + "\u{2764}"]), ("\u{5f}\u{1f466}", &["\u{5f}", "\u{1f466}"]), ("\u{5f}\u{308}\u{1f466}", + &["\u{5f}\u{308}", "\u{1f466}"]), ("\u{5f}\u{ad}", &["\u{5f}\u{ad}"]), + ("\u{5f}\u{308}\u{ad}", &["\u{5f}\u{308}\u{ad}"]), ("\u{5f}\u{300}", &["\u{5f}\u{300}"]), + ("\u{5f}\u{308}\u{300}", &["\u{5f}\u{308}\u{300}"]), ("\u{5f}\u{200d}", + &["\u{5f}\u{200d}"]), ("\u{5f}\u{308}\u{200d}", &["\u{5f}\u{308}\u{200d}"]), + ("\u{5f}\u{61}\u{2060}", &["\u{5f}\u{61}\u{2060}"]), ("\u{5f}\u{308}\u{61}\u{2060}", + &["\u{5f}\u{308}\u{61}\u{2060}"]), ("\u{5f}\u{61}\u{3a}", &["\u{5f}\u{61}", "\u{3a}"]), + ("\u{5f}\u{308}\u{61}\u{3a}", &["\u{5f}\u{308}\u{61}", "\u{3a}"]), ("\u{5f}\u{61}\u{27}", + &["\u{5f}\u{61}", "\u{27}"]), ("\u{5f}\u{308}\u{61}\u{27}", &["\u{5f}\u{308}\u{61}", + "\u{27}"]), ("\u{5f}\u{61}\u{27}\u{2060}", &["\u{5f}\u{61}", "\u{27}\u{2060}"]), ("\u{5f}\u{308}\u{61}\u{27}\u{2060}", &["\u{5f}\u{308}\u{61}", "\u{27}\u{2060}"]), ("\u{5f}\u{61}\u{2c}", &["\u{5f}\u{61}", "\u{2c}"]), ("\u{5f}\u{308}\u{61}\u{2c}", &["\u{5f}\u{308}\u{61}", "\u{2c}"]), ("\u{5f}\u{31}\u{3a}", &["\u{5f}\u{31}", "\u{3a}"]), @@ -639,9 +975,16 @@ ("\u{1f1e6}\u{308}\u{5d0}", &["\u{1f1e6}\u{308}", "\u{5d0}"]), ("\u{1f1e6}\u{22}", &["\u{1f1e6}", "\u{22}"]), ("\u{1f1e6}\u{308}\u{22}", &["\u{1f1e6}\u{308}", "\u{22}"]), ("\u{1f1e6}\u{27}", &["\u{1f1e6}", "\u{27}"]), ("\u{1f1e6}\u{308}\u{27}", - &["\u{1f1e6}\u{308}", "\u{27}"]), ("\u{1f1e6}\u{ad}", &["\u{1f1e6}\u{ad}"]), - ("\u{1f1e6}\u{308}\u{ad}", &["\u{1f1e6}\u{308}\u{ad}"]), ("\u{1f1e6}\u{300}", - &["\u{1f1e6}\u{300}"]), ("\u{1f1e6}\u{308}\u{300}", &["\u{1f1e6}\u{308}\u{300}"]), + &["\u{1f1e6}\u{308}", "\u{27}"]), ("\u{1f1e6}\u{261d}", &["\u{1f1e6}", "\u{261d}"]), + ("\u{1f1e6}\u{308}\u{261d}", &["\u{1f1e6}\u{308}", "\u{261d}"]), ("\u{1f1e6}\u{1f3fb}", + &["\u{1f1e6}", "\u{1f3fb}"]), ("\u{1f1e6}\u{308}\u{1f3fb}", &["\u{1f1e6}\u{308}", + "\u{1f3fb}"]), ("\u{1f1e6}\u{2764}", &["\u{1f1e6}", "\u{2764}"]), + ("\u{1f1e6}\u{308}\u{2764}", &["\u{1f1e6}\u{308}", "\u{2764}"]), ("\u{1f1e6}\u{1f466}", + &["\u{1f1e6}", "\u{1f466}"]), ("\u{1f1e6}\u{308}\u{1f466}", &["\u{1f1e6}\u{308}", + "\u{1f466}"]), ("\u{1f1e6}\u{ad}", &["\u{1f1e6}\u{ad}"]), ("\u{1f1e6}\u{308}\u{ad}", + &["\u{1f1e6}\u{308}\u{ad}"]), ("\u{1f1e6}\u{300}", &["\u{1f1e6}\u{300}"]), + ("\u{1f1e6}\u{308}\u{300}", &["\u{1f1e6}\u{308}\u{300}"]), ("\u{1f1e6}\u{200d}", + &["\u{1f1e6}\u{200d}"]), ("\u{1f1e6}\u{308}\u{200d}", &["\u{1f1e6}\u{308}\u{200d}"]), ("\u{1f1e6}\u{61}\u{2060}", &["\u{1f1e6}", "\u{61}\u{2060}"]), ("\u{1f1e6}\u{308}\u{61}\u{2060}", &["\u{1f1e6}\u{308}", "\u{61}\u{2060}"]), ("\u{1f1e6}\u{61}\u{3a}", &["\u{1f1e6}", "\u{61}", "\u{3a}"]), @@ -677,14 +1020,22 @@ &["\u{5d0}\u{308}", "\u{1f1e6}"]), ("\u{5d0}\u{5d0}", &["\u{5d0}\u{5d0}"]), ("\u{5d0}\u{308}\u{5d0}", &["\u{5d0}\u{308}\u{5d0}"]), ("\u{5d0}\u{22}", &["\u{5d0}", "\u{22}"]), ("\u{5d0}\u{308}\u{22}", &["\u{5d0}\u{308}", "\u{22}"]), ("\u{5d0}\u{27}", - &["\u{5d0}\u{27}"]), ("\u{5d0}\u{308}\u{27}", &["\u{5d0}\u{308}\u{27}"]), ("\u{5d0}\u{ad}", - &["\u{5d0}\u{ad}"]), ("\u{5d0}\u{308}\u{ad}", &["\u{5d0}\u{308}\u{ad}"]), ("\u{5d0}\u{300}", + &["\u{5d0}\u{27}"]), ("\u{5d0}\u{308}\u{27}", &["\u{5d0}\u{308}\u{27}"]), + ("\u{5d0}\u{261d}", &["\u{5d0}", "\u{261d}"]), ("\u{5d0}\u{308}\u{261d}", + &["\u{5d0}\u{308}", "\u{261d}"]), ("\u{5d0}\u{1f3fb}", &["\u{5d0}", "\u{1f3fb}"]), + ("\u{5d0}\u{308}\u{1f3fb}", &["\u{5d0}\u{308}", "\u{1f3fb}"]), ("\u{5d0}\u{2764}", + &["\u{5d0}", "\u{2764}"]), ("\u{5d0}\u{308}\u{2764}", &["\u{5d0}\u{308}", "\u{2764}"]), + ("\u{5d0}\u{1f466}", &["\u{5d0}", "\u{1f466}"]), ("\u{5d0}\u{308}\u{1f466}", + &["\u{5d0}\u{308}", "\u{1f466}"]), ("\u{5d0}\u{ad}", &["\u{5d0}\u{ad}"]), + ("\u{5d0}\u{308}\u{ad}", &["\u{5d0}\u{308}\u{ad}"]), ("\u{5d0}\u{300}", &["\u{5d0}\u{300}"]), ("\u{5d0}\u{308}\u{300}", &["\u{5d0}\u{308}\u{300}"]), - ("\u{5d0}\u{61}\u{2060}", &["\u{5d0}\u{61}\u{2060}"]), ("\u{5d0}\u{308}\u{61}\u{2060}", - &["\u{5d0}\u{308}\u{61}\u{2060}"]), ("\u{5d0}\u{61}\u{3a}", &["\u{5d0}\u{61}", "\u{3a}"]), - ("\u{5d0}\u{308}\u{61}\u{3a}", &["\u{5d0}\u{308}\u{61}", "\u{3a}"]), ("\u{5d0}\u{61}\u{27}", - &["\u{5d0}\u{61}", "\u{27}"]), ("\u{5d0}\u{308}\u{61}\u{27}", &["\u{5d0}\u{308}\u{61}", - "\u{27}"]), ("\u{5d0}\u{61}\u{27}\u{2060}", &["\u{5d0}\u{61}", "\u{27}\u{2060}"]), + ("\u{5d0}\u{200d}", &["\u{5d0}\u{200d}"]), ("\u{5d0}\u{308}\u{200d}", + &["\u{5d0}\u{308}\u{200d}"]), ("\u{5d0}\u{61}\u{2060}", &["\u{5d0}\u{61}\u{2060}"]), + ("\u{5d0}\u{308}\u{61}\u{2060}", &["\u{5d0}\u{308}\u{61}\u{2060}"]), ("\u{5d0}\u{61}\u{3a}", + &["\u{5d0}\u{61}", "\u{3a}"]), ("\u{5d0}\u{308}\u{61}\u{3a}", &["\u{5d0}\u{308}\u{61}", + "\u{3a}"]), ("\u{5d0}\u{61}\u{27}", &["\u{5d0}\u{61}", "\u{27}"]), + ("\u{5d0}\u{308}\u{61}\u{27}", &["\u{5d0}\u{308}\u{61}", "\u{27}"]), + ("\u{5d0}\u{61}\u{27}\u{2060}", &["\u{5d0}\u{61}", "\u{27}\u{2060}"]), ("\u{5d0}\u{308}\u{61}\u{27}\u{2060}", &["\u{5d0}\u{308}\u{61}", "\u{27}\u{2060}"]), ("\u{5d0}\u{61}\u{2c}", &["\u{5d0}\u{61}", "\u{2c}"]), ("\u{5d0}\u{308}\u{61}\u{2c}", &["\u{5d0}\u{308}\u{61}", "\u{2c}"]), ("\u{5d0}\u{31}\u{3a}", &["\u{5d0}\u{31}", "\u{3a}"]), @@ -711,9 +1062,15 @@ "\u{5d0}"]), ("\u{22}\u{308}\u{5d0}", &["\u{22}\u{308}", "\u{5d0}"]), ("\u{22}\u{22}", &["\u{22}", "\u{22}"]), ("\u{22}\u{308}\u{22}", &["\u{22}\u{308}", "\u{22}"]), ("\u{22}\u{27}", &["\u{22}", "\u{27}"]), ("\u{22}\u{308}\u{27}", &["\u{22}\u{308}", - "\u{27}"]), ("\u{22}\u{ad}", &["\u{22}\u{ad}"]), ("\u{22}\u{308}\u{ad}", - &["\u{22}\u{308}\u{ad}"]), ("\u{22}\u{300}", &["\u{22}\u{300}"]), ("\u{22}\u{308}\u{300}", - &["\u{22}\u{308}\u{300}"]), ("\u{22}\u{61}\u{2060}", &["\u{22}", "\u{61}\u{2060}"]), + "\u{27}"]), ("\u{22}\u{261d}", &["\u{22}", "\u{261d}"]), ("\u{22}\u{308}\u{261d}", + &["\u{22}\u{308}", "\u{261d}"]), ("\u{22}\u{1f3fb}", &["\u{22}", "\u{1f3fb}"]), + ("\u{22}\u{308}\u{1f3fb}", &["\u{22}\u{308}", "\u{1f3fb}"]), ("\u{22}\u{2764}", &["\u{22}", + "\u{2764}"]), ("\u{22}\u{308}\u{2764}", &["\u{22}\u{308}", "\u{2764}"]), ("\u{22}\u{1f466}", + &["\u{22}", "\u{1f466}"]), ("\u{22}\u{308}\u{1f466}", &["\u{22}\u{308}", "\u{1f466}"]), + ("\u{22}\u{ad}", &["\u{22}\u{ad}"]), ("\u{22}\u{308}\u{ad}", &["\u{22}\u{308}\u{ad}"]), + ("\u{22}\u{300}", &["\u{22}\u{300}"]), ("\u{22}\u{308}\u{300}", &["\u{22}\u{308}\u{300}"]), + ("\u{22}\u{200d}", &["\u{22}\u{200d}"]), ("\u{22}\u{308}\u{200d}", + &["\u{22}\u{308}\u{200d}"]), ("\u{22}\u{61}\u{2060}", &["\u{22}", "\u{61}\u{2060}"]), ("\u{22}\u{308}\u{61}\u{2060}", &["\u{22}\u{308}", "\u{61}\u{2060}"]), ("\u{22}\u{61}\u{3a}", &["\u{22}", "\u{61}", "\u{3a}"]), ("\u{22}\u{308}\u{61}\u{3a}", &["\u{22}\u{308}", "\u{61}", "\u{3a}"]), ("\u{22}\u{61}\u{27}", &["\u{22}", "\u{61}", @@ -745,9 +1102,15 @@ "\u{5d0}"]), ("\u{27}\u{308}\u{5d0}", &["\u{27}\u{308}", "\u{5d0}"]), ("\u{27}\u{22}", &["\u{27}", "\u{22}"]), ("\u{27}\u{308}\u{22}", &["\u{27}\u{308}", "\u{22}"]), ("\u{27}\u{27}", &["\u{27}", "\u{27}"]), ("\u{27}\u{308}\u{27}", &["\u{27}\u{308}", - "\u{27}"]), ("\u{27}\u{ad}", &["\u{27}\u{ad}"]), ("\u{27}\u{308}\u{ad}", - &["\u{27}\u{308}\u{ad}"]), ("\u{27}\u{300}", &["\u{27}\u{300}"]), ("\u{27}\u{308}\u{300}", - &["\u{27}\u{308}\u{300}"]), ("\u{27}\u{61}\u{2060}", &["\u{27}", "\u{61}\u{2060}"]), + "\u{27}"]), ("\u{27}\u{261d}", &["\u{27}", "\u{261d}"]), ("\u{27}\u{308}\u{261d}", + &["\u{27}\u{308}", "\u{261d}"]), ("\u{27}\u{1f3fb}", &["\u{27}", "\u{1f3fb}"]), + ("\u{27}\u{308}\u{1f3fb}", &["\u{27}\u{308}", "\u{1f3fb}"]), ("\u{27}\u{2764}", &["\u{27}", + "\u{2764}"]), ("\u{27}\u{308}\u{2764}", &["\u{27}\u{308}", "\u{2764}"]), ("\u{27}\u{1f466}", + &["\u{27}", "\u{1f466}"]), ("\u{27}\u{308}\u{1f466}", &["\u{27}\u{308}", "\u{1f466}"]), + ("\u{27}\u{ad}", &["\u{27}\u{ad}"]), ("\u{27}\u{308}\u{ad}", &["\u{27}\u{308}\u{ad}"]), + ("\u{27}\u{300}", &["\u{27}\u{300}"]), ("\u{27}\u{308}\u{300}", &["\u{27}\u{308}\u{300}"]), + ("\u{27}\u{200d}", &["\u{27}\u{200d}"]), ("\u{27}\u{308}\u{200d}", + &["\u{27}\u{308}\u{200d}"]), ("\u{27}\u{61}\u{2060}", &["\u{27}", "\u{61}\u{2060}"]), ("\u{27}\u{308}\u{61}\u{2060}", &["\u{27}\u{308}", "\u{61}\u{2060}"]), ("\u{27}\u{61}\u{3a}", &["\u{27}", "\u{61}", "\u{3a}"]), ("\u{27}\u{308}\u{61}\u{3a}", &["\u{27}\u{308}", "\u{61}", "\u{3a}"]), ("\u{27}\u{61}\u{27}", &["\u{27}", "\u{61}", @@ -762,6 +1125,183 @@ "\u{2c}"]), ("\u{27}\u{308}\u{31}\u{2c}", &["\u{27}\u{308}", "\u{31}", "\u{2c}"]), ("\u{27}\u{31}\u{2e}\u{2060}", &["\u{27}", "\u{31}", "\u{2e}\u{2060}"]), ("\u{27}\u{308}\u{31}\u{2e}\u{2060}", &["\u{27}\u{308}", "\u{31}", "\u{2e}\u{2060}"]), + ("\u{261d}\u{1}", &["\u{261d}", "\u{1}"]), ("\u{261d}\u{308}\u{1}", &["\u{261d}\u{308}", + "\u{1}"]), ("\u{261d}\u{d}", &["\u{261d}", "\u{d}"]), ("\u{261d}\u{308}\u{d}", + &["\u{261d}\u{308}", "\u{d}"]), ("\u{261d}\u{a}", &["\u{261d}", "\u{a}"]), + ("\u{261d}\u{308}\u{a}", &["\u{261d}\u{308}", "\u{a}"]), ("\u{261d}\u{b}", &["\u{261d}", + "\u{b}"]), ("\u{261d}\u{308}\u{b}", &["\u{261d}\u{308}", "\u{b}"]), ("\u{261d}\u{3031}", + &["\u{261d}", "\u{3031}"]), ("\u{261d}\u{308}\u{3031}", &["\u{261d}\u{308}", "\u{3031}"]), + ("\u{261d}\u{41}", &["\u{261d}", "\u{41}"]), ("\u{261d}\u{308}\u{41}", &["\u{261d}\u{308}", + "\u{41}"]), ("\u{261d}\u{3a}", &["\u{261d}", "\u{3a}"]), ("\u{261d}\u{308}\u{3a}", + &["\u{261d}\u{308}", "\u{3a}"]), ("\u{261d}\u{2c}", &["\u{261d}", "\u{2c}"]), + ("\u{261d}\u{308}\u{2c}", &["\u{261d}\u{308}", "\u{2c}"]), ("\u{261d}\u{2e}", &["\u{261d}", + "\u{2e}"]), ("\u{261d}\u{308}\u{2e}", &["\u{261d}\u{308}", "\u{2e}"]), ("\u{261d}\u{30}", + &["\u{261d}", "\u{30}"]), ("\u{261d}\u{308}\u{30}", &["\u{261d}\u{308}", "\u{30}"]), + ("\u{261d}\u{5f}", &["\u{261d}", "\u{5f}"]), ("\u{261d}\u{308}\u{5f}", &["\u{261d}\u{308}", + "\u{5f}"]), ("\u{261d}\u{1f1e6}", &["\u{261d}", "\u{1f1e6}"]), ("\u{261d}\u{308}\u{1f1e6}", + &["\u{261d}\u{308}", "\u{1f1e6}"]), ("\u{261d}\u{5d0}", &["\u{261d}", "\u{5d0}"]), + ("\u{261d}\u{308}\u{5d0}", &["\u{261d}\u{308}", "\u{5d0}"]), ("\u{261d}\u{22}", + &["\u{261d}", "\u{22}"]), ("\u{261d}\u{308}\u{22}", &["\u{261d}\u{308}", "\u{22}"]), + ("\u{261d}\u{27}", &["\u{261d}", "\u{27}"]), ("\u{261d}\u{308}\u{27}", &["\u{261d}\u{308}", + "\u{27}"]), ("\u{261d}\u{261d}", &["\u{261d}", "\u{261d}"]), ("\u{261d}\u{308}\u{261d}", + &["\u{261d}\u{308}", "\u{261d}"]), ("\u{261d}\u{1f3fb}", &["\u{261d}\u{1f3fb}"]), + ("\u{261d}\u{308}\u{1f3fb}", &["\u{261d}\u{308}\u{1f3fb}"]), ("\u{261d}\u{2764}", + &["\u{261d}", "\u{2764}"]), ("\u{261d}\u{308}\u{2764}", &["\u{261d}\u{308}", "\u{2764}"]), + ("\u{261d}\u{1f466}", &["\u{261d}", "\u{1f466}"]), ("\u{261d}\u{308}\u{1f466}", + &["\u{261d}\u{308}", "\u{1f466}"]), ("\u{261d}\u{ad}", &["\u{261d}\u{ad}"]), + ("\u{261d}\u{308}\u{ad}", &["\u{261d}\u{308}\u{ad}"]), ("\u{261d}\u{300}", + &["\u{261d}\u{300}"]), ("\u{261d}\u{308}\u{300}", &["\u{261d}\u{308}\u{300}"]), + ("\u{261d}\u{200d}", &["\u{261d}\u{200d}"]), ("\u{261d}\u{308}\u{200d}", + &["\u{261d}\u{308}\u{200d}"]), ("\u{261d}\u{61}\u{2060}", &["\u{261d}", "\u{61}\u{2060}"]), + ("\u{261d}\u{308}\u{61}\u{2060}", &["\u{261d}\u{308}", "\u{61}\u{2060}"]), + ("\u{261d}\u{61}\u{3a}", &["\u{261d}", "\u{61}", "\u{3a}"]), ("\u{261d}\u{308}\u{61}\u{3a}", + &["\u{261d}\u{308}", "\u{61}", "\u{3a}"]), ("\u{261d}\u{61}\u{27}", &["\u{261d}", "\u{61}", + "\u{27}"]), ("\u{261d}\u{308}\u{61}\u{27}", &["\u{261d}\u{308}", "\u{61}", "\u{27}"]), + ("\u{261d}\u{61}\u{27}\u{2060}", &["\u{261d}", "\u{61}", "\u{27}\u{2060}"]), + ("\u{261d}\u{308}\u{61}\u{27}\u{2060}", &["\u{261d}\u{308}", "\u{61}", "\u{27}\u{2060}"]), + ("\u{261d}\u{61}\u{2c}", &["\u{261d}", "\u{61}", "\u{2c}"]), ("\u{261d}\u{308}\u{61}\u{2c}", + &["\u{261d}\u{308}", "\u{61}", "\u{2c}"]), ("\u{261d}\u{31}\u{3a}", &["\u{261d}", "\u{31}", + "\u{3a}"]), ("\u{261d}\u{308}\u{31}\u{3a}", &["\u{261d}\u{308}", "\u{31}", "\u{3a}"]), + ("\u{261d}\u{31}\u{27}", &["\u{261d}", "\u{31}", "\u{27}"]), ("\u{261d}\u{308}\u{31}\u{27}", + &["\u{261d}\u{308}", "\u{31}", "\u{27}"]), ("\u{261d}\u{31}\u{2c}", &["\u{261d}", "\u{31}", + "\u{2c}"]), ("\u{261d}\u{308}\u{31}\u{2c}", &["\u{261d}\u{308}", "\u{31}", "\u{2c}"]), + ("\u{261d}\u{31}\u{2e}\u{2060}", &["\u{261d}", "\u{31}", "\u{2e}\u{2060}"]), + ("\u{261d}\u{308}\u{31}\u{2e}\u{2060}", &["\u{261d}\u{308}", "\u{31}", "\u{2e}\u{2060}"]), + ("\u{1f3fb}\u{1}", &["\u{1f3fb}", "\u{1}"]), ("\u{1f3fb}\u{308}\u{1}", &["\u{1f3fb}\u{308}", + "\u{1}"]), ("\u{1f3fb}\u{d}", &["\u{1f3fb}", "\u{d}"]), ("\u{1f3fb}\u{308}\u{d}", + &["\u{1f3fb}\u{308}", "\u{d}"]), ("\u{1f3fb}\u{a}", &["\u{1f3fb}", "\u{a}"]), + ("\u{1f3fb}\u{308}\u{a}", &["\u{1f3fb}\u{308}", "\u{a}"]), ("\u{1f3fb}\u{b}", &["\u{1f3fb}", + "\u{b}"]), ("\u{1f3fb}\u{308}\u{b}", &["\u{1f3fb}\u{308}", "\u{b}"]), ("\u{1f3fb}\u{3031}", + &["\u{1f3fb}", "\u{3031}"]), ("\u{1f3fb}\u{308}\u{3031}", &["\u{1f3fb}\u{308}", + "\u{3031}"]), ("\u{1f3fb}\u{41}", &["\u{1f3fb}", "\u{41}"]), ("\u{1f3fb}\u{308}\u{41}", + &["\u{1f3fb}\u{308}", "\u{41}"]), ("\u{1f3fb}\u{3a}", &["\u{1f3fb}", "\u{3a}"]), + ("\u{1f3fb}\u{308}\u{3a}", &["\u{1f3fb}\u{308}", "\u{3a}"]), ("\u{1f3fb}\u{2c}", + &["\u{1f3fb}", "\u{2c}"]), ("\u{1f3fb}\u{308}\u{2c}", &["\u{1f3fb}\u{308}", "\u{2c}"]), + ("\u{1f3fb}\u{2e}", &["\u{1f3fb}", "\u{2e}"]), ("\u{1f3fb}\u{308}\u{2e}", + &["\u{1f3fb}\u{308}", "\u{2e}"]), ("\u{1f3fb}\u{30}", &["\u{1f3fb}", "\u{30}"]), + ("\u{1f3fb}\u{308}\u{30}", &["\u{1f3fb}\u{308}", "\u{30}"]), ("\u{1f3fb}\u{5f}", + &["\u{1f3fb}", "\u{5f}"]), ("\u{1f3fb}\u{308}\u{5f}", &["\u{1f3fb}\u{308}", "\u{5f}"]), + ("\u{1f3fb}\u{1f1e6}", &["\u{1f3fb}", "\u{1f1e6}"]), ("\u{1f3fb}\u{308}\u{1f1e6}", + &["\u{1f3fb}\u{308}", "\u{1f1e6}"]), ("\u{1f3fb}\u{5d0}", &["\u{1f3fb}", "\u{5d0}"]), + ("\u{1f3fb}\u{308}\u{5d0}", &["\u{1f3fb}\u{308}", "\u{5d0}"]), ("\u{1f3fb}\u{22}", + &["\u{1f3fb}", "\u{22}"]), ("\u{1f3fb}\u{308}\u{22}", &["\u{1f3fb}\u{308}", "\u{22}"]), + ("\u{1f3fb}\u{27}", &["\u{1f3fb}", "\u{27}"]), ("\u{1f3fb}\u{308}\u{27}", + &["\u{1f3fb}\u{308}", "\u{27}"]), ("\u{1f3fb}\u{261d}", &["\u{1f3fb}", "\u{261d}"]), + ("\u{1f3fb}\u{308}\u{261d}", &["\u{1f3fb}\u{308}", "\u{261d}"]), ("\u{1f3fb}\u{1f3fb}", + &["\u{1f3fb}", "\u{1f3fb}"]), ("\u{1f3fb}\u{308}\u{1f3fb}", &["\u{1f3fb}\u{308}", + "\u{1f3fb}"]), ("\u{1f3fb}\u{2764}", &["\u{1f3fb}", "\u{2764}"]), + ("\u{1f3fb}\u{308}\u{2764}", &["\u{1f3fb}\u{308}", "\u{2764}"]), ("\u{1f3fb}\u{1f466}", + &["\u{1f3fb}", "\u{1f466}"]), ("\u{1f3fb}\u{308}\u{1f466}", &["\u{1f3fb}\u{308}", + "\u{1f466}"]), ("\u{1f3fb}\u{ad}", &["\u{1f3fb}\u{ad}"]), ("\u{1f3fb}\u{308}\u{ad}", + &["\u{1f3fb}\u{308}\u{ad}"]), ("\u{1f3fb}\u{300}", &["\u{1f3fb}\u{300}"]), + ("\u{1f3fb}\u{308}\u{300}", &["\u{1f3fb}\u{308}\u{300}"]), ("\u{1f3fb}\u{200d}", + &["\u{1f3fb}\u{200d}"]), ("\u{1f3fb}\u{308}\u{200d}", &["\u{1f3fb}\u{308}\u{200d}"]), + ("\u{1f3fb}\u{61}\u{2060}", &["\u{1f3fb}", "\u{61}\u{2060}"]), + ("\u{1f3fb}\u{308}\u{61}\u{2060}", &["\u{1f3fb}\u{308}", "\u{61}\u{2060}"]), + ("\u{1f3fb}\u{61}\u{3a}", &["\u{1f3fb}", "\u{61}", "\u{3a}"]), + ("\u{1f3fb}\u{308}\u{61}\u{3a}", &["\u{1f3fb}\u{308}", "\u{61}", "\u{3a}"]), + ("\u{1f3fb}\u{61}\u{27}", &["\u{1f3fb}", "\u{61}", "\u{27}"]), + ("\u{1f3fb}\u{308}\u{61}\u{27}", &["\u{1f3fb}\u{308}", "\u{61}", "\u{27}"]), + ("\u{1f3fb}\u{61}\u{27}\u{2060}", &["\u{1f3fb}", "\u{61}", "\u{27}\u{2060}"]), + ("\u{1f3fb}\u{308}\u{61}\u{27}\u{2060}", &["\u{1f3fb}\u{308}", "\u{61}", "\u{27}\u{2060}"]), + ("\u{1f3fb}\u{61}\u{2c}", &["\u{1f3fb}", "\u{61}", "\u{2c}"]), + ("\u{1f3fb}\u{308}\u{61}\u{2c}", &["\u{1f3fb}\u{308}", "\u{61}", "\u{2c}"]), + ("\u{1f3fb}\u{31}\u{3a}", &["\u{1f3fb}", "\u{31}", "\u{3a}"]), + ("\u{1f3fb}\u{308}\u{31}\u{3a}", &["\u{1f3fb}\u{308}", "\u{31}", "\u{3a}"]), + ("\u{1f3fb}\u{31}\u{27}", &["\u{1f3fb}", "\u{31}", "\u{27}"]), + ("\u{1f3fb}\u{308}\u{31}\u{27}", &["\u{1f3fb}\u{308}", "\u{31}", "\u{27}"]), + ("\u{1f3fb}\u{31}\u{2c}", &["\u{1f3fb}", "\u{31}", "\u{2c}"]), + ("\u{1f3fb}\u{308}\u{31}\u{2c}", &["\u{1f3fb}\u{308}", "\u{31}", "\u{2c}"]), + ("\u{1f3fb}\u{31}\u{2e}\u{2060}", &["\u{1f3fb}", "\u{31}", "\u{2e}\u{2060}"]), + ("\u{1f3fb}\u{308}\u{31}\u{2e}\u{2060}", &["\u{1f3fb}\u{308}", "\u{31}", "\u{2e}\u{2060}"]), + ("\u{2764}\u{1}", &["\u{2764}", "\u{1}"]), ("\u{2764}\u{308}\u{1}", &["\u{2764}\u{308}", + "\u{1}"]), ("\u{2764}\u{d}", &["\u{2764}", "\u{d}"]), ("\u{2764}\u{308}\u{d}", + &["\u{2764}\u{308}", "\u{d}"]), ("\u{2764}\u{a}", &["\u{2764}", "\u{a}"]), + ("\u{2764}\u{308}\u{a}", &["\u{2764}\u{308}", "\u{a}"]), ("\u{2764}\u{b}", &["\u{2764}", + "\u{b}"]), ("\u{2764}\u{308}\u{b}", &["\u{2764}\u{308}", "\u{b}"]), ("\u{2764}\u{3031}", + &["\u{2764}", "\u{3031}"]), ("\u{2764}\u{308}\u{3031}", &["\u{2764}\u{308}", "\u{3031}"]), + ("\u{2764}\u{41}", &["\u{2764}", "\u{41}"]), ("\u{2764}\u{308}\u{41}", &["\u{2764}\u{308}", + "\u{41}"]), ("\u{2764}\u{3a}", &["\u{2764}", "\u{3a}"]), ("\u{2764}\u{308}\u{3a}", + &["\u{2764}\u{308}", "\u{3a}"]), ("\u{2764}\u{2c}", &["\u{2764}", "\u{2c}"]), + ("\u{2764}\u{308}\u{2c}", &["\u{2764}\u{308}", "\u{2c}"]), ("\u{2764}\u{2e}", &["\u{2764}", + "\u{2e}"]), ("\u{2764}\u{308}\u{2e}", &["\u{2764}\u{308}", "\u{2e}"]), ("\u{2764}\u{30}", + &["\u{2764}", "\u{30}"]), ("\u{2764}\u{308}\u{30}", &["\u{2764}\u{308}", "\u{30}"]), + ("\u{2764}\u{5f}", &["\u{2764}", "\u{5f}"]), ("\u{2764}\u{308}\u{5f}", &["\u{2764}\u{308}", + "\u{5f}"]), ("\u{2764}\u{1f1e6}", &["\u{2764}", "\u{1f1e6}"]), ("\u{2764}\u{308}\u{1f1e6}", + &["\u{2764}\u{308}", "\u{1f1e6}"]), ("\u{2764}\u{5d0}", &["\u{2764}", "\u{5d0}"]), + ("\u{2764}\u{308}\u{5d0}", &["\u{2764}\u{308}", "\u{5d0}"]), ("\u{2764}\u{22}", + &["\u{2764}", "\u{22}"]), ("\u{2764}\u{308}\u{22}", &["\u{2764}\u{308}", "\u{22}"]), + ("\u{2764}\u{27}", &["\u{2764}", "\u{27}"]), ("\u{2764}\u{308}\u{27}", &["\u{2764}\u{308}", + "\u{27}"]), ("\u{2764}\u{261d}", &["\u{2764}", "\u{261d}"]), ("\u{2764}\u{308}\u{261d}", + &["\u{2764}\u{308}", "\u{261d}"]), ("\u{2764}\u{1f3fb}", &["\u{2764}", "\u{1f3fb}"]), + ("\u{2764}\u{308}\u{1f3fb}", &["\u{2764}\u{308}", "\u{1f3fb}"]), ("\u{2764}\u{2764}", + &["\u{2764}", "\u{2764}"]), ("\u{2764}\u{308}\u{2764}", &["\u{2764}\u{308}", "\u{2764}"]), + ("\u{2764}\u{1f466}", &["\u{2764}", "\u{1f466}"]), ("\u{2764}\u{308}\u{1f466}", + &["\u{2764}\u{308}", "\u{1f466}"]), ("\u{2764}\u{ad}", &["\u{2764}\u{ad}"]), + ("\u{2764}\u{308}\u{ad}", &["\u{2764}\u{308}\u{ad}"]), ("\u{2764}\u{300}", + &["\u{2764}\u{300}"]), ("\u{2764}\u{308}\u{300}", &["\u{2764}\u{308}\u{300}"]), + ("\u{2764}\u{200d}", &["\u{2764}\u{200d}"]), ("\u{2764}\u{308}\u{200d}", + &["\u{2764}\u{308}\u{200d}"]), ("\u{2764}\u{61}\u{2060}", &["\u{2764}", "\u{61}\u{2060}"]), + ("\u{2764}\u{308}\u{61}\u{2060}", &["\u{2764}\u{308}", "\u{61}\u{2060}"]), + ("\u{2764}\u{61}\u{3a}", &["\u{2764}", "\u{61}", "\u{3a}"]), ("\u{2764}\u{308}\u{61}\u{3a}", + &["\u{2764}\u{308}", "\u{61}", "\u{3a}"]), ("\u{2764}\u{61}\u{27}", &["\u{2764}", "\u{61}", + "\u{27}"]), ("\u{2764}\u{308}\u{61}\u{27}", &["\u{2764}\u{308}", "\u{61}", "\u{27}"]), + ("\u{2764}\u{61}\u{27}\u{2060}", &["\u{2764}", "\u{61}", "\u{27}\u{2060}"]), + ("\u{2764}\u{308}\u{61}\u{27}\u{2060}", &["\u{2764}\u{308}", "\u{61}", "\u{27}\u{2060}"]), + ("\u{2764}\u{61}\u{2c}", &["\u{2764}", "\u{61}", "\u{2c}"]), ("\u{2764}\u{308}\u{61}\u{2c}", + &["\u{2764}\u{308}", "\u{61}", "\u{2c}"]), ("\u{2764}\u{31}\u{3a}", &["\u{2764}", "\u{31}", + "\u{3a}"]), ("\u{2764}\u{308}\u{31}\u{3a}", &["\u{2764}\u{308}", "\u{31}", "\u{3a}"]), + ("\u{2764}\u{31}\u{27}", &["\u{2764}", "\u{31}", "\u{27}"]), ("\u{2764}\u{308}\u{31}\u{27}", + &["\u{2764}\u{308}", "\u{31}", "\u{27}"]), ("\u{2764}\u{31}\u{2c}", &["\u{2764}", "\u{31}", + "\u{2c}"]), ("\u{2764}\u{308}\u{31}\u{2c}", &["\u{2764}\u{308}", "\u{31}", "\u{2c}"]), + ("\u{2764}\u{31}\u{2e}\u{2060}", &["\u{2764}", "\u{31}", "\u{2e}\u{2060}"]), + ("\u{2764}\u{308}\u{31}\u{2e}\u{2060}", &["\u{2764}\u{308}", "\u{31}", "\u{2e}\u{2060}"]), + ("\u{1f466}\u{1}", &["\u{1f466}", "\u{1}"]), ("\u{1f466}\u{308}\u{1}", &["\u{1f466}\u{308}", + "\u{1}"]), ("\u{1f466}\u{d}", &["\u{1f466}", "\u{d}"]), ("\u{1f466}\u{308}\u{d}", + &["\u{1f466}\u{308}", "\u{d}"]), ("\u{1f466}\u{a}", &["\u{1f466}", "\u{a}"]), + ("\u{1f466}\u{308}\u{a}", &["\u{1f466}\u{308}", "\u{a}"]), ("\u{1f466}\u{b}", &["\u{1f466}", + "\u{b}"]), ("\u{1f466}\u{308}\u{b}", &["\u{1f466}\u{308}", "\u{b}"]), ("\u{1f466}\u{3031}", + &["\u{1f466}", "\u{3031}"]), ("\u{1f466}\u{308}\u{3031}", &["\u{1f466}\u{308}", + "\u{3031}"]), ("\u{1f466}\u{41}", &["\u{1f466}", "\u{41}"]), ("\u{1f466}\u{308}\u{41}", + &["\u{1f466}\u{308}", "\u{41}"]), ("\u{1f466}\u{3a}", &["\u{1f466}", "\u{3a}"]), + ("\u{1f466}\u{308}\u{3a}", &["\u{1f466}\u{308}", "\u{3a}"]), ("\u{1f466}\u{2c}", + &["\u{1f466}", "\u{2c}"]), ("\u{1f466}\u{308}\u{2c}", &["\u{1f466}\u{308}", "\u{2c}"]), + ("\u{1f466}\u{2e}", &["\u{1f466}", "\u{2e}"]), ("\u{1f466}\u{308}\u{2e}", + &["\u{1f466}\u{308}", "\u{2e}"]), ("\u{1f466}\u{30}", &["\u{1f466}", "\u{30}"]), + ("\u{1f466}\u{308}\u{30}", &["\u{1f466}\u{308}", "\u{30}"]), ("\u{1f466}\u{5f}", + &["\u{1f466}", "\u{5f}"]), ("\u{1f466}\u{308}\u{5f}", &["\u{1f466}\u{308}", "\u{5f}"]), + ("\u{1f466}\u{1f1e6}", &["\u{1f466}", "\u{1f1e6}"]), ("\u{1f466}\u{308}\u{1f1e6}", + &["\u{1f466}\u{308}", "\u{1f1e6}"]), ("\u{1f466}\u{5d0}", &["\u{1f466}", "\u{5d0}"]), + ("\u{1f466}\u{308}\u{5d0}", &["\u{1f466}\u{308}", "\u{5d0}"]), ("\u{1f466}\u{22}", + &["\u{1f466}", "\u{22}"]), ("\u{1f466}\u{308}\u{22}", &["\u{1f466}\u{308}", "\u{22}"]), + ("\u{1f466}\u{27}", &["\u{1f466}", "\u{27}"]), ("\u{1f466}\u{308}\u{27}", + &["\u{1f466}\u{308}", "\u{27}"]), ("\u{1f466}\u{261d}", &["\u{1f466}", "\u{261d}"]), + ("\u{1f466}\u{308}\u{261d}", &["\u{1f466}\u{308}", "\u{261d}"]), ("\u{1f466}\u{1f3fb}", + &["\u{1f466}\u{1f3fb}"]), ("\u{1f466}\u{308}\u{1f3fb}", &["\u{1f466}\u{308}\u{1f3fb}"]), + ("\u{1f466}\u{2764}", &["\u{1f466}", "\u{2764}"]), ("\u{1f466}\u{308}\u{2764}", + &["\u{1f466}\u{308}", "\u{2764}"]), ("\u{1f466}\u{1f466}", &["\u{1f466}", "\u{1f466}"]), + ("\u{1f466}\u{308}\u{1f466}", &["\u{1f466}\u{308}", "\u{1f466}"]), ("\u{1f466}\u{ad}", + &["\u{1f466}\u{ad}"]), ("\u{1f466}\u{308}\u{ad}", &["\u{1f466}\u{308}\u{ad}"]), + ("\u{1f466}\u{300}", &["\u{1f466}\u{300}"]), ("\u{1f466}\u{308}\u{300}", + &["\u{1f466}\u{308}\u{300}"]), ("\u{1f466}\u{200d}", &["\u{1f466}\u{200d}"]), + ("\u{1f466}\u{308}\u{200d}", &["\u{1f466}\u{308}\u{200d}"]), ("\u{1f466}\u{61}\u{2060}", + &["\u{1f466}", "\u{61}\u{2060}"]), ("\u{1f466}\u{308}\u{61}\u{2060}", &["\u{1f466}\u{308}", + "\u{61}\u{2060}"]), ("\u{1f466}\u{61}\u{3a}", &["\u{1f466}", "\u{61}", "\u{3a}"]), + ("\u{1f466}\u{308}\u{61}\u{3a}", &["\u{1f466}\u{308}", "\u{61}", "\u{3a}"]), + ("\u{1f466}\u{61}\u{27}", &["\u{1f466}", "\u{61}", "\u{27}"]), + ("\u{1f466}\u{308}\u{61}\u{27}", &["\u{1f466}\u{308}", "\u{61}", "\u{27}"]), + ("\u{1f466}\u{61}\u{27}\u{2060}", &["\u{1f466}", "\u{61}", "\u{27}\u{2060}"]), + ("\u{1f466}\u{308}\u{61}\u{27}\u{2060}", &["\u{1f466}\u{308}", "\u{61}", "\u{27}\u{2060}"]), + ("\u{1f466}\u{61}\u{2c}", &["\u{1f466}", "\u{61}", "\u{2c}"]), + ("\u{1f466}\u{308}\u{61}\u{2c}", &["\u{1f466}\u{308}", "\u{61}", "\u{2c}"]), + ("\u{1f466}\u{31}\u{3a}", &["\u{1f466}", "\u{31}", "\u{3a}"]), + ("\u{1f466}\u{308}\u{31}\u{3a}", &["\u{1f466}\u{308}", "\u{31}", "\u{3a}"]), + ("\u{1f466}\u{31}\u{27}", &["\u{1f466}", "\u{31}", "\u{27}"]), + ("\u{1f466}\u{308}\u{31}\u{27}", &["\u{1f466}\u{308}", "\u{31}", "\u{27}"]), + ("\u{1f466}\u{31}\u{2c}", &["\u{1f466}", "\u{31}", "\u{2c}"]), + ("\u{1f466}\u{308}\u{31}\u{2c}", &["\u{1f466}\u{308}", "\u{31}", "\u{2c}"]), + ("\u{1f466}\u{31}\u{2e}\u{2060}", &["\u{1f466}", "\u{31}", "\u{2e}\u{2060}"]), + ("\u{1f466}\u{308}\u{31}\u{2e}\u{2060}", &["\u{1f466}\u{308}", "\u{31}", "\u{2e}\u{2060}"]), ("\u{ad}\u{1}", &["\u{ad}", "\u{1}"]), ("\u{ad}\u{308}\u{1}", &["\u{ad}\u{308}", "\u{1}"]), ("\u{ad}\u{d}", &["\u{ad}", "\u{d}"]), ("\u{ad}\u{308}\u{d}", &["\u{ad}\u{308}", "\u{d}"]), ("\u{ad}\u{a}", &["\u{ad}", "\u{a}"]), ("\u{ad}\u{308}\u{a}", &["\u{ad}\u{308}", "\u{a}"]), @@ -779,9 +1319,15 @@ "\u{5d0}"]), ("\u{ad}\u{308}\u{5d0}", &["\u{ad}\u{308}", "\u{5d0}"]), ("\u{ad}\u{22}", &["\u{ad}", "\u{22}"]), ("\u{ad}\u{308}\u{22}", &["\u{ad}\u{308}", "\u{22}"]), ("\u{ad}\u{27}", &["\u{ad}", "\u{27}"]), ("\u{ad}\u{308}\u{27}", &["\u{ad}\u{308}", - "\u{27}"]), ("\u{ad}\u{ad}", &["\u{ad}\u{ad}"]), ("\u{ad}\u{308}\u{ad}", - &["\u{ad}\u{308}\u{ad}"]), ("\u{ad}\u{300}", &["\u{ad}\u{300}"]), ("\u{ad}\u{308}\u{300}", - &["\u{ad}\u{308}\u{300}"]), ("\u{ad}\u{61}\u{2060}", &["\u{ad}", "\u{61}\u{2060}"]), + "\u{27}"]), ("\u{ad}\u{261d}", &["\u{ad}", "\u{261d}"]), ("\u{ad}\u{308}\u{261d}", + &["\u{ad}\u{308}", "\u{261d}"]), ("\u{ad}\u{1f3fb}", &["\u{ad}", "\u{1f3fb}"]), + ("\u{ad}\u{308}\u{1f3fb}", &["\u{ad}\u{308}", "\u{1f3fb}"]), ("\u{ad}\u{2764}", &["\u{ad}", + "\u{2764}"]), ("\u{ad}\u{308}\u{2764}", &["\u{ad}\u{308}", "\u{2764}"]), ("\u{ad}\u{1f466}", + &["\u{ad}", "\u{1f466}"]), ("\u{ad}\u{308}\u{1f466}", &["\u{ad}\u{308}", "\u{1f466}"]), + ("\u{ad}\u{ad}", &["\u{ad}\u{ad}"]), ("\u{ad}\u{308}\u{ad}", &["\u{ad}\u{308}\u{ad}"]), + ("\u{ad}\u{300}", &["\u{ad}\u{300}"]), ("\u{ad}\u{308}\u{300}", &["\u{ad}\u{308}\u{300}"]), + ("\u{ad}\u{200d}", &["\u{ad}\u{200d}"]), ("\u{ad}\u{308}\u{200d}", + &["\u{ad}\u{308}\u{200d}"]), ("\u{ad}\u{61}\u{2060}", &["\u{ad}", "\u{61}\u{2060}"]), ("\u{ad}\u{308}\u{61}\u{2060}", &["\u{ad}\u{308}", "\u{61}\u{2060}"]), ("\u{ad}\u{61}\u{3a}", &["\u{ad}", "\u{61}", "\u{3a}"]), ("\u{ad}\u{308}\u{61}\u{3a}", &["\u{ad}\u{308}", "\u{61}", "\u{3a}"]), ("\u{ad}\u{61}\u{27}", &["\u{ad}", "\u{61}", @@ -814,9 +1360,16 @@ ("\u{300}\u{308}\u{5d0}", &["\u{300}\u{308}", "\u{5d0}"]), ("\u{300}\u{22}", &["\u{300}", "\u{22}"]), ("\u{300}\u{308}\u{22}", &["\u{300}\u{308}", "\u{22}"]), ("\u{300}\u{27}", &["\u{300}", "\u{27}"]), ("\u{300}\u{308}\u{27}", &["\u{300}\u{308}", "\u{27}"]), - ("\u{300}\u{ad}", &["\u{300}\u{ad}"]), ("\u{300}\u{308}\u{ad}", &["\u{300}\u{308}\u{ad}"]), - ("\u{300}\u{300}", &["\u{300}\u{300}"]), ("\u{300}\u{308}\u{300}", - &["\u{300}\u{308}\u{300}"]), ("\u{300}\u{61}\u{2060}", &["\u{300}", "\u{61}\u{2060}"]), + ("\u{300}\u{261d}", &["\u{300}", "\u{261d}"]), ("\u{300}\u{308}\u{261d}", + &["\u{300}\u{308}", "\u{261d}"]), ("\u{300}\u{1f3fb}", &["\u{300}", "\u{1f3fb}"]), + ("\u{300}\u{308}\u{1f3fb}", &["\u{300}\u{308}", "\u{1f3fb}"]), ("\u{300}\u{2764}", + &["\u{300}", "\u{2764}"]), ("\u{300}\u{308}\u{2764}", &["\u{300}\u{308}", "\u{2764}"]), + ("\u{300}\u{1f466}", &["\u{300}", "\u{1f466}"]), ("\u{300}\u{308}\u{1f466}", + &["\u{300}\u{308}", "\u{1f466}"]), ("\u{300}\u{ad}", &["\u{300}\u{ad}"]), + ("\u{300}\u{308}\u{ad}", &["\u{300}\u{308}\u{ad}"]), ("\u{300}\u{300}", + &["\u{300}\u{300}"]), ("\u{300}\u{308}\u{300}", &["\u{300}\u{308}\u{300}"]), + ("\u{300}\u{200d}", &["\u{300}\u{200d}"]), ("\u{300}\u{308}\u{200d}", + &["\u{300}\u{308}\u{200d}"]), ("\u{300}\u{61}\u{2060}", &["\u{300}", "\u{61}\u{2060}"]), ("\u{300}\u{308}\u{61}\u{2060}", &["\u{300}\u{308}", "\u{61}\u{2060}"]), ("\u{300}\u{61}\u{3a}", &["\u{300}", "\u{61}", "\u{3a}"]), ("\u{300}\u{308}\u{61}\u{3a}", &["\u{300}\u{308}", "\u{61}", "\u{3a}"]), ("\u{300}\u{61}\u{27}", &["\u{300}", "\u{61}", @@ -831,6 +1384,48 @@ "\u{2c}"]), ("\u{300}\u{308}\u{31}\u{2c}", &["\u{300}\u{308}", "\u{31}", "\u{2c}"]), ("\u{300}\u{31}\u{2e}\u{2060}", &["\u{300}", "\u{31}", "\u{2e}\u{2060}"]), ("\u{300}\u{308}\u{31}\u{2e}\u{2060}", &["\u{300}\u{308}", "\u{31}", "\u{2e}\u{2060}"]), + ("\u{200d}\u{1}", &["\u{200d}", "\u{1}"]), ("\u{200d}\u{308}\u{1}", &["\u{200d}\u{308}", + "\u{1}"]), ("\u{200d}\u{d}", &["\u{200d}", "\u{d}"]), ("\u{200d}\u{308}\u{d}", + &["\u{200d}\u{308}", "\u{d}"]), ("\u{200d}\u{a}", &["\u{200d}", "\u{a}"]), + ("\u{200d}\u{308}\u{a}", &["\u{200d}\u{308}", "\u{a}"]), ("\u{200d}\u{b}", &["\u{200d}", + "\u{b}"]), ("\u{200d}\u{308}\u{b}", &["\u{200d}\u{308}", "\u{b}"]), ("\u{200d}\u{3031}", + &["\u{200d}", "\u{3031}"]), ("\u{200d}\u{308}\u{3031}", &["\u{200d}\u{308}", "\u{3031}"]), + ("\u{200d}\u{41}", &["\u{200d}", "\u{41}"]), ("\u{200d}\u{308}\u{41}", &["\u{200d}\u{308}", + "\u{41}"]), ("\u{200d}\u{3a}", &["\u{200d}", "\u{3a}"]), ("\u{200d}\u{308}\u{3a}", + &["\u{200d}\u{308}", "\u{3a}"]), ("\u{200d}\u{2c}", &["\u{200d}", "\u{2c}"]), + ("\u{200d}\u{308}\u{2c}", &["\u{200d}\u{308}", "\u{2c}"]), ("\u{200d}\u{2e}", &["\u{200d}", + "\u{2e}"]), ("\u{200d}\u{308}\u{2e}", &["\u{200d}\u{308}", "\u{2e}"]), ("\u{200d}\u{30}", + &["\u{200d}", "\u{30}"]), ("\u{200d}\u{308}\u{30}", &["\u{200d}\u{308}", "\u{30}"]), + ("\u{200d}\u{5f}", &["\u{200d}", "\u{5f}"]), ("\u{200d}\u{308}\u{5f}", &["\u{200d}\u{308}", + "\u{5f}"]), ("\u{200d}\u{1f1e6}", &["\u{200d}", "\u{1f1e6}"]), ("\u{200d}\u{308}\u{1f1e6}", + &["\u{200d}\u{308}", "\u{1f1e6}"]), ("\u{200d}\u{5d0}", &["\u{200d}", "\u{5d0}"]), + ("\u{200d}\u{308}\u{5d0}", &["\u{200d}\u{308}", "\u{5d0}"]), ("\u{200d}\u{22}", + &["\u{200d}", "\u{22}"]), ("\u{200d}\u{308}\u{22}", &["\u{200d}\u{308}", "\u{22}"]), + ("\u{200d}\u{27}", &["\u{200d}", "\u{27}"]), ("\u{200d}\u{308}\u{27}", &["\u{200d}\u{308}", + "\u{27}"]), ("\u{200d}\u{261d}", &["\u{200d}", "\u{261d}"]), ("\u{200d}\u{308}\u{261d}", + &["\u{200d}\u{308}", "\u{261d}"]), ("\u{200d}\u{1f3fb}", &["\u{200d}", "\u{1f3fb}"]), + ("\u{200d}\u{308}\u{1f3fb}", &["\u{200d}\u{308}", "\u{1f3fb}"]), ("\u{200d}\u{2764}", + &["\u{200d}\u{2764}"]), ("\u{200d}\u{308}\u{2764}", &["\u{200d}\u{308}", "\u{2764}"]), + ("\u{200d}\u{1f466}", &["\u{200d}\u{1f466}"]), ("\u{200d}\u{308}\u{1f466}", + &["\u{200d}\u{308}", "\u{1f466}"]), ("\u{200d}\u{ad}", &["\u{200d}\u{ad}"]), + ("\u{200d}\u{308}\u{ad}", &["\u{200d}\u{308}\u{ad}"]), ("\u{200d}\u{300}", + &["\u{200d}\u{300}"]), ("\u{200d}\u{308}\u{300}", &["\u{200d}\u{308}\u{300}"]), + ("\u{200d}\u{200d}", &["\u{200d}\u{200d}"]), ("\u{200d}\u{308}\u{200d}", + &["\u{200d}\u{308}\u{200d}"]), ("\u{200d}\u{61}\u{2060}", &["\u{200d}", "\u{61}\u{2060}"]), + ("\u{200d}\u{308}\u{61}\u{2060}", &["\u{200d}\u{308}", "\u{61}\u{2060}"]), + ("\u{200d}\u{61}\u{3a}", &["\u{200d}", "\u{61}", "\u{3a}"]), ("\u{200d}\u{308}\u{61}\u{3a}", + &["\u{200d}\u{308}", "\u{61}", "\u{3a}"]), ("\u{200d}\u{61}\u{27}", &["\u{200d}", "\u{61}", + "\u{27}"]), ("\u{200d}\u{308}\u{61}\u{27}", &["\u{200d}\u{308}", "\u{61}", "\u{27}"]), + ("\u{200d}\u{61}\u{27}\u{2060}", &["\u{200d}", "\u{61}", "\u{27}\u{2060}"]), + ("\u{200d}\u{308}\u{61}\u{27}\u{2060}", &["\u{200d}\u{308}", "\u{61}", "\u{27}\u{2060}"]), + ("\u{200d}\u{61}\u{2c}", &["\u{200d}", "\u{61}", "\u{2c}"]), ("\u{200d}\u{308}\u{61}\u{2c}", + &["\u{200d}\u{308}", "\u{61}", "\u{2c}"]), ("\u{200d}\u{31}\u{3a}", &["\u{200d}", "\u{31}", + "\u{3a}"]), ("\u{200d}\u{308}\u{31}\u{3a}", &["\u{200d}\u{308}", "\u{31}", "\u{3a}"]), + ("\u{200d}\u{31}\u{27}", &["\u{200d}", "\u{31}", "\u{27}"]), ("\u{200d}\u{308}\u{31}\u{27}", + &["\u{200d}\u{308}", "\u{31}", "\u{27}"]), ("\u{200d}\u{31}\u{2c}", &["\u{200d}", "\u{31}", + "\u{2c}"]), ("\u{200d}\u{308}\u{31}\u{2c}", &["\u{200d}\u{308}", "\u{31}", "\u{2c}"]), + ("\u{200d}\u{31}\u{2e}\u{2060}", &["\u{200d}", "\u{31}", "\u{2e}\u{2060}"]), + ("\u{200d}\u{308}\u{31}\u{2e}\u{2060}", &["\u{200d}\u{308}", "\u{31}", "\u{2e}\u{2060}"]), ("\u{61}\u{2060}\u{1}", &["\u{61}\u{2060}", "\u{1}"]), ("\u{61}\u{2060}\u{308}\u{1}", &["\u{61}\u{2060}\u{308}", "\u{1}"]), ("\u{61}\u{2060}\u{d}", &["\u{61}\u{2060}", "\u{d}"]), ("\u{61}\u{2060}\u{308}\u{d}", &["\u{61}\u{2060}\u{308}", "\u{d}"]), ("\u{61}\u{2060}\u{a}", @@ -854,10 +1449,19 @@ &["\u{61}\u{2060}\u{308}\u{5d0}"]), ("\u{61}\u{2060}\u{22}", &["\u{61}\u{2060}", "\u{22}"]), ("\u{61}\u{2060}\u{308}\u{22}", &["\u{61}\u{2060}\u{308}", "\u{22}"]), ("\u{61}\u{2060}\u{27}", &["\u{61}\u{2060}", "\u{27}"]), ("\u{61}\u{2060}\u{308}\u{27}", - &["\u{61}\u{2060}\u{308}", "\u{27}"]), ("\u{61}\u{2060}\u{ad}", &["\u{61}\u{2060}\u{ad}"]), - ("\u{61}\u{2060}\u{308}\u{ad}", &["\u{61}\u{2060}\u{308}\u{ad}"]), ("\u{61}\u{2060}\u{300}", - &["\u{61}\u{2060}\u{300}"]), ("\u{61}\u{2060}\u{308}\u{300}", - &["\u{61}\u{2060}\u{308}\u{300}"]), ("\u{61}\u{2060}\u{61}\u{2060}", + &["\u{61}\u{2060}\u{308}", "\u{27}"]), ("\u{61}\u{2060}\u{261d}", &["\u{61}\u{2060}", + "\u{261d}"]), ("\u{61}\u{2060}\u{308}\u{261d}", &["\u{61}\u{2060}\u{308}", "\u{261d}"]), + ("\u{61}\u{2060}\u{1f3fb}", &["\u{61}\u{2060}", "\u{1f3fb}"]), + ("\u{61}\u{2060}\u{308}\u{1f3fb}", &["\u{61}\u{2060}\u{308}", "\u{1f3fb}"]), + ("\u{61}\u{2060}\u{2764}", &["\u{61}\u{2060}", "\u{2764}"]), + ("\u{61}\u{2060}\u{308}\u{2764}", &["\u{61}\u{2060}\u{308}", "\u{2764}"]), + ("\u{61}\u{2060}\u{1f466}", &["\u{61}\u{2060}", "\u{1f466}"]), + ("\u{61}\u{2060}\u{308}\u{1f466}", &["\u{61}\u{2060}\u{308}", "\u{1f466}"]), + ("\u{61}\u{2060}\u{ad}", &["\u{61}\u{2060}\u{ad}"]), ("\u{61}\u{2060}\u{308}\u{ad}", + &["\u{61}\u{2060}\u{308}\u{ad}"]), ("\u{61}\u{2060}\u{300}", &["\u{61}\u{2060}\u{300}"]), + ("\u{61}\u{2060}\u{308}\u{300}", &["\u{61}\u{2060}\u{308}\u{300}"]), + ("\u{61}\u{2060}\u{200d}", &["\u{61}\u{2060}\u{200d}"]), ("\u{61}\u{2060}\u{308}\u{200d}", + &["\u{61}\u{2060}\u{308}\u{200d}"]), ("\u{61}\u{2060}\u{61}\u{2060}", &["\u{61}\u{2060}\u{61}\u{2060}"]), ("\u{61}\u{2060}\u{308}\u{61}\u{2060}", &["\u{61}\u{2060}\u{308}\u{61}\u{2060}"]), ("\u{61}\u{2060}\u{61}\u{3a}", &["\u{61}\u{2060}\u{61}", "\u{3a}"]), ("\u{61}\u{2060}\u{308}\u{61}\u{3a}", @@ -898,10 +1502,18 @@ &["\u{61}\u{3a}\u{308}\u{5d0}"]), ("\u{61}\u{3a}\u{22}", &["\u{61}", "\u{3a}", "\u{22}"]), ("\u{61}\u{3a}\u{308}\u{22}", &["\u{61}", "\u{3a}\u{308}", "\u{22}"]), ("\u{61}\u{3a}\u{27}", &["\u{61}", "\u{3a}", "\u{27}"]), ("\u{61}\u{3a}\u{308}\u{27}", - &["\u{61}", "\u{3a}\u{308}", "\u{27}"]), ("\u{61}\u{3a}\u{ad}", &["\u{61}", - "\u{3a}\u{ad}"]), ("\u{61}\u{3a}\u{308}\u{ad}", &["\u{61}", "\u{3a}\u{308}\u{ad}"]), - ("\u{61}\u{3a}\u{300}", &["\u{61}", "\u{3a}\u{300}"]), ("\u{61}\u{3a}\u{308}\u{300}", - &["\u{61}", "\u{3a}\u{308}\u{300}"]), ("\u{61}\u{3a}\u{61}\u{2060}", + &["\u{61}", "\u{3a}\u{308}", "\u{27}"]), ("\u{61}\u{3a}\u{261d}", &["\u{61}", "\u{3a}", + "\u{261d}"]), ("\u{61}\u{3a}\u{308}\u{261d}", &["\u{61}", "\u{3a}\u{308}", "\u{261d}"]), + ("\u{61}\u{3a}\u{1f3fb}", &["\u{61}", "\u{3a}", "\u{1f3fb}"]), + ("\u{61}\u{3a}\u{308}\u{1f3fb}", &["\u{61}", "\u{3a}\u{308}", "\u{1f3fb}"]), + ("\u{61}\u{3a}\u{2764}", &["\u{61}", "\u{3a}", "\u{2764}"]), ("\u{61}\u{3a}\u{308}\u{2764}", + &["\u{61}", "\u{3a}\u{308}", "\u{2764}"]), ("\u{61}\u{3a}\u{1f466}", &["\u{61}", "\u{3a}", + "\u{1f466}"]), ("\u{61}\u{3a}\u{308}\u{1f466}", &["\u{61}", "\u{3a}\u{308}", "\u{1f466}"]), + ("\u{61}\u{3a}\u{ad}", &["\u{61}", "\u{3a}\u{ad}"]), ("\u{61}\u{3a}\u{308}\u{ad}", + &["\u{61}", "\u{3a}\u{308}\u{ad}"]), ("\u{61}\u{3a}\u{300}", &["\u{61}", "\u{3a}\u{300}"]), + ("\u{61}\u{3a}\u{308}\u{300}", &["\u{61}", "\u{3a}\u{308}\u{300}"]), + ("\u{61}\u{3a}\u{200d}", &["\u{61}", "\u{3a}\u{200d}"]), ("\u{61}\u{3a}\u{308}\u{200d}", + &["\u{61}", "\u{3a}\u{308}\u{200d}"]), ("\u{61}\u{3a}\u{61}\u{2060}", &["\u{61}\u{3a}\u{61}\u{2060}"]), ("\u{61}\u{3a}\u{308}\u{61}\u{2060}", &["\u{61}\u{3a}\u{308}\u{61}\u{2060}"]), ("\u{61}\u{3a}\u{61}\u{3a}", &["\u{61}\u{3a}\u{61}", "\u{3a}"]), ("\u{61}\u{3a}\u{308}\u{61}\u{3a}", @@ -942,10 +1554,18 @@ &["\u{61}\u{27}\u{308}\u{5d0}"]), ("\u{61}\u{27}\u{22}", &["\u{61}", "\u{27}", "\u{22}"]), ("\u{61}\u{27}\u{308}\u{22}", &["\u{61}", "\u{27}\u{308}", "\u{22}"]), ("\u{61}\u{27}\u{27}", &["\u{61}", "\u{27}", "\u{27}"]), ("\u{61}\u{27}\u{308}\u{27}", - &["\u{61}", "\u{27}\u{308}", "\u{27}"]), ("\u{61}\u{27}\u{ad}", &["\u{61}", - "\u{27}\u{ad}"]), ("\u{61}\u{27}\u{308}\u{ad}", &["\u{61}", "\u{27}\u{308}\u{ad}"]), - ("\u{61}\u{27}\u{300}", &["\u{61}", "\u{27}\u{300}"]), ("\u{61}\u{27}\u{308}\u{300}", - &["\u{61}", "\u{27}\u{308}\u{300}"]), ("\u{61}\u{27}\u{61}\u{2060}", + &["\u{61}", "\u{27}\u{308}", "\u{27}"]), ("\u{61}\u{27}\u{261d}", &["\u{61}", "\u{27}", + "\u{261d}"]), ("\u{61}\u{27}\u{308}\u{261d}", &["\u{61}", "\u{27}\u{308}", "\u{261d}"]), + ("\u{61}\u{27}\u{1f3fb}", &["\u{61}", "\u{27}", "\u{1f3fb}"]), + ("\u{61}\u{27}\u{308}\u{1f3fb}", &["\u{61}", "\u{27}\u{308}", "\u{1f3fb}"]), + ("\u{61}\u{27}\u{2764}", &["\u{61}", "\u{27}", "\u{2764}"]), ("\u{61}\u{27}\u{308}\u{2764}", + &["\u{61}", "\u{27}\u{308}", "\u{2764}"]), ("\u{61}\u{27}\u{1f466}", &["\u{61}", "\u{27}", + "\u{1f466}"]), ("\u{61}\u{27}\u{308}\u{1f466}", &["\u{61}", "\u{27}\u{308}", "\u{1f466}"]), + ("\u{61}\u{27}\u{ad}", &["\u{61}", "\u{27}\u{ad}"]), ("\u{61}\u{27}\u{308}\u{ad}", + &["\u{61}", "\u{27}\u{308}\u{ad}"]), ("\u{61}\u{27}\u{300}", &["\u{61}", "\u{27}\u{300}"]), + ("\u{61}\u{27}\u{308}\u{300}", &["\u{61}", "\u{27}\u{308}\u{300}"]), + ("\u{61}\u{27}\u{200d}", &["\u{61}", "\u{27}\u{200d}"]), ("\u{61}\u{27}\u{308}\u{200d}", + &["\u{61}", "\u{27}\u{308}\u{200d}"]), ("\u{61}\u{27}\u{61}\u{2060}", &["\u{61}\u{27}\u{61}\u{2060}"]), ("\u{61}\u{27}\u{308}\u{61}\u{2060}", &["\u{61}\u{27}\u{308}\u{61}\u{2060}"]), ("\u{61}\u{27}\u{61}\u{3a}", &["\u{61}\u{27}\u{61}", "\u{3a}"]), ("\u{61}\u{27}\u{308}\u{61}\u{3a}", @@ -993,10 +1613,20 @@ ("\u{61}\u{27}\u{2060}\u{308}\u{22}", &["\u{61}", "\u{27}\u{2060}\u{308}", "\u{22}"]), ("\u{61}\u{27}\u{2060}\u{27}", &["\u{61}", "\u{27}\u{2060}", "\u{27}"]), ("\u{61}\u{27}\u{2060}\u{308}\u{27}", &["\u{61}", "\u{27}\u{2060}\u{308}", "\u{27}"]), + ("\u{61}\u{27}\u{2060}\u{261d}", &["\u{61}", "\u{27}\u{2060}", "\u{261d}"]), + ("\u{61}\u{27}\u{2060}\u{308}\u{261d}", &["\u{61}", "\u{27}\u{2060}\u{308}", "\u{261d}"]), + ("\u{61}\u{27}\u{2060}\u{1f3fb}", &["\u{61}", "\u{27}\u{2060}", "\u{1f3fb}"]), + ("\u{61}\u{27}\u{2060}\u{308}\u{1f3fb}", &["\u{61}", "\u{27}\u{2060}\u{308}", "\u{1f3fb}"]), + ("\u{61}\u{27}\u{2060}\u{2764}", &["\u{61}", "\u{27}\u{2060}", "\u{2764}"]), + ("\u{61}\u{27}\u{2060}\u{308}\u{2764}", &["\u{61}", "\u{27}\u{2060}\u{308}", "\u{2764}"]), + ("\u{61}\u{27}\u{2060}\u{1f466}", &["\u{61}", "\u{27}\u{2060}", "\u{1f466}"]), + ("\u{61}\u{27}\u{2060}\u{308}\u{1f466}", &["\u{61}", "\u{27}\u{2060}\u{308}", "\u{1f466}"]), ("\u{61}\u{27}\u{2060}\u{ad}", &["\u{61}", "\u{27}\u{2060}\u{ad}"]), ("\u{61}\u{27}\u{2060}\u{308}\u{ad}", &["\u{61}", "\u{27}\u{2060}\u{308}\u{ad}"]), ("\u{61}\u{27}\u{2060}\u{300}", &["\u{61}", "\u{27}\u{2060}\u{300}"]), ("\u{61}\u{27}\u{2060}\u{308}\u{300}", &["\u{61}", "\u{27}\u{2060}\u{308}\u{300}"]), + ("\u{61}\u{27}\u{2060}\u{200d}", &["\u{61}", "\u{27}\u{2060}\u{200d}"]), + ("\u{61}\u{27}\u{2060}\u{308}\u{200d}", &["\u{61}", "\u{27}\u{2060}\u{308}\u{200d}"]), ("\u{61}\u{27}\u{2060}\u{61}\u{2060}", &["\u{61}\u{27}\u{2060}\u{61}\u{2060}"]), ("\u{61}\u{27}\u{2060}\u{308}\u{61}\u{2060}", &["\u{61}\u{27}\u{2060}\u{308}\u{61}\u{2060}"]), ("\u{61}\u{27}\u{2060}\u{61}\u{3a}", @@ -1041,10 +1671,18 @@ &["\u{61}", "\u{2c}\u{308}", "\u{5d0}"]), ("\u{61}\u{2c}\u{22}", &["\u{61}", "\u{2c}", "\u{22}"]), ("\u{61}\u{2c}\u{308}\u{22}", &["\u{61}", "\u{2c}\u{308}", "\u{22}"]), ("\u{61}\u{2c}\u{27}", &["\u{61}", "\u{2c}", "\u{27}"]), ("\u{61}\u{2c}\u{308}\u{27}", - &["\u{61}", "\u{2c}\u{308}", "\u{27}"]), ("\u{61}\u{2c}\u{ad}", &["\u{61}", - "\u{2c}\u{ad}"]), ("\u{61}\u{2c}\u{308}\u{ad}", &["\u{61}", "\u{2c}\u{308}\u{ad}"]), - ("\u{61}\u{2c}\u{300}", &["\u{61}", "\u{2c}\u{300}"]), ("\u{61}\u{2c}\u{308}\u{300}", - &["\u{61}", "\u{2c}\u{308}\u{300}"]), ("\u{61}\u{2c}\u{61}\u{2060}", &["\u{61}", "\u{2c}", + &["\u{61}", "\u{2c}\u{308}", "\u{27}"]), ("\u{61}\u{2c}\u{261d}", &["\u{61}", "\u{2c}", + "\u{261d}"]), ("\u{61}\u{2c}\u{308}\u{261d}", &["\u{61}", "\u{2c}\u{308}", "\u{261d}"]), + ("\u{61}\u{2c}\u{1f3fb}", &["\u{61}", "\u{2c}", "\u{1f3fb}"]), + ("\u{61}\u{2c}\u{308}\u{1f3fb}", &["\u{61}", "\u{2c}\u{308}", "\u{1f3fb}"]), + ("\u{61}\u{2c}\u{2764}", &["\u{61}", "\u{2c}", "\u{2764}"]), ("\u{61}\u{2c}\u{308}\u{2764}", + &["\u{61}", "\u{2c}\u{308}", "\u{2764}"]), ("\u{61}\u{2c}\u{1f466}", &["\u{61}", "\u{2c}", + "\u{1f466}"]), ("\u{61}\u{2c}\u{308}\u{1f466}", &["\u{61}", "\u{2c}\u{308}", "\u{1f466}"]), + ("\u{61}\u{2c}\u{ad}", &["\u{61}", "\u{2c}\u{ad}"]), ("\u{61}\u{2c}\u{308}\u{ad}", + &["\u{61}", "\u{2c}\u{308}\u{ad}"]), ("\u{61}\u{2c}\u{300}", &["\u{61}", "\u{2c}\u{300}"]), + ("\u{61}\u{2c}\u{308}\u{300}", &["\u{61}", "\u{2c}\u{308}\u{300}"]), + ("\u{61}\u{2c}\u{200d}", &["\u{61}", "\u{2c}\u{200d}"]), ("\u{61}\u{2c}\u{308}\u{200d}", + &["\u{61}", "\u{2c}\u{308}\u{200d}"]), ("\u{61}\u{2c}\u{61}\u{2060}", &["\u{61}", "\u{2c}", "\u{61}\u{2060}"]), ("\u{61}\u{2c}\u{308}\u{61}\u{2060}", &["\u{61}", "\u{2c}\u{308}", "\u{61}\u{2060}"]), ("\u{61}\u{2c}\u{61}\u{3a}", &["\u{61}", "\u{2c}", "\u{61}", "\u{3a}"]), ("\u{61}\u{2c}\u{308}\u{61}\u{3a}", &["\u{61}", "\u{2c}\u{308}", "\u{61}", "\u{3a}"]), @@ -1085,10 +1723,18 @@ &["\u{31}", "\u{3a}\u{308}", "\u{5d0}"]), ("\u{31}\u{3a}\u{22}", &["\u{31}", "\u{3a}", "\u{22}"]), ("\u{31}\u{3a}\u{308}\u{22}", &["\u{31}", "\u{3a}\u{308}", "\u{22}"]), ("\u{31}\u{3a}\u{27}", &["\u{31}", "\u{3a}", "\u{27}"]), ("\u{31}\u{3a}\u{308}\u{27}", - &["\u{31}", "\u{3a}\u{308}", "\u{27}"]), ("\u{31}\u{3a}\u{ad}", &["\u{31}", - "\u{3a}\u{ad}"]), ("\u{31}\u{3a}\u{308}\u{ad}", &["\u{31}", "\u{3a}\u{308}\u{ad}"]), - ("\u{31}\u{3a}\u{300}", &["\u{31}", "\u{3a}\u{300}"]), ("\u{31}\u{3a}\u{308}\u{300}", - &["\u{31}", "\u{3a}\u{308}\u{300}"]), ("\u{31}\u{3a}\u{61}\u{2060}", &["\u{31}", "\u{3a}", + &["\u{31}", "\u{3a}\u{308}", "\u{27}"]), ("\u{31}\u{3a}\u{261d}", &["\u{31}", "\u{3a}", + "\u{261d}"]), ("\u{31}\u{3a}\u{308}\u{261d}", &["\u{31}", "\u{3a}\u{308}", "\u{261d}"]), + ("\u{31}\u{3a}\u{1f3fb}", &["\u{31}", "\u{3a}", "\u{1f3fb}"]), + ("\u{31}\u{3a}\u{308}\u{1f3fb}", &["\u{31}", "\u{3a}\u{308}", "\u{1f3fb}"]), + ("\u{31}\u{3a}\u{2764}", &["\u{31}", "\u{3a}", "\u{2764}"]), ("\u{31}\u{3a}\u{308}\u{2764}", + &["\u{31}", "\u{3a}\u{308}", "\u{2764}"]), ("\u{31}\u{3a}\u{1f466}", &["\u{31}", "\u{3a}", + "\u{1f466}"]), ("\u{31}\u{3a}\u{308}\u{1f466}", &["\u{31}", "\u{3a}\u{308}", "\u{1f466}"]), + ("\u{31}\u{3a}\u{ad}", &["\u{31}", "\u{3a}\u{ad}"]), ("\u{31}\u{3a}\u{308}\u{ad}", + &["\u{31}", "\u{3a}\u{308}\u{ad}"]), ("\u{31}\u{3a}\u{300}", &["\u{31}", "\u{3a}\u{300}"]), + ("\u{31}\u{3a}\u{308}\u{300}", &["\u{31}", "\u{3a}\u{308}\u{300}"]), + ("\u{31}\u{3a}\u{200d}", &["\u{31}", "\u{3a}\u{200d}"]), ("\u{31}\u{3a}\u{308}\u{200d}", + &["\u{31}", "\u{3a}\u{308}\u{200d}"]), ("\u{31}\u{3a}\u{61}\u{2060}", &["\u{31}", "\u{3a}", "\u{61}\u{2060}"]), ("\u{31}\u{3a}\u{308}\u{61}\u{2060}", &["\u{31}", "\u{3a}\u{308}", "\u{61}\u{2060}"]), ("\u{31}\u{3a}\u{61}\u{3a}", &["\u{31}", "\u{3a}", "\u{61}", "\u{3a}"]), ("\u{31}\u{3a}\u{308}\u{61}\u{3a}", &["\u{31}", "\u{3a}\u{308}", "\u{61}", "\u{3a}"]), @@ -1129,10 +1775,18 @@ &["\u{31}", "\u{27}\u{308}", "\u{5d0}"]), ("\u{31}\u{27}\u{22}", &["\u{31}", "\u{27}", "\u{22}"]), ("\u{31}\u{27}\u{308}\u{22}", &["\u{31}", "\u{27}\u{308}", "\u{22}"]), ("\u{31}\u{27}\u{27}", &["\u{31}", "\u{27}", "\u{27}"]), ("\u{31}\u{27}\u{308}\u{27}", - &["\u{31}", "\u{27}\u{308}", "\u{27}"]), ("\u{31}\u{27}\u{ad}", &["\u{31}", - "\u{27}\u{ad}"]), ("\u{31}\u{27}\u{308}\u{ad}", &["\u{31}", "\u{27}\u{308}\u{ad}"]), - ("\u{31}\u{27}\u{300}", &["\u{31}", "\u{27}\u{300}"]), ("\u{31}\u{27}\u{308}\u{300}", - &["\u{31}", "\u{27}\u{308}\u{300}"]), ("\u{31}\u{27}\u{61}\u{2060}", &["\u{31}", "\u{27}", + &["\u{31}", "\u{27}\u{308}", "\u{27}"]), ("\u{31}\u{27}\u{261d}", &["\u{31}", "\u{27}", + "\u{261d}"]), ("\u{31}\u{27}\u{308}\u{261d}", &["\u{31}", "\u{27}\u{308}", "\u{261d}"]), + ("\u{31}\u{27}\u{1f3fb}", &["\u{31}", "\u{27}", "\u{1f3fb}"]), + ("\u{31}\u{27}\u{308}\u{1f3fb}", &["\u{31}", "\u{27}\u{308}", "\u{1f3fb}"]), + ("\u{31}\u{27}\u{2764}", &["\u{31}", "\u{27}", "\u{2764}"]), ("\u{31}\u{27}\u{308}\u{2764}", + &["\u{31}", "\u{27}\u{308}", "\u{2764}"]), ("\u{31}\u{27}\u{1f466}", &["\u{31}", "\u{27}", + "\u{1f466}"]), ("\u{31}\u{27}\u{308}\u{1f466}", &["\u{31}", "\u{27}\u{308}", "\u{1f466}"]), + ("\u{31}\u{27}\u{ad}", &["\u{31}", "\u{27}\u{ad}"]), ("\u{31}\u{27}\u{308}\u{ad}", + &["\u{31}", "\u{27}\u{308}\u{ad}"]), ("\u{31}\u{27}\u{300}", &["\u{31}", "\u{27}\u{300}"]), + ("\u{31}\u{27}\u{308}\u{300}", &["\u{31}", "\u{27}\u{308}\u{300}"]), + ("\u{31}\u{27}\u{200d}", &["\u{31}", "\u{27}\u{200d}"]), ("\u{31}\u{27}\u{308}\u{200d}", + &["\u{31}", "\u{27}\u{308}\u{200d}"]), ("\u{31}\u{27}\u{61}\u{2060}", &["\u{31}", "\u{27}", "\u{61}\u{2060}"]), ("\u{31}\u{27}\u{308}\u{61}\u{2060}", &["\u{31}", "\u{27}\u{308}", "\u{61}\u{2060}"]), ("\u{31}\u{27}\u{61}\u{3a}", &["\u{31}", "\u{27}", "\u{61}", "\u{3a}"]), ("\u{31}\u{27}\u{308}\u{61}\u{3a}", &["\u{31}", "\u{27}\u{308}", "\u{61}", "\u{3a}"]), @@ -1173,10 +1827,18 @@ &["\u{31}", "\u{2c}\u{308}", "\u{5d0}"]), ("\u{31}\u{2c}\u{22}", &["\u{31}", "\u{2c}", "\u{22}"]), ("\u{31}\u{2c}\u{308}\u{22}", &["\u{31}", "\u{2c}\u{308}", "\u{22}"]), ("\u{31}\u{2c}\u{27}", &["\u{31}", "\u{2c}", "\u{27}"]), ("\u{31}\u{2c}\u{308}\u{27}", - &["\u{31}", "\u{2c}\u{308}", "\u{27}"]), ("\u{31}\u{2c}\u{ad}", &["\u{31}", - "\u{2c}\u{ad}"]), ("\u{31}\u{2c}\u{308}\u{ad}", &["\u{31}", "\u{2c}\u{308}\u{ad}"]), - ("\u{31}\u{2c}\u{300}", &["\u{31}", "\u{2c}\u{300}"]), ("\u{31}\u{2c}\u{308}\u{300}", - &["\u{31}", "\u{2c}\u{308}\u{300}"]), ("\u{31}\u{2c}\u{61}\u{2060}", &["\u{31}", "\u{2c}", + &["\u{31}", "\u{2c}\u{308}", "\u{27}"]), ("\u{31}\u{2c}\u{261d}", &["\u{31}", "\u{2c}", + "\u{261d}"]), ("\u{31}\u{2c}\u{308}\u{261d}", &["\u{31}", "\u{2c}\u{308}", "\u{261d}"]), + ("\u{31}\u{2c}\u{1f3fb}", &["\u{31}", "\u{2c}", "\u{1f3fb}"]), + ("\u{31}\u{2c}\u{308}\u{1f3fb}", &["\u{31}", "\u{2c}\u{308}", "\u{1f3fb}"]), + ("\u{31}\u{2c}\u{2764}", &["\u{31}", "\u{2c}", "\u{2764}"]), ("\u{31}\u{2c}\u{308}\u{2764}", + &["\u{31}", "\u{2c}\u{308}", "\u{2764}"]), ("\u{31}\u{2c}\u{1f466}", &["\u{31}", "\u{2c}", + "\u{1f466}"]), ("\u{31}\u{2c}\u{308}\u{1f466}", &["\u{31}", "\u{2c}\u{308}", "\u{1f466}"]), + ("\u{31}\u{2c}\u{ad}", &["\u{31}", "\u{2c}\u{ad}"]), ("\u{31}\u{2c}\u{308}\u{ad}", + &["\u{31}", "\u{2c}\u{308}\u{ad}"]), ("\u{31}\u{2c}\u{300}", &["\u{31}", "\u{2c}\u{300}"]), + ("\u{31}\u{2c}\u{308}\u{300}", &["\u{31}", "\u{2c}\u{308}\u{300}"]), + ("\u{31}\u{2c}\u{200d}", &["\u{31}", "\u{2c}\u{200d}"]), ("\u{31}\u{2c}\u{308}\u{200d}", + &["\u{31}", "\u{2c}\u{308}\u{200d}"]), ("\u{31}\u{2c}\u{61}\u{2060}", &["\u{31}", "\u{2c}", "\u{61}\u{2060}"]), ("\u{31}\u{2c}\u{308}\u{61}\u{2060}", &["\u{31}", "\u{2c}\u{308}", "\u{61}\u{2060}"]), ("\u{31}\u{2c}\u{61}\u{3a}", &["\u{31}", "\u{2c}", "\u{61}", "\u{3a}"]), ("\u{31}\u{2c}\u{308}\u{61}\u{3a}", &["\u{31}", "\u{2c}\u{308}", "\u{61}", "\u{3a}"]), @@ -1224,10 +1886,20 @@ ("\u{31}\u{2e}\u{2060}\u{308}\u{22}", &["\u{31}", "\u{2e}\u{2060}\u{308}", "\u{22}"]), ("\u{31}\u{2e}\u{2060}\u{27}", &["\u{31}", "\u{2e}\u{2060}", "\u{27}"]), ("\u{31}\u{2e}\u{2060}\u{308}\u{27}", &["\u{31}", "\u{2e}\u{2060}\u{308}", "\u{27}"]), + ("\u{31}\u{2e}\u{2060}\u{261d}", &["\u{31}", "\u{2e}\u{2060}", "\u{261d}"]), + ("\u{31}\u{2e}\u{2060}\u{308}\u{261d}", &["\u{31}", "\u{2e}\u{2060}\u{308}", "\u{261d}"]), + ("\u{31}\u{2e}\u{2060}\u{1f3fb}", &["\u{31}", "\u{2e}\u{2060}", "\u{1f3fb}"]), + ("\u{31}\u{2e}\u{2060}\u{308}\u{1f3fb}", &["\u{31}", "\u{2e}\u{2060}\u{308}", "\u{1f3fb}"]), + ("\u{31}\u{2e}\u{2060}\u{2764}", &["\u{31}", "\u{2e}\u{2060}", "\u{2764}"]), + ("\u{31}\u{2e}\u{2060}\u{308}\u{2764}", &["\u{31}", "\u{2e}\u{2060}\u{308}", "\u{2764}"]), + ("\u{31}\u{2e}\u{2060}\u{1f466}", &["\u{31}", "\u{2e}\u{2060}", "\u{1f466}"]), + ("\u{31}\u{2e}\u{2060}\u{308}\u{1f466}", &["\u{31}", "\u{2e}\u{2060}\u{308}", "\u{1f466}"]), ("\u{31}\u{2e}\u{2060}\u{ad}", &["\u{31}", "\u{2e}\u{2060}\u{ad}"]), ("\u{31}\u{2e}\u{2060}\u{308}\u{ad}", &["\u{31}", "\u{2e}\u{2060}\u{308}\u{ad}"]), ("\u{31}\u{2e}\u{2060}\u{300}", &["\u{31}", "\u{2e}\u{2060}\u{300}"]), ("\u{31}\u{2e}\u{2060}\u{308}\u{300}", &["\u{31}", "\u{2e}\u{2060}\u{308}\u{300}"]), + ("\u{31}\u{2e}\u{2060}\u{200d}", &["\u{31}", "\u{2e}\u{2060}\u{200d}"]), + ("\u{31}\u{2e}\u{2060}\u{308}\u{200d}", &["\u{31}", "\u{2e}\u{2060}\u{308}\u{200d}"]), ("\u{31}\u{2e}\u{2060}\u{61}\u{2060}", &["\u{31}", "\u{2e}\u{2060}", "\u{61}\u{2060}"]), ("\u{31}\u{2e}\u{2060}\u{308}\u{61}\u{2060}", &["\u{31}", "\u{2e}\u{2060}\u{308}", "\u{61}\u{2060}"]), ("\u{31}\u{2e}\u{2060}\u{61}\u{3a}", &["\u{31}", "\u{2e}\u{2060}", @@ -1248,49 +1920,31 @@ ("\u{31}\u{2e}\u{2060}\u{308}\u{31}\u{2c}", &["\u{31}\u{2e}\u{2060}\u{308}\u{31}", "\u{2c}"]), ("\u{31}\u{2e}\u{2060}\u{31}\u{2e}\u{2060}", &["\u{31}\u{2e}\u{2060}\u{31}", "\u{2e}\u{2060}"]), ("\u{31}\u{2e}\u{2060}\u{308}\u{31}\u{2e}\u{2060}", - &["\u{31}\u{2e}\u{2060}\u{308}\u{31}", "\u{2e}\u{2060}"]), - ("\u{63}\u{61}\u{6e}\u{27}\u{74}", &["\u{63}\u{61}\u{6e}\u{27}\u{74}"]), - ("\u{63}\u{61}\u{6e}\u{2019}\u{74}", &["\u{63}\u{61}\u{6e}\u{2019}\u{74}"]), - ("\u{61}\u{62}\u{ad}\u{62}\u{79}", &["\u{61}\u{62}\u{ad}\u{62}\u{79}"]), - ("\u{61}\u{24}\u{2d}\u{33}\u{34}\u{2c}\u{35}\u{36}\u{37}\u{2e}\u{31}\u{34}\u{25}\u{62}", - &["\u{61}", "\u{24}", "\u{2d}", "\u{33}\u{34}\u{2c}\u{35}\u{36}\u{37}\u{2e}\u{31}\u{34}", - "\u{25}", "\u{62}"]), ("\u{33}\u{61}", &["\u{33}\u{61}"]), ("\u{63}\u{2e}\u{64}", - &["\u{63}\u{2e}\u{64}"]), ("\u{43}\u{2e}\u{64}", &["\u{43}\u{2e}\u{64}"]), - ("\u{63}\u{2e}\u{44}", &["\u{63}\u{2e}\u{44}"]), ("\u{43}\u{2e}\u{44}", - &["\u{43}\u{2e}\u{44}"]), - ("\u{2060}\u{63}\u{2060}\u{61}\u{2060}\u{6e}\u{2060}\u{27}\u{2060}\u{74}\u{2060}\u{2060}", - &["\u{2060}", - "\u{63}\u{2060}\u{61}\u{2060}\u{6e}\u{2060}\u{27}\u{2060}\u{74}\u{2060}\u{2060}"]), - ("\u{2060}\u{63}\u{2060}\u{61}\u{2060}\u{6e}\u{2060}\u{2019}\u{2060}\u{74}\u{2060}\u{2060}", - &["\u{2060}", - "\u{63}\u{2060}\u{61}\u{2060}\u{6e}\u{2060}\u{2019}\u{2060}\u{74}\u{2060}\u{2060}"]), - ("\u{2060}\u{61}\u{2060}\u{62}\u{2060}\u{ad}\u{2060}\u{62}\u{2060}\u{79}\u{2060}\u{2060}", - &["\u{2060}", - "\u{61}\u{2060}\u{62}\u{2060}\u{ad}\u{2060}\u{62}\u{2060}\u{79}\u{2060}\u{2060}"]), - ("\u{2060}\u{61}\u{2060}\u{24}\u{2060}\u{2d}\u{2060}\u{33}\u{2060}\u{34}\u{2060}\u{2c}\u{2060}\u{35}\u{2060}\u{36}\u{2060}\u{37}\u{2060}\u{2e}\u{2060}\u{31}\u{2060}\u{34}\u{2060}\u{25}\u{2060}\u{62}\u{2060}\u{2060}", - &["\u{2060}", "\u{61}\u{2060}", "\u{24}\u{2060}", "\u{2d}\u{2060}", - "\u{33}\u{2060}\u{34}\u{2060}\u{2c}\u{2060}\u{35}\u{2060}\u{36}\u{2060}\u{37}\u{2060}\u{2e}\u{2060}\u{31}\u{2060}\u{34}\u{2060}", - "\u{25}\u{2060}", "\u{62}\u{2060}\u{2060}"]), - ("\u{2060}\u{33}\u{2060}\u{61}\u{2060}\u{2060}", &["\u{2060}", - "\u{33}\u{2060}\u{61}\u{2060}\u{2060}"]), - ("\u{2060}\u{63}\u{2060}\u{2e}\u{2060}\u{64}\u{2060}\u{2060}", &["\u{2060}", - "\u{63}\u{2060}\u{2e}\u{2060}\u{64}\u{2060}\u{2060}"]), - ("\u{2060}\u{43}\u{2060}\u{2e}\u{2060}\u{64}\u{2060}\u{2060}", &["\u{2060}", - "\u{43}\u{2060}\u{2e}\u{2060}\u{64}\u{2060}\u{2060}"]), - ("\u{2060}\u{63}\u{2060}\u{2e}\u{2060}\u{44}\u{2060}\u{2060}", &["\u{2060}", - "\u{63}\u{2060}\u{2e}\u{2060}\u{44}\u{2060}\u{2060}"]), - ("\u{2060}\u{43}\u{2060}\u{2e}\u{2060}\u{44}\u{2060}\u{2060}", &["\u{2060}", - "\u{43}\u{2060}\u{2e}\u{2060}\u{44}\u{2060}\u{2060}"]), ("\u{61}\u{1f1e6}\u{62}", - &["\u{61}", "\u{1f1e6}", "\u{62}"]), ("\u{1f1f7}\u{1f1fa}", &["\u{1f1f7}\u{1f1fa}"]), - ("\u{1f1f7}\u{1f1fa}\u{1f1f8}", &["\u{1f1f7}\u{1f1fa}\u{1f1f8}"]), - ("\u{1f1f7}\u{1f1fa}\u{1f1f8}\u{1f1ea}", &["\u{1f1f7}\u{1f1fa}\u{1f1f8}\u{1f1ea}"]), - ("\u{1f1f7}\u{1f1fa}\u{200b}\u{1f1f8}\u{1f1ea}", &["\u{1f1f7}\u{1f1fa}", "\u{200b}", - "\u{1f1f8}\u{1f1ea}"]), ("\u{5d0}\u{22}\u{5d0}", &["\u{5d0}\u{22}\u{5d0}"]), - ("\u{1f1e6}\u{1f1e7}\u{1f1e8}", &["\u{1f1e6}\u{1f1e7}\u{1f1e8}"]), - ("\u{1f1e6}\u{200d}\u{1f1e7}\u{1f1e8}", &["\u{1f1e6}\u{200d}\u{1f1e7}\u{1f1e8}"]), - ("\u{1f1e6}\u{1f1e7}\u{200d}\u{1f1e8}", &["\u{1f1e6}\u{1f1e7}\u{200d}\u{1f1e8}"]), + &["\u{31}\u{2e}\u{2060}\u{308}\u{31}", "\u{2e}\u{2060}"]), ("\u{d}\u{a}\u{61}\u{a}\u{308}", + &["\u{d}\u{a}", "\u{61}", "\u{a}", "\u{308}"]), ("\u{61}\u{308}", &["\u{61}\u{308}"]), ("\u{20}\u{200d}\u{646}", &["\u{20}\u{200d}", "\u{646}"]), ("\u{646}\u{200d}\u{20}", - &["\u{646}\u{200d}", "\u{20}"]), ("\u{31}\u{3a}\u{3a}\u{31}", &["\u{31}", "\u{3a}", + &["\u{646}\u{200d}", "\u{20}"]), ("\u{41}\u{41}\u{41}", &["\u{41}\u{41}\u{41}"]), + ("\u{41}\u{3a}\u{41}", &["\u{41}\u{3a}\u{41}"]), ("\u{41}\u{3a}\u{3a}\u{41}", &["\u{41}", + "\u{3a}", "\u{3a}", "\u{41}"]), ("\u{5d0}\u{27}", &["\u{5d0}\u{27}"]), + ("\u{5d0}\u{22}\u{5d0}", &["\u{5d0}\u{22}\u{5d0}"]), ("\u{41}\u{30}\u{30}\u{41}", + &["\u{41}\u{30}\u{30}\u{41}"]), ("\u{30}\u{2c}\u{30}", &["\u{30}\u{2c}\u{30}"]), + ("\u{30}\u{2c}\u{2c}\u{30}", &["\u{30}", "\u{2c}", "\u{2c}", "\u{30}"]), + ("\u{3031}\u{3031}", &["\u{3031}\u{3031}"]), ("\u{41}\u{5f}\u{30}\u{5f}\u{3031}\u{5f}", + &["\u{41}\u{5f}\u{30}\u{5f}\u{3031}\u{5f}"]), ("\u{41}\u{5f}\u{5f}\u{41}", + &["\u{41}\u{5f}\u{5f}\u{41}"]), ("\u{1f1e6}\u{1f1e7}\u{1f1e8}\u{62}", + &["\u{1f1e6}\u{1f1e7}", "\u{1f1e8}", "\u{62}"]), ("\u{61}\u{1f1e6}\u{1f1e7}\u{1f1e8}\u{62}", + &["\u{61}", "\u{1f1e6}\u{1f1e7}", "\u{1f1e8}", "\u{62}"]), + ("\u{61}\u{1f1e6}\u{1f1e7}\u{200d}\u{1f1e8}\u{62}", &["\u{61}", + "\u{1f1e6}\u{1f1e7}\u{200d}", "\u{1f1e8}", "\u{62}"]), + ("\u{61}\u{1f1e6}\u{200d}\u{1f1e7}\u{1f1e8}\u{62}", &["\u{61}", + "\u{1f1e6}\u{200d}\u{1f1e7}", "\u{1f1e8}", "\u{62}"]), + ("\u{61}\u{1f1e6}\u{1f1e7}\u{1f1e8}\u{1f1e9}\u{62}", &["\u{61}", "\u{1f1e6}\u{1f1e7}", + "\u{1f1e8}\u{1f1e9}", "\u{62}"]), ("\u{261d}\u{1f3fb}\u{261d}", &["\u{261d}\u{1f3fb}", + "\u{261d}"]), ("\u{1f466}\u{1f3fb}", &["\u{1f466}\u{1f3fb}"]), + ("\u{200d}\u{1f466}\u{1f3fb}", &["\u{200d}\u{1f466}\u{1f3fb}"]), ("\u{200d}\u{2764}", + &["\u{200d}\u{2764}"]), ("\u{200d}\u{1f466}", &["\u{200d}\u{1f466}"]), + ("\u{1f466}\u{1f466}", &["\u{1f466}", "\u{1f466}"]), ("\u{61}\u{308}\u{200d}\u{308}\u{62}", + &["\u{61}\u{308}\u{200d}\u{308}\u{62}"]), ("\u{31}\u{3a}\u{3a}\u{31}", &["\u{31}", "\u{3a}", "\u{3a}", "\u{31}"]), ("\u{31}\u{5f}\u{31}\u{3a}\u{3a}\u{31}", &["\u{31}\u{5f}\u{31}", "\u{3a}", "\u{3a}", "\u{31}"]), ("\u{31}\u{5f}\u{61}\u{3a}\u{3a}\u{31}", &["\u{31}\u{5f}\u{61}", "\u{3a}", "\u{3a}", "\u{31}"]), ("\u{31}\u{3a}\u{3a}\u{61}", diff --git a/src/word.rs b/src/word.rs index deccc61..8175805 100644 --- a/src/word.rs +++ b/src/word.rs @@ -72,7 +72,7 @@ impl<'a> DoubleEndedIterator for UWordBoundIndices<'a> { } // state machine for word boundary rules -#[derive(Clone,Copy,PartialEq,Eq)] +#[derive(Clone,Copy,PartialEq,Eq,Debug)] enum UWordBoundsState { Start, Letter, @@ -80,12 +80,14 @@ enum UWordBoundsState { Numeric, Katakana, ExtendNumLet, - Regional, + Regional(RegionalState), FormatExtend(FormatExtendType), + Zwj, + Emoji, } // subtypes for FormatExtend state in UWordBoundsState -#[derive(Clone,Copy,PartialEq,Eq)] +#[derive(Clone,Copy,PartialEq,Eq,Debug)] enum FormatExtendType { AcceptAny, AcceptNone, @@ -95,6 +97,13 @@ enum FormatExtendType { RequireNumeric, } +#[derive(Clone,Copy,PartialEq,Eq,Debug)] +enum RegionalState { + Half, + Full, + Unknown, +} + impl<'a> Iterator for UWordBounds<'a> { type Item = &'a str; @@ -120,9 +129,13 @@ impl<'a> Iterator for UWordBounds<'a> { let mut state = Start; let mut cat = wd::WC_Any; let mut savecat = wd::WC_Any; + + // Whether or not the previous category was ZWJ + // ZWJs get collapsed, so this handles precedence of WB3c over WB4 + let mut prev_zwj; for (curr, ch) in self.string.char_indices() { idx = curr; - + prev_zwj = cat == wd::WC_ZWJ; // if there's a category cached, grab it cat = match self.cat { None => wd::word_category(ch), @@ -131,17 +144,49 @@ impl<'a> Iterator for UWordBounds<'a> { take_cat = true; // handle rule WB4 - // just skip all format and extend chars + // just skip all format, extend, and zwj chars // note that Start is a special case: if there's a bunch of Format | Extend // characters at the beginning of a block of text, dump them out as one unit. // // (This is not obvious from the wording of UAX#29, but if you look at the // test cases http://www.unicode.org/Public/UNIDATA/auxiliary/WordBreakTest.txt // then the "correct" interpretation of WB4 becomes apparent.) - if state != Start && (cat == wd::WC_Extend || cat == wd::WC_Format) { - continue; + if state != Start { + match cat { + wd::WC_Extend | wd::WC_Format | wd::WC_ZWJ => { + continue + } + _ => {} + } } + // rule WB3c + // WB4 makes all ZWJs collapse into the previous state + // but you can still be in a Zwj state if you started with Zwj + // + // This means that Zwj + Extend will collapse into Zwj, which is wrong, + // since Extend has a boundary with following EBG/GAZ chars but ZWJ doesn't, + // and that rule (WB3c) has higher priority + // + // Additionally, Emoji_Base+ZWJ+(EBG/GAZ) will collapse into Emoji_Base+EBG/GAZ + // which won't have a boundary even though EB+ZWJ+GAZ should have a boundary. + // + // Thus, we separately keep track of whether or not the last character + // was a ZWJ. This is an additional bit of state tracked outside of the + // state enum; the state enum represents the last non-zwj state encountered. + // When prev_zwj is true, for the purposes of WB3c, we are in the Zwj state, + // however we are in the previous state for the purposes of all other rules. + if prev_zwj { + match cat { + wd::WC_Glue_After_Zwj => continue, + wd::WC_E_Base_GAZ => { + state = Emoji; + continue; + }, + _ => () + } + } + // Don't use `continue` in this match without updating `cat` state = match state { Start if cat == wd::WC_CR => { idx += match self.get_next_cat(idx) { @@ -156,19 +201,28 @@ impl<'a> Iterator for UWordBounds<'a> { wd::WC_Numeric => Numeric, // rule WB8, WB10, WB12, WB13a wd::WC_Katakana => Katakana, // rule WB13, WB13a wd::WC_ExtendNumLet => ExtendNumLet, // rule WB13a, WB13b - wd::WC_Regional_Indicator => Regional, // rule WB13c + wd::WC_Regional_Indicator => Regional(RegionalState::Half), // rule WB13c wd::WC_LF | wd::WC_Newline => break, // rule WB3a + wd::WC_ZWJ => Zwj, // rule WB3c + wd::WC_E_Base | wd::WC_E_Base_GAZ => Emoji, // rule WB14 _ => { if let Some(ncat) = self.get_next_cat(idx) { // rule WB4 - if ncat == wd::WC_Format || ncat == wd::WC_Extend { + if ncat == wd::WC_Format || ncat == wd::WC_Extend || ncat == wd::WC_ZWJ { state = FormatExtend(AcceptNone); self.cat = Some(ncat); continue; } } - break; // rule WB14 + break; // rule WB999 } }, + Zwj => { + // We already handle WB3c above. At this point, + // the current category is not GAZ or EBG, + // or the previous character was not actually a ZWJ + take_curr = false; + break; + } Letter | HLetter => match cat { wd::WC_ALetter => Letter, // rule WB5 wd::WC_Hebrew_Letter => HLetter, // rule WB5 @@ -226,8 +280,23 @@ impl<'a> Iterator for UWordBounds<'a> { break; } }, - Regional => match cat { - wd::WC_Regional_Indicator => Regional, // rule WB13c + Regional(RegionalState::Full) => { + // if it reaches here we've gone too far, + // a full flag can only compose with ZWJ/Extend/Format + // proceeding it. + take_curr = false; + break; + } + Regional(RegionalState::Half) => match cat { + wd::WC_Regional_Indicator => Regional(RegionalState::Full), // rule WB13c + _ => { + take_curr = false; + break; + } + }, + Regional(_) => unreachable!("RegionalState::Unknown should not occur on forward iteration"), + Emoji => match cat { // rule WB14 + wd::WC_E_Modifier => state, _ => { take_curr = false; break; @@ -291,6 +360,7 @@ impl<'a> DoubleEndedIterator for UWordBounds<'a> { let mut state = Start; let mut savestate = Start; let mut cat = wd::WC_Any; + for (curr, ch) in self.string.char_indices().rev() { previdx = idx; idx = curr; @@ -308,7 +378,10 @@ impl<'a> DoubleEndedIterator for UWordBounds<'a> { // Hebrew Letter immediately before it. // (2) Format and Extend char handling takes some gymnastics. - if cat == wd::WC_Extend || cat == wd::WC_Format { + if cat == wd::WC_Extend + || cat == wd::WC_Format + || (cat == wd::WC_ZWJ && state != Zwj) { // WB3c has more priority so we should not + // fold in that case if match state { FormatExtend(_) | Start => false, _ => true @@ -328,6 +401,7 @@ impl<'a> DoubleEndedIterator for UWordBounds<'a> { take_cat = false; } + // Don't use `continue` in this match without updating `catb` state = match state { Start | FormatExtend(AcceptAny) => match cat { wd::WC_ALetter => Letter, // rule WB5, WB7, WB10, WB13b @@ -335,12 +409,15 @@ impl<'a> DoubleEndedIterator for UWordBounds<'a> { wd::WC_Numeric => Numeric, // rule WB8, WB9, WB11, WB13b wd::WC_Katakana => Katakana, // rule WB13, WB13b wd::WC_ExtendNumLet => ExtendNumLet, // rule WB13a - wd::WC_Regional_Indicator => Regional, // rule WB13c - wd::WC_Extend | wd::WC_Format => FormatExtend(AcceptAny), // rule WB4 + wd::WC_Regional_Indicator => Regional(RegionalState::Unknown), // rule WB13c + wd::WC_Glue_After_Zwj | wd::WC_E_Base_GAZ => Zwj, // rule WB3c + // rule WB4: + wd::WC_Extend | wd::WC_Format | wd::WC_ZWJ => FormatExtend(AcceptAny), wd::WC_Single_Quote => { saveidx = idx; FormatExtend(AcceptQLetter) // rule WB7a }, + wd::WC_E_Modifier => Emoji, // rule WB14 wd::WC_CR | wd::WC_LF | wd::WC_Newline => { if state == Start { if cat == wd::WC_LF { @@ -354,7 +431,16 @@ impl<'a> DoubleEndedIterator for UWordBounds<'a> { } break; // rule WB3a }, - _ => break // rule WB14 + _ => break // rule WB999 + }, + Zwj => match cat { // rule WB3c + wd::WC_ZWJ => { + FormatExtend(AcceptAny) + } + _ => { + take_curr = false; + break; + } }, Letter | HLetter => match cat { wd::WC_ALetter => Letter, // rule WB5 @@ -407,8 +493,38 @@ impl<'a> DoubleEndedIterator for UWordBounds<'a> { break; } }, - Regional => match cat { - wd::WC_Regional_Indicator => Regional, // rule WB13c + Regional(mut regional_state) => match cat { + // rule WB13c + wd::WC_Regional_Indicator => { + if regional_state == RegionalState::Unknown { + let count = self.string[..previdx] + .chars().rev() + .map(|c| wd::word_category(c)) + .filter(|&c| ! (c == wd::WC_ZWJ || c == wd::WC_Extend || c == wd::WC_Format)) + .take_while(|&c| c == wd::WC_Regional_Indicator) + .count(); + regional_state = if count % 2 == 0 { + RegionalState::Full + } else { + RegionalState::Half + }; + } + if regional_state == RegionalState::Full { + take_curr = false; + break; + } else { + Regional(RegionalState::Full) + } + } + _ => { + take_curr = false; + break; + } + }, + Emoji => match cat { // rule WB14 + wd::WC_E_Base | wd::WC_E_Base_GAZ => { + Zwj + }, _ => { take_curr = false; break;