Optimization for lower(), upper(), casefold() functions.
authorJeff Davis <jdavis@postgresql.org>
Sat, 15 Mar 2025 20:00:50 +0000 (13:00 -0700)
committerJeff Davis <jdavis@postgresql.org>
Sat, 15 Mar 2025 20:00:50 +0000 (13:00 -0700)
Improve performance and reduce table sizes for case mapping.

The main case mapping table stores only 16-bit offsets, which can be
used to look up the mapped code point in any of the case tables (fold,
lower, upper, or title case). Simple case pairs point to the same
offsets.

Generate a function in generate-unicode_case_table.pl that consists of
a nested branches to test for specific codepoint ranges that determine
the offset in the main table.

Other approaches were considered, such as representing these ranges as
another structure (rather than branches in a generated function), or a
different approach such as a radix tree, or perfect hashing. The
author implemented and tested these alternatives and settled on the
generated branches.

Author: Alexander Borisov <lex.borisov@gmail.com>
Reviewed-by: Heikki Linnakangas <hlinnaka@iki.fi>
Discussion: https://postgr.es/m/7cac7e66-9a3b-4e3f-a997-42aa0c401f80%40gmail.com

src/common/unicode/generate-unicode_case_table.pl
src/common/unicode_case.c
src/include/common/unicode_case_table.h

index 953ebef2fe6d3afc9013bf4f624d1c8b35df0458..3c2edc7ca4de04429945c753c7f96a95eae2b027 100644 (file)
@@ -231,26 +231,24 @@ while (my $line = <$FH>)
 close $FH;
 
 # assign sequential array indexes to the special mappings
-my $special_idx = 0;
+# 0 is reserved for NULL
+my $special_idx = 1;
 foreach my $code (sort { $a <=> $b } (keys %special))
 {
    $special{$code}{Index} = $special_idx++;
 }
 
+# determine size of array
+my $num_special = scalar(keys %special) + 1;
+
+die
+  "special case map contains $num_special entries which cannot be represented in uint8"
+  if ($num_special > 256);
+
 # Start writing out the output files
 open my $OT, '>', $output_table_file
   or die "Could not open output file $output_table_file: $!\n";
 
-# determine size of array given that codepoints <= 0x80 are dense and
-# the rest of the entries are sparse
-my $num_simple = 0x80;
-foreach my $code (sort { $a <=> $b } (keys %simple))
-{
-   $num_simple++ unless $code < 0x80;
-}
-
-my $num_special = scalar(keys %special) + 1;
-
 print $OT <<"EOS";
 /*-------------------------------------------------------------------------
  *
@@ -298,24 +296,17 @@ typedef enum
 
 typedef struct
 {
-   pg_wchar    codepoint;      /* Unicode codepoint */
    int16       conditions;
    pg_wchar    map[NCaseKind][MAX_CASE_EXPANSION];
 } pg_special_case;
 
-typedef struct
-{
-   pg_wchar    codepoint;      /* Unicode codepoint */
-   pg_wchar    simplemap[NCaseKind];
-   const pg_special_case *special_case;
-} pg_case_map;
-
 /*
  * Special case mappings that aren't representable in the simple map.
  * Entries are referenced from simple_case_map.
  */
 static const pg_special_case special_case[$num_special] =
 {
+   {0, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}}},
 EOS
 
 foreach my $code (sort { $a <=> $b } (keys %special))
@@ -332,23 +323,46 @@ foreach my $code (sort { $a <=> $b } (keys %special))
      (map { sprintf "0x%06x", $_ } @{ $special{$code}{Uppercase} });
    my $fold = join ", ",
      (map { sprintf "0x%06x", $_ } @{ $special{$code}{Foldcase} });
-   printf $OT "\t{0x%06x, %s, ", $code, $special{$code}{Conditions};
-   printf $OT "{{%s}, {%s}, {%s}, {%s}}},\n", $lower, $title, $upper, $fold;
+   printf $OT "\t{%s, ", $special{$code}{Conditions};
+   printf $OT
+     "{[CaseLower] = {%s},[CaseTitle] = {%s},[CaseUpper] = {%s},[CaseFold] = {%s}}},\n",
+     $lower, $title, $upper, $fold;
 }
+print $OT "};\n";
 
-print $OT "\t{0, 0, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}}}\n";
-print $OT <<"EOS";
-};
-
-/*
- * Case mapping table. Dense for codepoints < 0x80 (enabling fast lookup),
- * sparse for higher codepoints (requiring scan or binary search).
- */
-static const pg_case_map case_map[$num_simple] =
+# Separate maps for each case form, starting with the reserved entry
+# at index 0. The first element is the result code point, and the
+# second element is the input code point (which is not ultimately
+# stored in the C array, it's just there as a comment).
+my %map = (
+   lower => [ [ 0, -1 ] ],
+   title => [ [ 0, -1 ] ],
+   upper => [ [ 0, -1 ] ],
+   fold => [ [ 0, -1 ] ],
+   special => [ [ 0, -1 ] ]);
+
+
+# Current index into the map arrays above.
+my $index = 1;
+
+# Sets of case forms/variations. Simple case pairs have the same set
+# of case forms, e.g. the letters 'a' and 'A' both lowercase to 'a';
+# both uppercase to 'A', etc. By tracking unique sets using a hash, we
+# cut the size needed for the maps in half (some characters are
+# exceptions, so it's not exactly half). The key is an array of all
+# case forms, and the value is an index into the maps.
+my %case_forms;
+
+# Perl doesn't allow arrays as hash keys, so we need to transform the
+# set of case forms to a scalar.
+sub get_hash_key
 {
-EOS
+   return join ",", @_;
+}
 
-printf $OT "\t/* begin dense entries for codepoints < 0x80 */\n";
+# Create map entries for all codepoints < 0x80, so that the caller can
+# have a fast-path lookup without needing to go through the main
+# table.
 for (my $code = 0; $code < 0x80; $code++)
 {
    my $lc = ($simple{$code}{Simple_Lowercase} || $code);
@@ -358,26 +372,310 @@ for (my $code = 0; $code < 0x80; $code++)
 
    die "unexpected special case for code $code"
      if defined $special{$code};
-   printf $OT
-     "\t{0x%06x, {[CaseLower] = 0x%06x,[CaseTitle] = 0x%06x,[CaseUpper] = 0x%06x,[CaseFold] = 0x%06x}, NULL},\n",
-     $code, $lc, $tc, $uc, $fc;
+
+   push @{ $map{lower} }, [ $lc, $code ];
+   push @{ $map{title} }, [ $tc, $code ];
+   push @{ $map{upper} }, [ $uc, $code ];
+   push @{ $map{fold} }, [ $fc, $code ];
+   push @{ $map{special} }, [ 0, $code ];
+
+   my $key = get_hash_key($lc, $tc, $uc, $fc, 0);
+
+   $simple{$code}{Index} = $index;
+   $case_forms{$key} = $index++;
 }
-printf $OT "\n";
 
