unic-ucd-segment-0.9.0/Cargo.toml.orig010064400007650000024000000020631343665764000160140ustar0000000000000000[package] name = "unic-ucd-segment" version = "0.9.0" edition = "2018" authors = ["The UNIC Project Developers"] repository = "https://github.com/open-i18n/rust-unic/" license = "MIT/Apache-2.0" description = "UNIC — Unicode Character Database — Segmentation Properties" keywords = ["text", "unicode", "character-property", "segmentation", "grapheme"] categories = ["internationalization", "text-processing", "parsing", "rendering"] # No tests/benches that depends on /data/ exclude = [] [dependencies] unic-char-property = { path = "../../char/property/", version = "0.9.0" } unic-char-range = { path = "../../char/range", version = "0.9.0" } unic-ucd-version = { path = "../version/", version = "0.9.0" } [badges] maintenance = { status = "actively-developed" } is-it-maintained-issue-resolution = { repository = "open-i18n/rust-unic" } is-it-maintained-open-issues = { repository = "open-i18n/rust-unic" } appveyor = { repository = "open-i18n/rust-unic", branch = "master", service = "github" } travis-ci = { repository = "open-i18n/rust-unic", branch = "master" } unic-ucd-segment-0.9.0/Cargo.toml0000644000000027270000000000000122560ustar00# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO # # When uploading crates to the registry Cargo will automatically # "normalize" Cargo.toml files for maximal compatibility # with all versions of Cargo and also rewrite `path` dependencies # to registry (e.g. crates.io) dependencies # # If you believe there's an error in this file please file an # issue against the rust-lang/cargo repository. If you're # editing this file be aware that the upstream Cargo.toml # will likely look very different (and much more reasonable) [package] edition = "2018" name = "unic-ucd-segment" version = "0.9.0" authors = ["The UNIC Project Developers"] exclude = [] description = "UNIC — Unicode Character Database — Segmentation Properties" keywords = ["text", "unicode", "character-property", "segmentation", "grapheme"] categories = ["internationalization", "text-processing", "parsing", "rendering"] license = "MIT/Apache-2.0" repository = "https://github.com/open-i18n/rust-unic/" [dependencies.unic-char-property] version = "0.9.0" [dependencies.unic-char-range] version = "0.9.0" [dependencies.unic-ucd-version] version = "0.9.0" [badges.appveyor] branch = "master" repository = "open-i18n/rust-unic" service = "github" [badges.is-it-maintained-issue-resolution] repository = "open-i18n/rust-unic" [badges.is-it-maintained-open-issues] repository = "open-i18n/rust-unic" [badges.maintenance] status = "actively-developed" [badges.travis-ci] branch = "master" repository = "open-i18n/rust-unic" unic-ucd-segment-0.9.0/src/grapheme_cluster_break.rs010064400007650000024000000340231343520353600207460ustar0000000000000000// Copyright 2017 The UNIC Project Developers. // // See the COPYRIGHT file at the top-level directory of this distribution. // // Licensed under the Apache License, Version 2.0 or the MIT license // , at your // option. This file may not be copied, modified, or distributed // except according to those terms. //! Unicode `Grapheme_Cluster_Break` Character Property. //! //! ## References //! //! * //! * //! * use unic_char_property::TotalCharProperty; char_property! { /// Represents the Unicode character /// [`Grapheme_Cluster_Break`](https://www.unicode.org/reports/tr44/#Grapheme_Cluster_Break) /// property. /// /// ## References /// /// * /// * /// * pub enum GraphemeClusterBreak { abbr => "GCB"; long => "Grapheme_Cluster_Break"; human => "Grapheme Cluster Break"; /// ```text /// U+000D CARRIAGE RETURN (CR) /// ``` CR { abbr => CR, long => CR, human => "Carriage Return", } /// ```text /// U+000A LINE FEED (LF) /// ``` LF { abbr => LF, long => LF, human => "Line Feed", } /// ```text /// General_Category = Line_Separator, or /// General_Category = Paragraph_Separator, or /// General_Category = Control, or /// General_Category = Unassigned and Default_Ignorable_Code_Point, or /// General_Category = Surrogate, or /// General_Category = Format /// and not U+000D CARRIAGE RETURN /// and not U+000A LINE FEED /// and not U+200C ZERO WIDTH NON-JOINER (ZWNJ) /// and not U+200D ZERO WIDTH JOINER (ZWJ) /// ``` Control { abbr => CN, long => Control, human => "Control", } /// ```text /// Grapheme_Extend = Yes /// /// This includes: /// General_Category = Nonspacing_Mark /// General_Category = Enclosing_Mark /// U+200C ZERO WIDTH NON-JOINER /// plus a few General_Category = Spacing_Mark needed for canonical equivalence. /// ``` Extend { abbr => EX, long => Extend, human => "Extend", } /// ```text /// U+200D ZERO WIDTH JOINER /// ``` ZWJ { abbr => ZWJ, long => ZWJ, human => "Zero Width Joiner (ZWJ)", } /// ```text /// Regional_Indicator = Yes /// ``` /// /// This consists of the range: /// /// ```text /// U+1F1E6 REGIONAL INDICATOR SYMBOL LETTER A /// ..U+1F1FF REGIONAL INDICATOR SYMBOL LETTER Z /// ``` RegionalIndicator { abbr => RI, long => Regional_Indicator, human => "Regional Indicator", } /// ```text /// Indic_Syllabic_Category = Consonant_Preceding_Repha, or /// Indic_Syllabic_Category = Consonant_Prefixed, or /// Prepended_Concatenation_Mark = Yes /// ``` Prepend { abbr => PP, long => Prepend, human => "Prepend", } /// ```text /// Grapheme_Cluster_Break ≠ Extend, and /// General_Category = Spacing_Mark, or /// any of the following (which have General_Category = Other_Letter): /// U+0E33 ( ำ ) THAI CHARACTER SARA AM /// U+0EB3 ( ຳ ) LAO VOWEL SIGN AM /// ``` /// /// Exceptions: The following (which have General_Category = Spacing_Mark and would /// otherwise be included) are specifically excluded: /// /// ```text /// U+102B ( ါ ) MYANMAR VOWEL SIGN TALL AA /// U+102C ( ာ ) MYANMAR VOWEL SIGN AA /// U+1038 ( း ) MYANMAR SIGN VISARGA /// U+1062 ( ၢ ) MYANMAR VOWEL SIGN SGAW KAREN EU /// ..U+1064 ( ၤ ) MYANMAR TONE MARK SGAW KAREN KE PHO /// U+1067 ( ၧ ) MYANMAR VOWEL SIGN WESTERN PWO KAREN EU /// ..U+106D ( ၭ ) MYANMAR SIGN WESTERN PWO KAREN TONE-5 /// U+1083 ( ႃ ) MYANMAR VOWEL SIGN SHAN AA /// U+1087 ( ႇ ) MYANMAR SIGN SHAN TONE-2 /// ..U+108C ( ႌ ) MYANMAR SIGN SHAN COUNCIL TONE-3 /// U+108F ( ႏ ) MYANMAR SIGN RUMAI PALAUNG TONE-5 /// U+109A ( ႚ ) MYANMAR SIGN KHAMTI TONE-1 /// ..U+109C ( ႜ ) MYANMAR VOWEL SIGN AITON A /// U+1A61 ( ᩡ ) TAI THAM VOWEL SIGN A /// U+1A63 ( ᩣ ) TAI THAM VOWEL SIGN AA /// U+1A64 ( ᩤ ) TAI THAM VOWEL SIGN TALL AA /// U+AA7B ( ꩻ ) MYANMAR SIGN PAO KAREN TONE /// U+AA7D ( ꩽ ) MYANMAR SIGN TAI LAING TONE-5 /// U+11720 ( 𑜠 ) AHOM VOWEL SIGN A /// U+11721 ( 𑜡 ) AHOM VOWEL SIGN AA /// ``` SpacingMark { abbr => SM, long => SpacingMark, human => "Spacing Mark", } // Hangul /// ```text /// Hangul_Syllable_Type=L /// ``` /// /// Such as: /// /// ```text /// U+1100 ( ᄀ ) HANGUL CHOSEONG KIYEOK /// U+115F ( ᅟ ) HANGUL CHOSEONG FILLER /// U+A960 ( ꥠ ) HANGUL CHOSEONG TIKEUT-MIEUM /// U+A97C ( ꥼ ) HANGUL CHOSEONG SSANGYEORINHIEUH /// ``` L { abbr => L, long => L, human => "Hangul Syllable Type L", } /// ```text /// Hangul_Syllable_Type=V /// ``` /// /// Such as: /// /// ```text /// U+1160 ( ᅠ ) HANGUL JUNGSEONG FILLER /// U+11A2 ( ᆢ ) HANGUL JUNGSEONG SSANGARAEA /// U+D7B0 ( ힰ ) HANGUL JUNGSEONG O-YEO /// U+D7C6 ( ퟆ ) HANGUL JUNGSEONG ARAEA-E /// ``` V { abbr => V, long => V, human => "Hangul Syllable Type V", } /// ```text /// Hangul_Syllable_Type=T /// ``` /// /// Such as: /// /// ```text /// U+11A8 ( ᆨ ) HANGUL JONGSEONG KIYEOK /// U+11F9 ( ᇹ ) HANGUL JONGSEONG YEORINHIEUH /// U+D7CB ( ퟋ ) HANGUL JONGSEONG NIEUN-RIEUL /// U+D7FB ( ퟻ ) HANGUL JONGSEONG PHIEUPH-THIEUTH /// ``` T { abbr => T, long => T, human => "Hangul Syllable Type T", } /// ```text /// Hangul_Syllable_Type=LV: /// ``` /// /// That is: /// /// ```text /// U+AC00 ( 가 ) HANGUL SYLLABLE GA /// U+AC1C ( 개 ) HANGUL SYLLABLE GAE /// U+AC38 ( 갸 ) HANGUL SYLLABLE GYA /// ... /// ``` LV { abbr => LV, long => LV, human => "Hangul Syllable Type LV", } /// ```text /// Hangul_Syllable_Type=LVT /// ``` /// /// That is: /// /// ```text /// U+AC01 ( 각 ) HANGUL SYLLABLE GAG /// U+AC02 ( 갂 ) HANGUL SYLLABLE GAGG /// U+AC03 ( 갃 ) HANGUL SYLLABLE GAGS /// U+AC04 ( 간 ) HANGUL SYLLABLE GAN /// ... /// ``` LVT { abbr => LVT, long => LVT, human => "Hangul Syllable Type LVT", } // Emoji /// Emoji characters listed as `Emoji_Modifier_Base=Yes` in `emoji-data.txt`, which do not /// occur after ZWJ in `emoji-zwj-sequences.txt`. /// /// See . EBase { abbr => EB, long => E_Base, human => "Emoji Base", } /// Emoji characters listed as `Emoji_Modifer=Yes` in `emoji-data.txt`. /// /// See . EModifier { abbr => EM, long => E_Modifier, human => "Emoji Modifier", } /// Emoji characters that do not break from a previous ZWJ in a defined emoji ZWJ sequence, /// and are not listed as `Emoji_Modifier_Base=Yes` in `emoji-data.txt`. /// /// See . GlueAfterZwj { abbr => GAZ, long => Glue_After_Zwj, human => "Glue After ZWJ", } /// Emoji characters listed as `Emoji_Modifer_Base=Yes` in `emoji_data.txt`, and also occur /// after ZWJ in `emoji-zwj-sequences.txt`. /// /// See . EBaseGAZ { abbr => EBG, long => E_Base_GAZ, human => "Emoji Base and Glue After ZWJ", } /// All other characters Other { abbr => XX, long => Other, human => "Other", } } /// Abbreviated name aliases for the /// [`Grapheme_Cluster_Break`](https://www.unicode.org/reports/tr44/#Grapheme_Cluster_Break) /// property. /// /// ## See Also /// /// * pub mod abbr_names for abbr; /// Long name aliases for the /// [`Grapheme_Cluster_Break`](https://www.unicode.org/reports/tr44/#Grapheme_Cluster_Break) /// property. /// /// ## See Also /// /// * pub mod long_names for long; } impl TotalCharProperty for GraphemeClusterBreak { fn of(ch: char) -> Self { Self::of(ch) } } impl Default for GraphemeClusterBreak { fn default() -> Self { GraphemeClusterBreak::Other } } mod data { use super::long_names as GCB; use unic_char_property::tables::CharDataTable; pub const GRAPHEME_CLUSTER_BREAK_TABLE: CharDataTable = include!("../tables/grapheme_cluster_break.rsv"); } impl GraphemeClusterBreak { /// Find the character `Grapheme_Cluster_Break` property value. pub fn of(ch: char) -> GraphemeClusterBreak { data::GRAPHEME_CLUSTER_BREAK_TABLE.find_or_default(ch) } } #[cfg(test)] mod tests { use super::GraphemeClusterBreak as GCB; use unic_char_property::EnumeratedCharProperty; #[test] fn test_ascii() { assert_eq!(GCB::of('\u{0000}'), GCB::Control); assert_eq!(GCB::of('\u{0040}'), GCB::Other); assert_eq!(GCB::of('\u{0041}'), GCB::Other); assert_eq!(GCB::of('\u{0062}'), GCB::Other); assert_eq!(GCB::of('\u{007F}'), GCB::Control); } #[test] fn test_bmp() { // Hebrew assert_eq!(GCB::of('\u{0590}'), GCB::Other); assert_eq!(GCB::of('\u{05D0}'), GCB::Other); assert_eq!(GCB::of('\u{05D1}'), GCB::Other); assert_eq!(GCB::of('\u{05FF}'), GCB::Other); // Arabic assert_eq!(GCB::of('\u{0600}'), GCB::Prepend); assert_eq!(GCB::of('\u{0627}'), GCB::Other); assert_eq!(GCB::of('\u{07BF}'), GCB::Other); // Default R + Arabic Extras assert_eq!(GCB::of('\u{07C0}'), GCB::Other); assert_eq!(GCB::of('\u{085F}'), GCB::Other); assert_eq!(GCB::of('\u{0860}'), GCB::Other); assert_eq!(GCB::of('\u{0870}'), GCB::Other); assert_eq!(GCB::of('\u{089F}'), GCB::Other); assert_eq!(GCB::of('\u{08A0}'), GCB::Other); assert_eq!(GCB::of('\u{089F}'), GCB::Other); assert_eq!(GCB::of('\u{08FF}'), GCB::Extend); // Default ET assert_eq!(GCB::of('\u{20A0}'), GCB::Other); assert_eq!(GCB::of('\u{20CF}'), GCB::Other); // Arabic Presentation Forms assert_eq!(GCB::of('\u{FB1D}'), GCB::Other); assert_eq!(GCB::of('\u{FB4F}'), GCB::Other); assert_eq!(GCB::of('\u{FB50}'), GCB::Other); assert_eq!(GCB::of('\u{FDCF}'), GCB::Other); assert_eq!(GCB::of('\u{FDF0}'), GCB::Other); assert_eq!(GCB::of('\u{FDFF}'), GCB::Other); assert_eq!(GCB::of('\u{FE70}'), GCB::Other); assert_eq!(GCB::of('\u{FEFE}'), GCB::Other); assert_eq!(GCB::of('\u{FEFF}'), GCB::Control); // noncharacters assert_eq!(GCB::of('\u{FDD0}'), GCB::Other); assert_eq!(GCB::of('\u{FDD1}'), GCB::Other); assert_eq!(GCB::of('\u{FDEE}'), GCB::Other); assert_eq!(GCB::of('\u{FDEF}'), GCB::Other); assert_eq!(GCB::of('\u{FFFE}'), GCB::Other); assert_eq!(GCB::of('\u{FFFF}'), GCB::Other); } #[test] fn test_smp() { // Default AL + R assert_eq!(GCB::of('\u{10800}'), GCB::Other); assert_eq!(GCB::of('\u{10FFF}'), GCB::Other); assert_eq!(GCB::of('\u{1E800}'), GCB::Other); assert_eq!(GCB::of('\u{1EDFF}'), GCB::Other); assert_eq!(GCB::of('\u{1EE00}'), GCB::Other); assert_eq!(GCB::of('\u{1EEFF}'), GCB::Other); assert_eq!(GCB::of('\u{1EF00}'), GCB::Other); assert_eq!(GCB::of('\u{1EFFF}'), GCB::Other); } #[test] fn test_unassigned_planes() { assert_eq!(GCB::of('\u{30000}'), GCB::Other); assert_eq!(GCB::of('\u{40000}'), GCB::Other); assert_eq!(GCB::of('\u{50000}'), GCB::Other); assert_eq!(GCB::of('\u{60000}'), GCB::Other); assert_eq!(GCB::of('\u{70000}'), GCB::Other); assert_eq!(GCB::of('\u{80000}'), GCB::Other); assert_eq!(GCB::of('\u{90000}'), GCB::Other); assert_eq!(GCB::of('\u{a0000}'), GCB::Other); } #[test] fn test_abbr_name() { assert_eq!(GCB::CR.abbr_name(), "CR"); } #[test] fn test_long_name() { assert_eq!(GCB::CR.long_name(), "CR"); } #[test] fn test_human_name() { assert_eq!(GCB::CR.human_name(), "Carriage Return"); } } unic-ucd-segment-0.9.0/src/lib.rs010064400007650000024000000025741343520353600150250ustar0000000000000000// Copyright 2017 The UNIC Project Developers. // // See the COPYRIGHT file at the top-level directory of this distribution. // // Licensed under the Apache License, Version 2.0 or the MIT license // , at your // option. This file may not be copied, modified, or distributed // except according to those terms. #![no_std] #![warn( bad_style, missing_debug_implementations, missing_docs, unconditional_recursion )] #![forbid(unsafe_code)] //! # UNIC — UCD — Segmentation Properties" //! //! A component of [`unic`: Unicode and Internationalization Crates for Rust](/unic/). //! //! Accessor for Text Segmentation character properties from Unicode Character Database (UCD). #[macro_use] extern crate unic_char_property; #[macro_use] extern crate unic_char_range; mod pkg_info; pub use crate::pkg_info::{PKG_DESCRIPTION, PKG_NAME, PKG_VERSION}; pub mod grapheme_cluster_break; pub use crate::grapheme_cluster_break::GraphemeClusterBreak; pub mod sentence_break; pub use crate::sentence_break::SentenceBreak; pub mod word_break; pub use crate::word_break::WordBreak; use unic_ucd_version::UnicodeVersion; /// The [Unicode version](https://www.unicode.org/versions/) of data pub const UNICODE_VERSION: UnicodeVersion = include!("../tables/unicode_version.rsv"); unic-ucd-segment-0.9.0/src/pkg_info.rs010064400007650000024000000013121343520353600160400ustar0000000000000000// Copyright 2017 The UNIC Project Developers. // // See the COPYRIGHT file at the top-level directory of this distribution. // // Licensed under the Apache License, Version 2.0 or the MIT license // , at your // option. This file may not be copied, modified, or distributed // except according to those terms. //! Package information /// UNIC component version. pub const PKG_VERSION: &str = env!("CARGO_PKG_VERSION"); /// UNIC component name. pub const PKG_NAME: &str = env!("CARGO_PKG_NAME"); /// UNIC component description. pub const PKG_DESCRIPTION: &str = env!("CARGO_PKG_DESCRIPTION"); unic-ucd-segment-0.9.0/src/sentence_break.rs010064400007650000024000000252051343520353600172230ustar0000000000000000// Copyright 2017 The UNIC Project Developers. // // See the COPYRIGHT file at the top-level directory of this distribution. // // Licensed under the Apache License, Version 2.0 or the MIT license // , at your // option. This file may not be copied, modified, or distributed // except according to those terms. //! Unicode `Sentence_Break` Character Property. //! //! ## References //! //! * //! * //! * use unic_char_property::TotalCharProperty; char_property! { /// Represents the Unicode character /// [`Sentence_Break`](https://www.unicode.org/reports/tr44/#Sentence_Break) /// property. /// /// ## References /// /// * /// * /// * pub enum SentenceBreak { abbr => "SB"; long => "Sentence_Break"; human => "Sentence Break"; /// ```text /// U+000D CARRIAGE RETURN (CR) /// ``` CR { abbr => CR, long => CR, human => "Carriage Return", } /// ```text /// U+000A LINE FEED (LF) /// ``` LF { abbr => LF, long => LF, human => "Line Feed", } /// ```text /// Grapheme_Extend = Yes, or /// U+200D ZERO WIDTH JOINER (ZWJ), or /// General_Category = Spacing_Mark /// ``` Extend { abbr => Extend, long => Extend, human => "Extend", } /// ```text /// U+0085 NEXT LINE (NEL) /// U+2028 LINE SEPARATOR /// U+2029 PARAGRAPH SEPARATOR /// ``` Sep { abbr => SE, long => Sep, human => "Separator", } /// ```text /// General_Category = Format /// and not U+200C ZERO WIDTH NON-JOINER (ZWNJ) /// and not U+200D ZERO WIDTH JOINER (ZWJ) /// ``` Format { abbr => FO, long => Format, human => "Format", } /// ```text /// White_Space = Yes /// and Sentence_Break ≠ Sep /// and Sentence_Break ≠ CR /// and Sentence_Break ≠ LF /// ``` Sp { abbr => SP, long => Sp, human => "Space", } /// ```text /// Lowercase = Yes /// and Grapheme_Extend = No /// ``` Lower { abbr => LO, long => Lower, human => "Lowercase", } /// ```text /// General_Category = Titlecase_Letter, or /// Uppercase = Yes /// ``` Upper { abbr => UP, long => Upper, human => "Uppercase", } /// ```text /// Alphabetic = Yes, or /// U+00A0 NO-BREAK SPACE (NBSP), or /// U+05F3 ( ׳ ) HEBREW PUNCTUATION GERESH /// and Lower = No /// and Upper = No /// and Sentence_Break ≠ Extend /// ``` OLetter { abbr => LE, long => OLetter, human => "Other Letter", } /// ```text /// Line_Break = Numeric /// ``` Numeric { abbr => NU, long => Numeric, human => "Numeric", } /// ```text /// U+002E ( . ) FULL STOP /// U+2024 ( ․ ) ONE DOT LEADER /// U+FE52 ( ﹒ ) SMALL FULL STOP /// U+FF0E ( . ) FULLWIDTH FULL STOP /// ``` ATerm { abbr => AT, long => ATerm, human => "ATerm", } /// ```text /// U+002C ( , ) COMMA /// U+002D ( - ) HYPHEN-MINUS /// U+003A ( : ) COLON /// U+055D ( ՝ ) ARMENIAN COMMA /// U+060C ( ، ) ARABIC COMMA /// U+060D ( ‎؍‎ ) ARABIC DATE SEPARATOR /// U+07F8 ( ߸ ) NKO COMMA /// U+1802 ( ᠂ ) MONGOLIAN COMMA /// U+1808 ( ᠈ ) MONGOLIAN MANCHU COMMA /// U+2013 ( – ) EN DASH /// U+2014 ( — ) EM DASH /// U+3001 ( 、 ) IDEOGRAPHIC COMMA /// U+FE10 ( ︐ ) PRESENTATION FORM FOR VERTICAL COMMA /// U+FE11 ( ︑ ) PRESENTATION FORM FOR VERTICAL IDEOGRAPHIC COMMA /// U+FE13 ( ︓ ) PRESENTATION FORM FOR VERTICAL COLON /// U+FE31 ( ︱ ) PRESENTATION FORM FOR VERTICAL EM DASH /// U+FE32 ( ︲ ) PRESENTATION FORM FOR VERTICAL EN DASH /// U+FE50 ( ﹐ ) SMALL COMMA /// U+FE51 ( ﹑ ) SMALL IDEOGRAPHIC COMMA /// U+FE55 ( ﹕ ) SMALL COLON /// U+FE58 ( ﹘ ) SMALL EM DASH /// U+FE63 ( ﹣ ) SMALL HYPHEN-MINUS /// U+FF0C ( , ) FULLWIDTH COMMA /// U+FF0D ( - ) FULLWIDTH HYPHEN-MINUS /// U+FF1A ( : ) FULLWIDTH COLON /// U+FF64 ( 、 ) HALFWIDTH IDEOGRAPHIC COMMA /// ``` SContinue { abbr => SC, long => SContinue, human => "Sentence Continue", } /// ```text /// Sentence_Terminal = Yes /// ``` STerm { abbr => ST, long => STerm, human => "Sentence Terminal", } /// ```text /// General_Category = Open_Punctuation, or /// General_Category = Close_Punctuation, or /// Line_Break = Quotation /// and not U+05F3 ( ׳ ) HEBREW PUNCTUATION GERESH /// and ATerm = No /// and STerm = No /// ``` Close { abbr => CL, long => Close, human => "Close", } /// All other characters Other { abbr => XX, long => Other, human => "Other", } } /// Abbreviated name aliases for the /// [`Sentence_Break`](https://www.unicode.org/reports/tr44/#Sentence_Break) /// property. /// /// ## See Also /// /// * pub mod abbr_names for abbr; /// Long name aliases for the /// [`Sentence_Break`](https://www.unicode.org/reports/tr44/#Sentence_Break) /// property. /// /// ## See Also /// /// * pub mod long_names for long; } impl TotalCharProperty for SentenceBreak { fn of(ch: char) -> Self { Self::of(ch) } } impl Default for SentenceBreak { fn default() -> Self { SentenceBreak::Other } } mod data { use super::long_names as SB; use unic_char_property::tables::CharDataTable; pub const SENTENCE_BREAK_TABLE: CharDataTable = include!("../tables/sentence_break.rsv"); } impl SentenceBreak { /// Find the character `Sentence_Break` property value. pub fn of(ch: char) -> SentenceBreak { data::SENTENCE_BREAK_TABLE.find_or_default(ch) } } #[cfg(test)] mod tests { use super::SentenceBreak as SB; use unic_char_property::EnumeratedCharProperty; #[test] fn test_ascii() { assert_eq!(SB::of('\u{0000}'), SB::Other); assert_eq!(SB::of('\u{0040}'), SB::Other); assert_eq!(SB::of('\u{0041}'), SB::Upper); assert_eq!(SB::of('\u{0062}'), SB::Lower); assert_eq!(SB::of('\u{007F}'), SB::Other); } #[test] fn test_bmp() { // Hebrew assert_eq!(SB::of('\u{0590}'), SB::Other); assert_eq!(SB::of('\u{05D0}'), SB::OLetter); assert_eq!(SB::of('\u{05D1}'), SB::OLetter); assert_eq!(SB::of('\u{05FF}'), SB::Other); // Arabic assert_eq!(SB::of('\u{0600}'), SB::Format); assert_eq!(SB::of('\u{0627}'), SB::OLetter); assert_eq!(SB::of('\u{07BF}'), SB::Other); // Default R + Arabic Extras assert_eq!(SB::of('\u{07C0}'), SB::Numeric); assert_eq!(SB::of('\u{085F}'), SB::Other); assert_eq!(SB::of('\u{0860}'), SB::OLetter); assert_eq!(SB::of('\u{0870}'), SB::Other); assert_eq!(SB::of('\u{089F}'), SB::Other); assert_eq!(SB::of('\u{08A0}'), SB::OLetter); assert_eq!(SB::of('\u{089F}'), SB::Other); assert_eq!(SB::of('\u{08FF}'), SB::Extend); // Default ET assert_eq!(SB::of('\u{20A0}'), SB::Other); assert_eq!(SB::of('\u{20CF}'), SB::Other); // Arabic Presentation Forms assert_eq!(SB::of('\u{FB1D}'), SB::OLetter); assert_eq!(SB::of('\u{FB4F}'), SB::OLetter); assert_eq!(SB::of('\u{FB50}'), SB::OLetter); assert_eq!(SB::of('\u{FDCF}'), SB::Other); assert_eq!(SB::of('\u{FDF0}'), SB::OLetter); assert_eq!(SB::of('\u{FDFF}'), SB::Other); assert_eq!(SB::of('\u{FE70}'), SB::OLetter); assert_eq!(SB::of('\u{FEFE}'), SB::Other); assert_eq!(SB::of('\u{FEFF}'), SB::Format); // noncharacters assert_eq!(SB::of('\u{FDD0}'), SB::Other); assert_eq!(SB::of('\u{FDD1}'), SB::Other); assert_eq!(SB::of('\u{FDEE}'), SB::Other); assert_eq!(SB::of('\u{FDEF}'), SB::Other); assert_eq!(SB::of('\u{FFFE}'), SB::Other); assert_eq!(SB::of('\u{FFFF}'), SB::Other); } #[test] fn test_smp() { // Default AL + R assert_eq!(SB::of('\u{10800}'), SB::OLetter); assert_eq!(SB::of('\u{10FFF}'), SB::Other); assert_eq!(SB::of('\u{1E800}'), SB::OLetter); assert_eq!(SB::of('\u{1EDFF}'), SB::Other); assert_eq!(SB::of('\u{1EE00}'), SB::OLetter); assert_eq!(SB::of('\u{1EEFF}'), SB::Other); assert_eq!(SB::of('\u{1EF00}'), SB::Other); assert_eq!(SB::of('\u{1EFFF}'), SB::Other); } #[test] fn test_unassigned_planes() { assert_eq!(SB::of('\u{30000}'), SB::Other); assert_eq!(SB::of('\u{40000}'), SB::Other); assert_eq!(SB::of('\u{50000}'), SB::Other); assert_eq!(SB::of('\u{60000}'), SB::Other); assert_eq!(SB::of('\u{70000}'), SB::Other); assert_eq!(SB::of('\u{80000}'), SB::Other); assert_eq!(SB::of('\u{90000}'), SB::Other); assert_eq!(SB::of('\u{a0000}'), SB::Other); } #[test] fn test_abbr_name() { assert_eq!(SB::CR.abbr_name(), "CR"); } #[test] fn test_long_name() { assert_eq!(SB::CR.long_name(), "CR"); } #[test] fn test_human_name() { assert_eq!(SB::CR.human_name(), "Carriage Return"); } } unic-ucd-segment-0.9.0/src/word_break.rs010064400007650000024000000341201343520353600163660ustar0000000000000000// Copyright 2017 The UNIC Project Developers. // // See the COPYRIGHT file at the top-level directory of this distribution. // // Licensed under the Apache License, Version 2.0 or the MIT license // , at your // option. This file may not be copied, modified, or distributed // except according to those terms. //! Unicode `Word_Break` Character Property. //! //! ## References //! //! * //! * //! * use unic_char_property::TotalCharProperty; char_property! { /// Represents the Unicode character /// [`Word_Break`](https://www.unicode.org/reports/tr44/#Word_Break) /// property. /// /// ## References /// /// * /// * /// * pub enum WordBreak { abbr => "WB"; long => "Word_Break"; human => "Word Break"; /// ```text /// U+000D CARRIAGE RETURN (CR) /// ``` CR { abbr => CR, long => CR, human => "Carriage Return", } /// ```text /// U+000A LINE FEED (LF) /// ``` LF { abbr => LF, long => LF, human => "Line Feed", } /// ```text /// U+000B LINE TABULATION /// U+000C FORM FEED (FF) /// U+0085 NEXT LINE (NEL) /// U+2028 LINE SEPARATOR /// U+2029 PARAGRAPH SEPARATOR /// ``` Newline { abbr => NL, long => Newline, human => "Newline", } /// ```text /// Grapheme_Extend = Yes, or /// General_Category = Spacing_Mark /// and not U+200D ZERO WIDTH JOINER (ZWJ) /// ``` Extend { abbr => Extend, long => Extend, human => "Extend", } /// ```text /// U+200D ZERO WIDTH JOINER /// ``` ZWJ { abbr => ZWJ, long => ZWJ, human => "Zero Width Joiner (ZWJ)", } /// ```text /// Regional_Indicator = Yes /// ``` /// /// This consists of the range: /// /// ```text /// U+1F1E6 REGIONAL INDICATOR SYMBOL LETTER A /// ..U+1F1FF REGIONAL INDICATOR SYMBOL LETTER Z /// ``` RegionalIndicator { abbr => RI, long => Regional_Indicator, human => "Regional Indicator", } /// ```text /// General_Category = Format /// and not U+200B ZERO WIDTH SPACE (ZWSP) /// and not U+200C ZERO WIDTH NON-JOINER (ZWNJ) /// and not U+200D ZERO WIDTH JOINER (ZWJ) /// ``` Format { abbr => FO, long => Format, human => "Format", } /// ```text /// Script = KATAKANA, or /// any of the following: /// U+3031 ( 〱 ) VERTICAL KANA REPEAT MARK /// U+3032 ( 〲 ) VERTICAL KANA REPEAT WITH VOICED SOUND MARK /// U+3033 ( 〳 ) VERTICAL KANA REPEAT MARK UPPER HALF /// U+3034 ( 〴 ) VERTICAL KANA REPEAT WITH VOICED SOUND MARK UPPER HALF /// U+3035 ( 〵 ) VERTICAL KANA REPEAT MARK LOWER HALF /// U+309B ( ゛ ) KATAKANA-HIRAGANA VOICED SOUND MARK /// U+309C ( ゜ ) KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK /// U+30A0 ( ゠ ) KATAKANA-HIRAGANA DOUBLE HYPHEN /// U+30FC ( ー ) KATAKANA-HIRAGANA PROLONGED SOUND MARK /// U+FF70 ( ー ) HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK /// ``` Katakana { abbr => KA, long => Katakana, human => "Katakana", } /// ```text /// Script = Hebrew /// and General_Category = Other_Letter /// ``` HebrewLetter { abbr => HL, long => Hebrew_Letter, human => "Hebrew Letter", } /// ```text /// Alphabetic = Yes, or /// any of the following 36 characters: /// U+02C2 ( ˂ ) MODIFIER LETTER LEFT ARROWHEAD /// ..U+02C5 ( ˅ ) MODIFIER LETTER DOWN ARROWHEAD /// U+02D2 ( ˒ ) MODIFIER LETTER CENTRED RIGHT HALF RING /// ..U+02D7 ( ˗ ) MODIFIER LETTER MINUS SIGN /// U+02DE ( ˞ ) MODIFIER LETTER RHOTIC HOOK /// U+02DF ( ˟ ) MODIFIER LETTER CROSS ACCENT /// U+02ED ( ˭ ) MODIFIER LETTER UNASPIRATED /// U+02EF ( ˯ ) MODIFIER LETTER LOW DOWN ARROWHEAD /// ..U+02FF ( ˿ ) MODIFIER LETTER LOW LEFT ARROW /// U+05F3 ( ׳ ) HEBREW PUNCTUATION GERESH /// U+A720 ( ꜠ ) MODIFIER LETTER STRESS AND HIGH TONE /// U+A721 ( ꜡ ) MODIFIER LETTER STRESS AND LOW TONE /// U+A789 ( ꞉ ) MODIFIER LETTER COLON /// U+A78A ( ꞊ ) MODIFIER LETTER SHORT EQUALS SIGN /// U+AB5B ( ꭛ ) MODIFIER BREVE WITH INVERTED BREVE /// and Ideographic = No /// and Word_Break ≠ Katakana /// and Line_Break ≠ Complex_Context (SA) /// and Script ≠ Hiragana /// and Word_Break ≠ Extend /// and Word_Break ≠ Hebrew_Letter /// ``` ALetter { abbr => LE, long => ALetter, human => "Alphabetic Letter", } /// ```text /// U+0027 ( ' ) APOSTROPHE /// ``` SingleQuote { abbr => SQ, long => Single_Quote, human => "Single Quote", } /// ```text /// U+0022 ( " ) QUOTATION MARK /// ``` DoubleQuote { abbr => DQ, long => Double_Quote, human => "Double Quote", } /// ```text /// U+002E ( . ) FULL STOP /// U+2018 ( ‘ ) LEFT SINGLE QUOTATION MARK /// U+2019 ( ’ ) RIGHT SINGLE QUOTATION MARK /// U+2024 ( ․ ) ONE DOT LEADER /// U+FE52 ( ﹒ ) SMALL FULL STOP /// U+FF07 ( ' ) FULLWIDTH APOSTROPHE /// U+FF0E ( . ) FULLWIDTH FULL STOP /// ``` MidNumLet { abbr => MB, long => MidNumLet, human => "Middle of Numeric/Letter", } /// ```text /// U+00B7 ( · ) MIDDLE DOT /// U+0387 ( · ) GREEK ANO TELEIA /// U+05F4 ( ״ ) HEBREW PUNCTUATION GERSHAYIM /// U+2027 ( ‧ ) HYPHENATION POINT /// U+003A ( : ) COLON (used in Swedish) /// U+FE13 ( ︓ ) PRESENTATION FORM FOR VERTICAL COLON /// U+FE55 ( ﹕ ) SMALL COLON /// U+FF1A ( : ) FULLWIDTH COLON /// ``` MidLetter { abbr => ML, long => MidLetter, human => "Middle of Letter", } /// ```text /// Line_Break = Infix_Numeric, or /// any of the following: /// U+066C ( ٬ ) ARABIC THOUSANDS SEPARATOR /// U+FE50 ( ﹐ ) SMALL COMMA /// U+FE54 ( ﹔ ) SMALL SEMICOLON /// U+FF0C ( , ) FULLWIDTH COMMA /// U+FF1B ( ; ) FULLWIDTH SEMICOLON /// and not U+003A ( : ) COLON /// and not U+FE13 ( ︓ ) PRESENTATION FORM FOR VERTICAL COLON /// and not U+002E ( . ) FULL STOP /// ``` MidNum { abbr => MN, long => MidNum, human => "Middle of Numeric", } /// ```text /// Line_Break = Numeric /// and not U+066C ( ٬ ) ARABIC THOUSANDS SEPARATOR /// ``` Numeric { abbr => NU, long => Numeric, human => "Numeric", } /// ```text /// General_Category = Connector_Punctuation, or /// U+202F NARROW NO-BREAK SPACE (NNBSP) /// ``` ExtendNumLet { abbr => EX, long => ExtendNumLet, human => "Extend Numeric/Letter", } // Emoji /// Emoji characters listed as `Emoji_Modifier_Base=Yes` in `emoji-data.txt`, which do not /// occur after ZWJ in `emoji-zwj-sequences.txt`. /// /// See . EBase { abbr => EB, long => E_Base, human => "Emoji Base", } /// Emoji characters listed as `Emoji_Modifer=Yes` in `emoji-data.txt`. /// /// See . EModifier { abbr => EM, long => E_Modifier, human => "Emoji Modifier", } /// Emoji characters that do not break from a previous ZWJ in a defined emoji ZWJ sequence, /// and are not listed as `Emoji_Modifier_Base=Yes` in `emoji-data.txt`. /// /// See . GlueAfterZwj { abbr => GAZ, long => Glue_After_Zwj, human => "Glue After ZWJ", } /// Emoji characters listed as `Emoji_Modifer_Base=Yes` in `emoji_data.txt`, and also occur /// after ZWJ in `emoji-zwj-sequences.txt`. /// /// See . EBaseGAZ { abbr => EBG, long => E_Base_GAZ, human => "Emoji Base and Glue After ZWJ", } /// All other characters Other { abbr => XX, long => Other, human => "Other", } } /// Abbreviated name aliases for the /// [`Word_Break`](https://www.unicode.org/reports/tr44/#Word_Break) /// property. /// /// ## See Also /// /// * pub mod abbr_names for abbr; /// Long name aliases for the /// [`Word_Break`](https://www.unicode.org/reports/tr44/#Word_Break) /// property. /// /// ## See Also /// /// * pub mod long_names for long; } impl TotalCharProperty for WordBreak { fn of(ch: char) -> Self { Self::of(ch) } } impl Default for WordBreak { fn default() -> Self { WordBreak::Other } } mod data { use super::long_names as WB; use unic_char_property::tables::CharDataTable; pub const WORD_BREAK_TABLE: CharDataTable = include!("../tables/word_break.rsv"); } impl WordBreak { /// Find the character `Word_Break` property value. pub fn of(ch: char) -> WordBreak { data::WORD_BREAK_TABLE.find_or_default(ch) } } #[cfg(test)] mod tests { use super::WordBreak as WB; use unic_char_property::EnumeratedCharProperty; #[test] fn test_ascii() { assert_eq!(WB::of('\u{0000}'), WB::Other); assert_eq!(WB::of('\u{0040}'), WB::Other); assert_eq!(WB::of('\u{0041}'), WB::ALetter); assert_eq!(WB::of('\u{0062}'), WB::ALetter); assert_eq!(WB::of('\u{007F}'), WB::Other); } #[test] fn test_bmp() { // Hebrew assert_eq!(WB::of('\u{0590}'), WB::Other); assert_eq!(WB::of('\u{05D0}'), WB::HebrewLetter); assert_eq!(WB::of('\u{05D1}'), WB::HebrewLetter); assert_eq!(WB::of('\u{05FF}'), WB::Other); // Arabic assert_eq!(WB::of('\u{0600}'), WB::Format); assert_eq!(WB::of('\u{0627}'), WB::ALetter); assert_eq!(WB::of('\u{07BF}'), WB::Other); // Default R + Arabic Extras assert_eq!(WB::of('\u{07C0}'), WB::Numeric); assert_eq!(WB::of('\u{085F}'), WB::Other); assert_eq!(WB::of('\u{0860}'), WB::ALetter); assert_eq!(WB::of('\u{0870}'), WB::Other); assert_eq!(WB::of('\u{089F}'), WB::Other); assert_eq!(WB::of('\u{08A0}'), WB::ALetter); assert_eq!(WB::of('\u{089F}'), WB::Other); assert_eq!(WB::of('\u{08FF}'), WB::Extend); // Default ET assert_eq!(WB::of('\u{20A0}'), WB::Other); assert_eq!(WB::of('\u{20CF}'), WB::Other); // Arabic Presentation Forms assert_eq!(WB::of('\u{FB1D}'), WB::HebrewLetter); assert_eq!(WB::of('\u{FB4F}'), WB::HebrewLetter); assert_eq!(WB::of('\u{FB50}'), WB::ALetter); assert_eq!(WB::of('\u{FDCF}'), WB::Other); assert_eq!(WB::of('\u{FDF0}'), WB::ALetter); assert_eq!(WB::of('\u{FDFF}'), WB::Other); assert_eq!(WB::of('\u{FE70}'), WB::ALetter); assert_eq!(WB::of('\u{FEFE}'), WB::Other); assert_eq!(WB::of('\u{FEFF}'), WB::Format); // noncharacters assert_eq!(WB::of('\u{FDD0}'), WB::Other); assert_eq!(WB::of('\u{FDD1}'), WB::Other); assert_eq!(WB::of('\u{FDEE}'), WB::Other); assert_eq!(WB::of('\u{FDEF}'), WB::Other); assert_eq!(WB::of('\u{FFFE}'), WB::Other); assert_eq!(WB::of('\u{FFFF}'), WB::Other); } #[test] fn test_smp() { // Default AL + R assert_eq!(WB::of('\u{10800}'), WB::ALetter); assert_eq!(WB::of('\u{10FFF}'), WB::Other); assert_eq!(WB::of('\u{1E800}'), WB::ALetter); assert_eq!(WB::of('\u{1EDFF}'), WB::Other); assert_eq!(WB::of('\u{1EE00}'), WB::ALetter); assert_eq!(WB::of('\u{1EEFF}'), WB::Other); assert_eq!(WB::of('\u{1EF00}'), WB::Other); assert_eq!(WB::of('\u{1EFFF}'), WB::Other); } #[test] fn test_unassigned_planes() { assert_eq!(WB::of('\u{30000}'), WB::Other); assert_eq!(WB::of('\u{40000}'), WB::Other); assert_eq!(WB::of('\u{50000}'), WB::Other); assert_eq!(WB::of('\u{60000}'), WB::Other); assert_eq!(WB::of('\u{70000}'), WB::Other); assert_eq!(WB::of('\u{80000}'), WB::Other); assert_eq!(WB::of('\u{90000}'), WB::Other); assert_eq!(WB::of('\u{a0000}'), WB::Other); } #[test] fn test_abbr_name() { assert_eq!(WB::CR.abbr_name(), "CR"); } #[test] fn test_long_name() { assert_eq!(WB::CR.long_name(), "CR"); } #[test] fn test_human_name() { assert_eq!(WB::CR.human_name(), "Carriage Return"); } } unic-ucd-segment-0.9.0/tables/grapheme_cluster_break.rsv010064400007650000024000002060371343520353600216250ustar0000000000000000// WARNING: Auto-generated by the `unic-gen` crate. // WARNING: DO NOT EDIT MANUALLY! CharDataTable::Range(&[ (chars!('\u{0}'..='\u{9}'), GCB::Control), (chars!('\u{a}'..='\u{a}'), GCB::LF), (chars!('\u{b}'..='\u{c}'), GCB::Control), (chars!('\u{d}'..='\u{d}'), GCB::CR), (chars!('\u{e}'..='\u{1f}'), GCB::Control), (chars!('\u{7f}'..='\u{9f}'), GCB::Control), (chars!('\u{ad}'..='\u{ad}'), GCB::Control), (chars!('\u{300}'..='\u{36f}'), GCB::Extend), (chars!('\u{483}'..='\u{489}'), GCB::Extend), (chars!('\u{591}'..='\u{5bd}'), GCB::Extend), (chars!('\u{5bf}'..='\u{5bf}'), GCB::Extend), (chars!('\u{5c1}'..='\u{5c2}'), GCB::Extend), (chars!('\u{5c4}'..='\u{5c5}'), GCB::Extend), (chars!('\u{5c7}'..='\u{5c7}'), GCB::Extend), (chars!('\u{600}'..='\u{605}'), GCB::Prepend), (chars!('\u{610}'..='\u{61a}'), GCB::Extend), (chars!('\u{61c}'..='\u{61c}'), GCB::Control), (chars!('\u{64b}'..='\u{65f}'), GCB::Extend), (chars!('\u{670}'..='\u{670}'), GCB::Extend), (chars!('\u{6d6}'..='\u{6dc}'), GCB::Extend), (chars!('\u{6dd}'..='\u{6dd}'), GCB::Prepend), (chars!('\u{6df}'..='\u{6e4}'), GCB::Extend), (chars!('\u{6e7}'..='\u{6e8}'), GCB::Extend), (chars!('\u{6ea}'..='\u{6ed}'), GCB::Extend), (chars!('\u{70f}'..='\u{70f}'), GCB::Prepend), (chars!('\u{711}'..='\u{711}'), GCB::Extend), (chars!('\u{730}'..='\u{74a}'), GCB::Extend), (chars!('\u{7a6}'..='\u{7b0}'), GCB::Extend), (chars!('\u{7eb}'..='\u{7f3}'), GCB::Extend), (chars!('\u{816}'..='\u{819}'), GCB::Extend), (chars!('\u{81b}'..='\u{823}'), GCB::Extend), (chars!('\u{825}'..='\u{827}'), GCB::Extend), (chars!('\u{829}'..='\u{82d}'), GCB::Extend), (chars!('\u{859}'..='\u{85b}'), GCB::Extend), (chars!('\u{8d4}'..='\u{8e1}'), GCB::Extend), (chars!('\u{8e2}'..='\u{8e2}'), GCB::Prepend), (chars!('\u{8e3}'..='\u{902}'), GCB::Extend), (chars!('\u{903}'..='\u{903}'), GCB::SpacingMark), (chars!('\u{93a}'..='\u{93a}'), GCB::Extend), (chars!('\u{93b}'..='\u{93b}'), GCB::SpacingMark), (chars!('\u{93c}'..='\u{93c}'), GCB::Extend), (chars!('\u{93e}'..='\u{940}'), GCB::SpacingMark), (chars!('\u{941}'..='\u{948}'), GCB::Extend), (chars!('\u{949}'..='\u{94c}'), GCB::SpacingMark), (chars!('\u{94d}'..='\u{94d}'), GCB::Extend), (chars!('\u{94e}'..='\u{94f}'), GCB::SpacingMark), (chars!('\u{951}'..='\u{957}'), GCB::Extend), (chars!('\u{962}'..='\u{963}'), GCB::Extend), (chars!('\u{981}'..='\u{981}'), GCB::Extend), (chars!('\u{982}'..='\u{983}'), GCB::SpacingMark), (chars!('\u{9bc}'..='\u{9bc}'), GCB::Extend), (chars!('\u{9be}'..='\u{9be}'), GCB::Extend), (chars!('\u{9bf}'..='\u{9c0}'), GCB::SpacingMark), (chars!('\u{9c1}'..='\u{9c4}'), GCB::Extend), (chars!('\u{9c7}'..='\u{9c8}'), GCB::SpacingMark), (chars!('\u{9cb}'..='\u{9cc}'), GCB::SpacingMark), (chars!('\u{9cd}'..='\u{9cd}'), GCB::Extend), (chars!('\u{9d7}'..='\u{9d7}'), GCB::Extend), (chars!('\u{9e2}'..='\u{9e3}'), GCB::Extend), (chars!('\u{a01}'..='\u{a02}'), GCB::Extend), (chars!('\u{a03}'..='\u{a03}'), GCB::SpacingMark), (chars!('\u{a3c}'..='\u{a3c}'), GCB::Extend), (chars!('\u{a3e}'..='\u{a40}'), GCB::SpacingMark), (chars!('\u{a41}'..='\u{a42}'), GCB::Extend), (chars!('\u{a47}'..='\u{a48}'), GCB::Extend), (chars!('\u{a4b}'..='\u{a4d}'), GCB::Extend), (chars!('\u{a51}'..='\u{a51}'), GCB::Extend), (chars!('\u{a70}'..='\u{a71}'), GCB::Extend), (chars!('\u{a75}'..='\u{a75}'), GCB::Extend), (chars!('\u{a81}'..='\u{a82}'), GCB::Extend), (chars!('\u{a83}'..='\u{a83}'), GCB::SpacingMark), (chars!('\u{abc}'..='\u{abc}'), GCB::Extend), (chars!('\u{abe}'..='\u{ac0}'), GCB::SpacingMark), (chars!('\u{ac1}'..='\u{ac5}'), GCB::Extend), (chars!('\u{ac7}'..='\u{ac8}'), GCB::Extend), (chars!('\u{ac9}'..='\u{ac9}'), GCB::SpacingMark), (chars!('\u{acb}'..='\u{acc}'), GCB::SpacingMark), (chars!('\u{acd}'..='\u{acd}'), GCB::Extend), (chars!('\u{ae2}'..='\u{ae3}'), GCB::Extend), (chars!('\u{afa}'..='\u{aff}'), GCB::Extend), (chars!('\u{b01}'..='\u{b01}'), GCB::Extend), (chars!('\u{b02}'..='\u{b03}'), GCB::SpacingMark), (chars!('\u{b3c}'..='\u{b3c}'), GCB::Extend), (chars!('\u{b3e}'..='\u{b3f}'), GCB::Extend), (chars!('\u{b40}'..='\u{b40}'), GCB::SpacingMark), (chars!('\u{b41}'..='\u{b44}'), GCB::Extend), (chars!('\u{b47}'..='\u{b48}'), GCB::SpacingMark), (chars!('\u{b4b}'..='\u{b4c}'), GCB::SpacingMark), (chars!('\u{b4d}'..='\u{b4d}'), GCB::Extend), (chars!('\u{b56}'..='\u{b57}'), GCB::Extend), (chars!('\u{b62}'..='\u{b63}'), GCB::Extend), (chars!('\u{b82}'..='\u{b82}'), GCB::Extend), (chars!('\u{bbe}'..='\u{bbe}'), GCB::Extend), (chars!('\u{bbf}'..='\u{bbf}'), GCB::SpacingMark), (chars!('\u{bc0}'..='\u{bc0}'), GCB::Extend), (chars!('\u{bc1}'..='\u{bc2}'), GCB::SpacingMark), (chars!('\u{bc6}'..='\u{bc8}'), GCB::SpacingMark), (chars!('\u{bca}'..='\u{bcc}'), GCB::SpacingMark), (chars!('\u{bcd}'..='\u{bcd}'), GCB::Extend), (chars!('\u{bd7}'..='\u{bd7}'), GCB::Extend), (chars!('\u{c00}'..='\u{c00}'), GCB::Extend), (chars!('\u{c01}'..='\u{c03}'), GCB::SpacingMark), (chars!('\u{c3e}'..='\u{c40}'), GCB::Extend), (chars!('\u{c41}'..='\u{c44}'), GCB::SpacingMark), (chars!('\u{c46}'..='\u{c48}'), GCB::Extend), (chars!('\u{c4a}'..='\u{c4d}'), GCB::Extend), (chars!('\u{c55}'..='\u{c56}'), GCB::Extend), (chars!('\u{c62}'..='\u{c63}'), GCB::Extend), (chars!('\u{c81}'..='\u{c81}'), GCB::Extend), (chars!('\u{c82}'..='\u{c83}'), GCB::SpacingMark), (chars!('\u{cbc}'..='\u{cbc}'), GCB::Extend), (chars!('\u{cbe}'..='\u{cbe}'), GCB::SpacingMark), (chars!('\u{cbf}'..='\u{cbf}'), GCB::Extend), (chars!('\u{cc0}'..='\u{cc1}'), GCB::SpacingMark), (chars!('\u{cc2}'..='\u{cc2}'), GCB::Extend), (chars!('\u{cc3}'..='\u{cc4}'), GCB::SpacingMark), (chars!('\u{cc6}'..='\u{cc6}'), GCB::Extend), (chars!('\u{cc7}'..='\u{cc8}'), GCB::SpacingMark), (chars!('\u{cca}'..='\u{ccb}'), GCB::SpacingMark), (chars!('\u{ccc}'..='\u{ccd}'), GCB::Extend), (chars!('\u{cd5}'..='\u{cd6}'), GCB::Extend), (chars!('\u{ce2}'..='\u{ce3}'), GCB::Extend), (chars!('\u{d00}'..='\u{d01}'), GCB::Extend), (chars!('\u{d02}'..='\u{d03}'), GCB::SpacingMark), (chars!('\u{d3b}'..='\u{d3c}'), GCB::Extend), (chars!('\u{d3e}'..='\u{d3e}'), GCB::Extend), (chars!('\u{d3f}'..='\u{d40}'), GCB::SpacingMark), (chars!('\u{d41}'..='\u{d44}'), GCB::Extend), (chars!('\u{d46}'..='\u{d48}'), GCB::SpacingMark), (chars!('\u{d4a}'..='\u{d4c}'), GCB::SpacingMark), (chars!('\u{d4d}'..='\u{d4d}'), GCB::Extend), (chars!('\u{d4e}'..='\u{d4e}'), GCB::Prepend), (chars!('\u{d57}'..='\u{d57}'), GCB::Extend), (chars!('\u{d62}'..='\u{d63}'), GCB::Extend), (chars!('\u{d82}'..='\u{d83}'), GCB::SpacingMark), (chars!('\u{dca}'..='\u{dca}'), GCB::Extend), (chars!('\u{dcf}'..='\u{dcf}'), GCB::Extend), (chars!('\u{dd0}'..='\u{dd1}'), GCB::SpacingMark), (chars!('\u{dd2}'..='\u{dd4}'), GCB::Extend), (chars!('\u{dd6}'..='\u{dd6}'), GCB::Extend), (chars!('\u{dd8}'..='\u{dde}'), GCB::SpacingMark), (chars!('\u{ddf}'..='\u{ddf}'), GCB::Extend), (chars!('\u{df2}'..='\u{df3}'), GCB::SpacingMark), (chars!('\u{e31}'..='\u{e31}'), GCB::Extend), (chars!('\u{e33}'..='\u{e33}'), GCB::SpacingMark), (chars!('\u{e34}'..='\u{e3a}'), GCB::Extend), (chars!('\u{e47}'..='\u{e4e}'), GCB::Extend), (chars!('\u{eb1}'..='\u{eb1}'), GCB::Extend), (chars!('\u{eb3}'..='\u{eb3}'), GCB::SpacingMark), (chars!('\u{eb4}'..='\u{eb9}'), GCB::Extend), (chars!('\u{ebb}'..='\u{ebc}'), GCB::Extend), (chars!('\u{ec8}'..='\u{ecd}'), GCB::Extend), (chars!('\u{f18}'..='\u{f19}'), GCB::Extend), (chars!('\u{f35}'..='\u{f35}'), GCB::Extend), (chars!('\u{f37}'..='\u{f37}'), GCB::Extend), (chars!('\u{f39}'..='\u{f39}'), GCB::Extend), (chars!('\u{f3e}'..='\u{f3f}'), GCB::SpacingMark), (chars!('\u{f71}'..='\u{f7e}'), GCB::Extend), (chars!('\u{f7f}'..='\u{f7f}'), GCB::SpacingMark), (chars!('\u{f80}'..='\u{f84}'), GCB::Extend), (chars!('\u{f86}'..='\u{f87}'), GCB::Extend), (chars!('\u{f8d}'..='\u{f97}'), GCB::Extend), (chars!('\u{f99}'..='\u{fbc}'), GCB::Extend), (chars!('\u{fc6}'..='\u{fc6}'), GCB::Extend), (chars!('\u{102d}'..='\u{1030}'), GCB::Extend), (chars!('\u{1031}'..='\u{1031}'), GCB::SpacingMark), (chars!('\u{1032}'..='\u{1037}'), GCB::Extend), (chars!('\u{1039}'..='\u{103a}'), GCB::Extend), (chars!('\u{103b}'..='\u{103c}'), GCB::SpacingMark), (chars!('\u{103d}'..='\u{103e}'), GCB::Extend), (chars!('\u{1056}'..='\u{1057}'), GCB::SpacingMark), (chars!('\u{1058}'..='\u{1059}'), GCB::Extend), (chars!('\u{105e}'..='\u{1060}'), GCB::Extend), (chars!('\u{1071}'..='\u{1074}'), GCB::Extend), (chars!('\u{1082}'..='\u{1082}'), GCB::Extend), (chars!('\u{1084}'..='\u{1084}'), GCB::SpacingMark), (chars!('\u{1085}'..='\u{1086}'), GCB::Extend), (chars!('\u{108d}'..='\u{108d}'), GCB::Extend), (chars!('\u{109d}'..='\u{109d}'), GCB::Extend), (chars!('\u{1100}'..='\u{115f}'), GCB::L), (chars!('\u{1160}'..='\u{11a7}'), GCB::V), (chars!('\u{11a8}'..='\u{11ff}'), GCB::T), (chars!('\u{135d}'..='\u{135f}'), GCB::Extend), (chars!('\u{1712}'..='\u{1714}'), GCB::Extend), (chars!('\u{1732}'..='\u{1734}'), GCB::Extend), (chars!('\u{1752}'..='\u{1753}'), GCB::Extend), (chars!('\u{1772}'..='\u{1773}'), GCB::Extend), (chars!('\u{17b4}'..='\u{17b5}'), GCB::Extend), (chars!('\u{17b6}'..='\u{17b6}'), GCB::SpacingMark), (chars!('\u{17b7}'..='\u{17bd}'), GCB::Extend), (chars!('\u{17be}'..='\u{17c5}'), GCB::SpacingMark), (chars!('\u{17c6}'..='\u{17c6}'), GCB::Extend), (chars!('\u{17c7}'..='\u{17c8}'), GCB::SpacingMark), (chars!('\u{17c9}'..='\u{17d3}'), GCB::Extend), (chars!('\u{17dd}'..='\u{17dd}'), GCB::Extend), (chars!('\u{180b}'..='\u{180d}'), GCB::Extend), (chars!('\u{180e}'..='\u{180e}'), GCB::Control), (chars!('\u{1885}'..='\u{1886}'), GCB::Extend), (chars!('\u{18a9}'..='\u{18a9}'), GCB::Extend), (chars!('\u{1920}'..='\u{1922}'), GCB::Extend), (chars!('\u{1923}'..='\u{1926}'), GCB::SpacingMark), (chars!('\u{1927}'..='\u{1928}'), GCB::Extend), (chars!('\u{1929}'..='\u{192b}'), GCB::SpacingMark), (chars!('\u{1930}'..='\u{1931}'), GCB::SpacingMark), (chars!('\u{1932}'..='\u{1932}'), GCB::Extend), (chars!('\u{1933}'..='\u{1938}'), GCB::SpacingMark), (chars!('\u{1939}'..='\u{193b}'), GCB::Extend), (chars!('\u{1a17}'..='\u{1a18}'), GCB::Extend), (chars!('\u{1a19}'..='\u{1a1a}'), GCB::SpacingMark), (chars!('\u{1a1b}'..='\u{1a1b}'), GCB::Extend), (chars!('\u{1a55}'..='\u{1a55}'), GCB::SpacingMark), (chars!('\u{1a56}'..='\u{1a56}'), GCB::Extend), (chars!('\u{1a57}'..='\u{1a57}'), GCB::SpacingMark), (chars!('\u{1a58}'..='\u{1a5e}'), GCB::Extend), (chars!('\u{1a60}'..='\u{1a60}'), GCB::Extend), (chars!('\u{1a62}'..='\u{1a62}'), GCB::Extend), (chars!('\u{1a65}'..='\u{1a6c}'), GCB::Extend), (chars!('\u{1a6d}'..='\u{1a72}'), GCB::SpacingMark), (chars!('\u{1a73}'..='\u{1a7c}'), GCB::Extend), (chars!('\u{1a7f}'..='\u{1a7f}'), GCB::Extend), (chars!('\u{1ab0}'..='\u{1abe}'), GCB::Extend), (chars!('\u{1b00}'..='\u{1b03}'), GCB::Extend), (chars!('\u{1b04}'..='\u{1b04}'), GCB::SpacingMark), (chars!('\u{1b34}'..='\u{1b34}'), GCB::Extend), (chars!('\u{1b35}'..='\u{1b35}'), GCB::SpacingMark), (chars!('\u{1b36}'..='\u{1b3a}'), GCB::Extend), (chars!('\u{1b3b}'..='\u{1b3b}'), GCB::SpacingMark), (chars!('\u{1b3c}'..='\u{1b3c}'), GCB::Extend), (chars!('\u{1b3d}'..='\u{1b41}'), GCB::SpacingMark), (chars!('\u{1b42}'..='\u{1b42}'), GCB::Extend), (chars!('\u{1b43}'..='\u{1b44}'), GCB::SpacingMark), (chars!('\u{1b6b}'..='\u{1b73}'), GCB::Extend), (chars!('\u{1b80}'..='\u{1b81}'), GCB::Extend), (chars!('\u{1b82}'..='\u{1b82}'), GCB::SpacingMark), (chars!('\u{1ba1}'..='\u{1ba1}'), GCB::SpacingMark), (chars!('\u{1ba2}'..='\u{1ba5}'), GCB::Extend), (chars!('\u{1ba6}'..='\u{1ba7}'), GCB::SpacingMark), (chars!('\u{1ba8}'..='\u{1ba9}'), GCB::Extend), (chars!('\u{1baa}'..='\u{1baa}'), GCB::SpacingMark), (chars!('\u{1bab}'..='\u{1bad}'), GCB::Extend), (chars!('\u{1be6}'..='\u{1be6}'), GCB::Extend), (chars!('\u{1be7}'..='\u{1be7}'), GCB::SpacingMark), (chars!('\u{1be8}'..='\u{1be9}'), GCB::Extend), (chars!('\u{1bea}'..='\u{1bec}'), GCB::SpacingMark), (chars!('\u{1bed}'..='\u{1bed}'), GCB::Extend), (chars!('\u{1bee}'..='\u{1bee}'), GCB::SpacingMark), (chars!('\u{1bef}'..='\u{1bf1}'), GCB::Extend), (chars!('\u{1bf2}'..='\u{1bf3}'), GCB::SpacingMark), (chars!('\u{1c24}'..='\u{1c2b}'), GCB::SpacingMark), (chars!('\u{1c2c}'..='\u{1c33}'), GCB::Extend), (chars!('\u{1c34}'..='\u{1c35}'), GCB::SpacingMark), (chars!('\u{1c36}'..='\u{1c37}'), GCB::Extend), (chars!('\u{1cd0}'..='\u{1cd2}'), GCB::Extend), (chars!('\u{1cd4}'..='\u{1ce0}'), GCB::Extend), (chars!('\u{1ce1}'..='\u{1ce1}'), GCB::SpacingMark), (chars!('\u{1ce2}'..='\u{1ce8}'), GCB::Extend), (chars!('\u{1ced}'..='\u{1ced}'), GCB::Extend), (chars!('\u{1cf2}'..='\u{1cf3}'), GCB::SpacingMark), (chars!('\u{1cf4}'..='\u{1cf4}'), GCB::Extend), (chars!('\u{1cf7}'..='\u{1cf7}'), GCB::SpacingMark), (chars!('\u{1cf8}'..='\u{1cf9}'), GCB::Extend), (chars!('\u{1dc0}'..='\u{1df9}'), GCB::Extend), (chars!('\u{1dfb}'..='\u{1dff}'), GCB::Extend), (chars!('\u{200b}'..='\u{200b}'), GCB::Control), (chars!('\u{200c}'..='\u{200c}'), GCB::Extend), (chars!('\u{200d}'..='\u{200d}'), GCB::ZWJ), (chars!('\u{200e}'..='\u{200f}'), GCB::Control), (chars!('\u{2028}'..='\u{202e}'), GCB::Control), (chars!('\u{2060}'..='\u{206f}'), GCB::Control), (chars!('\u{20d0}'..='\u{20f0}'), GCB::Extend), (chars!('\u{261d}'..='\u{261d}'), GCB::E_Base), (chars!('\u{2640}'..='\u{2640}'), GCB::Glue_After_Zwj), (chars!('\u{2642}'..='\u{2642}'), GCB::Glue_After_Zwj), (chars!('\u{2695}'..='\u{2696}'), GCB::Glue_After_Zwj), (chars!('\u{26f9}'..='\u{26f9}'), GCB::E_Base), (chars!('\u{2708}'..='\u{2708}'), GCB::Glue_After_Zwj), (chars!('\u{270a}'..='\u{270d}'), GCB::E_Base), (chars!('\u{2764}'..='\u{2764}'), GCB::Glue_After_Zwj), (chars!('\u{2cef}'..='\u{2cf1}'), GCB::Extend), (chars!('\u{2d7f}'..='\u{2d7f}'), GCB::Extend), (chars!('\u{2de0}'..='\u{2dff}'), GCB::Extend), (chars!('\u{302a}'..='\u{302f}'), GCB::Extend), (chars!('\u{3099}'..='\u{309a}'), GCB::Extend), (chars!('\u{a66f}'..='\u{a672}'), GCB::Extend), (chars!('\u{a674}'..='\u{a67d}'), GCB::Extend), (chars!('\u{a69e}'..='\u{a69f}'), GCB::Extend), (chars!('\u{a6f0}'..='\u{a6f1}'), GCB::Extend), (chars!('\u{a802}'..='\u{a802}'), GCB::Extend), (chars!('\u{a806}'..='\u{a806}'), GCB::Extend), (chars!('\u{a80b}'..='\u{a80b}'), GCB::Extend), (chars!('\u{a823}'..='\u{a824}'), GCB::SpacingMark), (chars!('\u{a825}'..='\u{a826}'), GCB::Extend), (chars!('\u{a827}'..='\u{a827}'), GCB::SpacingMark), (chars!('\u{a880}'..='\u{a881}'), GCB::SpacingMark), (chars!('\u{a8b4}'..='\u{a8c3}'), GCB::SpacingMark), (chars!('\u{a8c4}'..='\u{a8c5}'), GCB::Extend), (chars!('\u{a8e0}'..='\u{a8f1}'), GCB::Extend), (chars!('\u{a926}'..='\u{a92d}'), GCB::Extend), (chars!('\u{a947}'..='\u{a951}'), GCB::Extend), (chars!('\u{a952}'..='\u{a953}'), GCB::SpacingMark), (chars!('\u{a960}'..='\u{a97c}'), GCB::L), (chars!('\u{a980}'..='\u{a982}'), GCB::Extend), (chars!('\u{a983}'..='\u{a983}'), GCB::SpacingMark), (chars!('\u{a9b3}'..='\u{a9b3}'), GCB::Extend), (chars!('\u{a9b4}'..='\u{a9b5}'), GCB::SpacingMark), (chars!('\u{a9b6}'..='\u{a9b9}'), GCB::Extend), (chars!('\u{a9ba}'..='\u{a9bb}'), GCB::SpacingMark), (chars!('\u{a9bc}'..='\u{a9bc}'), GCB::Extend), (chars!('\u{a9bd}'..='\u{a9c0}'), GCB::SpacingMark), (chars!('\u{a9e5}'..='\u{a9e5}'), GCB::Extend), (chars!('\u{aa29}'..='\u{aa2e}'), GCB::Extend), (chars!('\u{aa2f}'..='\u{aa30}'), GCB::SpacingMark), (chars!('\u{aa31}'..='\u{aa32}'), GCB::Extend), (chars!('\u{aa33}'..='\u{aa34}'), GCB::SpacingMark), (chars!('\u{aa35}'..='\u{aa36}'), GCB::Extend), (chars!('\u{aa43}'..='\u{aa43}'), GCB::Extend), (chars!('\u{aa4c}'..='\u{aa4c}'), GCB::Extend), (chars!('\u{aa4d}'..='\u{aa4d}'), GCB::SpacingMark), (chars!('\u{aa7c}'..='\u{aa7c}'), GCB::Extend), (chars!('\u{aab0}'..='\u{aab0}'), GCB::Extend), (chars!('\u{aab2}'..='\u{aab4}'), GCB::Extend), (chars!('\u{aab7}'..='\u{aab8}'), GCB::Extend), (chars!('\u{aabe}'..='\u{aabf}'), GCB::Extend), (chars!('\u{aac1}'..='\u{aac1}'), GCB::Extend), (chars!('\u{aaeb}'..='\u{aaeb}'), GCB::SpacingMark), (chars!('\u{aaec}'..='\u{aaed}'), GCB::Extend), (chars!('\u{aaee}'..='\u{aaef}'), GCB::SpacingMark), (chars!('\u{aaf5}'..='\u{aaf5}'), GCB::SpacingMark), (chars!('\u{aaf6}'..='\u{aaf6}'), GCB::Extend), (chars!('\u{abe3}'..='\u{abe4}'), GCB::SpacingMark), (chars!('\u{abe5}'..='\u{abe5}'), GCB::Extend), (chars!('\u{abe6}'..='\u{abe7}'), GCB::SpacingMark), (chars!('\u{abe8}'..='\u{abe8}'), GCB::Extend), (chars!('\u{abe9}'..='\u{abea}'), GCB::SpacingMark), (chars!('\u{abec}'..='\u{abec}'), GCB::SpacingMark), (chars!('\u{abed}'..='\u{abed}'), GCB::Extend), (chars!('\u{ac00}'..='\u{ac00}'), GCB::LV), (chars!('\u{ac01}'..='\u{ac1b}'), GCB::LVT), (chars!('\u{ac1c}'..='\u{ac1c}'), GCB::LV), (chars!('\u{ac1d}'..='\u{ac37}'), GCB::LVT), (chars!('\u{ac38}'..='\u{ac38}'), GCB::LV), (chars!('\u{ac39}'..='\u{ac53}'), GCB::LVT), (chars!('\u{ac54}'..='\u{ac54}'), GCB::LV), (chars!('\u{ac55}'..='\u{ac6f}'), GCB::LVT), (chars!('\u{ac70}'..='\u{ac70}'), GCB::LV), (chars!('\u{ac71}'..='\u{ac8b}'), GCB::LVT), (chars!('\u{ac8c}'..='\u{ac8c}'), GCB::LV), (chars!('\u{ac8d}'..='\u{aca7}'), GCB::LVT), (chars!('\u{aca8}'..='\u{aca8}'), GCB::LV), (chars!('\u{aca9}'..='\u{acc3}'), GCB::LVT), (chars!('\u{acc4}'..='\u{acc4}'), GCB::LV), (chars!('\u{acc5}'..='\u{acdf}'), GCB::LVT), (chars!('\u{ace0}'..='\u{ace0}'), GCB::LV), (chars!('\u{ace1}'..='\u{acfb}'), GCB::LVT), (chars!('\u{acfc}'..='\u{acfc}'), GCB::LV), (chars!('\u{acfd}'..='\u{ad17}'), GCB::LVT), (chars!('\u{ad18}'..='\u{ad18}'), GCB::LV), (chars!('\u{ad19}'..='\u{ad33}'), GCB::LVT), (chars!('\u{ad34}'..='\u{ad34}'), GCB::LV), (chars!('\u{ad35}'..='\u{ad4f}'), GCB::LVT), (chars!('\u{ad50}'..='\u{ad50}'), GCB::LV), (chars!('\u{ad51}'..='\u{ad6b}'), GCB::LVT), (chars!('\u{ad6c}'..='\u{ad6c}'), GCB::LV), (chars!('\u{ad6d}'..='\u{ad87}'), GCB::LVT), (chars!('\u{ad88}'..='\u{ad88}'), GCB::LV), (chars!('\u{ad89}'..='\u{ada3}'), GCB::LVT), (chars!('\u{ada4}'..='\u{ada4}'), GCB::LV), (chars!('\u{ada5}'..='\u{adbf}'), GCB::LVT), (chars!('\u{adc0}'..='\u{adc0}'), GCB::LV), (chars!('\u{adc1}'..='\u{addb}'), GCB::LVT), (chars!('\u{addc}'..='\u{addc}'), GCB::LV), (chars!('\u{addd}'..='\u{adf7}'), GCB::LVT), (chars!('\u{adf8}'..='\u{adf8}'), GCB::LV), (chars!('\u{adf9}'..='\u{ae13}'), GCB::LVT), (chars!('\u{ae14}'..='\u{ae14}'), GCB::LV), (chars!('\u{ae15}'..='\u{ae2f}'), GCB::LVT), (chars!('\u{ae30}'..='\u{ae30}'), GCB::LV), (chars!('\u{ae31}'..='\u{ae4b}'), GCB::LVT), (chars!('\u{ae4c}'..='\u{ae4c}'), GCB::LV), (chars!('\u{ae4d}'..='\u{ae67}'), GCB::LVT), (chars!('\u{ae68}'..='\u{ae68}'), GCB::LV), (chars!('\u{ae69}'..='\u{ae83}'), GCB::LVT), (chars!('\u{ae84}'..='\u{ae84}'), GCB::LV), (chars!('\u{ae85}'..='\u{ae9f}'), GCB::LVT), (chars!('\u{aea0}'..='\u{aea0}'), GCB::LV), (chars!('\u{aea1}'..='\u{aebb}'), GCB::LVT), (chars!('\u{aebc}'..='\u{aebc}'), GCB::LV), (chars!('\u{aebd}'..='\u{aed7}'), GCB::LVT), (chars!('\u{aed8}'..='\u{aed8}'), GCB::LV), (chars!('\u{aed9}'..='\u{aef3}'), GCB::LVT), (chars!('\u{aef4}'..='\u{aef4}'), GCB::LV), (chars!('\u{aef5}'..='\u{af0f}'), GCB::LVT), (chars!('\u{af10}'..='\u{af10}'), GCB::LV), (chars!('\u{af11}'..='\u{af2b}'), GCB::LVT), (chars!('\u{af2c}'..='\u{af2c}'), GCB::LV), (chars!('\u{af2d}'..='\u{af47}'), GCB::LVT), (chars!('\u{af48}'..='\u{af48}'), GCB::LV), (chars!('\u{af49}'..='\u{af63}'), GCB::LVT), (chars!('\u{af64}'..='\u{af64}'), GCB::LV), (chars!('\u{af65}'..='\u{af7f}'), GCB::LVT), (chars!('\u{af80}'..='\u{af80}'), GCB::LV), (chars!('\u{af81}'..='\u{af9b}'), GCB::LVT), (chars!('\u{af9c}'..='\u{af9c}'), GCB::LV), (chars!('\u{af9d}'..='\u{afb7}'), GCB::LVT), (chars!('\u{afb8}'..='\u{afb8}'), GCB::LV), (chars!('\u{afb9}'..='\u{afd3}'), GCB::LVT), (chars!('\u{afd4}'..='\u{afd4}'), GCB::LV), (chars!('\u{afd5}'..='\u{afef}'), GCB::LVT), (chars!('\u{aff0}'..='\u{aff0}'), GCB::LV), (chars!('\u{aff1}'..='\u{b00b}'), GCB::LVT), (chars!('\u{b00c}'..='\u{b00c}'), GCB::LV), (chars!('\u{b00d}'..='\u{b027}'), GCB::LVT), (chars!('\u{b028}'..='\u{b028}'), GCB::LV), (chars!('\u{b029}'..='\u{b043}'), GCB::LVT), (chars!('\u{b044}'..='\u{b044}'), GCB::LV), (chars!('\u{b045}'..='\u{b05f}'), GCB::LVT), (chars!('\u{b060}'..='\u{b060}'), GCB::LV), (chars!('\u{b061}'..='\u{b07b}'), GCB::LVT), (chars!('\u{b07c}'..='\u{b07c}'), GCB::LV), (chars!('\u{b07d}'..='\u{b097}'), GCB::LVT), (chars!('\u{b098}'..='\u{b098}'), GCB::LV), (chars!('\u{b099}'..='\u{b0b3}'), GCB::LVT), (chars!('\u{b0b4}'..='\u{b0b4}'), GCB::LV), (chars!('\u{b0b5}'..='\u{b0cf}'), GCB::LVT), (chars!('\u{b0d0}'..='\u{b0d0}'), GCB::LV), (chars!('\u{b0d1}'..='\u{b0eb}'), GCB::LVT), (chars!('\u{b0ec}'..='\u{b0ec}'), GCB::LV), (chars!('\u{b0ed}'..='\u{b107}'), GCB::LVT), (chars!('\u{b108}'..='\u{b108}'), GCB::LV), (chars!('\u{b109}'..='\u{b123}'), GCB::LVT), (chars!('\u{b124}'..='\u{b124}'), GCB::LV), (chars!('\u{b125}'..='\u{b13f}'), GCB::LVT), (chars!('\u{b140}'..='\u{b140}'), GCB::LV), (chars!('\u{b141}'..='\u{b15b}'), GCB::LVT), (chars!('\u{b15c}'..='\u{b15c}'), GCB::LV), (chars!('\u{b15d}'..='\u{b177}'), GCB::LVT), (chars!('\u{b178}'..='\u{b178}'), GCB::LV), (chars!('\u{b179}'..='\u{b193}'), GCB::LVT), (chars!('\u{b194}'..='\u{b194}'), GCB::LV), (chars!('\u{b195}'..='\u{b1af}'), GCB::LVT), (chars!('\u{b1b0}'..='\u{b1b0}'), GCB::LV), (chars!('\u{b1b1}'..='\u{b1cb}'), GCB::LVT), (chars!('\u{b1cc}'..='\u{b1cc}'), GCB::LV), (chars!('\u{b1cd}'..='\u{b1e7}'), GCB::LVT), (chars!('\u{b1e8}'..='\u{b1e8}'), GCB::LV), (chars!('\u{b1e9}'..='\u{b203}'), GCB::LVT), (chars!('\u{b204}'..='\u{b204}'), GCB::LV), (chars!('\u{b205}'..='\u{b21f}'), GCB::LVT), (chars!('\u{b220}'..='\u{b220}'), GCB::LV), (chars!('\u{b221}'..='\u{b23b}'), GCB::LVT), (chars!('\u{b23c}'..='\u{b23c}'), GCB::LV), (chars!('\u{b23d}'..='\u{b257}'), GCB::LVT), (chars!('\u{b258}'..='\u{b258}'), GCB::LV), (chars!('\u{b259}'..='\u{b273}'), GCB::LVT), (chars!('\u{b274}'..='\u{b274}'), GCB::LV), (chars!('\u{b275}'..='\u{b28f}'), GCB::LVT), (chars!('\u{b290}'..='\u{b290}'), GCB::LV), (chars!('\u{b291}'..='\u{b2ab}'), GCB::LVT), (chars!('\u{b2ac}'..='\u{b2ac}'), GCB::LV), (chars!('\u{b2ad}'..='\u{b2c7}'), GCB::LVT), (chars!('\u{b2c8}'..='\u{b2c8}'), GCB::LV), (chars!('\u{b2c9}'..='\u{b2e3}'), GCB::LVT), (chars!('\u{b2e4}'..='\u{b2e4}'), GCB::LV), (chars!('\u{b2e5}'..='\u{b2ff}'), GCB::LVT), (chars!('\u{b300}'..='\u{b300}'), GCB::LV), (chars!('\u{b301}'..='\u{b31b}'), GCB::LVT), (chars!('\u{b31c}'..='\u{b31c}'), GCB::LV), (chars!('\u{b31d}'..='\u{b337}'), GCB::LVT), (chars!('\u{b338}'..='\u{b338}'), GCB::LV), (chars!('\u{b339}'..='\u{b353}'), GCB::LVT), (chars!('\u{b354}'..='\u{b354}'), GCB::LV), (chars!('\u{b355}'..='\u{b36f}'), GCB::LVT), (chars!('\u{b370}'..='\u{b370}'), GCB::LV), (chars!('\u{b371}'..='\u{b38b}'), GCB::LVT), (chars!('\u{b38c}'..='\u{b38c}'), GCB::LV), (chars!('\u{b38d}'..='\u{b3a7}'), GCB::LVT), (chars!('\u{b3a8}'..='\u{b3a8}'), GCB::LV), (chars!('\u{b3a9}'..='\u{b3c3}'), GCB::LVT), (chars!('\u{b3c4}'..='\u{b3c4}'), GCB::LV), (chars!('\u{b3c5}'..='\u{b3df}'), GCB::LVT), (chars!('\u{b3e0}'..='\u{b3e0}'), GCB::LV), (chars!('\u{b3e1}'..='\u{b3fb}'), GCB::LVT), (chars!('\u{b3fc}'..='\u{b3fc}'), GCB::LV), (chars!('\u{b3fd}'..='\u{b417}'), GCB::LVT), (chars!('\u{b418}'..='\u{b418}'), GCB::LV), (chars!('\u{b419}'..='\u{b433}'), GCB::LVT), (chars!('\u{b434}'..='\u{b434}'), GCB::LV), (chars!('\u{b435}'..='\u{b44f}'), GCB::LVT), (chars!('\u{b450}'..='\u{b450}'), GCB::LV), (chars!('\u{b451}'..='\u{b46b}'), GCB::LVT), (chars!('\u{b46c}'..='\u{b46c}'), GCB::LV), (chars!('\u{b46d}'..='\u{b487}'), GCB::LVT), (chars!('\u{b488}'..='\u{b488}'), GCB::LV), (chars!('\u{b489}'..='\u{b4a3}'), GCB::LVT), (chars!('\u{b4a4}'..='\u{b4a4}'), GCB::LV), (chars!('\u{b4a5}'..='\u{b4bf}'), GCB::LVT), (chars!('\u{b4c0}'..='\u{b4c0}'), GCB::LV), (chars!('\u{b4c1}'..='\u{b4db}'), GCB::LVT), (chars!('\u{b4dc}'..='\u{b4dc}'), GCB::LV), (chars!('\u{b4dd}'..='\u{b4f7}'), GCB::LVT), (chars!('\u{b4f8}'..='\u{b4f8}'), GCB::LV), (chars!('\u{b4f9}'..='\u{b513}'), GCB::LVT), (chars!('\u{b514}'..='\u{b514}'), GCB::LV), (chars!('\u{b515}'..='\u{b52f}'), GCB::LVT), (chars!('\u{b530}'..='\u{b530}'), GCB::LV), (chars!('\u{b531}'..='\u{b54b}'), GCB::LVT), (chars!('\u{b54c}'..='\u{b54c}'), GCB::LV), (chars!('\u{b54d}'..='\u{b567}'), GCB::LVT), (chars!('\u{b568}'..='\u{b568}'), GCB::LV), (chars!('\u{b569}'..='\u{b583}'), GCB::LVT), (chars!('\u{b584}'..='\u{b584}'), GCB::LV), (chars!('\u{b585}'..='\u{b59f}'), GCB::LVT), (chars!('\u{b5a0}'..='\u{b5a0}'), GCB::LV), (chars!('\u{b5a1}'..='\u{b5bb}'), GCB::LVT), (chars!('\u{b5bc}'..='\u{b5bc}'), GCB::LV), (chars!('\u{b5bd}'..='\u{b5d7}'), GCB::LVT), (chars!('\u{b5d8}'..='\u{b5d8}'), GCB::LV), (chars!('\u{b5d9}'..='\u{b5f3}'), GCB::LVT), (chars!('\u{b5f4}'..='\u{b5f4}'), GCB::LV), (chars!('\u{b5f5}'..='\u{b60f}'), GCB::LVT), (chars!('\u{b610}'..='\u{b610}'), GCB::LV), (chars!('\u{b611}'..='\u{b62b}'), GCB::LVT), (chars!('\u{b62c}'..='\u{b62c}'), GCB::LV), (chars!('\u{b62d}'..='\u{b647}'), GCB::LVT), (chars!('\u{b648}'..='\u{b648}'), GCB::LV), (chars!('\u{b649}'..='\u{b663}'), GCB::LVT), (chars!('\u{b664}'..='\u{b664}'), GCB::LV), (chars!('\u{b665}'..='\u{b67f}'), GCB::LVT), (chars!('\u{b680}'..='\u{b680}'), GCB::LV), (chars!('\u{b681}'..='\u{b69b}'), GCB::LVT), (chars!('\u{b69c}'..='\u{b69c}'), GCB::LV), (chars!('\u{b69d}'..='\u{b6b7}'), GCB::LVT), (chars!('\u{b6b8}'..='\u{b6b8}'), GCB::LV), (chars!('\u{b6b9}'..='\u{b6d3}'), GCB::LVT), (chars!('\u{b6d4}'..='\u{b6d4}'), GCB::LV), (chars!('\u{b6d5}'..='\u{b6ef}'), GCB::LVT), (chars!('\u{b6f0}'..='\u{b6f0}'), GCB::LV), (chars!('\u{b6f1}'..='\u{b70b}'), GCB::LVT), (chars!('\u{b70c}'..='\u{b70c}'), GCB::LV), (chars!('\u{b70d}'..='\u{b727}'), GCB::LVT), (chars!('\u{b728}'..='\u{b728}'), GCB::LV), (chars!('\u{b729}'..='\u{b743}'), GCB::LVT), (chars!('\u{b744}'..='\u{b744}'), GCB::LV), (chars!('\u{b745}'..='\u{b75f}'), GCB::LVT), (chars!('\u{b760}'..='\u{b760}'), GCB::LV), (chars!('\u{b761}'..='\u{b77b}'), GCB::LVT), (chars!('\u{b77c}'..='\u{b77c}'), GCB::LV), (chars!('\u{b77d}'..='\u{b797}'), GCB::LVT), (chars!('\u{b798}'..='\u{b798}'), GCB::LV), (chars!('\u{b799}'..='\u{b7b3}'), GCB::LVT), (chars!('\u{b7b4}'..='\u{b7b4}'), GCB::LV), (chars!('\u{b7b5}'..='\u{b7cf}'), GCB::LVT), (chars!('\u{b7d0}'..='\u{b7d0}'), GCB::LV), (chars!('\u{b7d1}'..='\u{b7eb}'), GCB::LVT), (chars!('\u{b7ec}'..='\u{b7ec}'), GCB::LV), (chars!('\u{b7ed}'..='\u{b807}'), GCB::LVT), (chars!('\u{b808}'..='\u{b808}'), GCB::LV), (chars!('\u{b809}'..='\u{b823}'), GCB::LVT), (chars!('\u{b824}'..='\u{b824}'), GCB::LV), (chars!('\u{b825}'..='\u{b83f}'), GCB::LVT), (chars!('\u{b840}'..='\u{b840}'), GCB::LV), (chars!('\u{b841}'..='\u{b85b}'), GCB::LVT), (chars!('\u{b85c}'..='\u{b85c}'), GCB::LV), (chars!('\u{b85d}'..='\u{b877}'), GCB::LVT), (chars!('\u{b878}'..='\u{b878}'), GCB::LV), (chars!('\u{b879}'..='\u{b893}'), GCB::LVT), (chars!('\u{b894}'..='\u{b894}'), GCB::LV), (chars!('\u{b895}'..='\u{b8af}'), GCB::LVT), (chars!('\u{b8b0}'..='\u{b8b0}'), GCB::LV), (chars!('\u{b8b1}'..='\u{b8cb}'), GCB::LVT), (chars!('\u{b8cc}'..='\u{b8cc}'), GCB::LV), (chars!('\u{b8cd}'..='\u{b8e7}'), GCB::LVT), (chars!('\u{b8e8}'..='\u{b8e8}'), GCB::LV), (chars!('\u{b8e9}'..='\u{b903}'), GCB::LVT), (chars!('\u{b904}'..='\u{b904}'), GCB::LV), (chars!('\u{b905}'..='\u{b91f}'), GCB::LVT), (chars!('\u{b920}'..='\u{b920}'), GCB::LV), (chars!('\u{b921}'..='\u{b93b}'), GCB::LVT), (chars!('\u{b93c}'..='\u{b93c}'), GCB::LV), (chars!('\u{b93d}'..='\u{b957}'), GCB::LVT), (chars!('\u{b958}'..='\u{b958}'), GCB::LV), (chars!('\u{b959}'..='\u{b973}'), GCB::LVT), (chars!('\u{b974}'..='\u{b974}'), GCB::LV), (chars!('\u{b975}'..='\u{b98f}'), GCB::LVT), (chars!('\u{b990}'..='\u{b990}'), GCB::LV), (chars!('\u{b991}'..='\u{b9ab}'), GCB::LVT), (chars!('\u{b9ac}'..='\u{b9ac}'), GCB::LV), (chars!('\u{b9ad}'..='\u{b9c7}'), GCB::LVT), (chars!('\u{b9c8}'..='\u{b9c8}'), GCB::LV), (chars!('\u{b9c9}'..='\u{b9e3}'), GCB::LVT), (chars!('\u{b9e4}'..='\u{b9e4}'), GCB::LV), (chars!('\u{b9e5}'..='\u{b9ff}'), GCB::LVT), (chars!('\u{ba00}'..='\u{ba00}'), GCB::LV), (chars!('\u{ba01}'..='\u{ba1b}'), GCB::LVT), (chars!('\u{ba1c}'..='\u{ba1c}'), GCB::LV), (chars!('\u{ba1d}'..='\u{ba37}'), GCB::LVT), (chars!('\u{ba38}'..='\u{ba38}'), GCB::LV), (chars!('\u{ba39}'..='\u{ba53}'), GCB::LVT), (chars!('\u{ba54}'..='\u{ba54}'), GCB::LV), (chars!('\u{ba55}'..='\u{ba6f}'), GCB::LVT), (chars!('\u{ba70}'..='\u{ba70}'), GCB::LV), (chars!('\u{ba71}'..='\u{ba8b}'), GCB::LVT), (chars!('\u{ba8c}'..='\u{ba8c}'), GCB::LV), (chars!('\u{ba8d}'..='\u{baa7}'), GCB::LVT), (chars!('\u{baa8}'..='\u{baa8}'), GCB::LV), (chars!('\u{baa9}'..='\u{bac3}'), GCB::LVT), (chars!('\u{bac4}'..='\u{bac4}'), GCB::LV), (chars!('\u{bac5}'..='\u{badf}'), GCB::LVT), (chars!('\u{bae0}'..='\u{bae0}'), GCB::LV), (chars!('\u{bae1}'..='\u{bafb}'), GCB::LVT), (chars!('\u{bafc}'..='\u{bafc}'), GCB::LV), (chars!('\u{bafd}'..='\u{bb17}'), GCB::LVT), (chars!('\u{bb18}'..='\u{bb18}'), GCB::LV), (chars!('\u{bb19}'..='\u{bb33}'), GCB::LVT), (chars!('\u{bb34}'..='\u{bb34}'), GCB::LV), (chars!('\u{bb35}'..='\u{bb4f}'), GCB::LVT), (chars!('\u{bb50}'..='\u{bb50}'), GCB::LV), (chars!('\u{bb51}'..='\u{bb6b}'), GCB::LVT), (chars!('\u{bb6c}'..='\u{bb6c}'), GCB::LV), (chars!('\u{bb6d}'..='\u{bb87}'), GCB::LVT), (chars!('\u{bb88}'..='\u{bb88}'), GCB::LV), (chars!('\u{bb89}'..='\u{bba3}'), GCB::LVT), (chars!('\u{bba4}'..='\u{bba4}'), GCB::LV), (chars!('\u{bba5}'..='\u{bbbf}'), GCB::LVT), (chars!('\u{bbc0}'..='\u{bbc0}'), GCB::LV), (chars!('\u{bbc1}'..='\u{bbdb}'), GCB::LVT), (chars!('\u{bbdc}'..='\u{bbdc}'), GCB::LV), (chars!('\u{bbdd}'..='\u{bbf7}'), GCB::LVT), (chars!('\u{bbf8}'..='\u{bbf8}'), GCB::LV), (chars!('\u{bbf9}'..='\u{bc13}'), GCB::LVT), (chars!('\u{bc14}'..='\u{bc14}'), GCB::LV), (chars!('\u{bc15}'..='\u{bc2f}'), GCB::LVT), (chars!('\u{bc30}'..='\u{bc30}'), GCB::LV), (chars!('\u{bc31}'..='\u{bc4b}'), GCB::LVT), (chars!('\u{bc4c}'..='\u{bc4c}'), GCB::LV), (chars!('\u{bc4d}'..='\u{bc67}'), GCB::LVT), (chars!('\u{bc68}'..='\u{bc68}'), GCB::LV), (chars!('\u{bc69}'..='\u{bc83}'), GCB::LVT), (chars!('\u{bc84}'..='\u{bc84}'), GCB::LV), (chars!('\u{bc85}'..='\u{bc9f}'), GCB::LVT), (chars!('\u{bca0}'..='\u{bca0}'), GCB::LV), (chars!('\u{bca1}'..='\u{bcbb}'), GCB::LVT), (chars!('\u{bcbc}'..='\u{bcbc}'), GCB::LV), (chars!('\u{bcbd}'..='\u{bcd7}'), GCB::LVT), (chars!('\u{bcd8}'..='\u{bcd8}'), GCB::LV), (chars!('\u{bcd9}'..='\u{bcf3}'), GCB::LVT), (chars!('\u{bcf4}'..='\u{bcf4}'), GCB::LV), (chars!('\u{bcf5}'..='\u{bd0f}'), GCB::LVT), (chars!('\u{bd10}'..='\u{bd10}'), GCB::LV), (chars!('\u{bd11}'..='\u{bd2b}'), GCB::LVT), (chars!('\u{bd2c}'..='\u{bd2c}'), GCB::LV), (chars!('\u{bd2d}'..='\u{bd47}'), GCB::LVT), (chars!('\u{bd48}'..='\u{bd48}'), GCB::LV), (chars!('\u{bd49}'..='\u{bd63}'), GCB::LVT), (chars!('\u{bd64}'..='\u{bd64}'), GCB::LV), (chars!('\u{bd65}'..='\u{bd7f}'), GCB::LVT), (chars!('\u{bd80}'..='\u{bd80}'), GCB::LV), (chars!('\u{bd81}'..='\u{bd9b}'), GCB::LVT), (chars!('\u{bd9c}'..='\u{bd9c}'), GCB::LV), (chars!('\u{bd9d}'..='\u{bdb7}'), GCB::LVT), (chars!('\u{bdb8}'..='\u{bdb8}'), GCB::LV), (chars!('\u{bdb9}'..='\u{bdd3}'), GCB::LVT), (chars!('\u{bdd4}'..='\u{bdd4}'), GCB::LV), (chars!('\u{bdd5}'..='\u{bdef}'), GCB::LVT), (chars!('\u{bdf0}'..='\u{bdf0}'), GCB::LV), (chars!('\u{bdf1}'..='\u{be0b}'), GCB::LVT), (chars!('\u{be0c}'..='\u{be0c}'), GCB::LV), (chars!('\u{be0d}'..='\u{be27}'), GCB::LVT), (chars!('\u{be28}'..='\u{be28}'), GCB::LV), (chars!('\u{be29}'..='\u{be43}'), GCB::LVT), (chars!('\u{be44}'..='\u{be44}'), GCB::LV), (chars!('\u{be45}'..='\u{be5f}'), GCB::LVT), (chars!('\u{be60}'..='\u{be60}'), GCB::LV), (chars!('\u{be61}'..='\u{be7b}'), GCB::LVT), (chars!('\u{be7c}'..='\u{be7c}'), GCB::LV), (chars!('\u{be7d}'..='\u{be97}'), GCB::LVT), (chars!('\u{be98}'..='\u{be98}'), GCB::LV), (chars!('\u{be99}'..='\u{beb3}'), GCB::LVT), (chars!('\u{beb4}'..='\u{beb4}'), GCB::LV), (chars!('\u{beb5}'..='\u{becf}'), GCB::LVT), (chars!('\u{bed0}'..='\u{bed0}'), GCB::LV), (chars!('\u{bed1}'..='\u{beeb}'), GCB::LVT), (chars!('\u{beec}'..='\u{beec}'), GCB::LV), (chars!('\u{beed}'..='\u{bf07}'), GCB::LVT), (chars!('\u{bf08}'..='\u{bf08}'), GCB::LV), (chars!('\u{bf09}'..='\u{bf23}'), GCB::LVT), (chars!('\u{bf24}'..='\u{bf24}'), GCB::LV), (chars!('\u{bf25}'..='\u{bf3f}'), GCB::LVT), (chars!('\u{bf40}'..='\u{bf40}'), GCB::LV), (chars!('\u{bf41}'..='\u{bf5b}'), GCB::LVT), (chars!('\u{bf5c}'..='\u{bf5c}'), GCB::LV), (chars!('\u{bf5d}'..='\u{bf77}'), GCB::LVT), (chars!('\u{bf78}'..='\u{bf78}'), GCB::LV), (chars!('\u{bf79}'..='\u{bf93}'), GCB::LVT), (chars!('\u{bf94}'..='\u{bf94}'), GCB::LV), (chars!('\u{bf95}'..='\u{bfaf}'), GCB::LVT), (chars!('\u{bfb0}'..='\u{bfb0}'), GCB::LV), (chars!('\u{bfb1}'..='\u{bfcb}'), GCB::LVT), (chars!('\u{bfcc}'..='\u{bfcc}'), GCB::LV), (chars!('\u{bfcd}'..='\u{bfe7}'), GCB::LVT), (chars!('\u{bfe8}'..='\u{bfe8}'), GCB::LV), (chars!('\u{bfe9}'..='\u{c003}'), GCB::LVT), (chars!('\u{c004}'..='\u{c004}'), GCB::LV), (chars!('\u{c005}'..='\u{c01f}'), GCB::LVT), (chars!('\u{c020}'..='\u{c020}'), GCB::LV), (chars!('\u{c021}'..='\u{c03b}'), GCB::LVT), (chars!('\u{c03c}'..='\u{c03c}'), GCB::LV), (chars!('\u{c03d}'..='\u{c057}'), GCB::LVT), (chars!('\u{c058}'..='\u{c058}'), GCB::LV), (chars!('\u{c059}'..='\u{c073}'), GCB::LVT), (chars!('\u{c074}'..='\u{c074}'), GCB::LV), (chars!('\u{c075}'..='\u{c08f}'), GCB::LVT), (chars!('\u{c090}'..='\u{c090}'), GCB::LV), (chars!('\u{c091}'..='\u{c0ab}'), GCB::LVT), (chars!('\u{c0ac}'..='\u{c0ac}'), GCB::LV), (chars!('\u{c0ad}'..='\u{c0c7}'), GCB::LVT), (chars!('\u{c0c8}'..='\u{c0c8}'), GCB::LV), (chars!('\u{c0c9}'..='\u{c0e3}'), GCB::LVT), (chars!('\u{c0e4}'..='\u{c0e4}'), GCB::LV), (chars!('\u{c0e5}'..='\u{c0ff}'), GCB::LVT), (chars!('\u{c100}'..='\u{c100}'), GCB::LV), (chars!('\u{c101}'..='\u{c11b}'), GCB::LVT), (chars!('\u{c11c}'..='\u{c11c}'), GCB::LV), (chars!('\u{c11d}'..='\u{c137}'), GCB::LVT), (chars!('\u{c138}'..='\u{c138}'), GCB::LV), (chars!('\u{c139}'..='\u{c153}'), GCB::LVT), (chars!('\u{c154}'..='\u{c154}'), GCB::LV), (chars!('\u{c155}'..='\u{c16f}'), GCB::LVT), (chars!('\u{c170}'..='\u{c170}'), GCB::LV), (chars!('\u{c171}'..='\u{c18b}'), GCB::LVT), (chars!('\u{c18c}'..='\u{c18c}'), GCB::LV), (chars!('\u{c18d}'..='\u{c1a7}'), GCB::LVT), (chars!('\u{c1a8}'..='\u{c1a8}'), GCB::LV), (chars!('\u{c1a9}'..='\u{c1c3}'), GCB::LVT), (chars!('\u{c1c4}'..='\u{c1c4}'), GCB::LV), (chars!('\u{c1c5}'..='\u{c1df}'), GCB::LVT), (chars!('\u{c1e0}'..='\u{c1e0}'), GCB::LV), (chars!('\u{c1e1}'..='\u{c1fb}'), GCB::LVT), (chars!('\u{c1fc}'..='\u{c1fc}'), GCB::LV), (chars!('\u{c1fd}'..='\u{c217}'), GCB::LVT), (chars!('\u{c218}'..='\u{c218}'), GCB::LV), (chars!('\u{c219}'..='\u{c233}'), GCB::LVT), (chars!('\u{c234}'..='\u{c234}'), GCB::LV), (chars!('\u{c235}'..='\u{c24f}'), GCB::LVT), (chars!('\u{c250}'..='\u{c250}'), GCB::LV), (chars!('\u{c251}'..='\u{c26b}'), GCB::LVT), (chars!('\u{c26c}'..='\u{c26c}'), GCB::LV), (chars!('\u{c26d}'..='\u{c287}'), GCB::LVT), (chars!('\u{c288}'..='\u{c288}'), GCB::LV), (chars!('\u{c289}'..='\u{c2a3}'), GCB::LVT), (chars!('\u{c2a4}'..='\u{c2a4}'), GCB::LV), (chars!('\u{c2a5}'..='\u{c2bf}'), GCB::LVT), (chars!('\u{c2c0}'..='\u{c2c0}'), GCB::LV), (chars!('\u{c2c1}'..='\u{c2db}'), GCB::LVT), (chars!('\u{c2dc}'..='\u{c2dc}'), GCB::LV), (chars!('\u{c2dd}'..='\u{c2f7}'), GCB::LVT), (chars!('\u{c2f8}'..='\u{c2f8}'), GCB::LV), (chars!('\u{c2f9}'..='\u{c313}'), GCB::LVT), (chars!('\u{c314}'..='\u{c314}'), GCB::LV), (chars!('\u{c315}'..='\u{c32f}'), GCB::LVT), (chars!('\u{c330}'..='\u{c330}'), GCB::LV), (chars!('\u{c331}'..='\u{c34b}'), GCB::LVT), (chars!('\u{c34c}'..='\u{c34c}'), GCB::LV), (chars!('\u{c34d}'..='\u{c367}'), GCB::LVT), (chars!('\u{c368}'..='\u{c368}'), GCB::LV), (chars!('\u{c369}'..='\u{c383}'), GCB::LVT), (chars!('\u{c384}'..='\u{c384}'), GCB::LV), (chars!('\u{c385}'..='\u{c39f}'), GCB::LVT), (chars!('\u{c3a0}'..='\u{c3a0}'), GCB::LV), (chars!('\u{c3a1}'..='\u{c3bb}'), GCB::LVT), (chars!('\u{c3bc}'..='\u{c3bc}'), GCB::LV), (chars!('\u{c3bd}'..='\u{c3d7}'), GCB::LVT), (chars!('\u{c3d8}'..='\u{c3d8}'), GCB::LV), (chars!('\u{c3d9}'..='\u{c3f3}'), GCB::LVT), (chars!('\u{c3f4}'..='\u{c3f4}'), GCB::LV), (chars!('\u{c3f5}'..='\u{c40f}'), GCB::LVT), (chars!('\u{c410}'..='\u{c410}'), GCB::LV), (chars!('\u{c411}'..='\u{c42b}'), GCB::LVT), (chars!('\u{c42c}'..='\u{c42c}'), GCB::LV), (chars!('\u{c42d}'..='\u{c447}'), GCB::LVT), (chars!('\u{c448}'..='\u{c448}'), GCB::LV), (chars!('\u{c449}'..='\u{c463}'), GCB::LVT), (chars!('\u{c464}'..='\u{c464}'), GCB::LV), (chars!('\u{c465}'..='\u{c47f}'), GCB::LVT), (chars!('\u{c480}'..='\u{c480}'), GCB::LV), (chars!('\u{c481}'..='\u{c49b}'), GCB::LVT), (chars!('\u{c49c}'..='\u{c49c}'), GCB::LV), (chars!('\u{c49d}'..='\u{c4b7}'), GCB::LVT), (chars!('\u{c4b8}'..='\u{c4b8}'), GCB::LV), (chars!('\u{c4b9}'..='\u{c4d3}'), GCB::LVT), (chars!('\u{c4d4}'..='\u{c4d4}'), GCB::LV), (chars!('\u{c4d5}'..='\u{c4ef}'), GCB::LVT), (chars!('\u{c4f0}'..='\u{c4f0}'), GCB::LV), (chars!('\u{c4f1}'..='\u{c50b}'), GCB::LVT), (chars!('\u{c50c}'..='\u{c50c}'), GCB::LV), (chars!('\u{c50d}'..='\u{c527}'), GCB::LVT), (chars!('\u{c528}'..='\u{c528}'), GCB::LV), (chars!('\u{c529}'..='\u{c543}'), GCB::LVT), (chars!('\u{c544}'..='\u{c544}'), GCB::LV), (chars!('\u{c545}'..='\u{c55f}'), GCB::LVT), (chars!('\u{c560}'..='\u{c560}'), GCB::LV), (chars!('\u{c561}'..='\u{c57b}'), GCB::LVT), (chars!('\u{c57c}'..='\u{c57c}'), GCB::LV), (chars!('\u{c57d}'..='\u{c597}'), GCB::LVT), (chars!('\u{c598}'..='\u{c598}'), GCB::LV), (chars!('\u{c599}'..='\u{c5b3}'), GCB::LVT), (chars!('\u{c5b4}'..='\u{c5b4}'), GCB::LV), (chars!('\u{c5b5}'..='\u{c5cf}'), GCB::LVT), (chars!('\u{c5d0}'..='\u{c5d0}'), GCB::LV), (chars!('\u{c5d1}'..='\u{c5eb}'), GCB::LVT), (chars!('\u{c5ec}'..='\u{c5ec}'), GCB::LV), (chars!('\u{c5ed}'..='\u{c607}'), GCB::LVT), (chars!('\u{c608}'..='\u{c608}'), GCB::LV), (chars!('\u{c609}'..='\u{c623}'), GCB::LVT), (chars!('\u{c624}'..='\u{c624}'), GCB::LV), (chars!('\u{c625}'..='\u{c63f}'), GCB::LVT), (chars!('\u{c640}'..='\u{c640}'), GCB::LV), (chars!('\u{c641}'..='\u{c65b}'), GCB::LVT), (chars!('\u{c65c}'..='\u{c65c}'), GCB::LV), (chars!('\u{c65d}'..='\u{c677}'), GCB::LVT), (chars!('\u{c678}'..='\u{c678}'), GCB::LV), (chars!('\u{c679}'..='\u{c693}'), GCB::LVT), (chars!('\u{c694}'..='\u{c694}'), GCB::LV), (chars!('\u{c695}'..='\u{c6af}'), GCB::LVT), (chars!('\u{c6b0}'..='\u{c6b0}'), GCB::LV), (chars!('\u{c6b1}'..='\u{c6cb}'), GCB::LVT), (chars!('\u{c6cc}'..='\u{c6cc}'), GCB::LV), (chars!('\u{c6cd}'..='\u{c6e7}'), GCB::LVT), (chars!('\u{c6e8}'..='\u{c6e8}'), GCB::LV), (chars!('\u{c6e9}'..='\u{c703}'), GCB::LVT), (chars!('\u{c704}'..='\u{c704}'), GCB::LV), (chars!('\u{c705}'..='\u{c71f}'), GCB::LVT), (chars!('\u{c720}'..='\u{c720}'), GCB::LV), (chars!('\u{c721}'..='\u{c73b}'), GCB::LVT), (chars!('\u{c73c}'..='\u{c73c}'), GCB::LV), (chars!('\u{c73d}'..='\u{c757}'), GCB::LVT), (chars!('\u{c758}'..='\u{c758}'), GCB::LV), (chars!('\u{c759}'..='\u{c773}'), GCB::LVT), (chars!('\u{c774}'..='\u{c774}'), GCB::LV), (chars!('\u{c775}'..='\u{c78f}'), GCB::LVT), (chars!('\u{c790}'..='\u{c790}'), GCB::LV), (chars!('\u{c791}'..='\u{c7ab}'), GCB::LVT), (chars!('\u{c7ac}'..='\u{c7ac}'), GCB::LV), (chars!('\u{c7ad}'..='\u{c7c7}'), GCB::LVT), (chars!('\u{c7c8}'..='\u{c7c8}'), GCB::LV), (chars!('\u{c7c9}'..='\u{c7e3}'), GCB::LVT), (chars!('\u{c7e4}'..='\u{c7e4}'), GCB::LV), (chars!('\u{c7e5}'..='\u{c7ff}'), GCB::LVT), (chars!('\u{c800}'..='\u{c800}'), GCB::LV), (chars!('\u{c801}'..='\u{c81b}'), GCB::LVT), (chars!('\u{c81c}'..='\u{c81c}'), GCB::LV), (chars!('\u{c81d}'..='\u{c837}'), GCB::LVT), (chars!('\u{c838}'..='\u{c838}'), GCB::LV), (chars!('\u{c839}'..='\u{c853}'), GCB::LVT), (chars!('\u{c854}'..='\u{c854}'), GCB::LV), (chars!('\u{c855}'..='\u{c86f}'), GCB::LVT), (chars!('\u{c870}'..='\u{c870}'), GCB::LV), (chars!('\u{c871}'..='\u{c88b}'), GCB::LVT), (chars!('\u{c88c}'..='\u{c88c}'), GCB::LV), (chars!('\u{c88d}'..='\u{c8a7}'), GCB::LVT), (chars!('\u{c8a8}'..='\u{c8a8}'), GCB::LV), (chars!('\u{c8a9}'..='\u{c8c3}'), GCB::LVT), (chars!('\u{c8c4}'..='\u{c8c4}'), GCB::LV), (chars!('\u{c8c5}'..='\u{c8df}'), GCB::LVT), (chars!('\u{c8e0}'..='\u{c8e0}'), GCB::LV), (chars!('\u{c8e1}'..='\u{c8fb}'), GCB::LVT), (chars!('\u{c8fc}'..='\u{c8fc}'), GCB::LV), (chars!('\u{c8fd}'..='\u{c917}'), GCB::LVT), (chars!('\u{c918}'..='\u{c918}'), GCB::LV), (chars!('\u{c919}'..='\u{c933}'), GCB::LVT), (chars!('\u{c934}'..='\u{c934}'), GCB::LV), (chars!('\u{c935}'..='\u{c94f}'), GCB::LVT), (chars!('\u{c950}'..='\u{c950}'), GCB::LV), (chars!('\u{c951}'..='\u{c96b}'), GCB::LVT), (chars!('\u{c96c}'..='\u{c96c}'), GCB::LV), (chars!('\u{c96d}'..='\u{c987}'), GCB::LVT), (chars!('\u{c988}'..='\u{c988}'), GCB::LV), (chars!('\u{c989}'..='\u{c9a3}'), GCB::LVT), (chars!('\u{c9a4}'..='\u{c9a4}'), GCB::LV), (chars!('\u{c9a5}'..='\u{c9bf}'), GCB::LVT), (chars!('\u{c9c0}'..='\u{c9c0}'), GCB::LV), (chars!('\u{c9c1}'..='\u{c9db}'), GCB::LVT), (chars!('\u{c9dc}'..='\u{c9dc}'), GCB::LV), (chars!('\u{c9dd}'..='\u{c9f7}'), GCB::LVT), (chars!('\u{c9f8}'..='\u{c9f8}'), GCB::LV), (chars!('\u{c9f9}'..='\u{ca13}'), GCB::LVT), (chars!('\u{ca14}'..='\u{ca14}'), GCB::LV), (chars!('\u{ca15}'..='\u{ca2f}'), GCB::LVT), (chars!('\u{ca30}'..='\u{ca30}'), GCB::LV), (chars!('\u{ca31}'..='\u{ca4b}'), GCB::LVT), (chars!('\u{ca4c}'..='\u{ca4c}'), GCB::LV), (chars!('\u{ca4d}'..='\u{ca67}'), GCB::LVT), (chars!('\u{ca68}'..='\u{ca68}'), GCB::LV), (chars!('\u{ca69}'..='\u{ca83}'), GCB::LVT), (chars!('\u{ca84}'..='\u{ca84}'), GCB::LV), (chars!('\u{ca85}'..='\u{ca9f}'), GCB::LVT), (chars!('\u{caa0}'..='\u{caa0}'), GCB::LV), (chars!('\u{caa1}'..='\u{cabb}'), GCB::LVT), (chars!('\u{cabc}'..='\u{cabc}'), GCB::LV), (chars!('\u{cabd}'..='\u{cad7}'), GCB::LVT), (chars!('\u{cad8}'..='\u{cad8}'), GCB::LV), (chars!('\u{cad9}'..='\u{caf3}'), GCB::LVT), (chars!('\u{caf4}'..='\u{caf4}'), GCB::LV), (chars!('\u{caf5}'..='\u{cb0f}'), GCB::LVT), (chars!('\u{cb10}'..='\u{cb10}'), GCB::LV), (chars!('\u{cb11}'..='\u{cb2b}'), GCB::LVT), (chars!('\u{cb2c}'..='\u{cb2c}'), GCB::LV), (chars!('\u{cb2d}'..='\u{cb47}'), GCB::LVT), (chars!('\u{cb48}'..='\u{cb48}'), GCB::LV), (chars!('\u{cb49}'..='\u{cb63}'), GCB::LVT), (chars!('\u{cb64}'..='\u{cb64}'), GCB::LV), (chars!('\u{cb65}'..='\u{cb7f}'), GCB::LVT), (chars!('\u{cb80}'..='\u{cb80}'), GCB::LV), (chars!('\u{cb81}'..='\u{cb9b}'), GCB::LVT), (chars!('\u{cb9c}'..='\u{cb9c}'), GCB::LV), (chars!('\u{cb9d}'..='\u{cbb7}'), GCB::LVT), (chars!('\u{cbb8}'..='\u{cbb8}'), GCB::LV), (chars!('\u{cbb9}'..='\u{cbd3}'), GCB::LVT), (chars!('\u{cbd4}'..='\u{cbd4}'), GCB::LV), (chars!('\u{cbd5}'..='\u{cbef}'), GCB::LVT), (chars!('\u{cbf0}'..='\u{cbf0}'), GCB::LV), (chars!('\u{cbf1}'..='\u{cc0b}'), GCB::LVT), (chars!('\u{cc0c}'..='\u{cc0c}'), GCB::LV), (chars!('\u{cc0d}'..='\u{cc27}'), GCB::LVT), (chars!('\u{cc28}'..='\u{cc28}'), GCB::LV), (chars!('\u{cc29}'..='\u{cc43}'), GCB::LVT), (chars!('\u{cc44}'..='\u{cc44}'), GCB::LV), (chars!('\u{cc45}'..='\u{cc5f}'), GCB::LVT), (chars!('\u{cc60}'..='\u{cc60}'), GCB::LV), (chars!('\u{cc61}'..='\u{cc7b}'), GCB::LVT), (chars!('\u{cc7c}'..='\u{cc7c}'), GCB::LV), (chars!('\u{cc7d}'..='\u{cc97}'), GCB::LVT), (chars!('\u{cc98}'..='\u{cc98}'), GCB::LV), (chars!('\u{cc99}'..='\u{ccb3}'), GCB::LVT), (chars!('\u{ccb4}'..='\u{ccb4}'), GCB::LV), (chars!('\u{ccb5}'..='\u{cccf}'), GCB::LVT), (chars!('\u{ccd0}'..='\u{ccd0}'), GCB::LV), (chars!('\u{ccd1}'..='\u{cceb}'), GCB::LVT), (chars!('\u{ccec}'..='\u{ccec}'), GCB::LV), (chars!('\u{cced}'..='\u{cd07}'), GCB::LVT), (chars!('\u{cd08}'..='\u{cd08}'), GCB::LV), (chars!('\u{cd09}'..='\u{cd23}'), GCB::LVT), (chars!('\u{cd24}'..='\u{cd24}'), GCB::LV), (chars!('\u{cd25}'..='\u{cd3f}'), GCB::LVT), (chars!('\u{cd40}'..='\u{cd40}'), GCB::LV), (chars!('\u{cd41}'..='\u{cd5b}'), GCB::LVT), (chars!('\u{cd5c}'..='\u{cd5c}'), GCB::LV), (chars!('\u{cd5d}'..='\u{cd77}'), GCB::LVT), (chars!('\u{cd78}'..='\u{cd78}'), GCB::LV), (chars!('\u{cd79}'..='\u{cd93}'), GCB::LVT), (chars!('\u{cd94}'..='\u{cd94}'), GCB::LV), (chars!('\u{cd95}'..='\u{cdaf}'), GCB::LVT), (chars!('\u{cdb0}'..='\u{cdb0}'), GCB::LV), (chars!('\u{cdb1}'..='\u{cdcb}'), GCB::LVT), (chars!('\u{cdcc}'..='\u{cdcc}'), GCB::LV), (chars!('\u{cdcd}'..='\u{cde7}'), GCB::LVT), (chars!('\u{cde8}'..='\u{cde8}'), GCB::LV), (chars!('\u{cde9}'..='\u{ce03}'), GCB::LVT), (chars!('\u{ce04}'..='\u{ce04}'), GCB::LV), (chars!('\u{ce05}'..='\u{ce1f}'), GCB::LVT), (chars!('\u{ce20}'..='\u{ce20}'), GCB::LV), (chars!('\u{ce21}'..='\u{ce3b}'), GCB::LVT), (chars!('\u{ce3c}'..='\u{ce3c}'), GCB::LV), (chars!('\u{ce3d}'..='\u{ce57}'), GCB::LVT), (chars!('\u{ce58}'..='\u{ce58}'), GCB::LV), (chars!('\u{ce59}'..='\u{ce73}'), GCB::LVT), (chars!('\u{ce74}'..='\u{ce74}'), GCB::LV), (chars!('\u{ce75}'..='\u{ce8f}'), GCB::LVT), (chars!('\u{ce90}'..='\u{ce90}'), GCB::LV), (chars!('\u{ce91}'..='\u{ceab}'), GCB::LVT), (chars!('\u{ceac}'..='\u{ceac}'), GCB::LV), (chars!('\u{cead}'..='\u{cec7}'), GCB::LVT), (chars!('\u{cec8}'..='\u{cec8}'), GCB::LV), (chars!('\u{cec9}'..='\u{cee3}'), GCB::LVT), (chars!('\u{cee4}'..='\u{cee4}'), GCB::LV), (chars!('\u{cee5}'..='\u{ceff}'), GCB::LVT), (chars!('\u{cf00}'..='\u{cf00}'), GCB::LV), (chars!('\u{cf01}'..='\u{cf1b}'), GCB::LVT), (chars!('\u{cf1c}'..='\u{cf1c}'), GCB::LV), (chars!('\u{cf1d}'..='\u{cf37}'), GCB::LVT), (chars!('\u{cf38}'..='\u{cf38}'), GCB::LV), (chars!('\u{cf39}'..='\u{cf53}'), GCB::LVT), (chars!('\u{cf54}'..='\u{cf54}'), GCB::LV), (chars!('\u{cf55}'..='\u{cf6f}'), GCB::LVT), (chars!('\u{cf70}'..='\u{cf70}'), GCB::LV), (chars!('\u{cf71}'..='\u{cf8b}'), GCB::LVT), (chars!('\u{cf8c}'..='\u{cf8c}'), GCB::LV), (chars!('\u{cf8d}'..='\u{cfa7}'), GCB::LVT), (chars!('\u{cfa8}'..='\u{cfa8}'), GCB::LV), (chars!('\u{cfa9}'..='\u{cfc3}'), GCB::LVT), (chars!('\u{cfc4}'..='\u{cfc4}'), GCB::LV), (chars!('\u{cfc5}'..='\u{cfdf}'), GCB::LVT), (chars!('\u{cfe0}'..='\u{cfe0}'), GCB::LV), (chars!('\u{cfe1}'..='\u{cffb}'), GCB::LVT), (chars!('\u{cffc}'..='\u{cffc}'), GCB::LV), (chars!('\u{cffd}'..='\u{d017}'), GCB::LVT), (chars!('\u{d018}'..='\u{d018}'), GCB::LV), (chars!('\u{d019}'..='\u{d033}'), GCB::LVT), (chars!('\u{d034}'..='\u{d034}'), GCB::LV), (chars!('\u{d035}'..='\u{d04f}'), GCB::LVT), (chars!('\u{d050}'..='\u{d050}'), GCB::LV), (chars!('\u{d051}'..='\u{d06b}'), GCB::LVT), (chars!('\u{d06c}'..='\u{d06c}'), GCB::LV), (chars!('\u{d06d}'..='\u{d087}'), GCB::LVT), (chars!('\u{d088}'..='\u{d088}'), GCB::LV), (chars!('\u{d089}'..='\u{d0a3}'), GCB::LVT), (chars!('\u{d0a4}'..='\u{d0a4}'), GCB::LV), (chars!('\u{d0a5}'..='\u{d0bf}'), GCB::LVT), (chars!('\u{d0c0}'..='\u{d0c0}'), GCB::LV), (chars!('\u{d0c1}'..='\u{d0db}'), GCB::LVT), (chars!('\u{d0dc}'..='\u{d0dc}'), GCB::LV), (chars!('\u{d0dd}'..='\u{d0f7}'), GCB::LVT), (chars!('\u{d0f8}'..='\u{d0f8}'), GCB::LV), (chars!('\u{d0f9}'..='\u{d113}'), GCB::LVT), (chars!('\u{d114}'..='\u{d114}'), GCB::LV), (chars!('\u{d115}'..='\u{d12f}'), GCB::LVT), (chars!('\u{d130}'..='\u{d130}'), GCB::LV), (chars!('\u{d131}'..='\u{d14b}'), GCB::LVT), (chars!('\u{d14c}'..='\u{d14c}'), GCB::LV), (chars!('\u{d14d}'..='\u{d167}'), GCB::LVT), (chars!('\u{d168}'..='\u{d168}'), GCB::LV), (chars!('\u{d169}'..='\u{d183}'), GCB::LVT), (chars!('\u{d184}'..='\u{d184}'), GCB::LV), (chars!('\u{d185}'..='\u{d19f}'), GCB::LVT), (chars!('\u{d1a0}'..='\u{d1a0}'), GCB::LV), (chars!('\u{d1a1}'..='\u{d1bb}'), GCB::LVT), (chars!('\u{d1bc}'..='\u{d1bc}'), GCB::LV), (chars!('\u{d1bd}'..='\u{d1d7}'), GCB::LVT), (chars!('\u{d1d8}'..='\u{d1d8}'), GCB::LV), (chars!('\u{d1d9}'..='\u{d1f3}'), GCB::LVT), (chars!('\u{d1f4}'..='\u{d1f4}'), GCB::LV), (chars!('\u{d1f5}'..='\u{d20f}'), GCB::LVT), (chars!('\u{d210}'..='\u{d210}'), GCB::LV), (chars!('\u{d211}'..='\u{d22b}'), GCB::LVT), (chars!('\u{d22c}'..='\u{d22c}'), GCB::LV), (chars!('\u{d22d}'..='\u{d247}'), GCB::LVT), (chars!('\u{d248}'..='\u{d248}'), GCB::LV), (chars!('\u{d249}'..='\u{d263}'), GCB::LVT), (chars!('\u{d264}'..='\u{d264}'), GCB::LV), (chars!('\u{d265}'..='\u{d27f}'), GCB::LVT), (chars!('\u{d280}'..='\u{d280}'), GCB::LV), (chars!('\u{d281}'..='\u{d29b}'), GCB::LVT), (chars!('\u{d29c}'..='\u{d29c}'), GCB::LV), (chars!('\u{d29d}'..='\u{d2b7}'), GCB::LVT), (chars!('\u{d2b8}'..='\u{d2b8}'), GCB::LV), (chars!('\u{d2b9}'..='\u{d2d3}'), GCB::LVT), (chars!('\u{d2d4}'..='\u{d2d4}'), GCB::LV), (chars!('\u{d2d5}'..='\u{d2ef}'), GCB::LVT), (chars!('\u{d2f0}'..='\u{d2f0}'), GCB::LV), (chars!('\u{d2f1}'..='\u{d30b}'), GCB::LVT), (chars!('\u{d30c}'..='\u{d30c}'), GCB::LV), (chars!('\u{d30d}'..='\u{d327}'), GCB::LVT), (chars!('\u{d328}'..='\u{d328}'), GCB::LV), (chars!('\u{d329}'..='\u{d343}'), GCB::LVT), (chars!('\u{d344}'..='\u{d344}'), GCB::LV), (chars!('\u{d345}'..='\u{d35f}'), GCB::LVT), (chars!('\u{d360}'..='\u{d360}'), GCB::LV), (chars!('\u{d361}'..='\u{d37b}'), GCB::LVT), (chars!('\u{d37c}'..='\u{d37c}'), GCB::LV), (chars!('\u{d37d}'..='\u{d397}'), GCB::LVT), (chars!('\u{d398}'..='\u{d398}'), GCB::LV), (chars!('\u{d399}'..='\u{d3b3}'), GCB::LVT), (chars!('\u{d3b4}'..='\u{d3b4}'), GCB::LV), (chars!('\u{d3b5}'..='\u{d3cf}'), GCB::LVT), (chars!('\u{d3d0}'..='\u{d3d0}'), GCB::LV), (chars!('\u{d3d1}'..='\u{d3eb}'), GCB::LVT), (chars!('\u{d3ec}'..='\u{d3ec}'), GCB::LV), (chars!('\u{d3ed}'..='\u{d407}'), GCB::LVT), (chars!('\u{d408}'..='\u{d408}'), GCB::LV), (chars!('\u{d409}'..='\u{d423}'), GCB::LVT), (chars!('\u{d424}'..='\u{d424}'), GCB::LV), (chars!('\u{d425}'..='\u{d43f}'), GCB::LVT), (chars!('\u{d440}'..='\u{d440}'), GCB::LV), (chars!('\u{d441}'..='\u{d45b}'), GCB::LVT), (chars!('\u{d45c}'..='\u{d45c}'), GCB::LV), (chars!('\u{d45d}'..='\u{d477}'), GCB::LVT), (chars!('\u{d478}'..='\u{d478}'), GCB::LV), (chars!('\u{d479}'..='\u{d493}'), GCB::LVT), (chars!('\u{d494}'..='\u{d494}'), GCB::LV), (chars!('\u{d495}'..='\u{d4af}'), GCB::LVT), (chars!('\u{d4b0}'..='\u{d4b0}'), GCB::LV), (chars!('\u{d4b1}'..='\u{d4cb}'), GCB::LVT), (chars!('\u{d4cc}'..='\u{d4cc}'), GCB::LV), (chars!('\u{d4cd}'..='\u{d4e7}'), GCB::LVT), (chars!('\u{d4e8}'..='\u{d4e8}'), GCB::LV), (chars!('\u{d4e9}'..='\u{d503}'), GCB::LVT), (chars!('\u{d504}'..='\u{d504}'), GCB::LV), (chars!('\u{d505}'..='\u{d51f}'), GCB::LVT), (chars!('\u{d520}'..='\u{d520}'), GCB::LV), (chars!('\u{d521}'..='\u{d53b}'), GCB::LVT), (chars!('\u{d53c}'..='\u{d53c}'), GCB::LV), (chars!('\u{d53d}'..='\u{d557}'), GCB::LVT), (chars!('\u{d558}'..='\u{d558}'), GCB::LV), (chars!('\u{d559}'..='\u{d573}'), GCB::LVT), (chars!('\u{d574}'..='\u{d574}'), GCB::LV), (chars!('\u{d575}'..='\u{d58f}'), GCB::LVT), (chars!('\u{d590}'..='\u{d590}'), GCB::LV), (chars!('\u{d591}'..='\u{d5ab}'), GCB::LVT), (chars!('\u{d5ac}'..='\u{d5ac}'), GCB::LV), (chars!('\u{d5ad}'..='\u{d5c7}'), GCB::LVT), (chars!('\u{d5c8}'..='\u{d5c8}'), GCB::LV), (chars!('\u{d5c9}'..='\u{d5e3}'), GCB::LVT), (chars!('\u{d5e4}'..='\u{d5e4}'), GCB::LV), (chars!('\u{d5e5}'..='\u{d5ff}'), GCB::LVT), (chars!('\u{d600}'..='\u{d600}'), GCB::LV), (chars!('\u{d601}'..='\u{d61b}'), GCB::LVT), (chars!('\u{d61c}'..='\u{d61c}'), GCB::LV), (chars!('\u{d61d}'..='\u{d637}'), GCB::LVT), (chars!('\u{d638}'..='\u{d638}'), GCB::LV), (chars!('\u{d639}'..='\u{d653}'), GCB::LVT), (chars!('\u{d654}'..='\u{d654}'), GCB::LV), (chars!('\u{d655}'..='\u{d66f}'), GCB::LVT), (chars!('\u{d670}'..='\u{d670}'), GCB::LV), (chars!('\u{d671}'..='\u{d68b}'), GCB::LVT), (chars!('\u{d68c}'..='\u{d68c}'), GCB::LV), (chars!('\u{d68d}'..='\u{d6a7}'), GCB::LVT), (chars!('\u{d6a8}'..='\u{d6a8}'), GCB::LV), (chars!('\u{d6a9}'..='\u{d6c3}'), GCB::LVT), (chars!('\u{d6c4}'..='\u{d6c4}'), GCB::LV), (chars!('\u{d6c5}'..='\u{d6df}'), GCB::LVT), (chars!('\u{d6e0}'..='\u{d6e0}'), GCB::LV), (chars!('\u{d6e1}'..='\u{d6fb}'), GCB::LVT), (chars!('\u{d6fc}'..='\u{d6fc}'), GCB::LV), (chars!('\u{d6fd}'..='\u{d717}'), GCB::LVT), (chars!('\u{d718}'..='\u{d718}'), GCB::LV), (chars!('\u{d719}'..='\u{d733}'), GCB::LVT), (chars!('\u{d734}'..='\u{d734}'), GCB::LV), (chars!('\u{d735}'..='\u{d74f}'), GCB::LVT), (chars!('\u{d750}'..='\u{d750}'), GCB::LV), (chars!('\u{d751}'..='\u{d76b}'), GCB::LVT), (chars!('\u{d76c}'..='\u{d76c}'), GCB::LV), (chars!('\u{d76d}'..='\u{d787}'), GCB::LVT), (chars!('\u{d788}'..='\u{d788}'), GCB::LV), (chars!('\u{d789}'..='\u{d7a3}'), GCB::LVT), (chars!('\u{d7b0}'..='\u{d7c6}'), GCB::V), (chars!('\u{d7cb}'..='\u{d7fb}'), GCB::T), (chars!('\u{fb1e}'..='\u{fb1e}'), GCB::Extend), (chars!('\u{fe00}'..='\u{fe0f}'), GCB::Extend), (chars!('\u{fe20}'..='\u{fe2f}'), GCB::Extend), (chars!('\u{feff}'..='\u{feff}'), GCB::Control), (chars!('\u{ff9e}'..='\u{ff9f}'), GCB::Extend), (chars!('\u{fff0}'..='\u{fffb}'), GCB::Control), (chars!('\u{101fd}'..='\u{101fd}'), GCB::Extend), (chars!('\u{102e0}'..='\u{102e0}'), GCB::Extend), (chars!('\u{10376}'..='\u{1037a}'), GCB::Extend), (chars!('\u{10a01}'..='\u{10a03}'), GCB::Extend), (chars!('\u{10a05}'..='\u{10a06}'), GCB::Extend), (chars!('\u{10a0c}'..='\u{10a0f}'), GCB::Extend), (chars!('\u{10a38}'..='\u{10a3a}'), GCB::Extend), (chars!('\u{10a3f}'..='\u{10a3f}'), GCB::Extend), (chars!('\u{10ae5}'..='\u{10ae6}'), GCB::Extend), (chars!('\u{11000}'..='\u{11000}'), GCB::SpacingMark), (chars!('\u{11001}'..='\u{11001}'), GCB::Extend), (chars!('\u{11002}'..='\u{11002}'), GCB::SpacingMark), (chars!('\u{11038}'..='\u{11046}'), GCB::Extend), (chars!('\u{1107f}'..='\u{11081}'), GCB::Extend), (chars!('\u{11082}'..='\u{11082}'), GCB::SpacingMark), (chars!('\u{110b0}'..='\u{110b2}'), GCB::SpacingMark), (chars!('\u{110b3}'..='\u{110b6}'), GCB::Extend), (chars!('\u{110b7}'..='\u{110b8}'), GCB::SpacingMark), (chars!('\u{110b9}'..='\u{110ba}'), GCB::Extend), (chars!('\u{110bd}'..='\u{110bd}'), GCB::Prepend), (chars!('\u{11100}'..='\u{11102}'), GCB::Extend), (chars!('\u{11127}'..='\u{1112b}'), GCB::Extend), (chars!('\u{1112c}'..='\u{1112c}'), GCB::SpacingMark), (chars!('\u{1112d}'..='\u{11134}'), GCB::Extend), (chars!('\u{11173}'..='\u{11173}'), GCB::Extend), (chars!('\u{11180}'..='\u{11181}'), GCB::Extend), (chars!('\u{11182}'..='\u{11182}'), GCB::SpacingMark), (chars!('\u{111b3}'..='\u{111b5}'), GCB::SpacingMark), (chars!('\u{111b6}'..='\u{111be}'), GCB::Extend), (chars!('\u{111bf}'..='\u{111c0}'), GCB::SpacingMark), (chars!('\u{111c2}'..='\u{111c3}'), GCB::Prepend), (chars!('\u{111ca}'..='\u{111cc}'), GCB::Extend), (chars!('\u{1122c}'..='\u{1122e}'), GCB::SpacingMark), (chars!('\u{1122f}'..='\u{11231}'), GCB::Extend), (chars!('\u{11232}'..='\u{11233}'), GCB::SpacingMark), (chars!('\u{11234}'..='\u{11234}'), GCB::Extend), (chars!('\u{11235}'..='\u{11235}'), GCB::SpacingMark), (chars!('\u{11236}'..='\u{11237}'), GCB::Extend), (chars!('\u{1123e}'..='\u{1123e}'), GCB::Extend), (chars!('\u{112df}'..='\u{112df}'), GCB::Extend), (chars!('\u{112e0}'..='\u{112e2}'), GCB::SpacingMark), (chars!('\u{112e3}'..='\u{112ea}'), GCB::Extend), (chars!('\u{11300}'..='\u{11301}'), GCB::Extend), (chars!('\u{11302}'..='\u{11303}'), GCB::SpacingMark), (chars!('\u{1133c}'..='\u{1133c}'), GCB::Extend), (chars!('\u{1133e}'..='\u{1133e}'), GCB::Extend), (chars!('\u{1133f}'..='\u{1133f}'), GCB::SpacingMark), (chars!('\u{11340}'..='\u{11340}'), GCB::Extend), (chars!('\u{11341}'..='\u{11344}'), GCB::SpacingMark), (chars!('\u{11347}'..='\u{11348}'), GCB::SpacingMark), (chars!('\u{1134b}'..='\u{1134d}'), GCB::SpacingMark), (chars!('\u{11357}'..='\u{11357}'), GCB::Extend), (chars!('\u{11362}'..='\u{11363}'), GCB::SpacingMark), (chars!('\u{11366}'..='\u{1136c}'), GCB::Extend), (chars!('\u{11370}'..='\u{11374}'), GCB::Extend), (chars!('\u{11435}'..='\u{11437}'), GCB::SpacingMark), (chars!('\u{11438}'..='\u{1143f}'), GCB::Extend), (chars!('\u{11440}'..='\u{11441}'), GCB::SpacingMark), (chars!('\u{11442}'..='\u{11444}'), GCB::Extend), (chars!('\u{11445}'..='\u{11445}'), GCB::SpacingMark), (chars!('\u{11446}'..='\u{11446}'), GCB::Extend), (chars!('\u{114b0}'..='\u{114b0}'), GCB::Extend), (chars!('\u{114b1}'..='\u{114b2}'), GCB::SpacingMark), (chars!('\u{114b3}'..='\u{114b8}'), GCB::Extend), (chars!('\u{114b9}'..='\u{114b9}'), GCB::SpacingMark), (chars!('\u{114ba}'..='\u{114ba}'), GCB::Extend), (chars!('\u{114bb}'..='\u{114bc}'), GCB::SpacingMark), (chars!('\u{114bd}'..='\u{114bd}'), GCB::Extend), (chars!('\u{114be}'..='\u{114be}'), GCB::SpacingMark), (chars!('\u{114bf}'..='\u{114c0}'), GCB::Extend), (chars!('\u{114c1}'..='\u{114c1}'), GCB::SpacingMark), (chars!('\u{114c2}'..='\u{114c3}'), GCB::Extend), (chars!('\u{115af}'..='\u{115af}'), GCB::Extend), (chars!('\u{115b0}'..='\u{115b1}'), GCB::SpacingMark), (chars!('\u{115b2}'..='\u{115b5}'), GCB::Extend), (chars!('\u{115b8}'..='\u{115bb}'), GCB::SpacingMark), (chars!('\u{115bc}'..='\u{115bd}'), GCB::Extend), (chars!('\u{115be}'..='\u{115be}'), GCB::SpacingMark), (chars!('\u{115bf}'..='\u{115c0}'), GCB::Extend), (chars!('\u{115dc}'..='\u{115dd}'), GCB::Extend), (chars!('\u{11630}'..='\u{11632}'), GCB::SpacingMark), (chars!('\u{11633}'..='\u{1163a}'), GCB::Extend), (chars!('\u{1163b}'..='\u{1163c}'), GCB::SpacingMark), (chars!('\u{1163d}'..='\u{1163d}'), GCB::Extend), (chars!('\u{1163e}'..='\u{1163e}'), GCB::SpacingMark), (chars!('\u{1163f}'..='\u{11640}'), GCB::Extend), (chars!('\u{116ab}'..='\u{116ab}'), GCB::Extend), (chars!('\u{116ac}'..='\u{116ac}'), GCB::SpacingMark), (chars!('\u{116ad}'..='\u{116ad}'), GCB::Extend), (chars!('\u{116ae}'..='\u{116af}'), GCB::SpacingMark), (chars!('\u{116b0}'..='\u{116b5}'), GCB::Extend), (chars!('\u{116b6}'..='\u{116b6}'), GCB::SpacingMark), (chars!('\u{116b7}'..='\u{116b7}'), GCB::Extend), (chars!('\u{1171d}'..='\u{1171f}'), GCB::Extend), (chars!('\u{11720}'..='\u{11721}'), GCB::SpacingMark), (chars!('\u{11722}'..='\u{11725}'), GCB::Extend), (chars!('\u{11726}'..='\u{11726}'), GCB::SpacingMark), (chars!('\u{11727}'..='\u{1172b}'), GCB::Extend), (chars!('\u{11a01}'..='\u{11a06}'), GCB::Extend), (chars!('\u{11a07}'..='\u{11a08}'), GCB::SpacingMark), (chars!('\u{11a09}'..='\u{11a0a}'), GCB::Extend), (chars!('\u{11a33}'..='\u{11a38}'), GCB::Extend), (chars!('\u{11a39}'..='\u{11a39}'), GCB::SpacingMark), (chars!('\u{11a3a}'..='\u{11a3a}'), GCB::Prepend), (chars!('\u{11a3b}'..='\u{11a3e}'), GCB::Extend), (chars!('\u{11a47}'..='\u{11a47}'), GCB::Extend), (chars!('\u{11a51}'..='\u{11a56}'), GCB::Extend), (chars!('\u{11a57}'..='\u{11a58}'), GCB::SpacingMark), (chars!('\u{11a59}'..='\u{11a5b}'), GCB::Extend), (chars!('\u{11a86}'..='\u{11a89}'), GCB::Prepend), (chars!('\u{11a8a}'..='\u{11a96}'), GCB::Extend), (chars!('\u{11a97}'..='\u{11a97}'), GCB::SpacingMark), (chars!('\u{11a98}'..='\u{11a99}'), GCB::Extend), (chars!('\u{11c2f}'..='\u{11c2f}'), GCB::SpacingMark), (chars!('\u{11c30}'..='\u{11c36}'), GCB::Extend), (chars!('\u{11c38}'..='\u{11c3d}'), GCB::Extend), (chars!('\u{11c3e}'..='\u{11c3e}'), GCB::SpacingMark), (chars!('\u{11c3f}'..='\u{11c3f}'), GCB::Extend), (chars!('\u{11c92}'..='\u{11ca7}'), GCB::Extend), (chars!('\u{11ca9}'..='\u{11ca9}'), GCB::SpacingMark), (chars!('\u{11caa}'..='\u{11cb0}'), GCB::Extend), (chars!('\u{11cb1}'..='\u{11cb1}'), GCB::SpacingMark), (chars!('\u{11cb2}'..='\u{11cb3}'), GCB::Extend), (chars!('\u{11cb4}'..='\u{11cb4}'), GCB::SpacingMark), (chars!('\u{11cb5}'..='\u{11cb6}'), GCB::Extend), (chars!('\u{11d31}'..='\u{11d36}'), GCB::Extend), (chars!('\u{11d3a}'..='\u{11d3a}'), GCB::Extend), (chars!('\u{11d3c}'..='\u{11d3d}'), GCB::Extend), (chars!('\u{11d3f}'..='\u{11d45}'), GCB::Extend), (chars!('\u{11d46}'..='\u{11d46}'), GCB::Prepend), (chars!('\u{11d47}'..='\u{11d47}'), GCB::Extend), (chars!('\u{16af0}'..='\u{16af4}'), GCB::Extend), (chars!('\u{16b30}'..='\u{16b36}'), GCB::Extend), (chars!('\u{16f51}'..='\u{16f7e}'), GCB::SpacingMark), (chars!('\u{16f8f}'..='\u{16f92}'), GCB::Extend), (chars!('\u{1bc9d}'..='\u{1bc9e}'), GCB::Extend), (chars!('\u{1bca0}'..='\u{1bca3}'), GCB::Control), (chars!('\u{1d165}'..='\u{1d165}'), GCB::Extend), (chars!('\u{1d166}'..='\u{1d166}'), GCB::SpacingMark), (chars!('\u{1d167}'..='\u{1d169}'), GCB::Extend), (chars!('\u{1d16d}'..='\u{1d16d}'), GCB::SpacingMark), (chars!('\u{1d16e}'..='\u{1d172}'), GCB::Extend), (chars!('\u{1d173}'..='\u{1d17a}'), GCB::Control), (chars!('\u{1d17b}'..='\u{1d182}'), GCB::Extend), (chars!('\u{1d185}'..='\u{1d18b}'), GCB::Extend), (chars!('\u{1d1aa}'..='\u{1d1ad}'), GCB::Extend), (chars!('\u{1d242}'..='\u{1d244}'), GCB::Extend), (chars!('\u{1da00}'..='\u{1da36}'), GCB::Extend), (chars!('\u{1da3b}'..='\u{1da6c}'), GCB::Extend), (chars!('\u{1da75}'..='\u{1da75}'), GCB::Extend), (chars!('\u{1da84}'..='\u{1da84}'), GCB::Extend), (chars!('\u{1da9b}'..='\u{1da9f}'), GCB::Extend), (chars!('\u{1daa1}'..='\u{1daaf}'), GCB::Extend), (chars!('\u{1e000}'..='\u{1e006}'), GCB::Extend), (chars!('\u{1e008}'..='\u{1e018}'), GCB::Extend), (chars!('\u{1e01b}'..='\u{1e021}'), GCB::Extend), (chars!('\u{1e023}'..='\u{1e024}'), GCB::Extend), (chars!('\u{1e026}'..='\u{1e02a}'), GCB::Extend), (chars!('\u{1e8d0}'..='\u{1e8d6}'), GCB::Extend), (chars!('\u{1e944}'..='\u{1e94a}'), GCB::Extend), (chars!('\u{1f1e6}'..='\u{1f1ff}'), GCB::Regional_Indicator), (chars!('\u{1f308}'..='\u{1f308}'), GCB::Glue_After_Zwj), (chars!('\u{1f33e}'..='\u{1f33e}'), GCB::Glue_After_Zwj), (chars!('\u{1f373}'..='\u{1f373}'), GCB::Glue_After_Zwj), (chars!('\u{1f385}'..='\u{1f385}'), GCB::E_Base), (chars!('\u{1f393}'..='\u{1f393}'), GCB::Glue_After_Zwj), (chars!('\u{1f3a4}'..='\u{1f3a4}'), GCB::Glue_After_Zwj), (chars!('\u{1f3a8}'..='\u{1f3a8}'), GCB::Glue_After_Zwj), (chars!('\u{1f3c2}'..='\u{1f3c4}'), GCB::E_Base), (chars!('\u{1f3c7}'..='\u{1f3c7}'), GCB::E_Base), (chars!('\u{1f3ca}'..='\u{1f3cc}'), GCB::E_Base), (chars!('\u{1f3eb}'..='\u{1f3eb}'), GCB::Glue_After_Zwj), (chars!('\u{1f3ed}'..='\u{1f3ed}'), GCB::Glue_After_Zwj), (chars!('\u{1f3fb}'..='\u{1f3ff}'), GCB::E_Modifier), (chars!('\u{1f442}'..='\u{1f443}'), GCB::E_Base), (chars!('\u{1f446}'..='\u{1f450}'), GCB::E_Base), (chars!('\u{1f466}'..='\u{1f469}'), GCB::E_Base_GAZ), (chars!('\u{1f46e}'..='\u{1f46e}'), GCB::E_Base), (chars!('\u{1f470}'..='\u{1f478}'), GCB::E_Base), (chars!('\u{1f47c}'..='\u{1f47c}'), GCB::E_Base), (chars!('\u{1f481}'..='\u{1f483}'), GCB::E_Base), (chars!('\u{1f485}'..='\u{1f487}'), GCB::E_Base), (chars!('\u{1f48b}'..='\u{1f48b}'), GCB::Glue_After_Zwj), (chars!('\u{1f4aa}'..='\u{1f4aa}'), GCB::E_Base), (chars!('\u{1f4bb}'..='\u{1f4bc}'), GCB::Glue_After_Zwj), (chars!('\u{1f527}'..='\u{1f527}'), GCB::Glue_After_Zwj), (chars!('\u{1f52c}'..='\u{1f52c}'), GCB::Glue_After_Zwj), (chars!('\u{1f574}'..='\u{1f575}'), GCB::E_Base), (chars!('\u{1f57a}'..='\u{1f57a}'), GCB::E_Base), (chars!('\u{1f590}'..='\u{1f590}'), GCB::E_Base), (chars!('\u{1f595}'..='\u{1f596}'), GCB::E_Base), (chars!('\u{1f5e8}'..='\u{1f5e8}'), GCB::Glue_After_Zwj), (chars!('\u{1f645}'..='\u{1f647}'), GCB::E_Base), (chars!('\u{1f64b}'..='\u{1f64f}'), GCB::E_Base), (chars!('\u{1f680}'..='\u{1f680}'), GCB::Glue_After_Zwj), (chars!('\u{1f692}'..='\u{1f692}'), GCB::Glue_After_Zwj), (chars!('\u{1f6a3}'..='\u{1f6a3}'), GCB::E_Base), (chars!('\u{1f6b4}'..='\u{1f6b6}'), GCB::E_Base), (chars!('\u{1f6c0}'..='\u{1f6c0}'), GCB::E_Base), (chars!('\u{1f6cc}'..='\u{1f6cc}'), GCB::E_Base), (chars!('\u{1f918}'..='\u{1f91c}'), GCB::E_Base), (chars!('\u{1f91e}'..='\u{1f91f}'), GCB::E_Base), (chars!('\u{1f926}'..='\u{1f926}'), GCB::E_Base), (chars!('\u{1f930}'..='\u{1f939}'), GCB::E_Base), (chars!('\u{1f93d}'..='\u{1f93e}'), GCB::E_Base), (chars!('\u{1f9d1}'..='\u{1f9dd}'), GCB::E_Base), (chars!('\u{e0000}'..='\u{e001f}'), GCB::Control), (chars!('\u{e0020}'..='\u{e007f}'), GCB::Extend), (chars!('\u{e0080}'..='\u{e00ff}'), GCB::Control), (chars!('\u{e0100}'..='\u{e01ef}'), GCB::Extend), (chars!('\u{e01f0}'..='\u{e0fff}'), GCB::Control), ]) unic-ucd-segment-0.9.0/tables/sentence_break.rsv010064400007650000024000003335261343520353600201040ustar0000000000000000// WARNING: Auto-generated by the `unic-gen` crate. // WARNING: DO NOT EDIT MANUALLY! CharDataTable::Range(&[ (chars!('\u{9}'..='\u{9}'), SB::Sp), (chars!('\u{a}'..='\u{a}'), SB::LF), (chars!('\u{b}'..='\u{c}'), SB::Sp), (chars!('\u{d}'..='\u{d}'), SB::CR), (chars!('\u{20}'..='\u{20}'), SB::Sp), (chars!('\u{21}'..='\u{21}'), SB::STerm), (chars!('\u{22}'..='\u{22}'), SB::Close), (chars!('\u{27}'..='\u{29}'), SB::Close), (chars!('\u{2c}'..='\u{2d}'), SB::SContinue), (chars!('\u{2e}'..='\u{2e}'), SB::ATerm), (chars!('\u{30}'..='\u{39}'), SB::Numeric), (chars!('\u{3a}'..='\u{3a}'), SB::SContinue), (chars!('\u{3f}'..='\u{3f}'), SB::STerm), (chars!('\u{41}'..='\u{5a}'), SB::Upper), (chars!('\u{5b}'..='\u{5b}'), SB::Close), (chars!('\u{5d}'..='\u{5d}'), SB::Close), (chars!('\u{61}'..='\u{7a}'), SB::Lower), (chars!('\u{7b}'..='\u{7b}'), SB::Close), (chars!('\u{7d}'..='\u{7d}'), SB::Close), (chars!('\u{85}'..='\u{85}'), SB::Sep), (chars!('\u{a0}'..='\u{a0}'), SB::Sp), (chars!('\u{aa}'..='\u{aa}'), SB::Lower), (chars!('\u{ab}'..='\u{ab}'), SB::Close), (chars!('\u{ad}'..='\u{ad}'), SB::Format), (chars!('\u{b5}'..='\u{b5}'), SB::Lower), (chars!('\u{ba}'..='\u{ba}'), SB::Lower), (chars!('\u{bb}'..='\u{bb}'), SB::Close), (chars!('\u{c0}'..='\u{d6}'), SB::Upper), (chars!('\u{d8}'..='\u{de}'), SB::Upper), (chars!('\u{df}'..='\u{f6}'), SB::Lower), (chars!('\u{f8}'..='\u{ff}'), SB::Lower), (chars!('\u{100}'..='\u{100}'), SB::Upper), (chars!('\u{101}'..='\u{101}'), SB::Lower), (chars!('\u{102}'..='\u{102}'), SB::Upper), (chars!('\u{103}'..='\u{103}'), SB::Lower), (chars!('\u{104}'..='\u{104}'), SB::Upper), (chars!('\u{105}'..='\u{105}'), SB::Lower), (chars!('\u{106}'..='\u{106}'), SB::Upper), (chars!('\u{107}'..='\u{107}'), SB::Lower), (chars!('\u{108}'..='\u{108}'), SB::Upper), (chars!('\u{109}'..='\u{109}'), SB::Lower), (chars!('\u{10a}'..='\u{10a}'), SB::Upper), (chars!('\u{10b}'..='\u{10b}'), SB::Lower), (chars!('\u{10c}'..='\u{10c}'), SB::Upper), (chars!('\u{10d}'..='\u{10d}'), SB::Lower), (chars!('\u{10e}'..='\u{10e}'), SB::Upper), (chars!('\u{10f}'..='\u{10f}'), SB::Lower), (chars!('\u{110}'..='\u{110}'), SB::Upper), (chars!('\u{111}'..='\u{111}'), SB::Lower), (chars!('\u{112}'..='\u{112}'), SB::Upper), (chars!('\u{113}'..='\u{113}'), SB::Lower), (chars!('\u{114}'..='\u{114}'), SB::Upper), (chars!('\u{115}'..='\u{115}'), SB::Lower), (chars!('\u{116}'..='\u{116}'), SB::Upper), (chars!('\u{117}'..='\u{117}'), SB::Lower), (chars!('\u{118}'..='\u{118}'), SB::Upper), (chars!('\u{119}'..='\u{119}'), SB::Lower), (chars!('\u{11a}'..='\u{11a}'), SB::Upper), (chars!('\u{11b}'..='\u{11b}'), SB::Lower), (chars!('\u{11c}'..='\u{11c}'), SB::Upper), (chars!('\u{11d}'..='\u{11d}'), SB::Lower), (chars!('\u{11e}'..='\u{11e}'), SB::Upper), (chars!('\u{11f}'..='\u{11f}'), SB::Lower), (chars!('\u{120}'..='\u{120}'), SB::Upper), (chars!('\u{121}'..='\u{121}'), SB::Lower), (chars!('\u{122}'..='\u{122}'), SB::Upper), (chars!('\u{123}'..='\u{123}'), SB::Lower), (chars!('\u{124}'..='\u{124}'), SB::Upper), (chars!('\u{125}'..='\u{125}'), SB::Lower), (chars!('\u{126}'..='\u{126}'), SB::Upper), (chars!('\u{127}'..='\u{127}'), SB::Lower), (chars!('\u{128}'..='\u{128}'), SB::Upper), (chars!('\u{129}'..='\u{129}'), SB::Lower), (chars!('\u{12a}'..='\u{12a}'), SB::Upper), (chars!('\u{12b}'..='\u{12b}'), SB::Lower), (chars!('\u{12c}'..='\u{12c}'), SB::Upper), (chars!('\u{12d}'..='\u{12d}'), SB::Lower), (chars!('\u{12e}'..='\u{12e}'), SB::Upper), (chars!('\u{12f}'..='\u{12f}'), SB::Lower), (chars!('\u{130}'..='\u{130}'), SB::Upper), (chars!('\u{131}'..='\u{131}'), SB::Lower), (chars!('\u{132}'..='\u{132}'), SB::Upper), (chars!('\u{133}'..='\u{133}'), SB::Lower), (chars!('\u{134}'..='\u{134}'), SB::Upper), (chars!('\u{135}'..='\u{135}'), SB::Lower), (chars!('\u{136}'..='\u{136}'), SB::Upper), (chars!('\u{137}'..='\u{138}'), SB::Lower), (chars!('\u{139}'..='\u{139}'), SB::Upper), (chars!('\u{13a}'..='\u{13a}'), SB::Lower), (chars!('\u{13b}'..='\u{13b}'), SB::Upper), (chars!('\u{13c}'..='\u{13c}'), SB::Lower), (chars!('\u{13d}'..='\u{13d}'), SB::Upper), (chars!('\u{13e}'..='\u{13e}'), SB::Lower), (chars!('\u{13f}'..='\u{13f}'), SB::Upper), (chars!('\u{140}'..='\u{140}'), SB::Lower), (chars!('\u{141}'..='\u{141}'), SB::Upper), (chars!('\u{142}'..='\u{142}'), SB::Lower), (chars!('\u{143}'..='\u{143}'), SB::Upper), (chars!('\u{144}'..='\u{144}'), SB::Lower), (chars!('\u{145}'..='\u{145}'), SB::Upper), (chars!('\u{146}'..='\u{146}'), SB::Lower), (chars!('\u{147}'..='\u{147}'), SB::Upper), (chars!('\u{148}'..='\u{149}'), SB::Lower), (chars!('\u{14a}'..='\u{14a}'), SB::Upper), (chars!('\u{14b}'..='\u{14b}'), SB::Lower), (chars!('\u{14c}'..='\u{14c}'), SB::Upper), (chars!('\u{14d}'..='\u{14d}'), SB::Lower), (chars!('\u{14e}'..='\u{14e}'), SB::Upper), (chars!('\u{14f}'..='\u{14f}'), SB::Lower), (chars!('\u{150}'..='\u{150}'), SB::Upper), (chars!('\u{151}'..='\u{151}'), SB::Lower), (chars!('\u{152}'..='\u{152}'), SB::Upper), (chars!('\u{153}'..='\u{153}'), SB::Lower), (chars!('\u{154}'..='\u{154}'), SB::Upper), (chars!('\u{155}'..='\u{155}'), SB::Lower), (chars!('\u{156}'..='\u{156}'), SB::Upper), (chars!('\u{157}'..='\u{157}'), SB::Lower), (chars!('\u{158}'..='\u{158}'), SB::Upper), (chars!('\u{159}'..='\u{159}'), SB::Lower), (chars!('\u{15a}'..='\u{15a}'), SB::Upper), (chars!('\u{15b}'..='\u{15b}'), SB::Lower), (chars!('\u{15c}'..='\u{15c}'), SB::Upper), (chars!('\u{15d}'..='\u{15d}'), SB::Lower), (chars!('\u{15e}'..='\u{15e}'), SB::Upper), (chars!('\u{15f}'..='\u{15f}'), SB::Lower), (chars!('\u{160}'..='\u{160}'), SB::Upper), (chars!('\u{161}'..='\u{161}'), SB::Lower), (chars!('\u{162}'..='\u{162}'), SB::Upper), (chars!('\u{163}'..='\u{163}'), SB::Lower), (chars!('\u{164}'..='\u{164}'), SB::Upper), (chars!('\u{165}'..='\u{165}'), SB::Lower), (chars!('\u{166}'..='\u{166}'), SB::Upper), (chars!('\u{167}'..='\u{167}'), SB::Lower), (chars!('\u{168}'..='\u{168}'), SB::Upper), (chars!('\u{169}'..='\u{169}'), SB::Lower), (chars!('\u{16a}'..='\u{16a}'), SB::Upper), (chars!('\u{16b}'..='\u{16b}'), SB::Lower), (chars!('\u{16c}'..='\u{16c}'), SB::Upper), (chars!('\u{16d}'..='\u{16d}'), SB::Lower), (chars!('\u{16e}'..='\u{16e}'), SB::Upper), (chars!('\u{16f}'..='\u{16f}'), SB::Lower), (chars!('\u{170}'..='\u{170}'), SB::Upper), (chars!('\u{171}'..='\u{171}'), SB::Lower), (chars!('\u{172}'..='\u{172}'), SB::Upper), (chars!('\u{173}'..='\u{173}'), SB::Lower), (chars!('\u{174}'..='\u{174}'), SB::Upper), (chars!('\u{175}'..='\u{175}'), SB::Lower), (chars!('\u{176}'..='\u{176}'), SB::Upper), (chars!('\u{177}'..='\u{177}'), SB::Lower), (chars!('\u{178}'..='\u{179}'), SB::Upper), (chars!('\u{17a}'..='\u{17a}'), SB::Lower), (chars!('\u{17b}'..='\u{17b}'), SB::Upper), (chars!('\u{17c}'..='\u{17c}'), SB::Lower), (chars!('\u{17d}'..='\u{17d}'), SB::Upper), (chars!('\u{17e}'..='\u{180}'), SB::Lower), (chars!('\u{181}'..='\u{182}'), SB::Upper), (chars!('\u{183}'..='\u{183}'), SB::Lower), (chars!('\u{184}'..='\u{184}'), SB::Upper), (chars!('\u{185}'..='\u{185}'), SB::Lower), (chars!('\u{186}'..='\u{187}'), SB::Upper), (chars!('\u{188}'..='\u{188}'), SB::Lower), (chars!('\u{189}'..='\u{18b}'), SB::Upper), (chars!('\u{18c}'..='\u{18d}'), SB::Lower), (chars!('\u{18e}'..='\u{191}'), SB::Upper), (chars!('\u{192}'..='\u{192}'), SB::Lower), (chars!('\u{193}'..='\u{194}'), SB::Upper), (chars!('\u{195}'..='\u{195}'), SB::Lower), (chars!('\u{196}'..='\u{198}'), SB::Upper), (chars!('\u{199}'..='\u{19b}'), SB::Lower), (chars!('\u{19c}'..='\u{19d}'), SB::Upper), (chars!('\u{19e}'..='\u{19e}'), SB::Lower), (chars!('\u{19f}'..='\u{1a0}'), SB::Upper), (chars!('\u{1a1}'..='\u{1a1}'), SB::Lower), (chars!('\u{1a2}'..='\u{1a2}'), SB::Upper), (chars!('\u{1a3}'..='\u{1a3}'), SB::Lower), (chars!('\u{1a4}'..='\u{1a4}'), SB::Upper), (chars!('\u{1a5}'..='\u{1a5}'), SB::Lower), (chars!('\u{1a6}'..='\u{1a7}'), SB::Upper), (chars!('\u{1a8}'..='\u{1a8}'), SB::Lower), (chars!('\u{1a9}'..='\u{1a9}'), SB::Upper), (chars!('\u{1aa}'..='\u{1ab}'), SB::Lower), (chars!('\u{1ac}'..='\u{1ac}'), SB::Upper), (chars!('\u{1ad}'..='\u{1ad}'), SB::Lower), (chars!('\u{1ae}'..='\u{1af}'), SB::Upper), (chars!('\u{1b0}'..='\u{1b0}'), SB::Lower), (chars!('\u{1b1}'..='\u{1b3}'), SB::Upper), (chars!('\u{1b4}'..='\u{1b4}'), SB::Lower), (chars!('\u{1b5}'..='\u{1b5}'), SB::Upper), (chars!('\u{1b6}'..='\u{1b6}'), SB::Lower), (chars!('\u{1b7}'..='\u{1b8}'), SB::Upper), (chars!('\u{1b9}'..='\u{1ba}'), SB::Lower), (chars!('\u{1bb}'..='\u{1bb}'), SB::OLetter), (chars!('\u{1bc}'..='\u{1bc}'), SB::Upper), (chars!('\u{1bd}'..='\u{1bf}'), SB::Lower), (chars!('\u{1c0}'..='\u{1c3}'), SB::OLetter), (chars!('\u{1c4}'..='\u{1c5}'), SB::Upper), (chars!('\u{1c6}'..='\u{1c6}'), SB::Lower), (chars!('\u{1c7}'..='\u{1c8}'), SB::Upper), (chars!('\u{1c9}'..='\u{1c9}'), SB::Lower), (chars!('\u{1ca}'..='\u{1cb}'), SB::Upper), (chars!('\u{1cc}'..='\u{1cc}'), SB::Lower), (chars!('\u{1cd}'..='\u{1cd}'), SB::Upper), (chars!('\u{1ce}'..='\u{1ce}'), SB::Lower), (chars!('\u{1cf}'..='\u{1cf}'), SB::Upper), (chars!('\u{1d0}'..='\u{1d0}'), SB::Lower), (chars!('\u{1d1}'..='\u{1d1}'), SB::Upper), (chars!('\u{1d2}'..='\u{1d2}'), SB::Lower), (chars!('\u{1d3}'..='\u{1d3}'), SB::Upper), (chars!('\u{1d4}'..='\u{1d4}'), SB::Lower), (chars!('\u{1d5}'..='\u{1d5}'), SB::Upper), (chars!('\u{1d6}'..='\u{1d6}'), SB::Lower), (chars!('\u{1d7}'..='\u{1d7}'), SB::Upper), (chars!('\u{1d8}'..='\u{1d8}'), SB::Lower), (chars!('\u{1d9}'..='\u{1d9}'), SB::Upper), (chars!('\u{1da}'..='\u{1da}'), SB::Lower), (chars!('\u{1db}'..='\u{1db}'), SB::Upper), (chars!('\u{1dc}'..='\u{1dd}'), SB::Lower), (chars!('\u{1de}'..='\u{1de}'), SB::Upper), (chars!('\u{1df}'..='\u{1df}'), SB::Lower), (chars!('\u{1e0}'..='\u{1e0}'), SB::Upper), (chars!('\u{1e1}'..='\u{1e1}'), SB::Lower), (chars!('\u{1e2}'..='\u{1e2}'), SB::Upper), (chars!('\u{1e3}'..='\u{1e3}'), SB::Lower), (chars!('\u{1e4}'..='\u{1e4}'), SB::Upper), (chars!('\u{1e5}'..='\u{1e5}'), SB::Lower), (chars!('\u{1e6}'..='\u{1e6}'), SB::Upper), (chars!('\u{1e7}'..='\u{1e7}'), SB::Lower), (chars!('\u{1e8}'..='\u{1e8}'), SB::Upper), (chars!('\u{1e9}'..='\u{1e9}'), SB::Lower), (chars!('\u{1ea}'..='\u{1ea}'), SB::Upper), (chars!('\u{1eb}'..='\u{1eb}'), SB::Lower), (chars!('\u{1ec}'..='\u{1ec}'), SB::Upper), (chars!('\u{1ed}'..='\u{1ed}'), SB::Lower), (chars!('\u{1ee}'..='\u{1ee}'), SB::Upper), (chars!('\u{1ef}'..='\u{1f0}'), SB::Lower), (chars!('\u{1f1}'..='\u{1f2}'), SB::Upper), (chars!('\u{1f3}'..='\u{1f3}'), SB::Lower), (chars!('\u{1f4}'..='\u{1f4}'), SB::Upper), (chars!('\u{1f5}'..='\u{1f5}'), SB::Lower), (chars!('\u{1f6}'..='\u{1f8}'), SB::Upper), (chars!('\u{1f9}'..='\u{1f9}'), SB::Lower), (chars!('\u{1fa}'..='\u{1fa}'), SB::Upper), (chars!('\u{1fb}'..='\u{1fb}'), SB::Lower), (chars!('\u{1fc}'..='\u{1fc}'), SB::Upper), (chars!('\u{1fd}'..='\u{1fd}'), SB::Lower), (chars!('\u{1fe}'..='\u{1fe}'), SB::Upper), (chars!('\u{1ff}'..='\u{1ff}'), SB::Lower), (chars!('\u{200}'..='\u{200}'), SB::Upper), (chars!('\u{201}'..='\u{201}'), SB::Lower), (chars!('\u{202}'..='\u{202}'), SB::Upper), (chars!('\u{203}'..='\u{203}'), SB::Lower), (chars!('\u{204}'..='\u{204}'), SB::Upper), (chars!('\u{205}'..='\u{205}'), SB::Lower), (chars!('\u{206}'..='\u{206}'), SB::Upper), (chars!('\u{207}'..='\u{207}'), SB::Lower), (chars!('\u{208}'..='\u{208}'), SB::Upper), (chars!('\u{209}'..='\u{209}'), SB::Lower), (chars!('\u{20a}'..='\u{20a}'), SB::Upper), (chars!('\u{20b}'..='\u{20b}'), SB::Lower), (chars!('\u{20c}'..='\u{20c}'), SB::Upper), (chars!('\u{20d}'..='\u{20d}'), SB::Lower), (chars!('\u{20e}'..='\u{20e}'), SB::Upper), (chars!('\u{20f}'..='\u{20f}'), SB::Lower), (chars!('\u{210}'..='\u{210}'), SB::Upper), (chars!('\u{211}'..='\u{211}'), SB::Lower), (chars!('\u{212}'..='\u{212}'), SB::Upper), (chars!('\u{213}'..='\u{213}'), SB::Lower), (chars!('\u{214}'..='\u{214}'), SB::Upper), (chars!('\u{215}'..='\u{215}'), SB::Lower), (chars!('\u{216}'..='\u{216}'), SB::Upper), (chars!('\u{217}'..='\u{217}'), SB::Lower), (chars!('\u{218}'..='\u{218}'), SB::Upper), (chars!('\u{219}'..='\u{219}'), SB::Lower), (chars!('\u{21a}'..='\u{21a}'), SB::Upper), (chars!('\u{21b}'..='\u{21b}'), SB::Lower), (chars!('\u{21c}'..='\u{21c}'), SB::Upper), (chars!('\u{21d}'..='\u{21d}'), SB::Lower), (chars!('\u{21e}'..='\u{21e}'), SB::Upper), (chars!('\u{21f}'..='\u{21f}'), SB::Lower), (chars!('\u{220}'..='\u{220}'), SB::Upper), (chars!('\u{221}'..='\u{221}'), SB::Lower), (chars!('\u{222}'..='\u{222}'), SB::Upper), (chars!('\u{223}'..='\u{223}'), SB::Lower), (chars!('\u{224}'..='\u{224}'), SB::Upper), (chars!('\u{225}'..='\u{225}'), SB::Lower), (chars!('\u{226}'..='\u{226}'), SB::Upper), (chars!('\u{227}'..='\u{227}'), SB::Lower), (chars!('\u{228}'..='\u{228}'), SB::Upper), (chars!('\u{229}'..='\u{229}'), SB::Lower), (chars!('\u{22a}'..='\u{22a}'), SB::Upper), (chars!('\u{22b}'..='\u{22b}'), SB::Lower), (chars!('\u{22c}'..='\u{22c}'), SB::Upper), (chars!('\u{22d}'..='\u{22d}'), SB::Lower), (chars!('\u{22e}'..='\u{22e}'), SB::Upper), (chars!('\u{22f}'..='\u{22f}'), SB::Lower), (chars!('\u{230}'..='\u{230}'), SB::Upper), (chars!('\u{231}'..='\u{231}'), SB::Lower), (chars!('\u{232}'..='\u{232}'), SB::Upper), (chars!('\u{233}'..='\u{239}'), SB::Lower), (chars!('\u{23a}'..='\u{23b}'), SB::Upper), (chars!('\u{23c}'..='\u{23c}'), SB::Lower), (chars!('\u{23d}'..='\u{23e}'), SB::Upper), (chars!('\u{23f}'..='\u{240}'), SB::Lower), (chars!('\u{241}'..='\u{241}'), SB::Upper), (chars!('\u{242}'..='\u{242}'), SB::Lower), (chars!('\u{243}'..='\u{246}'), SB::Upper), (chars!('\u{247}'..='\u{247}'), SB::Lower), (chars!('\u{248}'..='\u{248}'), SB::Upper), (chars!('\u{249}'..='\u{249}'), SB::Lower), (chars!('\u{24a}'..='\u{24a}'), SB::Upper), (chars!('\u{24b}'..='\u{24b}'), SB::Lower), (chars!('\u{24c}'..='\u{24c}'), SB::Upper), (chars!('\u{24d}'..='\u{24d}'), SB::Lower), (chars!('\u{24e}'..='\u{24e}'), SB::Upper), (chars!('\u{24f}'..='\u{293}'), SB::Lower), (chars!('\u{294}'..='\u{294}'), SB::OLetter), (chars!('\u{295}'..='\u{2b8}'), SB::Lower), (chars!('\u{2b9}'..='\u{2bf}'), SB::OLetter), (chars!('\u{2c0}'..='\u{2c1}'), SB::Lower), (chars!('\u{2c6}'..='\u{2d1}'), SB::OLetter), (chars!('\u{2e0}'..='\u{2e4}'), SB::Lower), (chars!('\u{2ec}'..='\u{2ec}'), SB::OLetter), (chars!('\u{2ee}'..='\u{2ee}'), SB::OLetter), (chars!('\u{300}'..='\u{36f}'), SB::Extend), (chars!('\u{370}'..='\u{370}'), SB::Upper), (chars!('\u{371}'..='\u{371}'), SB::Lower), (chars!('\u{372}'..='\u{372}'), SB::Upper), (chars!('\u{373}'..='\u{373}'), SB::Lower), (chars!('\u{374}'..='\u{374}'), SB::OLetter), (chars!('\u{376}'..='\u{376}'), SB::Upper), (chars!('\u{377}'..='\u{377}'), SB::Lower), (chars!('\u{37a}'..='\u{37d}'), SB::Lower), (chars!('\u{37f}'..='\u{37f}'), SB::Upper), (chars!('\u{386}'..='\u{386}'), SB::Upper), (chars!('\u{388}'..='\u{38a}'), SB::Upper), (chars!('\u{38c}'..='\u{38c}'), SB::Upper), (chars!('\u{38e}'..='\u{38f}'), SB::Upper), (chars!('\u{390}'..='\u{390}'), SB::Lower), (chars!('\u{391}'..='\u{3a1}'), SB::Upper), (chars!('\u{3a3}'..='\u{3ab}'), SB::Upper), (chars!('\u{3ac}'..='\u{3ce}'), SB::Lower), (chars!('\u{3cf}'..='\u{3cf}'), SB::Upper), (chars!('\u{3d0}'..='\u{3d1}'), SB::Lower), (chars!('\u{3d2}'..='\u{3d4}'), SB::Upper), (chars!('\u{3d5}'..='\u{3d7}'), SB::Lower), (chars!('\u{3d8}'..='\u{3d8}'), SB::Upper), (chars!('\u{3d9}'..='\u{3d9}'), SB::Lower), (chars!('\u{3da}'..='\u{3da}'), SB::Upper), (chars!('\u{3db}'..='\u{3db}'), SB::Lower), (chars!('\u{3dc}'..='\u{3dc}'), SB::Upper), (chars!('\u{3dd}'..='\u{3dd}'), SB::Lower), (chars!('\u{3de}'..='\u{3de}'), SB::Upper), (chars!('\u{3df}'..='\u{3df}'), SB::Lower), (chars!('\u{3e0}'..='\u{3e0}'), SB::Upper), (chars!('\u{3e1}'..='\u{3e1}'), SB::Lower), (chars!('\u{3e2}'..='\u{3e2}'), SB::Upper), (chars!('\u{3e3}'..='\u{3e3}'), SB::Lower), (chars!('\u{3e4}'..='\u{3e4}'), SB::Upper), (chars!('\u{3e5}'..='\u{3e5}'), SB::Lower), (chars!('\u{3e6}'..='\u{3e6}'), SB::Upper), (chars!('\u{3e7}'..='\u{3e7}'), SB::Lower), (chars!('\u{3e8}'..='\u{3e8}'), SB::Upper), (chars!('\u{3e9}'..='\u{3e9}'), SB::Lower), (chars!('\u{3ea}'..='\u{3ea}'), SB::Upper), (chars!('\u{3eb}'..='\u{3eb}'), SB::Lower), (chars!('\u{3ec}'..='\u{3ec}'), SB::Upper), (chars!('\u{3ed}'..='\u{3ed}'), SB::Lower), (chars!('\u{3ee}'..='\u{3ee}'), SB::Upper), (chars!('\u{3ef}'..='\u{3f3}'), SB::Lower), (chars!('\u{3f4}'..='\u{3f4}'), SB::Upper), (chars!('\u{3f5}'..='\u{3f5}'), SB::Lower), (chars!('\u{3f7}'..='\u{3f7}'), SB::Upper), (chars!('\u{3f8}'..='\u{3f8}'), SB::Lower), (chars!('\u{3f9}'..='\u{3fa}'), SB::Upper), (chars!('\u{3fb}'..='\u{3fc}'), SB::Lower), (chars!('\u{3fd}'..='\u{42f}'), SB::Upper), (chars!('\u{430}'..='\u{45f}'), SB::Lower), (chars!('\u{460}'..='\u{460}'), SB::Upper), (chars!('\u{461}'..='\u{461}'), SB::Lower), (chars!('\u{462}'..='\u{462}'), SB::Upper), (chars!('\u{463}'..='\u{463}'), SB::Lower), (chars!('\u{464}'..='\u{464}'), SB::Upper), (chars!('\u{465}'..='\u{465}'), SB::Lower), (chars!('\u{466}'..='\u{466}'), SB::Upper), (chars!('\u{467}'..='\u{467}'), SB::Lower), (chars!('\u{468}'..='\u{468}'), SB::Upper), (chars!('\u{469}'..='\u{469}'), SB::Lower), (chars!('\u{46a}'..='\u{46a}'), SB::Upper), (chars!('\u{46b}'..='\u{46b}'), SB::Lower), (chars!('\u{46c}'..='\u{46c}'), SB::Upper), (chars!('\u{46d}'..='\u{46d}'), SB::Lower), (chars!('\u{46e}'..='\u{46e}'), SB::Upper), (chars!('\u{46f}'..='\u{46f}'), SB::Lower), (chars!('\u{470}'..='\u{470}'), SB::Upper), (chars!('\u{471}'..='\u{471}'), SB::Lower), (chars!('\u{472}'..='\u{472}'), SB::Upper), (chars!('\u{473}'..='\u{473}'), SB::Lower), (chars!('\u{474}'..='\u{474}'), SB::Upper), (chars!('\u{475}'..='\u{475}'), SB::Lower), (chars!('\u{476}'..='\u{476}'), SB::Upper), (chars!('\u{477}'..='\u{477}'), SB::Lower), (chars!('\u{478}'..='\u{478}'), SB::Upper), (chars!('\u{479}'..='\u{479}'), SB::Lower), (chars!('\u{47a}'..='\u{47a}'), SB::Upper), (chars!('\u{47b}'..='\u{47b}'), SB::Lower), (chars!('\u{47c}'..='\u{47c}'), SB::Upper), (chars!('\u{47d}'..='\u{47d}'), SB::Lower), (chars!('\u{47e}'..='\u{47e}'), SB::Upper), (chars!('\u{47f}'..='\u{47f}'), SB::Lower), (chars!('\u{480}'..='\u{480}'), SB::Upper), (chars!('\u{481}'..='\u{481}'), SB::Lower), (chars!('\u{483}'..='\u{489}'), SB::Extend), (chars!('\u{48a}'..='\u{48a}'), SB::Upper), (chars!('\u{48b}'..='\u{48b}'), SB::Lower), (chars!('\u{48c}'..='\u{48c}'), SB::Upper), (chars!('\u{48d}'..='\u{48d}'), SB::Lower), (chars!('\u{48e}'..='\u{48e}'), SB::Upper), (chars!('\u{48f}'..='\u{48f}'), SB::Lower), (chars!('\u{490}'..='\u{490}'), SB::Upper), (chars!('\u{491}'..='\u{491}'), SB::Lower), (chars!('\u{492}'..='\u{492}'), SB::Upper), (chars!('\u{493}'..='\u{493}'), SB::Lower), (chars!('\u{494}'..='\u{494}'), SB::Upper), (chars!('\u{495}'..='\u{495}'), SB::Lower), (chars!('\u{496}'..='\u{496}'), SB::Upper), (chars!('\u{497}'..='\u{497}'), SB::Lower), (chars!('\u{498}'..='\u{498}'), SB::Upper), (chars!('\u{499}'..='\u{499}'), SB::Lower), (chars!('\u{49a}'..='\u{49a}'), SB::Upper), (chars!('\u{49b}'..='\u{49b}'), SB::Lower), (chars!('\u{49c}'..='\u{49c}'), SB::Upper), (chars!('\u{49d}'..='\u{49d}'), SB::Lower), (chars!('\u{49e}'..='\u{49e}'), SB::Upper), (chars!('\u{49f}'..='\u{49f}'), SB::Lower), (chars!('\u{4a0}'..='\u{4a0}'), SB::Upper), (chars!('\u{4a1}'..='\u{4a1}'), SB::Lower), (chars!('\u{4a2}'..='\u{4a2}'), SB::Upper), (chars!('\u{4a3}'..='\u{4a3}'), SB::Lower), (chars!('\u{4a4}'..='\u{4a4}'), SB::Upper), (chars!('\u{4a5}'..='\u{4a5}'), SB::Lower), (chars!('\u{4a6}'..='\u{4a6}'), SB::Upper), (chars!('\u{4a7}'..='\u{4a7}'), SB::Lower), (chars!('\u{4a8}'..='\u{4a8}'), SB::Upper), (chars!('\u{4a9}'..='\u{4a9}'), SB::Lower), (chars!('\u{4aa}'..='\u{4aa}'), SB::Upper), (chars!('\u{4ab}'..='\u{4ab}'), SB::Lower), (chars!('\u{4ac}'..='\u{4ac}'), SB::Upper), (chars!('\u{4ad}'..='\u{4ad}'), SB::Lower), (chars!('\u{4ae}'..='\u{4ae}'), SB::Upper), (chars!('\u{4af}'..='\u{4af}'), SB::Lower), (chars!('\u{4b0}'..='\u{4b0}'), SB::Upper), (chars!('\u{4b1}'..='\u{4b1}'), SB::Lower), (chars!('\u{4b2}'..='\u{4b2}'), SB::Upper), (chars!('\u{4b3}'..='\u{4b3}'), SB::Lower), (chars!('\u{4b4}'..='\u{4b4}'), SB::Upper), (chars!('\u{4b5}'..='\u{4b5}'), SB::Lower), (chars!('\u{4b6}'..='\u{4b6}'), SB::Upper), (chars!('\u{4b7}'..='\u{4b7}'), SB::Lower), (chars!('\u{4b8}'..='\u{4b8}'), SB::Upper), (chars!('\u{4b9}'..='\u{4b9}'), SB::Lower), (chars!('\u{4ba}'..='\u{4ba}'), SB::Upper), (chars!('\u{4bb}'..='\u{4bb}'), SB::Lower), (chars!('\u{4bc}'..='\u{4bc}'), SB::Upper), (chars!('\u{4bd}'..='\u{4bd}'), SB::Lower), (chars!('\u{4be}'..='\u{4be}'), SB::Upper), (chars!('\u{4bf}'..='\u{4bf}'), SB::Lower), (chars!('\u{4c0}'..='\u{4c1}'), SB::Upper), (chars!('\u{4c2}'..='\u{4c2}'), SB::Lower), (chars!('\u{4c3}'..='\u{4c3}'), SB::Upper), (chars!('\u{4c4}'..='\u{4c4}'), SB::Lower), (chars!('\u{4c5}'..='\u{4c5}'), SB::Upper), (chars!('\u{4c6}'..='\u{4c6}'), SB::Lower), (chars!('\u{4c7}'..='\u{4c7}'), SB::Upper), (chars!('\u{4c8}'..='\u{4c8}'), SB::Lower), (chars!('\u{4c9}'..='\u{4c9}'), SB::Upper), (chars!('\u{4ca}'..='\u{4ca}'), SB::Lower), (chars!('\u{4cb}'..='\u{4cb}'), SB::Upper), (chars!('\u{4cc}'..='\u{4cc}'), SB::Lower), (chars!('\u{4cd}'..='\u{4cd}'), SB::Upper), (chars!('\u{4ce}'..='\u{4cf}'), SB::Lower), (chars!('\u{4d0}'..='\u{4d0}'), SB::Upper), (chars!('\u{4d1}'..='\u{4d1}'), SB::Lower), (chars!('\u{4d2}'..='\u{4d2}'), SB::Upper), (chars!('\u{4d3}'..='\u{4d3}'), SB::Lower), (chars!('\u{4d4}'..='\u{4d4}'), SB::Upper), (chars!('\u{4d5}'..='\u{4d5}'), SB::Lower), (chars!('\u{4d6}'..='\u{4d6}'), SB::Upper), (chars!('\u{4d7}'..='\u{4d7}'), SB::Lower), (chars!('\u{4d8}'..='\u{4d8}'), SB::Upper), (chars!('\u{4d9}'..='\u{4d9}'), SB::Lower), (chars!('\u{4da}'..='\u{4da}'), SB::Upper), (chars!('\u{4db}'..='\u{4db}'), SB::Lower), (chars!('\u{4dc}'..='\u{4dc}'), SB::Upper), (chars!('\u{4dd}'..='\u{4dd}'), SB::Lower), (chars!('\u{4de}'..='\u{4de}'), SB::Upper), (chars!('\u{4df}'..='\u{4df}'), SB::Lower), (chars!('\u{4e0}'..='\u{4e0}'), SB::Upper), (chars!('\u{4e1}'..='\u{4e1}'), SB::Lower), (chars!('\u{4e2}'..='\u{4e2}'), SB::Upper), (chars!('\u{4e3}'..='\u{4e3}'), SB::Lower), (chars!('\u{4e4}'..='\u{4e4}'), SB::Upper), (chars!('\u{4e5}'..='\u{4e5}'), SB::Lower), (chars!('\u{4e6}'..='\u{4e6}'), SB::Upper), (chars!('\u{4e7}'..='\u{4e7}'), SB::Lower), (chars!('\u{4e8}'..='\u{4e8}'), SB::Upper), (chars!('\u{4e9}'..='\u{4e9}'), SB::Lower), (chars!('\u{4ea}'..='\u{4ea}'), SB::Upper), (chars!('\u{4eb}'..='\u{4eb}'), SB::Lower), (chars!('\u{4ec}'..='\u{4ec}'), SB::Upper), (chars!('\u{4ed}'..='\u{4ed}'), SB::Lower), (chars!('\u{4ee}'..='\u{4ee}'), SB::Upper), (chars!('\u{4ef}'..='\u{4ef}'), SB::Lower), (chars!('\u{4f0}'..='\u{4f0}'), SB::Upper), (chars!('\u{4f1}'..='\u{4f1}'), SB::Lower), (chars!('\u{4f2}'..='\u{4f2}'), SB::Upper), (chars!('\u{4f3}'..='\u{4f3}'), SB::Lower), (chars!('\u{4f4}'..='\u{4f4}'), SB::Upper), (chars!('\u{4f5}'..='\u{4f5}'), SB::Lower), (chars!('\u{4f6}'..='\u{4f6}'), SB::Upper), (chars!('\u{4f7}'..='\u{4f7}'), SB::Lower), (chars!('\u{4f8}'..='\u{4f8}'), SB::Upper), (chars!('\u{4f9}'..='\u{4f9}'), SB::Lower), (chars!('\u{4fa}'..='\u{4fa}'), SB::Upper), (chars!('\u{4fb}'..='\u{4fb}'), SB::Lower), (chars!('\u{4fc}'..='\u{4fc}'), SB::Upper), (chars!('\u{4fd}'..='\u{4fd}'), SB::Lower), (chars!('\u{4fe}'..='\u{4fe}'), SB::Upper), (chars!('\u{4ff}'..='\u{4ff}'), SB::Lower), (chars!('\u{500}'..='\u{500}'), SB::Upper), (chars!('\u{501}'..='\u{501}'), SB::Lower), (chars!('\u{502}'..='\u{502}'), SB::Upper), (chars!('\u{503}'..='\u{503}'), SB::Lower), (chars!('\u{504}'..='\u{504}'), SB::Upper), (chars!('\u{505}'..='\u{505}'), SB::Lower), (chars!('\u{506}'..='\u{506}'), SB::Upper), (chars!('\u{507}'..='\u{507}'), SB::Lower), (chars!('\u{508}'..='\u{508}'), SB::Upper), (chars!('\u{509}'..='\u{509}'), SB::Lower), (chars!('\u{50a}'..='\u{50a}'), SB::Upper), (chars!('\u{50b}'..='\u{50b}'), SB::Lower), (chars!('\u{50c}'..='\u{50c}'), SB::Upper), (chars!('\u{50d}'..='\u{50d}'), SB::Lower), (chars!('\u{50e}'..='\u{50e}'), SB::Upper), (chars!('\u{50f}'..='\u{50f}'), SB::Lower), (chars!('\u{510}'..='\u{510}'), SB::Upper), (chars!('\u{511}'..='\u{511}'), SB::Lower), (chars!('\u{512}'..='\u{512}'), SB::Upper), (chars!('\u{513}'..='\u{513}'), SB::Lower), (chars!('\u{514}'..='\u{514}'), SB::Upper), (chars!('\u{515}'..='\u{515}'), SB::Lower), (chars!('\u{516}'..='\u{516}'), SB::Upper), (chars!('\u{517}'..='\u{517}'), SB::Lower), (chars!('\u{518}'..='\u{518}'), SB::Upper), (chars!('\u{519}'..='\u{519}'), SB::Lower), (chars!('\u{51a}'..='\u{51a}'), SB::Upper), (chars!('\u{51b}'..='\u{51b}'), SB::Lower), (chars!('\u{51c}'..='\u{51c}'), SB::Upper), (chars!('\u{51d}'..='\u{51d}'), SB::Lower), (chars!('\u{51e}'..='\u{51e}'), SB::Upper), (chars!('\u{51f}'..='\u{51f}'), SB::Lower), (chars!('\u{520}'..='\u{520}'), SB::Upper), (chars!('\u{521}'..='\u{521}'), SB::Lower), (chars!('\u{522}'..='\u{522}'), SB::Upper), (chars!('\u{523}'..='\u{523}'), SB::Lower), (chars!('\u{524}'..='\u{524}'), SB::Upper), (chars!('\u{525}'..='\u{525}'), SB::Lower), (chars!('\u{526}'..='\u{526}'), SB::Upper), (chars!('\u{527}'..='\u{527}'), SB::Lower), (chars!('\u{528}'..='\u{528}'), SB::Upper), (chars!('\u{529}'..='\u{529}'), SB::Lower), (chars!('\u{52a}'..='\u{52a}'), SB::Upper), (chars!('\u{52b}'..='\u{52b}'), SB::Lower), (chars!('\u{52c}'..='\u{52c}'), SB::Upper), (chars!('\u{52d}'..='\u{52d}'), SB::Lower), (chars!('\u{52e}'..='\u{52e}'), SB::Upper), (chars!('\u{52f}'..='\u{52f}'), SB::Lower), (chars!('\u{531}'..='\u{556}'), SB::Upper), (chars!('\u{559}'..='\u{559}'), SB::OLetter), (chars!('\u{55d}'..='\u{55d}'), SB::SContinue), (chars!('\u{561}'..='\u{587}'), SB::Lower), (chars!('\u{589}'..='\u{589}'), SB::STerm), (chars!('\u{591}'..='\u{5bd}'), SB::Extend), (chars!('\u{5bf}'..='\u{5bf}'), SB::Extend), (chars!('\u{5c1}'..='\u{5c2}'), SB::Extend), (chars!('\u{5c4}'..='\u{5c5}'), SB::Extend), (chars!('\u{5c7}'..='\u{5c7}'), SB::Extend), (chars!('\u{5d0}'..='\u{5ea}'), SB::OLetter), (chars!('\u{5f0}'..='\u{5f3}'), SB::OLetter), (chars!('\u{600}'..='\u{605}'), SB::Format), (chars!('\u{60c}'..='\u{60d}'), SB::SContinue), (chars!('\u{610}'..='\u{61a}'), SB::Extend), (chars!('\u{61c}'..='\u{61c}'), SB::Format), (chars!('\u{61f}'..='\u{61f}'), SB::STerm), (chars!('\u{620}'..='\u{64a}'), SB::OLetter), (chars!('\u{64b}'..='\u{65f}'), SB::Extend), (chars!('\u{660}'..='\u{669}'), SB::Numeric), (chars!('\u{66b}'..='\u{66c}'), SB::Numeric), (chars!('\u{66e}'..='\u{66f}'), SB::OLetter), (chars!('\u{670}'..='\u{670}'), SB::Extend), (chars!('\u{671}'..='\u{6d3}'), SB::OLetter), (chars!('\u{6d4}'..='\u{6d4}'), SB::STerm), (chars!('\u{6d5}'..='\u{6d5}'), SB::OLetter), (chars!('\u{6d6}'..='\u{6dc}'), SB::Extend), (chars!('\u{6dd}'..='\u{6dd}'), SB::Format), (chars!('\u{6df}'..='\u{6e4}'), SB::Extend), (chars!('\u{6e5}'..='\u{6e6}'), SB::OLetter), (chars!('\u{6e7}'..='\u{6e8}'), SB::Extend), (chars!('\u{6ea}'..='\u{6ed}'), SB::Extend), (chars!('\u{6ee}'..='\u{6ef}'), SB::OLetter), (chars!('\u{6f0}'..='\u{6f9}'), SB::Numeric), (chars!('\u{6fa}'..='\u{6fc}'), SB::OLetter), (chars!('\u{6ff}'..='\u{6ff}'), SB::OLetter), (chars!('\u{700}'..='\u{702}'), SB::STerm), (chars!('\u{70f}'..='\u{70f}'), SB::Format), (chars!('\u{710}'..='\u{710}'), SB::OLetter), (chars!('\u{711}'..='\u{711}'), SB::Extend), (chars!('\u{712}'..='\u{72f}'), SB::OLetter), (chars!('\u{730}'..='\u{74a}'), SB::Extend), (chars!('\u{74d}'..='\u{7a5}'), SB::OLetter), (chars!('\u{7a6}'..='\u{7b0}'), SB::Extend), (chars!('\u{7b1}'..='\u{7b1}'), SB::OLetter), (chars!('\u{7c0}'..='\u{7c9}'), SB::Numeric), (chars!('\u{7ca}'..='\u{7ea}'), SB::OLetter), (chars!('\u{7eb}'..='\u{7f3}'), SB::Extend), (chars!('\u{7f4}'..='\u{7f5}'), SB::OLetter), (chars!('\u{7f8}'..='\u{7f8}'), SB::SContinue), (chars!('\u{7f9}'..='\u{7f9}'), SB::STerm), (chars!('\u{7fa}'..='\u{7fa}'), SB::OLetter), (chars!('\u{800}'..='\u{815}'), SB::OLetter), (chars!('\u{816}'..='\u{819}'), SB::Extend), (chars!('\u{81a}'..='\u{81a}'), SB::OLetter), (chars!('\u{81b}'..='\u{823}'), SB::Extend), (chars!('\u{824}'..='\u{824}'), SB::OLetter), (chars!('\u{825}'..='\u{827}'), SB::Extend), (chars!('\u{828}'..='\u{828}'), SB::OLetter), (chars!('\u{829}'..='\u{82d}'), SB::Extend), (chars!('\u{840}'..='\u{858}'), SB::OLetter), (chars!('\u{859}'..='\u{85b}'), SB::Extend), (chars!('\u{860}'..='\u{86a}'), SB::OLetter), (chars!('\u{8a0}'..='\u{8b4}'), SB::OLetter), (chars!('\u{8b6}'..='\u{8bd}'), SB::OLetter), (chars!('\u{8d4}'..='\u{8e1}'), SB::Extend), (chars!('\u{8e2}'..='\u{8e2}'), SB::Format), (chars!('\u{8e3}'..='\u{903}'), SB::Extend), (chars!('\u{904}'..='\u{939}'), SB::OLetter), (chars!('\u{93a}'..='\u{93c}'), SB::Extend), (chars!('\u{93d}'..='\u{93d}'), SB::OLetter), (chars!('\u{93e}'..='\u{94f}'), SB::Extend), (chars!('\u{950}'..='\u{950}'), SB::OLetter), (chars!('\u{951}'..='\u{957}'), SB::Extend), (chars!('\u{958}'..='\u{961}'), SB::OLetter), (chars!('\u{962}'..='\u{963}'), SB::Extend), (chars!('\u{964}'..='\u{965}'), SB::STerm), (chars!('\u{966}'..='\u{96f}'), SB::Numeric), (chars!('\u{971}'..='\u{980}'), SB::OLetter), (chars!('\u{981}'..='\u{983}'), SB::Extend), (chars!('\u{985}'..='\u{98c}'), SB::OLetter), (chars!('\u{98f}'..='\u{990}'), SB::OLetter), (chars!('\u{993}'..='\u{9a8}'), SB::OLetter), (chars!('\u{9aa}'..='\u{9b0}'), SB::OLetter), (chars!('\u{9b2}'..='\u{9b2}'), SB::OLetter), (chars!('\u{9b6}'..='\u{9b9}'), SB::OLetter), (chars!('\u{9bc}'..='\u{9bc}'), SB::Extend), (chars!('\u{9bd}'..='\u{9bd}'), SB::OLetter), (chars!('\u{9be}'..='\u{9c4}'), SB::Extend), (chars!('\u{9c7}'..='\u{9c8}'), SB::Extend), (chars!('\u{9cb}'..='\u{9cd}'), SB::Extend), (chars!('\u{9ce}'..='\u{9ce}'), SB::OLetter), (chars!('\u{9d7}'..='\u{9d7}'), SB::Extend), (chars!('\u{9dc}'..='\u{9dd}'), SB::OLetter), (chars!('\u{9df}'..='\u{9e1}'), SB::OLetter), (chars!('\u{9e2}'..='\u{9e3}'), SB::Extend), (chars!('\u{9e6}'..='\u{9ef}'), SB::Numeric), (chars!('\u{9f0}'..='\u{9f1}'), SB::OLetter), (chars!('\u{9fc}'..='\u{9fc}'), SB::OLetter), (chars!('\u{a01}'..='\u{a03}'), SB::Extend), (chars!('\u{a05}'..='\u{a0a}'), SB::OLetter), (chars!('\u{a0f}'..='\u{a10}'), SB::OLetter), (chars!('\u{a13}'..='\u{a28}'), SB::OLetter), (chars!('\u{a2a}'..='\u{a30}'), SB::OLetter), (chars!('\u{a32}'..='\u{a33}'), SB::OLetter), (chars!('\u{a35}'..='\u{a36}'), SB::OLetter), (chars!('\u{a38}'..='\u{a39}'), SB::OLetter), (chars!('\u{a3c}'..='\u{a3c}'), SB::Extend), (chars!('\u{a3e}'..='\u{a42}'), SB::Extend), (chars!('\u{a47}'..='\u{a48}'), SB::Extend), (chars!('\u{a4b}'..='\u{a4d}'), SB::Extend), (chars!('\u{a51}'..='\u{a51}'), SB::Extend), (chars!('\u{a59}'..='\u{a5c}'), SB::OLetter), (chars!('\u{a5e}'..='\u{a5e}'), SB::OLetter), (chars!('\u{a66}'..='\u{a6f}'), SB::Numeric), (chars!('\u{a70}'..='\u{a71}'), SB::Extend), (chars!('\u{a72}'..='\u{a74}'), SB::OLetter), (chars!('\u{a75}'..='\u{a75}'), SB::Extend), (chars!('\u{a81}'..='\u{a83}'), SB::Extend), (chars!('\u{a85}'..='\u{a8d}'), SB::OLetter), (chars!('\u{a8f}'..='\u{a91}'), SB::OLetter), (chars!('\u{a93}'..='\u{aa8}'), SB::OLetter), (chars!('\u{aaa}'..='\u{ab0}'), SB::OLetter), (chars!('\u{ab2}'..='\u{ab3}'), SB::OLetter), (chars!('\u{ab5}'..='\u{ab9}'), SB::OLetter), (chars!('\u{abc}'..='\u{abc}'), SB::Extend), (chars!('\u{abd}'..='\u{abd}'), SB::OLetter), (chars!('\u{abe}'..='\u{ac5}'), SB::Extend), (chars!('\u{ac7}'..='\u{ac9}'), SB::Extend), (chars!('\u{acb}'..='\u{acd}'), SB::Extend), (chars!('\u{ad0}'..='\u{ad0}'), SB::OLetter), (chars!('\u{ae0}'..='\u{ae1}'), SB::OLetter), (chars!('\u{ae2}'..='\u{ae3}'), SB::Extend), (chars!('\u{ae6}'..='\u{aef}'), SB::Numeric), (chars!('\u{af9}'..='\u{af9}'), SB::OLetter), (chars!('\u{afa}'..='\u{aff}'), SB::Extend), (chars!('\u{b01}'..='\u{b03}'), SB::Extend), (chars!('\u{b05}'..='\u{b0c}'), SB::OLetter), (chars!('\u{b0f}'..='\u{b10}'), SB::OLetter), (chars!('\u{b13}'..='\u{b28}'), SB::OLetter), (chars!('\u{b2a}'..='\u{b30}'), SB::OLetter), (chars!('\u{b32}'..='\u{b33}'), SB::OLetter), (chars!('\u{b35}'..='\u{b39}'), SB::OLetter), (chars!('\u{b3c}'..='\u{b3c}'), SB::Extend), (chars!('\u{b3d}'..='\u{b3d}'), SB::OLetter), (chars!('\u{b3e}'..='\u{b44}'), SB::Extend), (chars!('\u{b47}'..='\u{b48}'), SB::Extend), (chars!('\u{b4b}'..='\u{b4d}'), SB::Extend), (chars!('\u{b56}'..='\u{b57}'), SB::Extend), (chars!('\u{b5c}'..='\u{b5d}'), SB::OLetter), (chars!('\u{b5f}'..='\u{b61}'), SB::OLetter), (chars!('\u{b62}'..='\u{b63}'), SB::Extend), (chars!('\u{b66}'..='\u{b6f}'), SB::Numeric), (chars!('\u{b71}'..='\u{b71}'), SB::OLetter), (chars!('\u{b82}'..='\u{b82}'), SB::Extend), (chars!('\u{b83}'..='\u{b83}'), SB::OLetter), (chars!('\u{b85}'..='\u{b8a}'), SB::OLetter), (chars!('\u{b8e}'..='\u{b90}'), SB::OLetter), (chars!('\u{b92}'..='\u{b95}'), SB::OLetter), (chars!('\u{b99}'..='\u{b9a}'), SB::OLetter), (chars!('\u{b9c}'..='\u{b9c}'), SB::OLetter), (chars!('\u{b9e}'..='\u{b9f}'), SB::OLetter), (chars!('\u{ba3}'..='\u{ba4}'), SB::OLetter), (chars!('\u{ba8}'..='\u{baa}'), SB::OLetter), (chars!('\u{bae}'..='\u{bb9}'), SB::OLetter), (chars!('\u{bbe}'..='\u{bc2}'), SB::Extend), (chars!('\u{bc6}'..='\u{bc8}'), SB::Extend), (chars!('\u{bca}'..='\u{bcd}'), SB::Extend), (chars!('\u{bd0}'..='\u{bd0}'), SB::OLetter), (chars!('\u{bd7}'..='\u{bd7}'), SB::Extend), (chars!('\u{be6}'..='\u{bef}'), SB::Numeric), (chars!('\u{c00}'..='\u{c03}'), SB::Extend), (chars!('\u{c05}'..='\u{c0c}'), SB::OLetter), (chars!('\u{c0e}'..='\u{c10}'), SB::OLetter), (chars!('\u{c12}'..='\u{c28}'), SB::OLetter), (chars!('\u{c2a}'..='\u{c39}'), SB::OLetter), (chars!('\u{c3d}'..='\u{c3d}'), SB::OLetter), (chars!('\u{c3e}'..='\u{c44}'), SB::Extend), (chars!('\u{c46}'..='\u{c48}'), SB::Extend), (chars!('\u{c4a}'..='\u{c4d}'), SB::Extend), (chars!('\u{c55}'..='\u{c56}'), SB::Extend), (chars!('\u{c58}'..='\u{c5a}'), SB::OLetter), (chars!('\u{c60}'..='\u{c61}'), SB::OLetter), (chars!('\u{c62}'..='\u{c63}'), SB::Extend), (chars!('\u{c66}'..='\u{c6f}'), SB::Numeric), (chars!('\u{c80}'..='\u{c80}'), SB::OLetter), (chars!('\u{c81}'..='\u{c83}'), SB::Extend), (chars!('\u{c85}'..='\u{c8c}'), SB::OLetter), (chars!('\u{c8e}'..='\u{c90}'), SB::OLetter), (chars!('\u{c92}'..='\u{ca8}'), SB::OLetter), (chars!('\u{caa}'..='\u{cb3}'), SB::OLetter), (chars!('\u{cb5}'..='\u{cb9}'), SB::OLetter), (chars!('\u{cbc}'..='\u{cbc}'), SB::Extend), (chars!('\u{cbd}'..='\u{cbd}'), SB::OLetter), (chars!('\u{cbe}'..='\u{cc4}'), SB::Extend), (chars!('\u{cc6}'..='\u{cc8}'), SB::Extend), (chars!('\u{cca}'..='\u{ccd}'), SB::Extend), (chars!('\u{cd5}'..='\u{cd6}'), SB::Extend), (chars!('\u{cde}'..='\u{cde}'), SB::OLetter), (chars!('\u{ce0}'..='\u{ce1}'), SB::OLetter), (chars!('\u{ce2}'..='\u{ce3}'), SB::Extend), (chars!('\u{ce6}'..='\u{cef}'), SB::Numeric), (chars!('\u{cf1}'..='\u{cf2}'), SB::OLetter), (chars!('\u{d00}'..='\u{d03}'), SB::Extend), (chars!('\u{d05}'..='\u{d0c}'), SB::OLetter), (chars!('\u{d0e}'..='\u{d10}'), SB::OLetter), (chars!('\u{d12}'..='\u{d3a}'), SB::OLetter), (chars!('\u{d3b}'..='\u{d3c}'), SB::Extend), (chars!('\u{d3d}'..='\u{d3d}'), SB::OLetter), (chars!('\u{d3e}'..='\u{d44}'), SB::Extend), (chars!('\u{d46}'..='\u{d48}'), SB::Extend), (chars!('\u{d4a}'..='\u{d4d}'), SB::Extend), (chars!('\u{d4e}'..='\u{d4e}'), SB::OLetter), (chars!('\u{d54}'..='\u{d56}'), SB::OLetter), (chars!('\u{d57}'..='\u{d57}'), SB::Extend), (chars!('\u{d5f}'..='\u{d61}'), SB::OLetter), (chars!('\u{d62}'..='\u{d63}'), SB::Extend), (chars!('\u{d66}'..='\u{d6f}'), SB::Numeric), (chars!('\u{d7a}'..='\u{d7f}'), SB::OLetter), (chars!('\u{d82}'..='\u{d83}'), SB::Extend), (chars!('\u{d85}'..='\u{d96}'), SB::OLetter), (chars!('\u{d9a}'..='\u{db1}'), SB::OLetter), (chars!('\u{db3}'..='\u{dbb}'), SB::OLetter), (chars!('\u{dbd}'..='\u{dbd}'), SB::OLetter), (chars!('\u{dc0}'..='\u{dc6}'), SB::OLetter), (chars!('\u{dca}'..='\u{dca}'), SB::Extend), (chars!('\u{dcf}'..='\u{dd4}'), SB::Extend), (chars!('\u{dd6}'..='\u{dd6}'), SB::Extend), (chars!('\u{dd8}'..='\u{ddf}'), SB::Extend), (chars!('\u{de6}'..='\u{def}'), SB::Numeric), (chars!('\u{df2}'..='\u{df3}'), SB::Extend), (chars!('\u{e01}'..='\u{e30}'), SB::OLetter), (chars!('\u{e31}'..='\u{e31}'), SB::Extend), (chars!('\u{e32}'..='\u{e33}'), SB::OLetter), (chars!('\u{e34}'..='\u{e3a}'), SB::Extend), (chars!('\u{e40}'..='\u{e46}'), SB::OLetter), (chars!('\u{e47}'..='\u{e4e}'), SB::Extend), (chars!('\u{e50}'..='\u{e59}'), SB::Numeric), (chars!('\u{e81}'..='\u{e82}'), SB::OLetter), (chars!('\u{e84}'..='\u{e84}'), SB::OLetter), (chars!('\u{e87}'..='\u{e88}'), SB::OLetter), (chars!('\u{e8a}'..='\u{e8a}'), SB::OLetter), (chars!('\u{e8d}'..='\u{e8d}'), SB::OLetter), (chars!('\u{e94}'..='\u{e97}'), SB::OLetter), (chars!('\u{e99}'..='\u{e9f}'), SB::OLetter), (chars!('\u{ea1}'..='\u{ea3}'), SB::OLetter), (chars!('\u{ea5}'..='\u{ea5}'), SB::OLetter), (chars!('\u{ea7}'..='\u{ea7}'), SB::OLetter), (chars!('\u{eaa}'..='\u{eab}'), SB::OLetter), (chars!('\u{ead}'..='\u{eb0}'), SB::OLetter), (chars!('\u{eb1}'..='\u{eb1}'), SB::Extend), (chars!('\u{eb2}'..='\u{eb3}'), SB::OLetter), (chars!('\u{eb4}'..='\u{eb9}'), SB::Extend), (chars!('\u{ebb}'..='\u{ebc}'), SB::Extend), (chars!('\u{ebd}'..='\u{ebd}'), SB::OLetter), (chars!('\u{ec0}'..='\u{ec4}'), SB::OLetter), (chars!('\u{ec6}'..='\u{ec6}'), SB::OLetter), (chars!('\u{ec8}'..='\u{ecd}'), SB::Extend), (chars!('\u{ed0}'..='\u{ed9}'), SB::Numeric), (chars!('\u{edc}'..='\u{edf}'), SB::OLetter), (chars!('\u{f00}'..='\u{f00}'), SB::OLetter), (chars!('\u{f18}'..='\u{f19}'), SB::Extend), (chars!('\u{f20}'..='\u{f29}'), SB::Numeric), (chars!('\u{f35}'..='\u{f35}'), SB::Extend), (chars!('\u{f37}'..='\u{f37}'), SB::Extend), (chars!('\u{f39}'..='\u{f39}'), SB::Extend), (chars!('\u{f3a}'..='\u{f3d}'), SB::Close), (chars!('\u{f3e}'..='\u{f3f}'), SB::Extend), (chars!('\u{f40}'..='\u{f47}'), SB::OLetter), (chars!('\u{f49}'..='\u{f6c}'), SB::OLetter), (chars!('\u{f71}'..='\u{f84}'), SB::Extend), (chars!('\u{f86}'..='\u{f87}'), SB::Extend), (chars!('\u{f88}'..='\u{f8c}'), SB::OLetter), (chars!('\u{f8d}'..='\u{f97}'), SB::Extend), (chars!('\u{f99}'..='\u{fbc}'), SB::Extend), (chars!('\u{fc6}'..='\u{fc6}'), SB::Extend), (chars!('\u{1000}'..='\u{102a}'), SB::OLetter), (chars!('\u{102b}'..='\u{103e}'), SB::Extend), (chars!('\u{103f}'..='\u{103f}'), SB::OLetter), (chars!('\u{1040}'..='\u{1049}'), SB::Numeric), (chars!('\u{104a}'..='\u{104b}'), SB::STerm), (chars!('\u{1050}'..='\u{1055}'), SB::OLetter), (chars!('\u{1056}'..='\u{1059}'), SB::Extend), (chars!('\u{105a}'..='\u{105d}'), SB::OLetter), (chars!('\u{105e}'..='\u{1060}'), SB::Extend), (chars!('\u{1061}'..='\u{1061}'), SB::OLetter), (chars!('\u{1062}'..='\u{1064}'), SB::Extend), (chars!('\u{1065}'..='\u{1066}'), SB::OLetter), (chars!('\u{1067}'..='\u{106d}'), SB::Extend), (chars!('\u{106e}'..='\u{1070}'), SB::OLetter), (chars!('\u{1071}'..='\u{1074}'), SB::Extend), (chars!('\u{1075}'..='\u{1081}'), SB::OLetter), (chars!('\u{1082}'..='\u{108d}'), SB::Extend), (chars!('\u{108e}'..='\u{108e}'), SB::OLetter), (chars!('\u{108f}'..='\u{108f}'), SB::Extend), (chars!('\u{1090}'..='\u{1099}'), SB::Numeric), (chars!('\u{109a}'..='\u{109d}'), SB::Extend), (chars!('\u{10a0}'..='\u{10c5}'), SB::Upper), (chars!('\u{10c7}'..='\u{10c7}'), SB::Upper), (chars!('\u{10cd}'..='\u{10cd}'), SB::Upper), (chars!('\u{10d0}'..='\u{10fa}'), SB::OLetter), (chars!('\u{10fc}'..='\u{1248}'), SB::OLetter), (chars!('\u{124a}'..='\u{124d}'), SB::OLetter), (chars!('\u{1250}'..='\u{1256}'), SB::OLetter), (chars!('\u{1258}'..='\u{1258}'), SB::OLetter), (chars!('\u{125a}'..='\u{125d}'), SB::OLetter), (chars!('\u{1260}'..='\u{1288}'), SB::OLetter), (chars!('\u{128a}'..='\u{128d}'), SB::OLetter), (chars!('\u{1290}'..='\u{12b0}'), SB::OLetter), (chars!('\u{12b2}'..='\u{12b5}'), SB::OLetter), (chars!('\u{12b8}'..='\u{12be}'), SB::OLetter), (chars!('\u{12c0}'..='\u{12c0}'), SB::OLetter), (chars!('\u{12c2}'..='\u{12c5}'), SB::OLetter), (chars!('\u{12c8}'..='\u{12d6}'), SB::OLetter), (chars!('\u{12d8}'..='\u{1310}'), SB::OLetter), (chars!('\u{1312}'..='\u{1315}'), SB::OLetter), (chars!('\u{1318}'..='\u{135a}'), SB::OLetter), (chars!('\u{135d}'..='\u{135f}'), SB::Extend), (chars!('\u{1362}'..='\u{1362}'), SB::STerm), (chars!('\u{1367}'..='\u{1368}'), SB::STerm), (chars!('\u{1380}'..='\u{138f}'), SB::OLetter), (chars!('\u{13a0}'..='\u{13f5}'), SB::Upper), (chars!('\u{13f8}'..='\u{13fd}'), SB::Lower), (chars!('\u{1401}'..='\u{166c}'), SB::OLetter), (chars!('\u{166e}'..='\u{166e}'), SB::STerm), (chars!('\u{166f}'..='\u{167f}'), SB::OLetter), (chars!('\u{1680}'..='\u{1680}'), SB::Sp), (chars!('\u{1681}'..='\u{169a}'), SB::OLetter), (chars!('\u{169b}'..='\u{169c}'), SB::Close), (chars!('\u{16a0}'..='\u{16ea}'), SB::OLetter), (chars!('\u{16ee}'..='\u{16f8}'), SB::OLetter), (chars!('\u{1700}'..='\u{170c}'), SB::OLetter), (chars!('\u{170e}'..='\u{1711}'), SB::OLetter), (chars!('\u{1712}'..='\u{1714}'), SB::Extend), (chars!('\u{1720}'..='\u{1731}'), SB::OLetter), (chars!('\u{1732}'..='\u{1734}'), SB::Extend), (chars!('\u{1735}'..='\u{1736}'), SB::STerm), (chars!('\u{1740}'..='\u{1751}'), SB::OLetter), (chars!('\u{1752}'..='\u{1753}'), SB::Extend), (chars!('\u{1760}'..='\u{176c}'), SB::OLetter), (chars!('\u{176e}'..='\u{1770}'), SB::OLetter), (chars!('\u{1772}'..='\u{1773}'), SB::Extend), (chars!('\u{1780}'..='\u{17b3}'), SB::OLetter), (chars!('\u{17b4}'..='\u{17d3}'), SB::Extend), (chars!('\u{17d7}'..='\u{17d7}'), SB::OLetter), (chars!('\u{17dc}'..='\u{17dc}'), SB::OLetter), (chars!('\u{17dd}'..='\u{17dd}'), SB::Extend), (chars!('\u{17e0}'..='\u{17e9}'), SB::Numeric), (chars!('\u{1802}'..='\u{1802}'), SB::SContinue), (chars!('\u{1803}'..='\u{1803}'), SB::STerm), (chars!('\u{1808}'..='\u{1808}'), SB::SContinue), (chars!('\u{1809}'..='\u{1809}'), SB::STerm), (chars!('\u{180b}'..='\u{180d}'), SB::Extend), (chars!('\u{180e}'..='\u{180e}'), SB::Format), (chars!('\u{1810}'..='\u{1819}'), SB::Numeric), (chars!('\u{1820}'..='\u{1877}'), SB::OLetter), (chars!('\u{1880}'..='\u{1884}'), SB::OLetter), (chars!('\u{1885}'..='\u{1886}'), SB::Extend), (chars!('\u{1887}'..='\u{18a8}'), SB::OLetter), (chars!('\u{18a9}'..='\u{18a9}'), SB::Extend), (chars!('\u{18aa}'..='\u{18aa}'), SB::OLetter), (chars!('\u{18b0}'..='\u{18f5}'), SB::OLetter), (chars!('\u{1900}'..='\u{191e}'), SB::OLetter), (chars!('\u{1920}'..='\u{192b}'), SB::Extend), (chars!('\u{1930}'..='\u{193b}'), SB::Extend), (chars!('\u{1944}'..='\u{1945}'), SB::STerm), (chars!('\u{1946}'..='\u{194f}'), SB::Numeric), (chars!('\u{1950}'..='\u{196d}'), SB::OLetter), (chars!('\u{1970}'..='\u{1974}'), SB::OLetter), (chars!('\u{1980}'..='\u{19ab}'), SB::OLetter), (chars!('\u{19b0}'..='\u{19c9}'), SB::OLetter), (chars!('\u{19d0}'..='\u{19d9}'), SB::Numeric), (chars!('\u{1a00}'..='\u{1a16}'), SB::OLetter), (chars!('\u{1a17}'..='\u{1a1b}'), SB::Extend), (chars!('\u{1a20}'..='\u{1a54}'), SB::OLetter), (chars!('\u{1a55}'..='\u{1a5e}'), SB::Extend), (chars!('\u{1a60}'..='\u{1a7c}'), SB::Extend), (chars!('\u{1a7f}'..='\u{1a7f}'), SB::Extend), (chars!('\u{1a80}'..='\u{1a89}'), SB::Numeric), (chars!('\u{1a90}'..='\u{1a99}'), SB::Numeric), (chars!('\u{1aa7}'..='\u{1aa7}'), SB::OLetter), (chars!('\u{1aa8}'..='\u{1aab}'), SB::STerm), (chars!('\u{1ab0}'..='\u{1abe}'), SB::Extend), (chars!('\u{1b00}'..='\u{1b04}'), SB::Extend), (chars!('\u{1b05}'..='\u{1b33}'), SB::OLetter), (chars!('\u{1b34}'..='\u{1b44}'), SB::Extend), (chars!('\u{1b45}'..='\u{1b4b}'), SB::OLetter), (chars!('\u{1b50}'..='\u{1b59}'), SB::Numeric), (chars!('\u{1b5a}'..='\u{1b5b}'), SB::STerm), (chars!('\u{1b5e}'..='\u{1b5f}'), SB::STerm), (chars!('\u{1b6b}'..='\u{1b73}'), SB::Extend), (chars!('\u{1b80}'..='\u{1b82}'), SB::Extend), (chars!('\u{1b83}'..='\u{1ba0}'), SB::OLetter), (chars!('\u{1ba1}'..='\u{1bad}'), SB::Extend), (chars!('\u{1bae}'..='\u{1baf}'), SB::OLetter), (chars!('\u{1bb0}'..='\u{1bb9}'), SB::Numeric), (chars!('\u{1bba}'..='\u{1be5}'), SB::OLetter), (chars!('\u{1be6}'..='\u{1bf3}'), SB::Extend), (chars!('\u{1c00}'..='\u{1c23}'), SB::OLetter), (chars!('\u{1c24}'..='\u{1c37}'), SB::Extend), (chars!('\u{1c3b}'..='\u{1c3c}'), SB::STerm), (chars!('\u{1c40}'..='\u{1c49}'), SB::Numeric), (chars!('\u{1c4d}'..='\u{1c4f}'), SB::OLetter), (chars!('\u{1c50}'..='\u{1c59}'), SB::Numeric), (chars!('\u{1c5a}'..='\u{1c7d}'), SB::OLetter), (chars!('\u{1c7e}'..='\u{1c7f}'), SB::STerm), (chars!('\u{1c80}'..='\u{1c88}'), SB::Lower), (chars!('\u{1cd0}'..='\u{1cd2}'), SB::Extend), (chars!('\u{1cd4}'..='\u{1ce8}'), SB::Extend), (chars!('\u{1ce9}'..='\u{1cec}'), SB::OLetter), (chars!('\u{1ced}'..='\u{1ced}'), SB::Extend), (chars!('\u{1cee}'..='\u{1cf1}'), SB::OLetter), (chars!('\u{1cf2}'..='\u{1cf4}'), SB::Extend), (chars!('\u{1cf5}'..='\u{1cf6}'), SB::OLetter), (chars!('\u{1cf7}'..='\u{1cf9}'), SB::Extend), (chars!('\u{1d00}'..='\u{1dbf}'), SB::Lower), (chars!('\u{1dc0}'..='\u{1df9}'), SB::Extend), (chars!('\u{1dfb}'..='\u{1dff}'), SB::Extend), (chars!('\u{1e00}'..='\u{1e00}'), SB::Upper), (chars!('\u{1e01}'..='\u{1e01}'), SB::Lower), (chars!('\u{1e02}'..='\u{1e02}'), SB::Upper), (chars!('\u{1e03}'..='\u{1e03}'), SB::Lower), (chars!('\u{1e04}'..='\u{1e04}'), SB::Upper), (chars!('\u{1e05}'..='\u{1e05}'), SB::Lower), (chars!('\u{1e06}'..='\u{1e06}'), SB::Upper), (chars!('\u{1e07}'..='\u{1e07}'), SB::Lower), (chars!('\u{1e08}'..='\u{1e08}'), SB::Upper), (chars!('\u{1e09}'..='\u{1e09}'), SB::Lower), (chars!('\u{1e0a}'..='\u{1e0a}'), SB::Upper), (chars!('\u{1e0b}'..='\u{1e0b}'), SB::Lower), (chars!('\u{1e0c}'..='\u{1e0c}'), SB::Upper), (chars!('\u{1e0d}'..='\u{1e0d}'), SB::Lower), (chars!('\u{1e0e}'..='\u{1e0e}'), SB::Upper), (chars!('\u{1e0f}'..='\u{1e0f}'), SB::Lower), (chars!('\u{1e10}'..='\u{1e10}'), SB::Upper), (chars!('\u{1e11}'..='\u{1e11}'), SB::Lower), (chars!('\u{1e12}'..='\u{1e12}'), SB::Upper), (chars!('\u{1e13}'..='\u{1e13}'), SB::Lower), (chars!('\u{1e14}'..='\u{1e14}'), SB::Upper), (chars!('\u{1e15}'..='\u{1e15}'), SB::Lower), (chars!('\u{1e16}'..='\u{1e16}'), SB::Upper), (chars!('\u{1e17}'..='\u{1e17}'), SB::Lower), (chars!('\u{1e18}'..='\u{1e18}'), SB::Upper), (chars!('\u{1e19}'..='\u{1e19}'), SB::Lower), (chars!('\u{1e1a}'..='\u{1e1a}'), SB::Upper), (chars!('\u{1e1b}'..='\u{1e1b}'), SB::Lower), (chars!('\u{1e1c}'..='\u{1e1c}'), SB::Upper), (chars!('\u{1e1d}'..='\u{1e1d}'), SB::Lower), (chars!('\u{1e1e}'..='\u{1e1e}'), SB::Upper), (chars!('\u{1e1f}'..='\u{1e1f}'), SB::Lower), (chars!('\u{1e20}'..='\u{1e20}'), SB::Upper), (chars!('\u{1e21}'..='\u{1e21}'), SB::Lower), (chars!('\u{1e22}'..='\u{1e22}'), SB::Upper), (chars!('\u{1e23}'..='\u{1e23}'), SB::Lower), (chars!('\u{1e24}'..='\u{1e24}'), SB::Upper), (chars!('\u{1e25}'..='\u{1e25}'), SB::Lower), (chars!('\u{1e26}'..='\u{1e26}'), SB::Upper), (chars!('\u{1e27}'..='\u{1e27}'), SB::Lower), (chars!('\u{1e28}'..='\u{1e28}'), SB::Upper), (chars!('\u{1e29}'..='\u{1e29}'), SB::Lower), (chars!('\u{1e2a}'..='\u{1e2a}'), SB::Upper), (chars!('\u{1e2b}'..='\u{1e2b}'), SB::Lower), (chars!('\u{1e2c}'..='\u{1e2c}'), SB::Upper), (chars!('\u{1e2d}'..='\u{1e2d}'), SB::Lower), (chars!('\u{1e2e}'..='\u{1e2e}'), SB::Upper), (chars!('\u{1e2f}'..='\u{1e2f}'), SB::Lower), (chars!('\u{1e30}'..='\u{1e30}'), SB::Upper), (chars!('\u{1e31}'..='\u{1e31}'), SB::Lower), (chars!('\u{1e32}'..='\u{1e32}'), SB::Upper), (chars!('\u{1e33}'..='\u{1e33}'), SB::Lower), (chars!('\u{1e34}'..='\u{1e34}'), SB::Upper), (chars!('\u{1e35}'..='\u{1e35}'), SB::Lower), (chars!('\u{1e36}'..='\u{1e36}'), SB::Upper), (chars!('\u{1e37}'..='\u{1e37}'), SB::Lower), (chars!('\u{1e38}'..='\u{1e38}'), SB::Upper), (chars!('\u{1e39}'..='\u{1e39}'), SB::Lower), (chars!('\u{1e3a}'..='\u{1e3a}'), SB::Upper), (chars!('\u{1e3b}'..='\u{1e3b}'), SB::Lower), (chars!('\u{1e3c}'..='\u{1e3c}'), SB::Upper), (chars!('\u{1e3d}'..='\u{1e3d}'), SB::Lower), (chars!('\u{1e3e}'..='\u{1e3e}'), SB::Upper), (chars!('\u{1e3f}'..='\u{1e3f}'), SB::Lower), (chars!('\u{1e40}'..='\u{1e40}'), SB::Upper), (chars!('\u{1e41}'..='\u{1e41}'), SB::Lower), (chars!('\u{1e42}'..='\u{1e42}'), SB::Upper), (chars!('\u{1e43}'..='\u{1e43}'), SB::Lower), (chars!('\u{1e44}'..='\u{1e44}'), SB::Upper), (chars!('\u{1e45}'..='\u{1e45}'), SB::Lower), (chars!('\u{1e46}'..='\u{1e46}'), SB::Upper), (chars!('\u{1e47}'..='\u{1e47}'), SB::Lower), (chars!('\u{1e48}'..='\u{1e48}'), SB::Upper), (chars!('\u{1e49}'..='\u{1e49}'), SB::Lower), (chars!('\u{1e4a}'..='\u{1e4a}'), SB::Upper), (chars!('\u{1e4b}'..='\u{1e4b}'), SB::Lower), (chars!('\u{1e4c}'..='\u{1e4c}'), SB::Upper), (chars!('\u{1e4d}'..='\u{1e4d}'), SB::Lower), (chars!('\u{1e4e}'..='\u{1e4e}'), SB::Upper), (chars!('\u{1e4f}'..='\u{1e4f}'), SB::Lower), (chars!('\u{1e50}'..='\u{1e50}'), SB::Upper), (chars!('\u{1e51}'..='\u{1e51}'), SB::Lower), (chars!('\u{1e52}'..='\u{1e52}'), SB::Upper), (chars!('\u{1e53}'..='\u{1e53}'), SB::Lower), (chars!('\u{1e54}'..='\u{1e54}'), SB::Upper), (chars!('\u{1e55}'..='\u{1e55}'), SB::Lower), (chars!('\u{1e56}'..='\u{1e56}'), SB::Upper), (chars!('\u{1e57}'..='\u{1e57}'), SB::Lower), (chars!('\u{1e58}'..='\u{1e58}'), SB::Upper), (chars!('\u{1e59}'..='\u{1e59}'), SB::Lower), (chars!('\u{1e5a}'..='\u{1e5a}'), SB::Upper), (chars!('\u{1e5b}'..='\u{1e5b}'), SB::Lower), (chars!('\u{1e5c}'..='\u{1e5c}'), SB::Upper), (chars!('\u{1e5d}'..='\u{1e5d}'), SB::Lower), (chars!('\u{1e5e}'..='\u{1e5e}'), SB::Upper), (chars!('\u{1e5f}'..='\u{1e5f}'), SB::Lower), (chars!('\u{1e60}'..='\u{1e60}'), SB::Upper), (chars!('\u{1e61}'..='\u{1e61}'), SB::Lower), (chars!('\u{1e62}'..='\u{1e62}'), SB::Upper), (chars!('\u{1e63}'..='\u{1e63}'), SB::Lower), (chars!('\u{1e64}'..='\u{1e64}'), SB::Upper), (chars!('\u{1e65}'..='\u{1e65}'), SB::Lower), (chars!('\u{1e66}'..='\u{1e66}'), SB::Upper), (chars!('\u{1e67}'..='\u{1e67}'), SB::Lower), (chars!('\u{1e68}'..='\u{1e68}'), SB::Upper), (chars!('\u{1e69}'..='\u{1e69}'), SB::Lower), (chars!('\u{1e6a}'..='\u{1e6a}'), SB::Upper), (chars!('\u{1e6b}'..='\u{1e6b}'), SB::Lower), (chars!('\u{1e6c}'..='\u{1e6c}'), SB::Upper), (chars!('\u{1e6d}'..='\u{1e6d}'), SB::Lower), (chars!('\u{1e6e}'..='\u{1e6e}'), SB::Upper), (chars!('\u{1e6f}'..='\u{1e6f}'), SB::Lower), (chars!('\u{1e70}'..='\u{1e70}'), SB::Upper), (chars!('\u{1e71}'..='\u{1e71}'), SB::Lower), (chars!('\u{1e72}'..='\u{1e72}'), SB::Upper), (chars!('\u{1e73}'..='\u{1e73}'), SB::Lower), (chars!('\u{1e74}'..='\u{1e74}'), SB::Upper), (chars!('\u{1e75}'..='\u{1e75}'), SB::Lower), (chars!('\u{1e76}'..='\u{1e76}'), SB::Upper), (chars!('\u{1e77}'..='\u{1e77}'), SB::Lower), (chars!('\u{1e78}'..='\u{1e78}'), SB::Upper), (chars!('\u{1e79}'..='\u{1e79}'), SB::Lower), (chars!('\u{1e7a}'..='\u{1e7a}'), SB::Upper), (chars!('\u{1e7b}'..='\u{1e7b}'), SB::Lower), (chars!('\u{1e7c}'..='\u{1e7c}'), SB::Upper), (chars!('\u{1e7d}'..='\u{1e7d}'), SB::Lower), (chars!('\u{1e7e}'..='\u{1e7e}'), SB::Upper), (chars!('\u{1e7f}'..='\u{1e7f}'), SB::Lower), (chars!('\u{1e80}'..='\u{1e80}'), SB::Upper), (chars!('\u{1e81}'..='\u{1e81}'), SB::Lower), (chars!('\u{1e82}'..='\u{1e82}'), SB::Upper), (chars!('\u{1e83}'..='\u{1e83}'), SB::Lower), (chars!('\u{1e84}'..='\u{1e84}'), SB::Upper), (chars!('\u{1e85}'..='\u{1e85}'), SB::Lower), (chars!('\u{1e86}'..='\u{1e86}'), SB::Upper), (chars!('\u{1e87}'..='\u{1e87}'), SB::Lower), (chars!('\u{1e88}'..='\u{1e88}'), SB::Upper), (chars!('\u{1e89}'..='\u{1e89}'), SB::Lower), (chars!('\u{1e8a}'..='\u{1e8a}'), SB::Upper), (chars!('\u{1e8b}'..='\u{1e8b}'), SB::Lower), (chars!('\u{1e8c}'..='\u{1e8c}'), SB::Upper), (chars!('\u{1e8d}'..='\u{1e8d}'), SB::Lower), (chars!('\u{1e8e}'..='\u{1e8e}'), SB::Upper), (chars!('\u{1e8f}'..='\u{1e8f}'), SB::Lower), (chars!('\u{1e90}'..='\u{1e90}'), SB::Upper), (chars!('\u{1e91}'..='\u{1e91}'), SB::Lower), (chars!('\u{1e92}'..='\u{1e92}'), SB::Upper), (chars!('\u{1e93}'..='\u{1e93}'), SB::Lower), (chars!('\u{1e94}'..='\u{1e94}'), SB::Upper), (chars!('\u{1e95}'..='\u{1e9d}'), SB::Lower), (chars!('\u{1e9e}'..='\u{1e9e}'), SB::Upper), (chars!('\u{1e9f}'..='\u{1e9f}'), SB::Lower), (chars!('\u{1ea0}'..='\u{1ea0}'), SB::Upper), (chars!('\u{1ea1}'..='\u{1ea1}'), SB::Lower), (chars!('\u{1ea2}'..='\u{1ea2}'), SB::Upper), (chars!('\u{1ea3}'..='\u{1ea3}'), SB::Lower), (chars!('\u{1ea4}'..='\u{1ea4}'), SB::Upper), (chars!('\u{1ea5}'..='\u{1ea5}'), SB::Lower), (chars!('\u{1ea6}'..='\u{1ea6}'), SB::Upper), (chars!('\u{1ea7}'..='\u{1ea7}'), SB::Lower), (chars!('\u{1ea8}'..='\u{1ea8}'), SB::Upper), (chars!('\u{1ea9}'..='\u{1ea9}'), SB::Lower), (chars!('\u{1eaa}'..='\u{1eaa}'), SB::Upper), (chars!('\u{1eab}'..='\u{1eab}'), SB::Lower), (chars!('\u{1eac}'..='\u{1eac}'), SB::Upper), (chars!('\u{1ead}'..='\u{1ead}'), SB::Lower), (chars!('\u{1eae}'..='\u{1eae}'), SB::Upper), (chars!('\u{1eaf}'..='\u{1eaf}'), SB::Lower), (chars!('\u{1eb0}'..='\u{1eb0}'), SB::Upper), (chars!('\u{1eb1}'..='\u{1eb1}'), SB::Lower), (chars!('\u{1eb2}'..='\u{1eb2}'), SB::Upper), (chars!('\u{1eb3}'..='\u{1eb3}'), SB::Lower), (chars!('\u{1eb4}'..='\u{1eb4}'), SB::Upper), (chars!('\u{1eb5}'..='\u{1eb5}'), SB::Lower), (chars!('\u{1eb6}'..='\u{1eb6}'), SB::Upper), (chars!('\u{1eb7}'..='\u{1eb7}'), SB::Lower), (chars!('\u{1eb8}'..='\u{1eb8}'), SB::Upper), (chars!('\u{1eb9}'..='\u{1eb9}'), SB::Lower), (chars!('\u{1eba}'..='\u{1eba}'), SB::Upper), (chars!('\u{1ebb}'..='\u{1ebb}'), SB::Lower), (chars!('\u{1ebc}'..='\u{1ebc}'), SB::Upper), (chars!('\u{1ebd}'..='\u{1ebd}'), SB::Lower), (chars!('\u{1ebe}'..='\u{1ebe}'), SB::Upper), (chars!('\u{1ebf}'..='\u{1ebf}'), SB::Lower), (chars!('\u{1ec0}'..='\u{1ec0}'), SB::Upper), (chars!('\u{1ec1}'..='\u{1ec1}'), SB::Lower), (chars!('\u{1ec2}'..='\u{1ec2}'), SB::Upper), (chars!('\u{1ec3}'..='\u{1ec3}'), SB::Lower), (chars!('\u{1ec4}'..='\u{1ec4}'), SB::Upper), (chars!('\u{1ec5}'..='\u{1ec5}'), SB::Lower), (chars!('\u{1ec6}'..='\u{1ec6}'), SB::Upper), (chars!('\u{1ec7}'..='\u{1ec7}'), SB::Lower), (chars!('\u{1ec8}'..='\u{1ec8}'), SB::Upper), (chars!('\u{1ec9}'..='\u{1ec9}'), SB::Lower), (chars!('\u{1eca}'..='\u{1eca}'), SB::Upper), (chars!('\u{1ecb}'..='\u{1ecb}'), SB::Lower), (chars!('\u{1ecc}'..='\u{1ecc}'), SB::Upper), (chars!('\u{1ecd}'..='\u{1ecd}'), SB::Lower), (chars!('\u{1ece}'..='\u{1ece}'), SB::Upper), (chars!('\u{1ecf}'..='\u{1ecf}'), SB::Lower), (chars!('\u{1ed0}'..='\u{1ed0}'), SB::Upper), (chars!('\u{1ed1}'..='\u{1ed1}'), SB::Lower), (chars!('\u{1ed2}'..='\u{1ed2}'), SB::Upper), (chars!('\u{1ed3}'..='\u{1ed3}'), SB::Lower), (chars!('\u{1ed4}'..='\u{1ed4}'), SB::Upper), (chars!('\u{1ed5}'..='\u{1ed5}'), SB::Lower), (chars!('\u{1ed6}'..='\u{1ed6}'), SB::Upper), (chars!('\u{1ed7}'..='\u{1ed7}'), SB::Lower), (chars!('\u{1ed8}'..='\u{1ed8}'), SB::Upper), (chars!('\u{1ed9}'..='\u{1ed9}'), SB::Lower), (chars!('\u{1eda}'..='\u{1eda}'), SB::Upper), (chars!('\u{1edb}'..='\u{1edb}'), SB::Lower), (chars!('\u{1edc}'..='\u{1edc}'), SB::Upper), (chars!('\u{1edd}'..='\u{1edd}'), SB::Lower), (chars!('\u{1ede}'..='\u{1ede}'), SB::Upper), (chars!('\u{1edf}'..='\u{1edf}'), SB::Lower), (chars!('\u{1ee0}'..='\u{1ee0}'), SB::Upper), (chars!('\u{1ee1}'..='\u{1ee1}'), SB::Lower), (chars!('\u{1ee2}'..='\u{1ee2}'), SB::Upper), (chars!('\u{1ee3}'..='\u{1ee3}'), SB::Lower), (chars!('\u{1ee4}'..='\u{1ee4}'), SB::Upper), (chars!('\u{1ee5}'..='\u{1ee5}'), SB::Lower), (chars!('\u{1ee6}'..='\u{1ee6}'), SB::Upper), (chars!('\u{1ee7}'..='\u{1ee7}'), SB::Lower), (chars!('\u{1ee8}'..='\u{1ee8}'), SB::Upper), (chars!('\u{1ee9}'..='\u{1ee9}'), SB::Lower), (chars!('\u{1eea}'..='\u{1eea}'), SB::Upper), (chars!('\u{1eeb}'..='\u{1eeb}'), SB::Lower), (chars!('\u{1eec}'..='\u{1eec}'), SB::Upper), (chars!('\u{1eed}'..='\u{1eed}'), SB::Lower), (chars!('\u{1eee}'..='\u{1eee}'), SB::Upper), (chars!('\u{1eef}'..='\u{1eef}'), SB::Lower), (chars!('\u{1ef0}'..='\u{1ef0}'), SB::Upper), (chars!('\u{1ef1}'..='\u{1ef1}'), SB::Lower), (chars!('\u{1ef2}'..='\u{1ef2}'), SB::Upper), (chars!('\u{1ef3}'..='\u{1ef3}'), SB::Lower), (chars!('\u{1ef4}'..='\u{1ef4}'), SB::Upper), (chars!('\u{1ef5}'..='\u{1ef5}'), SB::Lower), (chars!('\u{1ef6}'..='\u{1ef6}'), SB::Upper), (chars!('\u{1ef7}'..='\u{1ef7}'), SB::Lower), (chars!('\u{1ef8}'..='\u{1ef8}'), SB::Upper), (chars!('\u{1ef9}'..='\u{1ef9}'), SB::Lower), (chars!('\u{1efa}'..='\u{1efa}'), SB::Upper), (chars!('\u{1efb}'..='\u{1efb}'), SB::Lower), (chars!('\u{1efc}'..='\u{1efc}'), SB::Upper), (chars!('\u{1efd}'..='\u{1efd}'), SB::Lower), (chars!('\u{1efe}'..='\u{1efe}'), SB::Upper), (chars!('\u{1eff}'..='\u{1f07}'), SB::Lower), (chars!('\u{1f08}'..='\u{1f0f}'), SB::Upper), (chars!('\u{1f10}'..='\u{1f15}'), SB::Lower), (chars!('\u{1f18}'..='\u{1f1d}'), SB::Upper), (chars!('\u{1f20}'..='\u{1f27}'), SB::Lower), (chars!('\u{1f28}'..='\u{1f2f}'), SB::Upper), (chars!('\u{1f30}'..='\u{1f37}'), SB::Lower), (chars!('\u{1f38}'..='\u{1f3f}'), SB::Upper), (chars!('\u{1f40}'..='\u{1f45}'), SB::Lower), (chars!('\u{1f48}'..='\u{1f4d}'), SB::Upper), (chars!('\u{1f50}'..='\u{1f57}'), SB::Lower), (chars!('\u{1f59}'..='\u{1f59}'), SB::Upper), (chars!('\u{1f5b}'..='\u{1f5b}'), SB::Upper), (chars!('\u{1f5d}'..='\u{1f5d}'), SB::Upper), (chars!('\u{1f5f}'..='\u{1f5f}'), SB::Upper), (chars!('\u{1f60}'..='\u{1f67}'), SB::Lower), (chars!('\u{1f68}'..='\u{1f6f}'), SB::Upper), (chars!('\u{1f70}'..='\u{1f7d}'), SB::Lower), (chars!('\u{1f80}'..='\u{1f87}'), SB::Lower), (chars!('\u{1f88}'..='\u{1f8f}'), SB::Upper), (chars!('\u{1f90}'..='\u{1f97}'), SB::Lower), (chars!('\u{1f98}'..='\u{1f9f}'), SB::Upper), (chars!('\u{1fa0}'..='\u{1fa7}'), SB::Lower), (chars!('\u{1fa8}'..='\u{1faf}'), SB::Upper), (chars!('\u{1fb0}'..='\u{1fb4}'), SB::Lower), (chars!('\u{1fb6}'..='\u{1fb7}'), SB::Lower), (chars!('\u{1fb8}'..='\u{1fbc}'), SB::Upper), (chars!('\u{1fbe}'..='\u{1fbe}'), SB::Lower), (chars!('\u{1fc2}'..='\u{1fc4}'), SB::Lower), (chars!('\u{1fc6}'..='\u{1fc7}'), SB::Lower), (chars!('\u{1fc8}'..='\u{1fcc}'), SB::Upper), (chars!('\u{1fd0}'..='\u{1fd3}'), SB::Lower), (chars!('\u{1fd6}'..='\u{1fd7}'), SB::Lower), (chars!('\u{1fd8}'..='\u{1fdb}'), SB::Upper), (chars!('\u{1fe0}'..='\u{1fe7}'), SB::Lower), (chars!('\u{1fe8}'..='\u{1fec}'), SB::Upper), (chars!('\u{1ff2}'..='\u{1ff4}'), SB::Lower), (chars!('\u{1ff6}'..='\u{1ff7}'), SB::Lower), (chars!('\u{1ff8}'..='\u{1ffc}'), SB::Upper), (chars!('\u{2000}'..='\u{200a}'), SB::Sp), (chars!('\u{200b}'..='\u{200b}'), SB::Format), (chars!('\u{200c}'..='\u{200d}'), SB::Extend), (chars!('\u{200e}'..='\u{200f}'), SB::Format), (chars!('\u{2013}'..='\u{2014}'), SB::SContinue), (chars!('\u{2018}'..='\u{201f}'), SB::Close), (chars!('\u{2024}'..='\u{2024}'), SB::ATerm), (chars!('\u{2028}'..='\u{2029}'), SB::Sep), (chars!('\u{202a}'..='\u{202e}'), SB::Format), (chars!('\u{202f}'..='\u{202f}'), SB::Sp), (chars!('\u{2039}'..='\u{203a}'), SB::Close), (chars!('\u{203c}'..='\u{203d}'), SB::STerm), (chars!('\u{2045}'..='\u{2046}'), SB::Close), (chars!('\u{2047}'..='\u{2049}'), SB::STerm), (chars!('\u{205f}'..='\u{205f}'), SB::Sp), (chars!('\u{2060}'..='\u{2064}'), SB::Format), (chars!('\u{2066}'..='\u{206f}'), SB::Format), (chars!('\u{2071}'..='\u{2071}'), SB::Lower), (chars!('\u{207d}'..='\u{207e}'), SB::Close), (chars!('\u{207f}'..='\u{207f}'), SB::Lower), (chars!('\u{208d}'..='\u{208e}'), SB::Close), (chars!('\u{2090}'..='\u{209c}'), SB::Lower), (chars!('\u{20d0}'..='\u{20f0}'), SB::Extend), (chars!('\u{2102}'..='\u{2102}'), SB::Upper), (chars!('\u{2107}'..='\u{2107}'), SB::Upper), (chars!('\u{210a}'..='\u{210a}'), SB::Lower), (chars!('\u{210b}'..='\u{210d}'), SB::Upper), (chars!('\u{210e}'..='\u{210f}'), SB::Lower), (chars!('\u{2110}'..='\u{2112}'), SB::Upper), (chars!('\u{2113}'..='\u{2113}'), SB::Lower), (chars!('\u{2115}'..='\u{2115}'), SB::Upper), (chars!('\u{2119}'..='\u{211d}'), SB::Upper), (chars!('\u{2124}'..='\u{2124}'), SB::Upper), (chars!('\u{2126}'..='\u{2126}'), SB::Upper), (chars!('\u{2128}'..='\u{2128}'), SB::Upper), (chars!('\u{212a}'..='\u{212d}'), SB::Upper), (chars!('\u{212f}'..='\u{212f}'), SB::Lower), (chars!('\u{2130}'..='\u{2133}'), SB::Upper), (chars!('\u{2134}'..='\u{2134}'), SB::Lower), (chars!('\u{2135}'..='\u{2138}'), SB::OLetter), (chars!('\u{2139}'..='\u{2139}'), SB::Lower), (chars!('\u{213c}'..='\u{213d}'), SB::Lower), (chars!('\u{213e}'..='\u{213f}'), SB::Upper), (chars!('\u{2145}'..='\u{2145}'), SB::Upper), (chars!('\u{2146}'..='\u{2149}'), SB::Lower), (chars!('\u{214e}'..='\u{214e}'), SB::Lower), (chars!('\u{2160}'..='\u{216f}'), SB::Upper), (chars!('\u{2170}'..='\u{217f}'), SB::Lower), (chars!('\u{2180}'..='\u{2182}'), SB::OLetter), (chars!('\u{2183}'..='\u{2183}'), SB::Upper), (chars!('\u{2184}'..='\u{2184}'), SB::Lower), (chars!('\u{2185}'..='\u{2188}'), SB::OLetter), (chars!('\u{2308}'..='\u{230b}'), SB::Close), (chars!('\u{2329}'..='\u{232a}'), SB::Close), (chars!('\u{24b6}'..='\u{24cf}'), SB::Upper), (chars!('\u{24d0}'..='\u{24e9}'), SB::Lower), (chars!('\u{275b}'..='\u{2760}'), SB::Close), (chars!('\u{2768}'..='\u{2775}'), SB::Close), (chars!('\u{27c5}'..='\u{27c6}'), SB::Close), (chars!('\u{27e6}'..='\u{27ef}'), SB::Close), (chars!('\u{2983}'..='\u{2998}'), SB::Close), (chars!('\u{29d8}'..='\u{29db}'), SB::Close), (chars!('\u{29fc}'..='\u{29fd}'), SB::Close), (chars!('\u{2c00}'..='\u{2c2e}'), SB::Upper), (chars!('\u{2c30}'..='\u{2c5e}'), SB::Lower), (chars!('\u{2c60}'..='\u{2c60}'), SB::Upper), (chars!('\u{2c61}'..='\u{2c61}'), SB::Lower), (chars!('\u{2c62}'..='\u{2c64}'), SB::Upper), (chars!('\u{2c65}'..='\u{2c66}'), SB::Lower), (chars!('\u{2c67}'..='\u{2c67}'), SB::Upper), (chars!('\u{2c68}'..='\u{2c68}'), SB::Lower), (chars!('\u{2c69}'..='\u{2c69}'), SB::Upper), (chars!('\u{2c6a}'..='\u{2c6a}'), SB::Lower), (chars!('\u{2c6b}'..='\u{2c6b}'), SB::Upper), (chars!('\u{2c6c}'..='\u{2c6c}'), SB::Lower), (chars!('\u{2c6d}'..='\u{2c70}'), SB::Upper), (chars!('\u{2c71}'..='\u{2c71}'), SB::Lower), (chars!('\u{2c72}'..='\u{2c72}'), SB::Upper), (chars!('\u{2c73}'..='\u{2c74}'), SB::Lower), (chars!('\u{2c75}'..='\u{2c75}'), SB::Upper), (chars!('\u{2c76}'..='\u{2c7d}'), SB::Lower), (chars!('\u{2c7e}'..='\u{2c80}'), SB::Upper), (chars!('\u{2c81}'..='\u{2c81}'), SB::Lower), (chars!('\u{2c82}'..='\u{2c82}'), SB::Upper), (chars!('\u{2c83}'..='\u{2c83}'), SB::Lower), (chars!('\u{2c84}'..='\u{2c84}'), SB::Upper), (chars!('\u{2c85}'..='\u{2c85}'), SB::Lower), (chars!('\u{2c86}'..='\u{2c86}'), SB::Upper), (chars!('\u{2c87}'..='\u{2c87}'), SB::Lower), (chars!('\u{2c88}'..='\u{2c88}'), SB::Upper), (chars!('\u{2c89}'..='\u{2c89}'), SB::Lower), (chars!('\u{2c8a}'..='\u{2c8a}'), SB::Upper), (chars!('\u{2c8b}'..='\u{2c8b}'), SB::Lower), (chars!('\u{2c8c}'..='\u{2c8c}'), SB::Upper), (chars!('\u{2c8d}'..='\u{2c8d}'), SB::Lower), (chars!('\u{2c8e}'..='\u{2c8e}'), SB::Upper), (chars!('\u{2c8f}'..='\u{2c8f}'), SB::Lower), (chars!('\u{2c90}'..='\u{2c90}'), SB::Upper), (chars!('\u{2c91}'..='\u{2c91}'), SB::Lower), (chars!('\u{2c92}'..='\u{2c92}'), SB::Upper), (chars!('\u{2c93}'..='\u{2c93}'), SB::Lower), (chars!('\u{2c94}'..='\u{2c94}'), SB::Upper), (chars!('\u{2c95}'..='\u{2c95}'), SB::Lower), (chars!('\u{2c96}'..='\u{2c96}'), SB::Upper), (chars!('\u{2c97}'..='\u{2c97}'), SB::Lower), (chars!('\u{2c98}'..='\u{2c98}'), SB::Upper), (chars!('\u{2c99}'..='\u{2c99}'), SB::Lower), (chars!('\u{2c9a}'..='\u{2c9a}'), SB::Upper), (chars!('\u{2c9b}'..='\u{2c9b}'), SB::Lower), (chars!('\u{2c9c}'..='\u{2c9c}'), SB::Upper), (chars!('\u{2c9d}'..='\u{2c9d}'), SB::Lower), (chars!('\u{2c9e}'..='\u{2c9e}'), SB::Upper), (chars!('\u{2c9f}'..='\u{2c9f}'), SB::Lower), (chars!('\u{2ca0}'..='\u{2ca0}'), SB::Upper), (chars!('\u{2ca1}'..='\u{2ca1}'), SB::Lower), (chars!('\u{2ca2}'..='\u{2ca2}'), SB::Upper), (chars!('\u{2ca3}'..='\u{2ca3}'), SB::Lower), (chars!('\u{2ca4}'..='\u{2ca4}'), SB::Upper), (chars!('\u{2ca5}'..='\u{2ca5}'), SB::Lower), (chars!('\u{2ca6}'..='\u{2ca6}'), SB::Upper), (chars!('\u{2ca7}'..='\u{2ca7}'), SB::Lower), (chars!('\u{2ca8}'..='\u{2ca8}'), SB::Upper), (chars!('\u{2ca9}'..='\u{2ca9}'), SB::Lower), (chars!('\u{2caa}'..='\u{2caa}'), SB::Upper), (chars!('\u{2cab}'..='\u{2cab}'), SB::Lower), (chars!('\u{2cac}'..='\u{2cac}'), SB::Upper), (chars!('\u{2cad}'..='\u{2cad}'), SB::Lower), (chars!('\u{2cae}'..='\u{2cae}'), SB::Upper), (chars!('\u{2caf}'..='\u{2caf}'), SB::Lower), (chars!('\u{2cb0}'..='\u{2cb0}'), SB::Upper), (chars!('\u{2cb1}'..='\u{2cb1}'), SB::Lower), (chars!('\u{2cb2}'..='\u{2cb2}'), SB::Upper), (chars!('\u{2cb3}'..='\u{2cb3}'), SB::Lower), (chars!('\u{2cb4}'..='\u{2cb4}'), SB::Upper), (chars!('\u{2cb5}'..='\u{2cb5}'), SB::Lower), (chars!('\u{2cb6}'..='\u{2cb6}'), SB::Upper), (chars!('\u{2cb7}'..='\u{2cb7}'), SB::Lower), (chars!('\u{2cb8}'..='\u{2cb8}'), SB::Upper), (chars!('\u{2cb9}'..='\u{2cb9}'), SB::Lower), (chars!('\u{2cba}'..='\u{2cba}'), SB::Upper), (chars!('\u{2cbb}'..='\u{2cbb}'), SB::Lower), (chars!('\u{2cbc}'..='\u{2cbc}'), SB::Upper), (chars!('\u{2cbd}'..='\u{2cbd}'), SB::Lower), (chars!('\u{2cbe}'..='\u{2cbe}'), SB::Upper), (chars!('\u{2cbf}'..='\u{2cbf}'), SB::Lower), (chars!('\u{2cc0}'..='\u{2cc0}'), SB::Upper), (chars!('\u{2cc1}'..='\u{2cc1}'), SB::Lower), (chars!('\u{2cc2}'..='\u{2cc2}'), SB::Upper), (chars!('\u{2cc3}'..='\u{2cc3}'), SB::Lower), (chars!('\u{2cc4}'..='\u{2cc4}'), SB::Upper), (chars!('\u{2cc5}'..='\u{2cc5}'), SB::Lower), (chars!('\u{2cc6}'..='\u{2cc6}'), SB::Upper), (chars!('\u{2cc7}'..='\u{2cc7}'), SB::Lower), (chars!('\u{2cc8}'..='\u{2cc8}'), SB::Upper), (chars!('\u{2cc9}'..='\u{2cc9}'), SB::Lower), (chars!('\u{2cca}'..='\u{2cca}'), SB::Upper), (chars!('\u{2ccb}'..='\u{2ccb}'), SB::Lower), (chars!('\u{2ccc}'..='\u{2ccc}'), SB::Upper), (chars!('\u{2ccd}'..='\u{2ccd}'), SB::Lower), (chars!('\u{2cce}'..='\u{2cce}'), SB::Upper), (chars!('\u{2ccf}'..='\u{2ccf}'), SB::Lower), (chars!('\u{2cd0}'..='\u{2cd0}'), SB::Upper), (chars!('\u{2cd1}'..='\u{2cd1}'), SB::Lower), (chars!('\u{2cd2}'..='\u{2cd2}'), SB::Upper), (chars!('\u{2cd3}'..='\u{2cd3}'), SB::Lower), (chars!('\u{2cd4}'..='\u{2cd4}'), SB::Upper), (chars!('\u{2cd5}'..='\u{2cd5}'), SB::Lower), (chars!('\u{2cd6}'..='\u{2cd6}'), SB::Upper), (chars!('\u{2cd7}'..='\u{2cd7}'), SB::Lower), (chars!('\u{2cd8}'..='\u{2cd8}'), SB::Upper), (chars!('\u{2cd9}'..='\u{2cd9}'), SB::Lower), (chars!('\u{2cda}'..='\u{2cda}'), SB::Upper), (chars!('\u{2cdb}'..='\u{2cdb}'), SB::Lower), (chars!('\u{2cdc}'..='\u{2cdc}'), SB::Upper), (chars!('\u{2cdd}'..='\u{2cdd}'), SB::Lower), (chars!('\u{2cde}'..='\u{2cde}'), SB::Upper), (chars!('\u{2cdf}'..='\u{2cdf}'), SB::Lower), (chars!('\u{2ce0}'..='\u{2ce0}'), SB::Upper), (chars!('\u{2ce1}'..='\u{2ce1}'), SB::Lower), (chars!('\u{2ce2}'..='\u{2ce2}'), SB::Upper), (chars!('\u{2ce3}'..='\u{2ce4}'), SB::Lower), (chars!('\u{2ceb}'..='\u{2ceb}'), SB::Upper), (chars!('\u{2cec}'..='\u{2cec}'), SB::Lower), (chars!('\u{2ced}'..='\u{2ced}'), SB::Upper), (chars!('\u{2cee}'..='\u{2cee}'), SB::Lower), (chars!('\u{2cef}'..='\u{2cf1}'), SB::Extend), (chars!('\u{2cf2}'..='\u{2cf2}'), SB::Upper), (chars!('\u{2cf3}'..='\u{2cf3}'), SB::Lower), (chars!('\u{2d00}'..='\u{2d25}'), SB::Lower), (chars!('\u{2d27}'..='\u{2d27}'), SB::Lower), (chars!('\u{2d2d}'..='\u{2d2d}'), SB::Lower), (chars!('\u{2d30}'..='\u{2d67}'), SB::OLetter), (chars!('\u{2d6f}'..='\u{2d6f}'), SB::OLetter), (chars!('\u{2d7f}'..='\u{2d7f}'), SB::Extend), (chars!('\u{2d80}'..='\u{2d96}'), SB::OLetter), (chars!('\u{2da0}'..='\u{2da6}'), SB::OLetter), (chars!('\u{2da8}'..='\u{2dae}'), SB::OLetter), (chars!('\u{2db0}'..='\u{2db6}'), SB::OLetter), (chars!('\u{2db8}'..='\u{2dbe}'), SB::OLetter), (chars!('\u{2dc0}'..='\u{2dc6}'), SB::OLetter), (chars!('\u{2dc8}'..='\u{2dce}'), SB::OLetter), (chars!('\u{2dd0}'..='\u{2dd6}'), SB::OLetter), (chars!('\u{2dd8}'..='\u{2dde}'), SB::OLetter), (chars!('\u{2de0}'..='\u{2dff}'), SB::Extend), (chars!('\u{2e00}'..='\u{2e0d}'), SB::Close), (chars!('\u{2e1c}'..='\u{2e1d}'), SB::Close), (chars!('\u{2e20}'..='\u{2e29}'), SB::Close), (chars!('\u{2e2e}'..='\u{2e2e}'), SB::STerm), (chars!('\u{2e2f}'..='\u{2e2f}'), SB::OLetter), (chars!('\u{2e3c}'..='\u{2e3c}'), SB::STerm), (chars!('\u{2e42}'..='\u{2e42}'), SB::Close), (chars!('\u{3000}'..='\u{3000}'), SB::Sp), (chars!('\u{3001}'..='\u{3001}'), SB::SContinue), (chars!('\u{3002}'..='\u{3002}'), SB::STerm), (chars!('\u{3005}'..='\u{3007}'), SB::OLetter), (chars!('\u{3008}'..='\u{3011}'), SB::Close), (chars!('\u{3014}'..='\u{301b}'), SB::Close), (chars!('\u{301d}'..='\u{301f}'), SB::Close), (chars!('\u{3021}'..='\u{3029}'), SB::OLetter), (chars!('\u{302a}'..='\u{302f}'), SB::Extend), (chars!('\u{3031}'..='\u{3035}'), SB::OLetter), (chars!('\u{3038}'..='\u{303c}'), SB::OLetter), (chars!('\u{3041}'..='\u{3096}'), SB::OLetter), (chars!('\u{3099}'..='\u{309a}'), SB::Extend), (chars!('\u{309d}'..='\u{309f}'), SB::OLetter), (chars!('\u{30a1}'..='\u{30fa}'), SB::OLetter), (chars!('\u{30fc}'..='\u{30ff}'), SB::OLetter), (chars!('\u{3105}'..='\u{312e}'), SB::OLetter), (chars!('\u{3131}'..='\u{318e}'), SB::OLetter), (chars!('\u{31a0}'..='\u{31ba}'), SB::OLetter), (chars!('\u{31f0}'..='\u{31ff}'), SB::OLetter), (chars!('\u{3400}'..='\u{4db5}'), SB::OLetter), (chars!('\u{4e00}'..='\u{9fea}'), SB::OLetter), (chars!('\u{a000}'..='\u{a48c}'), SB::OLetter), (chars!('\u{a4d0}'..='\u{a4fd}'), SB::OLetter), (chars!('\u{a4ff}'..='\u{a4ff}'), SB::STerm), (chars!('\u{a500}'..='\u{a60c}'), SB::OLetter), (chars!('\u{a60e}'..='\u{a60f}'), SB::STerm), (chars!('\u{a610}'..='\u{a61f}'), SB::OLetter), (chars!('\u{a620}'..='\u{a629}'), SB::Numeric), (chars!('\u{a62a}'..='\u{a62b}'), SB::OLetter), (chars!('\u{a640}'..='\u{a640}'), SB::Upper), (chars!('\u{a641}'..='\u{a641}'), SB::Lower), (chars!('\u{a642}'..='\u{a642}'), SB::Upper), (chars!('\u{a643}'..='\u{a643}'), SB::Lower), (chars!('\u{a644}'..='\u{a644}'), SB::Upper), (chars!('\u{a645}'..='\u{a645}'), SB::Lower), (chars!('\u{a646}'..='\u{a646}'), SB::Upper), (chars!('\u{a647}'..='\u{a647}'), SB::Lower), (chars!('\u{a648}'..='\u{a648}'), SB::Upper), (chars!('\u{a649}'..='\u{a649}'), SB::Lower), (chars!('\u{a64a}'..='\u{a64a}'), SB::Upper), (chars!('\u{a64b}'..='\u{a64b}'), SB::Lower), (chars!('\u{a64c}'..='\u{a64c}'), SB::Upper), (chars!('\u{a64d}'..='\u{a64d}'), SB::Lower), (chars!('\u{a64e}'..='\u{a64e}'), SB::Upper), (chars!('\u{a64f}'..='\u{a64f}'), SB::Lower), (chars!('\u{a650}'..='\u{a650}'), SB::Upper), (chars!('\u{a651}'..='\u{a651}'), SB::Lower), (chars!('\u{a652}'..='\u{a652}'), SB::Upper), (chars!('\u{a653}'..='\u{a653}'), SB::Lower), (chars!('\u{a654}'..='\u{a654}'), SB::Upper), (chars!('\u{a655}'..='\u{a655}'), SB::Lower), (chars!('\u{a656}'..='\u{a656}'), SB::Upper), (chars!('\u{a657}'..='\u{a657}'), SB::Lower), (chars!('\u{a658}'..='\u{a658}'), SB::Upper), (chars!('\u{a659}'..='\u{a659}'), SB::Lower), (chars!('\u{a65a}'..='\u{a65a}'), SB::Upper), (chars!('\u{a65b}'..='\u{a65b}'), SB::Lower), (chars!('\u{a65c}'..='\u{a65c}'), SB::Upper), (chars!('\u{a65d}'..='\u{a65d}'), SB::Lower), (chars!('\u{a65e}'..='\u{a65e}'), SB::Upper), (chars!('\u{a65f}'..='\u{a65f}'), SB::Lower), (chars!('\u{a660}'..='\u{a660}'), SB::Upper), (chars!('\u{a661}'..='\u{a661}'), SB::Lower), (chars!('\u{a662}'..='\u{a662}'), SB::Upper), (chars!('\u{a663}'..='\u{a663}'), SB::Lower), (chars!('\u{a664}'..='\u{a664}'), SB::Upper), (chars!('\u{a665}'..='\u{a665}'), SB::Lower), (chars!('\u{a666}'..='\u{a666}'), SB::Upper), (chars!('\u{a667}'..='\u{a667}'), SB::Lower), (chars!('\u{a668}'..='\u{a668}'), SB::Upper), (chars!('\u{a669}'..='\u{a669}'), SB::Lower), (chars!('\u{a66a}'..='\u{a66a}'), SB::Upper), (chars!('\u{a66b}'..='\u{a66b}'), SB::Lower), (chars!('\u{a66c}'..='\u{a66c}'), SB::Upper), (chars!('\u{a66d}'..='\u{a66d}'), SB::Lower), (chars!('\u{a66e}'..='\u{a66e}'), SB::OLetter), (chars!('\u{a66f}'..='\u{a672}'), SB::Extend), (chars!('\u{a674}'..='\u{a67d}'), SB::Extend), (chars!('\u{a67f}'..='\u{a67f}'), SB::OLetter), (chars!('\u{a680}'..='\u{a680}'), SB::Upper), (chars!('\u{a681}'..='\u{a681}'), SB::Lower), (chars!('\u{a682}'..='\u{a682}'), SB::Upper), (chars!('\u{a683}'..='\u{a683}'), SB::Lower), (chars!('\u{a684}'..='\u{a684}'), SB::Upper), (chars!('\u{a685}'..='\u{a685}'), SB::Lower), (chars!('\u{a686}'..='\u{a686}'), SB::Upper), (chars!('\u{a687}'..='\u{a687}'), SB::Lower), (chars!('\u{a688}'..='\u{a688}'), SB::Upper), (chars!('\u{a689}'..='\u{a689}'), SB::Lower), (chars!('\u{a68a}'..='\u{a68a}'), SB::Upper), (chars!('\u{a68b}'..='\u{a68b}'), SB::Lower), (chars!('\u{a68c}'..='\u{a68c}'), SB::Upper), (chars!('\u{a68d}'..='\u{a68d}'), SB::Lower), (chars!('\u{a68e}'..='\u{a68e}'), SB::Upper), (chars!('\u{a68f}'..='\u{a68f}'), SB::Lower), (chars!('\u{a690}'..='\u{a690}'), SB::Upper), (chars!('\u{a691}'..='\u{a691}'), SB::Lower), (chars!('\u{a692}'..='\u{a692}'), SB::Upper), (chars!('\u{a693}'..='\u{a693}'), SB::Lower), (chars!('\u{a694}'..='\u{a694}'), SB::Upper), (chars!('\u{a695}'..='\u{a695}'), SB::Lower), (chars!('\u{a696}'..='\u{a696}'), SB::Upper), (chars!('\u{a697}'..='\u{a697}'), SB::Lower), (chars!('\u{a698}'..='\u{a698}'), SB::Upper), (chars!('\u{a699}'..='\u{a699}'), SB::Lower), (chars!('\u{a69a}'..='\u{a69a}'), SB::Upper), (chars!('\u{a69b}'..='\u{a69d}'), SB::Lower), (chars!('\u{a69e}'..='\u{a69f}'), SB::Extend), (chars!('\u{a6a0}'..='\u{a6ef}'), SB::OLetter), (chars!('\u{a6f0}'..='\u{a6f1}'), SB::Extend), (chars!('\u{a6f3}'..='\u{a6f3}'), SB::STerm), (chars!('\u{a6f7}'..='\u{a6f7}'), SB::STerm), (chars!('\u{a717}'..='\u{a71f}'), SB::OLetter), (chars!('\u{a722}'..='\u{a722}'), SB::Upper), (chars!('\u{a723}'..='\u{a723}'), SB::Lower), (chars!('\u{a724}'..='\u{a724}'), SB::Upper), (chars!('\u{a725}'..='\u{a725}'), SB::Lower), (chars!('\u{a726}'..='\u{a726}'), SB::Upper), (chars!('\u{a727}'..='\u{a727}'), SB::Lower), (chars!('\u{a728}'..='\u{a728}'), SB::Upper), (chars!('\u{a729}'..='\u{a729}'), SB::Lower), (chars!('\u{a72a}'..='\u{a72a}'), SB::Upper), (chars!('\u{a72b}'..='\u{a72b}'), SB::Lower), (chars!('\u{a72c}'..='\u{a72c}'), SB::Upper), (chars!('\u{a72d}'..='\u{a72d}'), SB::Lower), (chars!('\u{a72e}'..='\u{a72e}'), SB::Upper), (chars!('\u{a72f}'..='\u{a731}'), SB::Lower), (chars!('\u{a732}'..='\u{a732}'), SB::Upper), (chars!('\u{a733}'..='\u{a733}'), SB::Lower), (chars!('\u{a734}'..='\u{a734}'), SB::Upper), (chars!('\u{a735}'..='\u{a735}'), SB::Lower), (chars!('\u{a736}'..='\u{a736}'), SB::Upper), (chars!('\u{a737}'..='\u{a737}'), SB::Lower), (chars!('\u{a738}'..='\u{a738}'), SB::Upper), (chars!('\u{a739}'..='\u{a739}'), SB::Lower), (chars!('\u{a73a}'..='\u{a73a}'), SB::Upper), (chars!('\u{a73b}'..='\u{a73b}'), SB::Lower), (chars!('\u{a73c}'..='\u{a73c}'), SB::Upper), (chars!('\u{a73d}'..='\u{a73d}'), SB::Lower), (chars!('\u{a73e}'..='\u{a73e}'), SB::Upper), (chars!('\u{a73f}'..='\u{a73f}'), SB::Lower), (chars!('\u{a740}'..='\u{a740}'), SB::Upper), (chars!('\u{a741}'..='\u{a741}'), SB::Lower), (chars!('\u{a742}'..='\u{a742}'), SB::Upper), (chars!('\u{a743}'..='\u{a743}'), SB::Lower), (chars!('\u{a744}'..='\u{a744}'), SB::Upper), (chars!('\u{a745}'..='\u{a745}'), SB::Lower), (chars!('\u{a746}'..='\u{a746}'), SB::Upper), (chars!('\u{a747}'..='\u{a747}'), SB::Lower), (chars!('\u{a748}'..='\u{a748}'), SB::Upper), (chars!('\u{a749}'..='\u{a749}'), SB::Lower), (chars!('\u{a74a}'..='\u{a74a}'), SB::Upper), (chars!('\u{a74b}'..='\u{a74b}'), SB::Lower), (chars!('\u{a74c}'..='\u{a74c}'), SB::Upper), (chars!('\u{a74d}'..='\u{a74d}'), SB::Lower), (chars!('\u{a74e}'..='\u{a74e}'), SB::Upper), (chars!('\u{a74f}'..='\u{a74f}'), SB::Lower), (chars!('\u{a750}'..='\u{a750}'), SB::Upper), (chars!('\u{a751}'..='\u{a751}'), SB::Lower), (chars!('\u{a752}'..='\u{a752}'), SB::Upper), (chars!('\u{a753}'..='\u{a753}'), SB::Lower), (chars!('\u{a754}'..='\u{a754}'), SB::Upper), (chars!('\u{a755}'..='\u{a755}'), SB::Lower), (chars!('\u{a756}'..='\u{a756}'), SB::Upper), (chars!('\u{a757}'..='\u{a757}'), SB::Lower), (chars!('\u{a758}'..='\u{a758}'), SB::Upper), (chars!('\u{a759}'..='\u{a759}'), SB::Lower), (chars!('\u{a75a}'..='\u{a75a}'), SB::Upper), (chars!('\u{a75b}'..='\u{a75b}'), SB::Lower), (chars!('\u{a75c}'..='\u{a75c}'), SB::Upper), (chars!('\u{a75d}'..='\u{a75d}'), SB::Lower), (chars!('\u{a75e}'..='\u{a75e}'), SB::Upper), (chars!('\u{a75f}'..='\u{a75f}'), SB::Lower), (chars!('\u{a760}'..='\u{a760}'), SB::Upper), (chars!('\u{a761}'..='\u{a761}'), SB::Lower), (chars!('\u{a762}'..='\u{a762}'), SB::Upper), (chars!('\u{a763}'..='\u{a763}'), SB::Lower), (chars!('\u{a764}'..='\u{a764}'), SB::Upper), (chars!('\u{a765}'..='\u{a765}'), SB::Lower), (chars!('\u{a766}'..='\u{a766}'), SB::Upper), (chars!('\u{a767}'..='\u{a767}'), SB::Lower), (chars!('\u{a768}'..='\u{a768}'), SB::Upper), (chars!('\u{a769}'..='\u{a769}'), SB::Lower), (chars!('\u{a76a}'..='\u{a76a}'), SB::Upper), (chars!('\u{a76b}'..='\u{a76b}'), SB::Lower), (chars!('\u{a76c}'..='\u{a76c}'), SB::Upper), (chars!('\u{a76d}'..='\u{a76d}'), SB::Lower), (chars!('\u{a76e}'..='\u{a76e}'), SB::Upper), (chars!('\u{a76f}'..='\u{a778}'), SB::Lower), (chars!('\u{a779}'..='\u{a779}'), SB::Upper), (chars!('\u{a77a}'..='\u{a77a}'), SB::Lower), (chars!('\u{a77b}'..='\u{a77b}'), SB::Upper), (chars!('\u{a77c}'..='\u{a77c}'), SB::Lower), (chars!('\u{a77d}'..='\u{a77e}'), SB::Upper), (chars!('\u{a77f}'..='\u{a77f}'), SB::Lower), (chars!('\u{a780}'..='\u{a780}'), SB::Upper), (chars!('\u{a781}'..='\u{a781}'), SB::Lower), (chars!('\u{a782}'..='\u{a782}'), SB::Upper), (chars!('\u{a783}'..='\u{a783}'), SB::Lower), (chars!('\u{a784}'..='\u{a784}'), SB::Upper), (chars!('\u{a785}'..='\u{a785}'), SB::Lower), (chars!('\u{a786}'..='\u{a786}'), SB::Upper), (chars!('\u{a787}'..='\u{a787}'), SB::Lower), (chars!('\u{a788}'..='\u{a788}'), SB::OLetter), (chars!('\u{a78b}'..='\u{a78b}'), SB::Upper), (chars!('\u{a78c}'..='\u{a78c}'), SB::Lower), (chars!('\u{a78d}'..='\u{a78d}'), SB::Upper), (chars!('\u{a78e}'..='\u{a78e}'), SB::Lower), (chars!('\u{a78f}'..='\u{a78f}'), SB::OLetter), (chars!('\u{a790}'..='\u{a790}'), SB::Upper), (chars!('\u{a791}'..='\u{a791}'), SB::Lower), (chars!('\u{a792}'..='\u{a792}'), SB::Upper), (chars!('\u{a793}'..='\u{a795}'), SB::Lower), (chars!('\u{a796}'..='\u{a796}'), SB::Upper), (chars!('\u{a797}'..='\u{a797}'), SB::Lower), (chars!('\u{a798}'..='\u{a798}'), SB::Upper), (chars!('\u{a799}'..='\u{a799}'), SB::Lower), (chars!('\u{a79a}'..='\u{a79a}'), SB::Upper), (chars!('\u{a79b}'..='\u{a79b}'), SB::Lower), (chars!('\u{a79c}'..='\u{a79c}'), SB::Upper), (chars!('\u{a79d}'..='\u{a79d}'), SB::Lower), (chars!('\u{a79e}'..='\u{a79e}'), SB::Upper), (chars!('\u{a79f}'..='\u{a79f}'), SB::Lower), (chars!('\u{a7a0}'..='\u{a7a0}'), SB::Upper), (chars!('\u{a7a1}'..='\u{a7a1}'), SB::Lower), (chars!('\u{a7a2}'..='\u{a7a2}'), SB::Upper), (chars!('\u{a7a3}'..='\u{a7a3}'), SB::Lower), (chars!('\u{a7a4}'..='\u{a7a4}'), SB::Upper), (chars!('\u{a7a5}'..='\u{a7a5}'), SB::Lower), (chars!('\u{a7a6}'..='\u{a7a6}'), SB::Upper), (chars!('\u{a7a7}'..='\u{a7a7}'), SB::Lower), (chars!('\u{a7a8}'..='\u{a7a8}'), SB::Upper), (chars!('\u{a7a9}'..='\u{a7a9}'), SB::Lower), (chars!('\u{a7aa}'..='\u{a7ae}'), SB::Upper), (chars!('\u{a7b0}'..='\u{a7b4}'), SB::Upper), (chars!('\u{a7b5}'..='\u{a7b5}'), SB::Lower), (chars!('\u{a7b6}'..='\u{a7b6}'), SB::Upper), (chars!('\u{a7b7}'..='\u{a7b7}'), SB::Lower), (chars!('\u{a7f7}'..='\u{a7f7}'), SB::OLetter), (chars!('\u{a7f8}'..='\u{a7fa}'), SB::Lower), (chars!('\u{a7fb}'..='\u{a801}'), SB::OLetter), (chars!('\u{a802}'..='\u{a802}'), SB::Extend), (chars!('\u{a803}'..='\u{a805}'), SB::OLetter), (chars!('\u{a806}'..='\u{a806}'), SB::Extend), (chars!('\u{a807}'..='\u{a80a}'), SB::OLetter), (chars!('\u{a80b}'..='\u{a80b}'), SB::Extend), (chars!('\u{a80c}'..='\u{a822}'), SB::OLetter), (chars!('\u{a823}'..='\u{a827}'), SB::Extend), (chars!('\u{a840}'..='\u{a873}'), SB::OLetter), (chars!('\u{a876}'..='\u{a877}'), SB::STerm), (chars!('\u{a880}'..='\u{a881}'), SB::Extend), (chars!('\u{a882}'..='\u{a8b3}'), SB::OLetter), (chars!('\u{a8b4}'..='\u{a8c5}'), SB::Extend), (chars!('\u{a8ce}'..='\u{a8cf}'), SB::STerm), (chars!('\u{a8d0}'..='\u{a8d9}'), SB::Numeric), (chars!('\u{a8e0}'..='\u{a8f1}'), SB::Extend), (chars!('\u{a8f2}'..='\u{a8f7}'), SB::OLetter), (chars!('\u{a8fb}'..='\u{a8fb}'), SB::OLetter), (chars!('\u{a8fd}'..='\u{a8fd}'), SB::OLetter), (chars!('\u{a900}'..='\u{a909}'), SB::Numeric), (chars!('\u{a90a}'..='\u{a925}'), SB::OLetter), (chars!('\u{a926}'..='\u{a92d}'), SB::Extend), (chars!('\u{a92f}'..='\u{a92f}'), SB::STerm), (chars!('\u{a930}'..='\u{a946}'), SB::OLetter), (chars!('\u{a947}'..='\u{a953}'), SB::Extend), (chars!('\u{a960}'..='\u{a97c}'), SB::OLetter), (chars!('\u{a980}'..='\u{a983}'), SB::Extend), (chars!('\u{a984}'..='\u{a9b2}'), SB::OLetter), (chars!('\u{a9b3}'..='\u{a9c0}'), SB::Extend), (chars!('\u{a9c8}'..='\u{a9c9}'), SB::STerm), (chars!('\u{a9cf}'..='\u{a9cf}'), SB::OLetter), (chars!('\u{a9d0}'..='\u{a9d9}'), SB::Numeric), (chars!('\u{a9e0}'..='\u{a9e4}'), SB::OLetter), (chars!('\u{a9e5}'..='\u{a9e5}'), SB::Extend), (chars!('\u{a9e6}'..='\u{a9ef}'), SB::OLetter), (chars!('\u{a9f0}'..='\u{a9f9}'), SB::Numeric), (chars!('\u{a9fa}'..='\u{a9fe}'), SB::OLetter), (chars!('\u{aa00}'..='\u{aa28}'), SB::OLetter), (chars!('\u{aa29}'..='\u{aa36}'), SB::Extend), (chars!('\u{aa40}'..='\u{aa42}'), SB::OLetter), (chars!('\u{aa43}'..='\u{aa43}'), SB::Extend), (chars!('\u{aa44}'..='\u{aa4b}'), SB::OLetter), (chars!('\u{aa4c}'..='\u{aa4d}'), SB::Extend), (chars!('\u{aa50}'..='\u{aa59}'), SB::Numeric), (chars!('\u{aa5d}'..='\u{aa5f}'), SB::STerm), (chars!('\u{aa60}'..='\u{aa76}'), SB::OLetter), (chars!('\u{aa7a}'..='\u{aa7a}'), SB::OLetter), (chars!('\u{aa7b}'..='\u{aa7d}'), SB::Extend), (chars!('\u{aa7e}'..='\u{aaaf}'), SB::OLetter), (chars!('\u{aab0}'..='\u{aab0}'), SB::Extend), (chars!('\u{aab1}'..='\u{aab1}'), SB::OLetter), (chars!('\u{aab2}'..='\u{aab4}'), SB::Extend), (chars!('\u{aab5}'..='\u{aab6}'), SB::OLetter), (chars!('\u{aab7}'..='\u{aab8}'), SB::Extend), (chars!('\u{aab9}'..='\u{aabd}'), SB::OLetter), (chars!('\u{aabe}'..='\u{aabf}'), SB::Extend), (chars!('\u{aac0}'..='\u{aac0}'), SB::OLetter), (chars!('\u{aac1}'..='\u{aac1}'), SB::Extend), (chars!('\u{aac2}'..='\u{aac2}'), SB::OLetter), (chars!('\u{aadb}'..='\u{aadd}'), SB::OLetter), (chars!('\u{aae0}'..='\u{aaea}'), SB::OLetter), (chars!('\u{aaeb}'..='\u{aaef}'), SB::Extend), (chars!('\u{aaf0}'..='\u{aaf1}'), SB::STerm), (chars!('\u{aaf2}'..='\u{aaf4}'), SB::OLetter), (chars!('\u{aaf5}'..='\u{aaf6}'), SB::Extend), (chars!('\u{ab01}'..='\u{ab06}'), SB::OLetter), (chars!('\u{ab09}'..='\u{ab0e}'), SB::OLetter), (chars!('\u{ab11}'..='\u{ab16}'), SB::OLetter), (chars!('\u{ab20}'..='\u{ab26}'), SB::OLetter), (chars!('\u{ab28}'..='\u{ab2e}'), SB::OLetter), (chars!('\u{ab30}'..='\u{ab5a}'), SB::Lower), (chars!('\u{ab5c}'..='\u{ab65}'), SB::Lower), (chars!('\u{ab70}'..='\u{abbf}'), SB::Lower), (chars!('\u{abc0}'..='\u{abe2}'), SB::OLetter), (chars!('\u{abe3}'..='\u{abea}'), SB::Extend), (chars!('\u{abeb}'..='\u{abeb}'), SB::STerm), (chars!('\u{abec}'..='\u{abed}'), SB::Extend), (chars!('\u{abf0}'..='\u{abf9}'), SB::Numeric), (chars!('\u{ac00}'..='\u{d7a3}'), SB::OLetter), (chars!('\u{d7b0}'..='\u{d7c6}'), SB::OLetter), (chars!('\u{d7cb}'..='\u{d7fb}'), SB::OLetter), (chars!('\u{f900}'..='\u{fa6d}'), SB::OLetter), (chars!('\u{fa70}'..='\u{fad9}'), SB::OLetter), (chars!('\u{fb00}'..='\u{fb06}'), SB::Lower), (chars!('\u{fb13}'..='\u{fb17}'), SB::Lower), (chars!('\u{fb1d}'..='\u{fb1d}'), SB::OLetter), (chars!('\u{fb1e}'..='\u{fb1e}'), SB::Extend), (chars!('\u{fb1f}'..='\u{fb28}'), SB::OLetter), (chars!('\u{fb2a}'..='\u{fb36}'), SB::OLetter), (chars!('\u{fb38}'..='\u{fb3c}'), SB::OLetter), (chars!('\u{fb3e}'..='\u{fb3e}'), SB::OLetter), (chars!('\u{fb40}'..='\u{fb41}'), SB::OLetter), (chars!('\u{fb43}'..='\u{fb44}'), SB::OLetter), (chars!('\u{fb46}'..='\u{fbb1}'), SB::OLetter), (chars!('\u{fbd3}'..='\u{fd3d}'), SB::OLetter), (chars!('\u{fd3e}'..='\u{fd3f}'), SB::Close), (chars!('\u{fd50}'..='\u{fd8f}'), SB::OLetter), (chars!('\u{fd92}'..='\u{fdc7}'), SB::OLetter), (chars!('\u{fdf0}'..='\u{fdfb}'), SB::OLetter), (chars!('\u{fe00}'..='\u{fe0f}'), SB::Extend), (chars!('\u{fe10}'..='\u{fe11}'), SB::SContinue), (chars!('\u{fe13}'..='\u{fe13}'), SB::SContinue), (chars!('\u{fe17}'..='\u{fe18}'), SB::Close), (chars!('\u{fe20}'..='\u{fe2f}'), SB::Extend), (chars!('\u{fe31}'..='\u{fe32}'), SB::SContinue), (chars!('\u{fe35}'..='\u{fe44}'), SB::Close), (chars!('\u{fe47}'..='\u{fe48}'), SB::Close), (chars!('\u{fe50}'..='\u{fe51}'), SB::SContinue), (chars!('\u{fe52}'..='\u{fe52}'), SB::ATerm), (chars!('\u{fe55}'..='\u{fe55}'), SB::SContinue), (chars!('\u{fe56}'..='\u{fe57}'), SB::STerm), (chars!('\u{fe58}'..='\u{fe58}'), SB::SContinue), (chars!('\u{fe59}'..='\u{fe5e}'), SB::Close), (chars!('\u{fe63}'..='\u{fe63}'), SB::SContinue), (chars!('\u{fe70}'..='\u{fe74}'), SB::OLetter), (chars!('\u{fe76}'..='\u{fefc}'), SB::OLetter), (chars!('\u{feff}'..='\u{feff}'), SB::Format), (chars!('\u{ff01}'..='\u{ff01}'), SB::STerm), (chars!('\u{ff08}'..='\u{ff09}'), SB::Close), (chars!('\u{ff0c}'..='\u{ff0d}'), SB::SContinue), (chars!('\u{ff0e}'..='\u{ff0e}'), SB::ATerm), (chars!('\u{ff1a}'..='\u{ff1a}'), SB::SContinue), (chars!('\u{ff1f}'..='\u{ff1f}'), SB::STerm), (chars!('\u{ff21}'..='\u{ff3a}'), SB::Upper), (chars!('\u{ff3b}'..='\u{ff3b}'), SB::Close), (chars!('\u{ff3d}'..='\u{ff3d}'), SB::Close), (chars!('\u{ff41}'..='\u{ff5a}'), SB::Lower), (chars!('\u{ff5b}'..='\u{ff5b}'), SB::Close), (chars!('\u{ff5d}'..='\u{ff5d}'), SB::Close), (chars!('\u{ff5f}'..='\u{ff60}'), SB::Close), (chars!('\u{ff61}'..='\u{ff61}'), SB::STerm), (chars!('\u{ff62}'..='\u{ff63}'), SB::Close), (chars!('\u{ff64}'..='\u{ff64}'), SB::SContinue), (chars!('\u{ff66}'..='\u{ff9d}'), SB::OLetter), (chars!('\u{ff9e}'..='\u{ff9f}'), SB::Extend), (chars!('\u{ffa0}'..='\u{ffbe}'), SB::OLetter), (chars!('\u{ffc2}'..='\u{ffc7}'), SB::OLetter), (chars!('\u{ffca}'..='\u{ffcf}'), SB::OLetter), (chars!('\u{ffd2}'..='\u{ffd7}'), SB::OLetter), (chars!('\u{ffda}'..='\u{ffdc}'), SB::OLetter), (chars!('\u{fff9}'..='\u{fffb}'), SB::Format), (chars!('\u{10000}'..='\u{1000b}'), SB::OLetter), (chars!('\u{1000d}'..='\u{10026}'), SB::OLetter), (chars!('\u{10028}'..='\u{1003a}'), SB::OLetter), (chars!('\u{1003c}'..='\u{1003d}'), SB::OLetter), (chars!('\u{1003f}'..='\u{1004d}'), SB::OLetter), (chars!('\u{10050}'..='\u{1005d}'), SB::OLetter), (chars!('\u{10080}'..='\u{100fa}'), SB::OLetter), (chars!('\u{10140}'..='\u{10174}'), SB::OLetter), (chars!('\u{101fd}'..='\u{101fd}'), SB::Extend), (chars!('\u{10280}'..='\u{1029c}'), SB::OLetter), (chars!('\u{102a0}'..='\u{102d0}'), SB::OLetter), (chars!('\u{102e0}'..='\u{102e0}'), SB::Extend), (chars!('\u{10300}'..='\u{1031f}'), SB::OLetter), (chars!('\u{1032d}'..='\u{1034a}'), SB::OLetter), (chars!('\u{10350}'..='\u{10375}'), SB::OLetter), (chars!('\u{10376}'..='\u{1037a}'), SB::Extend), (chars!('\u{10380}'..='\u{1039d}'), SB::OLetter), (chars!('\u{103a0}'..='\u{103c3}'), SB::OLetter), (chars!('\u{103c8}'..='\u{103cf}'), SB::OLetter), (chars!('\u{103d1}'..='\u{103d5}'), SB::OLetter), (chars!('\u{10400}'..='\u{10427}'), SB::Upper), (chars!('\u{10428}'..='\u{1044f}'), SB::Lower), (chars!('\u{10450}'..='\u{1049d}'), SB::OLetter), (chars!('\u{104a0}'..='\u{104a9}'), SB::Numeric), (chars!('\u{104b0}'..='\u{104d3}'), SB::Upper), (chars!('\u{104d8}'..='\u{104fb}'), SB::Lower), (chars!('\u{10500}'..='\u{10527}'), SB::OLetter), (chars!('\u{10530}'..='\u{10563}'), SB::OLetter), (chars!('\u{10600}'..='\u{10736}'), SB::OLetter), (chars!('\u{10740}'..='\u{10755}'), SB::OLetter), (chars!('\u{10760}'..='\u{10767}'), SB::OLetter), (chars!('\u{10800}'..='\u{10805}'), SB::OLetter), (chars!('\u{10808}'..='\u{10808}'), SB::OLetter), (chars!('\u{1080a}'..='\u{10835}'), SB::OLetter), (chars!('\u{10837}'..='\u{10838}'), SB::OLetter), (chars!('\u{1083c}'..='\u{1083c}'), SB::OLetter), (chars!('\u{1083f}'..='\u{10855}'), SB::OLetter), (chars!('\u{10860}'..='\u{10876}'), SB::OLetter), (chars!('\u{10880}'..='\u{1089e}'), SB::OLetter), (chars!('\u{108e0}'..='\u{108f2}'), SB::OLetter), (chars!('\u{108f4}'..='\u{108f5}'), SB::OLetter), (chars!('\u{10900}'..='\u{10915}'), SB::OLetter), (chars!('\u{10920}'..='\u{10939}'), SB::OLetter), (chars!('\u{10980}'..='\u{109b7}'), SB::OLetter), (chars!('\u{109be}'..='\u{109bf}'), SB::OLetter), (chars!('\u{10a00}'..='\u{10a00}'), SB::OLetter), (chars!('\u{10a01}'..='\u{10a03}'), SB::Extend), (chars!('\u{10a05}'..='\u{10a06}'), SB::Extend), (chars!('\u{10a0c}'..='\u{10a0f}'), SB::Extend), (chars!('\u{10a10}'..='\u{10a13}'), SB::OLetter), (chars!('\u{10a15}'..='\u{10a17}'), SB::OLetter), (chars!('\u{10a19}'..='\u{10a33}'), SB::OLetter), (chars!('\u{10a38}'..='\u{10a3a}'), SB::Extend), (chars!('\u{10a3f}'..='\u{10a3f}'), SB::Extend), (chars!('\u{10a56}'..='\u{10a57}'), SB::STerm), (chars!('\u{10a60}'..='\u{10a7c}'), SB::OLetter), (chars!('\u{10a80}'..='\u{10a9c}'), SB::OLetter), (chars!('\u{10ac0}'..='\u{10ac7}'), SB::OLetter), (chars!('\u{10ac9}'..='\u{10ae4}'), SB::OLetter), (chars!('\u{10ae5}'..='\u{10ae6}'), SB::Extend), (chars!('\u{10b00}'..='\u{10b35}'), SB::OLetter), (chars!('\u{10b40}'..='\u{10b55}'), SB::OLetter), (chars!('\u{10b60}'..='\u{10b72}'), SB::OLetter), (chars!('\u{10b80}'..='\u{10b91}'), SB::OLetter), (chars!('\u{10c00}'..='\u{10c48}'), SB::OLetter), (chars!('\u{10c80}'..='\u{10cb2}'), SB::Upper), (chars!('\u{10cc0}'..='\u{10cf2}'), SB::Lower), (chars!('\u{11000}'..='\u{11002}'), SB::Extend), (chars!('\u{11003}'..='\u{11037}'), SB::OLetter), (chars!('\u{11038}'..='\u{11046}'), SB::Extend), (chars!('\u{11047}'..='\u{11048}'), SB::STerm), (chars!('\u{11066}'..='\u{1106f}'), SB::Numeric), (chars!('\u{1107f}'..='\u{11082}'), SB::Extend), (chars!('\u{11083}'..='\u{110af}'), SB::OLetter), (chars!('\u{110b0}'..='\u{110ba}'), SB::Extend), (chars!('\u{110bd}'..='\u{110bd}'), SB::Format), (chars!('\u{110be}'..='\u{110c1}'), SB::STerm), (chars!('\u{110d0}'..='\u{110e8}'), SB::OLetter), (chars!('\u{110f0}'..='\u{110f9}'), SB::Numeric), (chars!('\u{11100}'..='\u{11102}'), SB::Extend), (chars!('\u{11103}'..='\u{11126}'), SB::OLetter), (chars!('\u{11127}'..='\u{11134}'), SB::Extend), (chars!('\u{11136}'..='\u{1113f}'), SB::Numeric), (chars!('\u{11141}'..='\u{11143}'), SB::STerm), (chars!('\u{11150}'..='\u{11172}'), SB::OLetter), (chars!('\u{11173}'..='\u{11173}'), SB::Extend), (chars!('\u{11176}'..='\u{11176}'), SB::OLetter), (chars!('\u{11180}'..='\u{11182}'), SB::Extend), (chars!('\u{11183}'..='\u{111b2}'), SB::OLetter), (chars!('\u{111b3}'..='\u{111c0}'), SB::Extend), (chars!('\u{111c1}'..='\u{111c4}'), SB::OLetter), (chars!('\u{111c5}'..='\u{111c6}'), SB::STerm), (chars!('\u{111ca}'..='\u{111cc}'), SB::Extend), (chars!('\u{111cd}'..='\u{111cd}'), SB::STerm), (chars!('\u{111d0}'..='\u{111d9}'), SB::Numeric), (chars!('\u{111da}'..='\u{111da}'), SB::OLetter), (chars!('\u{111dc}'..='\u{111dc}'), SB::OLetter), (chars!('\u{111de}'..='\u{111df}'), SB::STerm), (chars!('\u{11200}'..='\u{11211}'), SB::OLetter), (chars!('\u{11213}'..='\u{1122b}'), SB::OLetter), (chars!('\u{1122c}'..='\u{11237}'), SB::Extend), (chars!('\u{11238}'..='\u{11239}'), SB::STerm), (chars!('\u{1123b}'..='\u{1123c}'), SB::STerm), (chars!('\u{1123e}'..='\u{1123e}'), SB::Extend), (chars!('\u{11280}'..='\u{11286}'), SB::OLetter), (chars!('\u{11288}'..='\u{11288}'), SB::OLetter), (chars!('\u{1128a}'..='\u{1128d}'), SB::OLetter), (chars!('\u{1128f}'..='\u{1129d}'), SB::OLetter), (chars!('\u{1129f}'..='\u{112a8}'), SB::OLetter), (chars!('\u{112a9}'..='\u{112a9}'), SB::STerm), (chars!('\u{112b0}'..='\u{112de}'), SB::OLetter), (chars!('\u{112df}'..='\u{112ea}'), SB::Extend), (chars!('\u{112f0}'..='\u{112f9}'), SB::Numeric), (chars!('\u{11300}'..='\u{11303}'), SB::Extend), (chars!('\u{11305}'..='\u{1130c}'), SB::OLetter), (chars!('\u{1130f}'..='\u{11310}'), SB::OLetter), (chars!('\u{11313}'..='\u{11328}'), SB::OLetter), (chars!('\u{1132a}'..='\u{11330}'), SB::OLetter), (chars!('\u{11332}'..='\u{11333}'), SB::OLetter), (chars!('\u{11335}'..='\u{11339}'), SB::OLetter), (chars!('\u{1133c}'..='\u{1133c}'), SB::Extend), (chars!('\u{1133d}'..='\u{1133d}'), SB::OLetter), (chars!('\u{1133e}'..='\u{11344}'), SB::Extend), (chars!('\u{11347}'..='\u{11348}'), SB::Extend), (chars!('\u{1134b}'..='\u{1134d}'), SB::Extend), (chars!('\u{11350}'..='\u{11350}'), SB::OLetter), (chars!('\u{11357}'..='\u{11357}'), SB::Extend), (chars!('\u{1135d}'..='\u{11361}'), SB::OLetter), (chars!('\u{11362}'..='\u{11363}'), SB::Extend), (chars!('\u{11366}'..='\u{1136c}'), SB::Extend), (chars!('\u{11370}'..='\u{11374}'), SB::Extend), (chars!('\u{11400}'..='\u{11434}'), SB::OLetter), (chars!('\u{11435}'..='\u{11446}'), SB::Extend), (chars!('\u{11447}'..='\u{1144a}'), SB::OLetter), (chars!('\u{1144b}'..='\u{1144c}'), SB::STerm), (chars!('\u{11450}'..='\u{11459}'), SB::Numeric), (chars!('\u{11480}'..='\u{114af}'), SB::OLetter), (chars!('\u{114b0}'..='\u{114c3}'), SB::Extend), (chars!('\u{114c4}'..='\u{114c5}'), SB::OLetter), (chars!('\u{114c7}'..='\u{114c7}'), SB::OLetter), (chars!('\u{114d0}'..='\u{114d9}'), SB::Numeric), (chars!('\u{11580}'..='\u{115ae}'), SB::OLetter), (chars!('\u{115af}'..='\u{115b5}'), SB::Extend), (chars!('\u{115b8}'..='\u{115c0}'), SB::Extend), (chars!('\u{115c2}'..='\u{115c3}'), SB::STerm), (chars!('\u{115c9}'..='\u{115d7}'), SB::STerm), (chars!('\u{115d8}'..='\u{115db}'), SB::OLetter), (chars!('\u{115dc}'..='\u{115dd}'), SB::Extend), (chars!('\u{11600}'..='\u{1162f}'), SB::OLetter), (chars!('\u{11630}'..='\u{11640}'), SB::Extend), (chars!('\u{11641}'..='\u{11642}'), SB::STerm), (chars!('\u{11644}'..='\u{11644}'), SB::OLetter), (chars!('\u{11650}'..='\u{11659}'), SB::Numeric), (chars!('\u{11680}'..='\u{116aa}'), SB::OLetter), (chars!('\u{116ab}'..='\u{116b7}'), SB::Extend), (chars!('\u{116c0}'..='\u{116c9}'), SB::Numeric), (chars!('\u{11700}'..='\u{11719}'), SB::OLetter), (chars!('\u{1171d}'..='\u{1172b}'), SB::Extend), (chars!('\u{11730}'..='\u{11739}'), SB::Numeric), (chars!('\u{1173c}'..='\u{1173e}'), SB::STerm), (chars!('\u{118a0}'..='\u{118bf}'), SB::Upper), (chars!('\u{118c0}'..='\u{118df}'), SB::Lower), (chars!('\u{118e0}'..='\u{118e9}'), SB::Numeric), (chars!('\u{118ff}'..='\u{118ff}'), SB::OLetter), (chars!('\u{11a00}'..='\u{11a00}'), SB::OLetter), (chars!('\u{11a01}'..='\u{11a0a}'), SB::Extend), (chars!('\u{11a0b}'..='\u{11a32}'), SB::OLetter), (chars!('\u{11a33}'..='\u{11a39}'), SB::Extend), (chars!('\u{11a3a}'..='\u{11a3a}'), SB::OLetter), (chars!('\u{11a3b}'..='\u{11a3e}'), SB::Extend), (chars!('\u{11a42}'..='\u{11a43}'), SB::STerm), (chars!('\u{11a47}'..='\u{11a47}'), SB::Extend), (chars!('\u{11a50}'..='\u{11a50}'), SB::OLetter), (chars!('\u{11a51}'..='\u{11a5b}'), SB::Extend), (chars!('\u{11a5c}'..='\u{11a83}'), SB::OLetter), (chars!('\u{11a86}'..='\u{11a89}'), SB::OLetter), (chars!('\u{11a8a}'..='\u{11a99}'), SB::Extend), (chars!('\u{11a9b}'..='\u{11a9c}'), SB::STerm), (chars!('\u{11ac0}'..='\u{11af8}'), SB::OLetter), (chars!('\u{11c00}'..='\u{11c08}'), SB::OLetter), (chars!('\u{11c0a}'..='\u{11c2e}'), SB::OLetter), (chars!('\u{11c2f}'..='\u{11c36}'), SB::Extend), (chars!('\u{11c38}'..='\u{11c3f}'), SB::Extend), (chars!('\u{11c40}'..='\u{11c40}'), SB::OLetter), (chars!('\u{11c41}'..='\u{11c42}'), SB::STerm), (chars!('\u{11c50}'..='\u{11c59}'), SB::Numeric), (chars!('\u{11c72}'..='\u{11c8f}'), SB::OLetter), (chars!('\u{11c92}'..='\u{11ca7}'), SB::Extend), (chars!('\u{11ca9}'..='\u{11cb6}'), SB::Extend), (chars!('\u{11d00}'..='\u{11d06}'), SB::OLetter), (chars!('\u{11d08}'..='\u{11d09}'), SB::OLetter), (chars!('\u{11d0b}'..='\u{11d30}'), SB::OLetter), (chars!('\u{11d31}'..='\u{11d36}'), SB::Extend), (chars!('\u{11d3a}'..='\u{11d3a}'), SB::Extend), (chars!('\u{11d3c}'..='\u{11d3d}'), SB::Extend), (chars!('\u{11d3f}'..='\u{11d45}'), SB::Extend), (chars!('\u{11d46}'..='\u{11d46}'), SB::OLetter), (chars!('\u{11d47}'..='\u{11d47}'), SB::Extend), (chars!('\u{11d50}'..='\u{11d59}'), SB::Numeric), (chars!('\u{12000}'..='\u{12399}'), SB::OLetter), (chars!('\u{12400}'..='\u{1246e}'), SB::OLetter), (chars!('\u{12480}'..='\u{12543}'), SB::OLetter), (chars!('\u{13000}'..='\u{1342e}'), SB::OLetter), (chars!('\u{14400}'..='\u{14646}'), SB::OLetter), (chars!('\u{16800}'..='\u{16a38}'), SB::OLetter), (chars!('\u{16a40}'..='\u{16a5e}'), SB::OLetter), (chars!('\u{16a60}'..='\u{16a69}'), SB::Numeric), (chars!('\u{16a6e}'..='\u{16a6f}'), SB::STerm), (chars!('\u{16ad0}'..='\u{16aed}'), SB::OLetter), (chars!('\u{16af0}'..='\u{16af4}'), SB::Extend), (chars!('\u{16af5}'..='\u{16af5}'), SB::STerm), (chars!('\u{16b00}'..='\u{16b2f}'), SB::OLetter), (chars!('\u{16b30}'..='\u{16b36}'), SB::Extend), (chars!('\u{16b37}'..='\u{16b38}'), SB::STerm), (chars!('\u{16b40}'..='\u{16b43}'), SB::OLetter), (chars!('\u{16b44}'..='\u{16b44}'), SB::STerm), (chars!('\u{16b50}'..='\u{16b59}'), SB::Numeric), (chars!('\u{16b63}'..='\u{16b77}'), SB::OLetter), (chars!('\u{16b7d}'..='\u{16b8f}'), SB::OLetter), (chars!('\u{16f00}'..='\u{16f44}'), SB::OLetter), (chars!('\u{16f50}'..='\u{16f50}'), SB::OLetter), (chars!('\u{16f51}'..='\u{16f7e}'), SB::Extend), (chars!('\u{16f8f}'..='\u{16f92}'), SB::Extend), (chars!('\u{16f93}'..='\u{16f9f}'), SB::OLetter), (chars!('\u{16fe0}'..='\u{16fe1}'), SB::OLetter), (chars!('\u{17000}'..='\u{187ec}'), SB::OLetter), (chars!('\u{18800}'..='\u{18af2}'), SB::OLetter), (chars!('\u{1b000}'..='\u{1b11e}'), SB::OLetter), (chars!('\u{1b170}'..='\u{1b2fb}'), SB::OLetter), (chars!('\u{1bc00}'..='\u{1bc6a}'), SB::OLetter), (chars!('\u{1bc70}'..='\u{1bc7c}'), SB::OLetter), (chars!('\u{1bc80}'..='\u{1bc88}'), SB::OLetter), (chars!('\u{1bc90}'..='\u{1bc99}'), SB::OLetter), (chars!('\u{1bc9d}'..='\u{1bc9e}'), SB::Extend), (chars!('\u{1bc9f}'..='\u{1bc9f}'), SB::STerm), (chars!('\u{1bca0}'..='\u{1bca3}'), SB::Format), (chars!('\u{1d165}'..='\u{1d169}'), SB::Extend), (chars!('\u{1d16d}'..='\u{1d172}'), SB::Extend), (chars!('\u{1d173}'..='\u{1d17a}'), SB::Format), (chars!('\u{1d17b}'..='\u{1d182}'), SB::Extend), (chars!('\u{1d185}'..='\u{1d18b}'), SB::Extend), (chars!('\u{1d1aa}'..='\u{1d1ad}'), SB::Extend), (chars!('\u{1d242}'..='\u{1d244}'), SB::Extend), (chars!('\u{1d400}'..='\u{1d419}'), SB::Upper), (chars!('\u{1d41a}'..='\u{1d433}'), SB::Lower), (chars!('\u{1d434}'..='\u{1d44d}'), SB::Upper), (chars!('\u{1d44e}'..='\u{1d454}'), SB::Lower), (chars!('\u{1d456}'..='\u{1d467}'), SB::Lower), (chars!('\u{1d468}'..='\u{1d481}'), SB::Upper), (chars!('\u{1d482}'..='\u{1d49b}'), SB::Lower), (chars!('\u{1d49c}'..='\u{1d49c}'), SB::Upper), (chars!('\u{1d49e}'..='\u{1d49f}'), SB::Upper), (chars!('\u{1d4a2}'..='\u{1d4a2}'), SB::Upper), (chars!('\u{1d4a5}'..='\u{1d4a6}'), SB::Upper), (chars!('\u{1d4a9}'..='\u{1d4ac}'), SB::Upper), (chars!('\u{1d4ae}'..='\u{1d4b5}'), SB::Upper), (chars!('\u{1d4b6}'..='\u{1d4b9}'), SB::Lower), (chars!('\u{1d4bb}'..='\u{1d4bb}'), SB::Lower), (chars!('\u{1d4bd}'..='\u{1d4c3}'), SB::Lower), (chars!('\u{1d4c5}'..='\u{1d4cf}'), SB::Lower), (chars!('\u{1d4d0}'..='\u{1d4e9}'), SB::Upper), (chars!('\u{1d4ea}'..='\u{1d503}'), SB::Lower), (chars!('\u{1d504}'..='\u{1d505}'), SB::Upper), (chars!('\u{1d507}'..='\u{1d50a}'), SB::Upper), (chars!('\u{1d50d}'..='\u{1d514}'), SB::Upper), (chars!('\u{1d516}'..='\u{1d51c}'), SB::Upper), (chars!('\u{1d51e}'..='\u{1d537}'), SB::Lower), (chars!('\u{1d538}'..='\u{1d539}'), SB::Upper), (chars!('\u{1d53b}'..='\u{1d53e}'), SB::Upper), (chars!('\u{1d540}'..='\u{1d544}'), SB::Upper), (chars!('\u{1d546}'..='\u{1d546}'), SB::Upper), (chars!('\u{1d54a}'..='\u{1d550}'), SB::Upper), (chars!('\u{1d552}'..='\u{1d56b}'), SB::Lower), (chars!('\u{1d56c}'..='\u{1d585}'), SB::Upper), (chars!('\u{1d586}'..='\u{1d59f}'), SB::Lower), (chars!('\u{1d5a0}'..='\u{1d5b9}'), SB::Upper), (chars!('\u{1d5ba}'..='\u{1d5d3}'), SB::Lower), (chars!('\u{1d5d4}'..='\u{1d5ed}'), SB::Upper), (chars!('\u{1d5ee}'..='\u{1d607}'), SB::Lower), (chars!('\u{1d608}'..='\u{1d621}'), SB::Upper), (chars!('\u{1d622}'..='\u{1d63b}'), SB::Lower), (chars!('\u{1d63c}'..='\u{1d655}'), SB::Upper), (chars!('\u{1d656}'..='\u{1d66f}'), SB::Lower), (chars!('\u{1d670}'..='\u{1d689}'), SB::Upper), (chars!('\u{1d68a}'..='\u{1d6a5}'), SB::Lower), (chars!('\u{1d6a8}'..='\u{1d6c0}'), SB::Upper), (chars!('\u{1d6c2}'..='\u{1d6da}'), SB::Lower), (chars!('\u{1d6dc}'..='\u{1d6e1}'), SB::Lower), (chars!('\u{1d6e2}'..='\u{1d6fa}'), SB::Upper), (chars!('\u{1d6fc}'..='\u{1d714}'), SB::Lower), (chars!('\u{1d716}'..='\u{1d71b}'), SB::Lower), (chars!('\u{1d71c}'..='\u{1d734}'), SB::Upper), (chars!('\u{1d736}'..='\u{1d74e}'), SB::Lower), (chars!('\u{1d750}'..='\u{1d755}'), SB::Lower), (chars!('\u{1d756}'..='\u{1d76e}'), SB::Upper), (chars!('\u{1d770}'..='\u{1d788}'), SB::Lower), (chars!('\u{1d78a}'..='\u{1d78f}'), SB::Lower), (chars!('\u{1d790}'..='\u{1d7a8}'), SB::Upper), (chars!('\u{1d7aa}'..='\u{1d7c2}'), SB::Lower), (chars!('\u{1d7c4}'..='\u{1d7c9}'), SB::Lower), (chars!('\u{1d7ca}'..='\u{1d7ca}'), SB::Upper), (chars!('\u{1d7cb}'..='\u{1d7cb}'), SB::Lower), (chars!('\u{1d7ce}'..='\u{1d7ff}'), SB::Numeric), (chars!('\u{1da00}'..='\u{1da36}'), SB::Extend), (chars!('\u{1da3b}'..='\u{1da6c}'), SB::Extend), (chars!('\u{1da75}'..='\u{1da75}'), SB::Extend), (chars!('\u{1da84}'..='\u{1da84}'), SB::Extend), (chars!('\u{1da88}'..='\u{1da88}'), SB::STerm), (chars!('\u{1da9b}'..='\u{1da9f}'), SB::Extend), (chars!('\u{1daa1}'..='\u{1daaf}'), SB::Extend), (chars!('\u{1e000}'..='\u{1e006}'), SB::Extend), (chars!('\u{1e008}'..='\u{1e018}'), SB::Extend), (chars!('\u{1e01b}'..='\u{1e021}'), SB::Extend), (chars!('\u{1e023}'..='\u{1e024}'), SB::Extend), (chars!('\u{1e026}'..='\u{1e02a}'), SB::Extend), (chars!('\u{1e800}'..='\u{1e8c4}'), SB::OLetter), (chars!('\u{1e8d0}'..='\u{1e8d6}'), SB::Extend), (chars!('\u{1e900}'..='\u{1e921}'), SB::Upper), (chars!('\u{1e922}'..='\u{1e943}'), SB::Lower), (chars!('\u{1e944}'..='\u{1e94a}'), SB::Extend), (chars!('\u{1e950}'..='\u{1e959}'), SB::Numeric), (chars!('\u{1ee00}'..='\u{1ee03}'), SB::OLetter), (chars!('\u{1ee05}'..='\u{1ee1f}'), SB::OLetter), (chars!('\u{1ee21}'..='\u{1ee22}'), SB::OLetter), (chars!('\u{1ee24}'..='\u{1ee24}'), SB::OLetter), (chars!('\u{1ee27}'..='\u{1ee27}'), SB::OLetter), (chars!('\u{1ee29}'..='\u{1ee32}'), SB::OLetter), (chars!('\u{1ee34}'..='\u{1ee37}'), SB::OLetter), (chars!('\u{1ee39}'..='\u{1ee39}'), SB::OLetter), (chars!('\u{1ee3b}'..='\u{1ee3b}'), SB::OLetter), (chars!('\u{1ee42}'..='\u{1ee42}'), SB::OLetter), (chars!('\u{1ee47}'..='\u{1ee47}'), SB::OLetter), (chars!('\u{1ee49}'..='\u{1ee49}'), SB::OLetter), (chars!('\u{1ee4b}'..='\u{1ee4b}'), SB::OLetter), (chars!('\u{1ee4d}'..='\u{1ee4f}'), SB::OLetter), (chars!('\u{1ee51}'..='\u{1ee52}'), SB::OLetter), (chars!('\u{1ee54}'..='\u{1ee54}'), SB::OLetter), (chars!('\u{1ee57}'..='\u{1ee57}'), SB::OLetter), (chars!('\u{1ee59}'..='\u{1ee59}'), SB::OLetter), (chars!('\u{1ee5b}'..='\u{1ee5b}'), SB::OLetter), (chars!('\u{1ee5d}'..='\u{1ee5d}'), SB::OLetter), (chars!('\u{1ee5f}'..='\u{1ee5f}'), SB::OLetter), (chars!('\u{1ee61}'..='\u{1ee62}'), SB::OLetter), (chars!('\u{1ee64}'..='\u{1ee64}'), SB::OLetter), (chars!('\u{1ee67}'..='\u{1ee6a}'), SB::OLetter), (chars!('\u{1ee6c}'..='\u{1ee72}'), SB::OLetter), (chars!('\u{1ee74}'..='\u{1ee77}'), SB::OLetter), (chars!('\u{1ee79}'..='\u{1ee7c}'), SB::OLetter), (chars!('\u{1ee7e}'..='\u{1ee7e}'), SB::OLetter), (chars!('\u{1ee80}'..='\u{1ee89}'), SB::OLetter), (chars!('\u{1ee8b}'..='\u{1ee9b}'), SB::OLetter), (chars!('\u{1eea1}'..='\u{1eea3}'), SB::OLetter), (chars!('\u{1eea5}'..='\u{1eea9}'), SB::OLetter), (chars!('\u{1eeab}'..='\u{1eebb}'), SB::OLetter), (chars!('\u{1f130}'..='\u{1f149}'), SB::Upper), (chars!('\u{1f150}'..='\u{1f169}'), SB::Upper), (chars!('\u{1f170}'..='\u{1f189}'), SB::Upper), (chars!('\u{1f676}'..='\u{1f678}'), SB::Close), (chars!('\u{20000}'..='\u{2a6d6}'), SB::OLetter), (chars!('\u{2a700}'..='\u{2b734}'), SB::OLetter), (chars!('\u{2b740}'..='\u{2b81d}'), SB::OLetter), (chars!('\u{2b820}'..='\u{2cea1}'), SB::OLetter), (chars!('\u{2ceb0}'..='\u{2ebe0}'), SB::OLetter), (chars!('\u{2f800}'..='\u{2fa1d}'), SB::OLetter), (chars!('\u{e0001}'..='\u{e0001}'), SB::Format), (chars!('\u{e0020}'..='\u{e007f}'), SB::Extend), (chars!('\u{e0100}'..='\u{e01ef}'), SB::Extend), ]) unic-ucd-segment-0.9.0/tables/unicode_version.rsv010064400007650000024000000002071343520353600203120ustar0000000000000000// WARNING: Auto-generated by the `unic-gen` crate. // WARNING: DO NOT EDIT MANUALLY! UnicodeVersion { major: 10, minor: 0, micro: 0 } unic-ucd-segment-0.9.0/tables/word_break.rsv010064400007650000024000001416651343520353600172540ustar0000000000000000// WARNING: Auto-generated by the `unic-gen` crate. // WARNING: DO NOT EDIT MANUALLY! CharDataTable::Range(&[ (chars!('\u{a}'..='\u{a}'), WB::LF), (chars!('\u{b}'..='\u{c}'), WB::Newline), (chars!('\u{d}'..='\u{d}'), WB::CR), (chars!('\u{22}'..='\u{22}'), WB::Double_Quote), (chars!('\u{27}'..='\u{27}'), WB::Single_Quote), (chars!('\u{2c}'..='\u{2c}'), WB::MidNum), (chars!('\u{2e}'..='\u{2e}'), WB::MidNumLet), (chars!('\u{30}'..='\u{39}'), WB::Numeric), (chars!('\u{3a}'..='\u{3a}'), WB::MidLetter), (chars!('\u{3b}'..='\u{3b}'), WB::MidNum), (chars!('\u{41}'..='\u{5a}'), WB::ALetter), (chars!('\u{5f}'..='\u{5f}'), WB::ExtendNumLet), (chars!('\u{61}'..='\u{7a}'), WB::ALetter), (chars!('\u{85}'..='\u{85}'), WB::Newline), (chars!('\u{aa}'..='\u{aa}'), WB::ALetter), (chars!('\u{ad}'..='\u{ad}'), WB::Format), (chars!('\u{b5}'..='\u{b5}'), WB::ALetter), (chars!('\u{b7}'..='\u{b7}'), WB::MidLetter), (chars!('\u{ba}'..='\u{ba}'), WB::ALetter), (chars!('\u{c0}'..='\u{d6}'), WB::ALetter), (chars!('\u{d8}'..='\u{f6}'), WB::ALetter), (chars!('\u{f8}'..='\u{2d7}'), WB::ALetter), (chars!('\u{2de}'..='\u{2e4}'), WB::ALetter), (chars!('\u{2ec}'..='\u{2ff}'), WB::ALetter), (chars!('\u{300}'..='\u{36f}'), WB::Extend), (chars!('\u{370}'..='\u{374}'), WB::ALetter), (chars!('\u{376}'..='\u{377}'), WB::ALetter), (chars!('\u{37a}'..='\u{37d}'), WB::ALetter), (chars!('\u{37e}'..='\u{37e}'), WB::MidNum), (chars!('\u{37f}'..='\u{37f}'), WB::ALetter), (chars!('\u{386}'..='\u{386}'), WB::ALetter), (chars!('\u{387}'..='\u{387}'), WB::MidLetter), (chars!('\u{388}'..='\u{38a}'), WB::ALetter), (chars!('\u{38c}'..='\u{38c}'), WB::ALetter), (chars!('\u{38e}'..='\u{3a1}'), WB::ALetter), (chars!('\u{3a3}'..='\u{3f5}'), WB::ALetter), (chars!('\u{3f7}'..='\u{481}'), WB::ALetter), (chars!('\u{483}'..='\u{489}'), WB::Extend), (chars!('\u{48a}'..='\u{52f}'), WB::ALetter), (chars!('\u{531}'..='\u{556}'), WB::ALetter), (chars!('\u{559}'..='\u{559}'), WB::ALetter), (chars!('\u{561}'..='\u{587}'), WB::ALetter), (chars!('\u{589}'..='\u{589}'), WB::MidNum), (chars!('\u{591}'..='\u{5bd}'), WB::Extend), (chars!('\u{5bf}'..='\u{5bf}'), WB::Extend), (chars!('\u{5c1}'..='\u{5c2}'), WB::Extend), (chars!('\u{5c4}'..='\u{5c5}'), WB::Extend), (chars!('\u{5c7}'..='\u{5c7}'), WB::Extend), (chars!('\u{5d0}'..='\u{5ea}'), WB::Hebrew_Letter), (chars!('\u{5f0}'..='\u{5f2}'), WB::Hebrew_Letter), (chars!('\u{5f3}'..='\u{5f3}'), WB::ALetter), (chars!('\u{5f4}'..='\u{5f4}'), WB::MidLetter), (chars!('\u{600}'..='\u{605}'), WB::Format), (chars!('\u{60c}'..='\u{60d}'), WB::MidNum), (chars!('\u{610}'..='\u{61a}'), WB::Extend), (chars!('\u{61c}'..='\u{61c}'), WB::Format), (chars!('\u{620}'..='\u{64a}'), WB::ALetter), (chars!('\u{64b}'..='\u{65f}'), WB::Extend), (chars!('\u{660}'..='\u{669}'), WB::Numeric), (chars!('\u{66b}'..='\u{66b}'), WB::Numeric), (chars!('\u{66c}'..='\u{66c}'), WB::MidNum), (chars!('\u{66e}'..='\u{66f}'), WB::ALetter), (chars!('\u{670}'..='\u{670}'), WB::Extend), (chars!('\u{671}'..='\u{6d3}'), WB::ALetter), (chars!('\u{6d5}'..='\u{6d5}'), WB::ALetter), (chars!('\u{6d6}'..='\u{6dc}'), WB::Extend), (chars!('\u{6dd}'..='\u{6dd}'), WB::Format), (chars!('\u{6df}'..='\u{6e4}'), WB::Extend), (chars!('\u{6e5}'..='\u{6e6}'), WB::ALetter), (chars!('\u{6e7}'..='\u{6e8}'), WB::Extend), (chars!('\u{6ea}'..='\u{6ed}'), WB::Extend), (chars!('\u{6ee}'..='\u{6ef}'), WB::ALetter), (chars!('\u{6f0}'..='\u{6f9}'), WB::Numeric), (chars!('\u{6fa}'..='\u{6fc}'), WB::ALetter), (chars!('\u{6ff}'..='\u{6ff}'), WB::ALetter), (chars!('\u{70f}'..='\u{70f}'), WB::Format), (chars!('\u{710}'..='\u{710}'), WB::ALetter), (chars!('\u{711}'..='\u{711}'), WB::Extend), (chars!('\u{712}'..='\u{72f}'), WB::ALetter), (chars!('\u{730}'..='\u{74a}'), WB::Extend), (chars!('\u{74d}'..='\u{7a5}'), WB::ALetter), (chars!('\u{7a6}'..='\u{7b0}'), WB::Extend), (chars!('\u{7b1}'..='\u{7b1}'), WB::ALetter), (chars!('\u{7c0}'..='\u{7c9}'), WB::Numeric), (chars!('\u{7ca}'..='\u{7ea}'), WB::ALetter), (chars!('\u{7eb}'..='\u{7f3}'), WB::Extend), (chars!('\u{7f4}'..='\u{7f5}'), WB::ALetter), (chars!('\u{7f8}'..='\u{7f8}'), WB::MidNum), (chars!('\u{7fa}'..='\u{7fa}'), WB::ALetter), (chars!('\u{800}'..='\u{815}'), WB::ALetter), (chars!('\u{816}'..='\u{819}'), WB::Extend), (chars!('\u{81a}'..='\u{81a}'), WB::ALetter), (chars!('\u{81b}'..='\u{823}'), WB::Extend), (chars!('\u{824}'..='\u{824}'), WB::ALetter), (chars!('\u{825}'..='\u{827}'), WB::Extend), (chars!('\u{828}'..='\u{828}'), WB::ALetter), (chars!('\u{829}'..='\u{82d}'), WB::Extend), (chars!('\u{840}'..='\u{858}'), WB::ALetter), (chars!('\u{859}'..='\u{85b}'), WB::Extend), (chars!('\u{860}'..='\u{86a}'), WB::ALetter), (chars!('\u{8a0}'..='\u{8b4}'), WB::ALetter), (chars!('\u{8b6}'..='\u{8bd}'), WB::ALetter), (chars!('\u{8d4}'..='\u{8e1}'), WB::Extend), (chars!('\u{8e2}'..='\u{8e2}'), WB::Format), (chars!('\u{8e3}'..='\u{903}'), WB::Extend), (chars!('\u{904}'..='\u{939}'), WB::ALetter), (chars!('\u{93a}'..='\u{93c}'), WB::Extend), (chars!('\u{93d}'..='\u{93d}'), WB::ALetter), (chars!('\u{93e}'..='\u{94f}'), WB::Extend), (chars!('\u{950}'..='\u{950}'), WB::ALetter), (chars!('\u{951}'..='\u{957}'), WB::Extend), (chars!('\u{958}'..='\u{961}'), WB::ALetter), (chars!('\u{962}'..='\u{963}'), WB::Extend), (chars!('\u{966}'..='\u{96f}'), WB::Numeric), (chars!('\u{971}'..='\u{980}'), WB::ALetter), (chars!('\u{981}'..='\u{983}'), WB::Extend), (chars!('\u{985}'..='\u{98c}'), WB::ALetter), (chars!('\u{98f}'..='\u{990}'), WB::ALetter), (chars!('\u{993}'..='\u{9a8}'), WB::ALetter), (chars!('\u{9aa}'..='\u{9b0}'), WB::ALetter), (chars!('\u{9b2}'..='\u{9b2}'), WB::ALetter), (chars!('\u{9b6}'..='\u{9b9}'), WB::ALetter), (chars!('\u{9bc}'..='\u{9bc}'), WB::Extend), (chars!('\u{9bd}'..='\u{9bd}'), WB::ALetter), (chars!('\u{9be}'..='\u{9c4}'), WB::Extend), (chars!('\u{9c7}'..='\u{9c8}'), WB::Extend), (chars!('\u{9cb}'..='\u{9cd}'), WB::Extend), (chars!('\u{9ce}'..='\u{9ce}'), WB::ALetter), (chars!('\u{9d7}'..='\u{9d7}'), WB::Extend), (chars!('\u{9dc}'..='\u{9dd}'), WB::ALetter), (chars!('\u{9df}'..='\u{9e1}'), WB::ALetter), (chars!('\u{9e2}'..='\u{9e3}'), WB::Extend), (chars!('\u{9e6}'..='\u{9ef}'), WB::Numeric), (chars!('\u{9f0}'..='\u{9f1}'), WB::ALetter), (chars!('\u{9fc}'..='\u{9fc}'), WB::ALetter), (chars!('\u{a01}'..='\u{a03}'), WB::Extend), (chars!('\u{a05}'..='\u{a0a}'), WB::ALetter), (chars!('\u{a0f}'..='\u{a10}'), WB::ALetter), (chars!('\u{a13}'..='\u{a28}'), WB::ALetter), (chars!('\u{a2a}'..='\u{a30}'), WB::ALetter), (chars!('\u{a32}'..='\u{a33}'), WB::ALetter), (chars!('\u{a35}'..='\u{a36}'), WB::ALetter), (chars!('\u{a38}'..='\u{a39}'), WB::ALetter), (chars!('\u{a3c}'..='\u{a3c}'), WB::Extend), (chars!('\u{a3e}'..='\u{a42}'), WB::Extend), (chars!('\u{a47}'..='\u{a48}'), WB::Extend), (chars!('\u{a4b}'..='\u{a4d}'), WB::Extend), (chars!('\u{a51}'..='\u{a51}'), WB::Extend), (chars!('\u{a59}'..='\u{a5c}'), WB::ALetter), (chars!('\u{a5e}'..='\u{a5e}'), WB::ALetter), (chars!('\u{a66}'..='\u{a6f}'), WB::Numeric), (chars!('\u{a70}'..='\u{a71}'), WB::Extend), (chars!('\u{a72}'..='\u{a74}'), WB::ALetter), (chars!('\u{a75}'..='\u{a75}'), WB::Extend), (chars!('\u{a81}'..='\u{a83}'), WB::Extend), (chars!('\u{a85}'..='\u{a8d}'), WB::ALetter), (chars!('\u{a8f}'..='\u{a91}'), WB::ALetter), (chars!('\u{a93}'..='\u{aa8}'), WB::ALetter), (chars!('\u{aaa}'..='\u{ab0}'), WB::ALetter), (chars!('\u{ab2}'..='\u{ab3}'), WB::ALetter), (chars!('\u{ab5}'..='\u{ab9}'), WB::ALetter), (chars!('\u{abc}'..='\u{abc}'), WB::Extend), (chars!('\u{abd}'..='\u{abd}'), WB::ALetter), (chars!('\u{abe}'..='\u{ac5}'), WB::Extend), (chars!('\u{ac7}'..='\u{ac9}'), WB::Extend), (chars!('\u{acb}'..='\u{acd}'), WB::Extend), (chars!('\u{ad0}'..='\u{ad0}'), WB::ALetter), (chars!('\u{ae0}'..='\u{ae1}'), WB::ALetter), (chars!('\u{ae2}'..='\u{ae3}'), WB::Extend), (chars!('\u{ae6}'..='\u{aef}'), WB::Numeric), (chars!('\u{af9}'..='\u{af9}'), WB::ALetter), (chars!('\u{afa}'..='\u{aff}'), WB::Extend), (chars!('\u{b01}'..='\u{b03}'), WB::Extend), (chars!('\u{b05}'..='\u{b0c}'), WB::ALetter), (chars!('\u{b0f}'..='\u{b10}'), WB::ALetter), (chars!('\u{b13}'..='\u{b28}'), WB::ALetter), (chars!('\u{b2a}'..='\u{b30}'), WB::ALetter), (chars!('\u{b32}'..='\u{b33}'), WB::ALetter), (chars!('\u{b35}'..='\u{b39}'), WB::ALetter), (chars!('\u{b3c}'..='\u{b3c}'), WB::Extend), (chars!('\u{b3d}'..='\u{b3d}'), WB::ALetter), (chars!('\u{b3e}'..='\u{b44}'), WB::Extend), (chars!('\u{b47}'..='\u{b48}'), WB::Extend), (chars!('\u{b4b}'..='\u{b4d}'), WB::Extend), (chars!('\u{b56}'..='\u{b57}'), WB::Extend), (chars!('\u{b5c}'..='\u{b5d}'), WB::ALetter), (chars!('\u{b5f}'..='\u{b61}'), WB::ALetter), (chars!('\u{b62}'..='\u{b63}'), WB::Extend), (chars!('\u{b66}'..='\u{b6f}'), WB::Numeric), (chars!('\u{b71}'..='\u{b71}'), WB::ALetter), (chars!('\u{b82}'..='\u{b82}'), WB::Extend), (chars!('\u{b83}'..='\u{b83}'), WB::ALetter), (chars!('\u{b85}'..='\u{b8a}'), WB::ALetter), (chars!('\u{b8e}'..='\u{b90}'), WB::ALetter), (chars!('\u{b92}'..='\u{b95}'), WB::ALetter), (chars!('\u{b99}'..='\u{b9a}'), WB::ALetter), (chars!('\u{b9c}'..='\u{b9c}'), WB::ALetter), (chars!('\u{b9e}'..='\u{b9f}'), WB::ALetter), (chars!('\u{ba3}'..='\u{ba4}'), WB::ALetter), (chars!('\u{ba8}'..='\u{baa}'), WB::ALetter), (chars!('\u{bae}'..='\u{bb9}'), WB::ALetter), (chars!('\u{bbe}'..='\u{bc2}'), WB::Extend), (chars!('\u{bc6}'..='\u{bc8}'), WB::Extend), (chars!('\u{bca}'..='\u{bcd}'), WB::Extend), (chars!('\u{bd0}'..='\u{bd0}'), WB::ALetter), (chars!('\u{bd7}'..='\u{bd7}'), WB::Extend), (chars!('\u{be6}'..='\u{bef}'), WB::Numeric), (chars!('\u{c00}'..='\u{c03}'), WB::Extend), (chars!('\u{c05}'..='\u{c0c}'), WB::ALetter), (chars!('\u{c0e}'..='\u{c10}'), WB::ALetter), (chars!('\u{c12}'..='\u{c28}'), WB::ALetter), (chars!('\u{c2a}'..='\u{c39}'), WB::ALetter), (chars!('\u{c3d}'..='\u{c3d}'), WB::ALetter), (chars!('\u{c3e}'..='\u{c44}'), WB::Extend), (chars!('\u{c46}'..='\u{c48}'), WB::Extend), (chars!('\u{c4a}'..='\u{c4d}'), WB::Extend), (chars!('\u{c55}'..='\u{c56}'), WB::Extend), (chars!('\u{c58}'..='\u{c5a}'), WB::ALetter), (chars!('\u{c60}'..='\u{c61}'), WB::ALetter), (chars!('\u{c62}'..='\u{c63}'), WB::Extend), (chars!('\u{c66}'..='\u{c6f}'), WB::Numeric), (chars!('\u{c80}'..='\u{c80}'), WB::ALetter), (chars!('\u{c81}'..='\u{c83}'), WB::Extend), (chars!('\u{c85}'..='\u{c8c}'), WB::ALetter), (chars!('\u{c8e}'..='\u{c90}'), WB::ALetter), (chars!('\u{c92}'..='\u{ca8}'), WB::ALetter), (chars!('\u{caa}'..='\u{cb3}'), WB::ALetter), (chars!('\u{cb5}'..='\u{cb9}'), WB::ALetter), (chars!('\u{cbc}'..='\u{cbc}'), WB::Extend), (chars!('\u{cbd}'..='\u{cbd}'), WB::ALetter), (chars!('\u{cbe}'..='\u{cc4}'), WB::Extend), (chars!('\u{cc6}'..='\u{cc8}'), WB::Extend), (chars!('\u{cca}'..='\u{ccd}'), WB::Extend), (chars!('\u{cd5}'..='\u{cd6}'), WB::Extend), (chars!('\u{cde}'..='\u{cde}'), WB::ALetter), (chars!('\u{ce0}'..='\u{ce1}'), WB::ALetter), (chars!('\u{ce2}'..='\u{ce3}'), WB::Extend), (chars!('\u{ce6}'..='\u{cef}'), WB::Numeric), (chars!('\u{cf1}'..='\u{cf2}'), WB::ALetter), (chars!('\u{d00}'..='\u{d03}'), WB::Extend), (chars!('\u{d05}'..='\u{d0c}'), WB::ALetter), (chars!('\u{d0e}'..='\u{d10}'), WB::ALetter), (chars!('\u{d12}'..='\u{d3a}'), WB::ALetter), (chars!('\u{d3b}'..='\u{d3c}'), WB::Extend), (chars!('\u{d3d}'..='\u{d3d}'), WB::ALetter), (chars!('\u{d3e}'..='\u{d44}'), WB::Extend), (chars!('\u{d46}'..='\u{d48}'), WB::Extend), (chars!('\u{d4a}'..='\u{d4d}'), WB::Extend), (chars!('\u{d4e}'..='\u{d4e}'), WB::ALetter), (chars!('\u{d54}'..='\u{d56}'), WB::ALetter), (chars!('\u{d57}'..='\u{d57}'), WB::Extend), (chars!('\u{d5f}'..='\u{d61}'), WB::ALetter), (chars!('\u{d62}'..='\u{d63}'), WB::Extend), (chars!('\u{d66}'..='\u{d6f}'), WB::Numeric), (chars!('\u{d7a}'..='\u{d7f}'), WB::ALetter), (chars!('\u{d82}'..='\u{d83}'), WB::Extend), (chars!('\u{d85}'..='\u{d96}'), WB::ALetter), (chars!('\u{d9a}'..='\u{db1}'), WB::ALetter), (chars!('\u{db3}'..='\u{dbb}'), WB::ALetter), (chars!('\u{dbd}'..='\u{dbd}'), WB::ALetter), (chars!('\u{dc0}'..='\u{dc6}'), WB::ALetter), (chars!('\u{dca}'..='\u{dca}'), WB::Extend), (chars!('\u{dcf}'..='\u{dd4}'), WB::Extend), (chars!('\u{dd6}'..='\u{dd6}'), WB::Extend), (chars!('\u{dd8}'..='\u{ddf}'), WB::Extend), (chars!('\u{de6}'..='\u{def}'), WB::Numeric), (chars!('\u{df2}'..='\u{df3}'), WB::Extend), (chars!('\u{e31}'..='\u{e31}'), WB::Extend), (chars!('\u{e34}'..='\u{e3a}'), WB::Extend), (chars!('\u{e47}'..='\u{e4e}'), WB::Extend), (chars!('\u{e50}'..='\u{e59}'), WB::Numeric), (chars!('\u{eb1}'..='\u{eb1}'), WB::Extend), (chars!('\u{eb4}'..='\u{eb9}'), WB::Extend), (chars!('\u{ebb}'..='\u{ebc}'), WB::Extend), (chars!('\u{ec8}'..='\u{ecd}'), WB::Extend), (chars!('\u{ed0}'..='\u{ed9}'), WB::Numeric), (chars!('\u{f00}'..='\u{f00}'), WB::ALetter), (chars!('\u{f18}'..='\u{f19}'), WB::Extend), (chars!('\u{f20}'..='\u{f29}'), WB::Numeric), (chars!('\u{f35}'..='\u{f35}'), WB::Extend), (chars!('\u{f37}'..='\u{f37}'), WB::Extend), (chars!('\u{f39}'..='\u{f39}'), WB::Extend), (chars!('\u{f3e}'..='\u{f3f}'), WB::Extend), (chars!('\u{f40}'..='\u{f47}'), WB::ALetter), (chars!('\u{f49}'..='\u{f6c}'), WB::ALetter), (chars!('\u{f71}'..='\u{f84}'), WB::Extend), (chars!('\u{f86}'..='\u{f87}'), WB::Extend), (chars!('\u{f88}'..='\u{f8c}'), WB::ALetter), (chars!('\u{f8d}'..='\u{f97}'), WB::Extend), (chars!('\u{f99}'..='\u{fbc}'), WB::Extend), (chars!('\u{fc6}'..='\u{fc6}'), WB::Extend), (chars!('\u{102b}'..='\u{103e}'), WB::Extend), (chars!('\u{1040}'..='\u{1049}'), WB::Numeric), (chars!('\u{1056}'..='\u{1059}'), WB::Extend), (chars!('\u{105e}'..='\u{1060}'), WB::Extend), (chars!('\u{1062}'..='\u{1064}'), WB::Extend), (chars!('\u{1067}'..='\u{106d}'), WB::Extend), (chars!('\u{1071}'..='\u{1074}'), WB::Extend), (chars!('\u{1082}'..='\u{108d}'), WB::Extend), (chars!('\u{108f}'..='\u{108f}'), WB::Extend), (chars!('\u{1090}'..='\u{1099}'), WB::Numeric), (chars!('\u{109a}'..='\u{109d}'), WB::Extend), (chars!('\u{10a0}'..='\u{10c5}'), WB::ALetter), (chars!('\u{10c7}'..='\u{10c7}'), WB::ALetter), (chars!('\u{10cd}'..='\u{10cd}'), WB::ALetter), (chars!('\u{10d0}'..='\u{10fa}'), WB::ALetter), (chars!('\u{10fc}'..='\u{1248}'), WB::ALetter), (chars!('\u{124a}'..='\u{124d}'), WB::ALetter), (chars!('\u{1250}'..='\u{1256}'), WB::ALetter), (chars!('\u{1258}'..='\u{1258}'), WB::ALetter), (chars!('\u{125a}'..='\u{125d}'), WB::ALetter), (chars!('\u{1260}'..='\u{1288}'), WB::ALetter), (chars!('\u{128a}'..='\u{128d}'), WB::ALetter), (chars!('\u{1290}'..='\u{12b0}'), WB::ALetter), (chars!('\u{12b2}'..='\u{12b5}'), WB::ALetter), (chars!('\u{12b8}'..='\u{12be}'), WB::ALetter), (chars!('\u{12c0}'..='\u{12c0}'), WB::ALetter), (chars!('\u{12c2}'..='\u{12c5}'), WB::ALetter), (chars!('\u{12c8}'..='\u{12d6}'), WB::ALetter), (chars!('\u{12d8}'..='\u{1310}'), WB::ALetter), (chars!('\u{1312}'..='\u{1315}'), WB::ALetter), (chars!('\u{1318}'..='\u{135a}'), WB::ALetter), (chars!('\u{135d}'..='\u{135f}'), WB::Extend), (chars!('\u{1380}'..='\u{138f}'), WB::ALetter), (chars!('\u{13a0}'..='\u{13f5}'), WB::ALetter), (chars!('\u{13f8}'..='\u{13fd}'), WB::ALetter), (chars!('\u{1401}'..='\u{166c}'), WB::ALetter), (chars!('\u{166f}'..='\u{167f}'), WB::ALetter), (chars!('\u{1681}'..='\u{169a}'), WB::ALetter), (chars!('\u{16a0}'..='\u{16ea}'), WB::ALetter), (chars!('\u{16ee}'..='\u{16f8}'), WB::ALetter), (chars!('\u{1700}'..='\u{170c}'), WB::ALetter), (chars!('\u{170e}'..='\u{1711}'), WB::ALetter), (chars!('\u{1712}'..='\u{1714}'), WB::Extend), (chars!('\u{1720}'..='\u{1731}'), WB::ALetter), (chars!('\u{1732}'..='\u{1734}'), WB::Extend), (chars!('\u{1740}'..='\u{1751}'), WB::ALetter), (chars!('\u{1752}'..='\u{1753}'), WB::Extend), (chars!('\u{1760}'..='\u{176c}'), WB::ALetter), (chars!('\u{176e}'..='\u{1770}'), WB::ALetter), (chars!('\u{1772}'..='\u{1773}'), WB::Extend), (chars!('\u{17b4}'..='\u{17d3}'), WB::Extend), (chars!('\u{17dd}'..='\u{17dd}'), WB::Extend), (chars!('\u{17e0}'..='\u{17e9}'), WB::Numeric), (chars!('\u{180b}'..='\u{180d}'), WB::Extend), (chars!('\u{180e}'..='\u{180e}'), WB::Format), (chars!('\u{1810}'..='\u{1819}'), WB::Numeric), (chars!('\u{1820}'..='\u{1877}'), WB::ALetter), (chars!('\u{1880}'..='\u{1884}'), WB::ALetter), (chars!('\u{1885}'..='\u{1886}'), WB::Extend), (chars!('\u{1887}'..='\u{18a8}'), WB::ALetter), (chars!('\u{18a9}'..='\u{18a9}'), WB::Extend), (chars!('\u{18aa}'..='\u{18aa}'), WB::ALetter), (chars!('\u{18b0}'..='\u{18f5}'), WB::ALetter), (chars!('\u{1900}'..='\u{191e}'), WB::ALetter), (chars!('\u{1920}'..='\u{192b}'), WB::Extend), (chars!('\u{1930}'..='\u{193b}'), WB::Extend), (chars!('\u{1946}'..='\u{194f}'), WB::Numeric), (chars!('\u{19d0}'..='\u{19d9}'), WB::Numeric), (chars!('\u{1a00}'..='\u{1a16}'), WB::ALetter), (chars!('\u{1a17}'..='\u{1a1b}'), WB::Extend), (chars!('\u{1a55}'..='\u{1a5e}'), WB::Extend), (chars!('\u{1a60}'..='\u{1a7c}'), WB::Extend), (chars!('\u{1a7f}'..='\u{1a7f}'), WB::Extend), (chars!('\u{1a80}'..='\u{1a89}'), WB::Numeric), (chars!('\u{1a90}'..='\u{1a99}'), WB::Numeric), (chars!('\u{1ab0}'..='\u{1abe}'), WB::Extend), (chars!('\u{1b00}'..='\u{1b04}'), WB::Extend), (chars!('\u{1b05}'..='\u{1b33}'), WB::ALetter), (chars!('\u{1b34}'..='\u{1b44}'), WB::Extend), (chars!('\u{1b45}'..='\u{1b4b}'), WB::ALetter), (chars!('\u{1b50}'..='\u{1b59}'), WB::Numeric), (chars!('\u{1b6b}'..='\u{1b73}'), WB::Extend), (chars!('\u{1b80}'..='\u{1b82}'), WB::Extend), (chars!('\u{1b83}'..='\u{1ba0}'), WB::ALetter), (chars!('\u{1ba1}'..='\u{1bad}'), WB::Extend), (chars!('\u{1bae}'..='\u{1baf}'), WB::ALetter), (chars!('\u{1bb0}'..='\u{1bb9}'), WB::Numeric), (chars!('\u{1bba}'..='\u{1be5}'), WB::ALetter), (chars!('\u{1be6}'..='\u{1bf3}'), WB::Extend), (chars!('\u{1c00}'..='\u{1c23}'), WB::ALetter), (chars!('\u{1c24}'..='\u{1c37}'), WB::Extend), (chars!('\u{1c40}'..='\u{1c49}'), WB::Numeric), (chars!('\u{1c4d}'..='\u{1c4f}'), WB::ALetter), (chars!('\u{1c50}'..='\u{1c59}'), WB::Numeric), (chars!('\u{1c5a}'..='\u{1c7d}'), WB::ALetter), (chars!('\u{1c80}'..='\u{1c88}'), WB::ALetter), (chars!('\u{1cd0}'..='\u{1cd2}'), WB::Extend), (chars!('\u{1cd4}'..='\u{1ce8}'), WB::Extend), (chars!('\u{1ce9}'..='\u{1cec}'), WB::ALetter), (chars!('\u{1ced}'..='\u{1ced}'), WB::Extend), (chars!('\u{1cee}'..='\u{1cf1}'), WB::ALetter), (chars!('\u{1cf2}'..='\u{1cf4}'), WB::Extend), (chars!('\u{1cf5}'..='\u{1cf6}'), WB::ALetter), (chars!('\u{1cf7}'..='\u{1cf9}'), WB::Extend), (chars!('\u{1d00}'..='\u{1dbf}'), WB::ALetter), (chars!('\u{1dc0}'..='\u{1df9}'), WB::Extend), (chars!('\u{1dfb}'..='\u{1dff}'), WB::Extend), (chars!('\u{1e00}'..='\u{1f15}'), WB::ALetter), (chars!('\u{1f18}'..='\u{1f1d}'), WB::ALetter), (chars!('\u{1f20}'..='\u{1f45}'), WB::ALetter), (chars!('\u{1f48}'..='\u{1f4d}'), WB::ALetter), (chars!('\u{1f50}'..='\u{1f57}'), WB::ALetter), (chars!('\u{1f59}'..='\u{1f59}'), WB::ALetter), (chars!('\u{1f5b}'..='\u{1f5b}'), WB::ALetter), (chars!('\u{1f5d}'..='\u{1f5d}'), WB::ALetter), (chars!('\u{1f5f}'..='\u{1f7d}'), WB::ALetter), (chars!('\u{1f80}'..='\u{1fb4}'), WB::ALetter), (chars!('\u{1fb6}'..='\u{1fbc}'), WB::ALetter), (chars!('\u{1fbe}'..='\u{1fbe}'), WB::ALetter), (chars!('\u{1fc2}'..='\u{1fc4}'), WB::ALetter), (chars!('\u{1fc6}'..='\u{1fcc}'), WB::ALetter), (chars!('\u{1fd0}'..='\u{1fd3}'), WB::ALetter), (chars!('\u{1fd6}'..='\u{1fdb}'), WB::ALetter), (chars!('\u{1fe0}'..='\u{1fec}'), WB::ALetter), (chars!('\u{1ff2}'..='\u{1ff4}'), WB::ALetter), (chars!('\u{1ff6}'..='\u{1ffc}'), WB::ALetter), (chars!('\u{200c}'..='\u{200c}'), WB::Extend), (chars!('\u{200d}'..='\u{200d}'), WB::ZWJ), (chars!('\u{200e}'..='\u{200f}'), WB::Format), (chars!('\u{2018}'..='\u{2019}'), WB::MidNumLet), (chars!('\u{2024}'..='\u{2024}'), WB::MidNumLet), (chars!('\u{2027}'..='\u{2027}'), WB::MidLetter), (chars!('\u{2028}'..='\u{2029}'), WB::Newline), (chars!('\u{202a}'..='\u{202e}'), WB::Format), (chars!('\u{202f}'..='\u{202f}'), WB::ExtendNumLet), (chars!('\u{203f}'..='\u{2040}'), WB::ExtendNumLet), (chars!('\u{2044}'..='\u{2044}'), WB::MidNum), (chars!('\u{2054}'..='\u{2054}'), WB::ExtendNumLet), (chars!('\u{2060}'..='\u{2064}'), WB::Format), (chars!('\u{2066}'..='\u{206f}'), WB::Format), (chars!('\u{2071}'..='\u{2071}'), WB::ALetter), (chars!('\u{207f}'..='\u{207f}'), WB::ALetter), (chars!('\u{2090}'..='\u{209c}'), WB::ALetter), (chars!('\u{20d0}'..='\u{20f0}'), WB::Extend), (chars!('\u{2102}'..='\u{2102}'), WB::ALetter), (chars!('\u{2107}'..='\u{2107}'), WB::ALetter), (chars!('\u{210a}'..='\u{2113}'), WB::ALetter), (chars!('\u{2115}'..='\u{2115}'), WB::ALetter), (chars!('\u{2119}'..='\u{211d}'), WB::ALetter), (chars!('\u{2124}'..='\u{2124}'), WB::ALetter), (chars!('\u{2126}'..='\u{2126}'), WB::ALetter), (chars!('\u{2128}'..='\u{2128}'), WB::ALetter), (chars!('\u{212a}'..='\u{212d}'), WB::ALetter), (chars!('\u{212f}'..='\u{2139}'), WB::ALetter), (chars!('\u{213c}'..='\u{213f}'), WB::ALetter), (chars!('\u{2145}'..='\u{2149}'), WB::ALetter), (chars!('\u{214e}'..='\u{214e}'), WB::ALetter), (chars!('\u{2160}'..='\u{2188}'), WB::ALetter), (chars!('\u{24b6}'..='\u{24e9}'), WB::ALetter), (chars!('\u{261d}'..='\u{261d}'), WB::E_Base), (chars!('\u{2640}'..='\u{2640}'), WB::Glue_After_Zwj), (chars!('\u{2642}'..='\u{2642}'), WB::Glue_After_Zwj), (chars!('\u{2695}'..='\u{2696}'), WB::Glue_After_Zwj), (chars!('\u{26f9}'..='\u{26f9}'), WB::E_Base), (chars!('\u{2708}'..='\u{2708}'), WB::Glue_After_Zwj), (chars!('\u{270a}'..='\u{270d}'), WB::E_Base), (chars!('\u{2764}'..='\u{2764}'), WB::Glue_After_Zwj), (chars!('\u{2c00}'..='\u{2c2e}'), WB::ALetter), (chars!('\u{2c30}'..='\u{2c5e}'), WB::ALetter), (chars!('\u{2c60}'..='\u{2ce4}'), WB::ALetter), (chars!('\u{2ceb}'..='\u{2cee}'), WB::ALetter), (chars!('\u{2cef}'..='\u{2cf1}'), WB::Extend), (chars!('\u{2cf2}'..='\u{2cf3}'), WB::ALetter), (chars!('\u{2d00}'..='\u{2d25}'), WB::ALetter), (chars!('\u{2d27}'..='\u{2d27}'), WB::ALetter), (chars!('\u{2d2d}'..='\u{2d2d}'), WB::ALetter), (chars!('\u{2d30}'..='\u{2d67}'), WB::ALetter), (chars!('\u{2d6f}'..='\u{2d6f}'), WB::ALetter), (chars!('\u{2d7f}'..='\u{2d7f}'), WB::Extend), (chars!('\u{2d80}'..='\u{2d96}'), WB::ALetter), (chars!('\u{2da0}'..='\u{2da6}'), WB::ALetter), (chars!('\u{2da8}'..='\u{2dae}'), WB::ALetter), (chars!('\u{2db0}'..='\u{2db6}'), WB::ALetter), (chars!('\u{2db8}'..='\u{2dbe}'), WB::ALetter), (chars!('\u{2dc0}'..='\u{2dc6}'), WB::ALetter), (chars!('\u{2dc8}'..='\u{2dce}'), WB::ALetter), (chars!('\u{2dd0}'..='\u{2dd6}'), WB::ALetter), (chars!('\u{2dd8}'..='\u{2dde}'), WB::ALetter), (chars!('\u{2de0}'..='\u{2dff}'), WB::Extend), (chars!('\u{2e2f}'..='\u{2e2f}'), WB::ALetter), (chars!('\u{3005}'..='\u{3005}'), WB::ALetter), (chars!('\u{302a}'..='\u{302f}'), WB::Extend), (chars!('\u{3031}'..='\u{3035}'), WB::Katakana), (chars!('\u{303b}'..='\u{303c}'), WB::ALetter), (chars!('\u{3099}'..='\u{309a}'), WB::Extend), (chars!('\u{309b}'..='\u{309c}'), WB::Katakana), (chars!('\u{30a0}'..='\u{30fa}'), WB::Katakana), (chars!('\u{30fc}'..='\u{30ff}'), WB::Katakana), (chars!('\u{3105}'..='\u{312e}'), WB::ALetter), (chars!('\u{3131}'..='\u{318e}'), WB::ALetter), (chars!('\u{31a0}'..='\u{31ba}'), WB::ALetter), (chars!('\u{31f0}'..='\u{31ff}'), WB::Katakana), (chars!('\u{32d0}'..='\u{32fe}'), WB::Katakana), (chars!('\u{3300}'..='\u{3357}'), WB::Katakana), (chars!('\u{a000}'..='\u{a48c}'), WB::ALetter), (chars!('\u{a4d0}'..='\u{a4fd}'), WB::ALetter), (chars!('\u{a500}'..='\u{a60c}'), WB::ALetter), (chars!('\u{a610}'..='\u{a61f}'), WB::ALetter), (chars!('\u{a620}'..='\u{a629}'), WB::Numeric), (chars!('\u{a62a}'..='\u{a62b}'), WB::ALetter), (chars!('\u{a640}'..='\u{a66e}'), WB::ALetter), (chars!('\u{a66f}'..='\u{a672}'), WB::Extend), (chars!('\u{a674}'..='\u{a67d}'), WB::Extend), (chars!('\u{a67f}'..='\u{a69d}'), WB::ALetter), (chars!('\u{a69e}'..='\u{a69f}'), WB::Extend), (chars!('\u{a6a0}'..='\u{a6ef}'), WB::ALetter), (chars!('\u{a6f0}'..='\u{a6f1}'), WB::Extend), (chars!('\u{a717}'..='\u{a7ae}'), WB::ALetter), (chars!('\u{a7b0}'..='\u{a7b7}'), WB::ALetter), (chars!('\u{a7f7}'..='\u{a801}'), WB::ALetter), (chars!('\u{a802}'..='\u{a802}'), WB::Extend), (chars!('\u{a803}'..='\u{a805}'), WB::ALetter), (chars!('\u{a806}'..='\u{a806}'), WB::Extend), (chars!('\u{a807}'..='\u{a80a}'), WB::ALetter), (chars!('\u{a80b}'..='\u{a80b}'), WB::Extend), (chars!('\u{a80c}'..='\u{a822}'), WB::ALetter), (chars!('\u{a823}'..='\u{a827}'), WB::Extend), (chars!('\u{a840}'..='\u{a873}'), WB::ALetter), (chars!('\u{a880}'..='\u{a881}'), WB::Extend), (chars!('\u{a882}'..='\u{a8b3}'), WB::ALetter), (chars!('\u{a8b4}'..='\u{a8c5}'), WB::Extend), (chars!('\u{a8d0}'..='\u{a8d9}'), WB::Numeric), (chars!('\u{a8e0}'..='\u{a8f1}'), WB::Extend), (chars!('\u{a8f2}'..='\u{a8f7}'), WB::ALetter), (chars!('\u{a8fb}'..='\u{a8fb}'), WB::ALetter), (chars!('\u{a8fd}'..='\u{a8fd}'), WB::ALetter), (chars!('\u{a900}'..='\u{a909}'), WB::Numeric), (chars!('\u{a90a}'..='\u{a925}'), WB::ALetter), (chars!('\u{a926}'..='\u{a92d}'), WB::Extend), (chars!('\u{a930}'..='\u{a946}'), WB::ALetter), (chars!('\u{a947}'..='\u{a953}'), WB::Extend), (chars!('\u{a960}'..='\u{a97c}'), WB::ALetter), (chars!('\u{a980}'..='\u{a983}'), WB::Extend), (chars!('\u{a984}'..='\u{a9b2}'), WB::ALetter), (chars!('\u{a9b3}'..='\u{a9c0}'), WB::Extend), (chars!('\u{a9cf}'..='\u{a9cf}'), WB::ALetter), (chars!('\u{a9d0}'..='\u{a9d9}'), WB::Numeric), (chars!('\u{a9e5}'..='\u{a9e5}'), WB::Extend), (chars!('\u{a9f0}'..='\u{a9f9}'), WB::Numeric), (chars!('\u{aa00}'..='\u{aa28}'), WB::ALetter), (chars!('\u{aa29}'..='\u{aa36}'), WB::Extend), (chars!('\u{aa40}'..='\u{aa42}'), WB::ALetter), (chars!('\u{aa43}'..='\u{aa43}'), WB::Extend), (chars!('\u{aa44}'..='\u{aa4b}'), WB::ALetter), (chars!('\u{aa4c}'..='\u{aa4d}'), WB::Extend), (chars!('\u{aa50}'..='\u{aa59}'), WB::Numeric), (chars!('\u{aa7b}'..='\u{aa7d}'), WB::Extend), (chars!('\u{aab0}'..='\u{aab0}'), WB::Extend), (chars!('\u{aab2}'..='\u{aab4}'), WB::Extend), (chars!('\u{aab7}'..='\u{aab8}'), WB::Extend), (chars!('\u{aabe}'..='\u{aabf}'), WB::Extend), (chars!('\u{aac1}'..='\u{aac1}'), WB::Extend), (chars!('\u{aae0}'..='\u{aaea}'), WB::ALetter), (chars!('\u{aaeb}'..='\u{aaef}'), WB::Extend), (chars!('\u{aaf2}'..='\u{aaf4}'), WB::ALetter), (chars!('\u{aaf5}'..='\u{aaf6}'), WB::Extend), (chars!('\u{ab01}'..='\u{ab06}'), WB::ALetter), (chars!('\u{ab09}'..='\u{ab0e}'), WB::ALetter), (chars!('\u{ab11}'..='\u{ab16}'), WB::ALetter), (chars!('\u{ab20}'..='\u{ab26}'), WB::ALetter), (chars!('\u{ab28}'..='\u{ab2e}'), WB::ALetter), (chars!('\u{ab30}'..='\u{ab65}'), WB::ALetter), (chars!('\u{ab70}'..='\u{abe2}'), WB::ALetter), (chars!('\u{abe3}'..='\u{abea}'), WB::Extend), (chars!('\u{abec}'..='\u{abed}'), WB::Extend), (chars!('\u{abf0}'..='\u{abf9}'), WB::Numeric), (chars!('\u{ac00}'..='\u{d7a3}'), WB::ALetter), (chars!('\u{d7b0}'..='\u{d7c6}'), WB::ALetter), (chars!('\u{d7cb}'..='\u{d7fb}'), WB::ALetter), (chars!('\u{fb00}'..='\u{fb06}'), WB::ALetter), (chars!('\u{fb13}'..='\u{fb17}'), WB::ALetter), (chars!('\u{fb1d}'..='\u{fb1d}'), WB::Hebrew_Letter), (chars!('\u{fb1e}'..='\u{fb1e}'), WB::Extend), (chars!('\u{fb1f}'..='\u{fb28}'), WB::Hebrew_Letter), (chars!('\u{fb2a}'..='\u{fb36}'), WB::Hebrew_Letter), (chars!('\u{fb38}'..='\u{fb3c}'), WB::Hebrew_Letter), (chars!('\u{fb3e}'..='\u{fb3e}'), WB::Hebrew_Letter), (chars!('\u{fb40}'..='\u{fb41}'), WB::Hebrew_Letter), (chars!('\u{fb43}'..='\u{fb44}'), WB::Hebrew_Letter), (chars!('\u{fb46}'..='\u{fb4f}'), WB::Hebrew_Letter), (chars!('\u{fb50}'..='\u{fbb1}'), WB::ALetter), (chars!('\u{fbd3}'..='\u{fd3d}'), WB::ALetter), (chars!('\u{fd50}'..='\u{fd8f}'), WB::ALetter), (chars!('\u{fd92}'..='\u{fdc7}'), WB::ALetter), (chars!('\u{fdf0}'..='\u{fdfb}'), WB::ALetter), (chars!('\u{fe00}'..='\u{fe0f}'), WB::Extend), (chars!('\u{fe10}'..='\u{fe10}'), WB::MidNum), (chars!('\u{fe13}'..='\u{fe13}'), WB::MidLetter), (chars!('\u{fe14}'..='\u{fe14}'), WB::MidNum), (chars!('\u{fe20}'..='\u{fe2f}'), WB::Extend), (chars!('\u{fe33}'..='\u{fe34}'), WB::ExtendNumLet), (chars!('\u{fe4d}'..='\u{fe4f}'), WB::ExtendNumLet), (chars!('\u{fe50}'..='\u{fe50}'), WB::MidNum), (chars!('\u{fe52}'..='\u{fe52}'), WB::MidNumLet), (chars!('\u{fe54}'..='\u{fe54}'), WB::MidNum), (chars!('\u{fe55}'..='\u{fe55}'), WB::MidLetter), (chars!('\u{fe70}'..='\u{fe74}'), WB::ALetter), (chars!('\u{fe76}'..='\u{fefc}'), WB::ALetter), (chars!('\u{feff}'..='\u{feff}'), WB::Format), (chars!('\u{ff07}'..='\u{ff07}'), WB::MidNumLet), (chars!('\u{ff0c}'..='\u{ff0c}'), WB::MidNum), (chars!('\u{ff0e}'..='\u{ff0e}'), WB::MidNumLet), (chars!('\u{ff1a}'..='\u{ff1a}'), WB::MidLetter), (chars!('\u{ff1b}'..='\u{ff1b}'), WB::MidNum), (chars!('\u{ff21}'..='\u{ff3a}'), WB::ALetter), (chars!('\u{ff3f}'..='\u{ff3f}'), WB::ExtendNumLet), (chars!('\u{ff41}'..='\u{ff5a}'), WB::ALetter), (chars!('\u{ff66}'..='\u{ff9d}'), WB::Katakana), (chars!('\u{ff9e}'..='\u{ff9f}'), WB::Extend), (chars!('\u{ffa0}'..='\u{ffbe}'), WB::ALetter), (chars!('\u{ffc2}'..='\u{ffc7}'), WB::ALetter), (chars!('\u{ffca}'..='\u{ffcf}'), WB::ALetter), (chars!('\u{ffd2}'..='\u{ffd7}'), WB::ALetter), (chars!('\u{ffda}'..='\u{ffdc}'), WB::ALetter), (chars!('\u{fff9}'..='\u{fffb}'), WB::Format), (chars!('\u{10000}'..='\u{1000b}'), WB::ALetter), (chars!('\u{1000d}'..='\u{10026}'), WB::ALetter), (chars!('\u{10028}'..='\u{1003a}'), WB::ALetter), (chars!('\u{1003c}'..='\u{1003d}'), WB::ALetter), (chars!('\u{1003f}'..='\u{1004d}'), WB::ALetter), (chars!('\u{10050}'..='\u{1005d}'), WB::ALetter), (chars!('\u{10080}'..='\u{100fa}'), WB::ALetter), (chars!('\u{10140}'..='\u{10174}'), WB::ALetter), (chars!('\u{101fd}'..='\u{101fd}'), WB::Extend), (chars!('\u{10280}'..='\u{1029c}'), WB::ALetter), (chars!('\u{102a0}'..='\u{102d0}'), WB::ALetter), (chars!('\u{102e0}'..='\u{102e0}'), WB::Extend), (chars!('\u{10300}'..='\u{1031f}'), WB::ALetter), (chars!('\u{1032d}'..='\u{1034a}'), WB::ALetter), (chars!('\u{10350}'..='\u{10375}'), WB::ALetter), (chars!('\u{10376}'..='\u{1037a}'), WB::Extend), (chars!('\u{10380}'..='\u{1039d}'), WB::ALetter), (chars!('\u{103a0}'..='\u{103c3}'), WB::ALetter), (chars!('\u{103c8}'..='\u{103cf}'), WB::ALetter), (chars!('\u{103d1}'..='\u{103d5}'), WB::ALetter), (chars!('\u{10400}'..='\u{1049d}'), WB::ALetter), (chars!('\u{104a0}'..='\u{104a9}'), WB::Numeric), (chars!('\u{104b0}'..='\u{104d3}'), WB::ALetter), (chars!('\u{104d8}'..='\u{104fb}'), WB::ALetter), (chars!('\u{10500}'..='\u{10527}'), WB::ALetter), (chars!('\u{10530}'..='\u{10563}'), WB::ALetter), (chars!('\u{10600}'..='\u{10736}'), WB::ALetter), (chars!('\u{10740}'..='\u{10755}'), WB::ALetter), (chars!('\u{10760}'..='\u{10767}'), WB::ALetter), (chars!('\u{10800}'..='\u{10805}'), WB::ALetter), (chars!('\u{10808}'..='\u{10808}'), WB::ALetter), (chars!('\u{1080a}'..='\u{10835}'), WB::ALetter), (chars!('\u{10837}'..='\u{10838}'), WB::ALetter), (chars!('\u{1083c}'..='\u{1083c}'), WB::ALetter), (chars!('\u{1083f}'..='\u{10855}'), WB::ALetter), (chars!('\u{10860}'..='\u{10876}'), WB::ALetter), (chars!('\u{10880}'..='\u{1089e}'), WB::ALetter), (chars!('\u{108e0}'..='\u{108f2}'), WB::ALetter), (chars!('\u{108f4}'..='\u{108f5}'), WB::ALetter), (chars!('\u{10900}'..='\u{10915}'), WB::ALetter), (chars!('\u{10920}'..='\u{10939}'), WB::ALetter), (chars!('\u{10980}'..='\u{109b7}'), WB::ALetter), (chars!('\u{109be}'..='\u{109bf}'), WB::ALetter), (chars!('\u{10a00}'..='\u{10a00}'), WB::ALetter), (chars!('\u{10a01}'..='\u{10a03}'), WB::Extend), (chars!('\u{10a05}'..='\u{10a06}'), WB::Extend), (chars!('\u{10a0c}'..='\u{10a0f}'), WB::Extend), (chars!('\u{10a10}'..='\u{10a13}'), WB::ALetter), (chars!('\u{10a15}'..='\u{10a17}'), WB::ALetter), (chars!('\u{10a19}'..='\u{10a33}'), WB::ALetter), (chars!('\u{10a38}'..='\u{10a3a}'), WB::Extend), (chars!('\u{10a3f}'..='\u{10a3f}'), WB::Extend), (chars!('\u{10a60}'..='\u{10a7c}'), WB::ALetter), (chars!('\u{10a80}'..='\u{10a9c}'), WB::ALetter), (chars!('\u{10ac0}'..='\u{10ac7}'), WB::ALetter), (chars!('\u{10ac9}'..='\u{10ae4}'), WB::ALetter), (chars!('\u{10ae5}'..='\u{10ae6}'), WB::Extend), (chars!('\u{10b00}'..='\u{10b35}'), WB::ALetter), (chars!('\u{10b40}'..='\u{10b55}'), WB::ALetter), (chars!('\u{10b60}'..='\u{10b72}'), WB::ALetter), (chars!('\u{10b80}'..='\u{10b91}'), WB::ALetter), (chars!('\u{10c00}'..='\u{10c48}'), WB::ALetter), (chars!('\u{10c80}'..='\u{10cb2}'), WB::ALetter), (chars!('\u{10cc0}'..='\u{10cf2}'), WB::ALetter), (chars!('\u{11000}'..='\u{11002}'), WB::Extend), (chars!('\u{11003}'..='\u{11037}'), WB::ALetter), (chars!('\u{11038}'..='\u{11046}'), WB::Extend), (chars!('\u{11066}'..='\u{1106f}'), WB::Numeric), (chars!('\u{1107f}'..='\u{11082}'), WB::Extend), (chars!('\u{11083}'..='\u{110af}'), WB::ALetter), (chars!('\u{110b0}'..='\u{110ba}'), WB::Extend), (chars!('\u{110bd}'..='\u{110bd}'), WB::Format), (chars!('\u{110d0}'..='\u{110e8}'), WB::ALetter), (chars!('\u{110f0}'..='\u{110f9}'), WB::Numeric), (chars!('\u{11100}'..='\u{11102}'), WB::Extend), (chars!('\u{11103}'..='\u{11126}'), WB::ALetter), (chars!('\u{11127}'..='\u{11134}'), WB::Extend), (chars!('\u{11136}'..='\u{1113f}'), WB::Numeric), (chars!('\u{11150}'..='\u{11172}'), WB::ALetter), (chars!('\u{11173}'..='\u{11173}'), WB::Extend), (chars!('\u{11176}'..='\u{11176}'), WB::ALetter), (chars!('\u{11180}'..='\u{11182}'), WB::Extend), (chars!('\u{11183}'..='\u{111b2}'), WB::ALetter), (chars!('\u{111b3}'..='\u{111c0}'), WB::Extend), (chars!('\u{111c1}'..='\u{111c4}'), WB::ALetter), (chars!('\u{111ca}'..='\u{111cc}'), WB::Extend), (chars!('\u{111d0}'..='\u{111d9}'), WB::Numeric), (chars!('\u{111da}'..='\u{111da}'), WB::ALetter), (chars!('\u{111dc}'..='\u{111dc}'), WB::ALetter), (chars!('\u{11200}'..='\u{11211}'), WB::ALetter), (chars!('\u{11213}'..='\u{1122b}'), WB::ALetter), (chars!('\u{1122c}'..='\u{11237}'), WB::Extend), (chars!('\u{1123e}'..='\u{1123e}'), WB::Extend), (chars!('\u{11280}'..='\u{11286}'), WB::ALetter), (chars!('\u{11288}'..='\u{11288}'), WB::ALetter), (chars!('\u{1128a}'..='\u{1128d}'), WB::ALetter), (chars!('\u{1128f}'..='\u{1129d}'), WB::ALetter), (chars!('\u{1129f}'..='\u{112a8}'), WB::ALetter), (chars!('\u{112b0}'..='\u{112de}'), WB::ALetter), (chars!('\u{112df}'..='\u{112ea}'), WB::Extend), (chars!('\u{112f0}'..='\u{112f9}'), WB::Numeric), (chars!('\u{11300}'..='\u{11303}'), WB::Extend), (chars!('\u{11305}'..='\u{1130c}'), WB::ALetter), (chars!('\u{1130f}'..='\u{11310}'), WB::ALetter), (chars!('\u{11313}'..='\u{11328}'), WB::ALetter), (chars!('\u{1132a}'..='\u{11330}'), WB::ALetter), (chars!('\u{11332}'..='\u{11333}'), WB::ALetter), (chars!('\u{11335}'..='\u{11339}'), WB::ALetter), (chars!('\u{1133c}'..='\u{1133c}'), WB::Extend), (chars!('\u{1133d}'..='\u{1133d}'), WB::ALetter), (chars!('\u{1133e}'..='\u{11344}'), WB::Extend), (chars!('\u{11347}'..='\u{11348}'), WB::Extend), (chars!('\u{1134b}'..='\u{1134d}'), WB::Extend), (chars!('\u{11350}'..='\u{11350}'), WB::ALetter), (chars!('\u{11357}'..='\u{11357}'), WB::Extend), (chars!('\u{1135d}'..='\u{11361}'), WB::ALetter), (chars!('\u{11362}'..='\u{11363}'), WB::Extend), (chars!('\u{11366}'..='\u{1136c}'), WB::Extend), (chars!('\u{11370}'..='\u{11374}'), WB::Extend), (chars!('\u{11400}'..='\u{11434}'), WB::ALetter), (chars!('\u{11435}'..='\u{11446}'), WB::Extend), (chars!('\u{11447}'..='\u{1144a}'), WB::ALetter), (chars!('\u{11450}'..='\u{11459}'), WB::Numeric), (chars!('\u{11480}'..='\u{114af}'), WB::ALetter), (chars!('\u{114b0}'..='\u{114c3}'), WB::Extend), (chars!('\u{114c4}'..='\u{114c5}'), WB::ALetter), (chars!('\u{114c7}'..='\u{114c7}'), WB::ALetter), (chars!('\u{114d0}'..='\u{114d9}'), WB::Numeric), (chars!('\u{11580}'..='\u{115ae}'), WB::ALetter), (chars!('\u{115af}'..='\u{115b5}'), WB::Extend), (chars!('\u{115b8}'..='\u{115c0}'), WB::Extend), (chars!('\u{115d8}'..='\u{115db}'), WB::ALetter), (chars!('\u{115dc}'..='\u{115dd}'), WB::Extend), (chars!('\u{11600}'..='\u{1162f}'), WB::ALetter), (chars!('\u{11630}'..='\u{11640}'), WB::Extend), (chars!('\u{11644}'..='\u{11644}'), WB::ALetter), (chars!('\u{11650}'..='\u{11659}'), WB::Numeric), (chars!('\u{11680}'..='\u{116aa}'), WB::ALetter), (chars!('\u{116ab}'..='\u{116b7}'), WB::Extend), (chars!('\u{116c0}'..='\u{116c9}'), WB::Numeric), (chars!('\u{1171d}'..='\u{1172b}'), WB::Extend), (chars!('\u{11730}'..='\u{11739}'), WB::Numeric), (chars!('\u{118a0}'..='\u{118df}'), WB::ALetter), (chars!('\u{118e0}'..='\u{118e9}'), WB::Numeric), (chars!('\u{118ff}'..='\u{118ff}'), WB::ALetter), (chars!('\u{11a00}'..='\u{11a00}'), WB::ALetter), (chars!('\u{11a01}'..='\u{11a0a}'), WB::Extend), (chars!('\u{11a0b}'..='\u{11a32}'), WB::ALetter), (chars!('\u{11a33}'..='\u{11a39}'), WB::Extend), (chars!('\u{11a3a}'..='\u{11a3a}'), WB::ALetter), (chars!('\u{11a3b}'..='\u{11a3e}'), WB::Extend), (chars!('\u{11a47}'..='\u{11a47}'), WB::Extend), (chars!('\u{11a50}'..='\u{11a50}'), WB::ALetter), (chars!('\u{11a51}'..='\u{11a5b}'), WB::Extend), (chars!('\u{11a5c}'..='\u{11a83}'), WB::ALetter), (chars!('\u{11a86}'..='\u{11a89}'), WB::ALetter), (chars!('\u{11a8a}'..='\u{11a99}'), WB::Extend), (chars!('\u{11ac0}'..='\u{11af8}'), WB::ALetter), (chars!('\u{11c00}'..='\u{11c08}'), WB::ALetter), (chars!('\u{11c0a}'..='\u{11c2e}'), WB::ALetter), (chars!('\u{11c2f}'..='\u{11c36}'), WB::Extend), (chars!('\u{11c38}'..='\u{11c3f}'), WB::Extend), (chars!('\u{11c40}'..='\u{11c40}'), WB::ALetter), (chars!('\u{11c50}'..='\u{11c59}'), WB::Numeric), (chars!('\u{11c72}'..='\u{11c8f}'), WB::ALetter), (chars!('\u{11c92}'..='\u{11ca7}'), WB::Extend), (chars!('\u{11ca9}'..='\u{11cb6}'), WB::Extend), (chars!('\u{11d00}'..='\u{11d06}'), WB::ALetter), (chars!('\u{11d08}'..='\u{11d09}'), WB::ALetter), (chars!('\u{11d0b}'..='\u{11d30}'), WB::ALetter), (chars!('\u{11d31}'..='\u{11d36}'), WB::Extend), (chars!('\u{11d3a}'..='\u{11d3a}'), WB::Extend), (chars!('\u{11d3c}'..='\u{11d3d}'), WB::Extend), (chars!('\u{11d3f}'..='\u{11d45}'), WB::Extend), (chars!('\u{11d46}'..='\u{11d46}'), WB::ALetter), (chars!('\u{11d47}'..='\u{11d47}'), WB::Extend), (chars!('\u{11d50}'..='\u{11d59}'), WB::Numeric), (chars!('\u{12000}'..='\u{12399}'), WB::ALetter), (chars!('\u{12400}'..='\u{1246e}'), WB::ALetter), (chars!('\u{12480}'..='\u{12543}'), WB::ALetter), (chars!('\u{13000}'..='\u{1342e}'), WB::ALetter), (chars!('\u{14400}'..='\u{14646}'), WB::ALetter), (chars!('\u{16800}'..='\u{16a38}'), WB::ALetter), (chars!('\u{16a40}'..='\u{16a5e}'), WB::ALetter), (chars!('\u{16a60}'..='\u{16a69}'), WB::Numeric), (chars!('\u{16ad0}'..='\u{16aed}'), WB::ALetter), (chars!('\u{16af0}'..='\u{16af4}'), WB::Extend), (chars!('\u{16b00}'..='\u{16b2f}'), WB::ALetter), (chars!('\u{16b30}'..='\u{16b36}'), WB::Extend), (chars!('\u{16b40}'..='\u{16b43}'), WB::ALetter), (chars!('\u{16b50}'..='\u{16b59}'), WB::Numeric), (chars!('\u{16b63}'..='\u{16b77}'), WB::ALetter), (chars!('\u{16b7d}'..='\u{16b8f}'), WB::ALetter), (chars!('\u{16f00}'..='\u{16f44}'), WB::ALetter), (chars!('\u{16f50}'..='\u{16f50}'), WB::ALetter), (chars!('\u{16f51}'..='\u{16f7e}'), WB::Extend), (chars!('\u{16f8f}'..='\u{16f92}'), WB::Extend), (chars!('\u{16f93}'..='\u{16f9f}'), WB::ALetter), (chars!('\u{16fe0}'..='\u{16fe1}'), WB::ALetter), (chars!('\u{1b000}'..='\u{1b000}'), WB::Katakana), (chars!('\u{1bc00}'..='\u{1bc6a}'), WB::ALetter), (chars!('\u{1bc70}'..='\u{1bc7c}'), WB::ALetter), (chars!('\u{1bc80}'..='\u{1bc88}'), WB::ALetter), (chars!('\u{1bc90}'..='\u{1bc99}'), WB::ALetter), (chars!('\u{1bc9d}'..='\u{1bc9e}'), WB::Extend), (chars!('\u{1bca0}'..='\u{1bca3}'), WB::Format), (chars!('\u{1d165}'..='\u{1d169}'), WB::Extend), (chars!('\u{1d16d}'..='\u{1d172}'), WB::Extend), (chars!('\u{1d173}'..='\u{1d17a}'), WB::Format), (chars!('\u{1d17b}'..='\u{1d182}'), WB::Extend), (chars!('\u{1d185}'..='\u{1d18b}'), WB::Extend), (chars!('\u{1d1aa}'..='\u{1d1ad}'), WB::Extend), (chars!('\u{1d242}'..='\u{1d244}'), WB::Extend), (chars!('\u{1d400}'..='\u{1d454}'), WB::ALetter), (chars!('\u{1d456}'..='\u{1d49c}'), WB::ALetter), (chars!('\u{1d49e}'..='\u{1d49f}'), WB::ALetter), (chars!('\u{1d4a2}'..='\u{1d4a2}'), WB::ALetter), (chars!('\u{1d4a5}'..='\u{1d4a6}'), WB::ALetter), (chars!('\u{1d4a9}'..='\u{1d4ac}'), WB::ALetter), (chars!('\u{1d4ae}'..='\u{1d4b9}'), WB::ALetter), (chars!('\u{1d4bb}'..='\u{1d4bb}'), WB::ALetter), (chars!('\u{1d4bd}'..='\u{1d4c3}'), WB::ALetter), (chars!('\u{1d4c5}'..='\u{1d505}'), WB::ALetter), (chars!('\u{1d507}'..='\u{1d50a}'), WB::ALetter), (chars!('\u{1d50d}'..='\u{1d514}'), WB::ALetter), (chars!('\u{1d516}'..='\u{1d51c}'), WB::ALetter), (chars!('\u{1d51e}'..='\u{1d539}'), WB::ALetter), (chars!('\u{1d53b}'..='\u{1d53e}'), WB::ALetter), (chars!('\u{1d540}'..='\u{1d544}'), WB::ALetter), (chars!('\u{1d546}'..='\u{1d546}'), WB::ALetter), (chars!('\u{1d54a}'..='\u{1d550}'), WB::ALetter), (chars!('\u{1d552}'..='\u{1d6a5}'), WB::ALetter), (chars!('\u{1d6a8}'..='\u{1d6c0}'), WB::ALetter), (chars!('\u{1d6c2}'..='\u{1d6da}'), WB::ALetter), (chars!('\u{1d6dc}'..='\u{1d6fa}'), WB::ALetter), (chars!('\u{1d6fc}'..='\u{1d714}'), WB::ALetter), (chars!('\u{1d716}'..='\u{1d734}'), WB::ALetter), (chars!('\u{1d736}'..='\u{1d74e}'), WB::ALetter), (chars!('\u{1d750}'..='\u{1d76e}'), WB::ALetter), (chars!('\u{1d770}'..='\u{1d788}'), WB::ALetter), (chars!('\u{1d78a}'..='\u{1d7a8}'), WB::ALetter), (chars!('\u{1d7aa}'..='\u{1d7c2}'), WB::ALetter), (chars!('\u{1d7c4}'..='\u{1d7cb}'), WB::ALetter), (chars!('\u{1d7ce}'..='\u{1d7ff}'), WB::Numeric), (chars!('\u{1da00}'..='\u{1da36}'), WB::Extend), (chars!('\u{1da3b}'..='\u{1da6c}'), WB::Extend), (chars!('\u{1da75}'..='\u{1da75}'), WB::Extend), (chars!('\u{1da84}'..='\u{1da84}'), WB::Extend), (chars!('\u{1da9b}'..='\u{1da9f}'), WB::Extend), (chars!('\u{1daa1}'..='\u{1daaf}'), WB::Extend), (chars!('\u{1e000}'..='\u{1e006}'), WB::Extend), (chars!('\u{1e008}'..='\u{1e018}'), WB::Extend), (chars!('\u{1e01b}'..='\u{1e021}'), WB::Extend), (chars!('\u{1e023}'..='\u{1e024}'), WB::Extend), (chars!('\u{1e026}'..='\u{1e02a}'), WB::Extend), (chars!('\u{1e800}'..='\u{1e8c4}'), WB::ALetter), (chars!('\u{1e8d0}'..='\u{1e8d6}'), WB::Extend), (chars!('\u{1e900}'..='\u{1e943}'), WB::ALetter), (chars!('\u{1e944}'..='\u{1e94a}'), WB::Extend), (chars!('\u{1e950}'..='\u{1e959}'), WB::Numeric), (chars!('\u{1ee00}'..='\u{1ee03}'), WB::ALetter), (chars!('\u{1ee05}'..='\u{1ee1f}'), WB::ALetter), (chars!('\u{1ee21}'..='\u{1ee22}'), WB::ALetter), (chars!('\u{1ee24}'..='\u{1ee24}'), WB::ALetter), (chars!('\u{1ee27}'..='\u{1ee27}'), WB::ALetter), (chars!('\u{1ee29}'..='\u{1ee32}'), WB::ALetter), (chars!('\u{1ee34}'..='\u{1ee37}'), WB::ALetter), (chars!('\u{1ee39}'..='\u{1ee39}'), WB::ALetter), (chars!('\u{1ee3b}'..='\u{1ee3b}'), WB::ALetter), (chars!('\u{1ee42}'..='\u{1ee42}'), WB::ALetter), (chars!('\u{1ee47}'..='\u{1ee47}'), WB::ALetter), (chars!('\u{1ee49}'..='\u{1ee49}'), WB::ALetter), (chars!('\u{1ee4b}'..='\u{1ee4b}'), WB::ALetter), (chars!('\u{1ee4d}'..='\u{1ee4f}'), WB::ALetter), (chars!('\u{1ee51}'..='\u{1ee52}'), WB::ALetter), (chars!('\u{1ee54}'..='\u{1ee54}'), WB::ALetter), (chars!('\u{1ee57}'..='\u{1ee57}'), WB::ALetter), (chars!('\u{1ee59}'..='\u{1ee59}'), WB::ALetter), (chars!('\u{1ee5b}'..='\u{1ee5b}'), WB::ALetter), (chars!('\u{1ee5d}'..='\u{1ee5d}'), WB::ALetter), (chars!('\u{1ee5f}'..='\u{1ee5f}'), WB::ALetter), (chars!('\u{1ee61}'..='\u{1ee62}'), WB::ALetter), (chars!('\u{1ee64}'..='\u{1ee64}'), WB::ALetter), (chars!('\u{1ee67}'..='\u{1ee6a}'), WB::ALetter), (chars!('\u{1ee6c}'..='\u{1ee72}'), WB::ALetter), (chars!('\u{1ee74}'..='\u{1ee77}'), WB::ALetter), (chars!('\u{1ee79}'..='\u{1ee7c}'), WB::ALetter), (chars!('\u{1ee7e}'..='\u{1ee7e}'), WB::ALetter), (chars!('\u{1ee80}'..='\u{1ee89}'), WB::ALetter), (chars!('\u{1ee8b}'..='\u{1ee9b}'), WB::ALetter), (chars!('\u{1eea1}'..='\u{1eea3}'), WB::ALetter), (chars!('\u{1eea5}'..='\u{1eea9}'), WB::ALetter), (chars!('\u{1eeab}'..='\u{1eebb}'), WB::ALetter), (chars!('\u{1f130}'..='\u{1f149}'), WB::ALetter), (chars!('\u{1f150}'..='\u{1f169}'), WB::ALetter), (chars!('\u{1f170}'..='\u{1f189}'), WB::ALetter), (chars!('\u{1f1e6}'..='\u{1f1ff}'), WB::Regional_Indicator), (chars!('\u{1f308}'..='\u{1f308}'), WB::Glue_After_Zwj), (chars!('\u{1f33e}'..='\u{1f33e}'), WB::Glue_After_Zwj), (chars!('\u{1f373}'..='\u{1f373}'), WB::Glue_After_Zwj), (chars!('\u{1f385}'..='\u{1f385}'), WB::E_Base), (chars!('\u{1f393}'..='\u{1f393}'), WB::Glue_After_Zwj), (chars!('\u{1f3a4}'..='\u{1f3a4}'), WB::Glue_After_Zwj), (chars!('\u{1f3a8}'..='\u{1f3a8}'), WB::Glue_After_Zwj), (chars!('\u{1f3c2}'..='\u{1f3c4}'), WB::E_Base), (chars!('\u{1f3c7}'..='\u{1f3c7}'), WB::E_Base), (chars!('\u{1f3ca}'..='\u{1f3cc}'), WB::E_Base), (chars!('\u{1f3eb}'..='\u{1f3eb}'), WB::Glue_After_Zwj), (chars!('\u{1f3ed}'..='\u{1f3ed}'), WB::Glue_After_Zwj), (chars!('\u{1f3fb}'..='\u{1f3ff}'), WB::E_Modifier), (chars!('\u{1f442}'..='\u{1f443}'), WB::E_Base), (chars!('\u{1f446}'..='\u{1f450}'), WB::E_Base), (chars!('\u{1f466}'..='\u{1f469}'), WB::E_Base_GAZ), (chars!('\u{1f46e}'..='\u{1f46e}'), WB::E_Base), (chars!('\u{1f470}'..='\u{1f478}'), WB::E_Base), (chars!('\u{1f47c}'..='\u{1f47c}'), WB::E_Base), (chars!('\u{1f481}'..='\u{1f483}'), WB::E_Base), (chars!('\u{1f485}'..='\u{1f487}'), WB::E_Base), (chars!('\u{1f48b}'..='\u{1f48b}'), WB::Glue_After_Zwj), (chars!('\u{1f4aa}'..='\u{1f4aa}'), WB::E_Base), (chars!('\u{1f4bb}'..='\u{1f4bc}'), WB::Glue_After_Zwj), (chars!('\u{1f527}'..='\u{1f527}'), WB::Glue_After_Zwj), (chars!('\u{1f52c}'..='\u{1f52c}'), WB::Glue_After_Zwj), (chars!('\u{1f574}'..='\u{1f575}'), WB::E_Base), (chars!('\u{1f57a}'..='\u{1f57a}'), WB::E_Base), (chars!('\u{1f590}'..='\u{1f590}'), WB::E_Base), (chars!('\u{1f595}'..='\u{1f596}'), WB::E_Base), (chars!('\u{1f5e8}'..='\u{1f5e8}'), WB::Glue_After_Zwj), (chars!('\u{1f645}'..='\u{1f647}'), WB::E_Base), (chars!('\u{1f64b}'..='\u{1f64f}'), WB::E_Base), (chars!('\u{1f680}'..='\u{1f680}'), WB::Glue_After_Zwj), (chars!('\u{1f692}'..='\u{1f692}'), WB::Glue_After_Zwj), (chars!('\u{1f6a3}'..='\u{1f6a3}'), WB::E_Base), (chars!('\u{1f6b4}'..='\u{1f6b6}'), WB::E_Base), (chars!('\u{1f6c0}'..='\u{1f6c0}'), WB::E_Base), (chars!('\u{1f6cc}'..='\u{1f6cc}'), WB::E_Base), (chars!('\u{1f918}'..='\u{1f91c}'), WB::E_Base), (chars!('\u{1f91e}'..='\u{1f91f}'), WB::E_Base), (chars!('\u{1f926}'..='\u{1f926}'), WB::E_Base), (chars!('\u{1f930}'..='\u{1f939}'), WB::E_Base), (chars!('\u{1f93d}'..='\u{1f93e}'), WB::E_Base), (chars!('\u{1f9d1}'..='\u{1f9dd}'), WB::E_Base), (chars!('\u{e0001}'..='\u{e0001}'), WB::Format), (chars!('\u{e0020}'..='\u{e007f}'), WB::Extend), (chars!('\u{e0100}'..='\u{e01ef}'), WB::Extend), ]) unic-ucd-segment-0.9.0/tests/basic_tests.rs010064400007650000024000000016431343520353600171310ustar0000000000000000// Copyright 2017 The UNIC Project Developers. // // See the COPYRIGHT file at the top-level directory of this distribution. // // Licensed under the Apache License, Version 2.0 or the MIT license // , at your // option. This file may not be copied, modified, or distributed // except according to those terms. use unic_ucd_segment::grapheme_cluster_break::GraphemeClusterBreak as GCB; use unic_ucd_segment::sentence_break::SentenceBreak as SB; use unic_ucd_segment::word_break::WordBreak as WB; #[test] fn test_grapheme_cluster_break_display() { assert_eq!(format!("{}", GCB::CR), "Carriage Return"); } #[test] fn test_word_break_display() { assert_eq!(format!("{}", SB::CR), "Carriage Return"); } #[test] fn test_sentence_break_display() { assert_eq!(format!("{}", WB::CR), "Carriage Return"); } unic-ucd-segment-0.9.0/tests/conformance_tests.rs010064400007650000024000000027211343520353600203400ustar0000000000000000// Copyright 2017 The UNIC Project Developers. // // See the COPYRIGHT file at the top-level directory of this distribution. // // Licensed under the Apache License, Version 2.0 or the MIT license // , at your // option. This file may not be copied, modified, or distributed // except according to those terms. use unic_char_property::tables::CharDataTable; use unic_ucd_segment::grapheme_cluster_break::{self, GraphemeClusterBreak}; use unic_ucd_segment::word_break::{self, WordBreak}; #[test] fn test_grapheme_cluster_break_conformance() { use crate::grapheme_cluster_break::abbr_names::*; use crate::grapheme_cluster_break::long_names::*; const TEST_DATA: CharDataTable = include!("tables/grapheme_cluster_break_test_data.rsv"); for (ch, gcb) in TEST_DATA.iter() { assert_eq!(GraphemeClusterBreak::of(ch.low), gcb); } } #[test] fn test_word_break_conformance() { use crate::word_break::abbr_names::*; use crate::word_break::long_names::*; // The test data file uses some unexpected names for some values use crate::word_break::long_names::{Extend as Extend_FE, Format as Format_FE, ZWJ as ZWJ_FE}; const TEST_DATA: CharDataTable = include!("tables/word_break_test_data.rsv"); for (ch, gcb) in TEST_DATA.iter() { assert_eq!(WordBreak::of(ch.low), gcb); } } unic-ucd-segment-0.9.0/tests/tables/grapheme_cluster_break_test_data.rsv010064400007650000024000000013411343520353600250060ustar0000000000000000// WARNING: Auto-generated by the `unic-gen` crate. // WARNING: DO NOT EDIT MANUALLY! CharDataTable::Direct(&[ ('\u{1}', Control), ('\u{a}', LF), ('\u{d}', CR), ('\u{20}', Other), ('\u{61}', Other), ('\u{62}', Other), ('\u{300}', Extend), ('\u{308}', Extend), ('\u{378}', Other), ('\u{600}', Prepend), ('\u{646}', Other), ('\u{903}', SpacingMark), ('\u{1100}', L), ('\u{1160}', V), ('\u{11a8}', T), ('\u{200d}', ZWJ), ('\u{261d}', E_Base), ('\u{2640}', Glue_After_Zwj), ('\u{ac00}', LV), ('\u{ac01}', LVT), ('\u{1f1e6}', RI), ('\u{1f1e7}', RI), ('\u{1f1e8}', RI), ('\u{1f1e9}', RI), ('\u{1f3fb}', E_Modifier), ('\u{1f466}', EBG), ]) unic-ucd-segment-0.9.0/tests/tables/word_break_test_data.rsv010064400007650000024000000016611343520353600224350ustar0000000000000000// WARNING: Auto-generated by the `unic-gen` crate. // WARNING: DO NOT EDIT MANUALLY! CharDataTable::Direct(&[ ('\u{1}', Other), ('\u{a}', LF), ('\u{b}', Newline), ('\u{d}', CR), ('\u{20}', Other), ('\u{22}', Double_Quote), ('\u{27}', Single_Quote), ('\u{2c}', MidNum), ('\u{2e}', MidNumLet), ('\u{30}', Numeric), ('\u{31}', Numeric), ('\u{3a}', MidLetter), ('\u{41}', ALetter), ('\u{5f}', ExtendNumLet), ('\u{61}', ALetter), ('\u{62}', ALetter), ('\u{ad}', Format_FE), ('\u{300}', Extend_FE), ('\u{308}', Extend_FE), ('\u{5d0}', Hebrew_Letter), ('\u{646}', ALetter), ('\u{200d}', ZWJ_FE), ('\u{2060}', Format_FE), ('\u{261d}', E_Base), ('\u{2640}', Glue_After_Zwj), ('\u{3031}', Katakana), ('\u{1f1e6}', RI), ('\u{1f1e7}', RI), ('\u{1f1e8}', RI), ('\u{1f1e9}', RI), ('\u{1f3fb}', E_Modifier), ('\u{1f466}', EBG), ]) unic-ucd-segment-0.9.0/tests/unicode_version_tests.rs010064400007650000024000000011701343520353600212360ustar0000000000000000// Copyright 2017 The UNIC Project Developers. // // See the COPYRIGHT file at the top-level directory of this distribution. // // Licensed under the Apache License, Version 2.0 or the MIT license // , at your // option. This file may not be copied, modified, or distributed // except according to those terms. use unic_ucd_segment; use unic_ucd_version; #[test] fn test_version_against_ucd_version() { assert_eq!( unic_ucd_segment::UNICODE_VERSION, unic_ucd_version::UNICODE_VERSION ); } unic-ucd-segment-0.9.0/.cargo_vcs_info.json0000644000000001120000000000000142420ustar00{ "git": { "sha1": "8a6ce83063d90b91ae2ce59eddb803edd393fca9" } }