From eafeaec26f6bf519e5cecd3efbde2ec17c228d80 Mon Sep 17 00:00:00 2001 From: "Reece H. Dunn" Date: Sun, 8 Jul 2018 15:06:16 +0100 Subject: [PATCH] Unicode Character Data 11.0.0 --- configure.ac | 6 +- src/case.c | 168 +++++++++++++++++++++++++++- src/categories.c | 250 +++++++++++++++++++++++++++++++----------- src/include/ucd/ucd.h | 16 ++- src/proplist.c | 61 ++++++++++- src/scripts.c | 247 +++++++++++++++++++++++++++++++---------- src/tostring.c | 9 +- tools/case.py | 4 +- tools/categories.py | 4 +- tools/scripts.py | 11 +- 10 files changed, 630 insertions(+), 146 deletions(-) diff --git a/configure.ac b/configure.ac index fb6dfadb..dd84cd75 100644 --- a/configure.ac +++ b/configure.ac @@ -1,5 +1,5 @@ AC_PREREQ([2.65]) -AC_INIT([Unicode Character Database Tools], [10.0.0], [https://github.com/rhdunn/ucd-tools/issues], [ucd-tools], [https://github.com/rhdunn/ucd-tools]) +AC_INIT([Unicode Character Database Tools], [11.0.0], [https://github.com/rhdunn/ucd-tools/issues], [ucd-tools], [https://github.com/rhdunn/ucd-tools]) AM_INIT_AUTOMAKE() m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES]) @@ -34,10 +34,10 @@ dnl UCD data configuration. dnl ================================================================ AC_ARG_WITH([unicode-version], - [AS_HELP_STRING([--with-unicode-version], [Unicode version to support @<:@default=10.0.0@:>@])], + [AS_HELP_STRING([--with-unicode-version], [Unicode version to support @<:@default=11.0.0@:>@])], [AS_IF([test x"$withval" != x], [UCD_VERSION="$withval"])], - [UCD_VERSION="10.0.0"]) + [UCD_VERSION="11.0.0"]) AC_SUBST(UCD_VERSION) diff --git a/src/case.c b/src/case.c index 0ea48143..04c9736a 100644 --- a/src/case.c +++ b/src/case.c @@ -1,6 +1,6 @@ /* Unicode Case Conversion * - * Copyright (C) 2012-2016 Reece H. Dunn + * Copyright (C) 2012-2018 Reece H. Dunn * * This file is part of ucd-tools. * @@ -26,7 +26,7 @@ #include -/* Unicode Character Data 10.0.0 */ +/* Unicode Character Data 11.0.0 */ struct case_conversion_entry { @@ -1037,6 +1037,52 @@ static const struct case_conversion_entry case_conversion_data[] = { 0x0010C5, 0x000000, 0x002D25, 0x000000 }, { 0x0010C7, 0x000000, 0x002D27, 0x000000 }, { 0x0010CD, 0x000000, 0x002D2D, 0x000000 }, + { 0x0010D0, 0x001C90, 0x000000, 0x0010D0 }, + { 0x0010D1, 0x001C91, 0x000000, 0x0010D1 }, + { 0x0010D2, 0x001C92, 0x000000, 0x0010D2 }, + { 0x0010D3, 0x001C93, 0x000000, 0x0010D3 }, + { 0x0010D4, 0x001C94, 0x000000, 0x0010D4 }, + { 0x0010D5, 0x001C95, 0x000000, 0x0010D5 }, + { 0x0010D6, 0x001C96, 0x000000, 0x0010D6 }, + { 0x0010D7, 0x001C97, 0x000000, 0x0010D7 }, + { 0x0010D8, 0x001C98, 0x000000, 0x0010D8 }, + { 0x0010D9, 0x001C99, 0x000000, 0x0010D9 }, + { 0x0010DA, 0x001C9A, 0x000000, 0x0010DA }, + { 0x0010DB, 0x001C9B, 0x000000, 0x0010DB }, + { 0x0010DC, 0x001C9C, 0x000000, 0x0010DC }, + { 0x0010DD, 0x001C9D, 0x000000, 0x0010DD }, + { 0x0010DE, 0x001C9E, 0x000000, 0x0010DE }, + { 0x0010DF, 0x001C9F, 0x000000, 0x0010DF }, + { 0x0010E0, 0x001CA0, 0x000000, 0x0010E0 }, + { 0x0010E1, 0x001CA1, 0x000000, 0x0010E1 }, + { 0x0010E2, 0x001CA2, 0x000000, 0x0010E2 }, + { 0x0010E3, 0x001CA3, 0x000000, 0x0010E3 }, + { 0x0010E4, 0x001CA4, 0x000000, 0x0010E4 }, + { 0x0010E5, 0x001CA5, 0x000000, 0x0010E5 }, + { 0x0010E6, 0x001CA6, 0x000000, 0x0010E6 }, + { 0x0010E7, 0x001CA7, 0x000000, 0x0010E7 }, + { 0x0010E8, 0x001CA8, 0x000000, 0x0010E8 }, + { 0x0010E9, 0x001CA9, 0x000000, 0x0010E9 }, + { 0x0010EA, 0x001CAA, 0x000000, 0x0010EA }, + { 0x0010EB, 0x001CAB, 0x000000, 0x0010EB }, + { 0x0010EC, 0x001CAC, 0x000000, 0x0010EC }, + { 0x0010ED, 0x001CAD, 0x000000, 0x0010ED }, + { 0x0010EE, 0x001CAE, 0x000000, 0x0010EE }, + { 0x0010EF, 0x001CAF, 0x000000, 0x0010EF }, + { 0x0010F0, 0x001CB0, 0x000000, 0x0010F0 }, + { 0x0010F1, 0x001CB1, 0x000000, 0x0010F1 }, + { 0x0010F2, 0x001CB2, 0x000000, 0x0010F2 }, + { 0x0010F3, 0x001CB3, 0x000000, 0x0010F3 }, + { 0x0010F4, 0x001CB4, 0x000000, 0x0010F4 }, + { 0x0010F5, 0x001CB5, 0x000000, 0x0010F5 }, + { 0x0010F6, 0x001CB6, 0x000000, 0x0010F6 }, + { 0x0010F7, 0x001CB7, 0x000000, 0x0010F7 }, + { 0x0010F8, 0x001CB8, 0x000000, 0x0010F8 }, + { 0x0010F9, 0x001CB9, 0x000000, 0x0010F9 }, + { 0x0010FA, 0x001CBA, 0x000000, 0x0010FA }, + { 0x0010FD, 0x001CBD, 0x000000, 0x0010FD }, + { 0x0010FE, 0x001CBE, 0x000000, 0x0010FE }, + { 0x0010FF, 0x001CBF, 0x000000, 0x0010FF }, { 0x0013A0, 0x000000, 0x00AB70, 0x000000 }, { 0x0013A1, 0x000000, 0x00AB71, 0x000000 }, { 0x0013A2, 0x000000, 0x00AB72, 0x000000 }, @@ -1138,6 +1184,52 @@ static const struct case_conversion_entry case_conversion_data[] = { 0x001C86, 0x00042A, 0x000000, 0x00042A }, { 0x001C87, 0x000462, 0x000000, 0x000462 }, { 0x001C88, 0x00A64A, 0x000000, 0x00A64A }, + { 0x001C90, 0x000000, 0x0010D0, 0x000000 }, + { 0x001C91, 0x000000, 0x0010D1, 0x000000 }, + { 0x001C92, 0x000000, 0x0010D2, 0x000000 }, + { 0x001C93, 0x000000, 0x0010D3, 0x000000 }, + { 0x001C94, 0x000000, 0x0010D4, 0x000000 }, + { 0x001C95, 0x000000, 0x0010D5, 0x000000 }, + { 0x001C96, 0x000000, 0x0010D6, 0x000000 }, + { 0x001C97, 0x000000, 0x0010D7, 0x000000 }, + { 0x001C98, 0x000000, 0x0010D8, 0x000000 }, + { 0x001C99, 0x000000, 0x0010D9, 0x000000 }, + { 0x001C9A, 0x000000, 0x0010DA, 0x000000 }, + { 0x001C9B, 0x000000, 0x0010DB, 0x000000 }, + { 0x001C9C, 0x000000, 0x0010DC, 0x000000 }, + { 0x001C9D, 0x000000, 0x0010DD, 0x000000 }, + { 0x001C9E, 0x000000, 0x0010DE, 0x000000 }, + { 0x001C9F, 0x000000, 0x0010DF, 0x000000 }, + { 0x001CA0, 0x000000, 0x0010E0, 0x000000 }, + { 0x001CA1, 0x000000, 0x0010E1, 0x000000 }, + { 0x001CA2, 0x000000, 0x0010E2, 0x000000 }, + { 0x001CA3, 0x000000, 0x0010E3, 0x000000 }, + { 0x001CA4, 0x000000, 0x0010E4, 0x000000 }, + { 0x001CA5, 0x000000, 0x0010E5, 0x000000 }, + { 0x001CA6, 0x000000, 0x0010E6, 0x000000 }, + { 0x001CA7, 0x000000, 0x0010E7, 0x000000 }, + { 0x001CA8, 0x000000, 0x0010E8, 0x000000 }, + { 0x001CA9, 0x000000, 0x0010E9, 0x000000 }, + { 0x001CAA, 0x000000, 0x0010EA, 0x000000 }, + { 0x001CAB, 0x000000, 0x0010EB, 0x000000 }, + { 0x001CAC, 0x000000, 0x0010EC, 0x000000 }, + { 0x001CAD, 0x000000, 0x0010ED, 0x000000 }, + { 0x001CAE, 0x000000, 0x0010EE, 0x000000 }, + { 0x001CAF, 0x000000, 0x0010EF, 0x000000 }, + { 0x001CB0, 0x000000, 0x0010F0, 0x000000 }, + { 0x001CB1, 0x000000, 0x0010F1, 0x000000 }, + { 0x001CB2, 0x000000, 0x0010F2, 0x000000 }, + { 0x001CB3, 0x000000, 0x0010F3, 0x000000 }, + { 0x001CB4, 0x000000, 0x0010F4, 0x000000 }, + { 0x001CB5, 0x000000, 0x0010F5, 0x000000 }, + { 0x001CB6, 0x000000, 0x0010F6, 0x000000 }, + { 0x001CB7, 0x000000, 0x0010F7, 0x000000 }, + { 0x001CB8, 0x000000, 0x0010F8, 0x000000 }, + { 0x001CB9, 0x000000, 0x0010F9, 0x000000 }, + { 0x001CBA, 0x000000, 0x0010FA, 0x000000 }, + { 0x001CBD, 0x000000, 0x0010FD, 0x000000 }, + { 0x001CBE, 0x000000, 0x0010FE, 0x000000 }, + { 0x001CBF, 0x000000, 0x0010FF, 0x000000 }, { 0x001D79, 0x00A77D, 0x000000, 0x00A77D }, { 0x001D7D, 0x002C63, 0x000000, 0x002C63 }, { 0x001E00, 0x000000, 0x001E01, 0x000000 }, @@ -2140,6 +2232,8 @@ static const struct case_conversion_entry case_conversion_data[] = { 0x00A7B5, 0x00A7B4, 0x000000, 0x00A7B4 }, { 0x00A7B6, 0x000000, 0x00A7B7, 0x000000 }, { 0x00A7B7, 0x00A7B6, 0x000000, 0x00A7B6 }, + { 0x00A7B8, 0x000000, 0x00A7B9, 0x000000 }, + { 0x00A7B9, 0x00A7B8, 0x000000, 0x00A7B8 }, { 0x00AB53, 0x00A7B3, 0x000000, 0x00A7B3 }, { 0x00AB70, 0x0013A0, 0x000000, 0x0013A0 }, { 0x00AB71, 0x0013A1, 0x000000, 0x0013A1 }, @@ -2591,6 +2685,70 @@ static const struct case_conversion_entry case_conversion_data[] = { 0x0118DD, 0x0118BD, 0x000000, 0x0118BD }, { 0x0118DE, 0x0118BE, 0x000000, 0x0118BE }, { 0x0118DF, 0x0118BF, 0x000000, 0x0118BF }, + { 0x016E40, 0x000000, 0x016E60, 0x000000 }, + { 0x016E41, 0x000000, 0x016E61, 0x000000 }, + { 0x016E42, 0x000000, 0x016E62, 0x000000 }, + { 0x016E43, 0x000000, 0x016E63, 0x000000 }, + { 0x016E44, 0x000000, 0x016E64, 0x000000 }, + { 0x016E45, 0x000000, 0x016E65, 0x000000 }, + { 0x016E46, 0x000000, 0x016E66, 0x000000 }, + { 0x016E47, 0x000000, 0x016E67, 0x000000 }, + { 0x016E48, 0x000000, 0x016E68, 0x000000 }, + { 0x016E49, 0x000000, 0x016E69, 0x000000 }, + { 0x016E4A, 0x000000, 0x016E6A, 0x000000 }, + { 0x016E4B, 0x000000, 0x016E6B, 0x000000 }, + { 0x016E4C, 0x000000, 0x016E6C, 0x000000 }, + { 0x016E4D, 0x000000, 0x016E6D, 0x000000 }, + { 0x016E4E, 0x000000, 0x016E6E, 0x000000 }, + { 0x016E4F, 0x000000, 0x016E6F, 0x000000 }, + { 0x016E50, 0x000000, 0x016E70, 0x000000 }, + { 0x016E51, 0x000000, 0x016E71, 0x000000 }, + { 0x016E52, 0x000000, 0x016E72, 0x000000 }, + { 0x016E53, 0x000000, 0x016E73, 0x000000 }, + { 0x016E54, 0x000000, 0x016E74, 0x000000 }, + { 0x016E55, 0x000000, 0x016E75, 0x000000 }, + { 0x016E56, 0x000000, 0x016E76, 0x000000 }, + { 0x016E57, 0x000000, 0x016E77, 0x000000 }, + { 0x016E58, 0x000000, 0x016E78, 0x000000 }, + { 0x016E59, 0x000000, 0x016E79, 0x000000 }, + { 0x016E5A, 0x000000, 0x016E7A, 0x000000 }, + { 0x016E5B, 0x000000, 0x016E7B, 0x000000 }, + { 0x016E5C, 0x000000, 0x016E7C, 0x000000 }, + { 0x016E5D, 0x000000, 0x016E7D, 0x000000 }, + { 0x016E5E, 0x000000, 0x016E7E, 0x000000 }, + { 0x016E5F, 0x000000, 0x016E7F, 0x000000 }, + { 0x016E60, 0x016E40, 0x000000, 0x016E40 }, + { 0x016E61, 0x016E41, 0x000000, 0x016E41 }, + { 0x016E62, 0x016E42, 0x000000, 0x016E42 }, + { 0x016E63, 0x016E43, 0x000000, 0x016E43 }, + { 0x016E64, 0x016E44, 0x000000, 0x016E44 }, + { 0x016E65, 0x016E45, 0x000000, 0x016E45 }, + { 0x016E66, 0x016E46, 0x000000, 0x016E46 }, + { 0x016E67, 0x016E47, 0x000000, 0x016E47 }, + { 0x016E68, 0x016E48, 0x000000, 0x016E48 }, + { 0x016E69, 0x016E49, 0x000000, 0x016E49 }, + { 0x016E6A, 0x016E4A, 0x000000, 0x016E4A }, + { 0x016E6B, 0x016E4B, 0x000000, 0x016E4B }, + { 0x016E6C, 0x016E4C, 0x000000, 0x016E4C }, + { 0x016E6D, 0x016E4D, 0x000000, 0x016E4D }, + { 0x016E6E, 0x016E4E, 0x000000, 0x016E4E }, + { 0x016E6F, 0x016E4F, 0x000000, 0x016E4F }, + { 0x016E70, 0x016E50, 0x000000, 0x016E50 }, + { 0x016E71, 0x016E51, 0x000000, 0x016E51 }, + { 0x016E72, 0x016E52, 0x000000, 0x016E52 }, + { 0x016E73, 0x016E53, 0x000000, 0x016E53 }, + { 0x016E74, 0x016E54, 0x000000, 0x016E54 }, + { 0x016E75, 0x016E55, 0x000000, 0x016E55 }, + { 0x016E76, 0x016E56, 0x000000, 0x016E56 }, + { 0x016E77, 0x016E57, 0x000000, 0x016E57 }, + { 0x016E78, 0x016E58, 0x000000, 0x016E58 }, + { 0x016E79, 0x016E59, 0x000000, 0x016E59 }, + { 0x016E7A, 0x016E5A, 0x000000, 0x016E5A }, + { 0x016E7B, 0x016E5B, 0x000000, 0x016E5B }, + { 0x016E7C, 0x016E5C, 0x000000, 0x016E5C }, + { 0x016E7D, 0x016E5D, 0x000000, 0x016E5D }, + { 0x016E7E, 0x016E5E, 0x000000, 0x016E5E }, + { 0x016E7F, 0x016E5F, 0x000000, 0x016E5F }, { 0x01E900, 0x000000, 0x01E922, 0x000000 }, { 0x01E901, 0x000000, 0x01E923, 0x000000 }, { 0x01E902, 0x000000, 0x01E924, 0x000000 }, @@ -2664,7 +2822,7 @@ static const struct case_conversion_entry case_conversion_data[] = codepoint_t ucd_toupper(codepoint_t c) { int begin = 0; - int end = (sizeof(case_conversion_data)/sizeof(case_conversion_data[0])) - 1; + int end = sizeof(case_conversion_data)/sizeof(case_conversion_data[0]); while (begin <= end) { int pos = (begin + end) / 2; @@ -2682,7 +2840,7 @@ codepoint_t ucd_toupper(codepoint_t c) codepoint_t ucd_tolower(codepoint_t c) { int begin = 0; - int end = (sizeof(case_conversion_data)/sizeof(case_conversion_data[0])) - 1; + int end = sizeof(case_conversion_data)/sizeof(case_conversion_data[0]); while (begin <= end) { int pos = (begin + end) / 2; @@ -2700,7 +2858,7 @@ codepoint_t ucd_tolower(codepoint_t c) codepoint_t ucd_totitle(codepoint_t c) { int begin = 0; - int end = (sizeof(case_conversion_data)/sizeof(case_conversion_data[0])) - 1; + int end = sizeof(case_conversion_data)/sizeof(case_conversion_data[0]); while (begin <= end) { int pos = (begin + end) / 2; diff --git a/src/categories.c b/src/categories.c index d0e2a4a8..f9b33558 100644 --- a/src/categories.c +++ b/src/categories.c @@ -1,6 +1,6 @@ /* Unicode General Categories * - * Copyright (C) 2012-2016 Reece H. Dunn + * Copyright (C) 2012-2018 Reece H. Dunn * * This file is part of ucd-tools. * @@ -58,7 +58,7 @@ #define Zs UCD_CATEGORY_Zs #define Ii UCD_CATEGORY_Ii -/* Unicode Character Data 10.0.0 */ +/* Unicode Character Data 11.0.0 */ static const uint8_t categories_Cn[256] = { @@ -268,15 +268,15 @@ static const uint8_t categories_000500[256] = /* 30 */ Cn, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, /* 40 */ Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, /* 50 */ Lu, Lu, Lu, Lu, Lu, Lu, Lu, Cn, Cn, Lm, Po, Po, Po, Po, Po, Po, - /* 60 */ Cn, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, + /* 60 */ Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, /* 70 */ Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, - /* 80 */ Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Cn, Po, Pd, Cn, Cn, So, So, Sc, + /* 80 */ Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Po, Pd, Cn, Cn, So, So, Sc, /* 90 */ Cn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, /* A0 */ Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, /* B0 */ Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Pd, Mn, /* C0 */ Po, Mn, Mn, Po, Mn, Mn, Po, Mn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* D0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, - /* E0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Cn, Cn, Cn, Cn, + /* E0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Cn, Cn, Cn, Lo, /* F0 */ Lo, Lo, Lo, Po, Po, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, }; @@ -317,7 +317,7 @@ static const uint8_t categories_000700[256] = /* C0 */ Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Lo, Lo, Lo, Lo, Lo, Lo, /* D0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* E0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Mn, Mn, Mn, Mn, Mn, - /* F0 */ Mn, Mn, Mn, Mn, Lm, Lm, So, Po, Po, Po, Lm, Cn, Cn, Cn, Cn, Cn, + /* F0 */ Mn, Mn, Mn, Mn, Lm, Lm, So, Po, Po, Po, Lm, Cn, Cn, Mn, Sc, Sc, }; static const uint8_t categories_000800[256] = @@ -335,7 +335,7 @@ static const uint8_t categories_000800[256] = /* A0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* B0 */ Lo, Lo, Lo, Lo, Lo, Cn, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Cn, /* C0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* D0 */ Cn, Cn, Cn, Cn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, + /* D0 */ Cn, Cn, Cn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, /* E0 */ Mn, Mn, Cf, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, /* F0 */ Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, }; @@ -357,7 +357,7 @@ static const uint8_t categories_000900[256] = /* C0 */ Mc, Mn, Mn, Mn, Mn, Cn, Cn, Mc, Mc, Cn, Cn, Mc, Mc, Mn, Lo, Cn, /* D0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Mc, Cn, Cn, Cn, Cn, Lo, Lo, Cn, Lo, /* E0 */ Lo, Lo, Mn, Mn, Cn, Cn, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, - /* F0 */ Lo, Lo, Sc, Sc, No, No, No, No, No, No, So, Sc, Lo, Po, Cn, Cn, + /* F0 */ Lo, Lo, Sc, Sc, No, No, No, No, No, No, So, Sc, Lo, Po, Mn, Cn, }; static const uint8_t categories_000A00[256] = @@ -369,7 +369,7 @@ static const uint8_t categories_000A00[256] = /* 40 */ Mc, Mn, Mn, Cn, Cn, Cn, Cn, Mn, Mn, Cn, Cn, Mn, Mn, Mn, Cn, Cn, /* 50 */ Cn, Mn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Lo, Lo, Lo, Lo, Cn, Lo, Cn, /* 60 */ Cn, Cn, Cn, Cn, Cn, Cn, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, - /* 70 */ Mn, Mn, Lo, Lo, Lo, Mn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 70 */ Mn, Mn, Lo, Lo, Lo, Mn, Po, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 80 */ Cn, Mn, Mn, Mc, Cn, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Lo, /* 90 */ Lo, Lo, Cn, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* A0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Lo, Lo, Lo, Lo, Lo, Lo, @@ -402,7 +402,7 @@ static const uint8_t categories_000B00[256] = static const uint8_t categories_000C00[256] = { - /* 00 */ Mn, Mc, Mc, Mc, Cn, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Lo, Lo, + /* 00 */ Mn, Mc, Mc, Mc, Mn, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Lo, Lo, /* 10 */ Lo, Cn, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 20 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Lo, Lo, Lo, Lo, Lo, Lo, /* 30 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Cn, Cn, Lo, Mn, Mn, @@ -410,7 +410,7 @@ static const uint8_t categories_000C00[256] = /* 50 */ Cn, Cn, Cn, Cn, Cn, Mn, Mn, Cn, Lo, Lo, Lo, Cn, Cn, Cn, Cn, Cn, /* 60 */ Lo, Lo, Mn, Mn, Cn, Cn, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, /* 70 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, No, No, No, No, No, No, No, So, - /* 80 */ Lo, Mn, Mc, Mc, Cn, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Lo, Lo, + /* 80 */ Lo, Mn, Mc, Mc, Po, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Lo, Lo, /* 90 */ Lo, Cn, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* A0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Lo, Lo, Lo, Lo, Lo, Lo, /* B0 */ Lo, Lo, Lo, Lo, Cn, Lo, Lo, Lo, Lo, Lo, Cn, Cn, Mn, Lo, Mc, Mn, @@ -495,9 +495,9 @@ static const uint8_t categories_001000[256] = /* A0 */ Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, /* B0 */ Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, /* C0 */ Lu, Lu, Lu, Lu, Lu, Lu, Cn, Lu, Cn, Cn, Cn, Cn, Cn, Lu, Cn, Cn, - /* D0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, - /* E0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, - /* F0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Po, Lm, Lo, Lo, Lo, + /* D0 */ Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, + /* E0 */ Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, + /* F0 */ Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Po, Lm, Ll, Ll, Ll, }; static const uint8_t categories_001200[256] = @@ -609,7 +609,7 @@ static const uint8_t categories_001800[256] = /* 40 */ Lo, Lo, Lo, Lm, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 50 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 60 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, - /* 70 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 70 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 80 */ Lo, Lo, Lo, Lo, Lo, Mn, Mn, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 90 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* A0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Mn, Lo, Cn, Cn, Cn, Cn, Cn, @@ -691,9 +691,9 @@ static const uint8_t categories_001C00[256] = /* 60 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 70 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lm, Lm, Lm, Lm, Lm, Lm, Po, Po, /* 80 */ Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* 90 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* A0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* B0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 90 */ Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, + /* A0 */ Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, + /* B0 */ Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Cn, Cn, Lu, Lu, Lu, /* C0 */ Po, Po, Po, Po, Po, Po, Po, Po, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* D0 */ Mn, Mn, Mn, Po, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, /* E0 */ Mn, Mc, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Lo, Lo, Lo, Lo, Mn, Lo, Lo, @@ -933,11 +933,11 @@ static const uint8_t categories_002B00[256] = /* 80 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, /* 90 */ So, So, So, So, So, So, Cn, Cn, So, So, So, So, So, So, So, So, /* A0 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, - /* B0 */ So, So, So, So, So, So, So, So, So, So, Cn, Cn, Cn, So, So, So, + /* B0 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, /* C0 */ So, So, So, So, So, So, So, So, So, Cn, So, So, So, So, So, So, - /* D0 */ So, So, So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* E0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, So, So, So, So, - /* F0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* D0 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, + /* E0 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, + /* F0 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, Cn, }; static const uint8_t categories_002C00[256] = @@ -986,7 +986,7 @@ static const uint8_t categories_002E00[256] = /* 10 */ Po, Po, Po, Po, Po, Po, Po, Pd, Po, Po, Pd, Po, Pi, Pf, Po, Po, /* 20 */ Pi, Pf, Ps, Pe, Ps, Pe, Ps, Pe, Ps, Pe, Po, Po, Po, Po, Po, Lm, /* 30 */ Po, Po, Po, Po, Po, Po, Po, Po, Po, Po, Pd, Pd, Po, Po, Po, Po, - /* 40 */ Pd, Po, Ps, Po, Po, Po, Po, Po, Po, Po, Cn, Cn, Cn, Cn, Cn, Cn, + /* 40 */ Pd, Po, Ps, Po, Po, Po, Po, Po, Po, Po, Po, Po, Po, Po, Po, Cn, /* 50 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 60 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 70 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, @@ -1044,7 +1044,7 @@ static const uint8_t categories_003100[256] = { /* 00 */ Cn, Cn, Cn, Cn, Cn, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 10 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, - /* 20 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, + /* 20 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 30 */ Cn, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 40 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 50 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, @@ -1116,7 +1116,7 @@ static const uint8_t categories_009F00[256] = /* B0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* C0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* D0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, - /* E0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Cn, Cn, Cn, Cn, + /* E0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* F0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, }; @@ -1192,8 +1192,8 @@ static const uint8_t categories_00A700[256] = /* 70 */ Lm, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Lu, Ll, Lu, Ll, Lu, Lu, Ll, /* 80 */ Lu, Ll, Lu, Ll, Lu, Ll, Lu, Ll, Lm, Sk, Sk, Lu, Ll, Lu, Ll, Lo, /* 90 */ Lu, Ll, Lu, Ll, Ll, Ll, Lu, Ll, Lu, Ll, Lu, Ll, Lu, Ll, Lu, Ll, - /* A0 */ Lu, Ll, Lu, Ll, Lu, Ll, Lu, Ll, Lu, Ll, Lu, Lu, Lu, Lu, Lu, Cn, - /* B0 */ Lu, Lu, Lu, Lu, Lu, Ll, Lu, Ll, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* A0 */ Lu, Ll, Lu, Ll, Lu, Ll, Lu, Ll, Lu, Ll, Lu, Lu, Lu, Lu, Lu, Ll, + /* B0 */ Lu, Lu, Lu, Lu, Lu, Ll, Lu, Ll, Lu, Ll, Cn, Cn, Cn, Cn, Cn, Cn, /* C0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* D0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* E0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, @@ -1217,7 +1217,7 @@ static const uint8_t categories_00A800[256] = /* C0 */ Mc, Mc, Mc, Mc, Mn, Mn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Po, Po, /* D0 */ Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Cn, Cn, Cn, Cn, Cn, Cn, /* E0 */ Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, - /* F0 */ Mn, Mn, Lo, Lo, Lo, Lo, Lo, Lo, Po, Po, Po, Lo, Po, Lo, Cn, Cn, + /* F0 */ Mn, Mn, Lo, Lo, Lo, Lo, Lo, Lo, Po, Po, Po, Lo, Po, Lo, Lo, Mn, }; static const uint8_t categories_00A900[256] = @@ -1585,8 +1585,8 @@ static const uint8_t categories_010A00[256] = /* 00 */ Lo, Mn, Mn, Mn, Cn, Mn, Mn, Cn, Cn, Cn, Cn, Cn, Mn, Mn, Mn, Mn, /* 10 */ Lo, Lo, Lo, Lo, Cn, Lo, Lo, Lo, Cn, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 20 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, - /* 30 */ Lo, Lo, Lo, Lo, Cn, Cn, Cn, Cn, Mn, Mn, Mn, Cn, Cn, Cn, Cn, Mn, - /* 40 */ No, No, No, No, No, No, No, No, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 30 */ Lo, Lo, Lo, Lo, Lo, Lo, Cn, Cn, Mn, Mn, Mn, Cn, Cn, Cn, Cn, Mn, + /* 40 */ No, No, No, No, No, No, No, No, No, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 50 */ Po, Po, Po, Po, Po, Po, Po, Po, Po, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 60 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 70 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, No, No, Po, @@ -1640,6 +1640,26 @@ static const uint8_t categories_010C00[256] = /* F0 */ Ll, Ll, Ll, Cn, Cn, Cn, Cn, Cn, Cn, Cn, No, No, No, No, No, No, }; +static const uint8_t categories_010D00[256] = +{ + /* 00 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 10 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 20 */ Lo, Lo, Lo, Lo, Mn, Mn, Mn, Mn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 30 */ Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Cn, Cn, Cn, Cn, Cn, Cn, + /* 40 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 50 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 60 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 70 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 80 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 90 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* A0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* B0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* C0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* D0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* E0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* F0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, +}; + static const uint8_t categories_010E00[256] = { /* 00 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, @@ -1660,6 +1680,26 @@ static const uint8_t categories_010E00[256] = /* F0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, }; +static const uint8_t categories_010F00[256] = +{ + /* 00 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 10 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, No, No, No, + /* 20 */ No, No, No, No, No, No, No, Lo, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 30 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 40 */ Lo, Lo, Lo, Lo, Lo, Lo, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, + /* 50 */ Mn, No, No, No, No, Po, Po, Po, Po, Po, Cn, Cn, Cn, Cn, Cn, Cn, + /* 60 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 70 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 80 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 90 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* A0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* B0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* C0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* D0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* E0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* F0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, +}; + static const uint8_t categories_011000[256] = { /* 00 */ Mc, Mn, Mc, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, @@ -1674,7 +1714,7 @@ static const uint8_t categories_011000[256] = /* 90 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* A0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* B0 */ Mc, Mc, Mc, Mn, Mn, Mn, Mn, Mc, Mc, Mn, Mn, Po, Po, Cf, Po, Po, - /* C0 */ Po, Po, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* C0 */ Po, Po, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cf, Cn, Cn, /* D0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* E0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* F0 */ Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Cn, Cn, Cn, Cn, Cn, Cn, @@ -1686,7 +1726,7 @@ static const uint8_t categories_011100[256] = /* 10 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 20 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Mn, Mn, Mn, Mn, Mn, Mc, Mn, Mn, Mn, /* 30 */ Mn, Mn, Mn, Mn, Mn, Cn, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, - /* 40 */ Po, Po, Po, Po, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 40 */ Po, Po, Po, Po, Lo, Mc, Mc, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 50 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 60 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 70 */ Lo, Lo, Lo, Mn, Po, Po, Lo, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, @@ -1694,7 +1734,7 @@ static const uint8_t categories_011100[256] = /* 90 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* A0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* B0 */ Lo, Lo, Lo, Mc, Mc, Mc, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mc, - /* C0 */ Mc, Lo, Lo, Lo, Lo, Po, Po, Po, Po, Po, Mn, Mn, Mn, Po, Cn, Cn, + /* C0 */ Mc, Lo, Lo, Lo, Lo, Po, Po, Po, Po, Mn, Mn, Mn, Mn, Po, Cn, Cn, /* D0 */ Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Lo, Po, Lo, Po, Po, Po, /* E0 */ Cn, No, No, No, No, No, No, No, No, No, No, No, No, No, No, No, /* F0 */ No, No, No, No, No, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, @@ -1725,7 +1765,7 @@ static const uint8_t categories_011300[256] = /* 00 */ Mn, Mn, Mc, Mc, Cn, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Cn, Lo, /* 10 */ Lo, Cn, Cn, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 20 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Lo, Lo, Lo, Lo, Lo, Lo, - /* 30 */ Lo, Cn, Lo, Lo, Cn, Lo, Lo, Lo, Lo, Lo, Cn, Cn, Mn, Lo, Mc, Mc, + /* 30 */ Lo, Cn, Lo, Lo, Cn, Lo, Lo, Lo, Lo, Lo, Cn, Mn, Mn, Lo, Mc, Mc, /* 40 */ Mn, Mc, Mc, Mc, Mc, Cn, Cn, Mc, Mc, Cn, Cn, Mc, Mc, Mc, Cn, Cn, /* 50 */ Lo, Cn, Cn, Cn, Cn, Cn, Cn, Mc, Cn, Cn, Cn, Cn, Cn, Lo, Lo, Lo, /* 60 */ Lo, Lo, Mc, Mc, Cn, Cn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Cn, Cn, Cn, @@ -1747,7 +1787,7 @@ static const uint8_t categories_011400[256] = /* 20 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 30 */ Lo, Lo, Lo, Lo, Lo, Mc, Mc, Mc, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, /* 40 */ Mc, Mc, Mn, Mn, Mn, Mc, Mn, Lo, Lo, Lo, Lo, Po, Po, Po, Po, Po, - /* 50 */ Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Cn, Po, Cn, Po, Cn, Cn, + /* 50 */ Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Cn, Po, Cn, Po, Mn, Cn, /* 60 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 70 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 80 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, @@ -1803,7 +1843,7 @@ static const uint8_t categories_011600[256] = static const uint8_t categories_011700[256] = { /* 00 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, - /* 10 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Cn, Cn, Mn, Mn, Mn, + /* 10 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Cn, Mn, Mn, Mn, /* 20 */ Mc, Mc, Mn, Mn, Mn, Mn, Mc, Mn, Mn, Mn, Mn, Mn, Cn, Cn, Cn, Cn, /* 30 */ Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, No, No, Po, Po, Po, So, /* 40 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, @@ -1822,10 +1862,10 @@ static const uint8_t categories_011700[256] = static const uint8_t categories_011800[256] = { - /* 00 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* 10 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* 20 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* 30 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 00 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 10 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 20 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Mc, Mc, Mc, Mn, + /* 30 */ Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mc, Mn, Mn, Po, Cn, Cn, Cn, Cn, /* 40 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 50 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 60 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, @@ -1842,7 +1882,7 @@ static const uint8_t categories_011800[256] = static const uint8_t categories_011A00[256] = { - /* 00 */ Lo, Mn, Mn, Mn, Mn, Mn, Mn, Mc, Mc, Mn, Mn, Lo, Lo, Lo, Lo, Lo, + /* 00 */ Lo, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Lo, Lo, Lo, Lo, Lo, /* 10 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 20 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 30 */ Lo, Lo, Lo, Mn, Mn, Mn, Mn, Mn, Mn, Mc, Lo, Mn, Mn, Mn, Mn, Po, @@ -1851,7 +1891,7 @@ static const uint8_t categories_011A00[256] = /* 60 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 70 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 80 */ Lo, Lo, Lo, Lo, Cn, Cn, Lo, Lo, Lo, Lo, Mn, Mn, Mn, Mn, Mn, Mn, - /* 90 */ Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mc, Mn, Mn, Po, Po, Po, Cn, Po, Po, + /* 90 */ Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mc, Mn, Mn, Po, Po, Po, Lo, Po, Po, /* A0 */ Po, Po, Po, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* B0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* C0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, @@ -1888,6 +1928,26 @@ static const uint8_t categories_011D00[256] = /* 30 */ Lo, Mn, Mn, Mn, Mn, Mn, Mn, Cn, Cn, Cn, Mn, Cn, Mn, Mn, Cn, Mn, /* 40 */ Mn, Mn, Mn, Mn, Mn, Mn, Lo, Mn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 50 */ Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Cn, Cn, Cn, Cn, Cn, Cn, + /* 60 */ Lo, Lo, Lo, Lo, Lo, Lo, Cn, Lo, Lo, Cn, Lo, Lo, Lo, Lo, Lo, Lo, + /* 70 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 80 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Mc, Mc, Mc, Mc, Mc, Cn, + /* 90 */ Mn, Mn, Cn, Mc, Mc, Mn, Mc, Mn, Lo, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* A0 */ Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Cn, Cn, Cn, Cn, Cn, Cn, + /* B0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* C0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* D0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* E0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* F0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, +}; + +static const uint8_t categories_011E00[256] = +{ + /* 00 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 10 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 20 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 30 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 40 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 50 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 60 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 70 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 80 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, @@ -1896,8 +1956,8 @@ static const uint8_t categories_011D00[256] = /* B0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* C0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* D0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* E0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* F0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* E0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* F0 */ Lo, Lo, Lo, Mn, Mn, Mc, Mc, Po, Po, Cn, Cn, Cn, Cn, Cn, Cn, Cn, }; static const uint8_t categories_012300[256] = @@ -2040,6 +2100,26 @@ static const uint8_t categories_016B00[256] = /* F0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, }; +static const uint8_t categories_016E00[256] = +{ + /* 00 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 10 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 20 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 30 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 40 */ Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, + /* 50 */ Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, Lu, + /* 60 */ Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, + /* 70 */ Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, Ll, + /* 80 */ No, No, No, No, No, No, No, No, No, No, No, No, No, No, No, No, + /* 90 */ No, No, No, No, No, No, No, Po, Po, Po, Po, Cn, Cn, Cn, Cn, Cn, + /* A0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* B0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* C0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* D0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* E0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* F0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, +}; + static const uint8_t categories_016F00[256] = { /* 00 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, @@ -2076,8 +2156,8 @@ static const uint8_t categories_018700[256] = /* B0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* C0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* D0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, - /* E0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Cn, Cn, - /* F0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* E0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* F0 */ Lo, Lo, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, }; static const uint8_t categories_018A00[256] = @@ -2216,8 +2296,8 @@ static const uint8_t categories_01D200[256] = /* B0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* C0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* D0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* E0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* F0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* E0 */ No, No, No, No, No, No, No, No, No, No, No, No, No, No, No, No, + /* F0 */ No, No, No, No, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, }; static const uint8_t categories_01D300[256] = @@ -2229,7 +2309,7 @@ static const uint8_t categories_01D300[256] = /* 40 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, /* 50 */ So, So, So, So, So, So, So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 60 */ No, No, No, No, No, No, No, No, No, No, No, No, No, No, No, No, - /* 70 */ No, No, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 70 */ No, No, No, No, No, No, No, No, No, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 80 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 90 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* A0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, @@ -2400,6 +2480,26 @@ static const uint8_t categories_01E900[256] = /* F0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, }; +static const uint8_t categories_01EC00[256] = +{ + /* 00 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 10 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 20 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 30 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 40 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 50 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 60 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 70 */ Cn, No, No, No, No, No, No, No, No, No, No, No, No, No, No, No, + /* 80 */ No, No, No, No, No, No, No, No, No, No, No, No, No, No, No, No, + /* 90 */ No, No, No, No, No, No, No, No, No, No, No, No, No, No, No, No, + /* A0 */ No, No, No, No, No, No, No, No, No, No, No, No, So, No, No, No, + /* B0 */ Sc, No, No, No, No, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* C0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* D0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* E0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* F0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, +}; + static const uint8_t categories_01EE00[256] = { /* 00 */ Lo, Lo, Lo, Lo, Cn, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, @@ -2444,7 +2544,7 @@ static const uint8_t categories_01F100[256] = { /* 00 */ No, No, No, No, No, No, No, No, No, No, No, No, No, Cn, Cn, Cn, /* 10 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, - /* 20 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, Cn, + /* 20 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, /* 30 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, /* 40 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, /* 50 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, @@ -2517,7 +2617,7 @@ static const uint8_t categories_01F600[256] = /* C0 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, /* D0 */ So, So, So, So, So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* E0 */ So, So, So, So, So, So, So, So, So, So, So, So, So, Cn, Cn, Cn, - /* F0 */ So, So, So, So, So, So, So, So, So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* F0 */ So, So, So, So, So, So, So, So, So, So, Cn, Cn, Cn, Cn, Cn, Cn, }; static const uint8_t categories_01F700[256] = @@ -2535,7 +2635,7 @@ static const uint8_t categories_01F700[256] = /* A0 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, /* B0 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, /* C0 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, - /* D0 */ So, So, So, So, So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* D0 */ So, So, So, So, So, So, So, So, So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* E0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* F0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, }; @@ -2566,17 +2666,37 @@ static const uint8_t categories_01F900[256] = /* 10 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, /* 20 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, /* 30 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, Cn, - /* 40 */ So, So, So, So, So, So, So, So, So, So, So, So, So, Cn, Cn, Cn, + /* 40 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, /* 50 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, - /* 60 */ So, So, So, So, So, So, So, So, So, So, So, So, Cn, Cn, Cn, Cn, - /* 70 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 60 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, + /* 70 */ So, Cn, Cn, So, So, So, So, Cn, Cn, Cn, So, Cn, So, So, So, So, /* 80 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, - /* 90 */ So, So, So, So, So, So, So, So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 90 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, + /* A0 */ So, So, So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* B0 */ So, So, So, So, So, So, So, So, So, So, Cn, Cn, Cn, Cn, Cn, Cn, + /* C0 */ So, So, So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* D0 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, + /* E0 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, + /* F0 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, +}; + +static const uint8_t categories_01FA00[256] = +{ + /* 00 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 10 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 20 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 30 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 40 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 50 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 60 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, Cn, Cn, + /* 70 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 80 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 90 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* A0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* B0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* C0 */ So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* D0 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, - /* E0 */ So, So, So, So, So, So, So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* C0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* D0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* E0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* F0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, }; @@ -2983,9 +3103,9 @@ static const uint8_t *categories_00F800_02FAFF[] = categories_010A00, categories_010B00, categories_010C00, - categories_Cn, /* 010D00 */ + categories_010D00, categories_010E00, - categories_Cn, /* 010F00 */ + categories_010F00, categories_011000, categories_011100, categories_011200, @@ -3000,7 +3120,7 @@ static const uint8_t *categories_00F800_02FAFF[] = categories_Cn, /* 011B00 */ categories_011C00, categories_011D00, - categories_Cn, /* 011E00 */ + categories_011E00, categories_Cn, /* 011F00 */ categories_Lo, /* 012000 */ categories_Lo, /* 012100 */ @@ -3080,7 +3200,7 @@ static const uint8_t *categories_00F800_02FAFF[] = categories_016B00, categories_Cn, /* 016C00 */ categories_Cn, /* 016D00 */ - categories_Cn, /* 016E00 */ + categories_016E00, categories_016F00, categories_Lo, /* 017000 */ categories_Lo, /* 017100 */ @@ -3206,7 +3326,7 @@ static const uint8_t *categories_00F800_02FAFF[] = categories_01E900, categories_Cn, /* 01EA00 */ categories_Cn, /* 01EB00 */ - categories_Cn, /* 01EC00 */ + categories_01EC00, categories_Cn, /* 01ED00 */ categories_01EE00, categories_Cn, /* 01EF00 */ @@ -3220,7 +3340,7 @@ static const uint8_t *categories_00F800_02FAFF[] = categories_01F700, categories_01F800, categories_01F900, - categories_Cn, /* 01FA00 */ + categories_01FA00, categories_Cn, /* 01FB00 */ categories_Cn, /* 01FC00 */ categories_Cn, /* 01FD00 */ diff --git a/src/include/ucd/ucd.h b/src/include/ucd/ucd.h index 2c6bee24..ce387e1a 100644 --- a/src/include/ucd/ucd.h +++ b/src/include/ucd/ucd.h @@ -1,6 +1,6 @@ /* Unicode Character Database API * - * Copyright (C) 2012-2017 Reece H. Dunn + * Copyright (C) 2012-2018 Reece H. Dunn * * This file is part of ucd-tools. * @@ -166,6 +166,7 @@ typedef enum ucd_script_ UCD_SCRIPT_Cyrl, /**< @brief Cyrillic Script */ UCD_SCRIPT_Cyrs, /**< @brief Cyrillic (Old Church Slavonic variant) Script */ UCD_SCRIPT_Deva, /**< @brief Devanagari Script */ + UCD_SCRIPT_Dogr, /**< @brief Dogra Script */ UCD_SCRIPT_Dsrt, /**< @brief Deseret Script */ UCD_SCRIPT_Dupl, /**< @brief Duployan Shorthand Script */ UCD_SCRIPT_Egyd, /**< @brief Egyptian Demotic Script */ @@ -176,6 +177,7 @@ typedef enum ucd_script_ UCD_SCRIPT_Geok, /**< @brief Khutsuri Script */ UCD_SCRIPT_Geor, /**< @brief Geirgian Script */ UCD_SCRIPT_Glag, /**< @brief Glagolitic Script */ + UCD_SCRIPT_Gong, /**< @brief Gunjala Gondi */ UCD_SCRIPT_Gonm, /**< @brief Masaram Gondi */ UCD_SCRIPT_Goth, /**< @brief Gothic Script */ UCD_SCRIPT_Gran, /**< @brief Grantha Script */ @@ -222,10 +224,12 @@ typedef enum ucd_script_ UCD_SCRIPT_Lyci, /**< @brief Lycian Script */ UCD_SCRIPT_Lydi, /**< @brief Lydian Script */ UCD_SCRIPT_Mahj, /**< @brief Mahajani Script */ + UCD_SCRIPT_Maka, /**< @brief Makasar Script */ UCD_SCRIPT_Mand, /**< @brief Mandaic Script */ UCD_SCRIPT_Mani, /**< @brief Manichaean Script */ UCD_SCRIPT_Marc, /**< @brief Marchen Script */ UCD_SCRIPT_Maya, /**< @brief Mayan Hieroglyphs */ + UCD_SCRIPT_Medf, /**< @brief Medefaidrin (Oberi Okaime) Script */ UCD_SCRIPT_Mend, /**< @brief Mende Kikakui Script */ UCD_SCRIPT_Merc, /**< @brief Meroitic Cursive Script */ UCD_SCRIPT_Mero, /**< @brief Meroitic Hieroglyphs */ @@ -261,6 +265,7 @@ typedef enum ucd_script_ UCD_SCRIPT_Prti, /**< @brief Inscriptional Parthian Script */ UCD_SCRIPT_Qaak, /**< @brief Klingon Script (Private Use) */ UCD_SCRIPT_Rjng, /**< @brief Rejang Script */ + UCD_SCRIPT_Rohg, /**< @brief Hanifi Rohingya Script */ UCD_SCRIPT_Roro, /**< @brief Rongorongo Script */ UCD_SCRIPT_Runr, /**< @brief Runic Script */ UCD_SCRIPT_Samr, /**< @brief Samaritan Script */ @@ -273,6 +278,8 @@ typedef enum ucd_script_ UCD_SCRIPT_Sidd, /**< @brief Siddham Script */ UCD_SCRIPT_Sind, /**< @brief Sindhi Script */ UCD_SCRIPT_Sinh, /**< @brief Sinhala Script */ + UCD_SCRIPT_Sogd, /**< @brief Sogdian Script */ + UCD_SCRIPT_Sogo, /**< @brief Old Sogdian Script */ UCD_SCRIPT_Sora, /**< @brief Sora Sompeng Script */ UCD_SCRIPT_Soyo, /**< @brief Soyombo */ UCD_SCRIPT_Sund, /**< @brief Sundanese Script */ @@ -660,6 +667,7 @@ namespace ucd Cyrl = UCD_SCRIPT_Cyrl, /**< @brief Cyrillic Script */ Cyrs = UCD_SCRIPT_Cyrs, /**< @brief Cyrillic (Old Church Slavonic variant) Script */ Deva = UCD_SCRIPT_Deva, /**< @brief Devanagari Script */ + Dogr = UCD_SCRIPT_Dogr, /**< @brief Dogra Script */ Dsrt = UCD_SCRIPT_Dsrt, /**< @brief Deseret Script */ Dupl = UCD_SCRIPT_Dupl, /**< @brief Duployan Shorthand Script */ Egyd = UCD_SCRIPT_Egyd, /**< @brief Egyptian Demotic Script */ @@ -670,6 +678,7 @@ namespace ucd Geok = UCD_SCRIPT_Geok, /**< @brief Khutsuri Script */ Geor = UCD_SCRIPT_Geor, /**< @brief Geirgian Script */ Glag = UCD_SCRIPT_Glag, /**< @brief Glagolitic Script */ + Gong = UCD_SCRIPT_Gong, /**< @brief Gunjala Gondi */ Gonm = UCD_SCRIPT_Gonm, /**< @brief Masaram Gondi */ Goth = UCD_SCRIPT_Goth, /**< @brief Gothic Script */ Gran = UCD_SCRIPT_Gran, /**< @brief Grantha Script */ @@ -716,10 +725,12 @@ namespace ucd Lyci = UCD_SCRIPT_Lyci, /**< @brief Lycian Script */ Lydi = UCD_SCRIPT_Lydi, /**< @brief Lydian Script */ Mahj = UCD_SCRIPT_Mahj, /**< @brief Mahajani Script */ + Maka = UCD_SCRIPT_Maka, /**< @brief Mahajani Script */ Mand = UCD_SCRIPT_Mand, /**< @brief Mandaic Script */ Mani = UCD_SCRIPT_Mani, /**< @brief Manichaean Script */ Marc = UCD_SCRIPT_Marc, /**< @brief Marchen Script */ Maya = UCD_SCRIPT_Maya, /**< @brief Mayan Hieroglyphs */ + Medf = UCD_SCRIPT_Medf, /**< @brief Medefaidrin (Oberi Okaime) Script */ Mend = UCD_SCRIPT_Mend, /**< @brief Mende Kikakui Script */ Merc = UCD_SCRIPT_Merc, /**< @brief Meroitic Cursive Script */ Mero = UCD_SCRIPT_Mero, /**< @brief Meroitic Hieroglyphs */ @@ -755,6 +766,7 @@ namespace ucd Prti = UCD_SCRIPT_Prti, /**< @brief Inscriptional Parthian Script */ Qaak = UCD_SCRIPT_Qaak, /**< @brief Klingon Script (Private Use) */ Rjng = UCD_SCRIPT_Rjng, /**< @brief Rejang Script */ + Rohg = UCD_SCRIPT_Rohg, /**< @brief Hanifi Rohingya Script */ Roro = UCD_SCRIPT_Roro, /**< @brief Rongorongo Script */ Runr = UCD_SCRIPT_Runr, /**< @brief Runic Script */ Samr = UCD_SCRIPT_Samr, /**< @brief Samaritan Script */ @@ -767,6 +779,8 @@ namespace ucd Sidd = UCD_SCRIPT_Sidd, /**< @brief Siddham Script */ Sind = UCD_SCRIPT_Sind, /**< @brief Sindhi Script */ Sinh = UCD_SCRIPT_Sinh, /**< @brief Sinhala Script */ + Sogd = UCD_SCRIPT_Sogd, /**< @brief Sogdian Script */ + Sogo = UCD_SCRIPT_Sogo, /**< @brief Old Sogdian Script */ Sora = UCD_SCRIPT_Sora, /**< @brief Sora Sompeng Script */ Soyo = UCD_SCRIPT_Soyo, /**< @brief Soyombo */ Sund = UCD_SCRIPT_Sund, /**< @brief Sundanese Script */ diff --git a/src/proplist.c b/src/proplist.c index e97a2715..f70be0bb 100644 --- a/src/proplist.c +++ b/src/proplist.c @@ -1,6 +1,6 @@ /* PropList APIs. * - * Copyright (C) 2017 Reece H. Dunn + * Copyright (C) 2017-2018 Reece H. Dunn * * This file is part of ucd-tools. * @@ -56,6 +56,7 @@ static ucd_property properties_Cf(codepoint_t c) break; case 0x011000: if (c == 0x0110BD) return UCD_PROPERTY_PREPENDED_CONCATENATION_MARK; + if (c == 0x0110CD) return UCD_PROPERTY_PREPENDED_CONCATENATION_MARK; break; case 0x0E0000: if (c == 0x0E0001) return UCD_PROPERTY_DEPRECATED; @@ -382,8 +383,15 @@ static ucd_property properties_Lo(codepoint_t c) case 0xFF00: if (c == 0xFFA0) return UCD_PROPERTY_OTHER_DEFAULT_IGNORABLE_CODE_POINT; break; + case 0x10D00: + if (c == 0x10D22) return UCD_PROPERTY_DIACRITIC; + if (c == 0x10D23) return UCD_PROPERTY_DIACRITIC; + break; + case 0x18700: + if (c >= 0x187ED && c <= 0x187F1) return UCD_PROPERTY_IDEOGRAPHIC; + break; case 0x11300: - if (c == 0x01135D) return UCD_PROPERTY_EXTENDER; + if (c == 0x1135D) return UCD_PROPERTY_EXTENDER; break; case 0x1EE00: return UCD_PROPERTY_OTHER_MATH; @@ -397,7 +405,7 @@ static ucd_property properties_Lo_ideographic(codepoint_t c) { case 0x000000: if (c >= 0x3400 && c <= 0x4DB5) return UCD_PROPERTY_IDEOGRAPHIC | UCD_PROPERTY_UNIFIED_IDEOGRAPH; - if (c >= 0x4E00 && c <= 0x9FEA) return UCD_PROPERTY_IDEOGRAPHIC | UCD_PROPERTY_UNIFIED_IDEOGRAPH; + if (c >= 0x4E00 && c <= 0x9FEF) return UCD_PROPERTY_IDEOGRAPHIC | UCD_PROPERTY_UNIFIED_IDEOGRAPH; if (c >= 0xF900 && c <= 0xFA6D) return UCD_PROPERTY_IDEOGRAPHIC; if (c >= 0xFA70 && c <= 0xFAD9) return UCD_PROPERTY_IDEOGRAPHIC; break; @@ -649,6 +657,8 @@ static ucd_property properties_Mc(codepoint_t c) if (c >= 0x0110B7 && c <= 0x0110B8) return UCD_PROPERTY_OTHER_ALPHABETIC; break; case 0x011100: + if (c == 0x011145) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c == 0x011146) return UCD_PROPERTY_OTHER_ALPHABETIC; if (c == 0x01112C) return UCD_PROPERTY_OTHER_ALPHABETIC; if (c == 0x011182) return UCD_PROPERTY_OTHER_ALPHABETIC; if (c >= 0x0111B3 && c <= 0x0111B5) return UCD_PROPERTY_OTHER_ALPHABETIC; @@ -702,6 +712,10 @@ static ucd_property properties_Mc(codepoint_t c) if (c >= 0x011720 && c <= 0x011721) return UCD_PROPERTY_OTHER_ALPHABETIC; if (c == 0x011726) return UCD_PROPERTY_OTHER_ALPHABETIC; break; + case 0x011800: + if (c >= 0x01182C && c <= 0x01182E) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c == 0x011838) return UCD_PROPERTY_OTHER_ALPHABETIC; + break; case 0x011A00: if (c >= 0x011A07 && c <= 0x011A08) return UCD_PROPERTY_OTHER_ALPHABETIC; if (c == 0x011A39) return UCD_PROPERTY_OTHER_ALPHABETIC; @@ -715,6 +729,9 @@ static ucd_property properties_Mc(codepoint_t c) if (c == 0x011CB1) return UCD_PROPERTY_OTHER_ALPHABETIC; if (c == 0x011CB4) return UCD_PROPERTY_OTHER_ALPHABETIC; break; + case 0x011D00: + case 0x011E00: + return UCD_PROPERTY_OTHER_ALPHABETIC; case 0x01D100: if (c == 0x01D165) return UCD_PROPERTY_OTHER_GRAPHEME_EXTEND; if (c == 0x01D16D) return UCD_PROPERTY_DIACRITIC; @@ -1048,6 +1065,12 @@ static ucd_property properties_Mn(codepoint_t c) if (c >= 0x010A0C && c <= 0x010A0F) return UCD_PROPERTY_OTHER_ALPHABETIC; if (c >= 0x010AE5 && c <= 0x010AE6) return UCD_PROPERTY_DIACRITIC; break; + case 0x010D00: + if (c >= 0x010D24 && c <= 0x010D27) return UCD_PROPERTY_DIACRITIC | UCD_PROPERTY_OTHER_ALPHABETIC; + break; + case 0x010F00: + if (c >= 0x010F46 && c <= 0x010F50) return UCD_PROPERTY_DIACRITIC; + break; case 0x011000: if (c == 0x011001) return UCD_PROPERTY_OTHER_ALPHABETIC; if (c >= 0x011038 && c <= 0x011045) return UCD_PROPERTY_OTHER_ALPHABETIC; @@ -1113,6 +1136,10 @@ static ucd_property properties_Mn(codepoint_t c) if (c >= 0x011727 && c <= 0x01172A) return UCD_PROPERTY_OTHER_ALPHABETIC; if (c == 0x01172B) return UCD_PROPERTY_DIACRITIC; break; + case 0x011800: + if (c >= 0x01182F && c <= 0x011838) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c >= 0x011839 && c <= 0x01183A) return UCD_PROPERTY_DIACRITIC; + break; case 0x011A00: if (c >= 0x011A01 && c <= 0x011A0A) return UCD_PROPERTY_OTHER_ALPHABETIC; if (c == 0x011A34) return UCD_PROPERTY_DIACRITIC; @@ -1141,6 +1168,14 @@ static ucd_property properties_Mn(codepoint_t c) if (c == 0x011D43) return UCD_PROPERTY_OTHER_ALPHABETIC; if (c >= 0x011D44 && c <= 0x011D45) return UCD_PROPERTY_DIACRITIC; if (c == 0x011D47) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c == 0x011D90) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c == 0x011D91) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c == 0x011D95) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c == 0x011D97) return UCD_PROPERTY_DIACRITIC; + break; + case 0x011E00: + if (c == 0x011EF3) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c == 0x011EF4) return UCD_PROPERTY_OTHER_ALPHABETIC; break; case 0x016A00: if (c >= 0x016AF0 && c <= 0x016AF4) return UCD_PROPERTY_DIACRITIC; @@ -1369,6 +1404,7 @@ static ucd_property properties_Po(codepoint_t c) case 0x0600: if (c == 0x060C) return UCD_PROPERTY_TERMINAL_PUNCTUATION; if (c == 0x061B) return UCD_PROPERTY_TERMINAL_PUNCTUATION; + if (c == 0x061E) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_SENTENCE_TERMINAL; if (c == 0x061F) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_SENTENCE_TERMINAL; if (c == 0x06D4) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_SENTENCE_TERMINAL; break; @@ -1380,6 +1416,10 @@ static ucd_property properties_Po(codepoint_t c) if (c == 0x07F9) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_SENTENCE_TERMINAL; break; case 0x0800: + if (c == 0x0837) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_SENTENCE_TERMINAL; + if (c == 0x0839) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_SENTENCE_TERMINAL; + if (c == 0x083D) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_SENTENCE_TERMINAL; + if (c == 0x083E) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_SENTENCE_TERMINAL; if (c >= 0x0830 && c <= 0x083E) return UCD_PROPERTY_TERMINAL_PUNCTUATION; if (c == 0x085E) return UCD_PROPERTY_TERMINAL_PUNCTUATION; break; @@ -1456,6 +1496,8 @@ static ucd_property properties_Po(codepoint_t c) if (c == 0x2E2E) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_SENTENCE_TERMINAL | UCD_PROPERTY_PATTERN_SYNTAX; if (c == 0x2E3C) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_SENTENCE_TERMINAL | UCD_PROPERTY_PATTERN_SYNTAX; if (c == 0x2E41) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_PATTERN_SYNTAX; + if (c == 0x2E4C) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_PATTERN_SYNTAX; + if (c == 0x2E4E) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_PATTERN_SYNTAX; return UCD_PROPERTY_PATTERN_SYNTAX; case 0x3000: if (c == 0x3001) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_PATTERN_SYNTAX; @@ -1533,6 +1575,9 @@ static ucd_property properties_Po(codepoint_t c) if (c >= 0x010B3A && c <= 0x010B3F) return UCD_PROPERTY_TERMINAL_PUNCTUATION; if (c >= 0x010B99 && c <= 0x010B9C) return UCD_PROPERTY_TERMINAL_PUNCTUATION; break; + case 0x10F00: + if (c >= 0x10F55 && c <= 0x10F59) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_SENTENCE_TERMINAL; + break; case 0x11000: if (c >= 0x011047 && c <= 0x011048) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_SENTENCE_TERMINAL; if (c >= 0x011049 && c <= 0x01104D) return UCD_PROPERTY_TERMINAL_PUNCTUATION; @@ -1576,9 +1621,16 @@ static ucd_property properties_Po(codepoint_t c) if (c == 0x011C43) return UCD_PROPERTY_TERMINAL_PUNCTUATION; if (c == 0x011C71) return UCD_PROPERTY_TERMINAL_PUNCTUATION; break; + case 0x11E00: + if (c >= 0x11EF7 && c <= 0x11EF8) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_SENTENCE_TERMINAL; + break; case 0x12400: if (c >= 0x012470 && c <= 0x012474) return UCD_PROPERTY_TERMINAL_PUNCTUATION; break; + case 0x16E00: + if (c == 0x016E97) return UCD_PROPERTY_TERMINAL_PUNCTUATION; + if (c == 0x016E98) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_SENTENCE_TERMINAL; + break; case 0x16A00: if (c >= 0x016A6E && c <= 0x016A6F) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_SENTENCE_TERMINAL; if (c == 0x016AF5) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_SENTENCE_TERMINAL; @@ -2097,7 +2149,6 @@ static ucd_property properties_So(codepoint_t c) if (c >= 0x01F6F4 && c <= 0x01F6F8) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; break; case 0x01F900: - if (c <= 0x01F90B) return 0; if (c >= 0x01F918 && c <= 0x01F91C) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION | UCD_PROPERTY_EMOJI_MODIFIER_BASE; if (c >= 0x01F910 && c <= 0x01F91D) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; if (c >= 0x01F91E && c <= 0x01F91F) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION | UCD_PROPERTY_EMOJI_MODIFIER_BASE; @@ -2117,7 +2168,7 @@ static ucd_property properties_So(codepoint_t c) if (c == 0x01F9C0) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; if (c >= 0x01F9D1 && c <= 0x01F9DD) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION | UCD_PROPERTY_EMOJI_MODIFIER_BASE; if (c >= 0x01F9D0 && c <= 0x01F9E6) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; - return UCD_PROPERTY_EMOJI; + return 0; } return 0; } diff --git a/src/scripts.c b/src/scripts.c index 573c137a..552be478 100644 --- a/src/scripts.c +++ b/src/scripts.c @@ -1,6 +1,6 @@ /* Unicode Scripts * - * Copyright (C) 2012-2016 Reece H. Dunn + * Copyright (C) 2012-2018 Reece H. Dunn * * This file is part of ucd-tools. * @@ -57,6 +57,7 @@ #define Cyrl UCD_SCRIPT_Cyrl #define Cyrs UCD_SCRIPT_Cyrs #define Deva UCD_SCRIPT_Deva +#define Dogr UCD_SCRIPT_Dogr #define Dsrt UCD_SCRIPT_Dsrt #define Dupl UCD_SCRIPT_Dupl #define Egyd UCD_SCRIPT_Egyd @@ -67,6 +68,7 @@ #define Geok UCD_SCRIPT_Geok #define Geor UCD_SCRIPT_Geor #define Glag UCD_SCRIPT_Glag +#define Gong UCD_SCRIPT_Gong #define Gonm UCD_SCRIPT_Gonm #define Goth UCD_SCRIPT_Goth #define Gran UCD_SCRIPT_Gran @@ -113,10 +115,12 @@ #define Lyci UCD_SCRIPT_Lyci #define Lydi UCD_SCRIPT_Lydi #define Mahj UCD_SCRIPT_Mahj +#define Maka UCD_SCRIPT_Maka #define Mand UCD_SCRIPT_Mand #define Mani UCD_SCRIPT_Mani #define Marc UCD_SCRIPT_Marc #define Maya UCD_SCRIPT_Maya +#define Medf UCD_SCRIPT_Medf #define Mend UCD_SCRIPT_Mend #define Merc UCD_SCRIPT_Merc #define Mero UCD_SCRIPT_Mero @@ -152,6 +156,7 @@ #define Prti UCD_SCRIPT_Prti #define Qaak UCD_SCRIPT_Qaak #define Rjng UCD_SCRIPT_Rjng +#define Rohg UCD_SCRIPT_Rohg #define Roro UCD_SCRIPT_Roro #define Runr UCD_SCRIPT_Runr #define Samr UCD_SCRIPT_Samr @@ -164,6 +169,8 @@ #define Sidd UCD_SCRIPT_Sidd #define Sind UCD_SCRIPT_Sind #define Sinh UCD_SCRIPT_Sinh +#define Sogd UCD_SCRIPT_Sogd +#define Sogo UCD_SCRIPT_Sogo #define Sora UCD_SCRIPT_Sora #define Soyo UCD_SCRIPT_Soyo #define Sund UCD_SCRIPT_Sund @@ -203,7 +210,7 @@ #define Zyyy UCD_SCRIPT_Zyyy #define Zzzz UCD_SCRIPT_Zzzz -/* Unicode Character Data 10.0.0 */ +/* Unicode Character Data 11.0.0 */ static const uint8_t scripts_Latn[256] = { @@ -633,15 +640,15 @@ static const uint8_t scripts_000500[256] = /* 30 */ Zzzz, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, /* 40 */ Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, /* 50 */ Armn, Armn, Armn, Armn, Armn, Armn, Armn, Zzzz, Zzzz, Armn, Armn, Armn, Armn, Armn, Armn, Armn, - /* 60 */ Zzzz, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, + /* 60 */ Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, /* 70 */ Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, - /* 80 */ Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Zzzz, Zyyy, Armn, Zzzz, Zzzz, Armn, Armn, Armn, + /* 80 */ Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Armn, Zyyy, Armn, Zzzz, Zzzz, Armn, Armn, Armn, /* 90 */ Zzzz, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, /* A0 */ Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, /* B0 */ Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, /* C0 */ Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* D0 */ Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, - /* E0 */ Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* E0 */ Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Hebr, Zzzz, Zzzz, Zzzz, Zzzz, Hebr, /* F0 */ Hebr, Hebr, Hebr, Hebr, Hebr, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, }; @@ -682,7 +689,7 @@ static const uint8_t scripts_000700[256] = /* C0 */ Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, /* D0 */ Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, /* E0 */ Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, - /* F0 */ Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* F0 */ Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Nkoo, Zzzz, Zzzz, Nkoo, Nkoo, Nkoo, }; static const uint8_t scripts_000800[256] = @@ -700,7 +707,7 @@ static const uint8_t scripts_000800[256] = /* A0 */ Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, /* B0 */ Arab, Arab, Arab, Arab, Arab, Zzzz, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Zzzz, Zzzz, /* C0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* D0 */ Zzzz, Zzzz, Zzzz, Zzzz, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, + /* D0 */ Zzzz, Zzzz, Zzzz, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, /* E0 */ Arab, Arab, Zyyy, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, /* F0 */ Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, }; @@ -722,7 +729,7 @@ static const uint8_t scripts_000900[256] = /* C0 */ Beng, Beng, Beng, Beng, Beng, Zzzz, Zzzz, Beng, Beng, Zzzz, Zzzz, Beng, Beng, Beng, Beng, Zzzz, /* D0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Beng, Zzzz, Zzzz, Zzzz, Zzzz, Beng, Beng, Zzzz, Beng, /* E0 */ Beng, Beng, Beng, Beng, Zzzz, Zzzz, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, - /* F0 */ Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Zzzz, Zzzz, + /* F0 */ Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Zzzz, }; static const uint8_t scripts_000A00[256] = @@ -734,7 +741,7 @@ static const uint8_t scripts_000A00[256] = /* 40 */ Guru, Guru, Guru, Zzzz, Zzzz, Zzzz, Zzzz, Guru, Guru, Zzzz, Zzzz, Guru, Guru, Guru, Zzzz, Zzzz, /* 50 */ Zzzz, Guru, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Guru, Guru, Guru, Guru, Zzzz, Guru, Zzzz, /* 60 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Guru, Guru, Guru, Guru, Guru, Guru, Guru, Guru, Guru, Guru, - /* 70 */ Guru, Guru, Guru, Guru, Guru, Guru, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 70 */ Guru, Guru, Guru, Guru, Guru, Guru, Guru, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 80 */ Zzzz, Gujr, Gujr, Gujr, Zzzz, Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, Zzzz, Gujr, /* 90 */ Gujr, Gujr, Zzzz, Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, /* A0 */ Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, Zzzz, Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, @@ -767,7 +774,7 @@ static const uint8_t scripts_000B00[256] = static const uint8_t scripts_000C00[256] = { - /* 00 */ Telu, Telu, Telu, Telu, Zzzz, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Zzzz, Telu, Telu, + /* 00 */ Telu, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Zzzz, Telu, Telu, /* 10 */ Telu, Zzzz, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Telu, /* 20 */ Telu, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Zzzz, Telu, Telu, Telu, Telu, Telu, Telu, /* 30 */ Telu, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Zzzz, Zzzz, Zzzz, Telu, Telu, Telu, @@ -775,7 +782,7 @@ static const uint8_t scripts_000C00[256] = /* 50 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Telu, Telu, Zzzz, Telu, Telu, Telu, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 60 */ Telu, Telu, Telu, Telu, Zzzz, Zzzz, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Telu, /* 70 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Telu, Telu, Telu, Telu, Telu, Telu, Telu, Telu, - /* 80 */ Knda, Knda, Knda, Knda, Zzzz, Knda, Knda, Knda, Knda, Knda, Knda, Knda, Knda, Zzzz, Knda, Knda, + /* 80 */ Knda, Knda, Knda, Knda, Knda, Knda, Knda, Knda, Knda, Knda, Knda, Knda, Knda, Zzzz, Knda, Knda, /* 90 */ Knda, Zzzz, Knda, Knda, Knda, Knda, Knda, Knda, Knda, Knda, Knda, Knda, Knda, Knda, Knda, Knda, /* A0 */ Knda, Knda, Knda, Knda, Knda, Knda, Knda, Knda, Knda, Zzzz, Knda, Knda, Knda, Knda, Knda, Knda, /* B0 */ Knda, Knda, Knda, Knda, Zzzz, Knda, Knda, Knda, Knda, Knda, Zzzz, Zzzz, Knda, Knda, Knda, Knda, @@ -954,7 +961,7 @@ static const uint8_t scripts_001800[256] = /* 40 */ Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, /* 50 */ Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, /* 60 */ Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, - /* 70 */ Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 70 */ Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 80 */ Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, /* 90 */ Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, /* A0 */ Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Mong, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, @@ -1036,9 +1043,9 @@ static const uint8_t scripts_001C00[256] = /* 60 */ Olck, Olck, Olck, Olck, Olck, Olck, Olck, Olck, Olck, Olck, Olck, Olck, Olck, Olck, Olck, Olck, /* 70 */ Olck, Olck, Olck, Olck, Olck, Olck, Olck, Olck, Olck, Olck, Olck, Olck, Olck, Olck, Olck, Olck, /* 80 */ Cyrl, Cyrl, Cyrl, Cyrl, Cyrl, Cyrl, Cyrl, Cyrl, Cyrl, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* 90 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* A0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* B0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 90 */ Geor, Geor, Geor, Geor, Geor, Geor, Geor, Geor, Geor, Geor, Geor, Geor, Geor, Geor, Geor, Geor, + /* A0 */ Geor, Geor, Geor, Geor, Geor, Geor, Geor, Geor, Geor, Geor, Geor, Geor, Geor, Geor, Geor, Geor, + /* B0 */ Geor, Geor, Geor, Geor, Geor, Geor, Geor, Geor, Geor, Geor, Geor, Zzzz, Zzzz, Geor, Geor, Geor, /* C0 */ Sund, Sund, Sund, Sund, Sund, Sund, Sund, Sund, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* D0 */ Zinh, Zinh, Zinh, Zyyy, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, /* E0 */ Zinh, Zyyy, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zyyy, Zyyy, Zyyy, Zyyy, Zinh, Zyyy, Zyyy, @@ -1158,11 +1165,11 @@ static const uint8_t scripts_002B00[256] = /* 80 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, /* 90 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, /* A0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* B0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zyyy, Zyyy, Zyyy, + /* B0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, /* C0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* D0 */ Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* E0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zyyy, Zyyy, Zyyy, Zyyy, - /* F0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* D0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, + /* E0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, + /* F0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, }; static const uint8_t scripts_002C00[256] = @@ -1211,7 +1218,7 @@ static const uint8_t scripts_002E00[256] = /* 10 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, /* 20 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, /* 30 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* 40 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 40 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, /* 50 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 60 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 70 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, @@ -1269,7 +1276,7 @@ static const uint8_t scripts_003100[256] = { /* 00 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, /* 10 */ Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, - /* 20 */ Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Zzzz, + /* 20 */ Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, /* 30 */ Zzzz, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, /* 40 */ Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, /* 50 */ Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, @@ -1361,7 +1368,7 @@ static const uint8_t scripts_009F00[256] = /* B0 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, /* C0 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, /* D0 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, - /* E0 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* E0 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, /* F0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, }; @@ -1417,8 +1424,8 @@ static const uint8_t scripts_00A700[256] = /* 70 */ Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, /* 80 */ Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Zyyy, Zyyy, Zyyy, Latn, Latn, Latn, Latn, Latn, /* 90 */ Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, - /* A0 */ Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Zzzz, - /* B0 */ Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* A0 */ Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, + /* B0 */ Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* C0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* D0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* E0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, @@ -1442,7 +1449,7 @@ static const uint8_t scripts_00A800[256] = /* C0 */ Saur, Saur, Saur, Saur, Saur, Saur, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Saur, Saur, /* D0 */ Saur, Saur, Saur, Saur, Saur, Saur, Saur, Saur, Saur, Saur, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* E0 */ Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, - /* F0 */ Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, Zzzz, Zzzz, + /* F0 */ Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, Deva, }; static const uint8_t scripts_00A900[256] = @@ -1810,8 +1817,8 @@ static const uint8_t scripts_010A00[256] = /* 00 */ Khar, Khar, Khar, Khar, Zzzz, Khar, Khar, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Khar, Khar, Khar, Khar, /* 10 */ Khar, Khar, Khar, Khar, Zzzz, Khar, Khar, Khar, Zzzz, Khar, Khar, Khar, Khar, Khar, Khar, Khar, /* 20 */ Khar, Khar, Khar, Khar, Khar, Khar, Khar, Khar, Khar, Khar, Khar, Khar, Khar, Khar, Khar, Khar, - /* 30 */ Khar, Khar, Khar, Khar, Zzzz, Zzzz, Zzzz, Zzzz, Khar, Khar, Khar, Zzzz, Zzzz, Zzzz, Zzzz, Khar, - /* 40 */ Khar, Khar, Khar, Khar, Khar, Khar, Khar, Khar, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 30 */ Khar, Khar, Khar, Khar, Khar, Khar, Zzzz, Zzzz, Khar, Khar, Khar, Zzzz, Zzzz, Zzzz, Zzzz, Khar, + /* 40 */ Khar, Khar, Khar, Khar, Khar, Khar, Khar, Khar, Khar, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 50 */ Khar, Khar, Khar, Khar, Khar, Khar, Khar, Khar, Khar, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 60 */ Sarb, Sarb, Sarb, Sarb, Sarb, Sarb, Sarb, Sarb, Sarb, Sarb, Sarb, Sarb, Sarb, Sarb, Sarb, Sarb, /* 70 */ Sarb, Sarb, Sarb, Sarb, Sarb, Sarb, Sarb, Sarb, Sarb, Sarb, Sarb, Sarb, Sarb, Sarb, Sarb, Sarb, @@ -1865,6 +1872,26 @@ static const uint8_t scripts_010C00[256] = /* F0 */ Hung, Hung, Hung, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Hung, Hung, Hung, Hung, Hung, Hung, }; +static const uint8_t scripts_010D00[256] = +{ + /* 00 */ Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, + /* 10 */ Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, + /* 20 */ Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 30 */ Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Rohg, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 40 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 50 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 60 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 70 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 80 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 90 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* A0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* B0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* C0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* D0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* E0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* F0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, +}; + static const uint8_t scripts_010E00[256] = { /* 00 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, @@ -1885,6 +1912,26 @@ static const uint8_t scripts_010E00[256] = /* F0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, }; +static const uint8_t scripts_010F00[256] = +{ + /* 00 */ Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, + /* 10 */ Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, + /* 20 */ Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, Sogo, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 30 */ Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, + /* 40 */ Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, + /* 50 */ Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Sogd, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 60 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 70 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 80 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 90 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* A0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* B0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* C0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* D0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* E0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* F0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, +}; + static const uint8_t scripts_011000[256] = { /* 00 */ Brah, Brah, Brah, Brah, Brah, Brah, Brah, Brah, Brah, Brah, Brah, Brah, Brah, Brah, Brah, Brah, @@ -1899,7 +1946,7 @@ static const uint8_t scripts_011000[256] = /* 90 */ Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, /* A0 */ Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, /* B0 */ Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, Kthi, - /* C0 */ Kthi, Kthi, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* C0 */ Kthi, Kthi, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Kthi, Zzzz, Zzzz, /* D0 */ Sora, Sora, Sora, Sora, Sora, Sora, Sora, Sora, Sora, Sora, Sora, Sora, Sora, Sora, Sora, Sora, /* E0 */ Sora, Sora, Sora, Sora, Sora, Sora, Sora, Sora, Sora, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* F0 */ Sora, Sora, Sora, Sora, Sora, Sora, Sora, Sora, Sora, Sora, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, @@ -1911,7 +1958,7 @@ static const uint8_t scripts_011100[256] = /* 10 */ Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, /* 20 */ Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, /* 30 */ Cakm, Cakm, Cakm, Cakm, Cakm, Zzzz, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, - /* 40 */ Cakm, Cakm, Cakm, Cakm, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 40 */ Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Cakm, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 50 */ Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, /* 60 */ Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, /* 70 */ Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, Mahj, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, @@ -1950,7 +1997,7 @@ static const uint8_t scripts_011300[256] = /* 00 */ Gran, Gran, Gran, Gran, Zzzz, Gran, Gran, Gran, Gran, Gran, Gran, Gran, Gran, Zzzz, Zzzz, Gran, /* 10 */ Gran, Zzzz, Zzzz, Gran, Gran, Gran, Gran, Gran, Gran, Gran, Gran, Gran, Gran, Gran, Gran, Gran, /* 20 */ Gran, Gran, Gran, Gran, Gran, Gran, Gran, Gran, Gran, Zzzz, Gran, Gran, Gran, Gran, Gran, Gran, - /* 30 */ Gran, Zzzz, Gran, Gran, Zzzz, Gran, Gran, Gran, Gran, Gran, Zzzz, Zzzz, Gran, Gran, Gran, Gran, + /* 30 */ Gran, Zzzz, Gran, Gran, Zzzz, Gran, Gran, Gran, Gran, Gran, Zzzz, Zinh, Gran, Gran, Gran, Gran, /* 40 */ Gran, Gran, Gran, Gran, Gran, Zzzz, Zzzz, Gran, Gran, Zzzz, Zzzz, Gran, Gran, Gran, Zzzz, Zzzz, /* 50 */ Gran, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Gran, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Gran, Gran, Gran, /* 60 */ Gran, Gran, Gran, Gran, Zzzz, Zzzz, Gran, Gran, Gran, Gran, Gran, Gran, Gran, Zzzz, Zzzz, Zzzz, @@ -1972,7 +2019,7 @@ static const uint8_t scripts_011400[256] = /* 20 */ Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, /* 30 */ Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, /* 40 */ Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, - /* 50 */ Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Zzzz, Newa, Zzzz, Newa, Zzzz, Zzzz, + /* 50 */ Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Newa, Zzzz, Newa, Zzzz, Newa, Newa, Zzzz, /* 60 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 70 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 80 */ Tirh, Tirh, Tirh, Tirh, Tirh, Tirh, Tirh, Tirh, Tirh, Tirh, Tirh, Tirh, Tirh, Tirh, Tirh, Tirh, @@ -2028,7 +2075,7 @@ static const uint8_t scripts_011600[256] = static const uint8_t scripts_011700[256] = { /* 00 */ Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, - /* 10 */ Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Zzzz, Zzzz, Zzzz, Ahom, Ahom, Ahom, + /* 10 */ Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Zzzz, Zzzz, Ahom, Ahom, Ahom, /* 20 */ Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Zzzz, Zzzz, Zzzz, Zzzz, /* 30 */ Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, Ahom, /* 40 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, @@ -2047,10 +2094,10 @@ static const uint8_t scripts_011700[256] = static const uint8_t scripts_011800[256] = { - /* 00 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* 10 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* 20 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* 30 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 00 */ Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, + /* 10 */ Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, + /* 20 */ Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, + /* 30 */ Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Dogr, Zzzz, Zzzz, Zzzz, Zzzz, /* 40 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 50 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 60 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, @@ -2076,7 +2123,7 @@ static const uint8_t scripts_011A00[256] = /* 60 */ Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, /* 70 */ Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, /* 80 */ Soyo, Soyo, Soyo, Soyo, Zzzz, Zzzz, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, - /* 90 */ Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Zzzz, Soyo, Soyo, + /* 90 */ Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, /* A0 */ Soyo, Soyo, Soyo, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* B0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* C0 */ Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, @@ -2113,6 +2160,26 @@ static const uint8_t scripts_011D00[256] = /* 30 */ Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Zzzz, Zzzz, Zzzz, Gonm, Zzzz, Gonm, Gonm, Zzzz, Gonm, /* 40 */ Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 50 */ Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 60 */ Gong, Gong, Gong, Gong, Gong, Gong, Zzzz, Gong, Gong, Zzzz, Gong, Gong, Gong, Gong, Gong, Gong, + /* 70 */ Gong, Gong, Gong, Gong, Gong, Gong, Gong, Gong, Gong, Gong, Gong, Gong, Gong, Gong, Gong, Gong, + /* 80 */ Gong, Gong, Gong, Gong, Gong, Gong, Gong, Gong, Gong, Gong, Gong, Gong, Gong, Gong, Gong, Zzzz, + /* 90 */ Gong, Gong, Zzzz, Gong, Gong, Gong, Gong, Gong, Gong, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* A0 */ Gong, Gong, Gong, Gong, Gong, Gong, Gong, Gong, Gong, Gong, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* B0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* C0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* D0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* E0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* F0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, +}; + +static const uint8_t scripts_011E00[256] = +{ + /* 00 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 10 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 20 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 30 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 40 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 50 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 60 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 70 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 80 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, @@ -2121,8 +2188,8 @@ static const uint8_t scripts_011D00[256] = /* B0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* C0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* D0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* E0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* F0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* E0 */ Maka, Maka, Maka, Maka, Maka, Maka, Maka, Maka, Maka, Maka, Maka, Maka, Maka, Maka, Maka, Maka, + /* F0 */ Maka, Maka, Maka, Maka, Maka, Maka, Maka, Maka, Maka, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, }; static const uint8_t scripts_012300[256] = @@ -2265,6 +2332,26 @@ static const uint8_t scripts_016B00[256] = /* F0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, }; +static const uint8_t scripts_016E00[256] = +{ + /* 00 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 10 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 20 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 30 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 40 */ Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, + /* 50 */ Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, + /* 60 */ Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, + /* 70 */ Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, + /* 80 */ Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, + /* 90 */ Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Medf, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* A0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* B0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* C0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* D0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* E0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* F0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, +}; + static const uint8_t scripts_016F00[256] = { /* 00 */ Plrd, Plrd, Plrd, Plrd, Plrd, Plrd, Plrd, Plrd, Plrd, Plrd, Plrd, Plrd, Plrd, Plrd, Plrd, Plrd, @@ -2301,8 +2388,8 @@ static const uint8_t scripts_018700[256] = /* B0 */ Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, /* C0 */ Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, /* D0 */ Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, - /* E0 */ Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Zzzz, Zzzz, Zzzz, - /* F0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* E0 */ Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, Tang, + /* F0 */ Tang, Tang, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, }; static const uint8_t scripts_018A00[256] = @@ -2461,8 +2548,8 @@ static const uint8_t scripts_01D200[256] = /* B0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* C0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* D0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* E0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* F0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* E0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, + /* F0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, }; static const uint8_t scripts_01D300[256] = @@ -2474,7 +2561,7 @@ static const uint8_t scripts_01D300[256] = /* 40 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, /* 50 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 60 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* 70 */ Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 70 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 80 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 90 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* A0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, @@ -2645,6 +2732,26 @@ static const uint8_t scripts_01E900[256] = /* F0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, }; +static const uint8_t scripts_01EC00[256] = +{ + /* 00 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 10 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 20 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 30 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 40 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 50 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 60 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 70 */ Zzzz, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, + /* 80 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, + /* 90 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, + /* A0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, + /* B0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* C0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* D0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* E0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* F0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, +}; + static const uint8_t scripts_01EE00[256] = { /* 00 */ Arab, Arab, Arab, Arab, Zzzz, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, @@ -2689,7 +2796,7 @@ static const uint8_t scripts_01F100[256] = { /* 00 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, /* 10 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* 20 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, + /* 20 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, /* 30 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, /* 40 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, /* 50 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, @@ -2742,7 +2849,7 @@ static const uint8_t scripts_01F600[256] = /* C0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, /* D0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* E0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, - /* F0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* F0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, }; static const uint8_t scripts_01F700[256] = @@ -2760,7 +2867,7 @@ static const uint8_t scripts_01F700[256] = /* A0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, /* B0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, /* C0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* D0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* D0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* E0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* F0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, }; @@ -2791,17 +2898,37 @@ static const uint8_t scripts_01F900[256] = /* 10 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, /* 20 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, /* 30 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, - /* 40 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, + /* 40 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, /* 50 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* 60 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, - /* 70 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 60 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, + /* 70 */ Zyyy, Zzzz, Zzzz, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zyyy, Zzzz, Zyyy, Zyyy, Zyyy, Zyyy, /* 80 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* 90 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 90 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, + /* A0 */ Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* B0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* C0 */ Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* D0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, + /* E0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, + /* F0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, +}; + +static const uint8_t scripts_01FA00[256] = +{ + /* 00 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 10 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 20 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 30 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 40 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 50 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 60 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, + /* 70 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 80 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 90 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* A0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* B0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* C0 */ Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* D0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* E0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* C0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* D0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* E0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* F0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, }; @@ -3208,9 +3335,9 @@ static const uint8_t *scripts_00F800_02FAFF[] = scripts_010A00, scripts_010B00, scripts_010C00, - scripts_Zzzz, /* 010D00 */ + scripts_010D00, scripts_010E00, - scripts_Zzzz, /* 010F00 */ + scripts_010F00, scripts_011000, scripts_011100, scripts_011200, @@ -3225,7 +3352,7 @@ static const uint8_t *scripts_00F800_02FAFF[] = scripts_Zzzz, /* 011B00 */ scripts_011C00, scripts_011D00, - scripts_Zzzz, /* 011E00 */ + scripts_011E00, scripts_Zzzz, /* 011F00 */ scripts_Xsux, /* 012000 */ scripts_Xsux, /* 012100 */ @@ -3305,7 +3432,7 @@ static const uint8_t *scripts_00F800_02FAFF[] = scripts_016B00, scripts_Zzzz, /* 016C00 */ scripts_Zzzz, /* 016D00 */ - scripts_Zzzz, /* 016E00 */ + scripts_016E00, scripts_016F00, scripts_Tang, /* 017000 */ scripts_Tang, /* 017100 */ @@ -3431,7 +3558,7 @@ static const uint8_t *scripts_00F800_02FAFF[] = scripts_01E900, scripts_Zzzz, /* 01EA00 */ scripts_Zzzz, /* 01EB00 */ - scripts_Zzzz, /* 01EC00 */ + scripts_01EC00, scripts_Zzzz, /* 01ED00 */ scripts_01EE00, scripts_Zzzz, /* 01EF00 */ @@ -3445,7 +3572,7 @@ static const uint8_t *scripts_00F800_02FAFF[] = scripts_01F700, scripts_01F800, scripts_01F900, - scripts_Zzzz, /* 01FA00 */ + scripts_01FA00, scripts_Zzzz, /* 01FB00 */ scripts_Zzzz, /* 01FC00 */ scripts_Zzzz, /* 01FD00 */ diff --git a/src/tostring.c b/src/tostring.c index 3d89d198..b7a02dfd 100644 --- a/src/tostring.c +++ b/src/tostring.c @@ -1,6 +1,6 @@ /* Enumeration types to string. * - * Copyright (C) 2012-2016 Reece H. Dunn + * Copyright (C) 2012-2018 Reece H. Dunn * * This file is part of ucd-tools. * @@ -110,6 +110,7 @@ const char *ucd_get_script_string(ucd_script s) "Cyrl", "Cyrs", "Deva", + "Dogr", "Dsrt", "Dupl", "Egyd", @@ -120,6 +121,7 @@ const char *ucd_get_script_string(ucd_script s) "Geok", "Geor", "Glag", + "Gong", "Gonm", "Goth", "Gran", @@ -166,10 +168,12 @@ const char *ucd_get_script_string(ucd_script s) "Lyci", "Lydi", "Mahj", + "Maka", "Mand", "Mani", "Marc", "Maya", + "Medf", "Mend", "Merc", "Mero", @@ -205,6 +209,7 @@ const char *ucd_get_script_string(ucd_script s) "Prti", "Qaak", "Rjng", + "Rohg", "Roro", "Runr", "Samr", @@ -217,6 +222,8 @@ const char *ucd_get_script_string(ucd_script s) "Sidd", "Sind", "Sinh", + "Sogd", + "Sogo", "Sora", "Soyo", "Sund", diff --git a/tools/case.py b/tools/case.py index 3c237a47..9daa5740 100755 --- a/tools/case.py +++ b/tools/case.py @@ -1,6 +1,6 @@ #!/usr/bin/python -# Copyright (C) 2012-2016 Reece H. Dunn +# Copyright (C) 2012-2018 Reece H. Dunn # # This file is part of ucd-tools. # @@ -33,7 +33,7 @@ for data in ucd.parse_ucd_data(ucd_rootdir, 'UnicodeData'): if __name__ == '__main__': sys.stdout.write("""/* Unicode Case Conversion * - * Copyright (C) 2012-2016 Reece H. Dunn + * Copyright (C) 2012-2018 Reece H. Dunn * * This file is part of ucd-tools. * diff --git a/tools/categories.py b/tools/categories.py index c189adf1..369c10d8 100755 --- a/tools/categories.py +++ b/tools/categories.py @@ -1,6 +1,6 @@ #!/usr/bin/python -# Copyright (C) 2012-2016 Reece H. Dunn +# Copyright (C) 2012-2018 Reece H. Dunn # # This file is part of ucd-tools. # @@ -92,7 +92,7 @@ for codepoints, category, comment in category_sets: if __name__ == '__main__': sys.stdout.write("""/* Unicode General Categories * - * Copyright (C) 2012-2016 Reece H. Dunn + * Copyright (C) 2012-2018 Reece H. Dunn * * This file is part of ucd-tools. * diff --git a/tools/scripts.py b/tools/scripts.py index b6aaa752..de3b169e 100755 --- a/tools/scripts.py +++ b/tools/scripts.py @@ -1,6 +1,6 @@ #!/usr/bin/python -# Copyright (C) 2012-2016 Reece H. Dunn +# Copyright (C) 2012-2018 Reece H. Dunn # # This file is part of ucd-tools. # @@ -86,7 +86,7 @@ for codepoints, script, comment in script_sets: if __name__ == '__main__': sys.stdout.write("""/* Unicode Scripts * - * Copyright (C) 2012-2016 Reece H. Dunn + * Copyright (C) 2012-2018 Reece H. Dunn * * This file is part of ucd-tools. * @@ -143,6 +143,7 @@ if __name__ == '__main__': #define Cyrl UCD_SCRIPT_Cyrl #define Cyrs UCD_SCRIPT_Cyrs #define Deva UCD_SCRIPT_Deva +#define Dogr UCD_SCRIPT_Dogr #define Dsrt UCD_SCRIPT_Dsrt #define Dupl UCD_SCRIPT_Dupl #define Egyd UCD_SCRIPT_Egyd @@ -153,6 +154,7 @@ if __name__ == '__main__': #define Geok UCD_SCRIPT_Geok #define Geor UCD_SCRIPT_Geor #define Glag UCD_SCRIPT_Glag +#define Gong UCD_SCRIPT_Gong #define Gonm UCD_SCRIPT_Gonm #define Goth UCD_SCRIPT_Goth #define Gran UCD_SCRIPT_Gran @@ -199,10 +201,12 @@ if __name__ == '__main__': #define Lyci UCD_SCRIPT_Lyci #define Lydi UCD_SCRIPT_Lydi #define Mahj UCD_SCRIPT_Mahj +#define Maka UCD_SCRIPT_Maka #define Mand UCD_SCRIPT_Mand #define Mani UCD_SCRIPT_Mani #define Marc UCD_SCRIPT_Marc #define Maya UCD_SCRIPT_Maya +#define Medf UCD_SCRIPT_Medf #define Mend UCD_SCRIPT_Mend #define Merc UCD_SCRIPT_Merc #define Mero UCD_SCRIPT_Mero @@ -238,6 +242,7 @@ if __name__ == '__main__': #define Prti UCD_SCRIPT_Prti #define Qaak UCD_SCRIPT_Qaak #define Rjng UCD_SCRIPT_Rjng +#define Rohg UCD_SCRIPT_Rohg #define Roro UCD_SCRIPT_Roro #define Runr UCD_SCRIPT_Runr #define Samr UCD_SCRIPT_Samr @@ -250,6 +255,8 @@ if __name__ == '__main__': #define Sidd UCD_SCRIPT_Sidd #define Sind UCD_SCRIPT_Sind #define Sinh UCD_SCRIPT_Sinh +#define Sogd UCD_SCRIPT_Sogd +#define Sogo UCD_SCRIPT_Sogo #define Sora UCD_SCRIPT_Sora #define Soyo UCD_SCRIPT_Soyo #define Sund UCD_SCRIPT_Sund