You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

1842 lines
129 KiB

  1. /*
  2. Breaks a string into individual user-perceived "characters"
  3. Unicode UAX-29 standard, version 10.0.0
  4. Usage:
  5. //returns an array of strings, one string for each grapheme cluster
  6. let mut graphemes = split_graphemes(string);
  7. */
  8. use super::*;
  9. extern crate unicode_segmentation;
  10. use self::unicode_segmentation::UnicodeSegmentation;
  11. pub trait Graphemes: UnicodeSegmentation + CodePointsIter {
  12. fn split_graphemes<'a>(&'a self) -> Vec<&'a str> {
  13. UnicodeSegmentation::graphemes(self, true).collect::<Vec<&str>>()
  14. }
  15. fn graphemes_indices<'a>(&'a self) -> Vec<(usize, &'a str)> {
  16. UnicodeSegmentation::grapheme_indices(self, true).collect::<Vec<(usize, &str)>>()
  17. }
  18. fn next_grapheme(&self) -> Option<(usize, &str)> {
  19. UnicodeSegmentation::grapheme_indices(self, true).next()
  20. }
  21. fn last_grapheme(&self) -> Option<(usize, &str)> {
  22. UnicodeSegmentation::grapheme_indices(self, true).next_back()
  23. }
  24. fn grapheme_width(&self) -> usize {
  25. let mut count = 0;
  26. for c in self.code_points() {
  27. count += if let Some(w) = wcwidth(c) { w } else { 0 };
  28. }
  29. count
  30. }
  31. }
  32. impl Graphemes for str {}
  33. pub struct WordBreakIter<'s> {
  34. input: &'s str,
  35. width: usize,
  36. }
  37. impl<'s> Iterator for WordBreakIter<'s> {
  38. type Item = &'s str;
  39. fn next(&mut self) -> Option<&'s str> {
  40. if self.input.is_empty() {
  41. return None;
  42. }
  43. self.input = self.input.trim_start_matches(|c| c == ' ');
  44. if self.input.starts_with('\n') {
  45. let ret = &self.input[0..0];
  46. self.input = &self.input[1..];
  47. return Some(ret);
  48. }
  49. if let Some(next_idx) = self.input.as_bytes().iter().position(|&c| c == b'\n') {
  50. if next_idx <= self.width {
  51. let ret = &self.input[..next_idx];
  52. self.input = &self.input[next_idx + 1..];
  53. return Some(ret);
  54. }
  55. }
  56. let graphemes = UnicodeSegmentation::grapheme_indices(self.input, true)
  57. .take(self.width)
  58. .collect::<Vec<(usize, &str)>>();
  59. if graphemes.len() == self.width {
  60. // use grapheme indices and find position of " " graphemes
  61. if let Some(next_idx) = graphemes.iter().rposition(|(_, g)| *g == " ") {
  62. let next_idx = graphemes[next_idx].0;
  63. let ret = &self.input[..next_idx];
  64. self.input = &self.input[next_idx..];
  65. Some(ret)
  66. } else {
  67. let last = graphemes.last().unwrap();
  68. let next_idx = last.0 + last.1.len();
  69. let ret = &self.input[..next_idx];
  70. self.input = &self.input[next_idx..];
  71. Some(ret)
  72. }
  73. } else {
  74. /* graphemes.len() < width */
  75. let ret = self.input;
  76. self.input = &self.input[0..0];
  77. Some(ret)
  78. }
  79. }
  80. }
  81. pub fn word_break_string(s: &str, width: usize) -> Vec<&str> {
  82. let iter = WordBreakIter { input: s, width };
  83. iter.collect()
  84. }
  85. //#[derive(PartialEq)]
  86. //enum Property {
  87. // CR,
  88. // LF,
  89. // Control,
  90. // Extend,
  91. // Regional_Indicator,
  92. // SpacingMark,
  93. // L,
  94. // V,
  95. // T,
  96. // LV,
  97. // LVT,
  98. // Other,
  99. // Prepend,
  100. // E_Base,
  101. // E_Modifier,
  102. // ZWJ,
  103. // Glue_After_Zwj,
  104. // E_Base_GAZ,
  105. //}
  106. //
  107. //enum Breaks {
  108. // NotBreak,
  109. // BreakStart,
  110. // Break,
  111. // BreakLastRegional,
  112. // BreakPenultimateRegional,
  113. //}
  114. //
  115. //use Property::*;
  116. //use Breaks::*;
  117. //
  118. //impl From<u8> for Breaks {
  119. // fn from(u: u8) -> Breaks {
  120. // match u {
  121. // 0 => NotBreak,
  122. // 1 => BreakStart,
  123. // 2 => Break,
  124. // 3 => BreakLastRegional,
  125. // 4 => BreakPenultimateRegional,
  126. // _ => unreachable!()
  127. // }
  128. // }
  129. //}
  130. //
  131. //fn is_surrogate(s: &str, pos: usize) -> bool {
  132. // return 0xd800 <= char_code_at(s, pos) && char_code_at(s, pos) <= 0xdbff &&
  133. // 0xdc00 <= char_code_at(s, pos + 1) && char_code_at(s, pos + 1) <= 0xdfff;
  134. //}
  135. //
  136. //// Private function, gets a Unicode code point from a java_script UTF-16 string
  137. //// handling surrogate pairs appropriately
  138. //fn code_point_at(s: &str, idx: usize) -> u8 {
  139. // let mut code: u8 = char_code_at(s, idx);
  140. //
  141. // // if a high surrogate
  142. // if (0x_d800 <= code && code <= 0x_dBFF &&
  143. // idx < str.length - 1){
  144. // let mut hi = code;
  145. // let mut low = char_code_at(s, idx + 1);
  146. // if (0x_dC00 <= low && low <= 0x_dFFF){
  147. // return ((hi - 0x_d800) * 0x400) + (low - 0x_dC00) + 0x10000;
  148. // }
  149. // return hi;
  150. // }
  151. //
  152. // // if a low surrogate
  153. // if (0x_dC00 <= code && code <= 0x_dFFF &&
  154. // idx >= 1){
  155. // let mut hi = char_code_at(s, idx - 1);
  156. // let mut low = code;
  157. // if (0x_d800 <= hi && hi <= 0x_dBFF){
  158. // return ((hi - 0x_d800) * 0x400) + (low - 0x_dC00) + 0x10000;
  159. // }
  160. // return low;
  161. // }
  162. //
  163. // //just return the char if an unmatched surrogate half or a
  164. // //single-char codepoint
  165. // return code;
  166. //}
  167. //
  168. //// Private function, returns whether a break is allowed between the
  169. //// two given grapheme breaking classes
  170. //fn should_break(start, mid, end) -> Breaks {
  171. // let mut all = [start, mid, end].into();
  172. // let mut previous = start;
  173. // let mut next = end
  174. //
  175. // // Lookahead termintor for:
  176. // // GB10. (E_Base | EBG) Extend* ? E_Modifier
  177. // let mut e_modifier_index = all.last_index_of(E_Modifier)
  178. // if(e_modifier_index > 1 &&
  179. // all.slice(1, e_modifier_index).every(function(c){return c == Extend}) &&
  180. // [Extend, E_Base, E_Base_GAZ].index_of(start) == -1){
  181. // return Break
  182. // }
  183. //
  184. // // Lookahead termintor for:
  185. // // GB12. ^ (RI RI)* RI ? RI
  186. // // GB13. [^RI] (RI RI)* RI ? RI
  187. // let mut r_iIndex = all.last_index_of(Regional_Indicator)
  188. // if(r_iIndex > 0 &&
  189. // all.slice(1, r_iIndex).every(function(c){return c == Regional_Indicator}) &&
  190. // [Prepend, Regional_Indicator].index_of(previous) == -1) {
  191. // if(all.filter(function(c){return c == Regional_Indicator}).length % 2 == 1) {
  192. // return BreakLastRegional
  193. // }
  194. // else {
  195. // return BreakPenultimateRegional
  196. // }
  197. // }
  198. //
  199. // // GB3. CR X LF
  200. // if(previous == CR && next == LF){
  201. // return NotBreak;
  202. // }
  203. // // GB4. (Control|CR|LF) รท
  204. // else if(previous == Control || previous == CR || previous == LF){
  205. // if(next == E_Modifier && mid.every(function(c){return c == Extend})){
  206. // return Break
  207. // }
  208. // else {
  209. // return BreakStart
  210. // }
  211. // }
  212. // // GB5. รท (Control|CR|LF)
  213. // else if(next == Control || next == CR || next == LF){
  214. // return BreakStart;
  215. // }
  216. // // GB6. L X (L|V|LV|LVT)
  217. // else if(previous == L &&
  218. // (next == L || next == V || next == LV || next == LVT)){
  219. // return NotBreak;
  220. // }
  221. // // GB7. (LV|V) X (V|T)
  222. // else if((previous == LV || previous == V) &&
  223. // (next == V || next == T)){
  224. // return NotBreak;
  225. // }
  226. // // GB8. (LVT|T) X (T)
  227. // else if((previous == LVT || previous == T) &&
  228. // next == T){
  229. // return NotBreak;
  230. // }
  231. // // GB9. X (Extend|ZWJ)
  232. // else if (next == Extend || next == ZWJ){
  233. // return NotBreak;
  234. // }
  235. // // GB9a. X SpacingMark
  236. // else if(next == SpacingMark){
  237. // return NotBreak;
  238. // }
  239. // // GB9b. Prepend X
  240. // else if (previous == Prepend){
  241. // return NotBreak;
  242. // }
  243. //
  244. // // GB10. (E_Base | EBG) Extend* ? E_Modifier
  245. // let mut previous_non_extend_index = all.index_of(Extend) != -1 ? all.last_index_of(Extend) - 1 : all.length - 2;
  246. // if([E_Base, E_Base_GAZ].index_of(all[previous_non_extend_index]) != -1 &&
  247. // all.slice(previous_non_extend_index + 1, -1).every(function(c){return c == Extend}) &&
  248. // next == E_Modifier){
  249. // return NotBreak;
  250. // }
  251. //
  252. // // GB11. ZWJ ? (Glue_After_Zwj | EBG)
  253. // if(previous == ZWJ && [Glue_After_Zwj, E_Base_GAZ].index_of(next) != -1) {
  254. // return NotBreak;
  255. // }
  256. //
  257. // // GB12. ^ (RI RI)* RI ? RI
  258. // // GB13. [^RI] (RI RI)* RI ? RI
  259. // if(mid.index_of(Regional_Indicator) != -1) {
  260. // return Break;
  261. // }
  262. // if(previous == Regional_Indicator && next == Regional_Indicator) {
  263. // return NotBreak;
  264. // }
  265. //
  266. // // GB999. Any ? Any
  267. // return BreakStart;
  268. //}
  269. //
  270. //// Returns the next grapheme break in the string after the given index
  271. //fn next_break(s: &str, index: usize) -> Breaks {
  272. // // if(index < 0){
  273. // // return 0;
  274. // // }
  275. // if(index >= s.len() - 1){
  276. // return s.len().into();
  277. // }
  278. // let mut prev = get_grapheme_break_property(code_point_at(s, index));
  279. // let mut mid = []
  280. // for (let mut i = index + 1; i < s.len(); i++) {
  281. // // check for already processed low surrogates
  282. // if(is_surrogate(string, i - 1)){
  283. // continue;
  284. // }
  285. //
  286. // let mut next = get_grapheme_break_property(code_point_at(s, i));
  287. // if(should_break(prev, mid, next)){
  288. // return i.into();
  289. // }
  290. //
  291. // mid.push(next);
  292. // }
  293. // return s.len().into();
  294. //};
  295. //
  296. //// Breaks the given string into an array of grapheme cluster strings
  297. //fn split_graphemes(s: &str) -> Vec<&str> {
  298. // let mut res = Vec::new()
  299. // let mut index = 0;
  300. //
  301. // while let Some(brk) = next_break(s, index) {
  302. // res.push(&s[index..brk]);
  303. // index = brk;
  304. // }
  305. //
  306. // if(index < s.len()){
  307. // res.push(&s[index..]);
  308. // }
  309. //
  310. // return res;
  311. //};
  312. //
  313. //// Returns the iterator of grapheme clusters there are in the given string
  314. ////fn iterate_graphemes(s: &str) {
  315. //// let mut index = 0;
  316. //// let mut res = {
  317. //// next: (function() {
  318. //// let mut value;
  319. //// let mut brk;
  320. //// if ((brk = this.next_break(str, index)) < str.length) {
  321. //// value = str.slice(index, brk);
  322. //// index = brk;
  323. //// return { value: value, done: false };
  324. //// }
  325. //// if (index < str.length) {
  326. //// value = str.slice(index);
  327. //// index = str.length;
  328. //// return { value: value, done: false };
  329. //// }
  330. //// return { value: undefined, done: true };
  331. //// }).bind(this)
  332. //// };
  333. //// // ES2015 @@iterator method (iterable) for spread syntax and for...of statement
  334. //// if (typeof Symbol !== 'undefined' && Symbol.iterator) {
  335. //// res[Symbol.iterator] = function() {return res};
  336. //// }
  337. //// return res;
  338. ////};
  339. //
  340. //// Returns the number of grapheme clusters there are in the given string
  341. //fn count_graphemes(s:&str) -> usize {
  342. // let mut count = 0;
  343. // let mut index = 0;
  344. // while let Some(brk) = next_break(s, index) {
  345. // index = brk;
  346. // count++;
  347. // }
  348. //
  349. // if(index < s.len()){
  350. // count++;
  351. // }
  352. //
  353. // return count;
  354. //};
  355. //
  356. ////given a Unicode code point, determines this symbol's grapheme break property
  357. //fn get_grapheme_break_property(code: u8) -> Property {
  358. //
  359. // //grapheme break property for Unicode 10.0.0,
  360. // //taken from http://www.unicode.org/Public/10.0.0/ucd/auxiliary/grapheme_break_property.txt
  361. // //and adapted to java_script rules
  362. //
  363. // if(
  364. // (0x0600 <= code && code <= 0x0605) || // Cf [6] ARABIC NUMBER SIGN..ARABIC NUMBER MARK ABOVE
  365. // 0x06DD == code || // Cf ARABIC END OF AYAH
  366. // 0x070F == code || // Cf SYRIAC ABBREVIATION MARK
  367. // 0x08E2 == code || // Cf ARABIC DISPUTED END OF AYAH
  368. // 0x0D4E == code || // Lo MALAYALAM LETTER DOT REPH
  369. // 0x110BD == code || // Cf KAITHI NUMBER SIGN
  370. // (0x111C2 <= code && code <= 0x111C3) || // Lo [2] SHARADA SIGN JIHVAMULIYA..SHARADA SIGN UPADHMANIYA
  371. // 0x11A3A == code || // Lo ZANABAZAR SQUARE CLUSTER-INITIAL LETTER RA
  372. // (0x11A86 <= code && code <= 0x11A89) || // Lo [4] SOYOMBO CLUSTER-INITIAL LETTER RA..SOYOMBO CLUSTER-INITIAL LETTER SA
  373. // 0x11D46 == code // Lo MASARAM GONDI REPHA
  374. // ){
  375. // return Prepend;
  376. // }
  377. // if(
  378. // 0x000D == code // Cc <control-000D>
  379. // ){
  380. // return CR;
  381. // }
  382. //
  383. // if(
  384. // 0x000A == code // Cc <control-000A>
  385. // ){
  386. // return LF;
  387. // }
  388. //
  389. //
  390. // if(
  391. // (0x0000 <= code && code <= 0x0009) || // Cc [10] <control-0000>..<control-0009>
  392. // (0x000B <= code && code <= 0x000C) || // Cc [2] <control-000B>..<control-000C>
  393. // (0x000E <= code && code <= 0x001F) || // Cc [18] <control-000E>..<control-001F>
  394. // (0x007F <= code && code <= 0x009F) || // Cc [33] <control-007F>..<control-009F>
  395. // 0x00AD == code || // Cf SOFT HYPHEN
  396. // 0x061C == code || // Cf ARABIC LETTER MARK
  397. //
  398. // 0x180E == code || // Cf MONGOLIAN VOWEL SEPARATOR
  399. // 0x200B == code || // Cf ZERO WIDTH SPACE
  400. // (0x200E <= code && code <= 0x200F) || // Cf [2] LEFT-TO-RIGHT MARK..RIGHT-TO-LEFT MARK
  401. // 0x2028 == code || // Zl LINE SEPARATOR
  402. // 0x2029 == code || // Zp PARAGRAPH SEPARATOR
  403. // (0x202A <= code && code <= 0x202E) || // Cf [5] LEFT-TO-RIGHT EMBEDDING..RIGHT-TO-LEFT OVERRIDE
  404. // (0x2060 <= code && code <= 0x2064) || // Cf [5] WORD JOINER..INVISIBLE PLUS
  405. // 0x2065 == code || // Cn <reserved-2065>
  406. // (0x2066 <= code && code <= 0x206F) || // Cf [10] LEFT-TO-RIGHT ISOLATE..NOMINAL DIGIT SHAPES
  407. // (0x_d800 <= code && code <= 0x_dFFF) || // Cs [2048] <surrogate-D800>..<surrogate-DFFF>
  408. // 0x_fEFF == code || // Cf ZERO WIDTH NO-BREAK SPACE
  409. // (0x_fFF0 <= code && code <= 0x_fFF8) || // Cn [9] <reserved-FFF0>..<reserved-FFF8>
  410. // (0x_fFF9 <= code && code <= 0x_fFFB) || // Cf [3] INTERLINEAR ANNOTATION ANCHOR..INTERLINEAR ANNOTATION TERMINATOR
  411. // (0x1BCA0 <= code && code <= 0x1BCA3) || // Cf [4] SHORTHAND FORMAT LETTER OVERLAP..SHORTHAND FORMAT UP STEP
  412. // (0x1D173 <= code && code <= 0x1D17A) || // Cf [8] MUSICAL SYMBOL BEGIN BEAM..MUSICAL SYMBOL END PHRASE
  413. // 0x_e0000 == code || // Cn <reserved-E0000>
  414. // 0x_e0001 == code || // Cf LANGUAGE TAG
  415. // (0x_e0002 <= code && code <= 0x_e001F) || // Cn [30] <reserved-E0002>..<reserved-E001F>
  416. // (0x_e0080 <= code && code <= 0x_e00FF) || // Cn [128] <reserved-E0080>..<reserved-E00FF>
  417. // (0x_e01F0 <= code && code <= 0x_e0FFF) // Cn [3600] <reserved-E01F0>..<reserved-E0FFF>
  418. // ){
  419. // return Control;
  420. // }
  421. //
  422. //
  423. // if(
  424. // (0x0300 <= code && code <= 0x036F) || // Mn [112] COMBINING GRAVE ACCENT..COMBINING LATIN SMALL LETTER X
  425. // (0x0483 <= code && code <= 0x0487) || // Mn [5] COMBINING CYRILLIC TITLO..COMBINING CYRILLIC POKRYTIE
  426. // (0x0488 <= code && code <= 0x0489) || // Me [2] COMBINING CYRILLIC HUNDRED THOUSANDS SIGN..COMBINING CYRILLIC MILLIONS SIGN
  427. // (0x0591 <= code && code <= 0x05BD) || // Mn [45] HEBREW ACCENT ETNAHTA..HEBREW POINT METEG
  428. // 0x05BF == code || // Mn HEBREW POINT RAFE
  429. // (0x05C1 <= code && code <= 0x05C2) || // Mn [2] HEBREW POINT SHIN DOT..HEBREW POINT SIN DOT
  430. // (0x05C4 <= code && code <= 0x05C5) || // Mn [2] HEBREW MARK UPPER DOT..HEBREW MARK LOWER DOT
  431. // 0x05C7 == code || // Mn HEBREW POINT QAMATS QATAN
  432. // (0x0610 <= code && code <= 0x061A) || // Mn [11] ARABIC SIGN SALLALLAHOU ALAYHE WASSALLAM..ARABIC SMALL KASRA
  433. // (0x064B <= code && code <= 0x065F) || // Mn [21] ARABIC FATHATAN..ARABIC WAVY HAMZA BELOW
  434. // 0x0670 == code || // Mn ARABIC LETTER SUPERSCRIPT ALEF
  435. // (0x06D6 <= code && code <= 0x06DC) || // Mn [7] ARABIC SMALL HIGH LIGATURE SAD WITH LAM WITH ALEF MAKSURA..ARABIC SMALL HIGH SEEN
  436. // (0x06DF <= code && code <= 0x06E4) || // Mn [6] ARABIC SMALL HIGH ROUNDED ZERO..ARABIC SMALL HIGH MADDA
  437. // (0x06E7 <= code && code <= 0x06E8) || // Mn [2] ARABIC SMALL HIGH YEH..ARABIC SMALL HIGH NOON
  438. // (0x06EA <= code && code <= 0x06ED) || // Mn [4] ARABIC EMPTY CENTRE LOW STOP..ARABIC SMALL LOW MEEM
  439. // 0x0711 == code || // Mn SYRIAC LETTER SUPERSCRIPT ALAPH
  440. // (0x0730 <= code && code <= 0x074A) || // Mn [27] SYRIAC PTHAHA ABOVE..SYRIAC BARREKH
  441. // (0x07A6 <= code && code <= 0x07B0) || // Mn [11] THAANA ABAFILI..THAANA SUKUN
  442. // (0x07EB <= code && code <= 0x07F3) || // Mn [9] NKO COMBINING SHORT HIGH TONE..NKO COMBINING DOUBLE DOT ABOVE
  443. // (0x0816 <= code && code <= 0x0819) || // Mn [4] SAMARITAN MARK IN..SAMARITAN MARK DAGESH
  444. // (0x081B <= code && code <= 0x0823) || // Mn [9] SAMARITAN MARK EPENTHETIC YUT..SAMARITAN VOWEL SIGN A
  445. // (0x0825 <= code && code <= 0x0827) || // Mn [3] SAMARITAN VOWEL SIGN SHORT A..SAMARITAN VOWEL SIGN U
  446. // (0x0829 <= code && code <= 0x082D) || // Mn [5] SAMARITAN VOWEL SIGN LONG I..SAMARITAN MARK NEQUDAA
  447. // (0x0859 <= code && code <= 0x085B) || // Mn [3] MANDAIC AFFRICATION MARK..MANDAIC GEMINATION MARK
  448. // (0x08D4 <= code && code <= 0x08E1) || // Mn [14] ARABIC SMALL HIGH WORD AR-RUB..ARABIC SMALL HIGH SIGN SAFHA
  449. // (0x08E3 <= code && code <= 0x0902) || // Mn [32] ARABIC TURNED DAMMA BELOW..DEVANAGARI SIGN ANUSVARA
  450. // 0x093A == code || // Mn DEVANAGARI VOWEL SIGN OE
  451. // 0x093C == code || // Mn DEVANAGARI SIGN NUKTA
  452. // (0x0941 <= code && code <= 0x0948) || // Mn [8] DEVANAGARI VOWEL SIGN U..DEVANAGARI VOWEL SIGN AI
  453. // 0x094D == code || // Mn DEVANAGARI SIGN VIRAMA
  454. // (0x0951 <= code && code <= 0x0957) || // Mn [7] DEVANAGARI STRESS SIGN UDATTA..DEVANAGARI VOWEL SIGN UUE
  455. // (0x0962 <= code && code <= 0x0963) || // Mn [2] DEVANAGARI VOWEL SIGN VOCALIC L..DEVANAGARI VOWEL SIGN VOCALIC LL
  456. // 0x0981 == code || // Mn BENGALI SIGN CANDRABINDU
  457. // 0x09BC == code || // Mn BENGALI SIGN NUKTA
  458. // 0x09BE == code || // Mc BENGALI VOWEL SIGN AA
  459. // (0x09C1 <= code && code <= 0x09C4) || // Mn [4] BENGALI VOWEL SIGN U..BENGALI VOWEL SIGN VOCALIC RR
  460. // 0x09CD == code || // Mn BENGALI SIGN VIRAMA
  461. // 0x09D7 == code || // Mc BENGALI AU LENGTH MARK
  462. // (0x09E2 <= code && code <= 0x09E3) || // Mn [2] BENGALI VOWEL SIGN VOCALIC L..BENGALI VOWEL SIGN VOCALIC LL
  463. // (0x0A01 <= code && code <= 0x0A02) || // Mn [2] GURMUKHI SIGN ADAK BINDI..GURMUKHI SIGN BINDI
  464. // 0x0A3C == code || // Mn GURMUKHI SIGN NUKTA
  465. // (0x0A41 <= code && code <= 0x0A42) || // Mn [2] GURMUKHI VOWEL SIGN U..GURMUKHI VOWEL SIGN UU
  466. // (0x0A47 <= code && code <= 0x0A48) || // Mn [2] GURMUKHI VOWEL SIGN EE..GURMUKHI VOWEL SIGN AI
  467. // (0x0A4B <= code && code <= 0x0A4D) || // Mn [3] GURMUKHI VOWEL SIGN OO..GURMUKHI SIGN VIRAMA
  468. // 0x0A51 == code || // Mn GURMUKHI SIGN UDAAT
  469. // (0x0A70 <= code && code <= 0x0A71) || // Mn [2] GURMUKHI TIPPI..GURMUKHI ADDAK
  470. // 0x0A75 == code || // Mn GURMUKHI SIGN YAKASH
  471. // (0x0A81 <= code && code <= 0x0A82) || // Mn [2] GUJARATI SIGN CANDRABINDU..GUJARATI SIGN ANUSVARA
  472. // 0x0ABC == code || // Mn GUJARATI SIGN NUKTA
  473. // (0x0AC1 <= code && code <= 0x0AC5) || // Mn [5] GUJARATI VOWEL SIGN U..GUJARATI VOWEL SIGN CANDRA E
  474. // (0x0AC7 <= code && code <= 0x0AC8) || // Mn [2] GUJARATI VOWEL SIGN E..GUJARATI VOWEL SIGN AI
  475. // 0x0ACD == code || // Mn GUJARATI SIGN VIRAMA
  476. // (0x0AE2 <= code && code <= 0x0AE3) || // Mn [2] GUJARATI VOWEL SIGN VOCALIC L..GUJARATI VOWEL SIGN VOCALIC LL
  477. // (0x0AFA <= code && code <= 0x0AFF) || // Mn [6] GUJARATI SIGN SUKUN..GUJARATI SIGN TWO-CIRCLE NUKTA ABOVE
  478. // 0x0B01 == code || // Mn ORIYA SIGN CANDRABINDU
  479. // 0x0B3C == code || // Mn ORIYA SIGN NUKTA
  480. // 0x0B3E == code || // Mc ORIYA VOWEL SIGN AA
  481. // 0x0B3F == code || // Mn ORIYA VOWEL SIGN I
  482. // (0x0B41 <= code && code <= 0x0B44) || // Mn [4] ORIYA VOWEL SIGN U..ORIYA VOWEL SIGN VOCALIC RR
  483. // 0x0B4D == code || // Mn ORIYA SIGN VIRAMA
  484. // 0x0B56 == code || // Mn ORIYA AI LENGTH MARK
  485. // 0x0B57 == code || // Mc ORIYA AU LENGTH MARK
  486. // (0x0B62 <= code && code <= 0x0B63) || // Mn [2] ORIYA VOWEL SIGN VOCALIC L..ORIYA VOWEL SIGN VOCALIC LL
  487. // 0x0B82 == code || // Mn TAMIL SIGN ANUSVARA
  488. // 0x0BBE == code || // Mc TAMIL VOWEL SIGN AA
  489. // 0x0BC0 == code || // Mn TAMIL VOWEL SIGN II
  490. // 0x0BCD == code || // Mn TAMIL SIGN VIRAMA
  491. // 0x0BD7 == code || // Mc TAMIL AU LENGTH MARK
  492. // 0x0C00 == code || // Mn TELUGU SIGN COMBINING CANDRABINDU ABOVE
  493. // (0x0C3E <= code && code <= 0x0C40) || // Mn [3] TELUGU VOWEL SIGN AA..TELUGU VOWEL SIGN II
  494. // (0x0C46 <= code && code <= 0x0C48) || // Mn [3] TELUGU VOWEL SIGN E..TELUGU VOWEL SIGN AI
  495. // (0x0C4A <= code && code <= 0x0C4D) || // Mn [4] TELUGU VOWEL SIGN O..TELUGU SIGN VIRAMA
  496. // (0x0C55 <= code && code <= 0x0C56) || // Mn [2] TELUGU LENGTH MARK..TELUGU AI LENGTH MARK
  497. // (0x0C62 <= code && code <= 0x0C63) || // Mn [2] TELUGU VOWEL SIGN VOCALIC L..TELUGU VOWEL SIGN VOCALIC LL
  498. // 0x0C81 == code || // Mn KANNADA SIGN CANDRABINDU
  499. // 0x0CBC == code || // Mn KANNADA SIGN NUKTA
  500. // 0x0CBF == code || // Mn KANNADA VOWEL SIGN I
  501. // 0x0CC2 == code || // Mc KANNADA VOWEL SIGN UU
  502. // 0x0CC6 == code || // Mn KANNADA VOWEL SIGN E
  503. // (0x0CCC <= code && code <= 0x0CCD) || // Mn [2] KANNADA VOWEL SIGN AU..KANNADA SIGN VIRAMA
  504. // (0x0CD5 <= code && code <= 0x0CD6) || // Mc [2] KANNADA LENGTH MARK..KANNADA AI LENGTH MARK
  505. // (0x0CE2 <= code && code <= 0x0CE3) || // Mn [2] KANNADA VOWEL SIGN VOCALIC L..KANNADA VOWEL SIGN VOCALIC LL
  506. // (0x0D00 <= code && code <= 0x0D01) || // Mn [2] MALAYALAM SIGN COMBINING ANUSVARA ABOVE..MALAYALAM SIGN CANDRABINDU
  507. // (0x0D3B <= code && code <= 0x0D3C) || // Mn [2] MALAYALAM SIGN VERTICAL BAR VIRAMA..MALAYALAM SIGN CIRCULAR VIRAMA
  508. // 0x0D3E == code || // Mc MALAYALAM VOWEL SIGN AA
  509. // (0x0D41 <= code && code <= 0x0D44) || // Mn [4] MALAYALAM VOWEL SIGN U..MALAYALAM VOWEL SIGN VOCALIC RR
  510. // 0x0D4D == code || // Mn MALAYALAM SIGN VIRAMA
  511. // 0x0D57 == code || // Mc MALAYALAM AU LENGTH MARK
  512. // (0x0D62 <= code && code <= 0x0D63) || // Mn [2] MALAYALAM VOWEL SIGN VOCALIC L..MALAYALAM VOWEL SIGN VOCALIC LL
  513. // 0x0DCA == code || // Mn SINHALA SIGN AL-LAKUNA
  514. // 0x0DCF == code || // Mc SINHALA VOWEL SIGN AELA-PILLA
  515. // (0x0DD2 <= code && code <= 0x0DD4) || // Mn [3] SINHALA VOWEL SIGN KETTI IS-PILLA..SINHALA VOWEL SIGN KETTI PAA-PILLA
  516. // 0x0DD6 == code || // Mn SINHALA VOWEL SIGN DIGA PAA-PILLA
  517. // 0x0DDF == code || // Mc SINHALA VOWEL SIGN GAYANUKITTA
  518. // 0x0E31 == code || // Mn THAI CHARACTER MAI HAN-AKAT
  519. // (0x0E34 <= code && code <= 0x0E3A) || // Mn [7] THAI CHARACTER SARA I..THAI CHARACTER PHINTHU
  520. // (0x0E47 <= code && code <= 0x0E4E) || // Mn [8] THAI CHARACTER MAITAIKHU..THAI CHARACTER YAMAKKAN
  521. // 0x0EB1 == code || // Mn LAO VOWEL SIGN MAI KAN
  522. // (0x0EB4 <= code && code <= 0x0EB9) || // Mn [6] LAO VOWEL SIGN I..LAO VOWEL SIGN UU
  523. // (0x0EBB <= code && code <= 0x0EBC) || // Mn [2] LAO VOWEL SIGN MAI KON..LAO SEMIVOWEL SIGN LO
  524. // (0x0EC8 <= code && code <= 0x0ECD) || // Mn [6] LAO TONE MAI EK..LAO NIGGAHITA
  525. // (0x0F18 <= code && code <= 0x0F19) || // Mn [2] TIBETAN ASTROLOGICAL SIGN -KHYUD PA..TIBETAN ASTROLOGICAL SIGN SDONG TSHUGS
  526. // 0x0F35 == code || // Mn TIBETAN MARK NGAS BZUNG NYI ZLA
  527. // 0x0F37 == code || // Mn TIBETAN MARK NGAS BZUNG SGOR RTAGS
  528. // 0x0F39 == code || // Mn TIBETAN MARK TSA -PHRU
  529. // (0x0F71 <= code && code <= 0x0F7E) || // Mn [14] TIBETAN VOWEL SIGN AA..TIBETAN SIGN RJES SU NGA RO
  530. // (0x0F80 <= code && code <= 0x0F84) || // Mn [5] TIBETAN VOWEL SIGN REVERSED I..TIBETAN MARK HALANTA
  531. // (0x0F86 <= code && code <= 0x0F87) || // Mn [2] TIBETAN SIGN LCI RTAGS..TIBETAN SIGN YANG RTAGS
  532. // (0x0F8D <= code && code <= 0x0F97) || // Mn [11] TIBETAN SUBJOINED SIGN LCE TSA CAN..TIBETAN SUBJOINED LETTER JA
  533. // (0x0F99 <= code && code <= 0x0FBC) || // Mn [36] TIBETAN SUBJOINED LETTER NYA..TIBETAN SUBJOINED LETTER FIXED-FORM RA
  534. // 0x0FC6 == code || // Mn TIBETAN SYMBOL PADMA GDAN
  535. // (0x102D <= code && code <= 0x1030) || // Mn [4] MYANMAR VOWEL SIGN I..MYANMAR VOWEL SIGN UU
  536. // (0x1032 <= code && code <= 0x1037) || // Mn [6] MYANMAR VOWEL SIGN AI..MYANMAR SIGN DOT BELOW
  537. // (0x1039 <= code && code <= 0x103A) || // Mn [2] MYANMAR SIGN VIRAMA..MYANMAR SIGN ASAT
  538. // (0x103D <= code && code <= 0x103E) || // Mn [2] MYANMAR CONSONANT SIGN MEDIAL WA..MYANMAR CONSONANT SIGN MEDIAL HA
  539. // (0x1058 <= code && code <= 0x1059) || // Mn [2] MYANMAR VOWEL SIGN VOCALIC L..MYANMAR VOWEL SIGN VOCALIC LL
  540. // (0x105E <= code && code <= 0x1060) || // Mn [3] MYANMAR CONSONANT SIGN MON MEDIAL NA..MYANMAR CONSONANT SIGN MON MEDIAL LA
  541. // (0x1071 <= code && code <= 0x1074) || // Mn [4] MYANMAR VOWEL SIGN GEBA KAREN I..MYANMAR VOWEL SIGN KAYAH EE
  542. // 0x1082 == code || // Mn MYANMAR CONSONANT SIGN SHAN MEDIAL WA
  543. // (0x1085 <= code && code <= 0x1086) || // Mn [2] MYANMAR VOWEL SIGN SHAN E ABOVE..MYANMAR VOWEL SIGN SHAN FINAL Y
  544. // 0x108D == code || // Mn MYANMAR SIGN SHAN COUNCIL EMPHATIC TONE
  545. // 0x109D == code || // Mn MYANMAR VOWEL SIGN AITON AI
  546. // (0x135D <= code && code <= 0x135F) || // Mn [3] ETHIOPIC COMBINING GEMINATION AND VOWEL LENGTH MARK..ETHIOPIC COMBINING GEMINATION MARK
  547. // (0x1712 <= code && code <= 0x1714) || // Mn [3] TAGALOG VOWEL SIGN I..TAGALOG SIGN VIRAMA
  548. // (0x1732 <= code && code <= 0x1734) || // Mn [3] HANUNOO VOWEL SIGN I..HANUNOO SIGN PAMUDPOD
  549. // (0x1752 <= code && code <= 0x1753) || // Mn [2] BUHID VOWEL SIGN I..BUHID VOWEL SIGN U
  550. // (0x1772 <= code && code <= 0x1773) || // Mn [2] TAGBANWA VOWEL SIGN I..TAGBANWA VOWEL SIGN U
  551. // (0x17B4 <= code && code <= 0x17B5) || // Mn [2] KHMER VOWEL INHERENT AQ..KHMER VOWEL INHERENT AA
  552. // (0x17B7 <= code && code <= 0x17BD) || // Mn [7] KHMER VOWEL SIGN I..KHMER VOWEL SIGN UA
  553. // 0x17C6 == code || // Mn KHMER SIGN NIKAHIT
  554. // (0x17C9 <= code && code <= 0x17D3) || // Mn [11] KHMER SIGN MUUSIKATOAN..KHMER SIGN BATHAMASAT
  555. // 0x17DD == code || // Mn KHMER SIGN ATTHACAN
  556. // (0x180B <= code && code <= 0x180D) || // Mn [3] MONGOLIAN FREE VARIATION SELECTOR ONE..MONGOLIAN FREE VARIATION SELECTOR THREE
  557. // (0x1885 <= code && code <= 0x1886) || // Mn [2] MONGOLIAN LETTER ALI GALI BALUDA..MONGOLIAN LETTER ALI GALI THREE BALUDA
  558. // 0x18A9 == code || // Mn MONGOLIAN LETTER ALI GALI DAGALGA
  559. // (0x1920 <= code && code <= 0x1922) || // Mn [3] LIMBU VOWEL SIGN A..LIMBU VOWEL SIGN U
  560. // (0x1927 <= code && code <= 0x1928) || // Mn [2] LIMBU VOWEL SIGN E..LIMBU VOWEL SIGN O
  561. // 0x1932 == code || // Mn LIMBU SMALL LETTER ANUSVARA
  562. // (0x1939 <= code && code <= 0x193B) || // Mn [3] LIMBU SIGN MUKPHRENG..LIMBU SIGN SA-I
  563. // (0x1A17 <= code && code <= 0x1A18) || // Mn [2] BUGINESE VOWEL SIGN I..BUGINESE VOWEL SIGN U
  564. // 0x1A1B == code || // Mn BUGINESE VOWEL SIGN AE
  565. // 0x1A56 == code || // Mn TAI THAM CONSONANT SIGN MEDIAL LA
  566. // (0x1A58 <= code && code <= 0x1A5E) || // Mn [7] TAI THAM SIGN MAI KANG LAI..TAI THAM CONSONANT SIGN SA
  567. // 0x1A60 == code || // Mn TAI THAM SIGN SAKOT
  568. // 0x1A62 == code || // Mn TAI THAM VOWEL SIGN MAI SAT
  569. // (0x1A65 <= code && code <= 0x1A6C) || // Mn [8] TAI THAM VOWEL SIGN I..TAI THAM VOWEL SIGN OA BELOW
  570. // (0x1A73 <= code && code <= 0x1A7C) || // Mn [10] TAI THAM VOWEL SIGN OA ABOVE..TAI THAM SIGN KHUEN-LUE KARAN
  571. // 0x1A7F == code || // Mn TAI THAM COMBINING CRYPTOGRAMMIC DOT
  572. // (0x1AB0 <= code && code <= 0x1ABD) || // Mn [14] COMBINING DOUBLED CIRCUMFLEX ACCENT..COMBINING PARENTHESES BELOW
  573. // 0x1ABE == code || // Me COMBINING PARENTHESES OVERLAY
  574. // (0x1B00 <= code && code <= 0x1B03) || // Mn [4] BALINESE SIGN ULU RICEM..BALINESE SIGN SURANG
  575. // 0x1B34 == code || // Mn BALINESE SIGN REREKAN
  576. // (0x1B36 <= code && code <= 0x1B3A) || // Mn [5] BALINESE VOWEL SIGN ULU..BALINESE VOWEL SIGN RA REPA
  577. // 0x1B3C == code || // Mn BALINESE VOWEL SIGN LA LENGA
  578. // 0x1B42 == code || // Mn BALINESE VOWEL SIGN PEPET
  579. // (0x1B6B <= code && code <= 0x1B73) || // Mn [9] BALINESE MUSICAL SYMBOL COMBINING TEGEH..BALINESE MUSICAL SYMBOL COMBINING GONG
  580. // (0x1B80 <= code && code <= 0x1B81) || // Mn [2] SUNDANESE SIGN PANYECEK..SUNDANESE SIGN PANGLAYAR
  581. // (0x1BA2 <= code && code <= 0x1BA5) || // Mn [4] SUNDANESE CONSONANT SIGN PANYAKRA..SUNDANESE VOWEL SIGN PANYUKU
  582. // (0x1BA8 <= code && code <= 0x1BA9) || // Mn [2] SUNDANESE VOWEL SIGN PAMEPET..SUNDANESE VOWEL SIGN PANEULEUNG
  583. // (0x1BAB <= code && code <= 0x1BAD) || // Mn [3] SUNDANESE SIGN VIRAMA..SUNDANESE CONSONANT SIGN PASANGAN WA
  584. // 0x1BE6 == code || // Mn BATAK SIGN TOMPI
  585. // (0x1BE8 <= code && code <= 0x1BE9) || // Mn [2] BATAK VOWEL SIGN PAKPAK E..BATAK VOWEL SIGN EE
  586. // 0x1BED == code || // Mn BATAK VOWEL SIGN KARO O
  587. // (0x1BEF <= code && code <= 0x1BF1) || // Mn [3] BATAK VOWEL SIGN U FOR SIMALUNGUN SA..BATAK CONSONANT SIGN H
  588. // (0x1C2C <= code && code <= 0x1C33) || // Mn [8] LEPCHA VOWEL SIGN E..LEPCHA CONSONANT SIGN T
  589. // (0x1C36 <= code && code <= 0x1C37) || // Mn [2] LEPCHA SIGN RAN..LEPCHA SIGN NUKTA
  590. // (0x1CD0 <= code && code <= 0x1CD2) || // Mn [3] VEDIC TONE KARSHANA..VEDIC TONE PRENKHA
  591. // (0x1CD4 <= code && code <= 0x1CE0) || // Mn [13] VEDIC SIGN YAJURVEDIC MIDLINE SVARITA..VEDIC TONE RIGVEDIC KASHMIRI INDEPENDENT SVARITA
  592. // (0x1CE2 <= code && code <= 0x1CE8) || // Mn [7] VEDIC SIGN VISARGA SVARITA..VEDIC SIGN VISARGA ANUDATTA WITH TAIL
  593. // 0x1CED == code || // Mn VEDIC SIGN TIRYAK
  594. // 0x1CF4 == code || // Mn VEDIC TONE CANDRA ABOVE
  595. // (0x1CF8 <= code && code <= 0x1CF9) || // Mn [2] VEDIC TONE RING ABOVE..VEDIC TONE DOUBLE RING ABOVE
  596. // (0x1DC0 <= code && code <= 0x1DF9) || // Mn [58] COMBINING DOTTED GRAVE ACCENT..COMBINING WIDE INVERTED BRIDGE BELOW
  597. // (0x1DFB <= code && code <= 0x1DFF) || // Mn [5] COMBINING DELETION MARK..COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW
  598. // 0x200C == code || // Cf ZERO WIDTH NON-JOINER
  599. // (0x20D0 <= code && code <= 0x20DC) || // Mn [13] COMBINING LEFT HARPOON ABOVE..COMBINING FOUR DOTS ABOVE
  600. // (0x20DD <= code && code <= 0x20E0) || // Me [4] COMBINING ENCLOSING CIRCLE..COMBINING ENCLOSING CIRCLE BACKSLASH
  601. // 0x20E1 == code || // Mn COMBINING LEFT RIGHT ARROW ABOVE
  602. // (0x20E2 <= code && code <= 0x20E4) || // Me [3] COMBINING ENCLOSING SCREEN..COMBINING ENCLOSING UPWARD POINTING TRIANGLE
  603. // (0x20E5 <= code && code <= 0x20F0) || // Mn [12] COMBINING REVERSE SOLIDUS OVERLAY..COMBINING ASTERISK ABOVE
  604. // (0x2CEF <= code && code <= 0x2CF1) || // Mn [3] COPTIC COMBINING NI ABOVE..COPTIC COMBINING SPIRITUS LENIS
  605. // 0x2D7F == code || // Mn TIFINAGH CONSONANT JOINER
  606. // (0x2DE0 <= code && code <= 0x2DFF) || // Mn [32] COMBINING CYRILLIC LETTER BE..COMBINING CYRILLIC LETTER IOTIFIED BIG YUS
  607. // (0x302A <= code && code <= 0x302D) || // Mn [4] IDEOGRAPHIC LEVEL TONE MARK..IDEOGRAPHIC ENTERING TONE MARK
  608. // (0x302E <= code && code <= 0x302F) || // Mc [2] HANGUL SINGLE DOT TONE MARK..HANGUL DOUBLE DOT TONE MARK
  609. // (0x3099 <= code && code <= 0x309A) || // Mn [2] COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK..COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
  610. // 0x_a66F == code || // Mn COMBINING CYRILLIC VZMET
  611. // (0x_a670 <= code && code <= 0x_a672) || // Me [3] COMBINING CYRILLIC TEN MILLIONS SIGN..COMBINING CYRILLIC THOUSAND MILLIONS SIGN
  612. // (0x_a674 <= code && code <= 0x_a67D) || // Mn [10] COMBINING CYRILLIC LETTER UKRAINIAN IE..COMBINING CYRILLIC PAYEROK
  613. // (0x_a69E <= code && code <= 0x_a69F) || // Mn [2] COMBINING CYRILLIC LETTER EF..COMBINING CYRILLIC LETTER IOTIFIED E
  614. // (0x_a6F0 <= code && code <= 0x_a6F1) || // Mn [2] BAMUM COMBINING MARK KOQNDON..BAMUM COMBINING MARK TUKWENTIS
  615. // 0x_a802 == code || // Mn SYLOTI NAGRI SIGN DVISVARA
  616. // 0x_a806 == code || // Mn SYLOTI NAGRI SIGN HASANTA
  617. // 0x_a80B == code || // Mn SYLOTI NAGRI SIGN ANUSVARA
  618. // (0x_a825 <= code && code <= 0x_a826) || // Mn [2] SYLOTI NAGRI VOWEL SIGN U..SYLOTI NAGRI VOWEL SIGN E
  619. // (0x_a8C4 <= code && code <= 0x_a8C5) || // Mn [2] SAURASHTRA SIGN VIRAMA..SAURASHTRA SIGN CANDRABINDU
  620. // (0x_a8E0 <= code && code <= 0x_a8F1) || // Mn [18] COMBINING DEVANAGARI DIGIT ZERO..COMBINING DEVANAGARI SIGN AVAGRAHA
  621. // (0x_a926 <= code && code <= 0x_a92D) || // Mn [8] KAYAH LI VOWEL UE..KAYAH LI TONE CALYA PLOPHU
  622. // (0x_a947 <= code && code <= 0x_a951) || // Mn [11] REJANG VOWEL SIGN I..REJANG CONSONANT SIGN R
  623. // (0x_a980 <= code && code <= 0x_a982) || // Mn [3] JAVANESE SIGN PANYANGGA..JAVANESE SIGN LAYAR
  624. // 0x_a9B3 == code || // Mn JAVANESE SIGN CECAK TELU
  625. // (0x_a9B6 <= code && code <= 0x_a9B9) || // Mn [4] JAVANESE VOWEL SIGN WULU..JAVANESE VOWEL SIGN SUKU MENDUT
  626. // 0x_a9BC == code || // Mn JAVANESE VOWEL SIGN PEPET
  627. // 0x_a9E5 == code || // Mn MYANMAR SIGN SHAN SAW
  628. // (0x_aA29 <= code && code <= 0x_aA2E) || // Mn [6] CHAM VOWEL SIGN AA..CHAM VOWEL SIGN OE
  629. // (0x_aA31 <= code && code <= 0x_aA32) || // Mn [2] CHAM VOWEL SIGN AU..CHAM VOWEL SIGN UE
  630. // (0x_aA35 <= code && code <= 0x_aA36) || // Mn [2] CHAM CONSONANT SIGN LA..CHAM CONSONANT SIGN WA
  631. // 0x_aA43 == code || // Mn CHAM CONSONANT SIGN FINAL NG
  632. // 0x_aA4C == code || // Mn CHAM CONSONANT SIGN FINAL M
  633. // 0x_aA7C == code || // Mn MYANMAR SIGN TAI LAING TONE-2
  634. // 0x_aAB0 == code || // Mn TAI VIET MAI KANG
  635. // (0x_aAB2 <= code && code <= 0x_aAB4) || // Mn [3] TAI VIET VOWEL I..TAI VIET VOWEL U
  636. // (0x_aAB7 <= code && code <= 0x_aAB8) || // Mn [2] TAI VIET MAI KHIT..TAI VIET VOWEL IA
  637. // (0x_aABE <= code && code <= 0x_aABF) || // Mn [2] TAI VIET VOWEL AM..TAI VIET TONE MAI EK
  638. // 0x_aAC1 == code || // Mn TAI VIET TONE MAI THO
  639. // (0x_aAEC <= code && code <= 0x_aAED) || // Mn [2] MEETEI MAYEK VOWEL SIGN UU..MEETEI MAYEK VOWEL SIGN AAI
  640. // 0x_aAF6 == code || // Mn MEETEI MAYEK VIRAMA
  641. // 0x_aBE5 == code || // Mn MEETEI MAYEK VOWEL SIGN ANAP
  642. // 0x_aBE8 == code || // Mn MEETEI MAYEK VOWEL SIGN UNAP
  643. // 0x_aBED == code || // Mn MEETEI MAYEK APUN IYEK
  644. // 0x_fB1E == code || // Mn HEBREW POINT JUDEO-SPANISH VARIKA
  645. // (0x_fE00 <= code && code <= 0x_fE0F) || // Mn [16] VARIATION SELECTOR-1..VARIATION SELECTOR-16
  646. // (0x_fE20 <= code && code <= 0x_fE2F) || // Mn [16] COMBINING LIGATURE LEFT HALF..COMBINING CYRILLIC TITLO RIGHT HALF
  647. // (0x_fF9E <= code && code <= 0x_fF9F) || // Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK
  648. // 0x101FD == code || // Mn PHAISTOS DISC SIGN COMBINING OBLIQUE STROKE
  649. // 0x102E0 == code || // Mn COPTIC EPACT THOUSANDS MARK
  650. // (0x10376 <= code && code <= 0x1037A) || // Mn [5] COMBINING OLD PERMIC LETTER AN..COMBINING OLD PERMIC LETTER SII
  651. // (0x10A01 <= code && code <= 0x10A03) || // Mn [3] KHAROSHTHI VOWEL SIGN I..KHAROSHTHI VOWEL SIGN VOCALIC R
  652. // (0x10A05 <= code && code <= 0x10A06) || // Mn [2] KHAROSHTHI VOWEL SIGN E..KHAROSHTHI VOWEL SIGN O
  653. // (0x10A0C <= code && code <= 0x10A0F) || // Mn [4] KHAROSHTHI VOWEL LENGTH MARK..KHAROSHTHI SIGN VISARGA
  654. // (0x10A38 <= code && code <= 0x10A3A) || // Mn [3] KHAROSHTHI SIGN BAR ABOVE..KHAROSHTHI SIGN DOT BELOW
  655. // 0x10A3F == code || // Mn KHAROSHTHI VIRAMA
  656. // (0x10AE5 <= code && code <= 0x10AE6) || // Mn [2] MANICHAEAN ABBREVIATION MARK ABOVE..MANICHAEAN ABBREVIATION MARK BELOW
  657. // 0x11001 == code || // Mn BRAHMI SIGN ANUSVARA
  658. // (0x11038 <= code && code <= 0x11046) || // Mn [15] BRAHMI VOWEL SIGN AA..BRAHMI VIRAMA
  659. // (0x1107F <= code && code <= 0x11081) || // Mn [3] BRAHMI NUMBER JOINER..KAITHI SIGN ANUSVARA
  660. // (0x110B3 <= code && code <= 0x110B6) || // Mn [4] KAITHI VOWEL SIGN U..KAITHI VOWEL SIGN AI
  661. // (0x110B9 <= code && code <= 0x110BA) || // Mn [2] KAITHI SIGN VIRAMA..KAITHI SIGN NUKTA
  662. // (0x11100 <= code && code <= 0x11102) || // Mn [3] CHAKMA SIGN CANDRABINDU..CHAKMA SIGN VISARGA
  663. // (0x11127 <= code && code <= 0x1112B) || // Mn [5] CHAKMA VOWEL SIGN A..CHAKMA VOWEL SIGN UU
  664. // (0x1112D <= code && code <= 0x11134) || // Mn [8] CHAKMA VOWEL SIGN AI..CHAKMA MAAYYAA
  665. // 0x11173 == code || // Mn MAHAJANI SIGN NUKTA
  666. // (0x11180 <= code && code <= 0x11181) || // Mn [2] SHARADA SIGN CANDRABINDU..SHARADA SIGN ANUSVARA
  667. // (0x111B6 <= code && code <= 0x111BE) || // Mn [9] SHARADA VOWEL SIGN U..SHARADA VOWEL SIGN O
  668. // (0x111CA <= code && code <= 0x111CC) || // Mn [3] SHARADA SIGN NUKTA..SHARADA EXTRA SHORT VOWEL MARK
  669. // (0x1122F <= code && code <= 0x11231) || // Mn [3] KHOJKI VOWEL SIGN U..KHOJKI VOWEL SIGN AI
  670. // 0x11234 == code || // Mn KHOJKI SIGN ANUSVARA
  671. // (0x11236 <= code && code <= 0x11237) || // Mn [2] KHOJKI SIGN NUKTA..KHOJKI SIGN SHADDA
  672. // 0x1123E == code || // Mn KHOJKI SIGN SUKUN
  673. // 0x112DF == code || // Mn KHUDAWADI SIGN ANUSVARA
  674. // (0x112E3 <= code && code <= 0x112EA) || // Mn [8] KHUDAWADI VOWEL SIGN U..KHUDAWADI SIGN VIRAMA
  675. // (0x11300 <= code && code <= 0x11301) || // Mn [2] GRANTHA SIGN COMBINING ANUSVARA ABOVE..GRANTHA SIGN CANDRABINDU
  676. // 0x1133C == code || // Mn GRANTHA SIGN NUKTA
  677. // 0x1133E == code || // Mc GRANTHA VOWEL SIGN AA
  678. // 0x11340 == code || // Mn GRANTHA VOWEL SIGN II
  679. // 0x11357 == code || // Mc GRANTHA AU LENGTH MARK
  680. // (0x11366 <= code && code <= 0x1136C) || // Mn [7] COMBINING GRANTHA DIGIT ZERO..COMBINING GRANTHA DIGIT SIX
  681. // (0x11370 <= code && code <= 0x11374) || // Mn [5] COMBINING GRANTHA LETTER A..COMBINING GRANTHA LETTER PA
  682. // (0x11438 <= code && code <= 0x1143F) || // Mn [8] NEWA VOWEL SIGN U..NEWA VOWEL SIGN AI
  683. // (0x11442 <= code && code <= 0x11444) || // Mn [3] NEWA SIGN VIRAMA..NEWA SIGN ANUSVARA
  684. // 0x11446 == code || // Mn NEWA SIGN NUKTA
  685. // 0x114B0 == code || // Mc TIRHUTA VOWEL SIGN AA
  686. // (0x114B3 <= code && code <= 0x114B8) || // Mn [6] TIRHUTA VOWEL SIGN U..TIRHUTA VOWEL SIGN VOCALIC LL
  687. // 0x114BA == code || // Mn TIRHUTA VOWEL SIGN SHORT E
  688. // 0x114BD == code || // Mc TIRHUTA VOWEL SIGN SHORT O
  689. // (0x114BF <= code && code <= 0x114C0) || // Mn [2] TIRHUTA SIGN CANDRABINDU..TIRHUTA SIGN ANUSVARA
  690. // (0x114C2 <= code && code <= 0x114C3) || // Mn [2] TIRHUTA SIGN VIRAMA..TIRHUTA SIGN NUKTA
  691. // 0x115AF == code || // Mc SIDDHAM VOWEL SIGN AA
  692. // (0x115B2 <= code && code <= 0x115B5) || // Mn [4] SIDDHAM VOWEL SIGN U..SIDDHAM VOWEL SIGN VOCALIC RR
  693. // (0x115BC <= code && code <= 0x115BD) || // Mn [2] SIDDHAM SIGN CANDRABINDU..SIDDHAM SIGN ANUSVARA
  694. // (0x115BF <= code && code <= 0x115C0) || // Mn [2] SIDDHAM SIGN VIRAMA..SIDDHAM SIGN NUKTA
  695. // (0x115DC <= code && code <= 0x115DD) || // Mn [2] SIDDHAM VOWEL SIGN ALTERNATE U..SIDDHAM VOWEL SIGN ALTERNATE UU
  696. // (0x11633 <= code && code <= 0x1163A) || // Mn [8] MODI VOWEL SIGN U..MODI VOWEL SIGN AI
  697. // 0x1163D == code || // Mn MODI SIGN ANUSVARA
  698. // (0x1163F <= code && code <= 0x11640) || // Mn [2] MODI SIGN VIRAMA..MODI SIGN ARDHACANDRA
  699. // 0x116AB == code || // Mn TAKRI SIGN ANUSVARA
  700. // 0x116AD == code || // Mn TAKRI VOWEL SIGN AA
  701. // (0x116B0 <= code && code <= 0x116B5) || // Mn [6] TAKRI VOWEL SIGN U..TAKRI VOWEL SIGN AU
  702. // 0x116B7 == code || // Mn TAKRI SIGN NUKTA
  703. // (0x1171D <= code && code <= 0x1171F) || // Mn [3] AHOM CONSONANT SIGN MEDIAL LA..AHOM CONSONANT SIGN MEDIAL LIGATING RA
  704. // (0x11722 <= code && code <= 0x11725) || // Mn [4] AHOM VOWEL SIGN I..AHOM VOWEL SIGN UU
  705. // (0x11727 <= code && code <= 0x1172B) || // Mn [5] AHOM VOWEL SIGN AW..AHOM SIGN KILLER
  706. // (0x11A01 <= code && code <= 0x11A06) || // Mn [6] ZANABAZAR SQUARE VOWEL SIGN I..ZANABAZAR SQUARE VOWEL SIGN O
  707. // (0x11A09 <= code && code <= 0x11A0A) || // Mn [2] ZANABAZAR SQUARE VOWEL SIGN REVERSED I..ZANABAZAR SQUARE VOWEL LENGTH MARK
  708. // (0x11A33 <= code && code <= 0x11A38) || // Mn [6] ZANABAZAR SQUARE FINAL CONSONANT MARK..ZANABAZAR SQUARE SIGN ANUSVARA
  709. // (0x11A3B <= code && code <= 0x11A3E) || // Mn [4] ZANABAZAR SQUARE CLUSTER-FINAL LETTER YA..ZANABAZAR SQUARE CLUSTER-FINAL LETTER VA
  710. // 0x11A47 == code || // Mn ZANABAZAR SQUARE SUBJOINER
  711. // (0x11A51 <= code && code <= 0x11A56) || // Mn [6] SOYOMBO VOWEL SIGN I..SOYOMBO VOWEL SIGN OE
  712. // (0x11A59 <= code && code <= 0x11A5B) || // Mn [3] SOYOMBO VOWEL SIGN VOCALIC R..SOYOMBO VOWEL LENGTH MARK
  713. // (0x11A8A <= code && code <= 0x11A96) || // Mn [13] SOYOMBO FINAL CONSONANT SIGN G..SOYOMBO SIGN ANUSVARA
  714. // (0x11A98 <= code && code <= 0x11A99) || // Mn [2] SOYOMBO GEMINATION MARK..SOYOMBO SUBJOINER
  715. // (0x11C30 <= code && code <= 0x11C36) || // Mn [7] BHAIKSUKI VOWEL SIGN I..BHAIKSUKI VOWEL SIGN VOCALIC L
  716. // (0x11C38 <= code && code <= 0x11C3D) || // Mn [6] BHAIKSUKI VOWEL SIGN E..BHAIKSUKI SIGN ANUSVARA
  717. // 0x11C3F == code || // Mn BHAIKSUKI SIGN VIRAMA
  718. // (0x11C92 <= code && code <= 0x11CA7) || // Mn [22] MARCHEN SUBJOINED LETTER KA..MARCHEN SUBJOINED LETTER ZA
  719. // (0x11CAA <= code && code <= 0x11CB0) || // Mn [7] MARCHEN SUBJOINED LETTER RA..MARCHEN VOWEL SIGN AA
  720. // (0x11CB2 <= code && code <= 0x11CB3) || // Mn [2] MARCHEN VOWEL SIGN U..MARCHEN VOWEL SIGN E
  721. // (0x11CB5 <= code && code <= 0x11CB6) || // Mn [2] MARCHEN SIGN ANUSVARA..MARCHEN SIGN CANDRABINDU
  722. // (0x11D31 <= code && code <= 0x11D36) || // Mn [6] MASARAM GONDI VOWEL SIGN AA..MASARAM GONDI VOWEL SIGN VOCALIC R
  723. // 0x11D3A == code || // Mn MASARAM GONDI VOWEL SIGN E
  724. // (0x11D3C <= code && code <= 0x11D3D) || // Mn [2] MASARAM GONDI VOWEL SIGN AI..MASARAM GONDI VOWEL SIGN O
  725. // (0x11D3F <= code && code <= 0x11D45) || // Mn [7] MASARAM GONDI VOWEL SIGN AU..MASARAM GONDI VIRAMA
  726. // 0x11D47 == code || // Mn MASARAM GONDI RA-KARA
  727. // (0x16AF0 <= code && code <= 0x16AF4) || // Mn [5] BASSA VAH COMBINING HIGH TONE..BASSA VAH COMBINING HIGH-LOW TONE
  728. // (0x16B30 <= code && code <= 0x16B36) || // Mn [7] PAHAWH HMONG MARK CIM TUB..PAHAWH HMONG MARK CIM TAUM
  729. // (0x16F8F <= code && code <= 0x16F92) || // Mn [4] MIAO TONE RIGHT..MIAO TONE BELOW
  730. // (0x1BC9D <= code && code <= 0x1BC9E) || // Mn [2] DUPLOYAN THICK LETTER SELECTOR..DUPLOYAN DOUBLE MARK
  731. // 0x1D165 == code || // Mc MUSICAL SYMBOL COMBINING STEM
  732. // (0x1D167 <= code && code <= 0x1D169) || // Mn [3] MUSICAL SYMBOL COMBINING TREMOLO-1..MUSICAL SYMBOL COMBINING TREMOLO-3
  733. // (0x1D16E <= code && code <= 0x1D172) || // Mc [5] MUSICAL SYMBOL COMBINING FLAG-1..MUSICAL SYMBOL COMBINING FLAG-5
  734. // (0x1D17B <= code && code <= 0x1D182) || // Mn [8] MUSICAL SYMBOL COMBINING ACCENT..MUSICAL SYMBOL COMBINING LOURE
  735. // (0x1D185 <= code && code <= 0x1D18B) || // Mn [7] MUSICAL SYMBOL COMBINING DOIT..MUSICAL SYMBOL COMBINING TRIPLE TONGUE
  736. // (0x1D1AA <= code && code <= 0x1D1AD) || // Mn [4] MUSICAL SYMBOL COMBINING DOWN BOW..MUSICAL SYMBOL COMBINING SNAP PIZZICATO
  737. // (0x1D242 <= code && code <= 0x1D244) || // Mn [3] COMBINING GREEK MUSICAL TRISEME..COMBINING GREEK MUSICAL PENTASEME
  738. // (0x1DA00 <= code && code <= 0x1DA36) || // Mn [55] SIGNWRITING HEAD RIM..SIGNWRITING AIR SUCKING IN
  739. // (0x1DA3B <= code && code <= 0x1DA6C) || // Mn [50] SIGNWRITING MOUTH CLOSED NEUTRAL..SIGNWRITING EXCITEMENT
  740. // 0x1DA75 == code || // Mn SIGNWRITING UPPER BODY TILTING FROM HIP JOINTS
  741. // 0x1DA84 == code || // Mn SIGNWRITING LOCATION HEAD NECK
  742. // (0x1DA9B <= code && code <= 0x1DA9F) || // Mn [5] SIGNWRITING FILL MODIFIER-2..SIGNWRITING FILL MODIFIER-6
  743. // (0x1DAA1 <= code && code <= 0x1DAAF) || // Mn [15] SIGNWRITING ROTATION MODIFIER-2..SIGNWRITING ROTATION MODIFIER-16
  744. // (0x1E000 <= code && code <= 0x1E006) || // Mn [7] COMBINING GLAGOLITIC LETTER AZU..COMBINING GLAGOLITIC LETTER ZHIVETE
  745. // (0x1E008 <= code && code <= 0x1E018) || // Mn [17] COMBINING GLAGOLITIC LETTER ZEMLJA..COMBINING GLAGOLITIC LETTER HERU
  746. // (0x1E01B <= code && code <= 0x1E021) || // Mn [7] COMBINING GLAGOLITIC LETTER SHTA..COMBINING GLAGOLITIC LETTER YATI
  747. // (0x1E023 <= code && code <= 0x1E024) || // Mn [2] COMBINING GLAGOLITIC LETTER YU..COMBINING GLAGOLITIC LETTER SMALL YUS
  748. // (0x1E026 <= code && code <= 0x1E02A) || // Mn [5] COMBINING GLAGOLITIC LETTER YO..COMBINING GLAGOLITIC LETTER FITA
  749. // (0x1E8D0 <= code && code <= 0x1E8D6) || // Mn [7] MENDE KIKAKUI COMBINING NUMBER TEENS..MENDE KIKAKUI COMBINING NUMBER MILLIONS
  750. // (0x1E944 <= code && code <= 0x1E94A) || // Mn [7] ADLAM ALIF LENGTHENER..ADLAM NUKTA
  751. // (0x_e0020 <= code && code <= 0x_e007F) || // Cf [96] TAG SPACE..CANCEL TAG
  752. // (0x_e0100 <= code && code <= 0x_e01EF) // Mn [240] VARIATION SELECTOR-17..VARIATION SELECTOR-256
  753. // ){
  754. // return Extend;
  755. // }
  756. //
  757. //
  758. // if(
  759. // (0x1F1E6 <= code && code <= 0x1F1FF) // So [26] REGIONAL INDICATOR SYMBOL LETTER A..REGIONAL INDICATOR SYMBOL LETTER Z
  760. // ){
  761. // return Regional_Indicator;
  762. // }
  763. //
  764. // if(
  765. // 0x0903 == code || // Mc DEVANAGARI SIGN VISARGA
  766. // 0x093B == code || // Mc DEVANAGARI VOWEL SIGN OOE
  767. // (0x093E <= code && code <= 0x0940) || // Mc [3] DEVANAGARI VOWEL SIGN AA..DEVANAGARI VOWEL SIGN II
  768. // (0x0949 <= code && code <= 0x094C) || // Mc [4] DEVANAGARI VOWEL SIGN CANDRA O..DEVANAGARI VOWEL SIGN AU
  769. // (0x094E <= code && code <= 0x094F) || // Mc [2] DEVANAGARI VOWEL SIGN PRISHTHAMATRA E..DEVANAGARI VOWEL SIGN AW
  770. // (0x0982 <= code && code <= 0x0983) || // Mc [2] BENGALI SIGN ANUSVARA..BENGALI SIGN VISARGA
  771. // (0x09BF <= code && code <= 0x09C0) || // Mc [2] BENGALI VOWEL SIGN I..BENGALI VOWEL SIGN II
  772. // (0x09C7 <= code && code <= 0x09C8) || // Mc [2] BENGALI VOWEL SIGN E..BENGALI VOWEL SIGN AI
  773. // (0x09CB <= code && code <= 0x09CC) || // Mc [2] BENGALI VOWEL SIGN O..BENGALI VOWEL SIGN AU
  774. // 0x0A03 == code || // Mc GURMUKHI SIGN VISARGA
  775. // (0x0A3E <= code && code <= 0x0A40) || // Mc [3] GURMUKHI VOWEL SIGN AA..GURMUKHI VOWEL SIGN II
  776. // 0x0A83 == code || // Mc GUJARATI SIGN VISARGA
  777. // (0x0ABE <= code && code <= 0x0AC0) || // Mc [3] GUJARATI VOWEL SIGN AA..GUJARATI VOWEL SIGN II
  778. // 0x0AC9 == code || // Mc GUJARATI VOWEL SIGN CANDRA O
  779. // (0x0ACB <= code && code <= 0x0ACC) || // Mc [2] GUJARATI VOWEL SIGN O..GUJARATI VOWEL SIGN AU
  780. // (0x0B02 <= code && code <= 0x0B03) || // Mc [2] ORIYA SIGN ANUSVARA..ORIYA SIGN VISARGA
  781. // 0x0B40 == code || // Mc ORIYA VOWEL SIGN II
  782. // (0x0B47 <= code && code <= 0x0B48) || // Mc [2] ORIYA VOWEL SIGN E..ORIYA VOWEL SIGN AI
  783. // (0x0B4B <= code && code <= 0x0B4C) || // Mc [2] ORIYA VOWEL SIGN O..ORIYA VOWEL SIGN AU
  784. // 0x0BBF == code || // Mc TAMIL VOWEL SIGN I
  785. // (0x0BC1 <= code && code <= 0x0BC2) || // Mc [2] TAMIL VOWEL SIGN U..TAMIL VOWEL SIGN UU
  786. // (0x0BC6 <= code && code <= 0x0BC8) || // Mc [3] TAMIL VOWEL SIGN E..TAMIL VOWEL SIGN AI
  787. // (0x0BCA <= code && code <= 0x0BCC) || // Mc [3] TAMIL VOWEL SIGN O..TAMIL VOWEL SIGN AU
  788. // (0x0C01 <= code && code <= 0x0C03) || // Mc [3] TELUGU SIGN CANDRABINDU..TELUGU SIGN VISARGA
  789. // (0x0C41 <= code && code <= 0x0C44) || // Mc [4] TELUGU VOWEL SIGN U..TELUGU VOWEL SIGN VOCALIC RR
  790. // (0x0C82 <= code && code <= 0x0C83) || // Mc [2] KANNADA SIGN ANUSVARA..KANNADA SIGN VISARGA
  791. // 0x0CBE == code || // Mc KANNADA VOWEL SIGN AA
  792. // (0x0CC0 <= code && code <= 0x0CC1) || // Mc [2] KANNADA VOWEL SIGN II..KANNADA VOWEL SIGN U
  793. // (0x0CC3 <= code && code <= 0x0CC4) || // Mc [2] KANNADA VOWEL SIGN VOCALIC R..KANNADA VOWEL SIGN VOCALIC RR
  794. // (0x0CC7 <= code && code <= 0x0CC8) || // Mc [2] KANNADA VOWEL SIGN EE..KANNADA VOWEL SIGN AI
  795. // (0x0CCA <= code && code <= 0x0CCB) || // Mc [2] KANNADA VOWEL SIGN O..KANNADA VOWEL SIGN OO
  796. // (0x0D02 <= code && code <= 0x0D03) || // Mc [2] MALAYALAM SIGN ANUSVARA..MALAYALAM SIGN VISARGA
  797. // (0x0D3F <= code && code <= 0x0D40) || // Mc [2] MALAYALAM VOWEL SIGN I..MALAYALAM VOWEL SIGN II
  798. // (0x0D46 <= code && code <= 0x0D48) || // Mc [3] MALAYALAM VOWEL SIGN E..MALAYALAM VOWEL SIGN AI
  799. // (0x0D4A <= code && code <= 0x0D4C) || // Mc [3] MALAYALAM VOWEL SIGN O..MALAYALAM VOWEL SIGN AU
  800. // (0x0D82 <= code && code <= 0x0D83) || // Mc [2] SINHALA SIGN ANUSVARAYA..SINHALA SIGN VISARGAYA
  801. // (0x0DD0 <= code && code <= 0x0DD1) || // Mc [2] SINHALA VOWEL SIGN KETTI AEDA-PILLA..SINHALA VOWEL SIGN DIGA AEDA-PILLA
  802. // (0x0DD8 <= code && code <= 0x0DDE) || // Mc [7] SINHALA VOWEL SIGN GAETTA-PILLA..SINHALA VOWEL SIGN KOMBUVA HAA GAYANUKITTA
  803. // (0x0DF2 <= code && code <= 0x0DF3) || // Mc [2] SINHALA VOWEL SIGN DIGA GAETTA-PILLA..SINHALA VOWEL SIGN DIGA GAYANUKITTA
  804. // 0x0E33 == code || // Lo THAI CHARACTER SARA AM
  805. // 0x0EB3 == code || // Lo LAO VOWEL SIGN AM
  806. // (0x0F3E <= code && code <= 0x0F3F) || // Mc [2] TIBETAN SIGN YAR TSHES..TIBETAN SIGN MAR TSHES
  807. // 0x0F7F == code || // Mc TIBETAN SIGN RNAM BCAD
  808. // 0x1031 == code || // Mc MYANMAR VOWEL SIGN E
  809. // (0x103B <= code && code <= 0x103C) || // Mc [2] MYANMAR CONSONANT SIGN MEDIAL YA..MYANMAR CONSONANT SIGN MEDIAL RA
  810. // (0x1056 <= code && code <= 0x1057) || // Mc [2] MYANMAR VOWEL SIGN VOCALIC R..MYANMAR VOWEL SIGN VOCALIC RR
  811. // 0x1084 == code || // Mc MYANMAR VOWEL SIGN SHAN E
  812. // 0x17B6 == code || // Mc KHMER VOWEL SIGN AA
  813. // (0x17BE <= code && code <= 0x17C5) || // Mc [8] KHMER VOWEL SIGN OE..KHMER VOWEL SIGN AU
  814. // (0x17C7 <= code && code <= 0x17C8) || // Mc [2] KHMER SIGN REAHMUK..KHMER SIGN YUUKALEAPINTU
  815. // (0x1923 <= code && code <= 0x1926) || // Mc [4] LIMBU VOWEL SIGN EE..LIMBU VOWEL SIGN AU
  816. // (0x1929 <= code && code <= 0x192B) || // Mc [3] LIMBU SUBJOINED LETTER YA..LIMBU SUBJOINED LETTER WA
  817. // (0x1930 <= code && code <= 0x1931) || // Mc [2] LIMBU SMALL LETTER KA..LIMBU SMALL LETTER NGA
  818. // (0x1933 <= code && code <= 0x1938) || // Mc [6] LIMBU SMALL LETTER TA..LIMBU SMALL LETTER LA
  819. // (0x1A19 <= code && code <= 0x1A1A) || // Mc [2] BUGINESE VOWEL SIGN E..BUGINESE VOWEL SIGN O
  820. // 0x1A55 == code || // Mc TAI THAM CONSONANT SIGN MEDIAL RA
  821. // 0x1A57 == code || // Mc TAI THAM CONSONANT SIGN LA TANG LAI
  822. // (0x1A6D <= code && code <= 0x1A72) || // Mc [6] TAI THAM VOWEL SIGN OY..TAI THAM VOWEL SIGN THAM AI
  823. // 0x1B04 == code || // Mc BALINESE SIGN BISAH
  824. // 0x1B35 == code || // Mc BALINESE VOWEL SIGN TEDUNG
  825. // 0x1B3B == code || // Mc BALINESE VOWEL SIGN RA REPA TEDUNG
  826. // (0x1B3D <= code && code <= 0x1B41) || // Mc [5] BALINESE VOWEL SIGN LA LENGA TEDUNG..BALINESE VOWEL SIGN TALING REPA TEDUNG
  827. // (0x1B43 <= code && code <= 0x1B44) || // Mc [2] BALINESE VOWEL SIGN PEPET TEDUNG..BALINESE ADEG ADEG
  828. // 0x1B82 == code || // Mc SUNDANESE SIGN PANGWISAD
  829. // 0x1BA1 == code || // Mc SUNDANESE CONSONANT SIGN PAMINGKAL
  830. // (0x1BA6 <= code && code <= 0x1BA7) || // Mc [2] SUNDANESE VOWEL SIGN PANAELAENG..SUNDANESE VOWEL SIGN PANOLONG
  831. // 0x1BAA == code || // Mc SUNDANESE SIGN PAMAAEH
  832. // 0x1BE7 == code || // Mc BATAK VOWEL SIGN E
  833. // (0x1BEA <= code && code <= 0x1BEC) || // Mc [3] BATAK VOWEL SIGN I..BATAK VOWEL SIGN O
  834. // 0x1BEE == code || // Mc BATAK VOWEL SIGN U
  835. // (0x1BF2 <= code && code <= 0x1BF3) || // Mc [2] BATAK PANGOLAT..BATAK PANONGONAN
  836. // (0x1C24 <= code && code <= 0x1C2B) || // Mc [8] LEPCHA SUBJOINED LETTER YA..LEPCHA VOWEL SIGN UU
  837. // (0x1C34 <= code && code <= 0x1C35) || // Mc [2] LEPCHA CONSONANT SIGN NYIN-DO..LEPCHA CONSONANT SIGN KANG
  838. // 0x1CE1 == code || // Mc VEDIC TONE ATHARVAVEDIC INDEPENDENT SVARITA
  839. // (0x1CF2 <= code && code <= 0x1CF3) || // Mc [2] VEDIC SIGN ARDHAVISARGA..VEDIC SIGN ROTATED ARDHAVISARGA
  840. // 0x1CF7 == code || // Mc VEDIC SIGN ATIKRAMA
  841. // (0x_a823 <= code && code <= 0x_a824) || // Mc [2] SYLOTI NAGRI VOWEL SIGN A..SYLOTI NAGRI VOWEL SIGN I
  842. // 0x_a827 == code || // Mc SYLOTI NAGRI VOWEL SIGN OO
  843. // (0x_a880 <= code && code <= 0x_a881) || // Mc [2] SAURASHTRA SIGN ANUSVARA..SAURASHTRA SIGN VISARGA
  844. // (0x_a8B4 <= code && code <= 0x_a8C3) || // Mc [16] SAURASHTRA CONSONANT SIGN HAARU..SAURASHTRA VOWEL SIGN AU
  845. // (0x_a952 <= code && code <= 0x_a953) || // Mc [2] REJANG CONSONANT SIGN H..REJANG VIRAMA
  846. // 0x_a983 == code || // Mc JAVANESE SIGN WIGNYAN
  847. // (0x_a9B4 <= code && code <= 0x_a9B5) || // Mc [2] JAVANESE VOWEL SIGN TARUNG..JAVANESE VOWEL SIGN TOLONG
  848. // (0x_a9BA <= code && code <= 0x_a9BB) || // Mc [2] JAVANESE VOWEL SIGN TALING..JAVANESE VOWEL SIGN DIRGA MURE
  849. // (0x_a9BD <= code && code <= 0x_a9C0) || // Mc [4] JAVANESE CONSONANT SIGN KERET..JAVANESE PANGKON
  850. // (0x_aA2F <= code && code <= 0x_aA30) || // Mc [2] CHAM VOWEL SIGN O..CHAM VOWEL SIGN AI
  851. // (0x_aA33 <= code && code <= 0x_aA34) || // Mc [2] CHAM CONSONANT SIGN YA..CHAM CONSONANT SIGN RA
  852. // 0x_aA4D == code || // Mc CHAM CONSONANT SIGN FINAL H
  853. // 0x_aAEB == code || // Mc MEETEI MAYEK VOWEL SIGN II
  854. // (0x_aAEE <= code && code <= 0x_aAEF) || // Mc [2] MEETEI MAYEK VOWEL SIGN AU..MEETEI MAYEK VOWEL SIGN AAU
  855. // 0x_aAF5 == code || // Mc MEETEI MAYEK VOWEL SIGN VISARGA
  856. // (0x_aBE3 <= code && code <= 0x_aBE4) || // Mc [2] MEETEI MAYEK VOWEL SIGN ONAP..MEETEI MAYEK VOWEL SIGN INAP
  857. // (0x_aBE6 <= code && code <= 0x_aBE7) || // Mc [2] MEETEI MAYEK VOWEL SIGN YENAP..MEETEI MAYEK VOWEL SIGN SOUNAP
  858. // (0x_aBE9 <= code && code <= 0x_aBEA) || // Mc [2] MEETEI MAYEK VOWEL SIGN CHEINAP..MEETEI MAYEK VOWEL SIGN NUNG
  859. // 0x_aBEC == code || // Mc MEETEI MAYEK LUM IYEK
  860. // 0x11000 == code || // Mc BRAHMI SIGN CANDRABINDU
  861. // 0x11002 == code || // Mc BRAHMI SIGN VISARGA
  862. // 0x11082 == code || // Mc KAITHI SIGN VISARGA
  863. // (0x110B0 <= code && code <= 0x110B2) || // Mc [3] KAITHI VOWEL SIGN AA..KAITHI VOWEL SIGN II
  864. // (0x110B7 <= code && code <= 0x110B8) || // Mc [2] KAITHI VOWEL SIGN O..KAITHI VOWEL SIGN AU
  865. // 0x1112C == code || // Mc CHAKMA VOWEL SIGN E
  866. // 0x11182 == code || // Mc SHARADA SIGN VISARGA
  867. // (0x111B3 <= code && code <= 0x111B5) || // Mc [3] SHARADA VOWEL SIGN AA..SHARADA VOWEL SIGN II
  868. // (0x111BF <= code && code <= 0x111C0) || // Mc [2] SHARADA VOWEL SIGN AU..SHARADA SIGN VIRAMA
  869. // (0x1122C <= code && code <= 0x1122E) || // Mc [3] KHOJKI VOWEL SIGN AA..KHOJKI VOWEL SIGN II
  870. // (0x11232 <= code && code <= 0x11233) || // Mc [2] KHOJKI VOWEL SIGN O..KHOJKI VOWEL SIGN AU
  871. // 0x11235 == code || // Mc KHOJKI SIGN VIRAMA
  872. // (0x112E0 <= code && code <= 0x112E2) || // Mc [3] KHUDAWADI VOWEL SIGN AA..KHUDAWADI VOWEL SIGN II
  873. // (0x11302 <= code && code <= 0x11303) || // Mc [2] GRANTHA SIGN ANUSVARA..GRANTHA SIGN VISARGA
  874. // 0x1133F == code || // Mc GRANTHA VOWEL SIGN I
  875. // (0x11341 <= code && code <= 0x11344) || // Mc [4] GRANTHA VOWEL SIGN U..GRANTHA VOWEL SIGN VOCALIC RR
  876. // (0x11347 <= code && code <= 0x11348) || // Mc [2] GRANTHA VOWEL SIGN EE..GRANTHA VOWEL SIGN AI
  877. // (0x1134B <= code && code <= 0x1134D) || // Mc [3] GRANTHA VOWEL SIGN OO..GRANTHA SIGN VIRAMA
  878. // (0x11362 <= code && code <= 0x11363) || // Mc [2] GRANTHA VOWEL SIGN VOCALIC L..GRANTHA VOWEL SIGN VOCALIC LL
  879. // (0x11435 <= code && code <= 0x11437) || // Mc [3] NEWA VOWEL SIGN AA..NEWA VOWEL SIGN II
  880. // (0x11440 <= code && code <= 0x11441) || // Mc [2] NEWA VOWEL SIGN O..NEWA VOWEL SIGN AU
  881. // 0x11445 == code || // Mc NEWA SIGN VISARGA
  882. // (0x114B1 <= code && code <= 0x114B2) || // Mc [2] TIRHUTA VOWEL SIGN I..TIRHUTA VOWEL SIGN II
  883. // 0x114B9 == code || // Mc TIRHUTA VOWEL SIGN E
  884. // (0x114BB <= code && code <= 0x114BC) || // Mc [2] TIRHUTA VOWEL SIGN AI..TIRHUTA VOWEL SIGN O
  885. // 0x114BE == code || // Mc TIRHUTA VOWEL SIGN AU
  886. // 0x114C1 == code || // Mc TIRHUTA SIGN VISARGA
  887. // (0x115B0 <= code && code <= 0x115B1) || // Mc [2] SIDDHAM VOWEL SIGN I..SIDDHAM VOWEL SIGN II
  888. // (0x115B8 <= code && code <= 0x115BB) || // Mc [4] SIDDHAM VOWEL SIGN E..SIDDHAM VOWEL SIGN AU
  889. // 0x115BE == code || // Mc SIDDHAM SIGN VISARGA
  890. // (0x11630 <= code && code <= 0x11632) || // Mc [3] MODI VOWEL SIGN AA..MODI VOWEL SIGN II
  891. // (0x1163B <= code && code <= 0x1163C) || // Mc [2] MODI VOWEL SIGN O..MODI VOWEL SIGN AU
  892. // 0x1163E == code || // Mc MODI SIGN VISARGA
  893. // 0x116AC == code || // Mc TAKRI SIGN VISARGA
  894. // (0x116AE <= code && code <= 0x116AF) || // Mc [2] TAKRI VOWEL SIGN I..TAKRI VOWEL SIGN II
  895. // 0x116B6 == code || // Mc TAKRI SIGN VIRAMA
  896. // (0x11720 <= code && code <= 0x11721) || // Mc [2] AHOM VOWEL SIGN A..AHOM VOWEL SIGN AA
  897. // 0x11726 == code || // Mc AHOM VOWEL SIGN E
  898. // (0x11A07 <= code && code <= 0x11A08) || // Mc [2] ZANABAZAR SQUARE VOWEL SIGN AI..ZANABAZAR SQUARE VOWEL SIGN AU
  899. // 0x11A39 == code || // Mc ZANABAZAR SQUARE SIGN VISARGA
  900. // (0x11A57 <= code && code <= 0x11A58) || // Mc [2] SOYOMBO VOWEL SIGN AI..SOYOMBO VOWEL SIGN AU
  901. // 0x11A97 == code || // Mc SOYOMBO SIGN VISARGA
  902. // 0x11C2F == code || // Mc BHAIKSUKI VOWEL SIGN AA
  903. // 0x11C3E == code || // Mc BHAIKSUKI SIGN VISARGA
  904. // 0x11CA9 == code || // Mc MARCHEN SUBJOINED LETTER YA
  905. // 0x11CB1 == code || // Mc MARCHEN VOWEL SIGN I
  906. // 0x11CB4 == code || // Mc MARCHEN VOWEL SIGN O
  907. // (0x16F51 <= code && code <= 0x16F7E) || // Mc [46] MIAO SIGN ASPIRATION..MIAO VOWEL SIGN NG
  908. // 0x1D166 == code || // Mc MUSICAL SYMBOL COMBINING SPRECHGESANG STEM
  909. // 0x1D16D == code // Mc MUSICAL SYMBOL COMBINING AUGMENTATION DOT
  910. // ){
  911. // return SpacingMark;
  912. // }
  913. //
  914. //
  915. // if(
  916. // (0x1100 <= code && code <= 0x115F) || // Lo [96] HANGUL CHOSEONG KIYEOK..HANGUL CHOSEONG FILLER
  917. // (0x_a960 <= code && code <= 0x_a97C) // Lo [29] HANGUL CHOSEONG TIKEUT-MIEUM..HANGUL CHOSEONG SSANGYEORINHIEUH
  918. // ){
  919. // return L;
  920. // }
  921. //
  922. // if(
  923. // (0x1160 <= code && code <= 0x11A7) || // Lo [72] HANGUL JUNGSEONG FILLER..HANGUL JUNGSEONG O-YAE
  924. // (0x_d7B0 <= code && code <= 0x_d7C6) // Lo [23] HANGUL JUNGSEONG O-YEO..HANGUL JUNGSEONG ARAEA-E
  925. // ){
  926. // return V;
  927. // }
  928. //
  929. //
  930. // if(
  931. // (0x11A8 <= code && code <= 0x11FF) || // Lo [88] HANGUL JONGSEONG KIYEOK..HANGUL JONGSEONG SSANGNIEUN
  932. // (0x_d7CB <= code && code <= 0x_d7FB) // Lo [49] HANGUL JONGSEONG NIEUN-RIEUL..HANGUL JONGSEONG PHIEUPH-THIEUTH
  933. // ){
  934. // return T;
  935. // }
  936. //
  937. // if(
  938. // 0x_aC00 == code || // Lo HANGUL SYLLABLE GA
  939. // 0x_aC1C == code || // Lo HANGUL SYLLABLE GAE
  940. // 0x_aC38 == code || // Lo HANGUL SYLLABLE GYA
  941. // 0x_aC54 == code || // Lo HANGUL SYLLABLE GYAE
  942. // 0x_aC70 == code || // Lo HANGUL SYLLABLE GEO
  943. // 0x_aC8C == code || // Lo HANGUL SYLLABLE GE
  944. // 0x_aCA8 == code || // Lo HANGUL SYLLABLE GYEO
  945. // 0x_aCC4 == code || // Lo HANGUL SYLLABLE GYE
  946. // 0x_aCE0 == code || // Lo HANGUL SYLLABLE GO
  947. // 0x_aCFC == code || // Lo HANGUL SYLLABLE GWA
  948. // 0x_aD18 == code || // Lo HANGUL SYLLABLE GWAE
  949. // 0x_aD34 == code || // Lo HANGUL SYLLABLE GOE
  950. // 0x_aD50 == code || // Lo HANGUL SYLLABLE GYO
  951. // 0x_aD6C == code || // Lo HANGUL SYLLABLE GU
  952. // 0x_aD88 == code || // Lo HANGUL SYLLABLE GWEO
  953. // 0x_aDA4 == code || // Lo HANGUL SYLLABLE GWE
  954. // 0x_aDC0 == code || // Lo HANGUL SYLLABLE GWI
  955. // 0x_aDDC == code || // Lo HANGUL SYLLABLE GYU
  956. // 0x_aDF8 == code || // Lo HANGUL SYLLABLE GEU
  957. // 0x_aE14 == code || // Lo HANGUL SYLLABLE GYI
  958. // 0x_aE30 == code || // Lo HANGUL SYLLABLE GI
  959. // 0x_aE4C == code || // Lo HANGUL SYLLABLE GGA
  960. // 0x_aE68 == code || // Lo HANGUL SYLLABLE GGAE
  961. // 0x_aE84 == code || // Lo HANGUL SYLLABLE GGYA
  962. // 0x_aEA0 == code || // Lo HANGUL SYLLABLE GGYAE
  963. // 0x_aEBC == code || // Lo HANGUL SYLLABLE GGEO
  964. // 0x_aED8 == code || // Lo HANGUL SYLLABLE GGE
  965. // 0x_aEF4 == code || // Lo HANGUL SYLLABLE GGYEO
  966. // 0x_aF10 == code || // Lo HANGUL SYLLABLE GGYE
  967. // 0x_aF2C == code || // Lo HANGUL SYLLABLE GGO
  968. // 0x_aF48 == code || // Lo HANGUL SYLLABLE GGWA
  969. // 0x_aF64 == code || // Lo HANGUL SYLLABLE GGWAE
  970. // 0x_aF80 == code || // Lo HANGUL SYLLABLE GGOE
  971. // 0x_aF9C == code || // Lo HANGUL SYLLABLE GGYO
  972. // 0x_aFB8 == code || // Lo HANGUL SYLLABLE GGU
  973. // 0x_aFD4 == code || // Lo HANGUL SYLLABLE GGWEO
  974. // 0x_aFF0 == code || // Lo HANGUL SYLLABLE GGWE
  975. // 0x_b00C == code || // Lo HANGUL SYLLABLE GGWI
  976. // 0x_b028 == code || // Lo HANGUL SYLLABLE GGYU
  977. // 0x_b044 == code || // Lo HANGUL SYLLABLE GGEU
  978. // 0x_b060 == code || // Lo HANGUL SYLLABLE GGYI
  979. // 0x_b07C == code || // Lo HANGUL SYLLABLE GGI
  980. // 0x_b098 == code || // Lo HANGUL SYLLABLE NA
  981. // 0x_b0B4 == code || // Lo HANGUL SYLLABLE NAE
  982. // 0x_b0D0 == code || // Lo HANGUL SYLLABLE NYA
  983. // 0x_b0EC == code || // Lo HANGUL SYLLABLE NYAE
  984. // 0x_b108 == code || // Lo HANGUL SYLLABLE NEO
  985. // 0x_b124 == code || // Lo HANGUL SYLLABLE NE
  986. // 0x_b140 == code || // Lo HANGUL SYLLABLE NYEO
  987. // 0x_b15C == code || // Lo HANGUL SYLLABLE NYE
  988. // 0x_b178 == code || // Lo HANGUL SYLLABLE NO
  989. // 0x_b194 == code || // Lo HANGUL SYLLABLE NWA
  990. // 0x_b1B0 == code || // Lo HANGUL SYLLABLE NWAE
  991. // 0x_b1CC == code || // Lo HANGUL SYLLABLE NOE
  992. // 0x_b1E8 == code || // Lo HANGUL SYLLABLE NYO
  993. // 0x_b204 == code || // Lo HANGUL SYLLABLE NU
  994. // 0x_b220 == code || // Lo HANGUL SYLLABLE NWEO
  995. // 0x_b23C == code || // Lo HANGUL SYLLABLE NWE
  996. // 0x_b258 == code || // Lo HANGUL SYLLABLE NWI
  997. // 0x_b274 == code || // Lo HANGUL SYLLABLE NYU
  998. // 0x_b290 == code || // Lo HANGUL SYLLABLE NEU
  999. // 0x_b2AC == code || // Lo HANGUL SYLLABLE NYI
  1000. // 0x_b2C8 == code || // Lo HANGUL SYLLABLE NI
  1001. // 0x_b2E4 == code || // Lo HANGUL SYLLABLE DA
  1002. // 0x_b300 == code || // Lo HANGUL SYLLABLE DAE
  1003. // 0x_b31C == code || // Lo HANGUL SYLLABLE DYA
  1004. // 0x_b338 == code || // Lo HANGUL SYLLABLE DYAE
  1005. // 0x_b354 == code || // Lo HANGUL SYLLABLE DEO
  1006. // 0x_b370 == code || // Lo HANGUL SYLLABLE DE
  1007. // 0x_b38C == code || // Lo HANGUL SYLLABLE DYEO
  1008. // 0x_b3A8 == code || // Lo HANGUL SYLLABLE DYE
  1009. // 0x_b3C4 == code || // Lo HANGUL SYLLABLE DO
  1010. // 0x_b3E0 == code || // Lo HANGUL SYLLABLE DWA
  1011. // 0x_b3FC == code || // Lo HANGUL SYLLABLE DWAE
  1012. // 0x_b418 == code || // Lo HANGUL SYLLABLE DOE
  1013. // 0x_b434 == code || // Lo HANGUL SYLLABLE DYO
  1014. // 0x_b450 == code || // Lo HANGUL SYLLABLE DU
  1015. // 0x_b46C == code || // Lo HANGUL SYLLABLE DWEO
  1016. // 0x_b488 == code || // Lo HANGUL SYLLABLE DWE
  1017. // 0x_b4A4 == code || // Lo HANGUL SYLLABLE DWI
  1018. // 0x_b4C0 == code || // Lo HANGUL SYLLABLE DYU
  1019. // 0x_b4DC == code || // Lo HANGUL SYLLABLE DEU
  1020. // 0x_b4F8 == code || // Lo HANGUL SYLLABLE DYI
  1021. // 0x_b514 == code || // Lo HANGUL SYLLABLE DI
  1022. // 0x_b530 == code || // Lo HANGUL SYLLABLE DDA
  1023. // 0x_b54C == code || // Lo HANGUL SYLLABLE DDAE
  1024. // 0x_b568 == code || // Lo HANGUL SYLLABLE DDYA
  1025. // 0x_b584 == code || // Lo HANGUL SYLLABLE DDYAE
  1026. // 0x_b5A0 == code || // Lo HANGUL SYLLABLE DDEO
  1027. // 0x_b5BC == code || // Lo HANGUL SYLLABLE DDE
  1028. // 0x_b5D8 == code || // Lo HANGUL SYLLABLE DDYEO
  1029. // 0x_b5F4 == code || // Lo HANGUL SYLLABLE DDYE
  1030. // 0x_b610 == code || // Lo HANGUL SYLLABLE DDO
  1031. // 0x_b62C == code || // Lo HANGUL SYLLABLE DDWA
  1032. // 0x_b648 == code || // Lo HANGUL SYLLABLE DDWAE
  1033. // 0x_b664 == code || // Lo HANGUL SYLLABLE DDOE
  1034. // 0x_b680 == code || // Lo HANGUL SYLLABLE DDYO
  1035. // 0x_b69C == code || // Lo HANGUL SYLLABLE DDU
  1036. // 0x_b6B8 == code || // Lo HANGUL SYLLABLE DDWEO
  1037. // 0x_b6D4 == code || // Lo HANGUL SYLLABLE DDWE
  1038. // 0x_b6F0 == code || // Lo HANGUL SYLLABLE DDWI
  1039. // 0x_b70C == code || // Lo HANGUL SYLLABLE DDYU
  1040. // 0x_b728 == code || // Lo HANGUL SYLLABLE DDEU
  1041. // 0x_b744 == code || // Lo HANGUL SYLLABLE DDYI
  1042. // 0x_b760 == code || // Lo HANGUL SYLLABLE DDI
  1043. // 0x_b77C == code || // Lo HANGUL SYLLABLE RA
  1044. // 0x_b798 == code || // Lo HANGUL SYLLABLE RAE
  1045. // 0x_b7B4 == code || // Lo HANGUL SYLLABLE RYA
  1046. // 0x_b7D0 == code || // Lo HANGUL SYLLABLE RYAE
  1047. // 0x_b7EC == code || // Lo HANGUL SYLLABLE REO
  1048. // 0x_b808 == code || // Lo HANGUL SYLLABLE RE
  1049. // 0x_b824 == code || // Lo HANGUL SYLLABLE RYEO
  1050. // 0x_b840 == code || // Lo HANGUL SYLLABLE RYE
  1051. // 0x_b85C == code || // Lo HANGUL SYLLABLE RO
  1052. // 0x_b878 == code || // Lo HANGUL SYLLABLE RWA
  1053. // 0x_b894 == code || // Lo HANGUL SYLLABLE RWAE
  1054. // 0x_b8B0 == code || // Lo HANGUL SYLLABLE ROE
  1055. // 0x_b8CC == code || // Lo HANGUL SYLLABLE RYO
  1056. // 0x_b8E8 == code || // Lo HANGUL SYLLABLE RU
  1057. // 0x_b904 == code || // Lo HANGUL SYLLABLE RWEO
  1058. // 0x_b920 == code || // Lo HANGUL SYLLABLE RWE
  1059. // 0x_b93C == code || // Lo HANGUL SYLLABLE RWI
  1060. // 0x_b958 == code || // Lo HANGUL SYLLABLE RYU
  1061. // 0x_b974 == code || // Lo HANGUL SYLLABLE REU
  1062. // 0x_b990 == code || // Lo HANGUL SYLLABLE RYI
  1063. // 0x_b9AC == code || // Lo HANGUL SYLLABLE RI
  1064. // 0x_b9C8 == code || // Lo HANGUL SYLLABLE MA
  1065. // 0x_b9E4 == code || // Lo HANGUL SYLLABLE MAE
  1066. // 0x_bA00 == code || // Lo HANGUL SYLLABLE MYA
  1067. // 0x_bA1C == code || // Lo HANGUL SYLLABLE MYAE
  1068. // 0x_bA38 == code || // Lo HANGUL SYLLABLE MEO
  1069. // 0x_bA54 == code || // Lo HANGUL SYLLABLE ME
  1070. // 0x_bA70 == code || // Lo HANGUL SYLLABLE MYEO
  1071. // 0x_bA8C == code || // Lo HANGUL SYLLABLE MYE
  1072. // 0x_bAA8 == code || // Lo HANGUL SYLLABLE MO
  1073. // 0x_bAC4 == code || // Lo HANGUL SYLLABLE MWA
  1074. // 0x_bAE0 == code || // Lo HANGUL SYLLABLE MWAE
  1075. // 0x_bAFC == code || // Lo HANGUL SYLLABLE MOE
  1076. // 0x_bB18 == code || // Lo HANGUL SYLLABLE MYO
  1077. // 0x_bB34 == code || // Lo HANGUL SYLLABLE MU
  1078. // 0x_bB50 == code || // Lo HANGUL SYLLABLE MWEO
  1079. // 0x_bB6C == code || // Lo HANGUL SYLLABLE MWE
  1080. // 0x_bB88 == code || // Lo HANGUL SYLLABLE MWI
  1081. // 0x_bBA4 == code || // Lo HANGUL SYLLABLE MYU
  1082. // 0x_bBC0 == code || // Lo HANGUL SYLLABLE MEU
  1083. // 0x_bBDC == code || // Lo HANGUL SYLLABLE MYI
  1084. // 0x_bBF8 == code || // Lo HANGUL SYLLABLE MI
  1085. // 0x_bC14 == code || // Lo HANGUL SYLLABLE BA
  1086. // 0x_bC30 == code || // Lo HANGUL SYLLABLE BAE
  1087. // 0x_bC4C == code || // Lo HANGUL SYLLABLE BYA
  1088. // 0x_bC68 == code || // Lo HANGUL SYLLABLE BYAE
  1089. // 0x_bC84 == code || // Lo HANGUL SYLLABLE BEO
  1090. // 0x_bCA0 == code || // Lo HANGUL SYLLABLE BE
  1091. // 0x_bCBC == code || // Lo HANGUL SYLLABLE BYEO
  1092. // 0x_bCD8 == code || // Lo HANGUL SYLLABLE BYE
  1093. // 0x_bCF4 == code || // Lo HANGUL SYLLABLE BO
  1094. // 0x_bD10 == code || // Lo HANGUL SYLLABLE BWA
  1095. // 0x_bD2C == code || // Lo HANGUL SYLLABLE BWAE
  1096. // 0x_bD48 == code || // Lo HANGUL SYLLABLE BOE
  1097. // 0x_bD64 == code || // Lo HANGUL SYLLABLE BYO
  1098. // 0x_bD80 == code || // Lo HANGUL SYLLABLE BU
  1099. // 0x_bD9C == code || // Lo HANGUL SYLLABLE BWEO
  1100. // 0x_bDB8 == code || // Lo HANGUL SYLLABLE BWE
  1101. // 0x_bDD4 == code || // Lo HANGUL SYLLABLE BWI
  1102. // 0x_bDF0 == code || // Lo HANGUL SYLLABLE BYU
  1103. // 0x_bE0C == code || // Lo HANGUL SYLLABLE BEU
  1104. // 0x_bE28 == code || // Lo HANGUL SYLLABLE BYI
  1105. // 0x_bE44 == code || // Lo HANGUL SYLLABLE BI
  1106. // 0x_bE60 == code || // Lo HANGUL SYLLABLE BBA
  1107. // 0x_bE7C == code || // Lo HANGUL SYLLABLE BBAE
  1108. // 0x_bE98 == code || // Lo HANGUL SYLLABLE BBYA
  1109. // 0x_bEB4 == code || // Lo HANGUL SYLLABLE BBYAE
  1110. // 0x_bED0 == code || // Lo HANGUL SYLLABLE BBEO
  1111. // 0x_bEEC == code || // Lo HANGUL SYLLABLE BBE
  1112. // 0x_bF08 == code || // Lo HANGUL SYLLABLE BBYEO
  1113. // 0x_bF24 == code || // Lo HANGUL SYLLABLE BBYE
  1114. // 0x_bF40 == code || // Lo HANGUL SYLLABLE BBO
  1115. // 0x_bF5C == code || // Lo HANGUL SYLLABLE BBWA
  1116. // 0x_bF78 == code || // Lo HANGUL SYLLABLE BBWAE
  1117. // 0x_bF94 == code || // Lo HANGUL SYLLABLE BBOE
  1118. // 0x_bFB0 == code || // Lo HANGUL SYLLABLE BBYO
  1119. // 0x_bFCC == code || // Lo HANGUL SYLLABLE BBU
  1120. // 0x_bFE8 == code || // Lo HANGUL SYLLABLE BBWEO
  1121. // 0x_c004 == code || // Lo HANGUL SYLLABLE BBWE
  1122. // 0x_c020 == code || // Lo HANGUL SYLLABLE BBWI
  1123. // 0x_c03C == code || // Lo HANGUL SYLLABLE BBYU
  1124. // 0x_c058 == code || // Lo HANGUL SYLLABLE BBEU
  1125. // 0x_c074 == code || // Lo HANGUL SYLLABLE BBYI
  1126. // 0x_c090 == code || // Lo HANGUL SYLLABLE BBI
  1127. // 0x_c0AC == code || // Lo HANGUL SYLLABLE SA
  1128. // 0x_c0C8 == code || // Lo HANGUL SYLLABLE SAE
  1129. // 0x_c0E4 == code || // Lo HANGUL SYLLABLE SYA
  1130. // 0x_c100 == code || // Lo HANGUL SYLLABLE SYAE
  1131. // 0x_c11C == code || // Lo HANGUL SYLLABLE SEO
  1132. // 0x_c138 == code || // Lo HANGUL SYLLABLE SE
  1133. // 0x_c154 == code || // Lo HANGUL SYLLABLE SYEO
  1134. // 0x_c170 == code || // Lo HANGUL SYLLABLE SYE
  1135. // 0x_c18C == code || // Lo HANGUL SYLLABLE SO
  1136. // 0x_c1A8 == code || // Lo HANGUL SYLLABLE SWA
  1137. // 0x_c1C4 == code || // Lo HANGUL SYLLABLE SWAE
  1138. // 0x_c1E0 == code || // Lo HANGUL SYLLABLE SOE
  1139. // 0x_c1FC == code || // Lo HANGUL SYLLABLE SYO
  1140. // 0x_c218 == code || // Lo HANGUL SYLLABLE SU
  1141. // 0x_c234 == code || // Lo HANGUL SYLLABLE SWEO
  1142. // 0x_c250 == code || // Lo HANGUL SYLLABLE SWE
  1143. // 0x_c26C == code || // Lo HANGUL SYLLABLE SWI
  1144. // 0x_c288 == code || // Lo HANGUL SYLLABLE SYU
  1145. // 0x_c2A4 == code || // Lo HANGUL SYLLABLE SEU
  1146. // 0x_c2C0 == code || // Lo HANGUL SYLLABLE SYI
  1147. // 0x_c2DC == code || // Lo HANGUL SYLLABLE SI
  1148. // 0x_c2F8 == code || // Lo HANGUL SYLLABLE SSA
  1149. // 0x_c314 == code || // Lo HANGUL SYLLABLE SSAE
  1150. // 0x_c330 == code || // Lo HANGUL SYLLABLE SSYA
  1151. // 0x_c34C == code || // Lo HANGUL SYLLABLE SSYAE
  1152. // 0x_c368 == code || // Lo HANGUL SYLLABLE SSEO
  1153. // 0x_c384 == code || // Lo HANGUL SYLLABLE SSE
  1154. // 0x_c3A0 == code || // Lo HANGUL SYLLABLE SSYEO
  1155. // 0x_c3BC == code || // Lo HANGUL SYLLABLE SSYE
  1156. // 0x_c3D8 == code || // Lo HANGUL SYLLABLE SSO
  1157. // 0x_c3F4 == code || // Lo HANGUL SYLLABLE SSWA
  1158. // 0x_c410 == code || // Lo HANGUL SYLLABLE SSWAE
  1159. // 0x_c42C == code || // Lo HANGUL SYLLABLE SSOE
  1160. // 0x_c448 == code || // Lo HANGUL SYLLABLE SSYO
  1161. // 0x_c464 == code || // Lo HANGUL SYLLABLE SSU
  1162. // 0x_c480 == code || // Lo HANGUL SYLLABLE SSWEO
  1163. // 0x_c49C == code || // Lo HANGUL SYLLABLE SSWE
  1164. // 0x_c4B8 == code || // Lo HANGUL SYLLABLE SSWI
  1165. // 0x_c4D4 == code || // Lo HANGUL SYLLABLE SSYU
  1166. // 0x_c4F0 == code || // Lo HANGUL SYLLABLE SSEU
  1167. // 0x_c50C == code || // Lo HANGUL SYLLABLE SSYI
  1168. // 0x_c528 == code || // Lo HANGUL SYLLABLE SSI
  1169. // 0x_c544 == code || // Lo HANGUL SYLLABLE A
  1170. // 0x_c560 == code || // Lo HANGUL SYLLABLE AE
  1171. // 0x_c57C == code || // Lo HANGUL SYLLABLE YA
  1172. // 0x_c598 == code || // Lo HANGUL SYLLABLE YAE
  1173. // 0x_c5B4 == code || // Lo HANGUL SYLLABLE EO
  1174. // 0x_c5D0 == code || // Lo HANGUL SYLLABLE E
  1175. // 0x_c5EC == code || // Lo HANGUL SYLLABLE YEO
  1176. // 0x_c608 == code || // Lo HANGUL SYLLABLE YE
  1177. // 0x_c624 == code || // Lo HANGUL SYLLABLE O
  1178. // 0x_c640 == code || // Lo HANGUL SYLLABLE WA
  1179. // 0x_c65C == code || // Lo HANGUL SYLLABLE WAE
  1180. // 0x_c678 == code || // Lo HANGUL SYLLABLE OE
  1181. // 0x_c694 == code || // Lo HANGUL SYLLABLE YO
  1182. // 0x_c6B0 == code || // Lo HANGUL SYLLABLE U
  1183. // 0x_c6CC == code || // Lo HANGUL SYLLABLE WEO
  1184. // 0x_c6E8 == code || // Lo HANGUL SYLLABLE WE
  1185. // 0x_c704 == code || // Lo HANGUL SYLLABLE WI
  1186. // 0x_c720 == code || // Lo HANGUL SYLLABLE YU
  1187. // 0x_c73C == code || // Lo HANGUL SYLLABLE EU
  1188. // 0x_c758 == code || // Lo HANGUL SYLLABLE YI
  1189. // 0x_c774 == code || // Lo HANGUL SYLLABLE I
  1190. // 0x_c790 == code || // Lo HANGUL SYLLABLE JA
  1191. // 0x_c7AC == code || // Lo HANGUL SYLLABLE JAE
  1192. // 0x_c7C8 == code || // Lo HANGUL SYLLABLE JYA
  1193. // 0x_c7E4 == code || // Lo HANGUL SYLLABLE JYAE
  1194. // 0x_c800 == code || // Lo HANGUL SYLLABLE JEO
  1195. // 0x_c81C == code || // Lo HANGUL SYLLABLE JE
  1196. // 0x_c838 == code || // Lo HANGUL SYLLABLE JYEO
  1197. // 0x_c854 == code || // Lo HANGUL SYLLABLE JYE
  1198. // 0x_c870 == code || // Lo HANGUL SYLLABLE JO
  1199. // 0x_c88C == code || // Lo HANGUL SYLLABLE JWA
  1200. // 0x_c8A8 == code || // Lo HANGUL SYLLABLE JWAE
  1201. // 0x_c8C4 == code || // Lo HANGUL SYLLABLE JOE
  1202. // 0x_c8E0 == code || // Lo HANGUL SYLLABLE JYO
  1203. // 0x_c8FC == code || // Lo HANGUL SYLLABLE JU
  1204. // 0x_c918 == code || // Lo HANGUL SYLLABLE JWEO
  1205. // 0x_c934 == code || // Lo HANGUL SYLLABLE JWE
  1206. // 0x_c950 == code || // Lo HANGUL SYLLABLE JWI
  1207. // 0x_c96C == code || // Lo HANGUL SYLLABLE JYU
  1208. // 0x_c988 == code || // Lo HANGUL SYLLABLE JEU
  1209. // 0x_c9A4 == code || // Lo HANGUL SYLLABLE JYI
  1210. // 0x_c9C0 == code || // Lo HANGUL SYLLABLE JI
  1211. // 0x_c9DC == code || // Lo HANGUL SYLLABLE JJA
  1212. // 0x_c9F8 == code || // Lo HANGUL SYLLABLE JJAE
  1213. // 0x_cA14 == code || // Lo HANGUL SYLLABLE JJYA
  1214. // 0x_cA30 == code || // Lo HANGUL SYLLABLE JJYAE
  1215. // 0x_cA4C == code || // Lo HANGUL SYLLABLE JJEO
  1216. // 0x_cA68 == code || // Lo HANGUL SYLLABLE JJE
  1217. // 0x_cA84 == code || // Lo HANGUL SYLLABLE JJYEO
  1218. // 0x_cAA0 == code || // Lo HANGUL SYLLABLE JJYE
  1219. // 0x_cABC == code || // Lo HANGUL SYLLABLE JJO
  1220. // 0x_cAD8 == code || // Lo HANGUL SYLLABLE JJWA
  1221. // 0x_cAF4 == code || // Lo HANGUL SYLLABLE JJWAE
  1222. // 0x_cB10 == code || // Lo HANGUL SYLLABLE JJOE
  1223. // 0x_cB2C == code || // Lo HANGUL SYLLABLE JJYO
  1224. // 0x_cB48 == code || // Lo HANGUL SYLLABLE JJU
  1225. // 0x_cB64 == code || // Lo HANGUL SYLLABLE JJWEO
  1226. // 0x_cB80 == code || // Lo HANGUL SYLLABLE JJWE
  1227. // 0x_cB9C == code || // Lo HANGUL SYLLABLE JJWI
  1228. // 0x_cBB8 == code || // Lo HANGUL SYLLABLE JJYU
  1229. // 0x_cBD4 == code || // Lo HANGUL SYLLABLE JJEU
  1230. // 0x_cBF0 == code || // Lo HANGUL SYLLABLE JJYI
  1231. // 0x_cC0C == code || // Lo HANGUL SYLLABLE JJI
  1232. // 0x_cC28 == code || // Lo HANGUL SYLLABLE CA
  1233. // 0x_cC44 == code || // Lo HANGUL SYLLABLE CAE
  1234. // 0x_cC60 == code || // Lo HANGUL SYLLABLE CYA
  1235. // 0x_cC7C == code || // Lo HANGUL SYLLABLE CYAE
  1236. // 0x_cC98 == code || // Lo HANGUL SYLLABLE CEO
  1237. // 0x_cCB4 == code || // Lo HANGUL SYLLABLE CE
  1238. // 0x_cCD0 == code || // Lo HANGUL SYLLABLE CYEO
  1239. // 0x_cCEC == code || // Lo HANGUL SYLLABLE CYE
  1240. // 0x_cD08 == code || // Lo HANGUL SYLLABLE CO
  1241. // 0x_cD24 == code || // Lo HANGUL SYLLABLE CWA
  1242. // 0x_cD40 == code || // Lo HANGUL SYLLABLE CWAE
  1243. // 0x_cD5C == code || // Lo HANGUL SYLLABLE COE
  1244. // 0x_cD78 == code || // Lo HANGUL SYLLABLE CYO
  1245. // 0x_cD94 == code || // Lo HANGUL SYLLABLE CU
  1246. // 0x_cDB0 == code || // Lo HANGUL SYLLABLE CWEO
  1247. // 0x_cDCC == code || // Lo HANGUL SYLLABLE CWE
  1248. // 0x_cDE8 == code || // Lo HANGUL SYLLABLE CWI
  1249. // 0x_cE04 == code || // Lo HANGUL SYLLABLE CYU
  1250. // 0x_cE20 == code || // Lo HANGUL SYLLABLE CEU
  1251. // 0x_cE3C == code || // Lo HANGUL SYLLABLE CYI
  1252. // 0x_cE58 == code || // Lo HANGUL SYLLABLE CI
  1253. // 0x_cE74 == code || // Lo HANGUL SYLLABLE KA
  1254. // 0x_cE90 == code || // Lo HANGUL SYLLABLE KAE
  1255. // 0x_cEAC == code || // Lo HANGUL SYLLABLE KYA
  1256. // 0x_cEC8 == code || // Lo HANGUL SYLLABLE KYAE
  1257. // 0x_cEE4 == code || // Lo HANGUL SYLLABLE KEO
  1258. // 0x_cF00 == code || // Lo HANGUL SYLLABLE KE
  1259. // 0x_cF1C == code || // Lo HANGUL SYLLABLE KYEO
  1260. // 0x_cF38 == code || // Lo HANGUL SYLLABLE KYE
  1261. // 0x_cF54 == code || // Lo HANGUL SYLLABLE KO
  1262. // 0x_cF70 == code || // Lo HANGUL SYLLABLE KWA
  1263. // 0x_cF8C == code || // Lo HANGUL SYLLABLE KWAE
  1264. // 0x_cFA8 == code || // Lo HANGUL SYLLABLE KOE
  1265. // 0x_cFC4 == code || // Lo HANGUL SYLLABLE KYO
  1266. // 0x_cFE0 == code || // Lo HANGUL SYLLABLE KU
  1267. // 0x_cFFC == code || // Lo HANGUL SYLLABLE KWEO
  1268. // 0x_d018 == code || // Lo HANGUL SYLLABLE KWE
  1269. // 0x_d034 == code || // Lo HANGUL SYLLABLE KWI
  1270. // 0x_d050 == code || // Lo HANGUL SYLLABLE KYU
  1271. // 0x_d06C == code || // Lo HANGUL SYLLABLE KEU
  1272. // 0x_d088 == code || // Lo HANGUL SYLLABLE KYI
  1273. // 0x_d0A4 == code || // Lo HANGUL SYLLABLE KI
  1274. // 0x_d0C0 == code || // Lo HANGUL SYLLABLE TA
  1275. // 0x_d0DC == code || // Lo HANGUL SYLLABLE TAE
  1276. // 0x_d0F8 == code || // Lo HANGUL SYLLABLE TYA
  1277. // 0x_d114 == code || // Lo HANGUL SYLLABLE TYAE
  1278. // 0x_d130 == code || // Lo HANGUL SYLLABLE TEO
  1279. // 0x_d14C == code || // Lo HANGUL SYLLABLE TE
  1280. // 0x_d168 == code || // Lo HANGUL SYLLABLE TYEO
  1281. // 0x_d184 == code || // Lo HANGUL SYLLABLE TYE
  1282. // 0x_d1A0 == code || // Lo HANGUL SYLLABLE TO
  1283. // 0x_d1BC == code || // Lo HANGUL SYLLABLE TWA
  1284. // 0x_d1D8 == code || // Lo HANGUL SYLLABLE TWAE
  1285. // 0x_d1F4 == code || // Lo HANGUL SYLLABLE TOE
  1286. // 0x_d210 == code || // Lo HANGUL SYLLABLE TYO
  1287. // 0x_d22C == code || // Lo HANGUL SYLLABLE TU
  1288. // 0x_d248 == code || // Lo HANGUL SYLLABLE TWEO
  1289. // 0x_d264 == code || // Lo HANGUL SYLLABLE TWE
  1290. // 0x_d280 == code || // Lo HANGUL SYLLABLE TWI
  1291. // 0x_d29C == code || // Lo HANGUL SYLLABLE TYU
  1292. // 0x_d2B8 == code || // Lo HANGUL SYLLABLE TEU
  1293. // 0x_d2D4 == code || // Lo HANGUL SYLLABLE TYI
  1294. // 0x_d2F0 == code || // Lo HANGUL SYLLABLE TI
  1295. // 0x_d30C == code || // Lo HANGUL SYLLABLE PA
  1296. // 0x_d328 == code || // Lo HANGUL SYLLABLE PAE
  1297. // 0x_d344 == code || // Lo HANGUL SYLLABLE PYA
  1298. // 0x_d360 == code || // Lo HANGUL SYLLABLE PYAE
  1299. // 0x_d37C == code || // Lo HANGUL SYLLABLE PEO
  1300. // 0x_d398 == code || // Lo HANGUL SYLLABLE PE
  1301. // 0x_d3B4 == code || // Lo HANGUL SYLLABLE PYEO
  1302. // 0x_d3D0 == code || // Lo HANGUL SYLLABLE PYE
  1303. // 0x_d3EC == code || // Lo HANGUL SYLLABLE PO
  1304. // 0x_d408 == code || // Lo HANGUL SYLLABLE PWA
  1305. // 0x_d424 == code || // Lo HANGUL SYLLABLE PWAE
  1306. // 0x_d440 == code || // Lo HANGUL SYLLABLE POE
  1307. // 0x_d45C == code || // Lo HANGUL SYLLABLE PYO
  1308. // 0x_d478 == code || // Lo HANGUL SYLLABLE PU
  1309. // 0x_d494 == code || // Lo HANGUL SYLLABLE PWEO
  1310. // 0x_d4B0 == code || // Lo HANGUL SYLLABLE PWE
  1311. // 0x_d4CC == code || // Lo HANGUL SYLLABLE PWI
  1312. // 0x_d4E8 == code || // Lo HANGUL SYLLABLE PYU
  1313. // 0x_d504 == code || // Lo HANGUL SYLLABLE PEU
  1314. // 0x_d520 == code || // Lo HANGUL SYLLABLE PYI
  1315. // 0x_d53C == code || // Lo HANGUL SYLLABLE PI
  1316. // 0x_d558 == code || // Lo HANGUL SYLLABLE HA
  1317. // 0x_d574 == code || // Lo HANGUL SYLLABLE HAE
  1318. // 0x_d590 == code || // Lo HANGUL SYLLABLE HYA
  1319. // 0x_d5AC == code || // Lo HANGUL SYLLABLE HYAE
  1320. // 0x_d5C8 == code || // Lo HANGUL SYLLABLE HEO
  1321. // 0x_d5E4 == code || // Lo HANGUL SYLLABLE HE
  1322. // 0x_d600 == code || // Lo HANGUL SYLLABLE HYEO
  1323. // 0x_d61C == code || // Lo HANGUL SYLLABLE HYE
  1324. // 0x_d638 == code || // Lo HANGUL SYLLABLE HO
  1325. // 0x_d654 == code || // Lo HANGUL SYLLABLE HWA
  1326. // 0x_d670 == code || // Lo HANGUL SYLLABLE HWAE
  1327. // 0x_d68C == code || // Lo HANGUL SYLLABLE HOE
  1328. // 0x_d6A8 == code || // Lo HANGUL SYLLABLE HYO
  1329. // 0x_d6C4 == code || // Lo HANGUL SYLLABLE HU
  1330. // 0x_d6E0 == code || // Lo HANGUL SYLLABLE HWEO
  1331. // 0x_d6FC == code || // Lo HANGUL SYLLABLE HWE
  1332. // 0x_d718 == code || // Lo HANGUL SYLLABLE HWI
  1333. // 0x_d734 == code || // Lo HANGUL SYLLABLE HYU
  1334. // 0x_d750 == code || // Lo HANGUL SYLLABLE HEU
  1335. // 0x_d76C == code || // Lo HANGUL SYLLABLE HYI
  1336. // 0x_d788 == code // Lo HANGUL SYLLABLE HI
  1337. // ){
  1338. // return LV;
  1339. // }
  1340. //
  1341. // if(
  1342. // (0x_aC01 <= code && code <= 0x_aC1B) || // Lo [27] HANGUL SYLLABLE GAG..HANGUL SYLLABLE GAH
  1343. // (0x_aC1D <= code && code <= 0x_aC37) || // Lo [27] HANGUL SYLLABLE GAEG..HANGUL SYLLABLE GAEH
  1344. // (0x_aC39 <= code && code <= 0x_aC53) || // Lo [27] HANGUL SYLLABLE GYAG..HANGUL SYLLABLE GYAH
  1345. // (0x_aC55 <= code && code <= 0x_aC6F) || // Lo [27] HANGUL SYLLABLE GYAEG..HANGUL SYLLABLE GYAEH
  1346. // (0x_aC71 <= code && code <= 0x_aC8B) || // Lo [27] HANGUL SYLLABLE GEOG..HANGUL SYLLABLE GEOH
  1347. // (0x_aC8D <= code && code <= 0x_aCA7) || // Lo [27] HANGUL SYLLABLE GEG..HANGUL SYLLABLE GEH
  1348. // (0x_aCA9 <= code && code <= 0x_aCC3) || // Lo [27] HANGUL SYLLABLE GYEOG..HANGUL SYLLABLE GYEOH
  1349. // (0x_aCC5 <= code && code <= 0x_aCDF) || // Lo [27] HANGUL SYLLABLE GYEG..HANGUL SYLLABLE GYEH
  1350. // (0x_aCE1 <= code && code <= 0x_aCFB) || // Lo [27] HANGUL SYLLABLE GOG..HANGUL SYLLABLE GOH
  1351. // (0x_aCFD <= code && code <= 0x_aD17) || // Lo [27] HANGUL SYLLABLE GWAG..HANGUL SYLLABLE GWAH
  1352. // (0x_aD19 <= code && code <= 0x_aD33) || // Lo [27] HANGUL SYLLABLE GWAEG..HANGUL SYLLABLE GWAEH
  1353. // (0x_aD35 <= code && code <= 0x_aD4F) || // Lo [27] HANGUL SYLLABLE GOEG..HANGUL SYLLABLE GOEH
  1354. // (0x_aD51 <= code && code <= 0x_aD6B) || // Lo [27] HANGUL SYLLABLE GYOG..HANGUL SYLLABLE GYOH
  1355. // (0x_aD6D <= code && code <= 0x_aD87) || // Lo [27] HANGUL SYLLABLE GUG..HANGUL SYLLABLE GUH
  1356. // (0x_aD89 <= code && code <= 0x_aDA3) || // Lo [27] HANGUL SYLLABLE GWEOG..HANGUL SYLLABLE GWEOH
  1357. // (0x_aDA5 <= code && code <= 0x_aDBF) || // Lo [27] HANGUL SYLLABLE GWEG..HANGUL SYLLABLE GWEH
  1358. // (0x_aDC1 <= code && code <= 0x_aDDB) || // Lo [27] HANGUL SYLLABLE GWIG..HANGUL SYLLABLE GWIH
  1359. // (0x_aDDD <= code && code <= 0x_aDF7) || // Lo [27] HANGUL SYLLABLE GYUG..HANGUL SYLLABLE GYUH
  1360. // (0x_aDF9 <= code && code <= 0x_aE13) || // Lo [27] HANGUL SYLLABLE GEUG..HANGUL SYLLABLE GEUH
  1361. // (0x_aE15 <= code && code <= 0x_aE2F) || // Lo [27] HANGUL SYLLABLE GYIG..HANGUL SYLLABLE GYIH
  1362. // (0x_aE31 <= code && code <= 0x_aE4B) || // Lo [27] HANGUL SYLLABLE GIG..HANGUL SYLLABLE GIH
  1363. // (0x_aE4D <= code && code <= 0x_aE67) || // Lo [27] HANGUL SYLLABLE GGAG..HANGUL SYLLABLE GGAH
  1364. // (0x_aE69 <= code && code <= 0x_aE83) || // Lo [27] HANGUL SYLLABLE GGAEG..HANGUL SYLLABLE GGAEH
  1365. // (0x_aE85 <= code && code <= 0x_aE9F) || // Lo [27] HANGUL SYLLABLE GGYAG..HANGUL SYLLABLE GGYAH
  1366. // (0x_aEA1 <= code && code <= 0x_aEBB) || // Lo [27] HANGUL SYLLABLE GGYAEG..HANGUL SYLLABLE GGYAEH
  1367. // (0x_aEBD <= code && code <= 0x_aED7) || // Lo [27] HANGUL SYLLABLE GGEOG..HANGUL SYLLABLE GGEOH
  1368. // (0x_aED9 <= code && code <= 0x_aEF3) || // Lo [27] HANGUL SYLLABLE GGEG..HANGUL SYLLABLE GGEH
  1369. // (0x_aEF5 <= code && code <= 0x_aF0F) || // Lo [27] HANGUL SYLLABLE GGYEOG..HANGUL SYLLABLE GGYEOH
  1370. // (0x_aF11 <= code && code <= 0x_aF2B) || // Lo [27] HANGUL SYLLABLE GGYEG..HANGUL SYLLABLE GGYEH
  1371. // (0x_aF2D <= code && code <= 0x_aF47) || // Lo [27] HANGUL SYLLABLE GGOG..HANGUL SYLLABLE GGOH
  1372. // (0x_aF49 <= code && code <= 0x_aF63) || // Lo [27] HANGUL SYLLABLE GGWAG..HANGUL SYLLABLE GGWAH
  1373. // (0x_aF65 <= code && code <= 0x_aF7F) || // Lo [27] HANGUL SYLLABLE GGWAEG..HANGUL SYLLABLE GGWAEH
  1374. // (0x_aF81 <= code && code <= 0x_aF9B) || // Lo [27] HANGUL SYLLABLE GGOEG..HANGUL SYLLABLE GGOEH
  1375. // (0x_aF9D <= code && code <= 0x_aFB7) || // Lo [27] HANGUL SYLLABLE GGYOG..HANGUL SYLLABLE GGYOH
  1376. // (0x_aFB9 <= code && code <= 0x_aFD3) || // Lo [27] HANGUL SYLLABLE GGUG..HANGUL SYLLABLE GGUH
  1377. // (0x_aFD5 <= code && code <= 0x_aFEF) || // Lo [27] HANGUL SYLLABLE GGWEOG..HANGUL SYLLABLE GGWEOH
  1378. // (0x_aFF1 <= code && code <= 0x_b00B) || // Lo [27] HANGUL SYLLABLE GGWEG..HANGUL SYLLABLE GGWEH
  1379. // (0x_b00D <= code && code <= 0x_b027) || // Lo [27] HANGUL SYLLABLE GGWIG..HANGUL SYLLABLE GGWIH
  1380. // (0x_b029 <= code && code <= 0x_b043) || // Lo [27] HANGUL SYLLABLE GGYUG..HANGUL SYLLABLE GGYUH
  1381. // (0x_b045 <= code && code <= 0x_b05F) || // Lo [27] HANGUL SYLLABLE GGEUG..HANGUL SYLLABLE GGEUH
  1382. // (0x_b061 <= code && code <= 0x_b07B) || // Lo [27] HANGUL SYLLABLE GGYIG..HANGUL SYLLABLE GGYIH
  1383. // (0x_b07D <= code && code <= 0x_b097) || // Lo [27] HANGUL SYLLABLE GGIG..HANGUL SYLLABLE GGIH
  1384. // (0x_b099 <= code && code <= 0x_b0B3) || // Lo [27] HANGUL SYLLABLE NAG..HANGUL SYLLABLE NAH
  1385. // (0x_b0B5 <= code && code <= 0x_b0CF) || // Lo [27] HANGUL SYLLABLE NAEG..HANGUL SYLLABLE NAEH
  1386. // (0x_b0D1 <= code && code <= 0x_b0EB) || // Lo [27] HANGUL SYLLABLE NYAG..HANGUL SYLLABLE NYAH
  1387. // (0x_b0ED <= code && code <= 0x_b107) || // Lo [27] HANGUL SYLLABLE NYAEG..HANGUL SYLLABLE NYAEH
  1388. // (0x_b109 <= code && code <= 0x_b123) || // Lo [27] HANGUL SYLLABLE NEOG..HANGUL SYLLABLE NEOH
  1389. // (0x_b125 <= code && code <= 0x_b13F) || // Lo [27] HANGUL SYLLABLE NEG..HANGUL SYLLABLE NEH
  1390. // (0x_b141 <= code && code <= 0x_b15B) || // Lo [27] HANGUL SYLLABLE NYEOG..HANGUL SYLLABLE NYEOH
  1391. // (0x_b15D <= code && code <= 0x_b177) || // Lo [27] HANGUL SYLLABLE NYEG..HANGUL SYLLABLE NYEH
  1392. // (0x_b179 <= code && code <= 0x_b193) || // Lo [27] HANGUL SYLLABLE NOG..HANGUL SYLLABLE NOH
  1393. // (0x_b195 <= code && code <= 0x_b1AF) || // Lo [27] HANGUL SYLLABLE NWAG..HANGUL SYLLABLE NWAH
  1394. // (0x_b1B1 <= code && code <= 0x_b1CB) || // Lo [27] HANGUL SYLLABLE NWAEG..HANGUL SYLLABLE NWAEH
  1395. // (0x_b1CD <= code && code <= 0x_b1E7) || // Lo [27] HANGUL SYLLABLE NOEG..HANGUL SYLLABLE NOEH
  1396. // (0x_b1E9 <= code && code <= 0x_b203) || // Lo [27] HANGUL SYLLABLE NYOG..HANGUL SYLLABLE NYOH
  1397. // (0x_b205 <= code && code <= 0x_b21F) || // Lo [27] HANGUL SYLLABLE NUG..HANGUL SYLLABLE NUH
  1398. // (0x_b221 <= code && code <= 0x_b23B) || // Lo [27] HANGUL SYLLABLE NWEOG..HANGUL SYLLABLE NWEOH
  1399. // (0x_b23D <= code && code <= 0x_b257) || // Lo [27] HANGUL SYLLABLE NWEG..HANGUL SYLLABLE NWEH
  1400. // (0x_b259 <= code && code <= 0x_b273) || // Lo [27] HANGUL SYLLABLE NWIG..HANGUL SYLLABLE NWIH
  1401. // (0x_b275 <= code && code <= 0x_b28F) || // Lo [27] HANGUL SYLLABLE NYUG..HANGUL SYLLABLE NYUH
  1402. // (0x_b291 <= code && code <= 0x_b2AB) || // Lo [27] HANGUL SYLLABLE NEUG..HANGUL SYLLABLE NEUH
  1403. // (0x_b2AD <= code && code <= 0x_b2C7) || // Lo [27] HANGUL SYLLABLE NYIG..HANGUL SYLLABLE NYIH
  1404. // (0x_b2C9 <= code && code <= 0x_b2E3) || // Lo [27] HANGUL SYLLABLE NIG..HANGUL SYLLABLE NIH
  1405. // (0x_b2E5 <= code && code <= 0x_b2FF) || // Lo [27] HANGUL SYLLABLE DAG..HANGUL SYLLABLE DAH
  1406. // (0x_b301 <= code && code <= 0x_b31B) || // Lo [27] HANGUL SYLLABLE DAEG..HANGUL SYLLABLE DAEH
  1407. // (0x_b31D <= code && code <= 0x_b337) || // Lo [27] HANGUL SYLLABLE DYAG..HANGUL SYLLABLE DYAH
  1408. // (0x_b339 <= code && code <= 0x_b353) || // Lo [27] HANGUL SYLLABLE DYAEG..HANGUL SYLLABLE DYAEH
  1409. // (0x_b355 <= code && code <= 0x_b36F) || // Lo [27] HANGUL SYLLABLE DEOG..HANGUL SYLLABLE DEOH
  1410. // (0x_b371 <= code && code <= 0x_b38B) || // Lo [27] HANGUL SYLLABLE DEG..HANGUL SYLLABLE DEH
  1411. // (0x_b38D <= code && code <= 0x_b3A7) || // Lo [27] HANGUL SYLLABLE DYEOG..HANGUL SYLLABLE DYEOH
  1412. // (0x_b3A9 <= code && code <= 0x_b3C3) || // Lo [27] HANGUL SYLLABLE DYEG..HANGUL SYLLABLE DYEH
  1413. // (0x_b3C5 <= code && code <= 0x_b3DF) || // Lo [27] HANGUL SYLLABLE DOG..HANGUL SYLLABLE DOH
  1414. // (0x_b3E1 <= code && code <= 0x_b3FB) || // Lo [27] HANGUL SYLLABLE DWAG..HANGUL SYLLABLE DWAH
  1415. // (0x_b3FD <= code && code <= 0x_b417) || // Lo [27] HANGUL SYLLABLE DWAEG..HANGUL SYLLABLE DWAEH
  1416. // (0x_b419 <= code && code <= 0x_b433) || // Lo [27] HANGUL SYLLABLE DOEG..HANGUL SYLLABLE DOEH
  1417. // (0x_b435 <= code && code <= 0x_b44F) || // Lo [27] HANGUL SYLLABLE DYOG..HANGUL SYLLABLE DYOH
  1418. // (0x_b451 <= code && code <= 0x_b46B) || // Lo [27] HANGUL SYLLABLE DUG..HANGUL SYLLABLE DUH
  1419. // (0x_b46D <= code && code <= 0x_b487) || // Lo [27] HANGUL SYLLABLE DWEOG..HANGUL SYLLABLE DWEOH
  1420. // (0x_b489 <= code && code <= 0x_b4A3) || // Lo [27] HANGUL SYLLABLE DWEG..HANGUL SYLLABLE DWEH
  1421. // (0x_b4A5 <= code && code <= 0x_b4BF) || // Lo [27] HANGUL SYLLABLE DWIG..HANGUL SYLLABLE DWIH
  1422. // (0x_b4C1 <= code && code <= 0x_b4DB) || // Lo [27] HANGUL SYLLABLE DYUG..HANGUL SYLLABLE DYUH
  1423. // (0x_b4DD <= code && code <= 0x_b4F7) || // Lo [27] HANGUL SYLLABLE DEUG..HANGUL SYLLABLE DEUH
  1424. // (0x_b4F9 <= code && code <= 0x_b513) || // Lo [27] HANGUL SYLLABLE DYIG..HANGUL SYLLABLE DYIH
  1425. // (0x_b515 <= code && code <= 0x_b52F) || // Lo [27] HANGUL SYLLABLE DIG..HANGUL SYLLABLE DIH
  1426. // (0x_b531 <= code && code <= 0x_b54B) || // Lo [27] HANGUL SYLLABLE DDAG..HANGUL SYLLABLE DDAH
  1427. // (0x_b54D <= code && code <= 0x_b567) || // Lo [27] HANGUL SYLLABLE DDAEG..HANGUL SYLLABLE DDAEH
  1428. // (0x_b569 <= code && code <= 0x_b583) || // Lo [27] HANGUL SYLLABLE DDYAG..HANGUL SYLLABLE DDYAH
  1429. // (0x_b585 <= code && code <= 0x_b59F) || // Lo [27] HANGUL SYLLABLE DDYAEG..HANGUL SYLLABLE DDYAEH
  1430. // (0x_b5A1 <= code && code <= 0x_b5BB) || // Lo [27] HANGUL SYLLABLE DDEOG..HANGUL SYLLABLE DDEOH
  1431. // (0x_b5BD <= code && code <= 0x_b5D7) || // Lo [27] HANGUL SYLLABLE DDEG..HANGUL SYLLABLE DDEH
  1432. // (0x_b5D9 <= code && code <= 0x_b5F3) || // Lo [27] HANGUL SYLLABLE DDYEOG..HANGUL SYLLABLE DDYEOH
  1433. // (0x_b5F5 <= code && code <= 0x_b60F) || // Lo [27] HANGUL SYLLABLE DDYEG..HANGUL SYLLABLE DDYEH
  1434. // (0x_b611 <= code && code <= 0x_b62B) || // Lo [27] HANGUL SYLLABLE DDOG..HANGUL SYLLABLE DDOH
  1435. // (0x_b62D <= code && code <= 0x_b647) || // Lo [27] HANGUL SYLLABLE DDWAG..HANGUL SYLLABLE DDWAH
  1436. // (0x_b649 <= code && code <= 0x_b663) || // Lo [27] HANGUL SYLLABLE DDWAEG..HANGUL SYLLABLE DDWAEH
  1437. // (0x_b665 <= code && code <= 0x_b67F) || // Lo [27] HANGUL SYLLABLE DDOEG..HANGUL SYLLABLE DDOEH
  1438. // (0x_b681 <= code && code <= 0x_b69B) || // Lo [27] HANGUL SYLLABLE DDYOG..HANGUL SYLLABLE DDYOH
  1439. // (0x_b69D <= code && code <= 0x_b6B7) || // Lo [27] HANGUL SYLLABLE DDUG..HANGUL SYLLABLE DDUH
  1440. // (0x_b6B9 <= code && code <= 0x_b6D3) || // Lo [27] HANGUL SYLLABLE DDWEOG..HANGUL SYLLABLE DDWEOH
  1441. // (0x_b6D5 <= code && code <= 0x_b6EF) || // Lo [27] HANGUL SYLLABLE DDWEG..HANGUL SYLLABLE DDWEH
  1442. // (0x_b6F1 <= code && code <= 0x_b70B) || // Lo [27] HANGUL SYLLABLE DDWIG..HANGUL SYLLABLE DDWIH
  1443. // (0x_b70D <= code && code <= 0x_b727) || // Lo [27] HANGUL SYLLABLE DDYUG..HANGUL SYLLABLE DDYUH
  1444. // (0x_b729 <= code && code <= 0x_b743) || // Lo [27] HANGUL SYLLABLE DDEUG..HANGUL SYLLABLE DDEUH
  1445. // (0x_b745 <= code && code <= 0x_b75F) || // Lo [27] HANGUL SYLLABLE DDYIG..HANGUL SYLLABLE DDYIH
  1446. // (0x_b761 <= code && code <= 0x_b77B) || // Lo [27] HANGUL SYLLABLE DDIG..HANGUL SYLLABLE DDIH
  1447. // (0x_b77D <= code && code <= 0x_b797) || // Lo [27] HANGUL SYLLABLE RAG..HANGUL SYLLABLE RAH
  1448. // (0x_b799 <= code && code <= 0x_b7B3) || // Lo [27] HANGUL SYLLABLE RAEG..HANGUL SYLLABLE RAEH
  1449. // (0x_b7B5 <= code && code <= 0x_b7CF) || // Lo [27] HANGUL SYLLABLE RYAG..HANGUL SYLLABLE RYAH
  1450. // (0x_b7D1 <= code && code <= 0x_b7EB) || // Lo [27] HANGUL SYLLABLE RYAEG..HANGUL SYLLABLE RYAEH
  1451. // (0x_b7ED <= code && code <= 0x_b807) || // Lo [27] HANGUL SYLLABLE REOG..HANGUL SYLLABLE REOH
  1452. // (0x_b809 <= code && code <= 0x_b823) || // Lo [27] HANGUL SYLLABLE REG..HANGUL SYLLABLE REH
  1453. // (0x_b825 <= code && code <= 0x_b83F) || // Lo [27] HANGUL SYLLABLE RYEOG..HANGUL SYLLABLE RYEOH
  1454. // (0x_b841 <= code && code <= 0x_b85B) || // Lo [27] HANGUL SYLLABLE RYEG..HANGUL SYLLABLE RYEH
  1455. // (0x_b85D <= code && code <= 0x_b877) || // Lo [27] HANGUL SYLLABLE ROG..HANGUL SYLLABLE ROH
  1456. // (0x_b879 <= code && code <= 0x_b893) || // Lo [27] HANGUL SYLLABLE RWAG..HANGUL SYLLABLE RWAH
  1457. // (0x_b895 <= code && code <= 0x_b8AF) || // Lo [27] HANGUL SYLLABLE RWAEG..HANGUL SYLLABLE RWAEH
  1458. // (0x_b8B1 <= code && code <= 0x_b8CB) || // Lo [27] HANGUL SYLLABLE ROEG..HANGUL SYLLABLE ROEH
  1459. // (0x_b8CD <= code && code <= 0x_b8E7) || // Lo [27] HANGUL SYLLABLE RYOG..HANGUL SYLLABLE RYOH
  1460. // (0x_b8E9 <= code && code <= 0x_b903) || // Lo [27] HANGUL SYLLABLE RUG..HANGUL SYLLABLE RUH
  1461. // (0x_b905 <= code && code <= 0x_b91F) || // Lo [27] HANGUL SYLLABLE RWEOG..HANGUL SYLLABLE RWEOH
  1462. // (0x_b921 <= code && code <= 0x_b93B) || // Lo [27] HANGUL SYLLABLE RWEG..HANGUL SYLLABLE RWEH
  1463. // (0x_b93D <= code && code <= 0x_b957) || // Lo [27] HANGUL SYLLABLE RWIG..HANGUL SYLLABLE RWIH
  1464. // (0x_b959 <= code && code <= 0x_b973) || // Lo [27] HANGUL SYLLABLE RYUG..HANGUL SYLLABLE RYUH
  1465. // (0x_b975 <= code && code <= 0x_b98F) || // Lo [27] HANGUL SYLLABLE REUG..HANGUL SYLLABLE REUH
  1466. // (0x_b991 <= code && code <= 0x_b9AB) || // Lo [27] HANGUL SYLLABLE RYIG..HANGUL SYLLABLE RYIH
  1467. // (0x_b9AD <= code && code <= 0x_b9C7) || // Lo [27] HANGUL SYLLABLE RIG..HANGUL SYLLABLE RIH
  1468. // (0x_b9C9 <= code && code <= 0x_b9E3) || // Lo [27] HANGUL SYLLABLE MAG..HANGUL SYLLABLE MAH
  1469. // (0x_b9E5 <= code && code <= 0x_b9FF) || // Lo [27] HANGUL SYLLABLE MAEG..HANGUL SYLLABLE MAEH
  1470. // (0x_bA01 <= code && code <= 0x_bA1B) || // Lo [27] HANGUL SYLLABLE MYAG..HANGUL SYLLABLE MYAH
  1471. // (0x_bA1D <= code && code <= 0x_bA37) || // Lo [27] HANGUL SYLLABLE MYAEG..HANGUL SYLLABLE MYAEH
  1472. // (0x_bA39 <= code && code <= 0x_bA53) || // Lo [27] HANGUL SYLLABLE MEOG..HANGUL SYLLABLE MEOH
  1473. // (0x_bA55 <= code && code <= 0x_bA6F) || // Lo [27] HANGUL SYLLABLE MEG..HANGUL SYLLABLE MEH
  1474. // (0x_bA71 <= code && code <= 0x_bA8B) || // Lo [27] HANGUL SYLLABLE MYEOG..HANGUL SYLLABLE MYEOH
  1475. // (0x_bA8D <= code && code <= 0x_bAA7) || // Lo [27] HANGUL SYLLABLE MYEG..HANGUL SYLLABLE MYEH
  1476. // (0x_bAA9 <= code && code <= 0x_bAC3) || // Lo [27] HANGUL SYLLABLE MOG..HANGUL SYLLABLE MOH
  1477. // (0x_bAC5 <= code && code <= 0x_bADF) || // Lo [27] HANGUL SYLLABLE MWAG..HANGUL SYLLABLE MWAH
  1478. // (0x_bAE1 <= code && code <= 0x_bAFB) || // Lo [27] HANGUL SYLLABLE MWAEG..HANGUL SYLLABLE MWAEH
  1479. // (0x_bAFD <= code && code <= 0x_bB17) || // Lo [27] HANGUL SYLLABLE MOEG..HANGUL SYLLABLE MOEH
  1480. // (0x_bB19 <= code && code <= 0x_bB33) || // Lo [27] HANGUL SYLLABLE MYOG..HANGUL SYLLABLE MYOH
  1481. // (0x_bB35 <= code && code <= 0x_bB4F) || // Lo [27] HANGUL SYLLABLE MUG..HANGUL SYLLABLE MUH
  1482. // (0x_bB51 <= code && code <= 0x_bB6B) || // Lo [27] HANGUL SYLLABLE MWEOG..HANGUL SYLLABLE MWEOH
  1483. // (0x_bB6D <= code && code <= 0x_bB87) || // Lo [27] HANGUL SYLLABLE MWEG..HANGUL SYLLABLE MWEH
  1484. // (0x_bB89 <= code && code <= 0x_bBA3) || // Lo [27] HANGUL SYLLABLE MWIG..HANGUL SYLLABLE MWIH
  1485. // (0x_bBA5 <= code && code <= 0x_bBBF) || // Lo [27] HANGUL SYLLABLE MYUG..HANGUL SYLLABLE MYUH
  1486. // (0x_bBC1 <= code && code <= 0x_bBDB) || // Lo [27] HANGUL SYLLABLE MEUG..HANGUL SYLLABLE MEUH
  1487. // (0x_bBDD <= code && code <= 0x_bBF7) || // Lo [27] HANGUL SYLLABLE MYIG..HANGUL SYLLABLE MYIH
  1488. // (0x_bBF9 <= code && code <= 0x_bC13) || // Lo [27] HANGUL SYLLABLE MIG..HANGUL SYLLABLE MIH
  1489. // (0x_bC15 <= code && code <= 0x_bC2F) || // Lo [27] HANGUL SYLLABLE BAG..HANGUL SYLLABLE BAH
  1490. // (0x_bC31 <= code && code <= 0x_bC4B) || // Lo [27] HANGUL SYLLABLE BAEG..HANGUL SYLLABLE BAEH
  1491. // (0x_bC4D <= code && code <= 0x_bC67) || // Lo [27] HANGUL SYLLABLE BYAG..HANGUL SYLLABLE BYAH
  1492. // (0x_bC69 <= code && code <= 0x_bC83) || // Lo [27] HANGUL SYLLABLE BYAEG..HANGUL SYLLABLE BYAEH
  1493. // (0x_bC85 <= code && code <= 0x_bC9F) || // Lo [27] HANGUL SYLLABLE BEOG..HANGUL SYLLABLE BEOH
  1494. // (0x_bCA1 <= code && code <= 0x_bCBB) || // Lo [27] HANGUL SYLLABLE BEG..HANGUL SYLLABLE BEH
  1495. // (0x_bCBD <= code && code <= 0x_bCD7) || // Lo [27] HANGUL SYLLABLE BYEOG..HANGUL SYLLABLE BYEOH
  1496. // (0x_bCD9 <= code && code <= 0x_bCF3) || // Lo [27] HANGUL SYLLABLE BYEG..HANGUL SYLLABLE BYEH
  1497. // (0x_bCF5 <= code && code <= 0x_bD0F) || // Lo [27] HANGUL SYLLABLE BOG..HANGUL SYLLABLE BOH
  1498. // (0x_bD11 <= code && code <= 0x_bD2B) || // Lo [27] HANGUL SYLLABLE BWAG..HANGUL SYLLABLE BWAH
  1499. // (0x_bD2D <= code && code <= 0x_bD47) || // Lo [27] HANGUL SYLLABLE BWAEG..HANGUL SYLLABLE BWAEH
  1500. // (0x_bD49 <= code && code <= 0x_bD63) || // Lo [27] HANGUL SYLLABLE BOEG..HANGUL SYLLABLE BOEH
  1501. // (0x_bD65 <= code && code <= 0x_bD7F) || // Lo [27] HANGUL SYLLABLE BYOG..HANGUL SYLLABLE BYOH
  1502. // (0x_bD81 <= code && code <= 0x_bD9B) || // Lo [27] HANGUL SYLLABLE BUG..HANGUL SYLLABLE BUH
  1503. // (0x_bD9D <= code && code <= 0x_bDB7) || // Lo [27] HANGUL SYLLABLE BWEOG..HANGUL SYLLABLE BWEOH
  1504. // (0x_bDB9 <= code && code <= 0x_bDD3) || // Lo [27] HANGUL SYLLABLE BWEG..HANGUL SYLLABLE BWEH
  1505. // (0x_bDD5 <= code && code <= 0x_bDEF) || // Lo [27] HANGUL SYLLABLE BWIG..HANGUL SYLLABLE BWIH
  1506. // (0x_bDF1 <= code && code <= 0x_bE0B) || // Lo [27] HANGUL SYLLABLE BYUG..HANGUL SYLLABLE BYUH
  1507. // (0x_bE0D <= code && code <= 0x_bE27) || // Lo [27] HANGUL SYLLABLE BEUG..HANGUL SYLLABLE BEUH
  1508. // (0x_bE29 <= code && code <= 0x_bE43) || // Lo [27] HANGUL SYLLABLE BYIG..HANGUL SYLLABLE BYIH
  1509. // (0x_bE45 <= code && code <= 0x_bE5F) || // Lo [27] HANGUL SYLLABLE BIG..HANGUL SYLLABLE BIH
  1510. // (0x_bE61 <= code && code <= 0x_bE7B) || // Lo [27] HANGUL SYLLABLE BBAG..HANGUL SYLLABLE BBAH
  1511. // (0x_bE7D <= code && code <= 0x_bE97) || // Lo [27] HANGUL SYLLABLE BBAEG..HANGUL SYLLABLE BBAEH
  1512. // (0x_bE99 <= code && code <= 0x_bEB3) || // Lo [27] HANGUL SYLLABLE BBYAG..HANGUL SYLLABLE BBYAH
  1513. // (0x_bEB5 <= code && code <= 0x_bECF) || // Lo [27] HANGUL SYLLABLE BBYAEG..HANGUL SYLLABLE BBYAEH
  1514. // (0x_bED1 <= code && code <= 0x_bEEB) || // Lo [27] HANGUL SYLLABLE BBEOG..HANGUL SYLLABLE BBEOH
  1515. // (0x_bEED <= code && code <= 0x_bF07) || // Lo [27] HANGUL SYLLABLE BBEG..HANGUL SYLLABLE BBEH
  1516. // (0x_bF09 <= code && code <= 0x_bF23) || // Lo [27] HANGUL SYLLABLE BBYEOG..HANGUL SYLLABLE BBYEOH
  1517. // (0x_bF25 <= code && code <= 0x_bF3F) || // Lo [27] HANGUL SYLLABLE BBYEG..HANGUL SYLLABLE BBYEH
  1518. // (0x_bF41 <= code && code <= 0x_bF5B) || // Lo [27] HANGUL SYLLABLE BBOG..HANGUL SYLLABLE BBOH
  1519. // (0x_bF5D <= code && code <= 0x_bF77) || // Lo [27] HANGUL SYLLABLE BBWAG..HANGUL SYLLABLE BBWAH
  1520. // (0x_bF79 <= code && code <= 0x_bF93) || // Lo [27] HANGUL SYLLABLE BBWAEG..HANGUL SYLLABLE BBWAEH
  1521. // (0x_bF95 <= code && code <= 0x_bFAF) || // Lo [27] HANGUL SYLLABLE BBOEG..HANGUL SYLLABLE BBOEH
  1522. // (0x_bFB1 <= code && code <= 0x_bFCB) || // Lo [27] HANGUL SYLLABLE BBYOG..HANGUL SYLLABLE BBYOH
  1523. // (0x_bFCD <= code && code <= 0x_bFE7) || // Lo [27] HANGUL SYLLABLE BBUG..HANGUL SYLLABLE BBUH
  1524. // (0x_bFE9 <= code && code <= 0x_c003) || // Lo [27] HANGUL SYLLABLE BBWEOG..HANGUL SYLLABLE BBWEOH
  1525. // (0x_c005 <= code && code <= 0x_c01F) || // Lo [27] HANGUL SYLLABLE BBWEG..HANGUL SYLLABLE BBWEH
  1526. // (0x_c021 <= code && code <= 0x_c03B) || // Lo [27] HANGUL SYLLABLE BBWIG..HANGUL SYLLABLE BBWIH
  1527. // (0x_c03D <= code && code <= 0x_c057) || // Lo [27] HANGUL SYLLABLE BBYUG..HANGUL SYLLABLE BBYUH
  1528. // (0x_c059 <= code && code <= 0x_c073) || // Lo [27] HANGUL SYLLABLE BBEUG..HANGUL SYLLABLE BBEUH
  1529. // (0x_c075 <= code && code <= 0x_c08F) || // Lo [27] HANGUL SYLLABLE BBYIG..HANGUL SYLLABLE BBYIH
  1530. // (0x_c091 <= code && code <= 0x_c0AB) || // Lo [27] HANGUL SYLLABLE BBIG..HANGUL SYLLABLE BBIH
  1531. // (0x_c0AD <= code && code <= 0x_c0C7) || // Lo [27] HANGUL SYLLABLE SAG..HANGUL SYLLABLE SAH
  1532. // (0x_c0C9 <= code && code <= 0x_c0E3) || // Lo [27] HANGUL SYLLABLE SAEG..HANGUL SYLLABLE SAEH
  1533. // (0x_c0E5 <= code && code <= 0x_c0FF) || // Lo [27] HANGUL SYLLABLE SYAG..HANGUL SYLLABLE SYAH
  1534. // (0x_c101 <= code && code <= 0x_c11B) || // Lo [27] HANGUL SYLLABLE SYAEG..HANGUL SYLLABLE SYAEH
  1535. // (0x_c11D <= code && code <= 0x_c137) || // Lo [27] HANGUL SYLLABLE SEOG..HANGUL SYLLABLE SEOH
  1536. // (0x_c139 <= code && code <= 0x_c153) || // Lo [27] HANGUL SYLLABLE SEG..HANGUL SYLLABLE SEH
  1537. // (0x_c155 <= code && code <= 0x_c16F) || // Lo [27] HANGUL SYLLABLE SYEOG..HANGUL SYLLABLE SYEOH
  1538. // (0x_c171 <= code && code <= 0x_c18B) || // Lo [27] HANGUL SYLLABLE SYEG..HANGUL SYLLABLE SYEH
  1539. // (0x_c18D <= code && code <= 0x_c1A7) || // Lo [27] HANGUL SYLLABLE SOG..HANGUL SYLLABLE SOH
  1540. // (0x_c1A9 <= code && code <= 0x_c1C3) || // Lo [27] HANGUL SYLLABLE SWAG..HANGUL SYLLABLE SWAH
  1541. // (0x_c1C5 <= code && code <= 0x_c1DF) || // Lo [27] HANGUL SYLLABLE SWAEG..HANGUL SYLLABLE SWAEH
  1542. // (0x_c1E1 <= code && code <= 0x_c1FB) || // Lo [27] HANGUL SYLLABLE SOEG..HANGUL SYLLABLE SOEH
  1543. // (0x_c1FD <= code && code <= 0x_c217) || // Lo [27] HANGUL SYLLABLE SYOG..HANGUL SYLLABLE SYOH
  1544. // (0x_c219 <= code && code <= 0x_c233) || // Lo [27] HANGUL SYLLABLE SUG..HANGUL SYLLABLE SUH
  1545. // (0x_c235 <= code && code <= 0x_c24F) || // Lo [27] HANGUL SYLLABLE SWEOG..HANGUL SYLLABLE SWEOH
  1546. // (0x_c251 <= code && code <= 0x_c26B) || // Lo [27] HANGUL SYLLABLE SWEG..HANGUL SYLLABLE SWEH
  1547. // (0x_c26D <= code && code <= 0x_c287) || // Lo [27] HANGUL SYLLABLE SWIG..HANGUL SYLLABLE SWIH
  1548. // (0x_c289 <= code && code <= 0x_c2A3) || // Lo [27] HANGUL SYLLABLE SYUG..HANGUL SYLLABLE SYUH
  1549. // (0x_c2A5 <= code && code <= 0x_c2BF) || // Lo [27] HANGUL SYLLABLE SEUG..HANGUL SYLLABLE SEUH
  1550. // (0x_c2C1 <= code && code <= 0x_c2DB) || // Lo [27] HANGUL SYLLABLE SYIG..HANGUL SYLLABLE SYIH
  1551. // (0x_c2DD <= code && code <= 0x_c2F7) || // Lo [27] HANGUL SYLLABLE SIG..HANGUL SYLLABLE SIH
  1552. // (0x_c2F9 <= code && code <= 0x_c313) || // Lo [27] HANGUL SYLLABLE SSAG..HANGUL SYLLABLE SSAH
  1553. // (0x_c315 <= code && code <= 0x_c32F) || // Lo [27] HANGUL SYLLABLE SSAEG..HANGUL SYLLABLE SSAEH
  1554. // (0x_c331 <= code && code <= 0x_c34B) || // Lo [27] HANGUL SYLLABLE SSYAG..HANGUL SYLLABLE SSYAH
  1555. // (0x_c34D <= code && code <= 0x_c367) || // Lo [27] HANGUL SYLLABLE SSYAEG..HANGUL SYLLABLE SSYAEH
  1556. // (0x_c369 <= code && code <= 0x_c383) || // Lo [27] HANGUL SYLLABLE SSEOG..HANGUL SYLLABLE SSEOH
  1557. // (0x_c385 <= code && code <= 0x_c39F) || // Lo [27] HANGUL SYLLABLE SSEG..HANGUL SYLLABLE SSEH
  1558. // (0x_c3A1 <= code && code <= 0x_c3BB) || // Lo [27] HANGUL SYLLABLE SSYEOG..HANGUL SYLLABLE SSYEOH
  1559. // (0x_c3BD <= code && code <= 0x_c3D7) || // Lo [27] HANGUL SYLLABLE SSYEG..HANGUL SYLLABLE SSYEH
  1560. // (0x_c3D9 <= code && code <= 0x_c3F3) || // Lo [27] HANGUL SYLLABLE SSOG..HANGUL SYLLABLE SSOH
  1561. // (0x_c3F5 <= code && code <= 0x_c40F) || // Lo [27] HANGUL SYLLABLE SSWAG..HANGUL SYLLABLE SSWAH
  1562. // (0x_c411 <= code && code <= 0x_c42B) || // Lo [27] HANGUL SYLLABLE SSWAEG..HANGUL SYLLABLE SSWAEH
  1563. // (0x_c42D <= code && code <= 0x_c447) || // Lo [27] HANGUL SYLLABLE SSOEG..HANGUL SYLLABLE SSOEH
  1564. // (0x_c449 <= code && code <= 0x_c463) || // Lo [27] HANGUL SYLLABLE SSYOG..HANGUL SYLLABLE SSYOH
  1565. // (0x_c465 <= code && code <= 0x_c47F) || // Lo [27] HANGUL SYLLABLE SSUG..HANGUL SYLLABLE SSUH
  1566. // (0x_c481 <= code && code <= 0x_c49B) || // Lo [27] HANGUL SYLLABLE SSWEOG..HANGUL SYLLABLE SSWEOH
  1567. // (0x_c49D <= code && code <= 0x_c4B7) || // Lo [27] HANGUL SYLLABLE SSWEG..HANGUL SYLLABLE SSWEH
  1568. // (0x_c4B9 <= code && code <= 0x_c4D3) || // Lo [27] HANGUL SYLLABLE SSWIG..HANGUL SYLLABLE SSWIH
  1569. // (0x_c4D5 <= code && code <= 0x_c4EF) || // Lo [27] HANGUL SYLLABLE SSYUG..HANGUL SYLLABLE SSYUH
  1570. // (0x_c4F1 <= code && code <= 0x_c50B) || // Lo [27] HANGUL SYLLABLE SSEUG..HANGUL SYLLABLE SSEUH
  1571. // (0x_c50D <= code && code <= 0x_c527) || // Lo [27] HANGUL SYLLABLE SSYIG..HANGUL SYLLABLE SSYIH
  1572. // (0x_c529 <= code && code <= 0x_c543) || // Lo [27] HANGUL SYLLABLE SSIG..HANGUL SYLLABLE SSIH
  1573. // (0x_c545 <= code && code <= 0x_c55F) || // Lo [27] HANGUL SYLLABLE AG..HANGUL SYLLABLE AH
  1574. // (0x_c561 <= code && code <= 0x_c57B) || // Lo [27] HANGUL SYLLABLE AEG..HANGUL SYLLABLE AEH
  1575. // (0x_c57D <= code && code <= 0x_c597) || // Lo [27] HANGUL SYLLABLE YAG..HANGUL SYLLABLE YAH
  1576. // (0x_c599 <= code && code <= 0x_c5B3) || // Lo [27] HANGUL SYLLABLE YAEG..HANGUL SYLLABLE YAEH
  1577. // (0x_c5B5 <= code && code <= 0x_c5CF) || // Lo [27] HANGUL SYLLABLE EOG..HANGUL SYLLABLE EOH
  1578. // (0x_c5D1 <= code && code <= 0x_c5EB) || // Lo [27] HANGUL SYLLABLE EG..HANGUL SYLLABLE EH
  1579. // (0x_c5ED <= code && code <= 0x_c607) || // Lo [27] HANGUL SYLLABLE YEOG..HANGUL SYLLABLE YEOH
  1580. // (0x_c609 <= code && code <= 0x_c623) || // Lo [27] HANGUL SYLLABLE YEG..HANGUL SYLLABLE YEH
  1581. // (0x_c625 <= code && code <= 0x_c63F) || // Lo [27] HANGUL SYLLABLE OG..HANGUL SYLLABLE OH
  1582. // (0x_c641 <= code && code <= 0x_c65B) || // Lo [27] HANGUL SYLLABLE WAG..HANGUL SYLLABLE WAH
  1583. // (0x_c65D <= code && code <= 0x_c677) || // Lo [27] HANGUL SYLLABLE WAEG..HANGUL SYLLABLE WAEH
  1584. // (0x_c679 <= code && code <= 0x_c693) || // Lo [27] HANGUL SYLLABLE OEG..HANGUL SYLLABLE OEH
  1585. // (0x_c695 <= code && code <= 0x_c6AF) || // Lo [27] HANGUL SYLLABLE YOG..HANGUL SYLLABLE YOH
  1586. // (0x_c6B1 <= code && code <= 0x_c6CB) || // Lo [27] HANGUL SYLLABLE UG..HANGUL SYLLABLE UH
  1587. // (0x_c6CD <= code && code <= 0x_c6E7) || // Lo [27] HANGUL SYLLABLE WEOG..HANGUL SYLLABLE WEOH
  1588. // (0x_c6E9 <= code && code <= 0x_c703) || // Lo [27] HANGUL SYLLABLE WEG..HANGUL SYLLABLE WEH
  1589. // (0x_c705 <= code && code <= 0x_c71F) || // Lo [27] HANGUL SYLLABLE WIG..HANGUL SYLLABLE WIH
  1590. // (0x_c721 <= code && code <= 0x_c73B) || // Lo [27] HANGUL SYLLABLE YUG..HANGUL SYLLABLE YUH
  1591. // (0x_c73D <= code && code <= 0x_c757) || // Lo [27] HANGUL SYLLABLE EUG..HANGUL SYLLABLE EUH
  1592. // (0x_c759 <= code && code <= 0x_c773) || // Lo [27] HANGUL SYLLABLE YIG..HANGUL SYLLABLE YIH
  1593. // (0x_c775 <= code && code <= 0x_c78F) || // Lo [27] HANGUL SYLLABLE IG..HANGUL SYLLABLE IH
  1594. // (0x_c791 <= code && code <= 0x_c7AB) || // Lo [27] HANGUL SYLLABLE JAG..HANGUL SYLLABLE JAH
  1595. // (0x_c7AD <= code && code <= 0x_c7C7) || // Lo [27] HANGUL SYLLABLE JAEG..HANGUL SYLLABLE JAEH
  1596. // (0x_c7C9 <= code && code <= 0x_c7E3) || // Lo [27] HANGUL SYLLABLE JYAG..HANGUL SYLLABLE JYAH
  1597. // (0x_c7E5 <= code && code <= 0x_c7FF) || // Lo [27] HANGUL SYLLABLE JYAEG..HANGUL SYLLABLE JYAEH
  1598. // (0x_c801 <= code && code <= 0x_c81B) || // Lo [27] HANGUL SYLLABLE JEOG..HANGUL SYLLABLE JEOH
  1599. // (0x_c81D <= code && code <= 0x_c837) || // Lo [27] HANGUL SYLLABLE JEG..HANGUL SYLLABLE JEH
  1600. // (0x_c839 <= code && code <= 0x_c853) || // Lo [27] HANGUL SYLLABLE JYEOG..HANGUL SYLLABLE JYEOH
  1601. // (0x_c855 <= code && code <= 0x_c86F) || // Lo [27] HANGUL SYLLABLE JYEG..HANGUL SYLLABLE JYEH
  1602. // (0x_c871 <= code && code <= 0x_c88B) || // Lo [27] HANGUL SYLLABLE JOG..HANGUL SYLLABLE JOH
  1603. // (0x_c88D <= code && code <= 0x_c8A7) || // Lo [27] HANGUL SYLLABLE JWAG..HANGUL SYLLABLE JWAH
  1604. // (0x_c8A9 <= code && code <= 0x_c8C3) || // Lo [27] HANGUL SYLLABLE JWAEG..HANGUL SYLLABLE JWAEH
  1605. // (0x_c8C5 <= code && code <= 0x_c8DF) || // Lo [27] HANGUL SYLLABLE JOEG..HANGUL SYLLABLE JOEH
  1606. // (0x_c8E1 <= code && code <= 0x_c8FB) || // Lo [27] HANGUL SYLLABLE JYOG..HANGUL SYLLABLE JYOH
  1607. // (0x_c8FD <= code && code <= 0x_c917) || // Lo [27] HANGUL SYLLABLE JUG..HANGUL SYLLABLE JUH
  1608. // (0x_c919 <= code && code <= 0x_c933) || // Lo [27] HANGUL SYLLABLE JWEOG..HANGUL SYLLABLE JWEOH
  1609. // (0x_c935 <= code && code <= 0x_c94F) || // Lo [27] HANGUL SYLLABLE JWEG..HANGUL SYLLABLE JWEH
  1610. // (0x_c951 <= code && code <= 0x_c96B) || // Lo [27] HANGUL SYLLABLE JWIG..HANGUL SYLLABLE JWIH
  1611. // (0x_c96D <= code && code <= 0x_c987) || // Lo [27] HANGUL SYLLABLE JYUG..HANGUL SYLLABLE JYUH
  1612. // (0x_c989 <= code && code <= 0x_c9A3) || // Lo [27] HANGUL SYLLABLE JEUG..HANGUL SYLLABLE JEUH
  1613. // (0x_c9A5 <= code && code <= 0x_c9BF) || // Lo [27] HANGUL SYLLABLE JYIG..HANGUL SYLLABLE JYIH
  1614. // (0x_c9C1 <= code && code <= 0x_c9DB) || // Lo [27] HANGUL SYLLABLE JIG..HANGUL SYLLABLE JIH
  1615. // (0x_c9DD <= code && code <= 0x_c9F7) || // Lo [27] HANGUL SYLLABLE JJAG..HANGUL SYLLABLE JJAH
  1616. // (0x_c9F9 <= code && code <= 0x_cA13) || // Lo [27] HANGUL SYLLABLE JJAEG..HANGUL SYLLABLE JJAEH
  1617. // (0x_cA15 <= code && code <= 0x_cA2F) || // Lo [27] HANGUL SYLLABLE JJYAG..HANGUL SYLLABLE JJYAH
  1618. // (0x_cA31 <= code && code <= 0x_cA4B) || // Lo [27] HANGUL SYLLABLE JJYAEG..HANGUL SYLLABLE JJYAEH
  1619. // (0x_cA4D <= code && code <= 0x_cA67) || // Lo [27] HANGUL SYLLABLE JJEOG..HANGUL SYLLABLE JJEOH
  1620. // (0x_cA69 <= code && code <= 0x_cA83) || // Lo [27] HANGUL SYLLABLE JJEG..HANGUL SYLLABLE JJEH
  1621. // (0x_cA85 <= code && code <= 0x_cA9F) || // Lo [27] HANGUL SYLLABLE JJYEOG..HANGUL SYLLABLE JJYEOH
  1622. // (0x_cAA1 <= code && code <= 0x_cABB) || // Lo [27] HANGUL SYLLABLE JJYEG..HANGUL SYLLABLE JJYEH
  1623. // (0x_cABD <= code && code <= 0x_cAD7) || // Lo [27] HANGUL SYLLABLE JJOG..HANGUL SYLLABLE JJOH
  1624. // (0x_cAD9 <= code && code <= 0x_cAF3) || // Lo [27] HANGUL SYLLABLE JJWAG..HANGUL SYLLABLE JJWAH
  1625. // (0x_cAF5 <= code && code <= 0x_cB0F) || // Lo [27] HANGUL SYLLABLE JJWAEG..HANGUL SYLLABLE JJWAEH
  1626. // (0x_cB11 <= code && code <= 0x_cB2B) || // Lo [27] HANGUL SYLLABLE JJOEG..HANGUL SYLLABLE JJOEH
  1627. // (0x_cB2D <= code && code <= 0x_cB47) || // Lo [27] HANGUL SYLLABLE JJYOG..HANGUL SYLLABLE JJYOH
  1628. // (0x_cB49 <= code && code <= 0x_cB63) || // Lo [27] HANGUL SYLLABLE JJUG..HANGUL SYLLABLE JJUH
  1629. // (0x_cB65 <= code && code <= 0x_cB7F) || // Lo [27] HANGUL SYLLABLE JJWEOG..HANGUL SYLLABLE JJWEOH
  1630. // (0x_cB81 <= code && code <= 0x_cB9B) || // Lo [27] HANGUL SYLLABLE JJWEG..HANGUL SYLLABLE JJWEH
  1631. // (0x_cB9D <= code && code <= 0x_cBB7) || // Lo [27] HANGUL SYLLABLE JJWIG..HANGUL SYLLABLE JJWIH
  1632. // (0x_cBB9 <= code && code <= 0x_cBD3) || // Lo [27] HANGUL SYLLABLE JJYUG..HANGUL SYLLABLE JJYUH
  1633. // (0x_cBD5 <= code && code <= 0x_cBEF) || // Lo [27] HANGUL SYLLABLE JJEUG..HANGUL SYLLABLE JJEUH
  1634. // (0x_cBF1 <= code && code <= 0x_cC0B) || // Lo [27] HANGUL SYLLABLE JJYIG..HANGUL SYLLABLE JJYIH
  1635. // (0x_cC0D <= code && code <= 0x_cC27) || // Lo [27] HANGUL SYLLABLE JJIG..HANGUL SYLLABLE JJIH
  1636. // (0x_cC29 <= code && code <= 0x_cC43) || // Lo [27] HANGUL SYLLABLE CAG..HANGUL SYLLABLE CAH
  1637. // (0x_cC45 <= code && code <= 0x_cC5F) || // Lo [27] HANGUL SYLLABLE CAEG..HANGUL SYLLABLE CAEH
  1638. // (0x_cC61 <= code && code <= 0x_cC7B) || // Lo [27] HANGUL SYLLABLE CYAG..HANGUL SYLLABLE CYAH
  1639. // (0x_cC7D <= code && code <= 0x_cC97) || // Lo [27] HANGUL SYLLABLE CYAEG..HANGUL SYLLABLE CYAEH
  1640. // (0x_cC99 <= code && code <= 0x_cCB3) || // Lo [27] HANGUL SYLLABLE CEOG..HANGUL SYLLABLE CEOH
  1641. // (0x_cCB5 <= code && code <= 0x_cCCF) || // Lo [27] HANGUL SYLLABLE CEG..HANGUL SYLLABLE CEH
  1642. // (0x_cCD1 <= code && code <= 0x_cCEB) || // Lo [27] HANGUL SYLLABLE CYEOG..HANGUL SYLLABLE CYEOH
  1643. // (0x_cCED <= code && code <= 0x_cD07) || // Lo [27] HANGUL SYLLABLE CYEG..HANGUL SYLLABLE CYEH
  1644. // (0x_cD09 <= code && code <= 0x_cD23) || // Lo [27] HANGUL SYLLABLE COG..HANGUL SYLLABLE COH
  1645. // (0x_cD25 <= code && code <= 0x_cD3F) || // Lo [27] HANGUL SYLLABLE CWAG..HANGUL SYLLABLE CWAH
  1646. // (0x_cD41 <= code && code <= 0x_cD5B) || // Lo [27] HANGUL SYLLABLE CWAEG..HANGUL SYLLABLE CWAEH
  1647. // (0x_cD5D <= code && code <= 0x_cD77) || // Lo [27] HANGUL SYLLABLE COEG..HANGUL SYLLABLE COEH
  1648. // (0x_cD79 <= code && code <= 0x_cD93) || // Lo [27] HANGUL SYLLABLE CYOG..HANGUL SYLLABLE CYOH
  1649. // (0x_cD95 <= code && code <= 0x_cDAF) || // Lo [27] HANGUL SYLLABLE CUG..HANGUL SYLLABLE CUH
  1650. // (0x_cDB1 <= code && code <= 0x_cDCB) || // Lo [27] HANGUL SYLLABLE CWEOG..HANGUL SYLLABLE CWEOH
  1651. // (0x_cDCD <= code && code <= 0x_cDE7) || // Lo [27] HANGUL SYLLABLE CWEG..HANGUL SYLLABLE CWEH
  1652. // (0x_cDE9 <= code && code <= 0x_cE03) || // Lo [27] HANGUL SYLLABLE CWIG..HANGUL SYLLABLE CWIH
  1653. // (0x_cE05 <= code && code <= 0x_cE1F) || // Lo [27] HANGUL SYLLABLE CYUG..HANGUL SYLLABLE CYUH
  1654. // (0x_cE21 <= code && code <= 0x_cE3B) || // Lo [27] HANGUL SYLLABLE CEUG..HANGUL SYLLABLE CEUH
  1655. // (0x_cE3D <= code && code <= 0x_cE57) || // Lo [27] HANGUL SYLLABLE CYIG..HANGUL SYLLABLE CYIH
  1656. // (0x_cE59 <= code && code <= 0x_cE73) || // Lo [27] HANGUL SYLLABLE CIG..HANGUL SYLLABLE CIH
  1657. // (0x_cE75 <= code && code <= 0x_cE8F) || // Lo [27] HANGUL SYLLABLE KAG..HANGUL SYLLABLE KAH
  1658. // (0x_cE91 <= code && code <= 0x_cEAB) || // Lo [27] HANGUL SYLLABLE KAEG..HANGUL SYLLABLE KAEH
  1659. // (0x_cEAD <= code && code <= 0x_cEC7) || // Lo [27] HANGUL SYLLABLE KYAG..HANGUL SYLLABLE KYAH
  1660. // (0x_cEC9 <= code && code <= 0x_cEE3) || // Lo [27] HANGUL SYLLABLE KYAEG..HANGUL SYLLABLE KYAEH
  1661. // (0x_cEE5 <= code && code <= 0x_cEFF) || // Lo [27] HANGUL SYLLABLE KEOG..HANGUL SYLLABLE KEOH
  1662. // (0x_cF01 <= code && code <= 0x_cF1B) || // Lo [27] HANGUL SYLLABLE KEG..HANGUL SYLLABLE KEH
  1663. // (0x_cF1D <= code && code <= 0x_cF37) || // Lo [27] HANGUL SYLLABLE KYEOG..HANGUL SYLLABLE KYEOH
  1664. // (0x_cF39 <= code && code <= 0x_cF53) || // Lo [27] HANGUL SYLLABLE KYEG..HANGUL SYLLABLE KYEH
  1665. // (0x_cF55 <= code && code <= 0x_cF6F) || // Lo [27] HANGUL SYLLABLE KOG..HANGUL SYLLABLE KOH
  1666. // (0x_cF71 <= code && code <= 0x_cF8B) || // Lo [27] HANGUL SYLLABLE KWAG..HANGUL SYLLABLE KWAH
  1667. // (0x_cF8D <= code && code <= 0x_cFA7) || // Lo [27] HANGUL SYLLABLE KWAEG..HANGUL SYLLABLE KWAEH
  1668. // (0x_cFA9 <= code && code <= 0x_cFC3) || // Lo [27] HANGUL SYLLABLE KOEG..HANGUL SYLLABLE KOEH
  1669. // (0x_cFC5 <= code && code <= 0x_cFDF) || // Lo [27] HANGUL SYLLABLE KYOG..HANGUL SYLLABLE KYOH
  1670. // (0x_cFE1 <= code && code <= 0x_cFFB) || // Lo [27] HANGUL SYLLABLE KUG..HANGUL SYLLABLE KUH
  1671. // (0x_cFFD <= code && code <= 0x_d017) || // Lo [27] HANGUL SYLLABLE KWEOG..HANGUL SYLLABLE KWEOH
  1672. // (0x_d019 <= code && code <= 0x_d033) || // Lo [27] HANGUL SYLLABLE KWEG..HANGUL SYLLABLE KWEH
  1673. // (0x_d035 <= code && code <= 0x_d04F) || // Lo [27] HANGUL SYLLABLE KWIG..HANGUL SYLLABLE KWIH
  1674. // (0x_d051 <= code && code <= 0x_d06B) || // Lo [27] HANGUL SYLLABLE KYUG..HANGUL SYLLABLE KYUH
  1675. // (0x_d06D <= code && code <= 0x_d087) || // Lo [27] HANGUL SYLLABLE KEUG..HANGUL SYLLABLE KEUH
  1676. // (0x_d089 <= code && code <= 0x_d0A3) || // Lo [27] HANGUL SYLLABLE KYIG..HANGUL SYLLABLE KYIH
  1677. // (0x_d0A5 <= code && code <= 0x_d0BF) || // Lo [27] HANGUL SYLLABLE KIG..HANGUL SYLLABLE KIH
  1678. // (0x_d0C1 <= code && code <= 0x_d0DB) || // Lo [27] HANGUL SYLLABLE TAG..HANGUL SYLLABLE TAH
  1679. // (0x_d0DD <= code && code <= 0x_d0F7) || // Lo [27] HANGUL SYLLABLE TAEG..HANGUL SYLLABLE TAEH
  1680. // (0x_d0F9 <= code && code <= 0x_d113) || // Lo [27] HANGUL SYLLABLE TYAG..HANGUL SYLLABLE TYAH
  1681. // (0x_d115 <= code && code <= 0x_d12F) || // Lo [27] HANGUL SYLLABLE TYAEG..HANGUL SYLLABLE TYAEH
  1682. // (0x_d131 <= code && code <= 0x_d14B) || // Lo [27] HANGUL SYLLABLE TEOG..HANGUL SYLLABLE TEOH
  1683. // (0x_d14D <= code && code <= 0x_d167) || // Lo [27] HANGUL SYLLABLE TEG..HANGUL SYLLABLE TEH
  1684. // (0x_d169 <= code && code <= 0x_d183) || // Lo [27] HANGUL SYLLABLE TYEOG..HANGUL SYLLABLE TYEOH
  1685. // (0x_d185 <= code && code <= 0x_d19F) || // Lo [27] HANGUL SYLLABLE TYEG..HANGUL SYLLABLE TYEH
  1686. // (0x_d1A1 <= code && code <= 0x_d1BB) || // Lo [27] HANGUL SYLLABLE TOG..HANGUL SYLLABLE TOH
  1687. // (0x_d1BD <= code && code <= 0x_d1D7) || // Lo [27] HANGUL SYLLABLE TWAG..HANGUL SYLLABLE TWAH
  1688. // (0x_d1D9 <= code && code <= 0x_d1F3) || // Lo [27] HANGUL SYLLABLE TWAEG..HANGUL SYLLABLE TWAEH
  1689. // (0x_d1F5 <= code && code <= 0x_d20F) || // Lo [27] HANGUL SYLLABLE TOEG..HANGUL SYLLABLE TOEH
  1690. // (0x_d211 <= code && code <= 0x_d22B) || // Lo [27] HANGUL SYLLABLE TYOG..HANGUL SYLLABLE TYOH
  1691. // (0x_d22D <= code && code <= 0x_d247) || // Lo [27] HANGUL SYLLABLE TUG..HANGUL SYLLABLE TUH
  1692. // (0x_d249 <= code && code <= 0x_d263) || // Lo [27] HANGUL SYLLABLE TWEOG..HANGUL SYLLABLE TWEOH
  1693. // (0x_d265 <= code && code <= 0x_d27F) || // Lo [27] HANGUL SYLLABLE TWEG..HANGUL SYLLABLE TWEH
  1694. // (0x_d281 <= code && code <= 0x_d29B) || // Lo [27] HANGUL SYLLABLE TWIG..HANGUL SYLLABLE TWIH
  1695. // (0x_d29D <= code && code <= 0x_d2B7) || // Lo [27] HANGUL SYLLABLE TYUG..HANGUL SYLLABLE TYUH
  1696. // (0x_d2B9 <= code && code <= 0x_d2D3) || // Lo [27] HANGUL SYLLABLE TEUG..HANGUL SYLLABLE TEUH
  1697. // (0x_d2D5 <= code && code <= 0x_d2EF) || // Lo [27] HANGUL SYLLABLE TYIG..HANGUL SYLLABLE TYIH
  1698. // (0x_d2F1 <= code && code <= 0x_d30B) || // Lo [27] HANGUL SYLLABLE TIG..HANGUL SYLLABLE TIH
  1699. // (0x_d30D <= code && code <= 0x_d327) || // Lo [27] HANGUL SYLLABLE PAG..HANGUL SYLLABLE PAH
  1700. // (0x_d329 <= code && code <= 0x_d343) || // Lo [27] HANGUL SYLLABLE PAEG..HANGUL SYLLABLE PAEH
  1701. // (0x_d345 <= code && code <= 0x_d35F) || // Lo [27] HANGUL SYLLABLE PYAG..HANGUL SYLLABLE PYAH
  1702. // (0x_d361 <= code && code <= 0x_d37B) || // Lo [27] HANGUL SYLLABLE PYAEG..HANGUL SYLLABLE PYAEH
  1703. // (0x_d37D <= code && code <= 0x_d397) || // Lo [27] HANGUL SYLLABLE PEOG..HANGUL SYLLABLE PEOH
  1704. // (0x_d399 <= code && code <= 0x_d3B3) || // Lo [27] HANGUL SYLLABLE PEG..HANGUL SYLLABLE PEH
  1705. // (0x_d3B5 <= code && code <= 0x_d3CF) || // Lo [27] HANGUL SYLLABLE PYEOG..HANGUL SYLLABLE PYEOH
  1706. // (0x_d3D1 <= code && code <= 0x_d3EB) || // Lo [27] HANGUL SYLLABLE PYEG..HANGUL SYLLABLE PYEH
  1707. // (0x_d3ED <= code && code <= 0x_d407) || // Lo [27] HANGUL SYLLABLE POG..HANGUL SYLLABLE POH
  1708. // (0x_d409 <= code && code <= 0x_d423) || // Lo [27] HANGUL SYLLABLE PWAG..HANGUL SYLLABLE PWAH
  1709. // (0x_d425 <= code && code <= 0x_d43F) || // Lo [27] HANGUL SYLLABLE PWAEG..HANGUL SYLLABLE PWAEH
  1710. // (0x_d441 <= code && code <= 0x_d45B) || // Lo [27] HANGUL SYLLABLE POEG..HANGUL SYLLABLE POEH
  1711. // (0x_d45D <= code && code <= 0x_d477) || // Lo [27] HANGUL SYLLABLE PYOG..HANGUL SYLLABLE PYOH
  1712. // (0x_d479 <= code && code <= 0x_d493) || // Lo [27] HANGUL SYLLABLE PUG..HANGUL SYLLABLE PUH
  1713. // (0x_d495 <= code && code <= 0x_d4AF) || // Lo [27] HANGUL SYLLABLE PWEOG..HANGUL SYLLABLE PWEOH
  1714. // (0x_d4B1 <= code && code <= 0x_d4CB) || // Lo [27] HANGUL SYLLABLE PWEG..HANGUL SYLLABLE PWEH
  1715. // (0x_d4CD <= code && code <= 0x_d4E7) || // Lo [27] HANGUL SYLLABLE PWIG..HANGUL SYLLABLE PWIH
  1716. // (0x_d4E9 <= code && code <= 0x_d503) || // Lo [27] HANGUL SYLLABLE PYUG..HANGUL SYLLABLE PYUH
  1717. // (0x_d505 <= code && code <= 0x_d51F) || // Lo [27] HANGUL SYLLABLE PEUG..HANGUL SYLLABLE PEUH
  1718. // (0x_d521 <= code && code <= 0x_d53B) || // Lo [27] HANGUL SYLLABLE PYIG..HANGUL SYLLABLE PYIH
  1719. // (0x_d53D <= code && code <= 0x_d557) || // Lo [27] HANGUL SYLLABLE PIG..HANGUL SYLLABLE PIH
  1720. // (0x_d559 <= code && code <= 0x_d573) || // Lo [27] HANGUL SYLLABLE HAG..HANGUL SYLLABLE HAH
  1721. // (0x_d575 <= code && code <= 0x_d58F) || // Lo [27] HANGUL SYLLABLE HAEG..HANGUL SYLLABLE HAEH
  1722. // (0x_d591 <= code && code <= 0x_d5AB) || // Lo [27] HANGUL SYLLABLE HYAG..HANGUL SYLLABLE HYAH
  1723. // (0x_d5AD <= code && code <= 0x_d5C7) || // Lo [27] HANGUL SYLLABLE HYAEG..HANGUL SYLLABLE HYAEH
  1724. // (0x_d5C9 <= code && code <= 0x_d5E3) || // Lo [27] HANGUL SYLLABLE HEOG..HANGUL SYLLABLE HEOH
  1725. // (0x_d5E5 <= code && code <= 0x_d5FF) || // Lo [27] HANGUL SYLLABLE HEG..HANGUL SYLLABLE HEH
  1726. // (0x_d601 <= code && code <= 0x_d61B) || // Lo [27] HANGUL SYLLABLE HYEOG..HANGUL SYLLABLE HYEOH
  1727. // (0x_d61D <= code && code <= 0x_d637) || // Lo [27] HANGUL SYLLABLE HYEG..HANGUL SYLLABLE HYEH
  1728. // (0x_d639 <= code && code <= 0x_d653) || // Lo [27] HANGUL SYLLABLE HOG..HANGUL SYLLABLE HOH
  1729. // (0x_d655 <= code && code <= 0x_d66F) || // Lo [27] HANGUL SYLLABLE HWAG..HANGUL SYLLABLE HWAH
  1730. // (0x_d671 <= code && code <= 0x_d68B) || // Lo [27] HANGUL SYLLABLE HWAEG..HANGUL SYLLABLE HWAEH
  1731. // (0x_d68D <= code && code <= 0x_d6A7) || // Lo [27] HANGUL SYLLABLE HOEG..HANGUL SYLLABLE HOEH
  1732. // (0x_d6A9 <= code && code <= 0x_d6C3) || // Lo [27] HANGUL SYLLABLE HYOG..HANGUL SYLLABLE HYOH
  1733. // (0x_d6C5 <= code && code <= 0x_d6DF) || // Lo [27] HANGUL SYLLABLE HUG..HANGUL SYLLABLE HUH
  1734. // (0x_d6E1 <= code && code <= 0x_d6FB) || // Lo [27] HANGUL SYLLABLE HWEOG..HANGUL SYLLABLE HWEOH
  1735. // (0x_d6FD <= code && code <= 0x_d717) || // Lo [27] HANGUL SYLLABLE HWEG..HANGUL SYLLABLE HWEH
  1736. // (0x_d719 <= code && code <= 0x_d733) || // Lo [27] HANGUL SYLLABLE HWIG..HANGUL SYLLABLE HWIH
  1737. // (0x_d735 <= code && code <= 0x_d74F) || // Lo [27] HANGUL SYLLABLE HYUG..HANGUL SYLLABLE HYUH
  1738. // (0x_d751 <= code && code <= 0x_d76B) || // Lo [27] HANGUL SYLLABLE HEUG..HANGUL SYLLABLE HEUH
  1739. // (0x_d76D <= code && code <= 0x_d787) || // Lo [27] HANGUL SYLLABLE HYIG..HANGUL SYLLABLE HYIH
  1740. // (0x_d789 <= code && code <= 0x_d7A3) // Lo [27] HANGUL SYLLABLE HIG..HANGUL SYLLABLE HIH
  1741. // ){
  1742. // return LVT;
  1743. // }
  1744. //
  1745. // if(
  1746. // 0x261D == code || // So WHITE UP POINTING INDEX
  1747. // 0x26F9 == code || // So PERSON WITH BALL
  1748. // (0x270A <= code && code <= 0x270D) || // So [4] RAISED FIST..WRITING HAND
  1749. // 0x1F385 == code || // So FATHER CHRISTMAS
  1750. // (0x1F3C2 <= code && code <= 0x1F3C4) || // So [3] SNOWBOARDER..SURFER
  1751. // 0x1F3C7 == code || // So HORSE RACING
  1752. // (0x1F3CA <= code && code <= 0x1F3CC) || // So [3] SWIMMER..GOLFER
  1753. // (0x1F442 <= code && code <= 0x1F443) || // So [2] EAR..NOSE
  1754. // (0x1F446 <= code && code <= 0x1F450) || // So [11] WHITE UP POINTING BACKHAND INDEX..OPEN HANDS SIGN
  1755. // 0x1F46E == code || // So POLICE OFFICER
  1756. // (0x1F470 <= code && code <= 0x1F478) || // So [9] BRIDE WITH VEIL..PRINCESS
  1757. // 0x1F47C == code || // So BABY ANGEL
  1758. // (0x1F481 <= code && code <= 0x1F483) || // So [3] INFORMATION DESK PERSON..DANCER
  1759. // (0x1F485 <= code && code <= 0x1F487) || // So [3] NAIL POLISH..HAIRCUT
  1760. // 0x1F4AA == code || // So FLEXED BICEPS
  1761. // (0x1F574 <= code && code <= 0x1F575) || // So [2] MAN IN BUSINESS SUIT LEVITATING..SLEUTH OR SPY
  1762. // 0x1F57A == code || // So MAN DANCING
  1763. // 0x1F590 == code || // So RAISED HAND WITH FINGERS SPLAYED
  1764. // (0x1F595 <= code && code <= 0x1F596) || // So [2] REVERSED HAND WITH MIDDLE FINGER EXTENDED..RAISED HAND WITH PART BETWEEN MIDDLE AND RING FINGERS
  1765. // (0x1F645 <= code && code <= 0x1F647) || // So [3] FACE WITH NO GOOD GESTURE..PERSON BOWING DEEPLY
  1766. // (0x1F64B <= code && code <= 0x1F64F) || // So [5] HAPPY PERSON RAISING ONE HAND..PERSON WITH FOLDED HANDS
  1767. // 0x1F6A3 == code || // So ROWBOAT
  1768. // (0x1F6B4 <= code && code <= 0x1F6B6) || // So [3] BICYCLIST..PEDESTRIAN
  1769. // 0x1F6C0 == code || // So BATH
  1770. // 0x1F6CC == code || // So SLEEPING ACCOMMODATION
  1771. // (0x1F918 <= code && code <= 0x1F91C) || // So [5] SIGN OF THE HORNS..RIGHT-FACING FIST
  1772. // (0x1F91E <= code && code <= 0x1F91F) || // So [2] HAND WITH INDEX AND MIDDLE FINGERS CROSSED..I LOVE YOU HAND SIGN
  1773. // 0x1F926 == code || // So FACE PALM
  1774. // (0x1F930 <= code && code <= 0x1F939) || // So [10] PREGNANT WOMAN..JUGGLING
  1775. // (0x1F93D <= code && code <= 0x1F93E) || // So [2] WATER POLO..HANDBALL
  1776. // (0x1F9D1 <= code && code <= 0x1F9DD) // So [13] ADULT..ELF
  1777. // ){
  1778. // return E_Base;
  1779. // }
  1780. //
  1781. // if(
  1782. // (0x1F3FB <= code && code <= 0x1F3FF) // Sk [5] EMOJI MODIFIER FITZPATRICK TYPE-1-2..EMOJI MODIFIER FITZPATRICK TYPE-6
  1783. // ){
  1784. // return E_Modifier;
  1785. // }
  1786. //
  1787. // if(
  1788. // 0x200D == code // Cf ZERO WIDTH JOINER
  1789. // ){
  1790. // return ZWJ;
  1791. // }
  1792. //
  1793. // if(
  1794. // 0x2640 == code || // So FEMALE SIGN
  1795. // 0x2642 == code || // So MALE SIGN
  1796. // (0x2695 <= code && code <= 0x2696) || // So [2] STAFF OF AESCULAPIUS..SCALES
  1797. // 0x2708 == code || // So AIRPLANE
  1798. // 0x2764 == code || // So HEAVY BLACK HEART
  1799. // 0x1F308 == code || // So RAINBOW
  1800. // 0x1F33E == code || // So EAR OF RICE
  1801. // 0x1F373 == code || // So COOKING
  1802. // 0x1F393 == code || // So GRADUATION CAP
  1803. // 0x1F3A4 == code || // So MICROPHONE
  1804. // 0x1F3A8 == code || // So ARTIST PALETTE
  1805. // 0x1F3EB == code || // So SCHOOL
  1806. // 0x1F3ED == code || // So FACTORY
  1807. // 0x1F48B == code || // So KISS MARK
  1808. // (0x1F4BB <= code && code <= 0x1F4BC) || // So [2] PERSONAL COMPUTER..BRIEFCASE
  1809. // 0x1F527 == code || // So WRENCH
  1810. // 0x1F52C == code || // So MICROSCOPE
  1811. // 0x1F5E8 == code || // So LEFT SPEECH BUBBLE
  1812. // 0x1F680 == code || // So ROCKET
  1813. // 0x1F692 == code // So FIRE ENGINE
  1814. // ){
  1815. // return Glue_After_Zwj;
  1816. // }
  1817. //
  1818. // if(
  1819. // (0x1F466 <= code && code <= 0x1F469) // So [4] BOY..WOMAN
  1820. // ){
  1821. // return E_Base_GAZ;
  1822. // }
  1823. //
  1824. //
  1825. // //all unlisted characters have a grapheme break property of "Other"
  1826. // return Other;
  1827. //}