-printf $OT "\t/* begin sparse entries for codepoints >= 0x80 */\n";
+# Create map entries for all characters >= 0x80 that have case
+# mappings (any character with a special case mapping also has an
+# entry in %simple).
 foreach my $code (sort { $a <=> $b } (keys %simple))
 {
    next unless $code >= 0x80;    # already output above
 
-   my $map = $simple{$code};
-   my $special_case = "NULL";
+   my $entry = $simple{$code};
+   my $special_case = 0;
    if (exists $special{$code})
    {
-       $special_case = sprintf "&special_case[%d]", $special{$code}{Index};
+       $special_case = $special{$code}{Index};
    }
-   printf $OT
-     "\t{0x%06x, {[CaseLower] = 0x%06x,[CaseTitle] = 0x%06x,[CaseUpper] = 0x%06x,[CaseFold] = 0x%06x}, %s},\n",
-     $code, $map->{Simple_Lowercase}, $map->{Simple_Titlecase},
-     $map->{Simple_Uppercase}, $map->{Simple_Foldcase}, $special_case;
+
+   my $key = get_hash_key(
+       $entry->{Simple_Lowercase}, $entry->{Simple_Titlecase},
+       $entry->{Simple_Uppercase}, $entry->{Simple_Foldcase},
+       $special_case);
+
+   unless (exists $case_forms{$key})
+   {
+       $case_forms{$key} = $index++;
+
+       push @{ $map{lower} }, [ $entry->{Simple_Lowercase}, $code ];
+       push @{ $map{title} }, [ $entry->{Simple_Titlecase}, $code ];
+       push @{ $map{upper} }, [ $entry->{Simple_Uppercase}, $code ];
+       push @{ $map{fold} }, [ $entry->{Simple_Foldcase}, $code ];
+       push @{ $map{special} }, [ $special_case, $code ];
+   }
+
+   $simple{$code}{Index} = $case_forms{$key};
+}
+
+die
+  "mapping tables contains $index entries which cannot be represented in uint16"
+  if ($index > 65536);
+
+foreach my $kind ('lower', 'title', 'upper', 'fold')
+{
+   print $OT <<"EOS";
+
+/*
+ * The entry case_map_${kind}[case_index(codepoint)] is the mapping for the
+ * given codepoint.
+ */
+static const pg_wchar case_map_$kind\[$index\] =
+{
+EOS
+
+   foreach my $entry (@{ $map{$kind} })
+   {
+       my $comment =
+         @$entry[1] == -1 ? "reserved" : sprintf("U+%06x", @$entry[1]);
+       print $OT
+         sprintf("\t0x%06x,\t\t\t\t\t/* %s */\n", @$entry[0], $comment);
+   }
+
+   print $OT "\n};\n";
+}
+
+print $OT <<"EOS";
+
+/*
+ * The entry case_map_special[case_index(codepoint)] is the index in
+ * special_case for that codepoint, or 0 if no special case mapping exists.
+ */
+static const uint8 case_map_special\[$index\] =
+{
+EOS
+
+foreach my $entry (@{ $map{special} })
+{
+   my $s = sprintf("%d,", @$entry[0]);
+   $s .= "\t" if length($s) < 4;
+   my $comment =
+     @$entry[1] == -1 ? "reserved" : sprintf("U+%06x", @$entry[1]);
+   print $OT sprintf("\t%s\t\t\t\t\t\t/* %s */\n", $s, $comment);
+}
+
+print $OT "\n};\n";
+
+print $OT <<"EOS";
+
+/*
+ * Map for each case kind.
+ */
+static const pg_wchar *casekind_map[NCaseKind] =
+{
+   [CaseLower] = case_map_lower,
+   [CaseTitle] = case_map_title,
+   [CaseUpper] = case_map_upper,
+   [CaseFold] = case_map_fold,
+};
+EOS
+
+my @codepoints = keys %simple;
+my $range = make_ranges(\@codepoints, 500);
+my @case_map_lines = range_tables($range);
+my $case_map_length = scalar @case_map_lines;
+my $case_map_table = join "\n", @case_map_lines;
+
+print $OT <<"EOS";
+
+/*
+ * Used by case_index() to map a codepoint to an index that can be used in any
+ * of the following arrays: case_map_lower, case_map_title, case_map_upper,
+ * case_map_fold.
+ */
+static const uint16 case_map[$case_map_length] =
+{
+$case_map_table
+};
+
+
+EOS
+
+# First range is the fast path. It must start at codepoint zero, and
+# the end is the fastpath limit. Track the limit here and then
+# remove it before generating the other branches.
+die "first range must start at 0" unless ${ @$range[0] }{Start} == 0;
+my $fastpath_limit = sprintf("0x%04X", ${ @$range[0] }{End});
+shift @$range;
+
+print $OT <<"EOS";
+/*
+ * case_index()
+ *
+ * Given a code point, compute the index in the case_map at which we can find
+ * the offset into the mapping tables.
+ */
+static inline uint16
+case_index(pg_wchar cp)
+{
+   /* Fast path for codepoints < $fastpath_limit */
+   if (cp < $fastpath_limit)
+   {
+       return case_map[cp];
+   }
+
+EOS
+
+print $OT join("\n", @{ branch($range, 0, $#$range, 1) });
+
+print $OT <<"EOS";
+
+
+   return 0;
+}
+EOS
+
+close $OT;
+
+# The function generates C code with a series of nested if-else conditions
+# to search for the matching interval.
+sub branch
+{
+   my ($range, $from, $to, $indent) = @_;
+   my ($idx, $space, $entry, $table, @result);
+
+   $idx = ($from + int(($to - $from) / 2));
+   return \@result unless exists $range->[$idx];
+
+   $space = "\t" x $indent;
+
+   $entry = $range->[$idx];
+
+   # IF state
+   if ($idx == $from)
+   {
+       if ($idx == 0)
+       {
+           push @result,
+             sprintf("%sif (cp >= 0x%04X && cp < 0x%04X)\n%s{",
+               $space, $entry->{Start}, $entry->{End}, $space);
+       }
+       else
+       {
+           push @result,
+             sprintf("%sif (cp < 0x%04X)\n%s{",
+               $space, $entry->{End}, $space);
+       }
+
+       push @result,
+         sprintf("%s\treturn case_map[cp - 0x%04X + %d];",
+           $space, $entry->{Start}, $entry->{Offset});
+   }
+   else
+   {
+       push @result,
+         sprintf("%sif (cp < 0x%04X)\n%s{", $space, $entry->{End}, $space);
+       push @result, @{ branch($range, $from, $idx - 1, $indent + 1) };
+   }
+
+   push @result, $space . "}";
+
+   # return now if it's the last range
+   return \@result if $idx == (scalar @$range) - 1;
+
+   # ELSE looks ahead to the next range to avoid adding an
+   # unnecessary level of branching.
+   $entry = @$range[ $idx + 1 ];
+
+   # ELSE state
+   push @result,
+     sprintf("%selse if (cp >= 0x%04X)\n%s{",
+       $space, $entry->{Start}, $space);
+
+   if ($idx == $to)
+   {
+       push @result,
+         sprintf("%s\treturn case_map\[cp - 0x%04X + %d];",
+           $space, $entry->{Start}, $entry->{Offset});
+   }
+   else
+   {
+       push @result, @{ branch($range, $idx + 1, $to, $indent + 1) };
+   }
+
+   push @result, $space . "}";
+
+   return \@result;
+}
+
+# Group numbers into ranges where the difference between neighboring
+# elements does not exceed $limit. If the difference is greater, a new
+# range is created. This is used to break the sequence into intervals
+# where the gaps between numbers are greater than limit.
+#
+# For example, if there are numbers 1, 2, 3, 5, 6 and limit = 1, then
+# there is a difference of 2 between 3 and 5, which is greater than 1,
+# so there will be ranges 1-3 and 5-6.
+sub make_ranges
+{
+   my ($nums, $limit) = @_;
+   my ($prev, $start, $curr, $total, @sorted, @range);
+
+   @sorted = sort { $a <=> $b } @$nums;
+
+   die "expecting at least 2 codepoints" if (scalar @sorted < 2);
+
+   $start = shift @sorted;
+
+   die "expecting first codepoint to start at 0" unless $start == 0;
+
+   $prev = $start;
+   $total = 0;
+
+   # append final 'undef' to signal final iteration
+   push @sorted, undef;
+
+   foreach $curr (@sorted)
+   {
+       # if last iteration always append the range
+       if (!defined($curr) || ($curr - $prev > $limit))
+       {
+           push @range,
+             {
+               Start => $start,
+               End => $prev + 1,
+               Offset => $total
+             };
+           $total += $prev + 1 - $start;
+           $start = $curr;
+       }
+
+       $prev = $curr;
+   }
+
+   return \@range;
+}
+
+# The function combines all ranges into the case_map table. Ranges may
+# include codepoints without a case mapping at all, in which case the
+# entry in case_map should be zero.
+sub range_tables
+{
+   my ($range) = @_;
+   my (@lines, @result);
+
+   foreach my $entry (@$range)
+   {
+       my $start = $entry->{Start};
+       my $end = $entry->{End} - 1;
+
+       foreach my $cp ($start .. $end)
+       {
+           my $idx = sprintf("%d,", ($simple{$cp}{Index} || 0));
+           $idx .= "\t" if length($idx) < 4;
+           push @lines, sprintf("\t%s\t\t\t\t\t\t/* U+%06X */", $idx, $cp);
+       }
+   }
+
+   return @lines;
 }
-print $OT "};\n";
index ccc485bf98fe243883f2474e0a246e2c841e9808..b3c6362e009d94560b36c119902fa3947bb389d0 100644 (file)
@@ -27,7 +27,7 @@ enum CaseMapResult
    CASEMAP_SPECIAL,
 };
 
-static const pg_case_map *find_case_map(pg_wchar ucs);
+static pg_wchar find_case_map(pg_wchar ucs, const pg_wchar *map);
 static size_t convert_case(char *dst, size_t dstsize, const char *src, ssize_t srclen,
                           CaseKind str_casekind, bool full, WordBoundaryNext wbnext,
                           void *wbstate);
@@ -38,33 +38,33 @@ static enum CaseMapResult casemap(pg_wchar u1, CaseKind casekind, bool full,
 pg_wchar
 unicode_lowercase_simple(pg_wchar code)
 {
-   const pg_case_map *map = find_case_map(code);
+   pg_wchar    cp = find_case_map(code, case_map_lower);
 
-   return map ? map->simplemap[CaseLower] : code;
+   return cp != 0 ? cp : code;
 }
 
 pg_wchar
 unicode_titlecase_simple(pg_wchar code)
 {
-   const pg_case_map *map = find_case_map(code);
+   pg_wchar    cp = find_case_map(code, case_map_title);
 
-   return map ? map->simplemap[CaseTitle] : code;
+   return cp != 0 ? cp : code;
 }
 
 pg_wchar
 unicode_uppercase_simple(pg_wchar code)
 {
-   const pg_case_map *map = find_case_map(code);
+   pg_wchar    cp = find_case_map(code, case_map_upper);
 
-   return map ? map->simplemap[CaseUpper] : code;
+   return cp != 0 ? cp : code;
 }
 
 pg_wchar
 unicode_casefold_simple(pg_wchar code)
 {
-   const pg_case_map *map = find_case_map(code);
+   pg_wchar    cp = find_case_map(code, case_map_fold);
 
-   return map ? map->simplemap[CaseFold] : code;
+   return cp != 0 ? cp : code;
 }
 
 /*
@@ -387,64 +387,48 @@ casemap(pg_wchar u1, CaseKind casekind, bool full,
        const char *src, size_t srclen, size_t srcoff,
        pg_wchar *simple, const pg_wchar **special)
 {
-   const pg_case_map *map;
+   uint16      idx;
 
+   /* Fast path for codepoints < 0x80 */
    if (u1 < 0x80)
    {
-       *simple = case_map[u1].simplemap[casekind];
+       /*
+        * The first elements in all tables are reserved as 0 (as NULL). The
+        * data starts at index 1, not 0.
+        */
+       *simple = casekind_map[casekind][u1 + 1];
 
        return CASEMAP_SIMPLE;
    }
 
-   map = find_case_map(u1);
+   idx = case_index(u1);
 
-   if (map == NULL)
+   if (idx == 0)
        return CASEMAP_SELF;
 
-   if (full && map->special_case != NULL &&
-       check_special_conditions(map->special_case->conditions,
+   if (full && case_map_special[idx] &&
+       check_special_conditions(special_case[case_map_special[idx]].conditions,
                                 src, srclen, srcoff))
    {
-       *special = map->special_case->map[casekind];
+       *special = special_case[case_map_special[idx]].map[casekind];
        return CASEMAP_SPECIAL;
    }
 
-   *simple = map->simplemap[casekind];
+   *simple = casekind_map[casekind][idx];
 
    return CASEMAP_SIMPLE;
 }
 
-/* find entry in simple case map, if any */
-static const pg_case_map *
-find_case_map(pg_wchar ucs)
+/*
+ * Find entry in simple case map.
+ * If the entry does not exist, 0 will be returned.
+ */
+static pg_wchar
+find_case_map(pg_wchar ucs, const pg_wchar *map)
 {
-   int         min;
-   int         mid;
-   int         max;
-
-   /* all chars <= 0x80 are stored in array for fast lookup */
-   Assert(lengthof(case_map) >= 0x80);
+   /* Fast path for codepoints < 0x80 */
    if (ucs < 0x80)
-   {
-       const pg_case_map *map = &case_map[ucs];
-
-       Assert(map->codepoint == ucs);
-       return map;
-   }
-
-   /* otherwise, binary search */
-   min = 0x80;
-   max = lengthof(case_map) - 1;
-   while (max >= min)
-   {
-       mid = (min + max) / 2;
-       if (ucs > case_map[mid].codepoint)
-           min = mid + 1;
-       else if (ucs < case_map[mid].codepoint)
-           max = mid - 1;
-       else
-           return &case_map[mid];
-   }
-
-   return NULL;
+       /* The first elements in all tables are reserved as 0 (as NULL). */
+       return map[ucs + 1];
+   return map[case_index(ucs)];
 }
index 7ad284913d74abaad7fd513f819e4f5646bdc29f..5b33f64a666af8df8f5a0b67895cdb7e87b880ae 100644 (file)
@@ -44,3142 +44,13316 @@ typedef enum
 
 typedef struct
 {
-   pg_wchar    codepoint;      /* Unicode codepoint */
    int16       conditions;
    pg_wchar    map[NCaseKind][MAX_CASE_EXPANSION];
 } pg_special_case;
 
-typedef struct
-{
-   pg_wchar    codepoint;      /* Unicode codepoint */
-   pg_wchar    simplemap[NCaseKind];
-   const pg_special_case *special_case;
-} pg_case_map;
-
 /*
  * Special case mappings that aren't representable in the simple map.
  * Entries are referenced from simple_case_map.
  */
 static const pg_special_case special_case[106] =
 {
-   {0x0000df, 0, {{0x0000df, 0x000000, 0x000000}, {0x000053, 0x000073, 0x000000}, {0x000053, 0x000053, 0x000000}, {0x000073, 0x000073, 0x000000}}},
-   {0x000130, 0, {{0x000069, 0x000307, 0x000000}, {0x000130, 0x000000, 0x000000}, {0x000130, 0x000000, 0x000000}, {0x000069, 0x000307, 0x000000}}},
-   {0x000149, 0, {{0x000149, 0x000000, 0x000000}, {0x0002bc, 0x00004e, 0x000000}, {0x0002bc, 0x00004e, 0x000000}, {0x0002bc, 0x00006e, 0x000000}}},
-   {0x0001f0, 0, {{0x0001f0, 0x000000, 0x000000}, {0x00004a, 0x00030c, 0x000000}, {0x00004a, 0x00030c, 0x000000}, {0x00006a, 0x00030c, 0x000000}}},
-   {0x000390, 0, {{0x000390, 0x000000, 0x000000}, {0x000399, 0x000308, 0x000301}, {0x000399, 0x000308, 0x000301}, {0x0003b9, 0x000308, 0x000301}}},
-   {0x0003a3, PG_U_FINAL_SIGMA, {{0x0003c2, 0x000000, 0x000000}, {0x0003a3, 0x000000, 0x000000}, {0x0003a3, 0x000000, 0x000000}, {0x0003c3, 0x000000, 0x000000}}},
-   {0x0003b0, 0, {{0x0003b0, 0x000000, 0x000000}, {0x0003a5, 0x000308, 0x000301}, {0x0003a5, 0x000308, 0x000301}, {0x0003c5, 0x000308, 0x000301}}},
-   {0x000587, 0, {{0x000587, 0x000000, 0x000000}, {0x000535, 0x000582, 0x000000}, {0x000535, 0x000552, 0x000000}, {0x000565, 0x000582, 0x000000}}},
-   {0x001e96, 0, {{0x001e96, 0x000000, 0x000000}, {0x000048, 0x000331, 0x000000}, {0x000048, 0x000331, 0x000000}, {0x000068, 0x000331, 0x000000}}},
-   {0x001e97, 0, {{0x001e97, 0x000000, 0x000000}, {0x000054, 0x000308, 0x000000}, {0x000054, 0x000308, 0x000000}, {0x000074, 0x000308, 0x000000}}},
-   {0x001e98, 0, {{0x001e98, 0x000000, 0x000000}, {0x000057, 0x00030a, 0x000000}, {0x000057, 0x00030a, 0x000000}, {0x000077, 0x00030a, 0x000000}}},
-   {0x001e99, 0, {{0x001e99, 0x000000, 0x000000}, {0x000059, 0x00030a, 0x000000}, {0x000059, 0x00030a, 0x000000}, {0x000079, 0x00030a, 0x000000}}},
-   {0x001e9a, 0, {{0x001e9a, 0x000000, 0x000000}, {0x000041, 0x0002be, 0x000000}, {0x000041, 0x0002be, 0x000000}, {0x000061, 0x0002be, 0x000000}}},
-   {0x001e9e, 0, {{0x0000df, 0x000000, 0x000000}, {0x001e9e, 0x000000, 0x000000}, {0x001e9e, 0x000000, 0x000000}, {0x000073, 0x000073, 0x000000}}},
-   {0x001f50, 0, {{0x001f50, 0x000000, 0x000000}, {0x0003a5, 0x000313, 0x000000}, {0x0003a5, 0x000313, 0x000000}, {0x0003c5, 0x000313, 0x000000}}},
-   {0x001f52, 0, {{0x001f52, 0x000000, 0x000000}, {0x0003a5, 0x000313, 0x000300}, {0x0003a5, 0x000313, 0x000300}, {0x0003c5, 0x000313, 0x000300}}},
-   {0x001f54, 0, {{0x001f54, 0x000000, 0x000000}, {0x0003a5, 0x000313, 0x000301}, {0x0003a5, 0x000313, 0x000301}, {0x0003c5, 0x000313, 0x000301}}},
-   {0x001f56, 0, {{0x001f56, 0x000000, 0x000000}, {0x0003a5, 0x000313, 0x000342}, {0x0003a5, 0x000313, 0x000342}, {0x0003c5, 0x000313, 0x000342}}},
-   {0x001f80, 0, {{0x001f80, 0x000000, 0x000000}, {0x001f88, 0x000000, 0x000000}, {0x001f08, 0x000399, 0x000000}, {0x001f00, 0x0003b9, 0x000000}}},
-   {0x001f81, 0, {{0x001f81, 0x000000, 0x000000}, {0x001f89, 0x000000, 0x000000}, {0x001f09, 0x000399, 0x000000}, {0x001f01, 0x0003b9, 0x000000}}},
-   {0x001f82, 0, {{0x001f82, 0x000000, 0x000000}, {0x001f8a, 0x000000, 0x000000}, {0x001f0a, 0x000399, 0x000000}, {0x001f02, 0x0003b9, 0x000000}}},
-   {0x001f83, 0, {{0x001f83, 0x000000, 0x000000}, {0x001f8b, 0x000000, 0x000000}, {0x001f0b, 0x000399, 0x000000}, {0x001f03, 0x0003b9, 0x000000}}},
-   {0x001f84, 0, {{0x001f84, 0x000000, 0x000000}, {0x001f8c, 0x000000, 0x000000}, {0x001f0c, 0x000399, 0x000000}, {0x001f04, 0x0003b9, 0x000000}}},
-   {0x001f85, 0, {{0x001f85, 0x000000, 0x000000}, {0x001f8d, 0x000000, 0x000000}, {0x001f0d, 0x000399, 0x000000}, {0x001f05, 0x0003b9, 0x000000}}},
-   {0x001f86, 0, {{0x001f86, 0x000000, 0x000000}, {0x001f8e, 0x000000, 0x000000}, {0x001f0e, 0x000399, 0x000000}, {0x001f06, 0x0003b9, 0x000000}}},
-   {0x001f87, 0, {{0x001f87, 0x000000, 0x000000}, {0x001f8f, 0x000000, 0x000000}, {0x001f0f, 0x000399, 0x000000}, {0x001f07, 0x0003b9, 0x000000}}},
-   {0x001f88, 0, {{0x001f80, 0x000000, 0x000000}, {0x001f88, 0x000000, 0x000000}, {0x001f08, 0x000399, 0x000000}, {0x001f00, 0x0003b9, 0x000000}}},
-   {0x001f89, 0, {{0x001f81, 0x000000, 0x000000}, {0x001f89, 0x000000, 0x000000}, {0x001f09, 0x000399, 0x000000}, {0x001f01, 0x0003b9, 0x000000}}},
-   {0x001f8a, 0, {{0x001f82, 0x000000, 0x000000}, {0x001f8a, 0x000000, 0x000000}, {0x001f0a, 0x000399, 0x000000}, {0x001f02, 0x0003b9, 0x000000}}},
-   {0x001f8b, 0, {{0x001f83, 0x000000, 0x000000}, {0x001f8b, 0x000000, 0x000000}, {0x001f0b, 0x000399, 0x000000}, {0x001f03, 0x0003b9, 0x000000}}},
-   {0x001f8c, 0, {{0x001f84, 0x000000, 0x000000}, {0x001f8c, 0x000000, 0x000000}, {0x001f0c, 0x000399, 0x000000}, {0x001f04, 0x0003b9, 0x000000}}},
-   {0x001f8d, 0, {{0x001f85, 0x000000, 0x000000}, {0x001f8d, 0x000000, 0x000000}, {0x001f0d, 0x000399, 0x000000}, {0x001f05, 0x0003b9, 0x000000}}},
-   {0x001f8e, 0, {{0x001f86, 0x000000, 0x000000}, {0x001f8e, 0x000000, 0x000000}, {0x001f0e, 0x000399, 0x000000}, {0x001f06, 0x0003b9, 0x000000}}},
-   {0x001f8f, 0, {{0x001f87, 0x000000, 0x000000}, {0x001f8f, 0x000000, 0x000000}, {0x001f0f, 0x000399, 0x000000}, {0x001f07, 0x0003b9, 0x000000}}},
-   {0x001f90, 0, {{0x001f90, 0x000000, 0x000000}, {0x001f98, 0x000000, 0x000000}, {0x001f28, 0x000399, 0x000000}, {0x001f20, 0x0003b9, 0x000000}}},
-   {0x001f91, 0, {{0x001f91, 0x000000, 0x000000}, {0x001f99, 0x000000, 0x000000}, {0x001f29, 0x000399, 0x000000}, {0x001f21, 0x0003b9, 0x000000}}},
-   {0x001f92, 0, {{0x001f92, 0x000000, 0x000000}, {0x001f9a, 0x000000, 0x000000}, {0x001f2a, 0x000399, 0x000000}, {0x001f22, 0x0003b9, 0x000000}}},
-   {0x001f93, 0, {{0x001f93, 0x000000, 0x000000}, {0x001f9b, 0x000000, 0x000000}, {0x001f2b, 0x000399, 0x000000}, {0x001f23, 0x0003b9, 0x000000}}},
-   {0x001f94, 0, {{0x001f94, 0x000000, 0x000000}, {0x001f9c, 0x000000, 0x000000}, {0x001f2c, 0x000399, 0x000000}, {0x001f24, 0x0003b9, 0x000000}}},
-   {0x001f95, 0, {{0x001f95, 0x000000, 0x000000}, {0x001f9d, 0x000000, 0x000000}, {0x001f2d, 0x000399, 0x000000}, {0x001f25, 0x0003b9, 0x000000}}},
-   {0x001f96, 0, {{0x001f96, 0x000000, 0x000000}, {0x001f9e, 0x000000, 0x000000}, {0x001f2e, 0x000399, 0x000000}, {0x001f26, 0x0003b9, 0x000000}}},
-   {0x001f97, 0, {{0x001f97, 0x000000, 0x000000}, {0x001f9f, 0x000000, 0x000000}, {0x001f2f, 0x000399, 0x000000}, {0x001f27, 0x0003b9, 0x000000}}},
-   {0x001f98, 0, {{0x001f90, 0x000000, 0x000000}, {0x001f98, 0x000000, 0x000000}, {0x001f28, 0x000399, 0x000000}, {0x001f20, 0x0003b9, 0x000000}}},
-   {0x001f99, 0, {{0x001f91, 0x000000, 0x000000}, {0x001f99, 0x000000, 0x000000}, {0x001f29, 0x000399, 0x000000}, {0x001f21, 0x0003b9, 0x000000}}},
-   {0x001f9a, 0, {{0x001f92, 0x000000, 0x000000}, {0x001f9a, 0x000000, 0x000000}, {0x001f2a, 0x000399, 0x000000}, {0x001f22, 0x0003b9, 0x000000}}},
-   {0x001f9b, 0, {{0x001f93, 0x000000, 0x000000}, {0x001f9b, 0x000000, 0x000000}, {0x001f2b, 0x000399, 0x000000}, {0x001f23, 0x0003b9, 0x000000}}},
-   {0x001f9c, 0, {{0x001f94, 0x000000, 0x000000}, {0x001f9c, 0x000000, 0x000000}, {0x001f2c, 0x000399, 0x000000}, {0x001f24, 0x0003b9, 0x000000}}},
-   {0x001f9d, 0, {{0x001f95, 0x000000, 0x000000}, {0x001f9d, 0x000000, 0x000000}, {0x001f2d, 0x000399, 0x000000}, {0x001f25, 0x0003b9, 0x000000}}},
-   {0x001f9e, 0, {{0x001f96, 0x000000, 0x000000}, {0x001f9e, 0x000000, 0x000000}, {0x001f2e, 0x000399, 0x000000}, {0x001f26, 0x0003b9, 0x000000}}},
-   {0x001f9f, 0, {{0x001f97, 0x000000, 0x000000}, {0x001f9f, 0x000000, 0x000000}, {0x001f2f, 0x000399, 0x000000}, {0x001f27, 0x0003b9, 0x000000}}},
-   {0x001fa0, 0, {{0x001fa0, 0x000000, 0x000000}, {0x001fa8, 0x000000, 0x000000}, {0x001f68, 0x000399, 0x000000}, {0x001f60, 0x0003b9, 0x000000}}},
-   {0x001fa1, 0, {{0x001fa1, 0x000000, 0x000000}, {0x001fa9, 0x000000, 0x000000}, {0x001f69, 0x000399, 0x000000}, {0x001f61, 0x0003b9, 0x000000}}},
-   {0x001fa2, 0, {{0x001fa2, 0x000000, 0x000000}, {0x001faa, 0x000000, 0x000000}, {0x001f6a, 0x000399, 0x000000}, {0x001f62, 0x0003b9, 0x000000}}},
-   {0x001fa3, 0, {{0x001fa3, 0x000000, 0x000000}, {0x001fab, 0x000000, 0x000000}, {0x001f6b, 0x000399, 0x000000}, {0x001f63, 0x0003b9, 0x000000}}},
-   {0x001fa4, 0, {{0x001fa4, 0x000000, 0x000000}, {0x001fac, 0x000000, 0x000000}, {0x001f6c, 0x000399, 0x000000}, {0x001f64, 0x0003b9, 0x000000}}},
-   {0x001fa5, 0, {{0x001fa5, 0x000000, 0x000000}, {0x001fad, 0x000000, 0x000000}, {0x001f6d, 0x000399, 0x000000}, {0x001f65, 0x0003b9, 0x000000}}},
-   {0x001fa6, 0, {{0x001fa6, 0x000000, 0x000000}, {0x001fae, 0x000000, 0x000000}, {0x001f6e, 0x000399, 0x000000}, {0x001f66, 0x0003b9, 0x000000}}},
-   {0x001fa7, 0, {{0x001fa7, 0x000000, 0x000000}, {0x001faf, 0x000000, 0x000000}, {0x001f6f, 0x000399, 0x000000}, {0x001f67, 0x0003b9, 0x000000}}},
-   {0x001fa8, 0, {{0x001fa0, 0x000000, 0x000000}, {0x001fa8, 0x000000, 0x000000}, {0x001f68, 0x000399, 0x000000}, {0x001f60, 0x0003b9, 0x000000}}},
-   {0x001fa9, 0, {{0x001fa1, 0x000000, 0x000000}, {0x001fa9, 0x000000, 0x000000}, {0x001f69, 0x000399, 0x000000}, {0x001f61, 0x0003b9, 0x000000}}},
-   {0x001faa, 0, {{0x001fa2, 0x000000, 0x000000}, {0x001faa, 0x000000, 0x000000}, {0x001f6a, 0x000399, 0x000000}, {0x001f62, 0x0003b9, 0x000000}}},
-   {0x001fab, 0, {{0x001fa3, 0x000000, 0x000000}, {0x001fab, 0x000000, 0x000000}, {0x001f6b, 0x000399, 0x000000}, {0x001f63, 0x0003b9, 0x000000}}},
-   {0x001fac, 0, {{0x001fa4, 0x000000, 0x000000}, {0x001fac, 0x000000, 0x000000}, {0x001f6c, 0x000399, 0x000000}, {0x001f64, 0x0003b9, 0x000000}}},
-   {0x001fad, 0, {{0x001fa5, 0x000000, 0x000000}, {0x001fad, 0x000000, 0x000000}, {0x001f6d, 0x000399, 0x000000}, {0x001f65, 0x0003b9, 0x000000}}},
-   {0x001fae, 0, {{0x001fa6, 0x000000, 0x000000}, {0x001fae, 0x000000, 0x000000}, {0x001f6e, 0x000399, 0x000000}, {0x001f66, 0x0003b9, 0x000000}}},
-   {0x001faf, 0, {{0x001fa7, 0x000000, 0x000000}, {0x001faf, 0x000000, 0x000000}, {0x001f6f, 0x000399, 0x000000}, {0x001f67, 0x0003b9, 0x000000}}},
-   {0x001fb2, 0, {{0x001fb2, 0x000000, 0x000000}, {0x001fba, 0x000345, 0x000000}, {0x001fba, 0x000399, 0x000000}, {0x001f70, 0x0003b9, 0x000000}}},
-   {0x001fb3, 0, {{0x001fb3, 0x000000, 0x000000}, {0x001fbc, 0x000000, 0x000000}, {0x000391, 0x000399, 0x000000}, {0x0003b1, 0x0003b9, 0x000000}}},
-   {0x001fb4, 0, {{0x001fb4, 0x000000, 0x000000}, {0x000386, 0x000345, 0x000000}, {0x000386, 0x000399, 0x000000}, {0x0003ac, 0x0003b9, 0x000000}}},
-   {0x001fb6, 0, {{0x001fb6, 0x000000, 0x000000}, {0x000391, 0x000342, 0x000000}, {0x000391, 0x000342, 0x000000}, {0x0003b1, 0x000342, 0x000000}}},
-   {0x001fb7, 0, {{0x001fb7, 0x000000, 0x000000}, {0x000391, 0x000342, 0x000345}, {0x000391, 0x000342, 0x000399}, {0x0003b1, 0x000342, 0x0003b9}}},
-   {0x001fbc, 0, {{0x001fb3, 0x000000, 0x000000}, {0x001fbc, 0x000000, 0x000000}, {0x000391, 0x000399, 0x000000}, {0x0003b1, 0x0003b9, 0x000000}}},
-   {0x001fc2, 0, {{0x001fc2, 0x000000, 0x000000}, {0x001fca, 0x000345, 0x000000}, {0x001fca, 0x000399, 0x000000}, {0x001f74, 0x0003b9, 0x000000}}},
-   {0x001fc3, 0, {{0x001fc3, 0x000000, 0x000000}, {0x001fcc, 0x000000, 0x000000}, {0x000397, 0x000399, 0x000000}, {0x0003b7, 0x0003b9, 0x000000}}},
-   {0x001fc4, 0, {{0x001fc4, 0x000000, 0x000000}, {0x000389, 0x000345, 0x000000}, {0x000389, 0x000399, 0x000000}, {0x0003ae, 0x0003b9, 0x000000}}},
-   {0x001fc6, 0, {{0x001fc6, 0x000000, 0x000000}, {0x000397, 0x000342, 0x000000}, {0x000397, 0x000342, 0x000000}, {0x0003b7, 0x000342, 0x000000}}},
-   {0x001fc7, 0, {{0x001fc7, 0x000000, 0x000000}, {0x000397, 0x000342, 0x000345}, {0x000397, 0x000342, 0x000399}, {0x0003b7, 0x000342, 0x0003b9}}},
-   {0x001fcc, 0, {{0x001fc3, 0x000000, 0x000000}, {0x001fcc, 0x000000, 0x000000}, {0x000397, 0x000399, 0x000000}, {0x0003b7, 0x0003b9, 0x000000}}},
-   {0x001fd2, 0, {{0x001fd2, 0x000000, 0x000000}, {0x000399, 0x000308, 0x000300}, {0x000399, 0x000308, 0x000300}, {0x0003b9, 0x000308, 0x000300}}},
-   {0x001fd3, 0, {{0x001fd3, 0x000000, 0x000000}, {0x000399, 0x000308, 0x000301}, {0x000399, 0x000308, 0x000301}, {0x0003b9, 0x000308, 0x000301}}},
-   {0x001fd6, 0, {{0x001fd6, 0x000000, 0x000000}, {0x000399, 0x000342, 0x000000}, {0x000399, 0x000342, 0x000000}, {0x0003b9, 0x000342, 0x000000}}},
-   {0x001fd7, 0, {{0x001fd7, 0x000000, 0x000000}, {0x000399, 0x000308, 0x000342}, {0x000399, 0x000308, 0x000342}, {0x0003b9, 0x000308, 0x000342}}},
-   {0x001fe2, 0, {{0x001fe2, 0x000000, 0x000000}, {0x0003a5, 0x000308, 0x000300}, {0x0003a5, 0x000308, 0x000300}, {0x0003c5, 0x000308, 0x000300}}},
-   {0x001fe3, 0, {{0x001fe3, 0x000000, 0x000000}, {0x0003a5, 0x000308, 0x000301}, {0x0003a5, 0x000308, 0x000301}, {0x0003c5, 0x000308, 0x000301}}},
-   {0x001fe4, 0, {{0x001fe4, 0x000000, 0x000000}, {0x0003a1, 0x000313, 0x000000}, {0x0003a1, 0x000313, 0x000000}, {0x0003c1, 0x000313, 0x000000}}},
-   {0x001fe6, 0, {{0x001fe6, 0x000000, 0x000000}, {0x0003a5, 0x000342, 0x000000}, {0x0003a5, 0x000342, 0x000000}, {0x0003c5, 0x000342, 0x000000}}},
-   {0x001fe7, 0, {{0x001fe7, 0x000000, 0x000000}, {0x0003a5, 0x000308, 0x000342}, {0x0003a5, 0x000308, 0x000342}, {0x0003c5, 0x000308, 0x000342}}},
-   {0x001ff2, 0, {{0x001ff2, 0x000000, 0x000000}, {0x001ffa, 0x000345, 0x000000}, {0x001ffa, 0x000399, 0x000000}, {0x001f7c, 0x0003b9, 0x000000}}},
-   {0x001ff3, 0, {{0x001ff3, 0x000000, 0x000000}, {0x001ffc, 0x000000, 0x000000}, {0x0003a9, 0x000399, 0x000000}, {0x0003c9, 0x0003b9, 0x000000}}},
-   {0x001ff4, 0, {{0x001ff4, 0x000000, 0x000000}, {0x00038f, 0x000345, 0x000000}, {0x00038f, 0x000399, 0x000000}, {0x0003ce, 0x0003b9, 0x000000}}},
-   {0x001ff6, 0, {{0x001ff6, 0x000000, 0x000000}, {0x0003a9, 0x000342, 0x000000}, {0x0003a9, 0x000342, 0x000000}, {0x0003c9, 0x000342, 0x000000}}},
-   {0x001ff7, 0, {{0x001ff7, 0x000000, 0x000000}, {0x0003a9, 0x000342, 0x000345}, {0x0003a9, 0x000342, 0x000399}, {0x0003c9, 0x000342, 0x0003b9}}},
-   {0x001ffc, 0, {{0x001ff3, 0x000000, 0x000000}, {0x001ffc, 0x000000, 0x000000}, {0x0003a9, 0x000399, 0x000000}, {0x0003c9, 0x0003b9, 0x000000}}},
-   {0x00fb00, 0, {{0x00fb00, 0x000000, 0x000000}, {0x000046, 0x000066, 0x000000}, {0x000046, 0x000046, 0x000000}, {0x000066, 0x000066, 0x000000}}},
-   {0x00fb01, 0, {{0x00fb01, 0x000000, 0x000000}, {0x000046, 0x000069, 0x000000}, {0x000046, 0x000049, 0x000000}, {0x000066, 0x000069, 0x000000}}},
-   {0x00fb02, 0, {{0x00fb02, 0x000000, 0x000000}, {0x000046, 0x00006c, 0x000000}, {0x000046, 0x00004c, 0x000000}, {0x000066, 0x00006c, 0x000000}}},
-   {0x00fb03, 0, {{0x00fb03, 0x000000, 0x000000}, {0x000046, 0x000066, 0x000069}, {0x000046, 0x000046, 0x000049}, {0x000066, 0x000066, 0x000069}}},
-   {0x00fb04, 0, {{0x00fb04, 0x000000, 0x000000}, {0x000046, 0x000066, 0x00006c}, {0x000046, 0x000046, 0x00004c}, {0x000066, 0x000066, 0x00006c}}},
-   {0x00fb05, 0, {{0x00fb05, 0x000000, 0x000000}, {0x000053, 0x000074, 0x000000}, {0x000053, 0x000054, 0x000000}, {0x000073, 0x000074, 0x000000}}},
-   {0x00fb06, 0, {{0x00fb06, 0x000000, 0x000000}, {0x000053, 0x000074, 0x000000}, {0x000053, 0x000054, 0x000000}, {0x000073, 0x000074, 0x000000}}},
-   {0x00fb13, 0, {{0x00fb13, 0x000000, 0x000000}, {0x000544, 0x000576, 0x000000}, {0x000544, 0x000546, 0x000000}, {0x000574, 0x000576, 0x000000}}},
-   {0x00fb14, 0, {{0x00fb14, 0x000000, 0x000000}, {0x000544, 0x000565, 0x000000}, {0x000544, 0x000535, 0x000000}, {0x000574, 0x000565, 0x000000}}},
-   {0x00fb15, 0, {{0x00fb15, 0x000000, 0x000000}, {0x000544, 0x00056b, 0x000000}, {0x000544, 0x00053b, 0x000000}, {0x000574, 0x00056b, 0x000000}}},
-   {0x00fb16, 0, {{0x00fb16, 0x000000, 0x000000}, {0x00054e, 0x000576, 0x000000}, {0x00054e, 0x000546, 0x000000}, {0x00057e, 0x000576, 0x000000}}},
-   {0x00fb17, 0, {{0x00fb17, 0x000000, 0x000000}, {0x000544, 0x00056d, 0x000000}, {0x000544, 0x00053d, 0x000000}, {0x000574, 0x00056d, 0x000000}}},
-   {0, 0, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}}}
+   {0, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}}},
+   {0, {[CaseLower] = {0x0000df, 0x000000, 0x000000},[CaseTitle] = {0x000053, 0x000073, 0x000000},[CaseUpper] = {0x000053, 0x000053, 0x000000},[CaseFold] = {0x000073, 0x000073, 0x000000}}},
+   {0, {[CaseLower] = {0x000069, 0x000307, 0x000000},[CaseTitle] = {0x000130, 0x000000, 0x000000},[CaseUpper] = {0x000130, 0x000000, 0x000000},[CaseFold] = {0x000069, 0x000307, 0x000000}}},
+   {0, {[CaseLower] = {0x000149, 0x000000, 0x000000},[CaseTitle] = {0x0002bc, 0x00004e, 0x000000},[CaseUpper] = {0x0002bc, 0x00004e, 0x000000},[CaseFold] = {0x0002bc, 0x00006e, 0x000000}}},
+   {0, {[CaseLower] = {0x0001f0, 0x000000, 0x000000},[CaseTitle] = {0x00004a, 0x00030c, 0x000000},[CaseUpper] = {0x00004a, 0x00030c, 0x000000},[CaseFold] = {0x00006a, 0x00030c, 0x000000}}},
+   {0, {[CaseLower] = {0x000390, 0x000000, 0x000000},[CaseTitle] = {0x000399, 0x000308, 0x000301},[CaseUpper] = {0x000399, 0x000308, 0x000301},[CaseFold] = {0x0003b9, 0x000308, 0x000301}}},
+   {PG_U_FINAL_SIGMA, {[CaseLower] = {0x0003c2, 0x000000, 0x000000},[CaseTitle] = {0x0003a3, 0x000000, 0x000000},[CaseUpper] = {0x0003a3, 0x000000, 0x000000},[CaseFold] = {0x0003c3, 0x000000, 0x000000}}},
+   {0, {[CaseLower] = {0x0003b0, 0x000000, 0x000000},[CaseTitle] = {0x0003a5, 0x000308, 0x000301},[CaseUpper] = {0x0003a5, 0x000308, 0x000301},[CaseFold] = {0x0003c5, 0x000308, 0x000301}}},
+   {0, {[CaseLower] = {0x000587, 0x000000, 0x000000},[CaseTitle] = {0x000535, 0x000582, 0x000000},[CaseUpper] = {0x000535, 0x000552, 0x000000},[CaseFold] = {0x000565, 0x000582, 0x000000}}},
+   {0, {[CaseLower] = {0x001e96, 0x000000, 0x000000},[CaseTitle] = {0x000048, 0x000331, 0x000000},[CaseUpper] = {0x000048, 0x000331, 0x000000},[CaseFold] = {0x000068, 0x000331, 0x000000}}},
+   {0, {[CaseLower] = {0x001e97, 0x000000, 0x000000},[CaseTitle] = {0x000054, 0x000308, 0x000000},[CaseUpper] = {0x000054, 0x000308, 0x000000},[CaseFold] = {0x000074, 0x000308, 0x000000}}},
+   {0, {[CaseLower] = {0x001e98, 0x000000, 0x000000},[CaseTitle] = {0x000057, 0x00030a, 0x000000},[CaseUpper] = {0x000057, 0x00030a, 0x000000},[CaseFold] = {0x000077, 0x00030a, 0x000000}}},
+   {0, {[CaseLower] = {0x001e99, 0x000000, 0x000000},[CaseTitle] = {0x000059, 0x00030a, 0x000000},[CaseUpper] = {0x000059, 0x00030a, 0x000000},[CaseFold] = {0x000079, 0x00030a, 0x000000}}},
+   {0, {[CaseLower] = {0x001e9a, 0x000000, 0x000000},[CaseTitle] = {0x000041, 0x0002be, 0x000000},[CaseUpper] = {0x000041, 0x0002be, 0x000000},[CaseFold] = {0x000061, 0x0002be, 0x000000}}},
+   {0, {[CaseLower] = {0x0000df, 0x000000, 0x000000},[CaseTitle] = {0x001e9e, 0x000000, 0x000000},[CaseUpper] = {0x001e9e, 0x000000, 0x000000},[CaseFold] = {0x000073, 0x000073, 0x000000}}},
+   {0, {[CaseLower] = {0x001f50, 0x000000, 0x000000},[CaseTitle] = {0x0003a5, 0x000313, 0x000000},[CaseUpper] = {0x0003a5, 0x000313, 0x000000},[CaseFold] = {0x0003c5, 0x000313, 0x000000}}},
+   {0, {[CaseLower] = {0x001f52, 0x000000, 0x000000},[CaseTitle] = {0x0003a5, 0x000313, 0x000300},[CaseUpper] = {0x0003a5, 0x000313, 0x000300},[CaseFold] = {0x0003c5, 0x000313, 0x000300}}},
+   {0, {[CaseLower] = {0x001f54, 0x000000, 0x000000},[CaseTitle] = {0x0003a5, 0x000313, 0x000301},[CaseUpper] = {0x0003a5, 0x000313, 0x000301},[CaseFold] = {0x0003c5, 0x000313, 0x000301}}},
+   {0, {[CaseLower] = {0x001f56, 0x000000, 0x000000},[CaseTitle] = {0x0003a5, 0x000313, 0x000342},[CaseUpper] = {0x0003a5, 0x000313, 0x000342},[CaseFold] = {0x0003c5, 0x000313, 0x000342}}},
+   {0, {[CaseLower] = {0x001f80, 0x000000, 0x000000},[CaseTitle] = {0x001f88, 0x000000, 0x000000},[CaseUpper] = {0x001f08, 0x000399, 0x000000},[CaseFold] = {0x001f00, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f81, 0x000000, 0x000000},[CaseTitle] = {0x001f89, 0x000000, 0x000000},[CaseUpper] = {0x001f09, 0x000399, 0x000000},[CaseFold] = {0x001f01, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f82, 0x000000, 0x000000},[CaseTitle] = {0x001f8a, 0x000000, 0x000000},[CaseUpper] = {0x001f0a, 0x000399, 0x000000},[CaseFold] = {0x001f02, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f83, 0x000000, 0x000000},[CaseTitle] = {0x001f8b, 0x000000, 0x000000},[CaseUpper] = {0x001f0b, 0x000399, 0x000000},[CaseFold] = {0x001f03, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f84, 0x000000, 0x000000},[CaseTitle] = {0x001f8c, 0x000000, 0x000000},[CaseUpper] = {0x001f0c, 0x000399, 0x000000},[CaseFold] = {0x001f04, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f85, 0x000000, 0x000000},[CaseTitle] = {0x001f8d, 0x000000, 0x000000},[CaseUpper] = {0x001f0d, 0x000399, 0x000000},[CaseFold] = {0x001f05, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f86, 0x000000, 0x000000},[CaseTitle] = {0x001f8e, 0x000000, 0x000000},[CaseUpper] = {0x001f0e, 0x000399, 0x000000},[CaseFold] = {0x001f06, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f87, 0x000000, 0x000000},[CaseTitle] = {0x001f8f, 0x000000, 0x000000},[CaseUpper] = {0x001f0f, 0x000399, 0x000000},[CaseFold] = {0x001f07, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f80, 0x000000, 0x000000},[CaseTitle] = {0x001f88, 0x000000, 0x000000},[CaseUpper] = {0x001f08, 0x000399, 0x000000},[CaseFold] = {0x001f00, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f81, 0x000000, 0x000000},[CaseTitle] = {0x001f89, 0x000000, 0x000000},[CaseUpper] = {0x001f09, 0x000399, 0x000000},[CaseFold] = {0x001f01, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f82, 0x000000, 0x000000},[CaseTitle] = {0x001f8a, 0x000000, 0x000000},[CaseUpper] = {0x001f0a, 0x000399, 0x000000},[CaseFold] = {0x001f02, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f83, 0x000000, 0x000000},[CaseTitle] = {0x001f8b, 0x000000, 0x000000},[CaseUpper] = {0x001f0b, 0x000399, 0x000000},[CaseFold] = {0x001f03, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f84, 0x000000, 0x000000},[CaseTitle] = {0x001f8c, 0x000000, 0x000000},[CaseUpper] = {0x001f0c, 0x000399, 0x000000},[CaseFold] = {0x001f04, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f85, 0x000000, 0x000000},[CaseTitle] = {0x001f8d, 0x000000, 0x000000},[CaseUpper] = {0x001f0d, 0x000399, 0x000000},[CaseFold] = {0x001f05, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f86, 0x000000, 0x000000},[CaseTitle] = {0x001f8e, 0x000000, 0x000000},[CaseUpper] = {0x001f0e, 0x000399, 0x000000},[CaseFold] = {0x001f06, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f87, 0x000000, 0x000000},[CaseTitle] = {0x001f8f, 0x000000, 0x000000},[CaseUpper] = {0x001f0f, 0x000399, 0x000000},[CaseFold] = {0x001f07, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f90, 0x000000, 0x000000},[CaseTitle] = {0x001f98, 0x000000, 0x000000},[CaseUpper] = {0x001f28, 0x000399, 0x000000},[CaseFold] = {0x001f20, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f91, 0x000000, 0x000000},[CaseTitle] = {0x001f99, 0x000000, 0x000000},[CaseUpper] = {0x001f29, 0x000399, 0x000000},[CaseFold] = {0x001f21, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f92, 0x000000, 0x000000},[CaseTitle] = {0x001f9a, 0x000000, 0x000000},[CaseUpper] = {0x001f2a, 0x000399, 0x000000},[CaseFold] = {0x001f22, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f93, 0x000000, 0x000000},[CaseTitle] = {0x001f9b, 0x000000, 0x000000},[CaseUpper] = {0x001f2b, 0x000399, 0x000000},[CaseFold] = {0x001f23, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f94, 0x000000, 0x000000},[CaseTitle] = {0x001f9c, 0x000000, 0x000000},[CaseUpper] = {0x001f2c, 0x000399, 0x000000},[CaseFold] = {0x001f24, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f95, 0x000000, 0x000000},[CaseTitle] = {0x001f9d, 0x000000, 0x000000},[CaseUpper] = {0x001f2d, 0x000399, 0x000000},[CaseFold] = {0x001f25, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f96, 0x000000, 0x000000},[CaseTitle] = {0x001f9e, 0x000000, 0x000000},[CaseUpper] = {0x001f2e, 0x000399, 0x000000},[CaseFold] = {0x001f26, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f97, 0x000000, 0x000000},[CaseTitle] = {0x001f9f, 0x000000, 0x000000},[CaseUpper] = {0x001f2f, 0x000399, 0x000000},[CaseFold] = {0x001f27, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f90, 0x000000, 0x000000},[CaseTitle] = {0x001f98, 0x000000, 0x000000},[CaseUpper] = {0x001f28, 0x000399, 0x000000},[CaseFold] = {0x001f20, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f91, 0x000000, 0x000000},[CaseTitle] = {0x001f99, 0x000000, 0x000000},[CaseUpper] = {0x001f29, 0x000399, 0x000000},[CaseFold] = {0x001f21, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f92, 0x000000, 0x000000},[CaseTitle] = {0x001f9a, 0x000000, 0x000000},[CaseUpper] = {0x001f2a, 0x000399, 0x000000},[CaseFold] = {0x001f22, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f93, 0x000000, 0x000000},[CaseTitle] = {0x001f9b, 0x000000, 0x000000},[CaseUpper] = {0x001f2b, 0x000399, 0x000000},[CaseFold] = {0x001f23, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f94, 0x000000, 0x000000},[CaseTitle] = {0x001f9c, 0x000000, 0x000000},[CaseUpper] = {0x001f2c, 0x000399, 0x000000},[CaseFold] = {0x001f24, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f95, 0x000000, 0x000000},[CaseTitle] = {0x001f9d, 0x000000, 0x000000},[CaseUpper] = {0x001f2d, 0x000399, 0x000000},[CaseFold] = {0x001f25, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f96, 0x000000, 0x000000},[CaseTitle] = {0x001f9e, 0x000000, 0x000000},[CaseUpper] = {0x001f2e, 0x000399, 0x000000},[CaseFold] = {0x001f26, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001f97, 0x000000, 0x000000},[CaseTitle] = {0x001f9f, 0x000000, 0x000000},[CaseUpper] = {0x001f2f, 0x000399, 0x000000},[CaseFold] = {0x001f27, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fa0, 0x000000, 0x000000},[CaseTitle] = {0x001fa8, 0x000000, 0x000000},[CaseUpper] = {0x001f68, 0x000399, 0x000000},[CaseFold] = {0x001f60, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fa1, 0x000000, 0x000000},[CaseTitle] = {0x001fa9, 0x000000, 0x000000},[CaseUpper] = {0x001f69, 0x000399, 0x000000},[CaseFold] = {0x001f61, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fa2, 0x000000, 0x000000},[CaseTitle] = {0x001faa, 0x000000, 0x000000},[CaseUpper] = {0x001f6a, 0x000399, 0x000000},[CaseFold] = {0x001f62, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fa3, 0x000000, 0x000000},[CaseTitle] = {0x001fab, 0x000000, 0x000000},[CaseUpper] = {0x001f6b, 0x000399, 0x000000},[CaseFold] = {0x001f63, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fa4, 0x000000, 0x000000},[CaseTitle] = {0x001fac, 0x000000, 0x000000},[CaseUpper] = {0x001f6c, 0x000399, 0x000000},[CaseFold] = {0x001f64, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fa5, 0x000000, 0x000000},[CaseTitle] = {0x001fad, 0x000000, 0x000000},[CaseUpper] = {0x001f6d, 0x000399, 0x000000},[CaseFold] = {0x001f65, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fa6, 0x000000, 0x000000},[CaseTitle] = {0x001fae, 0x000000, 0x000000},[CaseUpper] = {0x001f6e, 0x000399, 0x000000},[CaseFold] = {0x001f66, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fa7, 0x000000, 0x000000},[CaseTitle] = {0x001faf, 0x000000, 0x000000},[CaseUpper] = {0x001f6f, 0x000399, 0x000000},[CaseFold] = {0x001f67, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fa0, 0x000000, 0x000000},[CaseTitle] = {0x001fa8, 0x000000, 0x000000},[CaseUpper] = {0x001f68, 0x000399, 0x000000},[CaseFold] = {0x001f60, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fa1, 0x000000, 0x000000},[CaseTitle] = {0x001fa9, 0x000000, 0x000000},[CaseUpper] = {0x001f69, 0x000399, 0x000000},[CaseFold] = {0x001f61, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fa2, 0x000000, 0x000000},[CaseTitle] = {0x001faa, 0x000000, 0x000000},[CaseUpper] = {0x001f6a, 0x000399, 0x000000},[CaseFold] = {0x001f62, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fa3, 0x000000, 0x000000},[CaseTitle] = {0x001fab, 0x000000, 0x000000},[CaseUpper] = {0x001f6b, 0x000399, 0x000000},[CaseFold] = {0x001f63, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fa4, 0x000000, 0x000000},[CaseTitle] = {0x001fac, 0x000000, 0x000000},[CaseUpper] = {0x001f6c, 0x000399, 0x000000},[CaseFold] = {0x001f64, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fa5, 0x000000, 0x000000},[CaseTitle] = {0x001fad, 0x000000, 0x000000},[CaseUpper] = {0x001f6d, 0x000399, 0x000000},[CaseFold] = {0x001f65, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fa6, 0x000000, 0x000000},[CaseTitle] = {0x001fae, 0x000000, 0x000000},[CaseUpper] = {0x001f6e, 0x000399, 0x000000},[CaseFold] = {0x001f66, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fa7, 0x000000, 0x000000},[CaseTitle] = {0x001faf, 0x000000, 0x000000},[CaseUpper] = {0x001f6f, 0x000399, 0x000000},[CaseFold] = {0x001f67, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fb2, 0x000000, 0x000000},[CaseTitle] = {0x001fba, 0x000345, 0x000000},[CaseUpper] = {0x001fba, 0x000399, 0x000000},[CaseFold] = {0x001f70, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fb3, 0x000000, 0x000000},[CaseTitle] = {0x001fbc, 0x000000, 0x000000},[CaseUpper] = {0x000391, 0x000399, 0x000000},[CaseFold] = {0x0003b1, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fb4, 0x000000, 0x000000},[CaseTitle] = {0x000386, 0x000345, 0x000000},[CaseUpper] = {0x000386, 0x000399, 0x000000},[CaseFold] = {0x0003ac, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fb6, 0x000000, 0x000000},[CaseTitle] = {0x000391, 0x000342, 0x000000},[CaseUpper] = {0x000391, 0x000342, 0x000000},[CaseFold] = {0x0003b1, 0x000342, 0x000000}}},
+   {0, {[CaseLower] = {0x001fb7, 0x000000, 0x000000},[CaseTitle] = {0x000391, 0x000342, 0x000345},[CaseUpper] = {0x000391, 0x000342, 0x000399},[CaseFold] = {0x0003b1, 0x000342, 0x0003b9}}},
+   {0, {[CaseLower] = {0x001fb3, 0x000000, 0x000000},[CaseTitle] = {0x001fbc, 0x000000, 0x000000},[CaseUpper] = {0x000391, 0x000399, 0x000000},[CaseFold] = {0x0003b1, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fc2, 0x000000, 0x000000},[CaseTitle] = {0x001fca, 0x000345, 0x000000},[CaseUpper] = {0x001fca, 0x000399, 0x000000},[CaseFold] = {0x001f74, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fc3, 0x000000, 0x000000},[CaseTitle] = {0x001fcc, 0x000000, 0x000000},[CaseUpper] = {0x000397, 0x000399, 0x000000},[CaseFold] = {0x0003b7, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fc4, 0x000000, 0x000000},[CaseTitle] = {0x000389, 0x000345, 0x000000},[CaseUpper] = {0x000389, 0x000399, 0x000000},[CaseFold] = {0x0003ae, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fc6, 0x000000, 0x000000},[CaseTitle] = {0x000397, 0x000342, 0x000000},[CaseUpper] = {0x000397, 0x000342, 0x000000},[CaseFold] = {0x0003b7, 0x000342, 0x000000}}},
+   {0, {[CaseLower] = {0x001fc7, 0x000000, 0x000000},[CaseTitle] = {0x000397, 0x000342, 0x000345},[CaseUpper] = {0x000397, 0x000342, 0x000399},[CaseFold] = {0x0003b7, 0x000342, 0x0003b9}}},
+   {0, {[CaseLower] = {0x001fc3, 0x000000, 0x000000},[CaseTitle] = {0x001fcc, 0x000000, 0x000000},[CaseUpper] = {0x000397, 0x000399, 0x000000},[CaseFold] = {0x0003b7, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001fd2, 0x000000, 0x000000},[CaseTitle] = {0x000399, 0x000308, 0x000300},[CaseUpper] = {0x000399, 0x000308, 0x000300},[CaseFold] = {0x0003b9, 0x000308, 0x000300}}},
+   {0, {[CaseLower] = {0x001fd3, 0x000000, 0x000000},[CaseTitle] = {0x000399, 0x000308, 0x000301},[CaseUpper] = {0x000399, 0x000308, 0x000301},[CaseFold] = {0x0003b9, 0x000308, 0x000301}}},
+   {0, {[CaseLower] = {0x001fd6, 0x000000, 0x000000},[CaseTitle] = {0x000399, 0x000342, 0x000000},[CaseUpper] = {0x000399, 0x000342, 0x000000},[CaseFold] = {0x0003b9, 0x000342, 0x000000}}},
+   {0, {[CaseLower] = {0x001fd7, 0x000000, 0x000000},[CaseTitle] = {0x000399, 0x000308, 0x000342},[CaseUpper] = {0x000399, 0x000308, 0x000342},[CaseFold] = {0x0003b9, 0x000308, 0x000342}}},
+   {0, {[CaseLower] = {0x001fe2, 0x000000, 0x000000},[CaseTitle] = {0x0003a5, 0x000308, 0x000300},[CaseUpper] = {0x0003a5, 0x000308, 0x000300},[CaseFold] = {0x0003c5, 0x000308, 0x000300}}},
+   {0, {[CaseLower] = {0x001fe3, 0x000000, 0x000000},[CaseTitle] = {0x0003a5, 0x000308, 0x000301},[CaseUpper] = {0x0003a5, 0x000308, 0x000301},[CaseFold] = {0x0003c5, 0x000308, 0x000301}}},
+   {0, {[CaseLower] = {0x001fe4, 0x000000, 0x000000},[CaseTitle] = {0x0003a1, 0x000313, 0x000000},[CaseUpper] = {0x0003a1, 0x000313, 0x000000},[CaseFold] = {0x0003c1, 0x000313, 0x000000}}},
+   {0, {[CaseLower] = {0x001fe6, 0x000000, 0x000000},[CaseTitle] = {0x0003a5, 0x000342, 0x000000},[CaseUpper] = {0x0003a5, 0x000342, 0x000000},[CaseFold] = {0x0003c5, 0x000342, 0x000000}}},
+   {0, {[CaseLower] = {0x001fe7, 0x000000, 0x000000},[CaseTitle] = {0x0003a5, 0x000308, 0x000342},[CaseUpper] = {0x0003a5, 0x000308, 0x000342},[CaseFold] = {0x0003c5, 0x000308, 0x000342}}},
+   {0, {[CaseLower] = {0x001ff2, 0x000000, 0x000000},[CaseTitle] = {0x001ffa, 0x000345, 0x000000},[CaseUpper] = {0x001ffa, 0x000399, 0x000000},[CaseFold] = {0x001f7c, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001ff3, 0x000000, 0x000000},[CaseTitle] = {0x001ffc, 0x000000, 0x000000},[CaseUpper] = {0x0003a9, 0x000399, 0x000000},[CaseFold] = {0x0003c9, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001ff4, 0x000000, 0x000000},[CaseTitle] = {0x00038f, 0x000345, 0x000000},[CaseUpper] = {0x00038f, 0x000399, 0x000000},[CaseFold] = {0x0003ce, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x001ff6, 0x000000, 0x000000},[CaseTitle] = {0x0003a9, 0x000342, 0x000000},[CaseUpper] = {0x0003a9, 0x000342, 0x000000},[CaseFold] = {0x0003c9, 0x000342, 0x000000}}},
+   {0, {[CaseLower] = {0x001ff7, 0x000000, 0x000000},[CaseTitle] = {0x0003a9, 0x000342, 0x000345},[CaseUpper] = {0x0003a9, 0x000342, 0x000399},[CaseFold] = {0x0003c9, 0x000342, 0x0003b9}}},
+   {0, {[CaseLower] = {0x001ff3, 0x000000, 0x000000},[CaseTitle] = {0x001ffc, 0x000000, 0x000000},[CaseUpper] = {0x0003a9, 0x000399, 0x000000},[CaseFold] = {0x0003c9, 0x0003b9, 0x000000}}},
+   {0, {[CaseLower] = {0x00fb00, 0x000000, 0x000000},[CaseTitle] = {0x000046, 0x000066, 0x000000},[CaseUpper] = {0x000046, 0x000046, 0x000000},[CaseFold] = {0x000066, 0x000066, 0x000000}}},
+   {0, {[CaseLower] = {0x00fb01, 0x000000, 0x000000},[CaseTitle] = {0x000046, 0x000069, 0x000000},[CaseUpper] = {0x000046, 0x000049, 0x000000},[CaseFold] = {0x000066, 0x000069, 0x000000}}},
+   {0, {[CaseLower] = {0x00fb02, 0x000000, 0x000000},[CaseTitle] = {0x000046, 0x00006c, 0x000000},[CaseUpper] = {0x000046, 0x00004c, 0x000000},[CaseFold] = {0x000066, 0x00006c, 0x000000}}},
+   {0, {[CaseLower] = {0x00fb03, 0x000000, 0x000000},[CaseTitle] = {0x000046, 0x000066, 0x000069},[CaseUpper] = {0x000046, 0x000046, 0x000049},[CaseFold] = {0x000066, 0x000066, 0x000069}}},
+   {0, {[CaseLower] = {0x00fb04, 0x000000, 0x000000},[CaseTitle] = {0x000046, 0x000066, 0x00006c},[CaseUpper] = {0x000046, 0x000046, 0x00004c},[CaseFold] = {0x000066, 0x000066, 0x00006c}}},
+   {0, {[CaseLower] = {0x00fb05, 0x000000, 0x000000},[CaseTitle] = {0x000053, 0x000074, 0x000000},[CaseUpper] = {0x000053, 0x000054, 0x000000},[CaseFold] = {0x000073, 0x000074, 0x000000}}},
+   {0, {[CaseLower] = {0x00fb06, 0x000000, 0x000000},[CaseTitle] = {0x000053, 0x000074, 0x000000},[CaseUpper] = {0x000053, 0x000054, 0x000000},[CaseFold] = {0x000073, 0x000074, 0x000000}}},
+   {0, {[CaseLower] = {0x00fb13, 0x000000, 0x000000},[CaseTitle] = {0x000544, 0x000576, 0x000000},[CaseUpper] = {0x000544, 0x000546, 0x000000},[CaseFold] = {0x000574, 0x000576, 0x000000}}},
+   {0, {[CaseLower] = {0x00fb14, 0x000000, 0x000000},[CaseTitle] = {0x000544, 0x000565, 0x000000},[CaseUpper] = {0x000544, 0x000535, 0x000000},[CaseFold] = {0x000574, 0x000565, 0x000000}}},
+   {0, {[CaseLower] = {0x00fb15, 0x000000, 0x000000},[CaseTitle] = {0x000544, 0x00056b, 0x000000},[CaseUpper] = {0x000544, 0x00053b, 0x000000},[CaseFold] = {0x000574, 0x00056b, 0x000000}}},
+   {0, {[CaseLower] = {0x00fb16, 0x000000, 0x000000},[CaseTitle] = {0x00054e, 0x000576, 0x000000},[CaseUpper] = {0x00054e, 0x000546, 0x000000},[CaseFold] = {0x00057e, 0x000576, 0x000000}}},
+   {0, {[CaseLower] = {0x00fb17, 0x000000, 0x000000},[CaseTitle] = {0x000544, 0x00056d, 0x000000},[CaseUpper] = {0x000544, 0x00053d, 0x000000},[CaseFold] = {0x000574, 0x00056d, 0x000000}}},
+};
+
+/*
+ * The entry case_map_lower[case_index(codepoint)] is the mapping for the
+ * given codepoint.
+ */
+static const pg_wchar case_map_lower[1677] =
+{
+   0x000000,                   /* reserved */
+   0x000000,                   /* U+000000 */
+   0x000001,                   /* U+000001 */
+   0x000002,                   /* U+000002 */
+   0x000003,                   /* U+000003 */
+   0x000004,                   /* U+000004 */
+   0x000005,                   /* U+000005 */
+   0x000006,                   /* U+000006 */
+   0x000007,                   /* U+000007 */
+   0x000008,                   /* U+000008 */
+   0x000009,                   /* U+000009 */
+   0x00000a,                   /* U+00000a */
+   0x00000b,                   /* U+00000b */
+   0x00000c,                   /* U+00000c */
+   0x00000d,                   /* U+00000d */
+   0x00000e,                   /* U+00000e */
+   0x00000f,                   /* U+00000f */
+   0x000010,                   /* U+000010 */
+   0x000011,                   /* U+000011 */
+   0x000012,                   /* U+000012 */
+   0x000013,                   /* U+000013 */
+   0x000014,                   /* U+000014 */
+   0x000015,                   /* U+000015 */
+   0x000016,                   /* U+000016 */
+   0x000017,                   /* U+000017 */
+   0x000018,                   /* U+000018 */
+   0x000019,                   /* U+000019 */
+   0x00001a,                   /* U+00001a */
+   0x00001b,                   /* U+00001b */
+   0x00001c,                   /* U+00001c */
+   0x00001d,                   /* U+00001d */
+   0x00001e,                   /* U+00001e */
+   0x00001f,                   /* U+00001f */
+   0x000020,                   /* U+000020 */
+   0x000021,                   /* U+000021 */
+   0x000022,                   /* U+000022 */
+   0x000023,                   /* U+000023 */
+   0x000024,                   /* U+000024 */
+   0x000025,                   /* U+000025 */
+   0x000026,                   /* U+000026 */
+   0x000027,                   /* U+000027 */
+   0x000028,                   /* U+000028 */
+   0x000029,                   /* U+000029 */
+   0x00002a,                   /* U+00002a */
+   0x00002b,                   /* U+00002b */
+   0x00002c,                   /* U+00002c */
+   0x00002d,                   /* U+00002d */
+   0x00002e,                   /* U+00002e */
+   0x00002f,                   /* U+00002f */
+   0x000030,                   /* U+000030 */
+   0x000031,                   /* U+000031 */
+   0x000032,                   /* U+000032 */
+   0x000033,                   /* U+000033 */
+   0x000034,                   /* U+000034 */
+   0x000035,                   /* U+000035 */
+   0x000036,                   /* U+000036 */
+   0x000037,                   /* U+000037 */
+   0x000038,                   /* U+000038 */
+   0x000039,                   /* U+000039 */
+   0x00003a,                   /* U+00003a */
+   0x00003b,                   /* U+00003b */
+   0x00003c,                   /* U+00003c */
+   0x00003d,                   /* U+00003d */
+   0x00003e,                   /* U+00003e */
+   0x00003f,                   /* U+00003f */
+   0x000040,                   /* U+000040 */
+   0x000061,                   /* U+000041 */
+   0x000062,                   /* U+000042 */
+   0x000063,                   /* U+000043 */
+   0x000064,                   /* U+000044 */
+   0x000065,                   /* U+000045 */
+   0x000066,                   /* U+000046 */
+   0x000067,                   /* U+000047 */
+   0x000068,                   /* U+000048 */
+   0x000069,                   /* U+000049 */
+   0x00006a,                   /* U+00004a */
+   0x00006b,                   /* U+00004b */
+   0x00006c,                   /* U+00004c */
+   0x00006d,                   /* U+00004d */
+   0x00006e,                   /* U+00004e */
+   0x00006f,                   /* U+00004f */
+   0x000070,                   /* U+000050 */
+   0x000071,                   /* U+000051 */
+   0x000072,                   /* U+000052 */
+   0x000073,                   /* U+000053 */
+   0x000074,                   /* U+000054 */
+   0x000075,                   /* U+000055 */
+   0x000076,                   /* U+000056 */
+   0x000077,                   /* U+000057 */
+   0x000078,                   /* U+000058 */
+   0x000079,                   /* U+000059 */
+   0x00007a,                   /* U+00005a */
+   0x00005b,                   /* U+00005b */
+   0x00005c,                   /* U+00005c */
+   0x00005d,                   /* U+00005d */
+   0x00005e,                   /* U+00005e */
+   0x00005f,                   /* U+00005f */
+   0x000060,                   /* U+000060 */
+   0x000061,                   /* U+000061 */
+   0x000062,                   /* U+000062 */
+   0x000063,                   /* U+000063 */
+   0x000064,                   /* U+000064 */
+   0x000065,                   /* U+000065 */
+   0x000066,                   /* U+000066 */
+   0x000067,                   /* U+000067 */
+   0x000068,                   /* U+000068 */
+   0x000069,                   /* U+000069 */
+   0x00006a,                   /* U+00006a */
+   0x00006b,                   /* U+00006b */
+   0x00006c,                   /* U+00006c */
+   0x00006d,                   /* U+00006d */
+   0x00006e,                   /* U+00006e */
+   0x00006f,                   /* U+00006f */
+   0x000070,                   /* U+000070 */
+   0x000071,                   /* U+000071 */
+   0x000072,                   /* U+000072 */
+   0x000073,                   /* U+000073 */
+   0x000074,                   /* U+000074 */
+   0x000075,                   /* U+000075 */
+   0x000076,                   /* U+000076 */
+   0x000077,                   /* U+000077 */
+   0x000078,                   /* U+000078 */
+   0x000079,                   /* U+000079 */
+   0x00007a,                   /* U+00007a */
+   0x00007b,                   /* U+00007b */
+   0x00007c,                   /* U+00007c */
+   0x00007d,                   /* U+00007d */
+   0x00007e,                   /* U+00007e */
+   0x00007f,                   /* U+00007f */
+   0x0000b5,                   /* U+0000b5 */
+   0x0000e0,                   /* U+0000c0 */
+   0x0000e1,                   /* U+0000c1 */
+   0x0000e2,                   /* U+0000c2 */
+   0x0000e3,                   /* U+0000c3 */
+   0x0000e4,                   /* U+0000c4 */
+   0x0000e5,                   /* U+0000c5 */
+   0x0000e6,                   /* U+0000c6 */
+   0x0000e7,                   /* U+0000c7 */
+   0x0000e8,                   /* U+0000c8 */
+   0x0000e9,                   /* U+0000c9 */
+   0x0000ea,                   /* U+0000ca */
+   0x0000eb,                   /* U+0000cb */
+   0x0000ec,                   /* U+0000cc */
+   0x0000ed,                   /* U+0000cd */
+   0x0000ee,                   /* U+0000ce */
+   0x0000ef,                   /* U+0000cf */
+   0x0000f0,                   /* U+0000d0 */
+   0x0000f1,                   /* U+0000d1 */
+   0x0000f2,                   /* U+0000d2 */
+   0x0000f3,                   /* U+0000d3 */
+   0x0000f4,                   /* U+0000d4 */
+   0x0000f5,                   /* U+0000d5 */
+   0x0000f6,                   /* U+0000d6 */
+   0x0000f8,                   /* U+0000d8 */
+   0x0000f9,                   /* U+0000d9 */
+   0x0000fa,                   /* U+0000da */
+   0x0000fb,                   /* U+0000db */
+   0x0000fc,                   /* U+0000dc */
+   0x0000fd,                   /* U+0000dd */
+   0x0000fe,                   /* U+0000de */
+   0x0000df,                   /* U+0000df */
+   0x0000ff,                   /* U+0000ff */
+   0x000101,                   /* U+000100 */
+   0x000103,                   /* U+000102 */
+   0x000105,                   /* U+000104 */
+   0x000107,                   /* U+000106 */
+   0x000109,                   /* U+000108 */
+   0x00010b,                   /* U+00010a */
+   0x00010d,                   /* U+00010c */
+   0x00010f,                   /* U+00010e */
+   0x000111,                   /* U+000110 */
+   0x000113,                   /* U+000112 */
+   0x000115,                   /* U+000114 */
+   0x000117,                   /* U+000116 */
+   0x000119,                   /* U+000118 */
+   0x00011b,                   /* U+00011a */
+   0x00011d,                   /* U+00011c */
+   0x00011f,                   /* U+00011e */
+   0x000121,                   /* U+000120 */
+   0x000123,                   /* U+000122 */
+   0x000125,                   /* U+000124 */
+   0x000127,                   /* U+000126 */
+   0x000129,                   /* U+000128 */
+   0x00012b,                   /* U+00012a */
+   0x00012d,                   /* U+00012c */
+   0x00012f,                   /* U+00012e */
+   0x000069,                   /* U+000130 */
+   0x000131,                   /* U+000131 */
+   0x000133,                   /* U+000132 */
+   0x000135,                   /* U+000134 */
+   0x000137,                   /* U+000136 */
+   0x00013a,                   /* U+000139 */
+   0x00013c,                   /* U+00013b */
+   0x00013e,                   /* U+00013d */
+   0x000140,                   /* U+00013f */
+   0x000142,                   /* U+000141 */
+   0x000144,                   /* U+000143 */
+   0x000146,                   /* U+000145 */
+   0x000148,                   /* U+000147 */
+   0x000149,                   /* U+000149 */
+   0x00014b,                   /* U+00014a */
+   0x00014d,                   /* U+00014c */
+   0x00014f,                   /* U+00014e */
+   0x000151,                   /* U+000150 */
+   0x000153,                   /* U+000152 */
+   0x000155,                   /* U+000154 */
+   0x000157,                   /* U+000156 */
+   0x000159,                   /* U+000158 */
+   0x00015b,                   /* U+00015a */
+   0x00015d,                   /* U+00015c */
+   0x00015f,                   /* U+00015e */
+   0x000161,                   /* U+000160 */
+   0x000163,                   /* U+000162 */
+   0x000165,                   /* U+000164 */
+   0x000167,                   /* U+000166 */
+   0x000169,                   /* U+000168 */
+   0x00016b,                   /* U+00016a */
+   0x00016d,                   /* U+00016c */
+   0x00016f,                   /* U+00016e */
+   0x000171,                   /* U+000170 */
+   0x000173,                   /* U+000172 */
+   0x000175,                   /* U+000174 */
+   0x000177,                   /* U+000176 */
+   0x00017a,                   /* U+000179 */
+   0x00017c,                   /* U+00017b */
+   0x00017e,                   /* U+00017d */
+   0x00017f,                   /* U+00017f */
+   0x000180,                   /* U+000180 */
+   0x000253,                   /* U+000181 */
+   0x000183,                   /* U+000182 */
+   0x000185,                   /* U+000184 */
+   0x000254,                   /* U+000186 */
+   0x000188,                   /* U+000187 */
+   0x000256,                   /* U+000189 */
+   0x000257,                   /* U+00018a */
+   0x00018c,                   /* U+00018b */
+   0x0001dd,                   /* U+00018e */
+   0x000259,                   /* U+00018f */
+   0x00025b,                   /* U+000190 */
+   0x000192,                   /* U+000191 */
+   0x000260,                   /* U+000193 */
+   0x000263,                   /* U+000194 */
+   0x000195,                   /* U+000195 */
+   0x000269,                   /* U+000196 */
+   0x000268,                   /* U+000197 */
+   0x000199,                   /* U+000198 */
+   0x00019a,                   /* U+00019a */
+   0x00026f,                   /* U+00019c */
+   0x000272,                   /* U+00019d */
+   0x00019e,                   /* U+00019e */
+   0x000275,                   /* U+00019f */
+   0x0001a1,                   /* U+0001a0 */
+   0x0001a3,                   /* U+0001a2 */
+   0x0001a5,                   /* U+0001a4 */
+   0x000280,                   /* U+0001a6 */
+   0x0001a8,                   /* U+0001a7 */
+   0x000283,                   /* U+0001a9 */
+   0x0001ad,                   /* U+0001ac */
+   0x000288,                   /* U+0001ae */
+   0x0001b0,                   /* U+0001af */
+   0x00028a,                   /* U+0001b1 */
+   0x00028b,                   /* U+0001b2 */
+   0x0001b4,                   /* U+0001b3 */
+   0x0001b6,                   /* U+0001b5 */
+   0x000292,                   /* U+0001b7 */
+   0x0001b9,                   /* U+0001b8 */
+   0x0001bd,                   /* U+0001bc */
+   0x0001bf,                   /* U+0001bf */
+   0x0001c6,                   /* U+0001c4 */
+   0x0001c9,                   /* U+0001c7 */
+   0x0001cc,                   /* U+0001ca */
+   0x0001ce,                   /* U+0001cd */
+   0x0001d0,                   /* U+0001cf */
+   0x0001d2,                   /* U+0001d1 */
+   0x0001d4,                   /* U+0001d3 */
+   0x0001d6,                   /* U+0001d5 */
+   0x0001d8,                   /* U+0001d7 */
+   0x0001da,                   /* U+0001d9 */
+   0x0001dc,                   /* U+0001db */
+   0x0001df,                   /* U+0001de */
+   0x0001e1,                   /* U+0001e0 */
+   0x0001e3,                   /* U+0001e2 */
+   0x0001e5,                   /* U+0001e4 */
+   0x0001e7,                   /* U+0001e6 */
+   0x0001e9,                   /* U+0001e8 */
+   0x0001eb,                   /* U+0001ea */
+   0x0001ed,                   /* U+0001ec */
+   0x0001ef,                   /* U+0001ee */
+   0x0001f0,                   /* U+0001f0 */
+   0x0001f3,                   /* U+0001f1 */
+   0x0001f5,                   /* U+0001f4 */
+   0x0001f9,                   /* U+0001f8 */
+   0x0001fb,                   /* U+0001fa */
+   0x0001fd,                   /* U+0001fc */
+   0x0001ff,                   /* U+0001fe */
+   0x000201,                   /* U+000200 */
+   0x000203,                   /* U+000202 */
+   0x000205,                   /* U+000204 */
+   0x000207,                   /* U+000206 */
+   0x000209,                   /* U+000208 */
+   0x00020b,                   /* U+00020a */
+   0x00020d,                   /* U+00020c */
+   0x00020f,                   /* U+00020e */
+   0x000211,                   /* U+000210 */
+   0x000213,                   /* U+000212 */
+   0x000215,                   /* U+000214 */
+   0x000217,                   /* U+000216 */
+   0x000219,                   /* U+000218 */
+   0x00021b,                   /* U+00021a */
+   0x00021d,                   /* U+00021c */
+   0x00021f,                   /* U+00021e */
+   0x000223,                   /* U+000222 */
+   0x000225,                   /* U+000224 */
+   0x000227,                   /* U+000226 */
+   0x000229,                   /* U+000228 */
+   0x00022b,                   /* U+00022a */
+   0x00022d,                   /* U+00022c */
+   0x00022f,                   /* U+00022e */
+   0x000231,                   /* U+000230 */
+   0x000233,                   /* U+000232 */
+   0x002c65,                   /* U+00023a */
+   0x00023c,                   /* U+00023b */
+   0x002c66,                   /* U+00023e */
+   0x00023f,                   /* U+00023f */
+   0x000240,                   /* U+000240 */
+   0x000242,                   /* U+000241 */
+   0x000289,                   /* U+000244 */
+   0x00028c,                   /* U+000245 */
+   0x000247,                   /* U+000246 */
+   0x000249,                   /* U+000248 */
+   0x00024b,                   /* U+00024a */
+   0x00024d,                   /* U+00024c */
+   0x00024f,                   /* U+00024e */
+   0x000250,                   /* U+000250 */
+   0x000251,                   /* U+000251 */
+   0x000252,                   /* U+000252 */
+   0x00025c,                   /* U+00025c */
+   0x000261,                   /* U+000261 */
+   0x000265,                   /* U+000265 */
+   0x000266,                   /* U+000266 */
+   0x00026a,                   /* U+00026a */
+   0x00026b,                   /* U+00026b */
+   0x00026c,                   /* U+00026c */
+   0x000271,                   /* U+000271 */
+   0x00027d,                   /* U+00027d */
+   0x000282,                   /* U+000282 */
+   0x000287,                   /* U+000287 */
+   0x00029d,                   /* U+00029d */
+   0x00029e,                   /* U+00029e */
+   0x000345,                   /* U+000345 */
+   0x000371,                   /* U+000370 */
+   0x000373,                   /* U+000372 */
+   0x000377,                   /* U+000376 */
+   0x00037b,                   /* U+00037b */
+   0x00037c,                   /* U+00037c */
+   0x00037d,                   /* U+00037d */
+   0x0003f3,                   /* U+00037f */
+   0x0003ac,                   /* U+000386 */
+   0x0003ad,                   /* U+000388 */
+   0x0003ae,                   /* U+000389 */
+   0x0003af,                   /* U+00038a */
+   0x0003cc,                   /* U+00038c */
+   0x0003cd,                   /* U+00038e */
+   0x0003ce,                   /* U+00038f */
+   0x000390,                   /* U+000390 */
+   0x0003b1,                   /* U+000391 */
+   0x0003b2,                   /* U+000392 */
+   0x0003b3,                   /* U+000393 */
+   0x0003b4,                   /* U+000394 */
+   0x0003b5,                   /* U+000395 */
+   0x0003b6,                   /* U+000396 */
+   0x0003b7,                   /* U+000397 */
+   0x0003b8,                   /* U+000398 */
+   0x0003b9,                   /* U+000399 */
+   0x0003ba,                   /* U+00039a */
+   0x0003bb,                   /* U+00039b */
+   0x0003bc,                   /* U+00039c */
+   0x0003bd,                   /* U+00039d */
+   0x0003be,                   /* U+00039e */
+   0x0003bf,                   /* U+00039f */
+   0x0003c0,                   /* U+0003a0 */
+   0x0003c1,                   /* U+0003a1 */
+   0x0003c3,                   /* U+0003a3 */
+   0x0003c4,                   /* U+0003a4 */
+   0x0003c5,                   /* U+0003a5 */
+   0x0003c6,                   /* U+0003a6 */
+   0x0003c7,                   /* U+0003a7 */
+   0x0003c8,                   /* U+0003a8 */
+   0x0003c9,                   /* U+0003a9 */
+   0x0003ca,                   /* U+0003aa */
+   0x0003cb,                   /* U+0003ab */
+   0x0003b0,                   /* U+0003b0 */
+   0x0003c2,                   /* U+0003c2 */
+   0x0003c3,                   /* U+0003c3 */
+   0x0003d7,                   /* U+0003cf */
+   0x0003d0,                   /* U+0003d0 */
+   0x0003d1,                   /* U+0003d1 */
+   0x0003d5,                   /* U+0003d5 */
+   0x0003d6,                   /* U+0003d6 */
+   0x0003d9,                   /* U+0003d8 */
+   0x0003db,                   /* U+0003da */
+   0x0003dd,                   /* U+0003dc */
+   0x0003df,                   /* U+0003de */
+   0x0003e1,                   /* U+0003e0 */
+   0x0003e3,                   /* U+0003e2 */
+   0x0003e5,                   /* U+0003e4 */
+   0x0003e7,                   /* U+0003e6 */
+   0x0003e9,                   /* U+0003e8 */
+   0x0003eb,                   /* U+0003ea */
+   0x0003ed,                   /* U+0003ec */
+   0x0003ef,                   /* U+0003ee */
+   0x0003f0,                   /* U+0003f0 */
+   0x0003f1,                   /* U+0003f1 */
+   0x0003f2,                   /* U+0003f2 */
+   0x0003b8,                   /* U+0003f4 */
+   0x0003f5,                   /* U+0003f5 */
+   0x0003f8,                   /* U+0003f7 */
+   0x0003fb,                   /* U+0003fa */
+   0x000450,                   /* U+000400 */
+   0x000451,                   /* U+000401 */
+   0x000452,                   /* U+000402 */
+   0x000453,                   /* U+000403 */
+   0x000454,                   /* U+000404 */
+   0x000455,                   /* U+000405 */
+   0x000456,                   /* U+000406 */
+   0x000457,                   /* U+000407 */
+   0x000458,                   /* U+000408 */
+   0x000459,                   /* U+000409 */
+   0x00045a,                   /* U+00040a */
+   0x00045b,                   /* U+00040b */
+   0x00045c,                   /* U+00040c */
+   0x00045d,                   /* U+00040d */
+   0x00045e,                   /* U+00040e */
+   0x00045f,                   /* U+00040f */
+   0x000430,                   /* U+000410 */
+   0x000431,                   /* U+000411 */
+   0x000432,                   /* U+000412 */
+   0x000433,                   /* U+000413 */
+   0x000434,                   /* U+000414 */
+   0x000435,                   /* U+000415 */
+   0x000436,                   /* U+000416 */
+   0x000437,                   /* U+000417 */
+   0x000438,                   /* U+000418 */
+   0x000439,                   /* U+000419 */
+   0x00043a,                   /* U+00041a */
+   0x00043b,                   /* U+00041b */
+   0x00043c,                   /* U+00041c */
+   0x00043d,                   /* U+00041d */
+   0x00043e,                   /* U+00041e */
+   0x00043f,                   /* U+00041f */
+   0x000440,                   /* U+000420 */
+   0x000441,                   /* U+000421 */
+   0x000442,                   /* U+000422 */
+   0x000443,                   /* U+000423 */
+   0x000444,                   /* U+000424 */
+   0x000445,                   /* U+000425 */
+   0x000446,                   /* U+000426 */
+   0x000447,                   /* U+000427 */
+   0x000448,                   /* U+000428 */
+   0x000449,                   /* U+000429 */
+   0x00044a,                   /* U+00042a */
+   0x00044b,                   /* U+00042b */
+   0x00044c,                   /* U+00042c */
+   0x00044d,                   /* U+00042d */
+   0x00044e,                   /* U+00042e */
+   0x00044f,                   /* U+00042f */
+   0x000461,                   /* U+000460 */
+   0x000463,                   /* U+000462 */
+   0x000465,                   /* U+000464 */
+   0x000467,                   /* U+000466 */
+   0x000469,                   /* U+000468 */
+   0x00046b,                   /* U+00046a */
+   0x00046d,                   /* U+00046c */
+   0x00046f,                   /* U+00046e */
+   0x000471,                   /* U+000470 */
+   0x000473,                   /* U+000472 */
+   0x000475,                   /* U+000474 */
+   0x000477,                   /* U+000476 */
+   0x000479,                   /* U+000478 */
+   0x00047b,                   /* U+00047a */
+   0x00047d,                   /* U+00047c */
+   0x00047f,                   /* U+00047e */
+   0x000481,                   /* U+000480 */
+   0x00048b,                   /* U+00048a */
+   0x00048d,                   /* U+00048c */
+   0x00048f,                   /* U+00048e */
+   0x000491,                   /* U+000490 */
+   0x000493,                   /* U+000492 */
+   0x000495,                   /* U+000494 */
+   0x000497,                   /* U+000496 */
+   0x000499,                   /* U+000498 */
+   0x00049b,                   /* U+00049a */
+   0x00049d,                   /* U+00049c */
+   0x00049f,                   /* U+00049e */
+   0x0004a1,                   /* U+0004a0 */
+   0x0004a3,                   /* U+0004a2 */
+   0x0004a5,                   /* U+0004a4 */
+   0x0004a7,                   /* U+0004a6 */
+   0x0004a9,                   /* U+0004a8 */
+   0x0004ab,                   /* U+0004aa */
+   0x0004ad,                   /* U+0004ac */
+   0x0004af,                   /* U+0004ae */
+   0x0004b1,                   /* U+0004b0 */
+   0x0004b3,                   /* U+0004b2 */
+   0x0004b5,                   /* U+0004b4 */
+   0x0004b7,                   /* U+0004b6 */
+   0x0004b9,                   /* U+0004b8 */
+   0x0004bb,                   /* U+0004ba */
+   0x0004bd,                   /* U+0004bc */
+   0x0004bf,                   /* U+0004be */
+   0x0004cf,                   /* U+0004c0 */
+   0x0004c2,                   /* U+0004c1 */
+   0x0004c4,                   /* U+0004c3 */
+   0x0004c6,                   /* U+0004c5 */
+   0x0004c8,                   /* U+0004c7 */
+   0x0004ca,                   /* U+0004c9 */
+   0x0004cc,                   /* U+0004cb */
+   0x0004ce,                   /* U+0004cd */
+   0x0004d1,                   /* U+0004d0 */
+   0x0004d3,                   /* U+0004d2 */
+   0x0004d5,                   /* U+0004d4 */
+   0x0004d7,                   /* U+0004d6 */
+   0x0004d9,                   /* U+0004d8 */
+   0x0004db,                   /* U+0004da */
+   0x0004dd,                   /* U+0004dc */
+   0x0004df,                   /* U+0004de */
+   0x0004e1,                   /* U+0004e0 */
+   0x0004e3,                   /* U+0004e2 */
+   0x0004e5,                   /* U+0004e4 */
+   0x0004e7,                   /* U+0004e6 */
+   0x0004e9,                   /* U+0004e8 */
+   0x0004eb,                   /* U+0004ea */
+   0x0004ed,                   /* U+0004ec */
+   0x0004ef,                   /* U+0004ee */
+   0x0004f1,                   /* U+0004f0 */
+   0x0004f3,                   /* U+0004f2 */
+   0x0004f5,                   /* U+0004f4 */
+   0x0004f7,                   /* U+0004f6 */
+   0x0004f9,                   /* U+0004f8 */
+   0x0004fb,                   /* U+0004fa */
+   0x0004fd,                   /* U+0004fc */
+   0x0004ff,                   /* U+0004fe */
+   0x000501,                   /* U+000500 */
+   0x000503,                   /* U+000502 */
+   0x000505,                   /* U+000504 */
+   0x000507,                   /* U+000506 */
+   0x000509,                   /* U+000508 */
+   0x00050b,                   /* U+00050a */
+   0x00050d,                   /* U+00050c */
+   0x00050f,                   /* U+00050e */
+   0x000511,                   /* U+000510 */
+   0x000513,                   /* U+000512 */
+   0x000515,                   /* U+000514 */
+   0x000517,                   /* U+000516 */
+   0x000519,                   /* U+000518 */
+   0x00051b,                   /* U+00051a */
+   0x00051d,                   /* U+00051c */
+   0x00051f,                   /* U+00051e */
+   0x000521,                   /* U+000520 */
+   0x000523,                   /* U+000522 */
+   0x000525,                   /* U+000524 */
+   0x000527,                   /* U+000526 */
+   0x000529,                   /* U+000528 */
+   0x00052b,                   /* U+00052a */
+   0x00052d,                   /* U+00052c */
+   0x00052f,                   /* U+00052e */
+   0x000561,                   /* U+000531 */
+   0x000562,                   /* U+000532 */
+   0x000563,                   /* U+000533 */
+   0x000564,                   /* U+000534 */
+   0x000565,                   /* U+000535 */
+   0x000566,                   /* U+000536 */
+   0x000567,                   /* U+000537 */
+   0x000568,                   /* U+000538 */
+   0x000569,                   /* U+000539 */
+   0x00056a,                   /* U+00053a */
+   0x00056b,                   /* U+00053b */
+   0x00056c,                   /* U+00053c */
+   0x00056d,                   /* U+00053d */
+   0x00056e,                   /* U+00053e */
+   0x00056f,                   /* U+00053f */
+   0x000570,                   /* U+000540 */
+   0x000571,                   /* U+000541 */
+   0x000572,                   /* U+000542 */
+   0x000573,                   /* U+000543 */
+   0x000574,                   /* U+000544 */
+   0x000575,                   /* U+000545 */
+   0x000576,                   /* U+000546 */
+   0x000577,                   /* U+000547 */
+   0x000578,                   /* U+000548 */
+   0x000579,                   /* U+000549 */
+   0x00057a,                   /* U+00054a */
+   0x00057b,                   /* U+00054b */
+   0x00057c,                   /* U+00054c */
+   0x00057d,                   /* U+00054d */
+   0x00057e,                   /* U+00054e */
+   0x00057f,                   /* U+00054f */
+   0x000580,                   /* U+000550 */
+   0x000581,                   /* U+000551 */
+   0x000582,                   /* U+000552 */
+   0x000583,                   /* U+000553 */
+   0x000584,                   /* U+000554 */
+   0x000585,                   /* U+000555 */
+   0x000586,                   /* U+000556 */
+   0x000587,                   /* U+000587 */
+   0x002d00,                   /* U+0010a0 */
+   0x002d01,                   /* U+0010a1 */
+   0x002d02,                   /* U+0010a2 */
+   0x002d03,                   /* U+0010a3 */
+   0x002d04,                   /* U+0010a4 */
+   0x002d05,                   /* U+0010a5 */
+   0x002d06,                   /* U+0010a6 */
+   0x002d07,                   /* U+0010a7 */
+   0x002d08,                   /* U+0010a8 */
+   0x002d09,                   /* U+0010a9 */
+   0x002d0a,                   /* U+0010aa */
+   0x002d0b,                   /* U+0010ab */
+   0x002d0c,                   /* U+0010ac */
+   0x002d0d,                   /* U+0010ad */
+   0x002d0e,                   /* U+0010ae */
+   0x002d0f,                   /* U+0010af */
+   0x002d10,                   /* U+0010b0 */
+   0x002d11,                   /* U+0010b1 */
+   0x002d12,                   /* U+0010b2 */
+   0x002d13,                   /* U+0010b3 */
+   0x002d14,                   /* U+0010b4 */
+   0x002d15,                   /* U+0010b5 */
+   0x002d16,                   /* U+0010b6 */
+   0x002d17,                   /* U+0010b7 */
+   0x002d18,                   /* U+0010b8 */
+   0x002d19,                   /* U+0010b9 */
+   0x002d1a,                   /* U+0010ba */
+   0x002d1b,                   /* U+0010bb */
+   0x002d1c,                   /* U+0010bc */
+   0x002d1d,                   /* U+0010bd */
+   0x002d1e,                   /* U+0010be */
+   0x002d1f,                   /* U+0010bf */
+   0x002d20,                   /* U+0010c0 */
+   0x002d21,                   /* U+0010c1 */
+   0x002d22,                   /* U+0010c2 */
+   0x002d23,                   /* U+0010c3 */
+   0x002d24,                   /* U+0010c4 */
+   0x002d25,                   /* U+0010c5 */
+   0x002d27,                   /* U+0010c7 */
+   0x002d2d,                   /* U+0010cd */
+   0x0010d0,                   /* U+0010d0 */
+   0x0010d1,                   /* U+0010d1 */
+   0x0010d2,                   /* U+0010d2 */
+   0x0010d3,                   /* U+0010d3 */
+   0x0010d4,                   /* U+0010d4 */
+   0x0010d5,                   /* U+0010d5 */
+   0x0010d6,                   /* U+0010d6 */
+   0x0010d7,                   /* U+0010d7 */
+   0x0010d8,                   /* U+0010d8 */
+   0x0010d9,                   /* U+0010d9 */
+   0x0010da,                   /* U+0010da */
+   0x0010db,                   /* U+0010db */
+   0x0010dc,                   /* U+0010dc */
+   0x0010dd,                   /* U+0010dd */
+   0x0010de,                   /* U+0010de */
+   0x0010df,                   /* U+0010df */
+   0x0010e0,                   /* U+0010e0 */
+   0x0010e1,                   /* U+0010e1 */
+   0x0010e2,                   /* U+0010e2 */
+   0x0010e3,                   /* U+0010e3 */
+   0x0010e4,                   /* U+0010e4 */
+   0x0010e5,                   /* U+0010e5 */
+   0x0010e6,                   /* U+0010e6 */
+   0x0010e7,                   /* U+0010e7 */
+   0x0010e8,                   /* U+0010e8 */
+   0x0010e9,                   /* U+0010e9 */
+   0x0010ea,                   /* U+0010ea */
+   0x0010eb,                   /* U+0010eb */
+   0x0010ec,                   /* U+0010ec */
+   0x0010ed,                   /* U+0010ed */
+   0x0010ee,                   /* U+0010ee */
+   0x0010ef,                   /* U+0010ef */
+   0x0010f0,                   /* U+0010f0 */
+   0x0010f1,                   /* U+0010f1 */
+   0x0010f2,                   /* U+0010f2 */
+   0x0010f3,                   /* U+0010f3 */
+   0x0010f4,                   /* U+0010f4 */
+   0x0010f5,                   /* U+0010f5 */
+   0x0010f6,                   /* U+0010f6 */
+   0x0010f7,                   /* U+0010f7 */
+   0x0010f8,                   /* U+0010f8 */
+   0x0010f9,                   /* U+0010f9 */
+   0x0010fa,                   /* U+0010fa */
+   0x0010fd,                   /* U+0010fd */
+   0x0010fe,                   /* U+0010fe */
+   0x0010ff,                   /* U+0010ff */
+   0x00ab70,                   /* U+0013a0 */
+   0x00ab71,                   /* U+0013a1 */
+   0x00ab72,                   /* U+0013a2 */
+   0x00ab73,                   /* U+0013a3 */
+   0x00ab74,                   /* U+0013a4 */
+   0x00ab75,                   /* U+0013a5 */
+   0x00ab76,                   /* U+0013a6 */
+   0x00ab77,                   /* U+0013a7 */
+   0x00ab78,                   /* U+0013a8 */
+   0x00ab79,                   /* U+0013a9 */
+   0x00ab7a,                   /* U+0013aa */
+   0x00ab7b,                   /* U+0013ab */
+   0x00ab7c,                   /* U+0013ac */
+   0x00ab7d,                   /* U+0013ad */
+   0x00ab7e,                   /* U+0013ae */
+   0x00ab7f,                   /* U+0013af */
+   0x00ab80,                   /* U+0013b0 */
+   0x00ab81,                   /* U+0013b1 */
+   0x00ab82,                   /* U+0013b2 */
+   0x00ab83,                   /* U+0013b3 */
+   0x00ab84,                   /* U+0013b4 */
+   0x00ab85,                   /* U+0013b5 */
+   0x00ab86,                   /* U+0013b6 */
+   0x00ab87,                   /* U+0013b7 */
+   0x00ab88,                   /* U+0013b8 */
+   0x00ab89,                   /* U+0013b9 */
+   0x00ab8a,                   /* U+0013ba */
+   0x00ab8b,                   /* U+0013bb */
+   0x00ab8c,                   /* U+0013bc */
+   0x00ab8d,                   /* U+0013bd */
+   0x00ab8e,                   /* U+0013be */
+   0x00ab8f,                   /* U+0013bf */
+   0x00ab90,                   /* U+0013c0 */
+   0x00ab91,                   /* U+0013c1 */
+   0x00ab92,                   /* U+0013c2 */
+   0x00ab93,                   /* U+0013c3 */
+   0x00ab94,                   /* U+0013c4 */
+   0x00ab95,                   /* U+0013c5 */
+   0x00ab96,                   /* U+0013c6 */
+   0x00ab97,                   /* U+0013c7 */
+   0x00ab98,                   /* U+0013c8 */
+   0x00ab99,                   /* U+0013c9 */
+   0x00ab9a,                   /* U+0013ca */
+   0x00ab9b,                   /* U+0013cb */
+   0x00ab9c,                   /* U+0013cc */
+   0x00ab9d,                   /* U+0013cd */
+   0x00ab9e,                   /* U+0013ce */
+   0x00ab9f,                   /* U+0013cf */
+   0x00aba0,                   /* U+0013d0 */
+   0x00aba1,                   /* U+0013d1 */
+   0x00aba2,                   /* U+0013d2 */
+   0x00aba3,                   /* U+0013d3 */
+   0x00aba4,                   /* U+0013d4 */
+   0x00aba5,                   /* U+0013d5 */
+   0x00aba6,                   /* U+0013d6 */
+   0x00aba7,                   /* U+0013d7 */
+   0x00aba8,                   /* U+0013d8 */
+   0x00aba9,                   /* U+0013d9 */
+   0x00abaa,                   /* U+0013da */
+   0x00abab,                   /* U+0013db */
+   0x00abac,                   /* U+0013dc */
+   0x00abad,                   /* U+0013dd */
+   0x00abae,                   /* U+0013de */
+   0x00abaf,                   /* U+0013df */
+   0x00abb0,                   /* U+0013e0 */
+   0x00abb1,                   /* U+0013e1 */
+   0x00abb2,                   /* U+0013e2 */
+   0x00abb3,                   /* U+0013e3 */
+   0x00abb4,                   /* U+0013e4 */
+   0x00abb5,                   /* U+0013e5 */
+   0x00abb6,                   /* U+0013e6 */
+   0x00abb7,                   /* U+0013e7 */
+   0x00abb8,                   /* U+0013e8 */
+   0x00abb9,                   /* U+0013e9 */
+   0x00abba,                   /* U+0013ea */
+   0x00abbb,                   /* U+0013eb */
+   0x00abbc,                   /* U+0013ec */
+   0x00abbd,                   /* U+0013ed */
+   0x00abbe,                   /* U+0013ee */
+   0x00abbf,                   /* U+0013ef */
+   0x0013f8,                   /* U+0013f0 */
+   0x0013f9,                   /* U+0013f1 */
+   0x0013fa,                   /* U+0013f2 */
+   0x0013fb,                   /* U+0013f3 */
+   0x0013fc,                   /* U+0013f4 */
+   0x0013fd,                   /* U+0013f5 */
+   0x001c80,                   /* U+001c80 */
+   0x001c81,                   /* U+001c81 */
+   0x001c82,                   /* U+001c82 */
+   0x001c83,                   /* U+001c83 */
+   0x001c84,                   /* U+001c84 */
+   0x001c85,                   /* U+001c85 */
+   0x001c86,                   /* U+001c86 */
+   0x001c87,                   /* U+001c87 */
+   0x001c88,                   /* U+001c88 */
+   0x0010d0,                   /* U+001c90 */
+   0x0010d1,                   /* U+001c91 */
+   0x0010d2,                   /* U+001c92 */
+   0x0010d3,                   /* U+001c93 */
+   0x0010d4,                   /* U+001c94 */
+   0x0010d5,                   /* U+001c95 */
+   0x0010d6,                   /* U+001c96 */
+   0x0010d7,                   /* U+001c97 */
+   0x0010d8,                   /* U+001c98 */
+   0x0010d9,                   /* U+001c99 */
+   0x0010da,                   /* U+001c9a */
+   0x0010db,                   /* U+001c9b */
+   0x0010dc,                   /* U+001c9c */
+   0x0010dd,                   /* U+001c9d */
+   0x0010de,                   /* U+001c9e */
+   0x0010df,                   /* U+001c9f */
+   0x0010e0,                   /* U+001ca0 */
+   0x0010e1,                   /* U+001ca1 */
+   0x0010e2,                   /* U+001ca2 */
+   0x0010e3,                   /* U+001ca3 */
+   0x0010e4,                   /* U+001ca4 */
+   0x0010e5,                   /* U+001ca5 */
+   0x0010e6,                   /* U+001ca6 */
+   0x0010e7,                   /* U+001ca7 */
+   0x0010e8,                   /* U+001ca8 */
+   0x0010e9,                   /* U+001ca9 */
+   0x0010ea,                   /* U+001caa */
+   0x0010eb,                   /* U+001cab */
+   0x0010ec,                   /* U+001cac */
+   0x0010ed,                   /* U+001cad */
+   0x0010ee,                   /* U+001cae */
+   0x0010ef,                   /* U+001caf */
+   0x0010f0,                   /* U+001cb0 */
+   0x0010f1,                   /* U+001cb1 */
+   0x0010f2,                   /* U+001cb2 */
+   0x0010f3,                   /* U+001cb3 */
+   0x0010f4,                   /* U+001cb4 */
+   0x0010f5,                   /* U+001cb5 */
+   0x0010f6,                   /* U+001cb6 */
+   0x0010f7,                   /* U+001cb7 */
+   0x0010f8,                   /* U+001cb8 */
+   0x0010f9,                   /* U+001cb9 */
+   0x0010fa,                   /* U+001cba */
+   0x0010fd,                   /* U+001cbd */
+   0x0010fe,                   /* U+001cbe */
+   0x0010ff,                   /* U+001cbf */
+   0x001d79,                   /* U+001d79 */
+   0x001d7d,                   /* U+001d7d */
+   0x001d8e,                   /* U+001d8e */
+   0x001e01,                   /* U+001e00 */
+   0x001e03,                   /* U+001e02 */
+   0x001e05,                   /* U+001e04 */
+   0x001e07,                   /* U+001e06 */
+   0x001e09,                   /* U+001e08 */
+   0x001e0b,                   /* U+001e0a */
+   0x001e0d,                   /* U+001e0c */
+   0x001e0f,                   /* U+001e0e */
+   0x001e11,                   /* U+001e10 */
+   0x001e13,                   /* U+001e12 */
+   0x001e15,                   /* U+001e14 */
+   0x001e17,                   /* U+001e16 */
+   0x001e19,                   /* U+001e18 */
+   0x001e1b,                   /* U+001e1a */
+   0x001e1d,                   /* U+001e1c */
+   0x001e1f,                   /* U+001e1e */
+   0x001e21,                   /* U+001e20 */
+   0x001e23,                   /* U+001e22 */
+   0x001e25,                   /* U+001e24 */
+   0x001e27,                   /* U+001e26 */
+   0x001e29,                   /* U+001e28 */
+   0x001e2b,                   /* U+001e2a */
+   0x001e2d,                   /* U+001e2c */
+   0x001e2f,                   /* U+001e2e */
+   0x001e31,                   /* U+001e30 */
+   0x001e33,                   /* U+001e32 */
+   0x001e35,                   /* U+001e34 */
+   0x001e37,                   /* U+001e36 */
+   0x001e39,                   /* U+001e38 */
+   0x001e3b,                   /* U+001e3a */
+   0x001e3d,                   /* U+001e3c */
+   0x001e3f,                   /* U+001e3e */
+   0x001e41,                   /* U+001e40 */
+   0x001e43,                   /* U+001e42 */
+   0x001e45,                   /* U+001e44 */
+   0x001e47,                   /* U+001e46 */
+   0x001e49,                   /* U+001e48 */
+   0x001e4b,                   /* U+001e4a */
+   0x001e4d,                   /* U+001e4c */
+   0x001e4f,                   /* U+001e4e */
+   0x001e51,                   /* U+001e50 */
+   0x001e53,                   /* U+001e52 */
+   0x001e55,                   /* U+001e54 */
+   0x001e57,                   /* U+001e56 */
+   0x001e59,                   /* U+001e58 */
+   0x001e5b,                   /* U+001e5a */
+   0x001e5d,                   /* U+001e5c */
+   0x001e5f,                   /* U+001e5e */
+   0x001e61,                   /* U+001e60 */
+   0x001e63,                   /* U+001e62 */
+   0x001e65,                   /* U+001e64 */
+   0x001e67,                   /* U+001e66 */
+   0x001e69,                   /* U+001e68 */
+   0x001e6b,                   /* U+001e6a */
+   0x001e6d,                   /* U+001e6c */
+   0x001e6f,                   /* U+001e6e */
+   0x001e71,                   /* U+001e70 */
+   0x001e73,                   /* U+001e72 */
+   0x001e75,                   /* U+001e74 */
+   0x001e77,                   /* U+001e76 */
+   0x001e79,                   /* U+001e78 */
+   0x001e7b,                   /* U+001e7a */
+   0x001e7d,                   /* U+001e7c */
+   0x001e7f,                   /* U+001e7e */
+   0x001e81,                   /* U+001e80 */
+   0x001e83,                   /* U+001e82 */
+   0x001e85,                   /* U+001e84 */
+   0x001e87,                   /* U+001e86 */
+   0x001e89,                   /* U+001e88 */
+   0x001e8b,                   /* U+001e8a */
+   0x001e8d,                   /* U+001e8c */
+   0x001e8f,                   /* U+001e8e */
+   0x001e91,                   /* U+001e90 */
+   0x001e93,                   /* U+001e92 */
+   0x001e95,                   /* U+001e94 */
+   0x001e96,                   /* U+001e96 */
+   0x001e97,                   /* U+001e97 */
+   0x001e98,                   /* U+001e98 */
+   0x001e99,                   /* U+001e99 */
+   0x001e9a,                   /* U+001e9a */
+   0x001e9b,                   /* U+001e9b */
+   0x0000df,                   /* U+001e9e */
+   0x001ea1,                   /* U+001ea0 */
+   0x001ea3,                   /* U+001ea2 */
+   0x001ea5,                   /* U+001ea4 */
+   0x001ea7,                   /* U+001ea6 */
+   0x001ea9,                   /* U+001ea8 */
+   0x001eab,                   /* U+001eaa */
+   0x001ead,                   /* U+001eac */
+   0x001eaf,                   /* U+001eae */
+   0x001eb1,                   /* U+001eb0 */
+   0x001eb3,                   /* U+001eb2 */
+   0x001eb5,                   /* U+001eb4 */
+   0x001eb7,                   /* U+001eb6 */
+   0x001eb9,                   /* U+001eb8 */
+   0x001ebb,                   /* U+001eba */
+   0x001ebd,                   /* U+001ebc */
+   0x001ebf,                   /* U+001ebe */
+   0x001ec1,                   /* U+001ec0 */
+   0x001ec3,                   /* U+001ec2 */
+   0x001ec5,                   /* U+001ec4 */
+   0x001ec7,                   /* U+001ec6 */
+   0x001ec9,                   /* U+001ec8 */
+   0x001ecb,                   /* U+001eca */
+   0x001ecd,                   /* U+001ecc */
+   0x001ecf,                   /* U+001ece */
+   0x001ed1,                   /* U+001ed0 */
+   0x001ed3,                   /* U+001ed2 */
+   0x001ed5,                   /* U+001ed4 */
+   0x001ed7,                   /* U+001ed6 */
+   0x001ed9,                   /* U+001ed8 */
+   0x001edb,                   /* U+001eda */
+   0x001edd,                   /* U+001edc */
+   0x001edf,                   /* U+001ede */
+   0x001ee1,                   /* U+001ee0 */
+   0x001ee3,                   /* U+001ee2 */
+   0x001ee5,                   /* U+001ee4 */
+   0x001ee7,                   /* U+001ee6 */
+   0x001ee9,                   /* U+001ee8 */
+   0x001eeb,                   /* U+001eea */
+   0x001eed,                   /* U+001eec */
+   0x001eef,                   /* U+001eee */
+   0x001ef1,                   /* U+001ef0 */
+   0x001ef3,                   /* U+001ef2 */
+   0x001ef5,                   /* U+001ef4 */
+   0x001ef7,                   /* U+001ef6 */
+   0x001ef9,                   /* U+001ef8 */
+   0x001efb,                   /* U+001efa */
+   0x001efd,                   /* U+001efc */
+   0x001eff,                   /* U+001efe */
+   0x001f00,                   /* U+001f00 */
+   0x001f01,                   /* U+001f01 */
+   0x001f02,                   /* U+001f02 */
+   0x001f03,                   /* U+001f03 */
+   0x001f04,                   /* U+001f04 */
+   0x001f05,                   /* U+001f05 */
+   0x001f06,                   /* U+001f06 */
+   0x001f07,                   /* U+001f07 */
+   0x001f10,                   /* U+001f10 */
+   0x001f11,                   /* U+001f11 */
+   0x001f12,                   /* U+001f12 */
+   0x001f13,                   /* U+001f13 */
+   0x001f14,                   /* U+001f14 */
+   0x001f15,                   /* U+001f15 */
+   0x001f20,                   /* U+001f20 */
+   0x001f21,                   /* U+001f21 */
+   0x001f22,                   /* U+001f22 */
+   0x001f23,                   /* U+001f23 */
+   0x001f24,                   /* U+001f24 */
+   0x001f25,                   /* U+001f25 */
+   0x001f26,                   /* U+001f26 */
+   0x001f27,                   /* U+001f27 */
+   0x001f30,                   /* U+001f30 */
+   0x001f31,                   /* U+001f31 */
+   0x001f32,                   /* U+001f32 */
+   0x001f33,                   /* U+001f33 */
+   0x001f34,                   /* U+001f34 */
+   0x001f35,                   /* U+001f35 */
+   0x001f36,                   /* U+001f36 */
+   0x001f37,                   /* U+001f37 */
+   0x001f40,                   /* U+001f40 */
+   0x001f41,                   /* U+001f41 */
+   0x001f42,                   /* U+001f42 */
+   0x001f43,                   /* U+001f43 */
+   0x001f44,                   /* U+001f44 */
+   0x001f45,                   /* U+001f45 */
+   0x001f50,                   /* U+001f50 */
+   0x001f51,                   /* U+001f51 */
+   0x001f52,                   /* U+001f52 */
+   0x001f53,                   /* U+001f53 */
+   0x001f54,                   /* U+001f54 */
+   0x001f55,                   /* U+001f55 */
+   0x001f56,                   /* U+001f56 */
+   0x001f57,                   /* U+001f57 */
+   0x001f60,                   /* U+001f60 */
+   0x001f61,                   /* U+001f61 */
+   0x001f62,                   /* U+001f62 */
+   0x001f63,                   /* U+001f63 */
+   0x001f64,                   /* U+001f64 */
+   0x001f65,                   /* U+001f65 */
+   0x001f66,                   /* U+001f66 */
+   0x001f67,                   /* U+001f67 */
+   0x001f70,                   /* U+001f70 */
+   0x001f71,                   /* U+001f71 */
+   0x001f72,                   /* U+001f72 */
+   0x001f73,                   /* U+001f73 */
+   0x001f74,                   /* U+001f74 */
+   0x001f75,                   /* U+001f75 */
+   0x001f76,                   /* U+001f76 */
+   0x001f77,                   /* U+001f77 */
+   0x001f78,                   /* U+001f78 */
+   0x001f79,                   /* U+001f79 */
+   0x001f7a,                   /* U+001f7a */
+   0x001f7b,                   /* U+001f7b */
+   0x001f7c,                   /* U+001f7c */
+   0x001f7d,                   /* U+001f7d */
+   0x001f80,                   /* U+001f80 */
+   0x001f81,                   /* U+001f81 */
+   0x001f82,                   /* U+001f82 */
+   0x001f83,                   /* U+001f83 */
+   0x001f84,                   /* U+001f84 */
+   0x001f85,                   /* U+001f85 */
+   0x001f86,                   /* U+001f86 */
+   0x001f87,                   /* U+001f87 */
+   0x001f80,                   /* U+001f88 */
+   0x001f81,                   /* U+001f89 */
+   0x001f82,                   /* U+001f8a */
+   0x001f83,                   /* U+001f8b */
+   0x001f84,                   /* U+001f8c */
+   0x001f85,                   /* U+001f8d */
+   0x001f86,                   /* U+001f8e */
+   0x001f87,                   /* U+001f8f */
+   0x001f90,                   /* U+001f90 */
+   0x001f91,                   /* U+001f91 */
+   0x001f92,                   /* U+001f92 */
+   0x001f93,                   /* U+001f93 */
+   0x001f94,                   /* U+001f94 */
+   0x001f95,                   /* U+001f95 */
+   0x001f96,                   /* U+001f96 */
+   0x001f97,                   /* U+001f97 */
+   0x001f90,                   /* U+001f98 */
+   0x001f91,                   /* U+001f99 */
+   0x001f92,                   /* U+001f9a */
+   0x001f93,                   /* U+001f9b */
+   0x001f94,                   /* U+001f9c */
+   0x001f95,                   /* U+001f9d */
+   0x001f96,                   /* U+001f9e */
+   0x001f97,                   /* U+001f9f */
+   0x001fa0,                   /* U+001fa0 */
+   0x001fa1,                   /* U+001fa1 */
+   0x001fa2,                   /* U+001fa2 */
+   0x001fa3,                   /* U+001fa3 */
+   0x001fa4,                   /* U+001fa4 */
+   0x001fa5,                   /* U+001fa5 */
+   0x001fa6,                   /* U+001fa6 */
+   0x001fa7,                   /* U+001fa7 */
+   0x001fa0,                   /* U+001fa8 */
+   0x001fa1,                   /* U+001fa9 */
+   0x001fa2,                   /* U+001faa */
+   0x001fa3,                   /* U+001fab */
+   0x001fa4,                   /* U+001fac */
+   0x001fa5,                   /* U+001fad */
+   0x001fa6,                   /* U+001fae */
+   0x001fa7,                   /* U+001faf */
+   0x001fb0,                   /* U+001fb0 */
+   0x001fb1,                   /* U+001fb1 */
+   0x001fb2,                   /* U+001fb2 */
+   0x001fb3,                   /* U+001fb3 */
+   0x001fb4,                   /* U+001fb4 */
+   0x001fb6,                   /* U+001fb6 */
+   0x001fb7,                   /* U+001fb7 */
+   0x001fb3,                   /* U+001fbc */
+   0x001fbe,                   /* U+001fbe */
+   0x001fc2,                   /* U+001fc2 */
+   0x001fc3,                   /* U+001fc3 */
+   0x001fc4,                   /* U+001fc4 */
+   0x001fc6,                   /* U+001fc6 */
+   0x001fc7,                   /* U+001fc7 */
+   0x001fc3,                   /* U+001fcc */
+   0x001fd0,                   /* U+001fd0 */
+   0x001fd1,                   /* U+001fd1 */
+   0x001fd2,                   /* U+001fd2 */
+   0x001fd3,                   /* U+001fd3 */
+   0x001fd6,                   /* U+001fd6 */
+   0x001fd7,                   /* U+001fd7 */
+   0x001fe0,                   /* U+001fe0 */
+   0x001fe1,                   /* U+001fe1 */
+   0x001fe2,                   /* U+001fe2 */
+   0x001fe3,                   /* U+001fe3 */
+   0x001fe4,                   /* U+001fe4 */
+   0x001fe5,                   /* U+001fe5 */
+   0x001fe6,                   /* U+001fe6 */
+   0x001fe7,                   /* U+001fe7 */
+   0x001ff2,                   /* U+001ff2 */
+   0x001ff3,                   /* U+001ff3 */
+   0x001ff4,                   /* U+001ff4 */
+   0x001ff6,                   /* U+001ff6 */
+   0x001ff7,                   /* U+001ff7 */
+   0x001ff3,                   /* U+001ffc */
+   0x0003c9,                   /* U+002126 */
+   0x00006b,                   /* U+00212a */
+   0x0000e5,                   /* U+00212b */
+   0x00214e,                   /* U+002132 */
+   0x002170,                   /* U+002160 */
+   0x002171,                   /* U+002161 */
+   0x002172,                   /* U+002162 */
+   0x002173,                   /* U+002163 */
+   0x002174,                   /* U+002164 */
+   0x002175,                   /* U+002165 */
+   0x002176,                   /* U+002166 */
+   0x002177,                   /* U+002167 */
+   0x002178,                   /* U+002168 */
+   0x002179,                   /* U+002169 */
+   0x00217a,                   /* U+00216a */
+   0x00217b,                   /* U+00216b */
+   0x00217c,                   /* U+00216c */
+   0x00217d,                   /* U+00216d */
+   0x00217e,                   /* U+00216e */
+   0x00217f,                   /* U+00216f */
+   0x002184,                   /* U+002183 */
+   0x0024d0,                   /* U+0024b6 */
+   0x0024d1,                   /* U+0024b7 */
+   0x0024d2,                   /* U+0024b8 */
+   0x0024d3,                   /* U+0024b9 */
+   0x0024d4,                   /* U+0024ba */
+   0x0024d5,                   /* U+0024bb */
+   0x0024d6,                   /* U+0024bc */
+   0x0024d7,                   /* U+0024bd */
+   0x0024d8,                   /* U+0024be */
+   0x0024d9,                   /* U+0024bf */
+   0x0024da,                   /* U+0024c0 */
+   0x0024db,                   /* U+0024c1 */
+   0x0024dc,                   /* U+0024c2 */
+   0x0024dd,                   /* U+0024c3 */
+   0x0024de,                   /* U+0024c4 */
+   0x0024df,                   /* U+0024c5 */
+   0x0024e0,                   /* U+0024c6 */
+   0x0024e1,                   /* U+0024c7 */
+   0x0024e2,                   /* U+0024c8 */
+   0x0024e3,                   /* U+0024c9 */
+   0x0024e4,                   /* U+0024ca */
+   0x0024e5,                   /* U+0024cb */
+   0x0024e6,                   /* U+0024cc */
+   0x0024e7,                   /* U+0024cd */
+   0x0024e8,                   /* U+0024ce */
+   0x0024e9,                   /* U+0024cf */
+   0x002c30,                   /* U+002c00 */
+   0x002c31,                   /* U+002c01 */
+   0x002c32,                   /* U+002c02 */
+   0x002c33,                   /* U+002c03 */
+   0x002c34,                   /* U+002c04 */
+   0x002c35,                   /* U+002c05 */
+   0x002c36,                   /* U+002c06 */
+   0x002c37,                   /* U+002c07 */
+   0x002c38,                   /* U+002c08 */
+   0x002c39,                   /* U+002c09 */
+   0x002c3a,                   /* U+002c0a */
+   0x002c3b,                   /* U+002c0b */
+   0x002c3c,                   /* U+002c0c */
+   0x002c3d,                   /* U+002c0d */
+   0x002c3e,                   /* U+002c0e */
+   0x002c3f,                   /* U+002c0f */
+   0x002c40,                   /* U+002c10 */
+   0x002c41,                   /* U+002c11 */
+   0x002c42,                   /* U+002c12 */
+   0x002c43,                   /* U+002c13 */
+   0x002c44,                   /* U+002c14 */
+   0x002c45,                   /* U+002c15 */
+   0x002c46,                   /* U+002c16 */
+   0x002c47,                   /* U+002c17 */
+   0x002c48,                   /* U+002c18 */
+   0x002c49,                   /* U+002c19 */
+   0x002c4a,                   /* U+002c1a */
+   0x002c4b,                   /* U+002c1b */
+   0x002c4c,                   /* U+002c1c */
+   0x002c4d,                   /* U+002c1d */
+   0x002c4e,                   /* U+002c1e */
+   0x002c4f,                   /* U+002c1f */
+   0x002c50,                   /* U+002c20 */
+   0x002c51,                   /* U+002c21 */
+   0x002c52,                   /* U+002c22 */
+   0x002c53,                   /* U+002c23 */
+   0x002c54,                   /* U+002c24 */
+   0x002c55,                   /* U+002c25 */
+   0x002c56,                   /* U+002c26 */
+   0x002c57,                   /* U+002c27 */
+   0x002c58,                   /* U+002c28 */
+   0x002c59,                   /* U+002c29 */
+   0x002c5a,                   /* U+002c2a */
+   0x002c5b,                   /* U+002c2b */
+   0x002c5c,                   /* U+002c2c */
+   0x002c5d,                   /* U+002c2d */
+   0x002c5e,                   /* U+002c2e */
+   0x002c5f,                   /* U+002c2f */
+   0x002c61,                   /* U+002c60 */
+   0x002c68,                   /* U+002c67 */
+   0x002c6a,                   /* U+002c69 */
+   0x002c6c,                   /* U+002c6b */
+   0x002c73,                   /* U+002c72 */
+   0x002c76,                   /* U+002c75 */
+   0x002c81,                   /* U+002c80 */
+   0x002c83,                   /* U+002c82 */
+   0x002c85,                   /* U+002c84 */
+   0x002c87,                   /* U+002c86 */
+   0x002c89,                   /* U+002c88 */
+   0x002c8b,                   /* U+002c8a */
+   0x002c8d,                   /* U+002c8c */
+   0x002c8f,                   /* U+002c8e */
+   0x002c91,                   /* U+002c90 */
+   0x002c93,                   /* U+002c92 */
+   0x002c95,                   /* U+002c94 */
+   0x002c97,                   /* U+002c96 */
+   0x002c99,                   /* U+002c98 */
+   0x002c9b,                   /* U+002c9a */
+   0x002c9d,                   /* U+002c9c */
+   0x002c9f,                   /* U+002c9e */
+   0x002ca1,                   /* U+002ca0 */
+   0x002ca3,                   /* U+002ca2 */
+   0x002ca5,                   /* U+002ca4 */
+   0x002ca7,                   /* U+002ca6 */
+   0x002ca9,                   /* U+002ca8 */
+   0x002cab,                   /* U+002caa */
+   0x002cad,                   /* U+002cac */
+   0x002caf,                   /* U+002cae */
+   0x002cb1,                   /* U+002cb0 */
+   0x002cb3,                   /* U+002cb2 */
+   0x002cb5,                   /* U+002cb4 */
+   0x002cb7,                   /* U+002cb6 */
+   0x002cb9,                   /* U+002cb8 */
+   0x002cbb,                   /* U+002cba */
+   0x002cbd,                   /* U+002cbc */
+   0x002cbf,                   /* U+002cbe */
+   0x002cc1,                   /* U+002cc0 */
+   0x002cc3,                   /* U+002cc2 */
+   0x002cc5,                   /* U+002cc4 */
+   0x002cc7,                   /* U+002cc6 */
+   0x002cc9,                   /* U+002cc8 */
+   0x002ccb,                   /* U+002cca */
+   0x002ccd,                   /* U+002ccc */
+   0x002ccf,                   /* U+002cce */
+   0x002cd1,                   /* U+002cd0 */
+   0x002cd3,                   /* U+002cd2 */
+   0x002cd5,                   /* U+002cd4 */
+   0x002cd7,                   /* U+002cd6 */
+   0x002cd9,                   /* U+002cd8 */
+   0x002cdb,                   /* U+002cda */
+   0x002cdd,                   /* U+002cdc */
+   0x002cdf,                   /* U+002cde */
+   0x002ce1,                   /* U+002ce0 */
+   0x002ce3,                   /* U+002ce2 */
+   0x002cec,                   /* U+002ceb */
+   0x002cee,                   /* U+002ced */
+   0x002cf3,                   /* U+002cf2 */
+   0x00a641,                   /* U+00a640 */
+   0x00a643,                   /* U+00a642 */
+   0x00a645,                   /* U+00a644 */
+   0x00a647,                   /* U+00a646 */
+   0x00a649,                   /* U+00a648 */
+   0x00a64b,                   /* U+00a64a */
+   0x00a64d,                   /* U+00a64c */
+   0x00a64f,                   /* U+00a64e */
+   0x00a651,                   /* U+00a650 */
+   0x00a653,                   /* U+00a652 */
+   0x00a655,                   /* U+00a654 */
+   0x00a657,                   /* U+00a656 */
+   0x00a659,                   /* U+00a658 */
+   0x00a65b,                   /* U+00a65a */
+   0x00a65d,                   /* U+00a65c */
+   0x00a65f,                   /* U+00a65e */
+   0x00a661,                   /* U+00a660 */
+   0x00a663,                   /* U+00a662 */
+   0x00a665,                   /* U+00a664 */
+   0x00a667,                   /* U+00a666 */
+   0x00a669,                   /* U+00a668 */
+   0x00a66b,                   /* U+00a66a */
+   0x00a66d,                   /* U+00a66c */
+   0x00a681,                   /* U+00a680 */
+   0x00a683,                   /* U+00a682 */
+   0x00a685,                   /* U+00a684 */
+   0x00a687,                   /* U+00a686 */
+   0x00a689,                   /* U+00a688 */
+   0x00a68b,                   /* U+00a68a */
+   0x00a68d,                   /* U+00a68c */
+   0x00a68f,                   /* U+00a68e */
+   0x00a691,                   /* U+00a690 */
+   0x00a693,                   /* U+00a692 */
+   0x00a695,                   /* U+00a694 */
+   0x00a697,                   /* U+00a696 */
+   0x00a699,                   /* U+00a698 */
+   0x00a69b,                   /* U+00a69a */
+   0x00a723,                   /* U+00a722 */
+   0x00a725,                   /* U+00a724 */
+   0x00a727,                   /* U+00a726 */
+   0x00a729,                   /* U+00a728 */
+   0x00a72b,                   /* U+00a72a */
+   0x00a72d,                   /* U+00a72c */
+   0x00a72f,                   /* U+00a72e */
+   0x00a733,                   /* U+00a732 */
+   0x00a735,                   /* U+00a734 */
+   0x00a737,                   /* U+00a736 */
+   0x00a739,                   /* U+00a738 */
+   0x00a73b,                   /* U+00a73a */
+   0x00a73d,                   /* U+00a73c */
+   0x00a73f,                   /* U+00a73e */
+   0x00a741,                   /* U+00a740 */
+   0x00a743,                   /* U+00a742 */
+   0x00a745,                   /* U+00a744 */
+   0x00a747,                   /* U+00a746 */
+   0x00a749,                   /* U+00a748 */
+   0x00a74b,                   /* U+00a74a */
+   0x00a74d,                   /* U+00a74c */
+   0x00a74f,                   /* U+00a74e */
+   0x00a751,                   /* U+00a750 */
+   0x00a753,                   /* U+00a752 */
+   0x00a755,                   /* U+00a754 */
+   0x00a757,                   /* U+00a756 */
+   0x00a759,                   /* U+00a758 */
+   0x00a75b,                   /* U+00a75a */
+   0x00a75d,                   /* U+00a75c */
+   0x00a75f,                   /* U+00a75e */
+   0x00a761,                   /* U+00a760 */
+   0x00a763,                   /* U+00a762 */
+   0x00a765,                   /* U+00a764 */
+   0x00a767,                   /* U+00a766 */
+   0x00a769,                   /* U+00a768 */
+   0x00a76b,                   /* U+00a76a */
+   0x00a76d,                   /* U+00a76c */
+   0x00a76f,                   /* U+00a76e */
+   0x00a77a,                   /* U+00a779 */
+   0x00a77c,                   /* U+00a77b */
+   0x00a77f,                   /* U+00a77e */
+   0x00a781,                   /* U+00a780 */
+   0x00a783,                   /* U+00a782 */
+   0x00a785,                   /* U+00a784 */
+   0x00a787,                   /* U+00a786 */
+   0x00a78c,                   /* U+00a78b */
+   0x00a791,                   /* U+00a790 */
+   0x00a793,                   /* U+00a792 */
+   0x00a794,                   /* U+00a794 */
+   0x00a797,                   /* U+00a796 */
+   0x00a799,                   /* U+00a798 */
+   0x00a79b,                   /* U+00a79a */
+   0x00a79d,                   /* U+00a79c */
+   0x00a79f,                   /* U+00a79e */
+   0x00a7a1,                   /* U+00a7a0 */
+   0x00a7a3,                   /* U+00a7a2 */
+   0x00a7a5,                   /* U+00a7a4 */
+   0x00a7a7,                   /* U+00a7a6 */
+   0x00a7a9,                   /* U+00a7a8 */
+   0x00ab53,                   /* U+00a7b3 */
+   0x00a7b5,                   /* U+00a7b4 */
+   0x00a7b7,                   /* U+00a7b6 */
+   0x00a7b9,                   /* U+00a7b8 */
+   0x00a7bb,                   /* U+00a7ba */
+   0x00a7bd,                   /* U+00a7bc */
+   0x00a7bf,                   /* U+00a7be */
+   0x00a7c1,                   /* U+00a7c0 */
+   0x00a7c3,                   /* U+00a7c2 */
+   0x00a7c8,                   /* U+00a7c7 */
+   0x00a7ca,                   /* U+00a7c9 */
+   0x00a7d1,                   /* U+00a7d0 */
+   0x00a7d7,                   /* U+00a7d6 */
+   0x00a7d9,                   /* U+00a7d8 */
+   0x00a7f6,                   /* U+00a7f5 */
+   0x00fb00,                   /* U+00fb00 */
+   0x00fb01,                   /* U+00fb01 */
+   0x00fb02,                   /* U+00fb02 */
+   0x00fb03,                   /* U+00fb03 */
+   0x00fb04,                   /* U+00fb04 */
+   0x00fb05,                   /* U+00fb05 */
+   0x00fb06,                   /* U+00fb06 */
+   0x00fb13,                   /* U+00fb13 */
+   0x00fb14,                   /* U+00fb14 */
+   0x00fb15,                   /* U+00fb15 */
+   0x00fb16,                   /* U+00fb16 */
+   0x00fb17,                   /* U+00fb17 */
+   0x00ff41,                   /* U+00ff21 */
+   0x00ff42,                   /* U+00ff22 */
+   0x00ff43,                   /* U+00ff23 */
+   0x00ff44,                   /* U+00ff24 */
+   0x00ff45,                   /* U+00ff25 */
+   0x00ff46,                   /* U+00ff26 */
+   0x00ff47,                   /* U+00ff27 */
+   0x00ff48,                   /* U+00ff28 */
+   0x00ff49,                   /* U+00ff29 */
+   0x00ff4a,                   /* U+00ff2a */
+   0x00ff4b,                   /* U+00ff2b */
+   0x00ff4c,                   /* U+00ff2c */
+   0x00ff4d,                   /* U+00ff2d */
+   0x00ff4e,                   /* U+00ff2e */
+   0x00ff4f,                   /* U+00ff2f */
+   0x00ff50,                   /* U+00ff30 */
+   0x00ff51,                   /* U+00ff31 */
+   0x00ff52,                   /* U+00ff32 */
+   0x00ff53,                   /* U+00ff33 */
+   0x00ff54,                   /* U+00ff34 */
+   0x00ff55,                   /* U+00ff35 */
+   0x00ff56,                   /* U+00ff36 */
+   0x00ff57,                   /* U+00ff37 */
+   0x00ff58,                   /* U+00ff38 */
+   0x00ff59,                   /* U+00ff39 */
+   0x00ff5a,                   /* U+00ff3a */
+   0x010428,                   /* U+010400 */
+   0x010429,                   /* U+010401 */
+   0x01042a,                   /* U+010402 */
+   0x01042b,                   /* U+010403 */
+   0x01042c,                   /* U+010404 */
+   0x01042d,                   /* U+010405 */
+   0x01042e,                   /* U+010406 */
+   0x01042f,                   /* U+010407 */
+   0x010430,                   /* U+010408 */
+   0x010431,                   /* U+010409 */
+   0x010432,                   /* U+01040a */
+   0x010433,                   /* U+01040b */
+   0x010434,                   /* U+01040c */
+   0x010435,                   /* U+01040d */
+   0x010436,                   /* U+01040e */
+   0x010437,                   /* U+01040f */
+   0x010438,                   /* U+010410 */
+   0x010439,                   /* U+010411 */
+   0x01043a,                   /* U+010412 */
+   0x01043b,                   /* U+010413 */
+   0x01043c,                   /* U+010414 */
+   0x01043d,                   /* U+010415 */
+   0x01043e,                   /* U+010416 */
+   0x01043f,                   /* U+010417 */
+   0x010440,                   /* U+010418 */
+   0x010441,                   /* U+010419 */
+   0x010442,                   /* U+01041a */
+   0x010443,                   /* U+01041b */
+   0x010444,                   /* U+01041c */
+   0x010445,                   /* U+01041d */
+   0x010446,                   /* U+01041e */
+   0x010447,                   /* U+01041f */
+   0x010448,                   /* U+010420 */
+   0x010449,                   /* U+010421 */
+   0x01044a,                   /* U+010422 */
+   0x01044b,                   /* U+010423 */
+   0x01044c,                   /* U+010424 */
+   0x01044d,                   /* U+010425 */
+   0x01044e,                   /* U+010426 */
+   0x01044f,                   /* U+010427 */
+   0x0104d8,                   /* U+0104b0 */
+   0x0104d9,                   /* U+0104b1 */
+   0x0104da,                   /* U+0104b2 */
+   0x0104db,                   /* U+0104b3 */
+   0x0104dc,                   /* U+0104b4 */
+   0x0104dd,                   /* U+0104b5 */
+   0x0104de,                   /* U+0104b6 */
+   0x0104df,                   /* U+0104b7 */
+   0x0104e0,                   /* U+0104b8 */
+   0x0104e1,                   /* U+0104b9 */
+   0x0104e2,                   /* U+0104ba */
+   0x0104e3,                   /* U+0104bb */
+   0x0104e4,                   /* U+0104bc */
+   0x0104e5,                   /* U+0104bd */
+   0x0104e6,                   /* U+0104be */
+   0x0104e7,                   /* U+0104bf */
+   0x0104e8,                   /* U+0104c0 */
+   0x0104e9,                   /* U+0104c1 */
+   0x0104ea,                   /* U+0104c2 */
+   0x0104eb,                   /* U+0104c3 */
+   0x0104ec,                   /* U+0104c4 */
+   0x0104ed,                   /* U+0104c5 */
+   0x0104ee,                   /* U+0104c6 */
+   0x0104ef,                   /* U+0104c7 */
+   0x0104f0,                   /* U+0104c8 */
+   0x0104f1,                   /* U+0104c9 */
+   0x0104f2,                   /* U+0104ca */
+   0x0104f3,                   /* U+0104cb */
+   0x0104f4,                   /* U+0104cc */
+   0x0104f5,                   /* U+0104cd */
+   0x0104f6,                   /* U+0104ce */
+   0x0104f7,                   /* U+0104cf */
+   0x0104f8,                   /* U+0104d0 */
+   0x0104f9,                   /* U+0104d1 */
+   0x0104fa,                   /* U+0104d2 */
+   0x0104fb,                   /* U+0104d3 */
+   0x010597,                   /* U+010570 */
+   0x010598,                   /* U+010571 */
+   0x010599,                   /* U+010572 */
+   0x01059a,                   /* U+010573 */
+   0x01059b,                   /* U+010574 */
+   0x01059c,                   /* U+010575 */
+   0x01059d,                   /* U+010576 */
+   0x01059e,                   /* U+010577 */
+   0x01059f,                   /* U+010578 */
+   0x0105a0,                   /* U+010579 */
+   0x0105a1,                   /* U+01057a */
+   0x0105a3,                   /* U+01057c */
+   0x0105a4,                   /* U+01057d */
+   0x0105a5,                   /* U+01057e */
+   0x0105a6,                   /* U+01057f */
+   0x0105a7,                   /* U+010580 */
+   0x0105a8,                   /* U+010581 */
+   0x0105a9,                   /* U+010582 */
+   0x0105aa,                   /* U+010583 */
+   0x0105ab,                   /* U+010584 */
+   0x0105ac,                   /* U+010585 */
+   0x0105ad,                   /* U+010586 */
+   0x0105ae,                   /* U+010587 */
+   0x0105af,                   /* U+010588 */
+   0x0105b0,                   /* U+010589 */
+   0x0105b1,                   /* U+01058a */
+   0x0105b3,                   /* U+01058c */
+   0x0105b4,                   /* U+01058d */
+   0x0105b5,                   /* U+01058e */
+   0x0105b6,                   /* U+01058f */
+   0x0105b7,                   /* U+010590 */
+   0x0105b8,                   /* U+010591 */
+   0x0105b9,                   /* U+010592 */
+   0x0105bb,                   /* U+010594 */
+   0x0105bc,                   /* U+010595 */
+   0x010cc0,                   /* U+010c80 */
+   0x010cc1,                   /* U+010c81 */
+   0x010cc2,                   /* U+010c82 */
+   0x010cc3,                   /* U+010c83 */
+   0x010cc4,                   /* U+010c84 */
+   0x010cc5,                   /* U+010c85 */
+   0x010cc6,                   /* U+010c86 */
+   0x010cc7,                   /* U+010c87 */
+   0x010cc8,                   /* U+010c88 */
+   0x010cc9,                   /* U+010c89 */
+   0x010cca,                   /* U+010c8a */
+   0x010ccb,                   /* U+010c8b */
+   0x010ccc,                   /* U+010c8c */
+   0x010ccd,                   /* U+010c8d */
+   0x010cce,                   /* U+010c8e */
+   0x010ccf,                   /* U+010c8f */
+   0x010cd0,                   /* U+010c90 */
+   0x010cd1,                   /* U+010c91 */
+   0x010cd2,                   /* U+010c92 */
+   0x010cd3,                   /* U+010c93 */
+   0x010cd4,                   /* U+010c94 */
+   0x010cd5,                   /* U+010c95 */
+   0x010cd6,                   /* U+010c96 */
+   0x010cd7,                   /* U+010c97 */
+   0x010cd8,                   /* U+010c98 */
+   0x010cd9,                   /* U+010c99 */
+   0x010cda,                   /* U+010c9a */
+   0x010cdb,                   /* U+010c9b */
+   0x010cdc,                   /* U+010c9c */
+   0x010cdd,                   /* U+010c9d */
+   0x010cde,                   /* U+010c9e */
+   0x010cdf,                   /* U+010c9f */
+   0x010ce0,                   /* U+010ca0 */
+   0x010ce1,                   /* U+010ca1 */
+   0x010ce2,                   /* U+010ca2 */
+   0x010ce3,                   /* U+010ca3 */
+   0x010ce4,                   /* U+010ca4 */
+   0x010ce5,                   /* U+010ca5 */
+   0x010ce6,                   /* U+010ca6 */
+   0x010ce7,                   /* U+010ca7 */
+   0x010ce8,                   /* U+010ca8 */
+   0x010ce9,                   /* U+010ca9 */
+   0x010cea,                   /* U+010caa */
+   0x010ceb,                   /* U+010cab */
+   0x010cec,                   /* U+010cac */
+   0x010ced,                   /* U+010cad */
+   0x010cee,                   /* U+010cae */
+   0x010cef,                   /* U+010caf */
+   0x010cf0,                   /* U+010cb0 */
+   0x010cf1,                   /* U+010cb1 */
+   0x010cf2,                   /* U+010cb2 */
+   0x0118c0,                   /* U+0118a0 */
+   0x0118c1,                   /* U+0118a1 */
+   0x0118c2,                   /* U+0118a2 */
+   0x0118c3,                   /* U+0118a3 */
+   0x0118c4,                   /* U+0118a4 */
+   0x0118c5,                   /* U+0118a5 */
+   0x0118c6,                   /* U+0118a6 */
+   0x0118c7,                   /* U+0118a7 */
+   0x0118c8,                   /* U+0118a8 */
+   0x0118c9,                   /* U+0118a9 */
+   0x0118ca,                   /* U+0118aa */
+   0x0118cb,                   /* U+0118ab */
+   0x0118cc,                   /* U+0118ac */
+   0x0118cd,                   /* U+0118ad */
+   0x0118ce,                   /* U+0118ae */
+   0x0118cf,                   /* U+0118af */
+   0x0118d0,                   /* U+0118b0 */
+   0x0118d1,                   /* U+0118b1 */
+   0x0118d2,                   /* U+0118b2 */
+   0x0118d3,                   /* U+0118b3 */
+   0x0118d4,                   /* U+0118b4 */
+   0x0118d5,                   /* U+0118b5 */
+   0x0118d6,                   /* U+0118b6 */
+   0x0118d7,                   /* U+0118b7 */
+   0x0118d8,                   /* U+0118b8 */
+   0x0118d9,                   /* U+0118b9 */
+   0x0118da,                   /* U+0118ba */
+   0x0118db,                   /* U+0118bb */
+   0x0118dc,                   /* U+0118bc */
+   0x0118dd,                   /* U+0118bd */
+   0x0118de,                   /* U+0118be */
+   0x0118df,                   /* U+0118bf */
+   0x016e60,                   /* U+016e40 */
+   0x016e61,                   /* U+016e41 */
+   0x016e62,                   /* U+016e42 */
+   0x016e63,                   /* U+016e43 */
+   0x016e64,                   /* U+016e44 */
+   0x016e65,                   /* U+016e45 */
+   0x016e66,                   /* U+016e46 */
+   0x016e67,                   /* U+016e47 */
+   0x016e68,                   /* U+016e48 */
+   0x016e69,                   /* U+016e49 */
+   0x016e6a,                   /* U+016e4a */
+   0x016e6b,                   /* U+016e4b */
+   0x016e6c,                   /* U+016e4c */
+   0x016e6d,                   /* U+016e4d */
+   0x016e6e,                   /* U+016e4e */
+   0x016e6f,                   /* U+016e4f */
+   0x016e70,                   /* U+016e50 */
+   0x016e71,                   /* U+016e51 */
+   0x016e72,                   /* U+016e52 */
+   0x016e73,                   /* U+016e53 */
+   0x016e74,                   /* U+016e54 */
+   0x016e75,                   /* U+016e55 */
+   0x016e76,                   /* U+016e56 */
+   0x016e77,                   /* U+016e57 */
+   0x016e78,                   /* U+016e58 */
+   0x016e79,                   /* U+016e59 */
+   0x016e7a,                   /* U+016e5a */
+   0x016e7b,                   /* U+016e5b */
+   0x016e7c,                   /* U+016e5c */
+   0x016e7d,                   /* U+016e5d */
+   0x016e7e,                   /* U+016e5e */
+   0x016e7f,                   /* U+016e5f */
+   0x01e922,                   /* U+01e900 */
+   0x01e923,                   /* U+01e901 */
+   0x01e924,                   /* U+01e902 */
+   0x01e925,                   /* U+01e903 */
+   0x01e926,                   /* U+01e904 */
+   0x01e927,                   /* U+01e905 */
+   0x01e928,                   /* U+01e906 */
+   0x01e929,                   /* U+01e907 */
+   0x01e92a,                   /* U+01e908 */
+   0x01e92b,                   /* U+01e909 */
+   0x01e92c,                   /* U+01e90a */
+   0x01e92d,                   /* U+01e90b */
+   0x01e92e,                   /* U+01e90c */
+   0x01e92f,                   /* U+01e90d */
+   0x01e930,                   /* U+01e90e */
+   0x01e931,                   /* U+01e90f */
+   0x01e932,                   /* U+01e910 */
+   0x01e933,                   /* U+01e911 */
+   0x01e934,                   /* U+01e912 */
+   0x01e935,                   /* U+01e913 */
+   0x01e936,                   /* U+01e914 */
+   0x01e937,                   /* U+01e915 */
+   0x01e938,                   /* U+01e916 */
+   0x01e939,                   /* U+01e917 */
+   0x01e93a,                   /* U+01e918 */
+   0x01e93b,                   /* U+01e919 */
+   0x01e93c,                   /* U+01e91a */
+   0x01e93d,                   /* U+01e91b */
+   0x01e93e,                   /* U+01e91c */
+   0x01e93f,                   /* U+01e91d */
+   0x01e940,                   /* U+01e91e */
+   0x01e941,                   /* U+01e91f */
+   0x01e942,                   /* U+01e920 */
+   0x01e943,                   /* U+01e921 */
+
 };
 
 /*
- * Case mapping table. Dense for codepoints < 0x80 (enabling fast lookup),
- * sparse for higher codepoints (requiring scan or binary search).
+ * The entry case_map_title[case_index(codepoint)] is the mapping for the
+ * given codepoint.
  */
-static const pg_case_map case_map[3003] =
+static const pg_wchar case_map_title[1677] =
 {
-   /* begin dense entries for codepoints < 0x80 */
-   {0x000000, {[CaseLower] = 0x000000,[CaseTitle] = 0x000000,[CaseUpper] = 0x000000,[CaseFold] = 0x000000}, NULL},
-   {0x000001, {[CaseLower] = 0x000001,[CaseTitle] = 0x000001,[CaseUpper] = 0x000001,[CaseFold] = 0x000001}, NULL},
-   {0x000002, {[CaseLower] = 0x000002,[CaseTitle] = 0x000002,[CaseUpper] = 0x000002,[CaseFold] = 0x000002}, NULL},
-   {0x000003, {[CaseLower] = 0x000003,[CaseTitle] = 0x000003,[CaseUpper] = 0x000003,[CaseFold] = 0x000003}, NULL},
-   {0x000004, {[CaseLower] = 0x000004,[CaseTitle] = 0x000004,[CaseUpper] = 0x000004,[CaseFold] = 0x000004}, NULL},
-   {0x000005, {[CaseLower] = 0x000005,[CaseTitle] = 0x000005,[CaseUpper] = 0x000005,[CaseFold] = 0x000005}, NULL},
-   {0x000006, {[CaseLower] = 0x000006,[CaseTitle] = 0x000006,[CaseUpper] = 0x000006,[CaseFold] = 0x000006}, NULL},
-   {0x000007, {[CaseLower] = 0x000007,[CaseTitle] = 0x000007,[CaseUpper] = 0x000007,[CaseFold] = 0x000007}, NULL},
-   {0x000008, {[CaseLower] = 0x000008,[CaseTitle] = 0x000008,[CaseUpper] = 0x000008,[CaseFold] = 0x000008}, NULL},
-   {0x000009, {[CaseLower] = 0x000009,[CaseTitle] = 0x000009,[CaseUpper] = 0x000009,[CaseFold] = 0x000009}, NULL},
-   {0x00000a, {[CaseLower] = 0x00000a,[CaseTitle] = 0x00000a,[CaseUpper] = 0x00000a,[CaseFold] = 0x00000a}, NULL},
-   {0x00000b, {[CaseLower] = 0x00000b,[CaseTitle] = 0x00000b,[CaseUpper] = 0x00000b,[CaseFold] = 0x00000b}, NULL},
-   {0x00000c, {[CaseLower] = 0x00000c,[CaseTitle] = 0x00000c,[CaseUpper] = 0x00000c,[CaseFold] = 0x00000c}, NULL},
-   {0x00000d, {[CaseLower] = 0x00000d,[CaseTitle] = 0x00000d,[CaseUpper] = 0x00000d,[CaseFold] = 0x00000d}, NULL},
-   {0x00000e, {[CaseLower] = 0x00000e,[CaseTitle] = 0x00000e,[CaseUpper] = 0x00000e,[CaseFold] = 0x00000e}, NULL},
-   {0x00000f, {[CaseLower] = 0x00000f,[CaseTitle] = 0x00000f,[CaseUpper] = 0x00000f,[CaseFold] = 0x00000f}, NULL},
-   {0x000010, {[CaseLower] = 0x000010,[CaseTitle] = 0x000010,[CaseUpper] = 0x000010,[CaseFold] = 0x000010}, NULL},
-   {0x000011, {[CaseLower] = 0x000011,[CaseTitle] = 0x000011,[CaseUpper] = 0x000011,[CaseFold] = 0x000011}, NULL},
-   {0x000012, {[CaseLower] = 0x000012,[CaseTitle] = 0x000012,[CaseUpper] = 0x000012,[CaseFold] = 0x000012}, NULL},
-   {0x000013, {[CaseLower] = 0x000013,[CaseTitle] = 0x000013,[CaseUpper] = 0x000013,[CaseFold] = 0x000013}, NULL},
-   {0x000014, {[CaseLower] = 0x000014,[CaseTitle] = 0x000014,[CaseUpper] = 0x000014,[CaseFold] = 0x000014}, NULL},
-   {0x000015, {[CaseLower] = 0x000015,[CaseTitle] = 0x000015,[CaseUpper] = 0x000015,[CaseFold] = 0x000015}, NULL},
-   {0x000016, {[CaseLower] = 0x000016,[CaseTitle] = 0x000016,[CaseUpper] = 0x000016,[CaseFold] = 0x000016}, NULL},
-   {0x000017, {[CaseLower] = 0x000017,[CaseTitle] = 0x000017,[CaseUpper] = 0x000017,[CaseFold] = 0x000017}, NULL},
-   {0x000018, {[CaseLower] = 0x000018,[CaseTitle] = 0x000018,[CaseUpper] = 0x000018,[CaseFold] = 0x000018}, NULL},
-   {0x000019, {[CaseLower] = 0x000019,[CaseTitle] = 0x000019,[CaseUpper] = 0x000019,[CaseFold] = 0x000019}, NULL},
-   {0x00001a, {[CaseLower] = 0x00001a,[CaseTitle] = 0x00001a,[CaseUpper] = 0x00001a,[CaseFold] = 0x00001a}, NULL},
-   {0x00001b, {[CaseLower] = 0x00001b,[CaseTitle] = 0x00001b,[CaseUpper] = 0x00001b,[CaseFold] = 0x00001b}, NULL},
-   {0x00001c, {[CaseLower] = 0x00001c,[CaseTitle] = 0x00001c,[CaseUpper] = 0x00001c,[CaseFold] = 0x00001c}, NULL},
-   {0x00001d, {[CaseLower] = 0x00001d,[CaseTitle] = 0x00001d,[CaseUpper] = 0x00001d,[CaseFold] = 0x00001d}, NULL},
-   {0x00001e, {[CaseLower] = 0x00001e,[CaseTitle] = 0x00001e,[CaseUpper] = 0x00001e,[CaseFold] = 0x00001e}, NULL},
-   {0x00001f, {[CaseLower] = 0x00001f,[CaseTitle] = 0x00001f,[CaseUpper] = 0x00001f,[CaseFold] = 0x00001f}, NULL},
-   {0x000020, {[CaseLower] = 0x000020,[CaseTitle] = 0x000020,[CaseUpper] = 0x000020,[CaseFold] = 0x000020}, NULL},
-   {0x000021, {[CaseLower] = 0x000021,[CaseTitle] = 0x000021,[CaseUpper] = 0x000021,[CaseFold] = 0x000021}, NULL},
-   {0x000022, {[CaseLower] = 0x000022,[CaseTitle] = 0x000022,[CaseUpper] = 0x000022,[CaseFold] = 0x000022}, NULL},
-   {0x000023, {[CaseLower] = 0x000023,[CaseTitle] = 0x000023,[CaseUpper] = 0x000023,[CaseFold] = 0x000023}, NULL},
-   {0x000024, {[CaseLower] = 0x000024,[CaseTitle] = 0x000024,[CaseUpper] = 0x000024,[CaseFold] = 0x000024}, NULL},
-   {0x000025, {[CaseLower] = 0x000025,[CaseTitle] = 0x000025,[CaseUpper] = 0x000025,[CaseFold] = 0x000025}, NULL},
-   {0x000026, {[CaseLower] = 0x000026,[CaseTitle] = 0x000026,[CaseUpper] = 0x000026,[CaseFold] = 0x000026}, NULL},
-   {0x000027, {[CaseLower] = 0x000027,[CaseTitle] = 0x000027,[CaseUpper] = 0x000027,[CaseFold] = 0x000027}, NULL},
-   {0x000028, {[CaseLower] = 0x000028,[CaseTitle] = 0x000028,[CaseUpper] = 0x000028,[CaseFold] = 0x000028}, NULL},
-   {0x000029, {[CaseLower] = 0x000029,[CaseTitle] = 0x000029,[CaseUpper] = 0x000029,[CaseFold] = 0x000029}, NULL},
-   {0x00002a, {[CaseLower] = 0x00002a,[CaseTitle] = 0x00002a,[CaseUpper] = 0x00002a,[CaseFold] = 0x00002a}, NULL},
-   {0x00002b, {[CaseLower] = 0x00002b,[CaseTitle] = 0x00002b,[CaseUpper] = 0x00002b,[CaseFold] = 0x00002b}, NULL},
-   {0x00002c, {[CaseLower] = 0x00002c,[CaseTitle] = 0x00002c,[CaseUpper] = 0x00002c,[CaseFold] = 0x00002c}, NULL},
-   {0x00002d, {[CaseLower] = 0x00002d,[CaseTitle] = 0x00002d,[CaseUpper] = 0x00002d,[CaseFold] = 0x00002d}, NULL},
-   {0x00002e, {[CaseLower] = 0x00002e,[CaseTitle] = 0x00002e,[CaseUpper] = 0x00002e,[CaseFold] = 0x00002e}, NULL},
-   {0x00002f, {[CaseLower] = 0x00002f,[CaseTitle] = 0x00002f,[CaseUpper] = 0x00002f,[CaseFold] = 0x00002f}, NULL},
-   {0x000030, {[CaseLower] = 0x000030,[CaseTitle] = 0x000030,[CaseUpper] = 0x000030,[CaseFold] = 0x000030}, NULL},
-   {0x000031, {[CaseLower] = 0x000031,[CaseTitle] = 0x000031,[CaseUpper] = 0x000031,[CaseFold] = 0x000031}, NULL},
-   {0x000032, {[CaseLower] = 0x000032,[CaseTitle] = 0x000032,[CaseUpper] = 0x000032,[CaseFold] = 0x000032}, NULL},
-   {0x000033, {[CaseLower] = 0x000033,[CaseTitle] = 0x000033,[CaseUpper] = 0x000033,[CaseFold] = 0x000033}, NULL},
-   {0x000034, {[CaseLower] = 0x000034,[CaseTitle] = 0x000034,[CaseUpper] = 0x000034,[CaseFold] = 0x000034}, NULL},
-   {0x000035, {[CaseLower] = 0x000035,[CaseTitle] = 0x000035,[CaseUpper] = 0x000035,[CaseFold] = 0x000035}, NULL},
-   {0x000036, {[CaseLower] = 0x000036,[CaseTitle] = 0x000036,[CaseUpper] = 0x000036,[CaseFold] = 0x000036}, NULL},
-   {0x000037, {[CaseLower] = 0x000037,[CaseTitle] = 0x000037,[CaseUpper] = 0x000037,[CaseFold] = 0x000037}, NULL},
-   {0x000038, {[CaseLower] = 0x000038,[CaseTitle] = 0x000038,[CaseUpper] = 0x000038,[CaseFold] = 0x000038}, NULL},
-   {0x000039, {[CaseLower] = 0x000039,[CaseTitle] = 0x000039,[CaseUpper] = 0x000039,[CaseFold] = 0x000039}, NULL},
-   {0x00003a, {[CaseLower] = 0x00003a,[CaseTitle] = 0x00003a,[CaseUpper] = 0x00003a,[CaseFold] = 0x00003a}, NULL},
-   {0x00003b, {[CaseLower] = 0x00003b,[CaseTitle] = 0x00003b,[CaseUpper] = 0x00003b,[CaseFold] = 0x00003b}, NULL},
-   {0x00003c, {[CaseLower] = 0x00003c,[CaseTitle] = 0x00003c,[CaseUpper] = 0x00003c,[CaseFold] = 0x00003c}, NULL},
-   {0x00003d, {[CaseLower] = 0x00003d,[CaseTitle] = 0x00003d,[CaseUpper] = 0x00003d,[CaseFold] = 0x00003d}, NULL},
-   {0x00003e, {[CaseLower] = 0x00003e,[CaseTitle] = 0x00003e,[CaseUpper] = 0x00003e,[CaseFold] = 0x00003e}, NULL},
-   {0x00003f, {[CaseLower] = 0x00003f,[CaseTitle] = 0x00003f,[CaseUpper] = 0x00003f,[CaseFold] = 0x00003f}, NULL},
-   {0x000040, {[CaseLower] = 0x000040,[CaseTitle] = 0x000040,[CaseUpper] = 0x000040,[CaseFold] = 0x000040}, NULL},
-   {0x000041, {[CaseLower] = 0x000061,[CaseTitle] = 0x000041,[CaseUpper] = 0x000041,[CaseFold] = 0x000061}, NULL},
-   {0x000042, {[CaseLower] = 0x000062,[CaseTitle] = 0x000042,[CaseUpper] = 0x000042,[CaseFold] = 0x000062}, NULL},
-   {0x000043, {[CaseLower] = 0x000063,[CaseTitle] = 0x000043,[CaseUpper] = 0x000043,[CaseFold] = 0x000063}, NULL},
-   {0x000044, {[CaseLower] = 0x000064,[CaseTitle] = 0x000044,[CaseUpper] = 0x000044,[CaseFold] = 0x000064}, NULL},
-   {0x000045, {[CaseLower] = 0x000065,[CaseTitle] = 0x000045,[CaseUpper] = 0x000045,[CaseFold] = 0x000065}, NULL},
-   {0x000046, {[CaseLower] = 0x000066,[CaseTitle] = 0x000046,[CaseUpper] = 0x000046,[CaseFold] = 0x000066}, NULL},
-   {0x000047, {[CaseLower] = 0x000067,[CaseTitle] = 0x000047,[CaseUpper] = 0x000047,[CaseFold] = 0x000067}, NULL},
-   {0x000048, {[CaseLower] = 0x000068,[CaseTitle] = 0x000048,[CaseUpper] = 0x000048,[CaseFold] = 0x000068}, NULL},
-   {0x000049, {[CaseLower] = 0x000069,[CaseTitle] = 0x000049,[CaseUpper] = 0x000049,[CaseFold] = 0x000069}, NULL},
-   {0x00004a, {[CaseLower] = 0x00006a,[CaseTitle] = 0x00004a,[CaseUpper] = 0x00004a,[CaseFold] = 0x00006a}, NULL},
-   {0x00004b, {[CaseLower] = 0x00006b,[CaseTitle] = 0x00004b,[CaseUpper] = 0x00004b,[CaseFold] = 0x00006b}, NULL},
-   {0x00004c, {[CaseLower] = 0x00006c,[CaseTitle] = 0x00004c,[CaseUpper] = 0x00004c,[CaseFold] = 0x00006c}, NULL},
-   {0x00004d, {[CaseLower] = 0x00006d,[CaseTitle] = 0x00004d,[CaseUpper] = 0x00004d,[CaseFold] = 0x00006d}, NULL},
-   {0x00004e, {[CaseLower] = 0x00006e,[CaseTitle] = 0x00004e,[CaseUpper] = 0x00004e,[CaseFold] = 0x00006e}, NULL},
-   {0x00004f, {[CaseLower] = 0x00006f,[CaseTitle] = 0x00004f,[CaseUpper] = 0x00004f,[CaseFold] = 0x00006f}, NULL},
-   {0x000050, {[CaseLower] = 0x000070,[CaseTitle] = 0x000050,[CaseUpper] = 0x000050,[CaseFold] = 0x000070}, NULL},
-   {0x000051, {[CaseLower] = 0x000071,[CaseTitle] = 0x000051,[CaseUpper] = 0x000051,[CaseFold] = 0x000071}, NULL},
-   {0x000052, {[CaseLower] = 0x000072,[CaseTitle] = 0x000052,[CaseUpper] = 0x000052,[CaseFold] = 0x000072}, NULL},
-   {0x000053, {[CaseLower] = 0x000073,[CaseTitle] = 0x000053,[CaseUpper] = 0x000053,[CaseFold] = 0x000073}, NULL},
-   {0x000054, {[CaseLower] = 0x000074,[CaseTitle] = 0x000054,[CaseUpper] = 0x000054,[CaseFold] = 0x000074}, NULL},
-   {0x000055, {[CaseLower] = 0x000075,[CaseTitle] = 0x000055,[CaseUpper] = 0x000055,[CaseFold] = 0x000075}, NULL},
-   {0x000056, {[CaseLower] = 0x000076,[CaseTitle] = 0x000056,[CaseUpper] = 0x000056,[CaseFold] = 0x000076}, NULL},
-   {0x000057, {[CaseLower] = 0x000077,[CaseTitle] = 0x000057,[CaseUpper] = 0x000057,[CaseFold] = 0x000077}, NULL},
-   {0x000058, {[CaseLower] = 0x000078,[CaseTitle] = 0x000058,[CaseUpper] = 0x000058,[CaseFold] = 0x000078}, NULL},
-   {0x000059, {[CaseLower] = 0x000079,[CaseTitle] = 0x000059,[CaseUpper] = 0x000059,[CaseFold] = 0x000079}, NULL},
-   {0x00005a, {[CaseLower] = 0x00007a,[CaseTitle] = 0x00005a,[CaseUpper] = 0x00005a,[CaseFold] = 0x00007a}, NULL},
-   {0x00005b, {[CaseLower] = 0x00005b,[CaseTitle] = 0x00005b,[CaseUpper] = 0x00005b,[CaseFold] = 0x00005b}, NULL},
-   {0x00005c, {[CaseLower] = 0x00005c,[CaseTitle] = 0x00005c,[CaseUpper] = 0x00005c,[CaseFold] = 0x00005c}, NULL},
-   {0x00005d, {[CaseLower] = 0x00005d,[CaseTitle] = 0x00005d,[CaseUpper] = 0x00005d,[CaseFold] = 0x00005d}, NULL},
-   {0x00005e, {[CaseLower] = 0x00005e,[CaseTitle] = 0x00005e,[CaseUpper] = 0x00005e,[CaseFold] = 0x00005e}, NULL},
-   {0x00005f, {[CaseLower] = 0x00005f,[CaseTitle] = 0x00005f,[CaseUpper] = 0x00005f,[CaseFold] = 0x00005f}, NULL},
-   {0x000060, {[CaseLower] = 0x000060,[CaseTitle] = 0x000060,[CaseUpper] = 0x000060,[CaseFold] = 0x000060}, NULL},
-   {0x000061, {[CaseLower] = 0x000061,[CaseTitle] = 0x000041,[CaseUpper] = 0x000041,[CaseFold] = 0x000061}, NULL},
-   {0x000062, {[CaseLower] = 0x000062,[CaseTitle] = 0x000042,[CaseUpper] = 0x000042,[CaseFold] = 0x000062}, NULL},
-   {0x000063, {[CaseLower] = 0x000063,[CaseTitle] = 0x000043,[CaseUpper] = 0x000043,[CaseFold] = 0x000063}, NULL},
-   {0x000064, {[CaseLower] = 0x000064,[CaseTitle] = 0x000044,[CaseUpper] = 0x000044,[CaseFold] = 0x000064}, NULL},
-   {0x000065, {[CaseLower] = 0x000065,[CaseTitle] = 0x000045,[CaseUpper] = 0x000045,[CaseFold] = 0x000065}, NULL},
-   {0x000066, {[CaseLower] = 0x000066,[CaseTitle] = 0x000046,[CaseUpper] = 0x000046,[CaseFold] = 0x000066}, NULL},
-   {0x000067, {[CaseLower] = 0x000067,[CaseTitle] = 0x000047,[CaseUpper] = 0x000047,[CaseFold] = 0x000067}, NULL},
-   {0x000068, {[CaseLower] = 0x000068,[CaseTitle] = 0x000048,[CaseUpper] = 0x000048,[CaseFold] = 0x000068}, NULL},
-   {0x000069, {[CaseLower] = 0x000069,[CaseTitle] = 0x000049,[CaseUpper] = 0x000049,[CaseFold] = 0x000069}, NULL},
-   {0x00006a, {[CaseLower] = 0x00006a,[CaseTitle] = 0x00004a,[CaseUpper] = 0x00004a,[CaseFold] = 0x00006a}, NULL},
-   {0x00006b, {[CaseLower] = 0x00006b,[CaseTitle] = 0x00004b,[CaseUpper] = 0x00004b,[CaseFold] = 0x00006b}, NULL},
-   {0x00006c, {[CaseLower] = 0x00006c,[CaseTitle] = 0x00004c,[CaseUpper] = 0x00004c,[CaseFold] = 0x00006c}, NULL},
-   {0x00006d, {[CaseLower] = 0x00006d,[CaseTitle] = 0x00004d,[CaseUpper] = 0x00004d,[CaseFold] = 0x00006d}, NULL},
-   {0x00006e, {[CaseLower] = 0x00006e,[CaseTitle] = 0x00004e,[CaseUpper] = 0x00004e,[CaseFold] = 0x00006e}, NULL},
-   {0x00006f, {[CaseLower] = 0x00006f,[CaseTitle] = 0x00004f,[CaseUpper] = 0x00004f,[CaseFold] = 0x00006f}, NULL},
-   {0x000070, {[CaseLower] = 0x000070,[CaseTitle] = 0x000050,[CaseUpper] = 0x000050,[CaseFold] = 0x000070}, NULL},
-   {0x000071, {[CaseLower] = 0x000071,[CaseTitle] = 0x000051,[CaseUpper] = 0x000051,[CaseFold] = 0x000071}, NULL},
-   {0x000072, {[CaseLower] = 0x000072,[CaseTitle] = 0x000052,[CaseUpper] = 0x000052,[CaseFold] = 0x000072}, NULL},
-   {0x000073, {[CaseLower] = 0x000073,[CaseTitle] = 0x000053,[CaseUpper] = 0x000053,[CaseFold] = 0x000073}, NULL},
-   {0x000074, {[CaseLower] = 0x000074,[CaseTitle] = 0x000054,[CaseUpper] = 0x000054,[CaseFold] = 0x000074}, NULL},
-   {0x000075, {[CaseLower] = 0x000075,[CaseTitle] = 0x000055,[CaseUpper] = 0x000055,[CaseFold] = 0x000075}, NULL},
-   {0x000076, {[CaseLower] = 0x000076,[CaseTitle] = 0x000056,[CaseUpper] = 0x000056,[CaseFold] = 0x000076}, NULL},
-   {0x000077, {[CaseLower] = 0x000077,[CaseTitle] = 0x000057,[CaseUpper] = 0x000057,[CaseFold] = 0x000077}, NULL},
-   {0x000078, {[CaseLower] = 0x000078,[CaseTitle] = 0x000058,[CaseUpper] = 0x000058,[CaseFold] = 0x000078}, NULL},
-   {0x000079, {[CaseLower] = 0x000079,[CaseTitle] = 0x000059,[CaseUpper] = 0x000059,[CaseFold] = 0x000079}, NULL},
-   {0x00007a, {[CaseLower] = 0x00007a,[CaseTitle] = 0x00005a,[CaseUpper] = 0x00005a,[CaseFold] = 0x00007a}, NULL},
-   {0x00007b, {[CaseLower] = 0x00007b,[CaseTitle] = 0x00007b,[CaseUpper] = 0x00007b,[CaseFold] = 0x00007b}, NULL},
-   {0x00007c, {[CaseLower] = 0x00007c,[CaseTitle] = 0x00007c,[CaseUpper] = 0x00007c,[CaseFold] = 0x00007c}, NULL},
-   {0x00007d, {[CaseLower] = 0x00007d,[CaseTitle] = 0x00007d,[CaseUpper] = 0x00007d,[CaseFold] = 0x00007d}, NULL},
-   {0x00007e, {[CaseLower] = 0x00007e,[CaseTitle] = 0x00007e,[CaseUpper] = 0x00007e,[CaseFold] = 0x00007e}, NULL},
-   {0x00007f, {[CaseLower] = 0x00007f,[CaseTitle] = 0x00007f,[CaseUpper] = 0x00007f,[CaseFold] = 0x00007f}, NULL},
+   0x000000,                   /* reserved */
+   0x000000,                   /* U+000000 */
+   0x000001,                   /* U+000001 */
+   0x000002,                   /* U+000002 */
+   0x000003,                   /* U+000003 */
+   0x000004,                   /* U+000004 */
+   0x000005,                   /* U+000005 */
+   0x000006,                   /* U+000006 */
+   0x000007,                   /* U+000007 */
+   0x000008,                   /* U+000008 */
+   0x000009,                   /* U+000009 */
+   0x00000a,                   /* U+00000a */
+   0x00000b,                   /* U+00000b */
+   0x00000c,                   /* U+00000c */
+   0x00000d,                   /* U+00000d */
+   0x00000e,                   /* U+00000e */
+   0x00000f,                   /* U+00000f */
+   0x000010,                   /* U+000010 */
+   0x000011,                   /* U+000011 */
+   0x000012,                   /* U+000012 */
+   0x000013,                   /* U+000013 */
+   0x000014,                   /* U+000014 */
+   0x000015,                   /* U+000015 */
+   0x000016,                   /* U+000016 */
+   0x000017,                   /* U+000017 */
+   0x000018,                   /* U+000018 */
+   0x000019,                   /* U+000019 */
+   0x00001a,                   /* U+00001a */
+   0x00001b,                   /* U+00001b */
+   0x00001c,                   /* U+00001c */
+   0x00001d,                   /* U+00001d */
+   0x00001e,                   /* U+00001e */
+   0x00001f,                   /* U+00001f */
+   0x000020,                   /* U+000020 */
+   0x000021,                   /* U+000021 */
+   0x000022,                   /* U+000022 */
+   0x000023,                   /* U+000023 */
+   0x000024,                   /* U+000024 */
+   0x000025,                   /* U+000025 */
+   0x000026,                   /* U+000026 */
+   0x000027,                   /* U+000027 */
+   0x000028,                   /* U+000028 */
+   0x000029,                   /* U+000029 */
+   0x00002a,                   /* U+00002a */
+   0x00002b,                   /* U+00002b */
+   0x00002c,                   /* U+00002c */
+   0x00002d,                   /* U+00002d */
+   0x00002e,                   /* U+00002e */
+   0x00002f,                   /* U+00002f */
+   0x000030,                   /* U+000030 */
+   0x000031,                   /* U+000031 */
+   0x000032,                   /* U+000032 */
+   0x000033,                   /* U+000033 */
+   0x000034,                   /* U+000034 */
+   0x000035,                   /* U+000035 */
+   0x000036,                   /* U+000036 */
+   0x000037,                   /* U+000037 */
+   0x000038,                   /* U+000038 */
+   0x000039,                   /* U+000039 */
+   0x00003a,                   /* U+00003a */
+   0x00003b,                   /* U+00003b */
+   0x00003c,                   /* U+00003c */
+   0x00003d,                   /* U+00003d */
+   0x00003e,                   /* U+00003e */
+   0x00003f,                   /* U+00003f */
+   0x000040,                   /* U+000040 */
+   0x000041,                   /* U+000041 */
+   0x000042,                   /* U+000042 */
+   0x000043,                   /* U+000043 */
+   0x000044,                   /* U+000044 */
+   0x000045,                   /* U+000045 */
+   0x000046,                   /* U+000046 */
+   0x000047,                   /* U+000047 */
+   0x000048,                   /* U+000048 */
+   0x000049,                   /* U+000049 */
+   0x00004a,                   /* U+00004a */
+   0x00004b,                   /* U+00004b */
+   0x00004c,                   /* U+00004c */
+   0x00004d,                   /* U+00004d */
+   0x00004e,                   /* U+00004e */
+   0x00004f,                   /* U+00004f */
+   0x000050,                   /* U+000050 */
+   0x000051,                   /* U+000051 */
+   0x000052,                   /* U+000052 */
+   0x000053,                   /* U+000053 */
+   0x000054,                   /* U+000054 */
+   0x000055,                   /* U+000055 */
+   0x000056,                   /* U+000056 */
+   0x000057,                   /* U+000057 */
+   0x000058,                   /* U+000058 */
+   0x000059,                   /* U+000059 */
+   0x00005a,                   /* U+00005a */
+   0x00005b,                   /* U+00005b */
+   0x00005c,                   /* U+00005c */
+   0x00005d,                   /* U+00005d */
+   0x00005e,                   /* U+00005e */
+   0x00005f,                   /* U+00005f */
+   0x000060,                   /* U+000060 */
+   0x000041,                   /* U+000061 */
+   0x000042,                   /* U+000062 */
+   0x000043,                   /* U+000063 */
+   0x000044,                   /* U+000064 */
+   0x000045,                   /* U+000065 */
+   0x000046,                   /* U+000066 */
+   0x000047,                   /* U+000067 */
+   0x000048,                   /* U+000068 */
+   0x000049,                   /* U+000069 */
+   0x00004a,                   /* U+00006a */
+   0x00004b,                   /* U+00006b */
+   0x00004c,                   /* U+00006c */
+   0x00004d,                   /* U+00006d */
+   0x00004e,                   /* U+00006e */
+   0x00004f,                   /* U+00006f */
+   0x000050,                   /* U+000070 */
+   0x000051,                   /* U+000071 */
+   0x000052,                   /* U+000072 */
+   0x000053,                   /* U+000073 */
+   0x000054,                   /* U+000074 */
+   0x000055,                   /* U+000075 */
+   0x000056,                   /* U+000076 */
+   0x000057,                   /* U+000077 */
+   0x000058,                   /* U+000078 */
+   0x000059,                   /* U+000079 */
+   0x00005a,                   /* U+00007a */
+   0x00007b,                   /* U+00007b */
+   0x00007c,                   /* U+00007c */
+   0x00007d,                   /* U+00007d */
+   0x00007e,                   /* U+00007e */
+   0x00007f,                   /* U+00007f */
+   0x00039c,                   /* U+0000b5 */
+   0x0000c0,                   /* U+0000c0 */
+   0x0000c1,                   /* U+0000c1 */
+   0x0000c2,                   /* U+0000c2 */
+   0x0000c3,                   /* U+0000c3 */
+   0x0000c4,                   /* U+0000c4 */
+   0x0000c5,                   /* U+0000c5 */
+   0x0000c6,                   /* U+0000c6 */
+   0x0000c7,                   /* U+0000c7 */
+   0x0000c8,                   /* U+0000c8 */
+   0x0000c9,                   /* U+0000c9 */
+   0x0000ca,                   /* U+0000ca */
+   0x0000cb,                   /* U+0000cb */
+   0x0000cc,                   /* U+0000cc */
+   0x0000cd,                   /* U+0000cd */
+   0x0000ce,                   /* U+0000ce */
+   0x0000cf,                   /* U+0000cf */
+   0x0000d0,                   /* U+0000d0 */
+   0x0000d1,                   /* U+0000d1 */
+   0x0000d2,                   /* U+0000d2 */
+   0x0000d3,                   /* U+0000d3 */
+   0x0000d4,                   /* U+0000d4 */
+   0x0000d5,                   /* U+0000d5 */
+   0x0000d6,                   /* U+0000d6 */
+   0x0000d8,                   /* U+0000d8 */
+   0x0000d9,                   /* U+0000d9 */
+   0x0000da,                   /* U+0000da */
+   0x0000db,                   /* U+0000db */
+   0x0000dc,                   /* U+0000dc */
+   0x0000dd,                   /* U+0000dd */
+   0x0000de,                   /* U+0000de */
+   0x0000df,                   /* U+0000df */
+   0x000178,                   /* U+0000ff */
+   0x000100,                   /* U+000100 */
+   0x000102,                   /* U+000102 */
+   0x000104,                   /* U+000104 */
+   0x000106,                   /* U+000106 */
+   0x000108,                   /* U+000108 */
+   0x00010a,                   /* U+00010a */
+   0x00010c,                   /* U+00010c */
+   0x00010e,                   /* U+00010e */
+   0x000110,                   /* U+000110 */
+   0x000112,                   /* U+000112 */
+   0x000114,                   /* U+000114 */
+   0x000116,                   /* U+000116 */
+   0x000118,                   /* U+000118 */
+   0x00011a,                   /* U+00011a */
+   0x00011c,                   /* U+00011c */
+   0x00011e,                   /* U+00011e */
+   0x000120,                   /* U+000120 */
+   0x000122,                   /* U+000122 */
+   0x000124,                   /* U+000124 */
+   0x000126,                   /* U+000126 */
+   0x000128,                   /* U+000128 */
+   0x00012a,                   /* U+00012a */
+   0x00012c,                   /* U+00012c */
+   0x00012e,                   /* U+00012e */
+   0x000130,                   /* U+000130 */
+   0x000049,                   /* U+000131 */
+   0x000132,                   /* U+000132 */
+   0x000134,                   /* U+000134 */
+   0x000136,                   /* U+000136 */
+   0x000139,                   /* U+000139 */
+   0x00013b,                   /* U+00013b */
+   0x00013d,                   /* U+00013d */
+   0x00013f,                   /* U+00013f */
+   0x000141,                   /* U+000141 */
+   0x000143,                   /* U+000143 */
+   0x000145,                   /* U+000145 */
+   0x000147,                   /* U+000147 */
+   0x000149,                   /* U+000149 */
+   0x00014a,                   /* U+00014a */
+   0x00014c,                   /* U+00014c */
+   0x00014e,                   /* U+00014e */
+   0x000150,                   /* U+000150 */
+   0x000152,                   /* U+000152 */
+   0x000154,                   /* U+000154 */
+   0x000156,                   /* U+000156 */
+   0x000158,                   /* U+000158 */
+   0x00015a,                   /* U+00015a */
+   0x00015c,                   /* U+00015c */
+   0x00015e,                   /* U+00015e */
+   0x000160,                   /* U+000160 */
+   0x000162,                   /* U+000162 */
+   0x000164,                   /* U+000164 */
+   0x000166,                   /* U+000166 */
+   0x000168,                   /* U+000168 */
+   0x00016a,                   /* U+00016a */
+   0x00016c,                   /* U+00016c */
+   0x00016e,                   /* U+00016e */
+   0x000170,                   /* U+000170 */
+   0x000172,                   /* U+000172 */
+   0x000174,                   /* U+000174 */
+   0x000176,                   /* U+000176 */
+   0x000179,                   /* U+000179 */
+   0x00017b,                   /* U+00017b */
+   0x00017d,                   /* U+00017d */
+   0x000053,                   /* U+00017f */
+   0x000243,                   /* U+000180 */
+   0x000181,                   /* U+000181 */
+   0x000182,                   /* U+000182 */
+   0x000184,                   /* U+000184 */
+   0x000186,                   /* U+000186 */
+   0x000187,                   /* U+000187 */
+   0x000189,                   /* U+000189 */
+   0x00018a,                   /* U+00018a */
+   0x00018b,                   /* U+00018b */
+   0x00018e,                   /* U+00018e */
+   0x00018f,                   /* U+00018f */
+   0x000190,                   /* U+000190 */
+   0x000191,                   /* U+000191 */
+   0x000193,                   /* U+000193 */
+   0x000194,                   /* U+000194 */
+   0x0001f6,                   /* U+000195 */
+   0x000196,                   /* U+000196 */
+   0x000197,                   /* U+000197 */
+   0x000198,                   /* U+000198 */
+   0x00023d,                   /* U+00019a */
+   0x00019c,                   /* U+00019c */
+   0x00019d,                   /* U+00019d */
+   0x000220,                   /* U+00019e */
+   0x00019f,                   /* U+00019f */
+   0x0001a0,                   /* U+0001a0 */
+   0x0001a2,                   /* U+0001a2 */
+   0x0001a4,                   /* U+0001a4 */
+   0x0001a6,                   /* U+0001a6 */
+   0x0001a7,                   /* U+0001a7 */
+   0x0001a9,                   /* U+0001a9 */
+   0x0001ac,                   /* U+0001ac */
+   0x0001ae,                   /* U+0001ae */
+   0x0001af,                   /* U+0001af */
+   0x0001b1,                   /* U+0001b1 */
+   0x0001b2,                   /* U+0001b2 */
+   0x0001b3,                   /* U+0001b3 */
+   0x0001b5,                   /* U+0001b5 */
+   0x0001b7,                   /* U+0001b7 */
+   0x0001b8,                   /* U+0001b8 */
+   0x0001bc,                   /* U+0001bc */
+   0x0001f7,                   /* U+0001bf */
+   0x0001c5,                   /* U+0001c4 */
+   0x0001c8,                   /* U+0001c7 */
+   0x0001cb,                   /* U+0001ca */
+   0x0001cd,                   /* U+0001cd */
+   0x0001cf,                   /* U+0001cf */
+   0x0001d1,                   /* U+0001d1 */
+   0x0001d3,                   /* U+0001d3 */
+   0x0001d5,                   /* U+0001d5 */
+   0x0001d7,                   /* U+0001d7 */
+   0x0001d9,                   /* U+0001d9 */
+   0x0001db,                   /* U+0001db */
+   0x0001de,                   /* U+0001de */
+   0x0001e0,                   /* U+0001e0 */
+   0x0001e2,                   /* U+0001e2 */
+   0x0001e4,                   /* U+0001e4 */
+   0x0001e6,                   /* U+0001e6 */
+   0x0001e8,                   /* U+0001e8 */
+   0x0001ea,                   /* U+0001ea */
+   0x0001ec,                   /* U+0001ec */
+   0x0001ee,                   /* U+0001ee */
+   0x0001f0,                   /* U+0001f0 */
+   0x0001f2,                   /* U+0001f1 */
+   0x0001f4,                   /* U+0001f4 */
+   0x0001f8,                   /* U+0001f8 */
+   0x0001fa,                   /* U+0001fa */
+   0x0001fc,                   /* U+0001fc */
+   0x0001fe,                   /* U+0001fe */
+   0x000200,                   /* U+000200 */
+   0x000202,                   /* U+000202 */
+   0x000204,                   /* U+000204 */
+   0x000206,                   /* U+000206 */
+   0x000208,                   /* U+000208 */
+   0x00020a,                   /* U+00020a */
+   0x00020c,                   /* U+00020c */
+   0x00020e,                   /* U+00020e */
+   0x000210,                   /* U+000210 */
+   0x000212,                   /* U+000212 */
+   0x000214,                   /* U+000214 */
+   0x000216,                   /* U+000216 */
+   0x000218,                   /* U+000218 */
+   0x00021a,                   /* U+00021a */
+   0x00021c,                   /* U+00021c */
+   0x00021e,                   /* U+00021e */
+   0x000222,                   /* U+000222 */
+   0x000224,                   /* U+000224 */
+   0x000226,                   /* U+000226 */
+   0x000228,                   /* U+000228 */
+   0x00022a,                   /* U+00022a */
+   0x00022c,                   /* U+00022c */
+   0x00022e,                   /* U+00022e */
+   0x000230,                   /* U+000230 */
+   0x000232,                   /* U+000232 */
+   0x00023a,                   /* U+00023a */
+   0x00023b,                   /* U+00023b */
+   0x00023e,                   /* U+00023e */
+   0x002c7e,                   /* U+00023f */
+   0x002c7f,                   /* U+000240 */
+   0x000241,                   /* U+000241 */
+   0x000244,                   /* U+000244 */
+   0x000245,                   /* U+000245 */
+   0x000246,                   /* U+000246 */
+   0x000248,                   /* U+000248 */
+   0x00024a,                   /* U+00024a */
+   0x00024c,                   /* U+00024c */
+   0x00024e,                   /* U+00024e */
+   0x002c6f,                   /* U+000250 */
+   0x002c6d,                   /* U+000251 */
+   0x002c70,                   /* U+000252 */
+   0x00a7ab,                   /* U+00025c */
+   0x00a7ac,                   /* U+000261 */
+   0x00a78d,                   /* U+000265 */
+   0x00a7aa,                   /* U+000266 */
+   0x00a7ae,                   /* U+00026a */
+   0x002c62,                   /* U+00026b */
+   0x00a7ad,                   /* U+00026c */
+   0x002c6e,                   /* U+000271 */
+   0x002c64,                   /* U+00027d */
+   0x00a7c5,                   /* U+000282 */
+   0x00a7b1,                   /* U+000287 */
+   0x00a7b2,                   /* U+00029d */
+   0x00a7b0,                   /* U+00029e */
+   0x000399,                   /* U+000345 */
+   0x000370,                   /* U+000370 */
+   0x000372,                   /* U+000372 */
+   0x000376,                   /* U+000376 */
+   0x0003fd,                   /* U+00037b */
+   0x0003fe,                   /* U+00037c */
+   0x0003ff,                   /* U+00037d */
+   0x00037f,                   /* U+00037f */
+   0x000386,                   /* U+000386 */
+   0x000388,                   /* U+000388 */
+   0x000389,                   /* U+000389 */
+   0x00038a,                   /* U+00038a */
+   0x00038c,                   /* U+00038c */
+   0x00038e,                   /* U+00038e */
+   0x00038f,                   /* U+00038f */
+   0x000390,                   /* U+000390 */
+   0x000391,                   /* U+000391 */
+   0x000392,                   /* U+000392 */
+   0x000393,                   /* U+000393 */
+   0x000394,                   /* U+000394 */
+   0x000395,                   /* U+000395 */
+   0x000396,                   /* U+000396 */
+   0x000397,                   /* U+000397 */
+   0x000398,                   /* U+000398 */
+   0x000399,                   /* U+000399 */
+   0x00039a,                   /* U+00039a */
+   0x00039b,                   /* U+00039b */
+   0x00039c,                   /* U+00039c */
+   0x00039d,                   /* U+00039d */
+   0x00039e,                   /* U+00039e */
+   0x00039f,                   /* U+00039f */
+   0x0003a0,                   /* U+0003a0 */
+   0x0003a1,                   /* U+0003a1 */
+   0x0003a3,                   /* U+0003a3 */
+   0x0003a4,                   /* U+0003a4 */
+   0x0003a5,                   /* U+0003a5 */
+   0x0003a6,                   /* U+0003a6 */
+   0x0003a7,                   /* U+0003a7 */
+   0x0003a8,                   /* U+0003a8 */
+   0x0003a9,                   /* U+0003a9 */
+   0x0003aa,                   /* U+0003aa */
+   0x0003ab,                   /* U+0003ab */
+   0x0003b0,                   /* U+0003b0 */
+   0x0003a3,                   /* U+0003c2 */
+   0x0003a3,                   /* U+0003c3 */
+   0x0003cf,                   /* U+0003cf */
+   0x000392,                   /* U+0003d0 */
+   0x000398,                   /* U+0003d1 */
+   0x0003a6,                   /* U+0003d5 */
+   0x0003a0,                   /* U+0003d6 */
+   0x0003d8,                   /* U+0003d8 */
+   0x0003da,                   /* U+0003da */
+   0x0003dc,                   /* U+0003dc */
+   0x0003de,                   /* U+0003de */
+   0x0003e0,                   /* U+0003e0 */
+   0x0003e2,                   /* U+0003e2 */
+   0x0003e4,                   /* U+0003e4 */
+   0x0003e6,                   /* U+0003e6 */
+   0x0003e8,                   /* U+0003e8 */
+   0x0003ea,                   /* U+0003ea */
+   0x0003ec,                   /* U+0003ec */
+   0x0003ee,                   /* U+0003ee */
+   0x00039a,                   /* U+0003f0 */
+   0x0003a1,                   /* U+0003f1 */
+   0x0003f9,                   /* U+0003f2 */
+   0x0003f4,                   /* U+0003f4 */
+   0x000395,                   /* U+0003f5 */
+   0x0003f7,                   /* U+0003f7 */
+   0x0003fa,                   /* U+0003fa */
+   0x000400,                   /* U+000400 */
+   0x000401,                   /* U+000401 */
+   0x000402,                   /* U+000402 */
+   0x000403,                   /* U+000403 */
+   0x000404,                   /* U+000404 */
+   0x000405,                   /* U+000405 */
+   0x000406,                   /* U+000406 */
+   0x000407,                   /* U+000407 */
+   0x000408,                   /* U+000408 */
+   0x000409,                   /* U+000409 */
+   0x00040a,                   /* U+00040a */
+   0x00040b,                   /* U+00040b */
+   0x00040c,                   /* U+00040c */
+   0x00040d,                   /* U+00040d */
+   0x00040e,                   /* U+00040e */
+   0x00040f,                   /* U+00040f */
+   0x000410,                   /* U+000410 */
+   0x000411,                   /* U+000411 */
+   0x000412,                   /* U+000412 */
+   0x000413,                   /* U+000413 */
+   0x000414,                   /* U+000414 */
+   0x000415,                   /* U+000415 */
+   0x000416,                   /* U+000416 */
+   0x000417,                   /* U+000417 */
+   0x000418,                   /* U+000418 */
+   0x000419,                   /* U+000419 */
+   0x00041a,                   /* U+00041a */
+   0x00041b,                   /* U+00041b */
+   0x00041c,                   /* U+00041c */
+   0x00041d,                   /* U+00041d */
+   0x00041e,                   /* U+00041e */
+   0x00041f,                   /* U+00041f */
+   0x000420,                   /* U+000420 */
+   0x000421,                   /* U+000421 */
+   0x000422,                   /* U+000422 */
+   0x000423,                   /* U+000423 */
+   0x000424,                   /* U+000424 */
+   0x000425,                   /* U+000425 */
+   0x000426,                   /* U+000426 */
+   0x000427,                   /* U+000427 */
+   0x000428,                   /* U+000428 */
+   0x000429,                   /* U+000429 */
+   0x00042a,                   /* U+00042a */
+   0x00042b,                   /* U+00042b */
+   0x00042c,                   /* U+00042c */
+   0x00042d,                   /* U+00042d */
+   0x00042e,                   /* U+00042e */
+   0x00042f,                   /* U+00042f */
+   0x000460,                   /* U+000460 */
+   0x000462,                   /* U+000462 */
+   0x000464,                   /* U+000464 */
+   0x000466,                   /* U+000466 */
+   0x000468,                   /* U+000468 */
+   0x00046a,                   /* U+00046a */
+   0x00046c,                   /* U+00046c */
+   0x00046e,                   /* U+00046e */
+   0x000470,                   /* U+000470 */
+   0x000472,                   /* U+000472 */
+   0x000474,                   /* U+000474 */
+   0x000476,                   /* U+000476 */
+   0x000478,                   /* U+000478 */
+   0x00047a,                   /* U+00047a */
+   0x00047c,                   /* U+00047c */
+   0x00047e,                   /* U+00047e */
+   0x000480,                   /* U+000480 */
+   0x00048a,                   /* U+00048a */
+   0x00048c,                   /* U+00048c */
+   0x00048e,                   /* U+00048e */
+   0x000490,                   /* U+000490 */
+   0x000492,                   /* U+000492 */
+   0x000494,                   /* U+000494 */
+   0x000496,                   /* U+000496 */
+   0x000498,                   /* U+000498 */
+   0x00049a,                   /* U+00049a */
+   0x00049c,                   /* U+00049c */
+   0x00049e,                   /* U+00049e */
+   0x0004a0,                   /* U+0004a0 */
+   0x0004a2,                   /* U+0004a2 */
+   0x0004a4,                   /* U+0004a4 */
+   0x0004a6,                   /* U+0004a6 */
+   0x0004a8,                   /* U+0004a8 */
+   0x0004aa,                   /* U+0004aa */
+   0x0004ac,                   /* U+0004ac */
+   0x0004ae,                   /* U+0004ae */
+   0x0004b0,                   /* U+0004b0 */
+   0x0004b2,                   /* U+0004b2 */
+   0x0004b4,                   /* U+0004b4 */
+   0x0004b6,                   /* U+0004b6 */
+   0x0004b8,                   /* U+0004b8 */
+   0x0004ba,                   /* U+0004ba */
+   0x0004bc,                   /* U+0004bc */
+   0x0004be,                   /* U+0004be */
+   0x0004c0,                   /* U+0004c0 */
+   0x0004c1,                   /* U+0004c1 */
+   0x0004c3,                   /* U+0004c3 */
+   0x0004c5,                   /* U+0004c5 */
+   0x0004c7,                   /* U+0004c7 */
+   0x0004c9,                   /* U+0004c9 */
+   0x0004cb,                   /* U+0004cb */
+   0x0004cd,                   /* U+0004cd */
+   0x0004d0,                   /* U+0004d0 */
+   0x0004d2,                   /* U+0004d2 */
+   0x0004d4,                   /* U+0004d4 */
+   0x0004d6,                   /* U+0004d6 */
+   0x0004d8,                   /* U+0004d8 */
+   0x0004da,                   /* U+0004da */
+   0x0004dc,                   /* U+0004dc */
+   0x0004de,                   /* U+0004de */
+   0x0004e0,                   /* U+0004e0 */
+   0x0004e2,                   /* U+0004e2 */
+   0x0004e4,                   /* U+0004e4 */
+   0x0004e6,                   /* U+0004e6 */
+   0x0004e8,                   /* U+0004e8 */
+   0x0004ea,                   /* U+0004ea */
+   0x0004ec,                   /* U+0004ec */
+   0x0004ee,                   /* U+0004ee */
+   0x0004f0,                   /* U+0004f0 */
+   0x0004f2,                   /* U+0004f2 */
+   0x0004f4,                   /* U+0004f4 */
+   0x0004f6,                   /* U+0004f6 */
+   0x0004f8,                   /* U+0004f8 */
+   0x0004fa,                   /* U+0004fa */
+   0x0004fc,                   /* U+0004fc */
+   0x0004fe,                   /* U+0004fe */
+   0x000500,                   /* U+000500 */
+   0x000502,                   /* U+000502 */
+   0x000504,                   /* U+000504 */
+   0x000506,                   /* U+000506 */
+   0x000508,                   /* U+000508 */
+   0x00050a,                   /* U+00050a */
+   0x00050c,                   /* U+00050c */
+   0x00050e,                   /* U+00050e */
+   0x000510,                   /* U+000510 */
+   0x000512,                   /* U+000512 */
+   0x000514,                   /* U+000514 */
+   0x000516,                   /* U+000516 */
+   0x000518,                   /* U+000518 */
+   0x00051a,                   /* U+00051a */
+   0x00051c,                   /* U+00051c */
+   0x00051e,                   /* U+00051e */
+   0x000520,                   /* U+000520 */
+   0x000522,                   /* U+000522 */
+   0x000524,                   /* U+000524 */
+   0x000526,                   /* U+000526 */
+   0x000528,                   /* U+000528 */
+   0x00052a,                   /* U+00052a */
+   0x00052c,                   /* U+00052c */
+   0x00052e,                   /* U+00052e */
+   0x000531,                   /* U+000531 */
+   0x000532,                   /* U+000532 */
+   0x000533,                   /* U+000533 */
+   0x000534,                   /* U+000534 */
+   0x000535,                   /* U+000535 */
+   0x000536,                   /* U+000536 */
+   0x000537,                   /* U+000537 */
+   0x000538,                   /* U+000538 */
+   0x000539,                   /* U+000539 */
+   0x00053a,                   /* U+00053a */
+   0x00053b,                   /* U+00053b */
+   0x00053c,                   /* U+00053c */
+   0x00053d,                   /* U+00053d */
+   0x00053e,                   /* U+00053e */
+   0x00053f,                   /* U+00053f */
+   0x000540,                   /* U+000540 */
+   0x000541,                   /* U+000541 */
+   0x000542,                   /* U+000542 */
+   0x000543,                   /* U+000543 */
+   0x000544,                   /* U+000544 */
+   0x000545,                   /* U+000545 */
+   0x000546,                   /* U+000546 */
+   0x000547,                   /* U+000547 */
+   0x000548,                   /* U+000548 */
+   0x000549,                   /* U+000549 */
+   0x00054a,                   /* U+00054a */
+   0x00054b,                   /* U+00054b */
+   0x00054c,                   /* U+00054c */
+   0x00054d,                   /* U+00054d */
+   0x00054e,                   /* U+00054e */
+   0x00054f,                   /* U+00054f */
+   0x000550,                   /* U+000550 */
+   0x000551,                   /* U+000551 */
+   0x000552,                   /* U+000552 */
+   0x000553,                   /* U+000553 */
+   0x000554,                   /* U+000554 */
+   0x000555,                   /* U+000555 */
+   0x000556,                   /* U+000556 */
+   0x000587,                   /* U+000587 */
+   0x0010a0,                   /* U+0010a0 */
+   0x0010a1,                   /* U+0010a1 */
+   0x0010a2,                   /* U+0010a2 */
+   0x0010a3,                   /* U+0010a3 */
+   0x0010a4,                   /* U+0010a4 */
+   0x0010a5,                   /* U+0010a5 */
+   0x0010a6,                   /* U+0010a6 */
+   0x0010a7,                   /* U+0010a7 */
+   0x0010a8,                   /* U+0010a8 */
+   0x0010a9,                   /* U+0010a9 */
+   0x0010aa,                   /* U+0010aa */
+   0x0010ab,                   /* U+0010ab */
+   0x0010ac,                   /* U+0010ac */
+   0x0010ad,                   /* U+0010ad */
+   0x0010ae,                   /* U+0010ae */
+   0x0010af,                   /* U+0010af */
+   0x0010b0,                   /* U+0010b0 */
+   0x0010b1,                   /* U+0010b1 */
+   0x0010b2,                   /* U+0010b2 */
+   0x0010b3,                   /* U+0010b3 */
+   0x0010b4,                   /* U+0010b4 */
+   0x0010b5,                   /* U+0010b5 */
+   0x0010b6,                   /* U+0010b6 */
+   0x0010b7,                   /* U+0010b7 */
+   0x0010b8,                   /* U+0010b8 */
+   0x0010b9,                   /* U+0010b9 */
+   0x0010ba,                   /* U+0010ba */
+   0x0010bb,                   /* U+0010bb */
+   0x0010bc,                   /* U+0010bc */
+   0x0010bd,                   /* U+0010bd */
+   0x0010be,                   /* U+0010be */
+   0x0010bf,                   /* U+0010bf */
+   0x0010c0,                   /* U+0010c0 */
+   0x0010c1,                   /* U+0010c1 */
+   0x0010c2,                   /* U+0010c2 */
+   0x0010c3,                   /* U+0010c3 */
+   0x0010c4,                   /* U+0010c4 */
+   0x0010c5,                   /* U+0010c5 */
+   0x0010c7,                   /* U+0010c7 */
+   0x0010cd,                   /* U+0010cd */
+   0x0010d0,                   /* U+0010d0 */
+   0x0010d1,                   /* U+0010d1 */
+   0x0010d2,                   /* U+0010d2 */
+   0x0010d3,                   /* U+0010d3 */
+   0x0010d4,                   /* U+0010d4 */
+   0x0010d5,                   /* U+0010d5 */
+   0x0010d6,                   /* U+0010d6 */
+   0x0010d7,                   /* U+0010d7 */
+   0x0010d8,                   /* U+0010d8 */
+   0x0010d9,                   /* U+0010d9 */
+   0x0010da,                   /* U+0010da */
+   0x0010db,                   /* U+0010db */
+   0x0010dc,                   /* U+0010dc */
+   0x0010dd,                   /* U+0010dd */
+   0x0010de,                   /* U+0010de */
+   0x0010df,                   /* U+0010df */
+   0x0010e0,                   /* U+0010e0 */
+   0x0010e1,                   /* U+0010e1 */
+   0x0010e2,                   /* U+0010e2 */
+   0x0010e3,                   /* U+0010e3 */
+   0x0010e4,                   /* U+0010e4 */
+   0x0010e5,                   /* U+0010e5 */
+   0x0010e6,                   /* U+0010e6 */
+   0x0010e7,                   /* U+0010e7 */
+   0x0010e8,                   /* U+0010e8 */
+   0x0010e9,                   /* U+0010e9 */
+   0x0010ea,                   /* U+0010ea */
+   0x0010eb,                   /* U+0010eb */
+   0x0010ec,                   /* U+0010ec */
+   0x0010ed,                   /* U+0010ed */
+   0x0010ee,                   /* U+0010ee */
+   0x0010ef,                   /* U+0010ef */
+   0x0010f0,                   /* U+0010f0 */
+   0x0010f1,                   /* U+0010f1 */
+   0x0010f2,                   /* U+0010f2 */
+   0x0010f3,                   /* U+0010f3 */
+   0x0010f4,                   /* U+0010f4 */
+   0x0010f5,                   /* U+0010f5 */
+   0x0010f6,                   /* U+0010f6 */
+   0x0010f7,                   /* U+0010f7 */
+   0x0010f8,                   /* U+0010f8 */
+   0x0010f9,                   /* U+0010f9 */
+   0x0010fa,                   /* U+0010fa */
+   0x0010fd,                   /* U+0010fd */
+   0x0010fe,                   /* U+0010fe */
+   0x0010ff,                   /* U+0010ff */
+   0x0013a0,                   /* U+0013a0 */
+   0x0013a1,                   /* U+0013a1 */
+   0x0013a2,                   /* U+0013a2 */
+   0x0013a3,                   /* U+0013a3 */
+   0x0013a4,                   /* U+0013a4 */
+   0x0013a5,                   /* U+0013a5 */
+   0x0013a6,                   /* U+0013a6 */
+   0x0013a7,                   /* U+0013a7 */
+   0x0013a8,                   /* U+0013a8 */
+   0x0013a9,                   /* U+0013a9 */
+   0x0013aa,                   /* U+0013aa */
+   0x0013ab,                   /* U+0013ab */
+   0x0013ac,                   /* U+0013ac */
+   0x0013ad,                   /* U+0013ad */
+   0x0013ae,                   /* U+0013ae */
+   0x0013af,                   /* U+0013af */
+   0x0013b0,                   /* U+0013b0 */
+   0x0013b1,                   /* U+0013b1 */
+   0x0013b2,                   /* U+0013b2 */
+   0x0013b3,                   /* U+0013b3 */
+   0x0013b4,                   /* U+0013b4 */
+   0x0013b5,                   /* U+0013b5 */
+   0x0013b6,                   /* U+0013b6 */
+   0x0013b7,                   /* U+0013b7 */
+   0x0013b8,                   /* U+0013b8 */
+   0x0013b9,                   /* U+0013b9 */
+   0x0013ba,                   /* U+0013ba */
+   0x0013bb,                   /* U+0013bb */
+   0x0013bc,                   /* U+0013bc */
+   0x0013bd,                   /* U+0013bd */
+   0x0013be,                   /* U+0013be */
+   0x0013bf,                   /* U+0013bf */
+   0x0013c0,                   /* U+0013c0 */
+   0x0013c1,                   /* U+0013c1 */
+   0x0013c2,                   /* U+0013c2 */
+   0x0013c3,                   /* U+0013c3 */
+   0x0013c4,                   /* U+0013c4 */
+   0x0013c5,                   /* U+0013c5 */
+   0x0013c6,                   /* U+0013c6 */
+   0x0013c7,                   /* U+0013c7 */
+   0x0013c8,                   /* U+0013c8 */
+   0x0013c9,                   /* U+0013c9 */
+   0x0013ca,                   /* U+0013ca */
+   0x0013cb,                   /* U+0013cb */
+   0x0013cc,                   /* U+0013cc */
+   0x0013cd,                   /* U+0013cd */
+   0x0013ce,                   /* U+0013ce */
+   0x0013cf,                   /* U+0013cf */
+   0x0013d0,                   /* U+0013d0 */
+   0x0013d1,                   /* U+0013d1 */
+   0x0013d2,                   /* U+0013d2 */
+   0x0013d3,                   /* U+0013d3 */
+   0x0013d4,                   /* U+0013d4 */
+   0x0013d5,                   /* U+0013d5 */
+   0x0013d6,                   /* U+0013d6 */
+   0x0013d7,                   /* U+0013d7 */
+   0x0013d8,                   /* U+0013d8 */
+   0x0013d9,                   /* U+0013d9 */
+   0x0013da,                   /* U+0013da */
+   0x0013db,                   /* U+0013db */
+   0x0013dc,                   /* U+0013dc */
+   0x0013dd,                   /* U+0013dd */
+   0x0013de,                   /* U+0013de */
+   0x0013df,                   /* U+0013df */
+   0x0013e0,                   /* U+0013e0 */
+   0x0013e1,                   /* U+0013e1 */
+   0x0013e2,                   /* U+0013e2 */
+   0x0013e3,                   /* U+0013e3 */
+   0x0013e4,                   /* U+0013e4 */
+   0x0013e5,                   /* U+0013e5 */
+   0x0013e6,                   /* U+0013e6 */
+   0x0013e7,                   /* U+0013e7 */
+   0x0013e8,                   /* U+0013e8 */
+   0x0013e9,                   /* U+0013e9 */
+   0x0013ea,                   /* U+0013ea */
+   0x0013eb,                   /* U+0013eb */
+   0x0013ec,                   /* U+0013ec */
+   0x0013ed,                   /* U+0013ed */
+   0x0013ee,                   /* U+0013ee */
+   0x0013ef,                   /* U+0013ef */
+   0x0013f0,                   /* U+0013f0 */
+   0x0013f1,                   /* U+0013f1 */
+   0x0013f2,                   /* U+0013f2 */
+   0x0013f3,                   /* U+0013f3 */
+   0x0013f4,                   /* U+0013f4 */
+   0x0013f5,                   /* U+0013f5 */
+   0x000412,                   /* U+001c80 */
+   0x000414,                   /* U+001c81 */
+   0x00041e,                   /* U+001c82 */
+   0x000421,                   /* U+001c83 */
+   0x000422,                   /* U+001c84 */
+   0x000422,                   /* U+001c85 */
+   0x00042a,                   /* U+001c86 */
+   0x000462,                   /* U+001c87 */
+   0x00a64a,                   /* U+001c88 */
+   0x001c90,                   /* U+001c90 */
+   0x001c91,                   /* U+001c91 */
+   0x001c92,                   /* U+001c92 */
+   0x001c93,                   /* U+001c93 */
+   0x001c94,                   /* U+001c94 */
+   0x001c95,                   /* U+001c95 */
+   0x001c96,                   /* U+001c96 */
+   0x001c97,                   /* U+001c97 */
+   0x001c98,                   /* U+001c98 */
+   0x001c99,                   /* U+001c99 */
+   0x001c9a,                   /* U+001c9a */
+   0x001c9b,                   /* U+001c9b */
+   0x001c9c,                   /* U+001c9c */
+   0x001c9d,                   /* U+001c9d */
+   0x001c9e,                   /* U+001c9e */
+   0x001c9f,                   /* U+001c9f */
+   0x001ca0,                   /* U+001ca0 */
+   0x001ca1,                   /* U+001ca1 */
+   0x001ca2,                   /* U+001ca2 */
+   0x001ca3,                   /* U+001ca3 */
+   0x001ca4,                   /* U+001ca4 */
+   0x001ca5,                   /* U+001ca5 */
+   0x001ca6,                   /* U+001ca6 */
+   0x001ca7,                   /* U+001ca7 */
+   0x001ca8,                   /* U+001ca8 */
+   0x001ca9,                   /* U+001ca9 */
+   0x001caa,                   /* U+001caa */
+   0x001cab,                   /* U+001cab */
+   0x001cac,                   /* U+001cac */
+   0x001cad,                   /* U+001cad */
+   0x001cae,                   /* U+001cae */
+   0x001caf,                   /* U+001caf */
+   0x001cb0,                   /* U+001cb0 */
+   0x001cb1,                   /* U+001cb1 */
+   0x001cb2,                   /* U+001cb2 */
+   0x001cb3,                   /* U+001cb3 */
+   0x001cb4,                   /* U+001cb4 */
+   0x001cb5,                   /* U+001cb5 */
+   0x001cb6,                   /* U+001cb6 */
+   0x001cb7,                   /* U+001cb7 */
+   0x001cb8,                   /* U+001cb8 */
+   0x001cb9,                   /* U+001cb9 */
+   0x001cba,                   /* U+001cba */
+   0x001cbd,                   /* U+001cbd */
+   0x001cbe,                   /* U+001cbe */
+   0x001cbf,                   /* U+001cbf */
+   0x00a77d,                   /* U+001d79 */
+   0x002c63,                   /* U+001d7d */
+   0x00a7c6,                   /* U+001d8e */
+   0x001e00,                   /* U+001e00 */
+   0x001e02,                   /* U+001e02 */
+   0x001e04,                   /* U+001e04 */
+   0x001e06,                   /* U+001e06 */
+   0x001e08,                   /* U+001e08 */
+   0x001e0a,                   /* U+001e0a */
+   0x001e0c,                   /* U+001e0c */
+   0x001e0e,                   /* U+001e0e */
+   0x001e10,                   /* U+001e10 */
+   0x001e12,                   /* U+001e12 */
+   0x001e14,                   /* U+001e14 */
+   0x001e16,                   /* U+001e16 */
+   0x001e18,                   /* U+001e18 */
+   0x001e1a,                   /* U+001e1a */
+   0x001e1c,                   /* U+001e1c */
+   0x001e1e,                   /* U+001e1e */
+   0x001e20,                   /* U+001e20 */
+   0x001e22,                   /* U+001e22 */
+   0x001e24,                   /* U+001e24 */
+   0x001e26,                   /* U+001e26 */
+   0x001e28,                   /* U+001e28 */
+   0x001e2a,                   /* U+001e2a */
+   0x001e2c,                   /* U+001e2c */
+   0x001e2e,                   /* U+001e2e */
+   0x001e30,                   /* U+001e30 */
+   0x001e32,                   /* U+001e32 */
+   0x001e34,                   /* U+001e34 */
+   0x001e36,                   /* U+001e36 */
+   0x001e38,                   /* U+001e38 */
+   0x001e3a,                   /* U+001e3a */
+   0x001e3c,                   /* U+001e3c */
+   0x001e3e,                   /* U+001e3e */
+   0x001e40,                   /* U+001e40 */
+   0x001e42,                   /* U+001e42 */
+   0x001e44,                   /* U+001e44 */
+   0x001e46,                   /* U+001e46 */
+   0x001e48,                   /* U+001e48 */
+   0x001e4a,                   /* U+001e4a */
+   0x001e4c,                   /* U+001e4c */
+   0x001e4e,                   /* U+001e4e */
+   0x001e50,                   /* U+001e50 */
+   0x001e52,                   /* U+001e52 */
+   0x001e54,                   /* U+001e54 */
+   0x001e56,                   /* U+001e56 */
+   0x001e58,                   /* U+001e58 */
+   0x001e5a,                   /* U+001e5a */
+   0x001e5c,                   /* U+001e5c */
+   0x001e5e,                   /* U+001e5e */
+   0x001e60,                   /* U+001e60 */
+   0x001e62,                   /* U+001e62 */
+   0x001e64,                   /* U+001e64 */
+   0x001e66,                   /* U+001e66 */
+   0x001e68,                   /* U+001e68 */
+   0x001e6a,                   /* U+001e6a */
+   0x001e6c,                   /* U+001e6c */
+   0x001e6e,                   /* U+001e6e */
+   0x001e70,                   /* U+001e70 */
+   0x001e72,                   /* U+001e72 */
+   0x001e74,                   /* U+001e74 */
+   0x001e76,                   /* U+001e76 */
+   0x001e78,                   /* U+001e78 */
+   0x001e7a,                   /* U+001e7a */
+   0x001e7c,                   /* U+001e7c */
+   0x001e7e,                   /* U+001e7e */
+   0x001e80,                   /* U+001e80 */
+   0x001e82,                   /* U+001e82 */
+   0x001e84,                   /* U+001e84 */
+   0x001e86,                   /* U+001e86 */
+   0x001e88,                   /* U+001e88 */
+   0x001e8a,                   /* U+001e8a */
+   0x001e8c,                   /* U+001e8c */
+   0x001e8e,                   /* U+001e8e */
+   0x001e90,                   /* U+001e90 */
+   0x001e92,                   /* U+001e92 */
+   0x001e94,                   /* U+001e94 */
+   0x001e96,                   /* U+001e96 */
+   0x001e97,                   /* U+001e97 */
+   0x001e98,                   /* U+001e98 */
+   0x001e99,                   /* U+001e99 */
+   0x001e9a,                   /* U+001e9a */
+   0x001e60,                   /* U+001e9b */
+   0x001e9e,                   /* U+001e9e */
+   0x001ea0,                   /* U+001ea0 */
+   0x001ea2,                   /* U+001ea2 */
+   0x001ea4,                   /* U+001ea4 */
+   0x001ea6,                   /* U+001ea6 */
+   0x001ea8,                   /* U+001ea8 */
+   0x001eaa,                   /* U+001eaa */
+   0x001eac,                   /* U+001eac */
+   0x001eae,                   /* U+001eae */
+   0x001eb0,                   /* U+001eb0 */
+   0x001eb2,                   /* U+001eb2 */
+   0x001eb4,                   /* U+001eb4 */
+   0x001eb6,                   /* U+001eb6 */
+   0x001eb8,                   /* U+001eb8 */
+   0x001eba,                   /* U+001eba */
+   0x001ebc,                   /* U+001ebc */
+   0x001ebe,                   /* U+001ebe */
+   0x001ec0,                   /* U+001ec0 */
+   0x001ec2,                   /* U+001ec2 */
+   0x001ec4,                   /* U+001ec4 */
+   0x001ec6,                   /* U+001ec6 */
+   0x001ec8,                   /* U+001ec8 */
+   0x001eca,                   /* U+001eca */
+   0x001ecc,                   /* U+001ecc */
+   0x001ece,                   /* U+001ece */
+   0x001ed0,                   /* U+001ed0 */
+   0x001ed2,                   /* U+001ed2 */
+   0x001ed4,                   /* U+001ed4 */
+   0x001ed6,                   /* U+001ed6 */
+   0x001ed8,                   /* U+001ed8 */
+   0x001eda,                   /* U+001eda */
+   0x001edc,                   /* U+001edc */
+   0x001ede,                   /* U+001ede */
+   0x001ee0,                   /* U+001ee0 */
+   0x001ee2,                   /* U+001ee2 */
+   0x001ee4,                   /* U+001ee4 */
+   0x001ee6,                   /* U+001ee6 */
+   0x001ee8,                   /* U+001ee8 */
+   0x001eea,                   /* U+001eea */
+   0x001eec,                   /* U+001eec */
+   0x001eee,                   /* U+001eee */
+   0x001ef0,                   /* U+001ef0 */
+   0x001ef2,                   /* U+001ef2 */
+   0x001ef4,                   /* U+001ef4 */
+   0x001ef6,                   /* U+001ef6 */
+   0x001ef8,                   /* U+001ef8 */
+   0x001efa,                   /* U+001efa */
+   0x001efc,                   /* U+001efc */
+   0x001efe,                   /* U+001efe */
+   0x001f08,                   /* U+001f00 */
+   0x001f09,                   /* U+001f01 */
+   0x001f0a,                   /* U+001f02 */
+   0x001f0b,                   /* U+001f03 */
+   0x001f0c,                   /* U+001f04 */
+   0x001f0d,                   /* U+001f05 */
+   0x001f0e,                   /* U+001f06 */
+   0x001f0f,                   /* U+001f07 */
+   0x001f18,                   /* U+001f10 */
+   0x001f19,                   /* U+001f11 */
+   0x001f1a,                   /* U+001f12 */
+   0x001f1b,                   /* U+001f13 */
+   0x001f1c,                   /* U+001f14 */
+   0x001f1d,                   /* U+001f15 */
+   0x001f28,                   /* U+001f20 */
+   0x001f29,                   /* U+001f21 */
+   0x001f2a,                   /* U+001f22 */
+   0x001f2b,                   /* U+001f23 */
+   0x001f2c,                   /* U+001f24 */
+   0x001f2d,                   /* U+001f25 */
+   0x001f2e,                   /* U+001f26 */
+   0x001f2f,                   /* U+001f27 */
+   0x001f38,                   /* U+001f30 */
+   0x001f39,                   /* U+001f31 */
+   0x001f3a,                   /* U+001f32 */
+   0x001f3b,                   /* U+001f33 */
+   0x001f3c,                   /* U+001f34 */
+   0x001f3d,                   /* U+001f35 */
+   0x001f3e,                   /* U+001f36 */
+   0x001f3f,                   /* U+001f37 */
+   0x001f48,                   /* U+001f40 */
+   0x001f49,                   /* U+001f41 */
+   0x001f4a,                   /* U+001f42 */
+   0x001f4b,                   /* U+001f43 */
+   0x001f4c,                   /* U+001f44 */
+   0x001f4d,                   /* U+001f45 */
+   0x001f50,                   /* U+001f50 */
+   0x001f59,                   /* U+001f51 */
+   0x001f52,                   /* U+001f52 */
+   0x001f5b,                   /* U+001f53 */
+   0x001f54,                   /* U+001f54 */
+   0x001f5d,                   /* U+001f55 */
+   0x001f56,                   /* U+001f56 */
+   0x001f5f,                   /* U+001f57 */
+   0x001f68,                   /* U+001f60 */
+   0x001f69,                   /* U+001f61 */
+   0x001f6a,                   /* U+001f62 */
+   0x001f6b,                   /* U+001f63 */
+   0x001f6c,                   /* U+001f64 */
+   0x001f6d,                   /* U+001f65 */
+   0x001f6e,                   /* U+001f66 */
+   0x001f6f,                   /* U+001f67 */
+   0x001fba,                   /* U+001f70 */
+   0x001fbb,                   /* U+001f71 */
+   0x001fc8,                   /* U+001f72 */
+   0x001fc9,                   /* U+001f73 */
+   0x001fca,                   /* U+001f74 */
+   0x001fcb,                   /* U+001f75 */
+   0x001fda,                   /* U+001f76 */
+   0x001fdb,                   /* U+001f77 */
+   0x001ff8,                   /* U+001f78 */
+   0x001ff9,                   /* U+001f79 */
+   0x001fea,                   /* U+001f7a */
+   0x001feb,                   /* U+001f7b */
+   0x001ffa,                   /* U+001f7c */
+   0x001ffb,                   /* U+001f7d */
+   0x001f88,                   /* U+001f80 */
+   0x001f89,                   /* U+001f81 */
+   0x001f8a,                   /* U+001f82 */
+   0x001f8b,                   /* U+001f83 */
+   0x001f8c,                   /* U+001f84 */
+   0x001f8d,                   /* U+001f85 */
+   0x001f8e,                   /* U+001f86 */
+   0x001f8f,                   /* U+001f87 */
+   0x001f88,                   /* U+001f88 */
+   0x001f89,                   /* U+001f89 */
+   0x001f8a,                   /* U+001f8a */
+   0x001f8b,                   /* U+001f8b */
+   0x001f8c,                   /* U+001f8c */
+   0x001f8d,                   /* U+001f8d */
+   0x001f8e,                   /* U+001f8e */
+   0x001f8f,                   /* U+001f8f */
+   0x001f98,                   /* U+001f90 */
+   0x001f99,                   /* U+001f91 */
+   0x001f9a,                   /* U+001f92 */
+   0x001f9b,                   /* U+001f93 */
+   0x001f9c,                   /* U+001f94 */
+   0x001f9d,                   /* U+001f95 */
+   0x001f9e,                   /* U+001f96 */
+   0x001f9f,                   /* U+001f97 */
+   0x001f98,                   /* U+001f98 */
+   0x001f99,                   /* U+001f99 */
+   0x001f9a,                   /* U+001f9a */
+   0x001f9b,                   /* U+001f9b */
+   0x001f9c,                   /* U+001f9c */
+   0x001f9d,                   /* U+001f9d */
+   0x001f9e,                   /* U+001f9e */
+   0x001f9f,                   /* U+001f9f */
+   0x001fa8,                   /* U+001fa0 */
+   0x001fa9,                   /* U+001fa1 */
+   0x001faa,                   /* U+001fa2 */
+   0x001fab,                   /* U+001fa3 */
+   0x001fac,                   /* U+001fa4 */
+   0x001fad,                   /* U+001fa5 */
+   0x001fae,                   /* U+001fa6 */
+   0x001faf,                   /* U+001fa7 */
+   0x001fa8,                   /* U+001fa8 */
+   0x001fa9,                   /* U+001fa9 */
+   0x001faa,                   /* U+001faa */
+   0x001fab,                   /* U+001fab */
+   0x001fac,                   /* U+001fac */
+   0x001fad,                   /* U+001fad */
+   0x001fae,                   /* U+001fae */
+   0x001faf,                   /* U+001faf */
+   0x001fb8,                   /* U+001fb0 */
+   0x001fb9,                   /* U+001fb1 */
+   0x001fb2,                   /* U+001fb2 */
+   0x001fbc,                   /* U+001fb3 */
+   0x001fb4,                   /* U+001fb4 */
+   0x001fb6,                   /* U+001fb6 */
+   0x001fb7,                   /* U+001fb7 */
+   0x001fbc,                   /* U+001fbc */
+   0x000399,                   /* U+001fbe */
+   0x001fc2,                   /* U+001fc2 */
+   0x001fcc,                   /* U+001fc3 */
+   0x001fc4,                   /* U+001fc4 */
+   0x001fc6,                   /* U+001fc6 */
+   0x001fc7,                   /* U+001fc7 */
+   0x001fcc,                   /* U+001fcc */
+   0x001fd8,                   /* U+001fd0 */
+   0x001fd9,                   /* U+001fd1 */
+   0x001fd2,                   /* U+001fd2 */
+   0x001fd3,                   /* U+001fd3 */
+   0x001fd6,                   /* U+001fd6 */
+   0x001fd7,                   /* U+001fd7 */
+   0x001fe8,                   /* U+001fe0 */
+   0x001fe9,                   /* U+001fe1 */
+   0x001fe2,                   /* U+001fe2 */
+   0x001fe3,                   /* U+001fe3 */
+   0x001fe4,                   /* U+001fe4 */
+   0x001fec,                   /* U+001fe5 */
+   0x001fe6,                   /* U+001fe6 */
+   0x001fe7,                   /* U+001fe7 */
+   0x001ff2,                   /* U+001ff2 */
+   0x001ffc,                   /* U+001ff3 */
+   0x001ff4,                   /* U+001ff4 */
+   0x001ff6,                   /* U+001ff6 */
+   0x001ff7,                   /* U+001ff7 */
+   0x001ffc,                   /* U+001ffc */
+   0x002126,                   /* U+002126 */
+   0x00212a,                   /* U+00212a */
+   0x00212b,                   /* U+00212b */
+   0x002132,                   /* U+002132 */
+   0x002160,                   /* U+002160 */
+   0x002161,                   /* U+002161 */
+   0x002162,                   /* U+002162 */
+   0x002163,                   /* U+002163 */
+   0x002164,                   /* U+002164 */
+   0x002165,                   /* U+002165 */
+   0x002166,                   /* U+002166 */
+   0x002167,                   /* U+002167 */
+   0x002168,                   /* U+002168 */
+   0x002169,                   /* U+002169 */
+   0x00216a,                   /* U+00216a */
+   0x00216b,                   /* U+00216b */
+   0x00216c,                   /* U+00216c */
+   0x00216d,                   /* U+00216d */
+   0x00216e,                   /* U+00216e */
+   0x00216f,                   /* U+00216f */
+   0x002183,                   /* U+002183 */
+   0x0024b6,                   /* U+0024b6 */
+   0x0024b7,                   /* U+0024b7 */
+   0x0024b8,                   /* U+0024b8 */
+   0x0024b9,                   /* U+0024b9 */
+   0x0024ba,                   /* U+0024ba */
+   0x0024bb,                   /* U+0024bb */
+   0x0024bc,                   /* U+0024bc */
+   0x0024bd,                   /* U+0024bd */
+   0x0024be,                   /* U+0024be */
+   0x0024bf,                   /* U+0024bf */
+   0x0024c0,                   /* U+0024c0 */
+   0x0024c1,                   /* U+0024c1 */
+   0x0024c2,                   /* U+0024c2 */
+   0x0024c3,                   /* U+0024c3 */
+   0x0024c4,                   /* U+0024c4 */
+   0x0024c5,                   /* U+0024c5 */
+   0x0024c6,                   /* U+0024c6 */
+   0x0024c7,                   /* U+0024c7 */
+   0x0024c8,                   /* U+0024c8 */
+   0x0024c9,                   /* U+0024c9 */
+   0x0024ca,                   /* U+0024ca */
+   0x0024cb,                   /* U+0024cb */
+   0x0024cc,                   /* U+0024cc */
+   0x0024cd,                   /* U+0024cd */
+   0x0024ce,                   /* U+0024ce */
+   0x0024cf,                   /* U+0024cf */
+   0x002c00,                   /* U+002c00 */
+   0x002c01,                   /* U+002c01 */
+   0x002c02,                   /* U+002c02 */
+   0x002c03,                   /* U+002c03 */
+   0x002c04,                   /* U+002c04 */
+   0x002c05,                   /* U+002c05 */
+   0x002c06,                   /* U+002c06 */
+   0x002c07,                   /* U+002c07 */
+   0x002c08,                   /* U+002c08 */
+   0x002c09,                   /* U+002c09 */
+   0x002c0a,                   /* U+002c0a */
+   0x002c0b,                   /* U+002c0b */
+   0x002c0c,                   /* U+002c0c */
+   0x002c0d,                   /* U+002c0d */
+   0x002c0e,                   /* U+002c0e */
+   0x002c0f,                   /* U+002c0f */
+   0x002c10,                   /* U+002c10 */
+   0x002c11,                   /* U+002c11 */
+   0x002c12,                   /* U+002c12 */
+   0x002c13,                   /* U+002c13 */
+   0x002c14,                   /* U+002c14 */
+   0x002c15,                   /* U+002c15 */
+   0x002c16,                   /* U+002c16 */
+   0x002c17,                   /* U+002c17 */
+   0x002c18,                   /* U+002c18 */
+   0x002c19,                   /* U+002c19 */
+   0x002c1a,                   /* U+002c1a */
+   0x002c1b,                   /* U+002c1b */
+   0x002c1c,                   /* U+002c1c */
+   0x002c1d,                   /* U+002c1d */
+   0x002c1e,                   /* U+002c1e */
+   0x002c1f,                   /* U+002c1f */
+   0x002c20,                   /* U+002c20 */
+   0x002c21,                   /* U+002c21 */
+   0x002c22,                   /* U+002c22 */
+   0x002c23,                   /* U+002c23 */
+   0x002c24,                   /* U+002c24 */
+   0x002c25,                   /* U+002c25 */
+   0x002c26,                   /* U+002c26 */
+   0x002c27,                   /* U+002c27 */
+   0x002c28,                   /* U+002c28 */
+   0x002c29,                   /* U+002c29 */
+   0x002c2a,                   /* U+002c2a */
+   0x002c2b,                   /* U+002c2b */
+   0x002c2c,                   /* U+002c2c */
+   0x002c2d,                   /* U+002c2d */
+   0x002c2e,                   /* U+002c2e */
+   0x002c2f,                   /* U+002c2f */
+   0x002c60,                   /* U+002c60 */
+   0x002c67,                   /* U+002c67 */
+   0x002c69,                   /* U+002c69 */
+   0x002c6b,                   /* U+002c6b */
+   0x002c72,                   /* U+002c72 */
+   0x002c75,                   /* U+002c75 */
+   0x002c80,                   /* U+002c80 */
+   0x002c82,                   /* U+002c82 */
+   0x002c84,                   /* U+002c84 */
+   0x002c86,                   /* U+002c86 */
+   0x002c88,                   /* U+002c88 */
+   0x002c8a,                   /* U+002c8a */
+   0x002c8c,                   /* U+002c8c */
+   0x002c8e,                   /* U+002c8e */
+   0x002c90,                   /* U+002c90 */
+   0x002c92,                   /* U+002c92 */
+   0x002c94,                   /* U+002c94 */
+   0x002c96,                   /* U+002c96 */
+   0x002c98,                   /* U+002c98 */
+   0x002c9a,                   /* U+002c9a */
+   0x002c9c,                   /* U+002c9c */
+   0x002c9e,                   /* U+002c9e */
+   0x002ca0,                   /* U+002ca0 */
+   0x002ca2,                   /* U+002ca2 */
+   0x002ca4,                   /* U+002ca4 */
+   0x002ca6,                   /* U+002ca6 */
+   0x002ca8,                   /* U+002ca8 */
+   0x002caa,                   /* U+002caa */
+   0x002cac,                   /* U+002cac */
+   0x002cae,                   /* U+002cae */
+   0x002cb0,                   /* U+002cb0 */
+   0x002cb2,                   /* U+002cb2 */
+   0x002cb4,                   /* U+002cb4 */
+   0x002cb6,                   /* U+002cb6 */
+   0x002cb8,                   /* U+002cb8 */
+   0x002cba,                   /* U+002cba */
+   0x002cbc,                   /* U+002cbc */
+   0x002cbe,                   /* U+002cbe */
+   0x002cc0,                   /* U+002cc0 */
+   0x002cc2,                   /* U+002cc2 */
+   0x002cc4,                   /* U+002cc4 */
+   0x002cc6,                   /* U+002cc6 */
+   0x002cc8,                   /* U+002cc8 */
+   0x002cca,                   /* U+002cca */
+   0x002ccc,                   /* U+002ccc */
+   0x002cce,                   /* U+002cce */
+   0x002cd0,                   /* U+002cd0 */
+   0x002cd2,                   /* U+002cd2 */
+   0x002cd4,                   /* U+002cd4 */
+   0x002cd6,                   /* U+002cd6 */
+   0x002cd8,                   /* U+002cd8 */
+   0x002cda,                   /* U+002cda */
+   0x002cdc,                   /* U+002cdc */
+   0x002cde,                   /* U+002cde */
+   0x002ce0,                   /* U+002ce0 */
+   0x002ce2,                   /* U+002ce2 */
+   0x002ceb,                   /* U+002ceb */
+   0x002ced,                   /* U+002ced */
+   0x002cf2,                   /* U+002cf2 */
+   0x00a640,                   /* U+00a640 */
+   0x00a642,                   /* U+00a642 */
+   0x00a644,                   /* U+00a644 */
+   0x00a646,                   /* U+00a646 */
+   0x00a648,                   /* U+00a648 */
+   0x00a64a,                   /* U+00a64a */
+   0x00a64c,                   /* U+00a64c */
+   0x00a64e,                   /* U+00a64e */
+   0x00a650,                   /* U+00a650 */
+   0x00a652,                   /* U+00a652 */
+   0x00a654,                   /* U+00a654 */
+   0x00a656,                   /* U+00a656 */
+   0x00a658,                   /* U+00a658 */
+   0x00a65a,                   /* U+00a65a */
+   0x00a65c,                   /* U+00a65c */
+   0x00a65e,                   /* U+00a65e */
+   0x00a660,                   /* U+00a660 */
+   0x00a662,                   /* U+00a662 */
+   0x00a664,                   /* U+00a664 */
+   0x00a666,                   /* U+00a666 */
+   0x00a668,                   /* U+00a668 */
+   0x00a66a,                   /* U+00a66a */
+   0x00a66c,                   /* U+00a66c */
+   0x00a680,                   /* U+00a680 */
+   0x00a682,                   /* U+00a682 */
+   0x00a684,                   /* U+00a684 */
+   0x00a686,                   /* U+00a686 */
+   0x00a688,                   /* U+00a688 */
+   0x00a68a,                   /* U+00a68a */
+   0x00a68c,                   /* U+00a68c */
+   0x00a68e,                   /* U+00a68e */
+   0x00a690,                   /* U+00a690 */
+   0x00a692,                   /* U+00a692 */
+   0x00a694,                   /* U+00a694 */
+   0x00a696,                   /* U+00a696 */
+   0x00a698,                   /* U+00a698 */
+   0x00a69a,                   /* U+00a69a */
+   0x00a722,                   /* U+00a722 */
+   0x00a724,                   /* U+00a724 */
+   0x00a726,                   /* U+00a726 */
+   0x00a728,                   /* U+00a728 */
+   0x00a72a,                   /* U+00a72a */
+   0x00a72c,                   /* U+00a72c */
+   0x00a72e,                   /* U+00a72e */
+   0x00a732,                   /* U+00a732 */
+   0x00a734,                   /* U+00a734 */
+   0x00a736,                   /* U+00a736 */
+   0x00a738,                   /* U+00a738 */
+   0x00a73a,                   /* U+00a73a */
+   0x00a73c,                   /* U+00a73c */
+   0x00a73e,                   /* U+00a73e */
+   0x00a740,                   /* U+00a740 */
+   0x00a742,                   /* U+00a742 */
+   0x00a744,                   /* U+00a744 */
+   0x00a746,                   /* U+00a746 */
+   0x00a748,                   /* U+00a748 */
+   0x00a74a,                   /* U+00a74a */
+   0x00a74c,                   /* U+00a74c */
+   0x00a74e,                   /* U+00a74e */
+   0x00a750,                   /* U+00a750 */
+   0x00a752,                   /* U+00a752 */
+   0x00a754,                   /* U+00a754 */
+   0x00a756,                   /* U+00a756 */
+   0x00a758,                   /* U+00a758 */
+   0x00a75a,                   /* U+00a75a */
+   0x00a75c,                   /* U+00a75c */
+   0x00a75e,                   /* U+00a75e */
+   0x00a760,                   /* U+00a760 */
+   0x00a762,                   /* U+00a762 */
+   0x00a764,                   /* U+00a764 */
+   0x00a766,                   /* U+00a766 */
+   0x00a768,                   /* U+00a768 */
+   0x00a76a,                   /* U+00a76a */
+   0x00a76c,                   /* U+00a76c */
+   0x00a76e,                   /* U+00a76e */
+   0x00a779,                   /* U+00a779 */
+   0x00a77b,                   /* U+00a77b */
+   0x00a77e,                   /* U+00a77e */
+   0x00a780,                   /* U+00a780 */
+   0x00a782,                   /* U+00a782 */
+   0x00a784,                   /* U+00a784 */
+   0x00a786,                   /* U+00a786 */
+   0x00a78b,                   /* U+00a78b */
+   0x00a790,                   /* U+00a790 */
+   0x00a792,                   /* U+00a792 */
+   0x00a7c4,                   /* U+00a794 */
+   0x00a796,                   /* U+00a796 */
+   0x00a798,                   /* U+00a798 */
+   0x00a79a,                   /* U+00a79a */
+   0x00a79c,                   /* U+00a79c */
+   0x00a79e,                   /* U+00a79e */
+   0x00a7a0,                   /* U+00a7a0 */
+   0x00a7a2,                   /* U+00a7a2 */
+   0x00a7a4,                   /* U+00a7a4 */
+   0x00a7a6,                   /* U+00a7a6 */
+   0x00a7a8,                   /* U+00a7a8 */
+   0x00a7b3,                   /* U+00a7b3 */
+   0x00a7b4,                   /* U+00a7b4 */
+   0x00a7b6,                   /* U+00a7b6 */
+   0x00a7b8,                   /* U+00a7b8 */
+   0x00a7ba,                   /* U+00a7ba */
+   0x00a7bc,                   /* U+00a7bc */
+   0x00a7be,                   /* U+00a7be */
+   0x00a7c0,                   /* U+00a7c0 */
+   0x00a7c2,                   /* U+00a7c2 */
+   0x00a7c7,                   /* U+00a7c7 */
+   0x00a7c9,                   /* U+00a7c9 */
+   0x00a7d0,                   /* U+00a7d0 */
+   0x00a7d6,                   /* U+00a7d6 */
+   0x00a7d8,                   /* U+00a7d8 */
+   0x00a7f5,                   /* U+00a7f5 */
+   0x00fb00,                   /* U+00fb00 */
+   0x00fb01,                   /* U+00fb01 */
+   0x00fb02,                   /* U+00fb02 */
+   0x00fb03,                   /* U+00fb03 */
+   0x00fb04,                   /* U+00fb04 */
+   0x00fb05,                   /* U+00fb05 */
+   0x00fb06,                   /* U+00fb06 */
+   0x00fb13,                   /* U+00fb13 */
+   0x00fb14,                   /* U+00fb14 */
+   0x00fb15,                   /* U+00fb15 */
+   0x00fb16,                   /* U+00fb16 */
+   0x00fb17,                   /* U+00fb17 */
+   0x00ff21,                   /* U+00ff21 */
+   0x00ff22,                   /* U+00ff22 */
+   0x00ff23,                   /* U+00ff23 */
+   0x00ff24,                   /* U+00ff24 */
+   0x00ff25,                   /* U+00ff25 */
+   0x00ff26,                   /* U+00ff26 */
+   0x00ff27,                   /* U+00ff27 */
+   0x00ff28,                   /* U+00ff28 */
+   0x00ff29,                   /* U+00ff29 */
+   0x00ff2a,                   /* U+00ff2a */
+   0x00ff2b,                   /* U+00ff2b */
+   0x00ff2c,                   /* U+00ff2c */
+   0x00ff2d,                   /* U+00ff2d */
+   0x00ff2e,                   /* U+00ff2e */
+   0x00ff2f,                   /* U+00ff2f */
+   0x00ff30,                   /* U+00ff30 */
+   0x00ff31,                   /* U+00ff31 */
+   0x00ff32,                   /* U+00ff32 */
+   0x00ff33,                   /* U+00ff33 */
+   0x00ff34,                   /* U+00ff34 */
+   0x00ff35,                   /* U+00ff35 */
+   0x00ff36,                   /* U+00ff36 */
+   0x00ff37,                   /* U+00ff37 */
+   0x00ff38,                   /* U+00ff38 */
+   0x00ff39,                   /* U+00ff39 */
+   0x00ff3a,                   /* U+00ff3a */
+   0x010400,                   /* U+010400 */
+   0x010401,                   /* U+010401 */
+   0x010402,                   /* U+010402 */
+   0x010403,                   /* U+010403 */
+   0x010404,                   /* U+010404 */
+   0x010405,                   /* U+010405 */
+   0x010406,                   /* U+010406 */
+   0x010407,                   /* U+010407 */
+   0x010408,                   /* U+010408 */
+   0x010409,                   /* U+010409 */
+   0x01040a,                   /* U+01040a */
+   0x01040b,                   /* U+01040b */
+   0x01040c,                   /* U+01040c */
+   0x01040d,                   /* U+01040d */
+   0x01040e,                   /* U+01040e */
+   0x01040f,                   /* U+01040f */
+   0x010410,                   /* U+010410 */
+   0x010411,                   /* U+010411 */
+   0x010412,                   /* U+010412 */
+   0x010413,                   /* U+010413 */
+   0x010414,                   /* U+010414 */
+   0x010415,                   /* U+010415 */
+   0x010416,                   /* U+010416 */
+   0x010417,                   /* U+010417 */
+   0x010418,                   /* U+010418 */
+   0x010419,                   /* U+010419 */
+   0x01041a,                   /* U+01041a */
+   0x01041b,                   /* U+01041b */
+   0x01041c,                   /* U+01041c */
+   0x01041d,                   /* U+01041d */
+   0x01041e,                   /* U+01041e */
+   0x01041f,                   /* U+01041f */
+   0x010420,                   /* U+010420 */
+   0x010421,                   /* U+010421 */
+   0x010422,                   /* U+010422 */
+   0x010423,                   /* U+010423 */
+   0x010424,                   /* U+010424 */
+   0x010425,                   /* U+010425 */
+   0x010426,                   /* U+010426 */
+   0x010427,                   /* U+010427 */
+   0x0104b0,                   /* U+0104b0 */
+   0x0104b1,                   /* U+0104b1 */
+   0x0104b2,                   /* U+0104b2 */
+   0x0104b3,                   /* U+0104b3 */
+   0x0104b4,                   /* U+0104b4 */
+   0x0104b5,                   /* U+0104b5 */
+   0x0104b6,                   /* U+0104b6 */
+   0x0104b7,                   /* U+0104b7 */
+   0x0104b8,                   /* U+0104b8 */
+   0x0104b9,                   /* U+0104b9 */
+   0x0104ba,                   /* U+0104ba */
+   0x0104bb,                   /* U+0104bb */
+   0x0104bc,                   /* U+0104bc */
+   0x0104bd,                   /* U+0104bd */
+   0x0104be,                   /* U+0104be */
+   0x0104bf,                   /* U+0104bf */
+   0x0104c0,                   /* U+0104c0 */
+   0x0104c1,                   /* U+0104c1 */
+   0x0104c2,                   /* U+0104c2 */
+   0x0104c3,                   /* U+0104c3 */
+   0x0104c4,                   /* U+0104c4 */
+   0x0104c5,                   /* U+0104c5 */
+   0x0104c6,                   /* U+0104c6 */
+   0x0104c7,                   /* U+0104c7 */
+   0x0104c8,                   /* U+0104c8 */
+   0x0104c9,                   /* U+0104c9 */
+   0x0104ca,                   /* U+0104ca */
+   0x0104cb,                   /* U+0104cb */
+   0x0104cc,                   /* U+0104cc */
+   0x0104cd,                   /* U+0104cd */
+   0x0104ce,                   /* U+0104ce */
+   0x0104cf,                   /* U+0104cf */
+   0x0104d0,                   /* U+0104d0 */
+   0x0104d1,                   /* U+0104d1 */
+   0x0104d2,                   /* U+0104d2 */
+   0x0104d3,                   /* U+0104d3 */
+   0x010570,                   /* U+010570 */
+   0x010571,                   /* U+010571 */
+   0x010572,                   /* U+010572 */
+   0x010573,                   /* U+010573 */
+   0x010574,                   /* U+010574 */
+   0x010575,                   /* U+010575 */
+   0x010576,                   /* U+010576 */
+   0x010577,                   /* U+010577 */
+   0x010578,                   /* U+010578 */
+   0x010579,                   /* U+010579 */
+   0x01057a,                   /* U+01057a */
+   0x01057c,                   /* U+01057c */
+   0x01057d,                   /* U+01057d */
+   0x01057e,                   /* U+01057e */
+   0x01057f,                   /* U+01057f */
+   0x010580,                   /* U+010580 */
+   0x010581,                   /* U+010581 */
+   0x010582,                   /* U+010582 */
+   0x010583,                   /* U+010583 */
+   0x010584,                   /* U+010584 */
+   0x010585,                   /* U+010585 */
+   0x010586,                   /* U+010586 */
+   0x010587,                   /* U+010587 */
+   0x010588,                   /* U+010588 */
+   0x010589,                   /* U+010589 */
+   0x01058a,                   /* U+01058a */
+   0x01058c,                   /* U+01058c */
+   0x01058d,                   /* U+01058d */
+   0x01058e,                   /* U+01058e */
+   0x01058f,                   /* U+01058f */
+   0x010590,                   /* U+010590 */
+   0x010591,                   /* U+010591 */
+   0x010592,                   /* U+010592 */
+   0x010594,                   /* U+010594 */
+   0x010595,                   /* U+010595 */
+   0x010c80,                   /* U+010c80 */
+   0x010c81,                   /* U+010c81 */
+   0x010c82,                   /* U+010c82 */
+   0x010c83,                   /* U+010c83 */
+   0x010c84,                   /* U+010c84 */
+   0x010c85,                   /* U+010c85 */
+   0x010c86,                   /* U+010c86 */
+   0x010c87,                   /* U+010c87 */
+   0x010c88,                   /* U+010c88 */
+   0x010c89,                   /* U+010c89 */
+   0x010c8a,             &n