LTP GCOV extension - code coverage report
Current view: directory - src/base - pdf-text-ucd-case.c
Test: libgnupdf.info
Date: 2010-07-31 Instrumented lines: 291
Code covered: 87.6 % Executed lines: 255

       1                 : /* -*- mode: C -*-
       2                 :  *
       3                 :  *       File:         pdf-text-ucd-case.c
       4                 :  *       Date:         Sun Mar 09 12:59:01 2008
       5                 :  *
       6                 :  *       GNU PDF Library - Unicode Character Database - Case Algorithms
       7                 :  *
       8                 :  *    WARNING! The contents of the arrays in this file are self-generated
       9                 :  *     from the UnicodeData.txt and SpecialCasing.txt files, using the
      10                 :  *     `pdf_text_generate_ucd' utility
      11                 :  *
      12                 :  */
      13                 : 
      14                 : /* Copyright (C) 2008 Free Software Foundation, Inc. */
      15                 : 
      16                 : /* This program is free software: you can redistribute it and/or modify
      17                 :  * it under the terms of the GNU General Public License as published by
      18                 :  * the Free Software Foundation, either version 3 of the License, or
      19                 :  * (at your option) any later version.
      20                 :  *
      21                 :  * This program is distributed in the hope that it will be useful,
      22                 :  * but WITHOUT ANY WARRANTY; without even the implied warranty of
      23                 :  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
      24                 :  * GNU General Public License for more details.
      25                 :  *
      26                 :  * You should have received a copy of the GNU General Public License
      27                 :  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
      28                 :  */
      29                 : 
      30                 : #include <config.h>
      31                 : 
      32                 : #include <pdf-text-ucd-case.h>
      33                 : #include <pdf-text-ucd-combclass.h>
      34                 : #include <pdf-text-ucd-wordbreak.h>
      35                 : #include <pdf-text-ucd-gencat.h>
      36                 : #include <pdf-text-ucd-proplist.h>
      37                 : 
      38                 : 
      39                 : /* Structure to contain the case information of each unicode point.
      40                 :  */
      41                 : #define PDF_TEXT_MNSC 3
      42                 : typedef struct _unicode_case_info_s {
      43                 :   pdf_u32_t unicode_point;
      44                 :   pdf_u32_t uppercase_point;
      45                 :   pdf_u32_t lowercase_point;
      46                 :   pdf_u32_t titlecase_point;
      47                 :   pdf_i16_t special_case_indexes[PDF_TEXT_MNSC];
      48                 : } unicode_case_info_t;
      49                 : 
      50                 : 
      51                 : /* Structure to contain the interval information. All the unicode points in a
      52                 :  *  given interval (between `interval_start' and `interval_stop', both included)
      53                 :  *  have the same `deltaToIndex' value. If this delta is applied to the 32bit
      54                 :  *  Unicode value itself, the INDEX of the unicode point in the
      55                 :  *  `unicode_case_info' array is obtained, for a direct access to the case
      56                 :  *  information */
      57                 : typedef struct _unicode_case_interval_s {
      58                 :   pdf_u32_t interval_start;
      59                 :   pdf_u32_t interval_stop;
      60                 :   long deltaToIndex;
      61                 : } unicode_case_interval_t;
      62                 : 
      63                 : 
      64                 : /* Structure to contain the special case information of each unicode point. */
      65                 : typedef struct _unicode_special_case_info_s {
      66                 :   pdf_u32_t unicode_point;
      67                 :   pdf_u32_t lowercase_point[UCD_SC_MAX_EXPAND];
      68                 :   pdf_u32_t uppercase_point[UCD_SC_MAX_EXPAND];
      69                 :   pdf_u32_t titlecase_point[UCD_SC_MAX_EXPAND];
      70                 :   const char *condition_list;
      71                 : } unicode_special_case_info_t;
      72                 : 
      73                 : 
      74                 : /* Specific type for the Casing Context used in casing algorithms */
      75                 : typedef struct _pdf_text_ucd_context_s {
      76                 :   pdf_char_t *context_start;    /* Pointer to the first byte of the first point
      77                 :                                  *  in the context */
      78                 :   pdf_char_t *context_stop;     /* Pointer to the first byte of the last point
      79                 :                                  *  in the context */
      80                 :   pdf_char_t *unicode_point;    /* Pointer to the first byte of the point within
      81                 :                                  *  the context */
      82                 :   pdf_char_t locale[2];         /* Specific language ID for special casing */
      83                 : } pdf_text_ucd_context_t;
      84                 : 
      85                 : 
      86                 : /*************** START OF SELF-GENERATED DATA *********************************/
      87                 : 
      88                 : /* Constant length of arrays */
      89                 : #define UCD_C_INFO_N    2099
      90                 : #define UCD_C_INT_N     99
      91                 : #define UCD_SC_INFO_N   119
      92                 : 
      93                 : /* Array containing the case information for each unicode point (really only for
      94                 :  *  those which actually have some case information) */
      95                 : static unicode_case_info_t unicode_case_info[UCD_C_INFO_N] = {
      96                 :         { 0x0041, 0x0041, 0x0061, 0x0041, { -1, -1, -1 } }, /* index: 0 */
      97                 :         { 0x0042, 0x0042, 0x0062, 0x0042, { -1, -1, -1 } }, /* index: 1 */
      98                 :         { 0x0043, 0x0043, 0x0063, 0x0043, { -1, -1, -1 } }, /* index: 2 */
      99                 :         { 0x0044, 0x0044, 0x0064, 0x0044, { -1, -1, -1 } }, /* index: 3 */
     100                 :         { 0x0045, 0x0045, 0x0065, 0x0045, { -1, -1, -1 } }, /* index: 4 */
     101                 :         { 0x0046, 0x0046, 0x0066, 0x0046, { -1, -1, -1 } }, /* index: 5 */
     102                 :         { 0x0047, 0x0047, 0x0067, 0x0047, { -1, -1, -1 } }, /* index: 6 */
     103                 :         { 0x0048, 0x0048, 0x0068, 0x0048, { -1, -1, -1 } }, /* index: 7 */
     104                 :         { 0x0049, 0x0049, 0x0069, 0x0049, { 105, 115, 116 } }, /* index: 8 */
     105                 :         { 0x004A, 0x004A, 0x006A, 0x004A, { 106, -1, -1 } }, /* index: 9 */
     106                 :         { 0x004B, 0x004B, 0x006B, 0x004B, { -1, -1, -1 } }, /* index: 10 */
     107                 :         { 0x004C, 0x004C, 0x006C, 0x004C, { -1, -1, -1 } }, /* index: 11 */
     108                 :         { 0x004D, 0x004D, 0x006D, 0x004D, { -1, -1, -1 } }, /* index: 12 */
     109                 :         { 0x004E, 0x004E, 0x006E, 0x004E, { -1, -1, -1 } }, /* index: 13 */
     110                 :         { 0x004F, 0x004F, 0x006F, 0x004F, { -1, -1, -1 } }, /* index: 14 */
     111                 :         { 0x0050, 0x0050, 0x0070, 0x0050, { -1, -1, -1 } }, /* index: 15 */
     112                 :         { 0x0051, 0x0051, 0x0071, 0x0051, { -1, -1, -1 } }, /* index: 16 */
     113                 :         { 0x0052, 0x0052, 0x0072, 0x0052, { -1, -1, -1 } }, /* index: 17 */
     114                 :         { 0x0053, 0x0053, 0x0073, 0x0053, { -1, -1, -1 } }, /* index: 18 */
     115                 :         { 0x0054, 0x0054, 0x0074, 0x0054, { -1, -1, -1 } }, /* index: 19 */
     116                 :         { 0x0055, 0x0055, 0x0075, 0x0055, { -1, -1, -1 } }, /* index: 20 */
     117                 :         { 0x0056, 0x0056, 0x0076, 0x0056, { -1, -1, -1 } }, /* index: 21 */
     118                 :         { 0x0057, 0x0057, 0x0077, 0x0057, { -1, -1, -1 } }, /* index: 22 */
     119                 :         { 0x0058, 0x0058, 0x0078, 0x0058, { -1, -1, -1 } }, /* index: 23 */
     120                 :         { 0x0059, 0x0059, 0x0079, 0x0059, { -1, -1, -1 } }, /* index: 24 */
     121                 :         { 0x005A, 0x005A, 0x007A, 0x005A, { -1, -1, -1 } }, /* index: 25 */
     122                 :         { 0x0061, 0x0041, 0x0061, 0x0041, { -1, -1, -1 } }, /* index: 26 */
     123                 :         { 0x0062, 0x0042, 0x0062, 0x0042, { -1, -1, -1 } }, /* index: 27 */
     124                 :         { 0x0063, 0x0043, 0x0063, 0x0043, { -1, -1, -1 } }, /* index: 28 */
     125                 :         { 0x0064, 0x0044, 0x0064, 0x0044, { -1, -1, -1 } }, /* index: 29 */
     126                 :         { 0x0065, 0x0045, 0x0065, 0x0045, { -1, -1, -1 } }, /* index: 30 */
     127                 :         { 0x0066, 0x0046, 0x0066, 0x0046, { -1, -1, -1 } }, /* index: 31 */
     128                 :         { 0x0067, 0x0047, 0x0067, 0x0047, { -1, -1, -1 } }, /* index: 32 */
     129                 :         { 0x0068, 0x0048, 0x0068, 0x0048, { -1, -1, -1 } }, /* index: 33 */
     130                 :         { 0x0069, 0x0049, 0x0069, 0x0049, { 117, 118, -1 } }, /* index: 34 */
     131                 :         { 0x006A, 0x004A, 0x006A, 0x004A, { -1, -1, -1 } }, /* index: 35 */
     132                 :         { 0x006B, 0x004B, 0x006B, 0x004B, { -1, -1, -1 } }, /* index: 36 */
     133                 :         { 0x006C, 0x004C, 0x006C, 0x004C, { -1, -1, -1 } }, /* index: 37 */
     134                 :         { 0x006D, 0x004D, 0x006D, 0x004D, { -1, -1, -1 } }, /* index: 38 */
     135                 :         { 0x006E, 0x004E, 0x006E, 0x004E, { -1, -1, -1 } }, /* index: 39 */
     136                 :         { 0x006F, 0x004F, 0x006F, 0x004F, { -1, -1, -1 } }, /* index: 40 */
     137                 :         { 0x0070, 0x0050, 0x0070, 0x0050, { -1, -1, -1 } }, /* index: 41 */
     138                 :         { 0x0071, 0x0051, 0x0071, 0x0051, { -1, -1, -1 } }, /* index: 42 */
     139                 :         { 0x0072, 0x0052, 0x0072, 0x0052, { -1, -1, -1 } }, /* index: 43 */
     140                 :         { 0x0073, 0x0053, 0x0073, 0x0053, { -1, -1, -1 } }, /* index: 44 */
     141                 :         { 0x0074, 0x0054, 0x0074, 0x0054, { -1, -1, -1 } }, /* index: 45 */
     142                 :         { 0x0075, 0x0055, 0x0075, 0x0055, { -1, -1, -1 } }, /* index: 46 */
     143                 :         { 0x0076, 0x0056, 0x0076, 0x0056, { -1, -1, -1 } }, /* index: 47 */
     144                 :         { 0x0077, 0x0057, 0x0077, 0x0057, { -1, -1, -1 } }, /* index: 48 */
     145                 :         { 0x0078, 0x0058, 0x0078, 0x0058, { -1, -1, -1 } }, /* index: 49 */
     146                 :         { 0x0079, 0x0059, 0x0079, 0x0059, { -1, -1, -1 } }, /* index: 50 */
     147                 :         { 0x007A, 0x005A, 0x007A, 0x005A, { -1, -1, -1 } }, /* index: 51 */
     148                 :         { 0x00B5, 0x039C, 0x00B5, 0x039C, { -1, -1, -1 } }, /* index: 52 */
     149                 :         { 0x00C0, 0x00C0, 0x00E0, 0x00C0, { -1, -1, -1 } }, /* index: 53 */
     150                 :         { 0x00C1, 0x00C1, 0x00E1, 0x00C1, { -1, -1, -1 } }, /* index: 54 */
     151                 :         { 0x00C2, 0x00C2, 0x00E2, 0x00C2, { -1, -1, -1 } }, /* index: 55 */
     152                 :         { 0x00C3, 0x00C3, 0x00E3, 0x00C3, { -1, -1, -1 } }, /* index: 56 */
     153                 :         { 0x00C4, 0x00C4, 0x00E4, 0x00C4, { -1, -1, -1 } }, /* index: 57 */
     154                 :         { 0x00C5, 0x00C5, 0x00E5, 0x00C5, { -1, -1, -1 } }, /* index: 58 */
     155                 :         { 0x00C6, 0x00C6, 0x00E6, 0x00C6, { -1, -1, -1 } }, /* index: 59 */
     156                 :         { 0x00C7, 0x00C7, 0x00E7, 0x00C7, { -1, -1, -1 } }, /* index: 60 */
     157                 :         { 0x00C8, 0x00C8, 0x00E8, 0x00C8, { -1, -1, -1 } }, /* index: 61 */
     158                 :         { 0x00C9, 0x00C9, 0x00E9, 0x00C9, { -1, -1, -1 } }, /* index: 62 */
     159                 :         { 0x00CA, 0x00CA, 0x00EA, 0x00CA, { -1, -1, -1 } }, /* index: 63 */
     160                 :         { 0x00CB, 0x00CB, 0x00EB, 0x00CB, { -1, -1, -1 } }, /* index: 64 */
     161                 :         { 0x00CC, 0x00CC, 0x00EC, 0x00CC, { 108, -1, -1 } }, /* index: 65 */
     162                 :         { 0x00CD, 0x00CD, 0x00ED, 0x00CD, { 109, -1, -1 } }, /* index: 66 */
     163                 :         { 0x00CE, 0x00CE, 0x00EE, 0x00CE, { -1, -1, -1 } }, /* index: 67 */
     164                 :         { 0x00CF, 0x00CF, 0x00EF, 0x00CF, { -1, -1, -1 } }, /* index: 68 */
     165                 :         { 0x00D0, 0x00D0, 0x00F0, 0x00D0, { -1, -1, -1 } }, /* index: 69 */
     166                 :         { 0x00D1, 0x00D1, 0x00F1, 0x00D1, { -1, -1, -1 } }, /* index: 70 */
     167                 :         { 0x00D2, 0x00D2, 0x00F2, 0x00D2, { -1, -1, -1 } }, /* index: 71 */
     168                 :         { 0x00D3, 0x00D3, 0x00F3, 0x00D3, { -1, -1, -1 } }, /* index: 72 */
     169                 :         { 0x00D4, 0x00D4, 0x00F4, 0x00D4, { -1, -1, -1 } }, /* index: 73 */
     170                 :         { 0x00D5, 0x00D5, 0x00F5, 0x00D5, { -1, -1, -1 } }, /* index: 74 */
     171                 :         { 0x00D6, 0x00D6, 0x00F6, 0x00D6, { -1, -1, -1 } }, /* index: 75 */
     172                 :         { 0x00D8, 0x00D8, 0x00F8, 0x00D8, { -1, -1, -1 } }, /* index: 76 */
     173                 :         { 0x00D9, 0x00D9, 0x00F9, 0x00D9, { -1, -1, -1 } }, /* index: 77 */
     174                 :         { 0x00DA, 0x00DA, 0x00FA, 0x00DA, { -1, -1, -1 } }, /* index: 78 */
     175                 :         { 0x00DB, 0x00DB, 0x00FB, 0x00DB, { -1, -1, -1 } }, /* index: 79 */
     176                 :         { 0x00DC, 0x00DC, 0x00FC, 0x00DC, { -1, -1, -1 } }, /* index: 80 */
     177                 :         { 0x00DD, 0x00DD, 0x00FD, 0x00DD, { -1, -1, -1 } }, /* index: 81 */
     178                 :         { 0x00DE, 0x00DE, 0x00FE, 0x00DE, { -1, -1, -1 } }, /* index: 82 */
     179                 :         { 0x00DF, 0x00DF, 0x00DF, 0x00DF, { 0, -1, -1 } }, /* index: 83 */
     180                 :         { 0x00E0, 0x00C0, 0x00E0, 0x00C0, { -1, -1, -1 } }, /* index: 84 */
     181                 :         { 0x00E1, 0x00C1, 0x00E1, 0x00C1, { -1, -1, -1 } }, /* index: 85 */
     182                 :         { 0x00E2, 0x00C2, 0x00E2, 0x00C2, { -1, -1, -1 } }, /* index: 86 */
     183                 :         { 0x00E3, 0x00C3, 0x00E3, 0x00C3, { -1, -1, -1 } }, /* index: 87 */
     184                 :         { 0x00E4, 0x00C4, 0x00E4, 0x00C4, { -1, -1, -1 } }, /* index: 88 */
     185                 :         { 0x00E5, 0x00C5, 0x00E5, 0x00C5, { -1, -1, -1 } }, /* index: 89 */
     186                 :         { 0x00E6, 0x00C6, 0x00E6, 0x00C6, { -1, -1, -1 } }, /* index: 90 */
     187                 :         { 0x00E7, 0x00C7, 0x00E7, 0x00C7, { -1, -1, -1 } }, /* index: 91 */
     188                 :         { 0x00E8, 0x00C8, 0x00E8, 0x00C8, { -1, -1, -1 } }, /* index: 92 */
     189                 :         { 0x00E9, 0x00C9, 0x00E9, 0x00C9, { -1, -1, -1 } }, /* index: 93 */
     190                 :         { 0x00EA, 0x00CA, 0x00EA, 0x00CA, { -1, -1, -1 } }, /* index: 94 */
     191                 :         { 0x00EB, 0x00CB, 0x00EB, 0x00CB, { -1, -1, -1 } }, /* index: 95 */
     192                 :         { 0x00EC, 0x00CC, 0x00EC, 0x00CC, { -1, -1, -1 } }, /* index: 96 */
     193                 :         { 0x00ED, 0x00CD, 0x00ED, 0x00CD, { -1, -1, -1 } }, /* index: 97 */
     194                 :         { 0x00EE, 0x00CE, 0x00EE, 0x00CE, { -1, -1, -1 } }, /* index: 98 */
     195                 :         { 0x00EF, 0x00CF, 0x00EF, 0x00CF, { -1, -1, -1 } }, /* index: 99 */
     196                 :         { 0x00F0, 0x00D0, 0x00F0, 0x00D0, { -1, -1, -1 } }, /* index: 100 */
     197                 :         { 0x00F1, 0x00D1, 0x00F1, 0x00D1, { -1, -1, -1 } }, /* index: 101 */
     198                 :         { 0x00F2, 0x00D2, 0x00F2, 0x00D2, { -1, -1, -1 } }, /* index: 102 */
     199                 :         { 0x00F3, 0x00D3, 0x00F3, 0x00D3, { -1, -1, -1 } }, /* index: 103 */
     200                 :         { 0x00F4, 0x00D4, 0x00F4, 0x00D4, { -1, -1, -1 } }, /* index: 104 */
     201                 :         { 0x00F5, 0x00D5, 0x00F5, 0x00D5, { -1, -1, -1 } }, /* index: 105 */
     202                 :         { 0x00F6, 0x00D6, 0x00F6, 0x00D6, { -1, -1, -1 } }, /* index: 106 */
     203                 :         { 0x00F8, 0x00D8, 0x00F8, 0x00D8, { -1, -1, -1 } }, /* index: 107 */
     204                 :         { 0x00F9, 0x00D9, 0x00F9, 0x00D9, { -1, -1, -1 } }, /* index: 108 */
     205                 :         { 0x00FA, 0x00DA, 0x00FA, 0x00DA, { -1, -1, -1 } }, /* index: 109 */
     206                 :         { 0x00FB, 0x00DB, 0x00FB, 0x00DB, { -1, -1, -1 } }, /* index: 110 */
     207                 :         { 0x00FC, 0x00DC, 0x00FC, 0x00DC, { -1, -1, -1 } }, /* index: 111 */
     208                 :         { 0x00FD, 0x00DD, 0x00FD, 0x00DD, { -1, -1, -1 } }, /* index: 112 */
     209                 :         { 0x00FE, 0x00DE, 0x00FE, 0x00DE, { -1, -1, -1 } }, /* index: 113 */
     210                 :         { 0x00FF, 0x0178, 0x00FF, 0x0178, { -1, -1, -1 } }, /* index: 114 */
     211                 :         { 0x0100, 0x0100, 0x0101, 0x0100, { -1, -1, -1 } }, /* index: 115 */
     212                 :         { 0x0101, 0x0100, 0x0101, 0x0100, { -1, -1, -1 } }, /* index: 116 */
     213                 :         { 0x0102, 0x0102, 0x0103, 0x0102, { -1, -1, -1 } }, /* index: 117 */
     214                 :         { 0x0103, 0x0102, 0x0103, 0x0102, { -1, -1, -1 } }, /* index: 118 */
     215                 :         { 0x0104, 0x0104, 0x0105, 0x0104, { -1, -1, -1 } }, /* index: 119 */
     216                 :         { 0x0105, 0x0104, 0x0105, 0x0104, { -1, -1, -1 } }, /* index: 120 */
     217                 :         { 0x0106, 0x0106, 0x0107, 0x0106, { -1, -1, -1 } }, /* index: 121 */
     218                 :         { 0x0107, 0x0106, 0x0107, 0x0106, { -1, -1, -1 } }, /* index: 122 */
     219                 :         { 0x0108, 0x0108, 0x0109, 0x0108, { -1, -1, -1 } }, /* index: 123 */
     220                 :         { 0x0109, 0x0108, 0x0109, 0x0108, { -1, -1, -1 } }, /* index: 124 */
     221                 :         { 0x010A, 0x010A, 0x010B, 0x010A, { -1, -1, -1 } }, /* index: 125 */
     222                 :         { 0x010B, 0x010A, 0x010B, 0x010A, { -1, -1, -1 } }, /* index: 126 */
     223                 :         { 0x010C, 0x010C, 0x010D, 0x010C, { -1, -1, -1 } }, /* index: 127 */
     224                 :         { 0x010D, 0x010C, 0x010D, 0x010C, { -1, -1, -1 } }, /* index: 128 */
     225                 :         { 0x010E, 0x010E, 0x010F, 0x010E, { -1, -1, -1 } }, /* index: 129 */
     226                 :         { 0x010F, 0x010E, 0x010F, 0x010E, { -1, -1, -1 } }, /* index: 130 */
     227                 :         { 0x0110, 0x0110, 0x0111, 0x0110, { -1, -1, -1 } }, /* index: 131 */
     228                 :         { 0x0111, 0x0110, 0x0111, 0x0110, { -1, -1, -1 } }, /* index: 132 */
     229                 :         { 0x0112, 0x0112, 0x0113, 0x0112, { -1, -1, -1 } }, /* index: 133 */
     230                 :         { 0x0113, 0x0112, 0x0113, 0x0112, { -1, -1, -1 } }, /* index: 134 */
     231                 :         { 0x0114, 0x0114, 0x0115, 0x0114, { -1, -1, -1 } }, /* index: 135 */
     232                 :         { 0x0115, 0x0114, 0x0115, 0x0114, { -1, -1, -1 } }, /* index: 136 */
     233                 :         { 0x0116, 0x0116, 0x0117, 0x0116, { -1, -1, -1 } }, /* index: 137 */
     234                 :         { 0x0117, 0x0116, 0x0117, 0x0116, { -1, -1, -1 } }, /* index: 138 */
     235                 :         { 0x0118, 0x0118, 0x0119, 0x0118, { -1, -1, -1 } }, /* index: 139 */
     236                 :         { 0x0119, 0x0118, 0x0119, 0x0118, { -1, -1, -1 } }, /* index: 140 */
     237                 :         { 0x011A, 0x011A, 0x011B, 0x011A, { -1, -1, -1 } }, /* index: 141 */
     238                 :         { 0x011B, 0x011A, 0x011B, 0x011A, { -1, -1, -1 } }, /* index: 142 */
     239                 :         { 0x011C, 0x011C, 0x011D, 0x011C, { -1, -1, -1 } }, /* index: 143 */
     240                 :         { 0x011D, 0x011C, 0x011D, 0x011C, { -1, -1, -1 } }, /* index: 144 */
     241                 :         { 0x011E, 0x011E, 0x011F, 0x011E, { -1, -1, -1 } }, /* index: 145 */
     242                 :         { 0x011F, 0x011E, 0x011F, 0x011E, { -1, -1, -1 } }, /* index: 146 */
     243                 :         { 0x0120, 0x0120, 0x0121, 0x0120, { -1, -1, -1 } }, /* index: 147 */
     244                 :         { 0x0121, 0x0120, 0x0121, 0x0120, { -1, -1, -1 } }, /* index: 148 */
     245                 :         { 0x0122, 0x0122, 0x0123, 0x0122, { -1, -1, -1 } }, /* index: 149 */
     246                 :         { 0x0123, 0x0122, 0x0123, 0x0122, { -1, -1, -1 } }, /* index: 150 */
     247                 :         { 0x0124, 0x0124, 0x0125, 0x0124, { -1, -1, -1 } }, /* index: 151 */
     248                 :         { 0x0125, 0x0124, 0x0125, 0x0124, { -1, -1, -1 } }, /* index: 152 */
     249                 :         { 0x0126, 0x0126, 0x0127, 0x0126, { -1, -1, -1 } }, /* index: 153 */
     250                 :         { 0x0127, 0x0126, 0x0127, 0x0126, { -1, -1, -1 } }, /* index: 154 */
     251                 :         { 0x0128, 0x0128, 0x0129, 0x0128, { 110, -1, -1 } }, /* index: 155 */
     252                 :         { 0x0129, 0x0128, 0x0129, 0x0128, { -1, -1, -1 } }, /* index: 156 */
     253                 :         { 0x012A, 0x012A, 0x012B, 0x012A, { -1, -1, -1 } }, /* index: 157 */
     254                 :         { 0x012B, 0x012A, 0x012B, 0x012A, { -1, -1, -1 } }, /* index: 158 */
     255                 :         { 0x012C, 0x012C, 0x012D, 0x012C, { -1, -1, -1 } }, /* index: 159 */
     256                 :         { 0x012D, 0x012C, 0x012D, 0x012C, { -1, -1, -1 } }, /* index: 160 */
     257                 :         { 0x012E, 0x012E, 0x012F, 0x012E, { 107, -1, -1 } }, /* index: 161 */
     258                 :         { 0x012F, 0x012E, 0x012F, 0x012E, { -1, -1, -1 } }, /* index: 162 */
     259                 :         { 0x0130, 0x0130, 0x0069, 0x0130, { 1, 111, 112 } }, /* index: 163 */
     260                 :         { 0x0131, 0x0049, 0x0131, 0x0049, { -1, -1, -1 } }, /* index: 164 */
     261                 :         { 0x0132, 0x0132, 0x0133, 0x0132, { -1, -1, -1 } }, /* index: 165 */
     262                 :         { 0x0133, 0x0132, 0x0133, 0x0132, { -1, -1, -1 } }, /* index: 166 */
     263                 :         { 0x0134, 0x0134, 0x0135, 0x0134, { -1, -1, -1 } }, /* index: 167 */
     264                 :         { 0x0135, 0x0134, 0x0135, 0x0134, { -1, -1, -1 } }, /* index: 168 */
     265                 :         { 0x0136, 0x0136, 0x0137, 0x0136, { -1, -1, -1 } }, /* index: 169 */
     266                 :         { 0x0137, 0x0136, 0x0137, 0x0136, { -1, -1, -1 } }, /* index: 170 */
     267                 :         { 0x0139, 0x0139, 0x013A, 0x0139, { -1, -1, -1 } }, /* index: 171 */
     268                 :         { 0x013A, 0x0139, 0x013A, 0x0139, { -1, -1, -1 } }, /* index: 172 */
     269                 :         { 0x013B, 0x013B, 0x013C, 0x013B, { -1, -1, -1 } }, /* index: 173 */
     270                 :         { 0x013C, 0x013B, 0x013C, 0x013B, { -1, -1, -1 } }, /* index: 174 */
     271                 :         { 0x013D, 0x013D, 0x013E, 0x013D, { -1, -1, -1 } }, /* index: 175 */
     272                 :         { 0x013E, 0x013D, 0x013E, 0x013D, { -1, -1, -1 } }, /* index: 176 */
     273                 :         { 0x013F, 0x013F, 0x0140, 0x013F, { -1, -1, -1 } }, /* index: 177 */
     274                 :         { 0x0140, 0x013F, 0x0140, 0x013F, { -1, -1, -1 } }, /* index: 178 */
     275                 :         { 0x0141, 0x0141, 0x0142, 0x0141, { -1, -1, -1 } }, /* index: 179 */
     276                 :         { 0x0142, 0x0141, 0x0142, 0x0141, { -1, -1, -1 } }, /* index: 180 */
     277                 :         { 0x0143, 0x0143, 0x0144, 0x0143, { -1, -1, -1 } }, /* index: 181 */
     278                 :         { 0x0144, 0x0143, 0x0144, 0x0143, { -1, -1, -1 } }, /* index: 182 */
     279                 :         { 0x0145, 0x0145, 0x0146, 0x0145, { -1, -1, -1 } }, /* index: 183 */
     280                 :         { 0x0146, 0x0145, 0x0146, 0x0145, { -1, -1, -1 } }, /* index: 184 */
     281                 :         { 0x0147, 0x0147, 0x0148, 0x0147, { -1, -1, -1 } }, /* index: 185 */
     282                 :         { 0x0148, 0x0147, 0x0148, 0x0147, { -1, -1, -1 } }, /* index: 186 */
     283                 :         { 0x0149, 0x0149, 0x0149, 0x0149, { 15, -1, -1 } }, /* index: 187 */
     284                 :         { 0x014A, 0x014A, 0x014B, 0x014A, { -1, -1, -1 } }, /* index: 188 */
     285                 :         { 0x014B, 0x014A, 0x014B, 0x014A, { -1, -1, -1 } }, /* index: 189 */
     286                 :         { 0x014C, 0x014C, 0x014D, 0x014C, { -1, -1, -1 } }, /* index: 190 */
     287                 :         { 0x014D, 0x014C, 0x014D, 0x014C, { -1, -1, -1 } }, /* index: 191 */
     288                 :         { 0x014E, 0x014E, 0x014F, 0x014E, { -1, -1, -1 } }, /* index: 192 */
     289                 :         { 0x014F, 0x014E, 0x014F, 0x014E, { -1, -1, -1 } }, /* index: 193 */
     290                 :         { 0x0150, 0x0150, 0x0151, 0x0150, { -1, -1, -1 } }, /* index: 194 */
     291                 :         { 0x0151, 0x0150, 0x0151, 0x0150, { -1, -1, -1 } }, /* index: 195 */
     292                 :         { 0x0152, 0x0152, 0x0153, 0x0152, { -1, -1, -1 } }, /* index: 196 */
     293                 :         { 0x0153, 0x0152, 0x0153, 0x0152, { -1, -1, -1 } }, /* index: 197 */
     294                 :         { 0x0154, 0x0154, 0x0155, 0x0154, { -1, -1, -1 } }, /* index: 198 */
     295                 :         { 0x0155, 0x0154, 0x0155, 0x0154, { -1, -1, -1 } }, /* index: 199 */
     296                 :         { 0x0156, 0x0156, 0x0157, 0x0156, { -1, -1, -1 } }, /* index: 200 */
     297                 :         { 0x0157, 0x0156, 0x0157, 0x0156, { -1, -1, -1 } }, /* index: 201 */
     298                 :         { 0x0158, 0x0158, 0x0159, 0x0158, { -1, -1, -1 } }, /* index: 202 */
     299                 :         { 0x0159, 0x0158, 0x0159, 0x0158, { -1, -1, -1 } }, /* index: 203 */
     300                 :         { 0x015A, 0x015A, 0x015B, 0x015A, { -1, -1, -1 } }, /* index: 204 */
     301                 :         { 0x015B, 0x015A, 0x015B, 0x015A, { -1, -1, -1 } }, /* index: 205 */
     302                 :         { 0x015C, 0x015C, 0x015D, 0x015C, { -1, -1, -1 } }, /* index: 206 */
     303                 :         { 0x015D, 0x015C, 0x015D, 0x015C, { -1, -1, -1 } }, /* index: 207 */
     304                 :         { 0x015E, 0x015E, 0x015F, 0x015E, { -1, -1, -1 } }, /* index: 208 */
     305                 :         { 0x015F, 0x015E, 0x015F, 0x015E, { -1, -1, -1 } }, /* index: 209 */
     306                 :         { 0x0160, 0x0160, 0x0161, 0x0160, { -1, -1, -1 } }, /* index: 210 */
     307                 :         { 0x0161, 0x0160, 0x0161, 0x0160, { -1, -1, -1 } }, /* index: 211 */
     308                 :         { 0x0162, 0x0162, 0x0163, 0x0162, { -1, -1, -1 } }, /* index: 212 */
     309                 :         { 0x0163, 0x0162, 0x0163, 0x0162, { -1, -1, -1 } }, /* index: 213 */
     310                 :         { 0x0164, 0x0164, 0x0165, 0x0164, { -1, -1, -1 } }, /* index: 214 */
     311                 :         { 0x0165, 0x0164, 0x0165, 0x0164, { -1, -1, -1 } }, /* index: 215 */
     312                 :         { 0x0166, 0x0166, 0x0167, 0x0166, { -1, -1, -1 } }, /* index: 216 */
     313                 :         { 0x0167, 0x0166, 0x0167, 0x0166, { -1, -1, -1 } }, /* index: 217 */
     314                 :         { 0x0168, 0x0168, 0x0169, 0x0168, { -1, -1, -1 } }, /* index: 218 */
     315                 :         { 0x0169, 0x0168, 0x0169, 0x0168, { -1, -1, -1 } }, /* index: 219 */
     316                 :         { 0x016A, 0x016A, 0x016B, 0x016A, { -1, -1, -1 } }, /* index: 220 */
     317                 :         { 0x016B, 0x016A, 0x016B, 0x016A, { -1, -1, -1 } }, /* index: 221 */
     318                 :         { 0x016C, 0x016C, 0x016D, 0x016C, { -1, -1, -1 } }, /* index: 222 */
     319                 :         { 0x016D, 0x016C, 0x016D, 0x016C, { -1, -1, -1 } }, /* index: 223 */
     320                 :         { 0x016E, 0x016E, 0x016F, 0x016E, { -1, -1, -1 } }, /* index: 224 */
     321                 :         { 0x016F, 0x016E, 0x016F, 0x016E, { -1, -1, -1 } }, /* index: 225 */
     322                 :         { 0x0170, 0x0170, 0x0171, 0x0170, { -1, -1, -1 } }, /* index: 226 */
     323                 :         { 0x0171, 0x0170, 0x0171, 0x0170, { -1, -1, -1 } }, /* index: 227 */
     324                 :         { 0x0172, 0x0172, 0x0173, 0x0172, { -1, -1, -1 } }, /* index: 228 */
     325                 :         { 0x0173, 0x0172, 0x0173, 0x0172, { -1, -1, -1 } }, /* index: 229 */
     326                 :         { 0x0174, 0x0174, 0x0175, 0x0174, { -1, -1, -1 } }, /* index: 230 */
     327                 :         { 0x0175, 0x0174, 0x0175, 0x0174, { -1, -1, -1 } }, /* index: 231 */
     328                 :         { 0x0176, 0x0176, 0x0177, 0x0176, { -1, -1, -1 } }, /* index: 232 */
     329                 :         { 0x0177, 0x0176, 0x0177, 0x0176, { -1, -1, -1 } }, /* index: 233 */
     330                 :         { 0x0178, 0x0178, 0x00FF, 0x0178, { -1, -1, -1 } }, /* index: 234 */
     331                 :         { 0x0179, 0x0179, 0x017A, 0x0179, { -1, -1, -1 } }, /* index: 235 */
     332                 :         { 0x017A, 0x0179, 0x017A, 0x0179, { -1, -1, -1 } }, /* index: 236 */
     333                 :         { 0x017B, 0x017B, 0x017C, 0x017B, { -1, -1, -1 } }, /* index: 237 */
     334                 :         { 0x017C, 0x017B, 0x017C, 0x017B, { -1, -1, -1 } }, /* index: 238 */
     335                 :         { 0x017D, 0x017D, 0x017E, 0x017D, { -1, -1, -1 } }, /* index: 239 */
     336                 :         { 0x017E, 0x017D, 0x017E, 0x017D, { -1, -1, -1 } }, /* index: 240 */
     337                 :         { 0x017F, 0x0053, 0x017F, 0x0053, { -1, -1, -1 } }, /* index: 241 */
     338                 :         { 0x0180, 0x0243, 0x0180, 0x0243, { -1, -1, -1 } }, /* index: 242 */
     339                 :         { 0x0181, 0x0181, 0x0253, 0x0181, { -1, -1, -1 } }, /* index: 243 */
     340                 :         { 0x0182, 0x0182, 0x0183, 0x0182, { -1, -1, -1 } }, /* index: 244 */
     341                 :         { 0x0183, 0x0182, 0x0183, 0x0182, { -1, -1, -1 } }, /* index: 245 */
     342                 :         { 0x0184, 0x0184, 0x0185, 0x0184, { -1, -1, -1 } }, /* index: 246 */
     343                 :         { 0x0185, 0x0184, 0x0185, 0x0184, { -1, -1, -1 } }, /* index: 247 */
     344                 :         { 0x0186, 0x0186, 0x0254, 0x0186, { -1, -1, -1 } }, /* index: 248 */
     345                 :         { 0x0187, 0x0187, 0x0188, 0x0187, { -1, -1, -1 } }, /* index: 249 */
     346                 :         { 0x0188, 0x0187, 0x0188, 0x0187, { -1, -1, -1 } }, /* index: 250 */
     347                 :         { 0x0189, 0x0189, 0x0256, 0x0189, { -1, -1, -1 } }, /* index: 251 */
     348                 :         { 0x018A, 0x018A, 0x0257, 0x018A, { -1, -1, -1 } }, /* index: 252 */
     349                 :         { 0x018B, 0x018B, 0x018C, 0x018B, { -1, -1, -1 } }, /* index: 253 */
     350                 :         { 0x018C, 0x018B, 0x018C, 0x018B, { -1, -1, -1 } }, /* index: 254 */
     351                 :         { 0x018E, 0x018E, 0x01DD, 0x018E, { -1, -1, -1 } }, /* index: 255 */
     352                 :         { 0x018F, 0x018F, 0x0259, 0x018F, { -1, -1, -1 } }, /* index: 256 */
     353                 :         { 0x0190, 0x0190, 0x025B, 0x0190, { -1, -1, -1 } }, /* index: 257 */
     354                 :         { 0x0191, 0x0191, 0x0192, 0x0191, { -1, -1, -1 } }, /* index: 258 */
     355                 :         { 0x0192, 0x0191, 0x0192, 0x0191, { -1, -1, -1 } }, /* index: 259 */
     356                 :         { 0x0193, 0x0193, 0x0260, 0x0193, { -1, -1, -1 } }, /* index: 260 */
     357                 :         { 0x0194, 0x0194, 0x0263, 0x0194, { -1, -1, -1 } }, /* index: 261 */
     358                 :         { 0x0195, 0x01F6, 0x0195, 0x01F6, { -1, -1, -1 } }, /* index: 262 */
     359                 :         { 0x0196, 0x0196, 0x0269, 0x0196, { -1, -1, -1 } }, /* index: 263 */
     360                 :         { 0x0197, 0x0197, 0x0268, 0x0197, { -1, -1, -1 } }, /* index: 264 */
     361                 :         { 0x0198, 0x0198, 0x0199, 0x0198, { -1, -1, -1 } }, /* index: 265 */
     362                 :         { 0x0199, 0x0198, 0x0199, 0x0198, { -1, -1, -1 } }, /* index: 266 */
     363                 :         { 0x019A, 0x023D, 0x019A, 0x023D, { -1, -1, -1 } }, /* index: 267 */
     364                 :         { 0x019C, 0x019C, 0x026F, 0x019C, { -1, -1, -1 } }, /* index: 268 */
     365                 :         { 0x019D, 0x019D, 0x0272, 0x019D, { -1, -1, -1 } }, /* index: 269 */
     366                 :         { 0x019E, 0x0220, 0x019E, 0x0220, { -1, -1, -1 } }, /* index: 270 */
     367                 :         { 0x019F, 0x019F, 0x0275, 0x019F, { -1, -1, -1 } }, /* index: 271 */
     368                 :         { 0x01A0, 0x01A0, 0x01A1, 0x01A0, { -1, -1, -1 } }, /* index: 272 */
     369                 :         { 0x01A1, 0x01A0, 0x01A1, 0x01A0, { -1, -1, -1 } }, /* index: 273 */
     370                 :         { 0x01A2, 0x01A2, 0x01A3, 0x01A2, { -1, -1, -1 } }, /* index: 274 */
     371                 :         { 0x01A3, 0x01A2, 0x01A3, 0x01A2, { -1, -1, -1 } }, /* index: 275 */
     372                 :         { 0x01A4, 0x01A4, 0x01A5, 0x01A4, { -1, -1, -1 } }, /* index: 276 */
     373                 :         { 0x01A5, 0x01A4, 0x01A5, 0x01A4, { -1, -1, -1 } }, /* index: 277 */
     374                 :         { 0x01A6, 0x01A6, 0x0280, 0x01A6, { -1, -1, -1 } }, /* index: 278 */
     375                 :         { 0x01A7, 0x01A7, 0x01A8, 0x01A7, { -1, -1, -1 } }, /* index: 279 */
     376                 :         { 0x01A8, 0x01A7, 0x01A8, 0x01A7, { -1, -1, -1 } }, /* index: 280 */
     377                 :         { 0x01A9, 0x01A9, 0x0283, 0x01A9, { -1, -1, -1 } }, /* index: 281 */
     378                 :         { 0x01AC, 0x01AC, 0x01AD, 0x01AC, { -1, -1, -1 } }, /* index: 282 */
     379                 :         { 0x01AD, 0x01AC, 0x01AD, 0x01AC, { -1, -1, -1 } }, /* index: 283 */
     380                 :         { 0x01AE, 0x01AE, 0x0288, 0x01AE, { -1, -1, -1 } }, /* index: 284 */
     381                 :         { 0x01AF, 0x01AF, 0x01B0, 0x01AF, { -1, -1, -1 } }, /* index: 285 */
     382                 :         { 0x01B0, 0x01AF, 0x01B0, 0x01AF, { -1, -1, -1 } }, /* index: 286 */
     383                 :         { 0x01B1, 0x01B1, 0x028A, 0x01B1, { -1, -1, -1 } }, /* index: 287 */
     384                 :         { 0x01B2, 0x01B2, 0x028B, 0x01B2, { -1, -1, -1 } }, /* index: 288 */
     385                 :         { 0x01B3, 0x01B3, 0x01B4, 0x01B3, { -1, -1, -1 } }, /* index: 289 */
     386                 :         { 0x01B4, 0x01B3, 0x01B4, 0x01B3, { -1, -1, -1 } }, /* index: 290 */
     387                 :         { 0x01B5, 0x01B5, 0x01B6, 0x01B5, { -1, -1, -1 } }, /* index: 291 */
     388                 :         { 0x01B6, 0x01B5, 0x01B6, 0x01B5, { -1, -1, -1 } }, /* index: 292 */
     389                 :         { 0x01B7, 0x01B7, 0x0292, 0x01B7, { -1, -1, -1 } }, /* index: 293 */
     390                 :         { 0x01B8, 0x01B8, 0x01B9, 0x01B8, { -1, -1, -1 } }, /* index: 294 */
     391                 :         { 0x01B9, 0x01B8, 0x01B9, 0x01B8, { -1, -1, -1 } }, /* index: 295 */
     392                 :         { 0x01BC, 0x01BC, 0x01BD, 0x01BC, { -1, -1, -1 } }, /* index: 296 */
     393                 :         { 0x01BD, 0x01BC, 0x01BD, 0x01BC, { -1, -1, -1 } }, /* index: 297 */
     394                 :         { 0x01BF, 0x01F7, 0x01BF, 0x01F7, { -1, -1, -1 } }, /* index: 298 */
     395                 :         { 0x01C4, 0x01C4, 0x01C6, 0x01C5, { -1, -1, -1 } }, /* index: 299 */
     396                 :         { 0x01C5, 0x01C4, 0x01C6, 0x01C5, { -1, -1, -1 } }, /* index: 300 */
     397                 :         { 0x01C6, 0x01C4, 0x01C6, 0x01C5, { -1, -1, -1 } }, /* index: 301 */
     398                 :         { 0x01C7, 0x01C7, 0x01C9, 0x01C8, { -1, -1, -1 } }, /* index: 302 */
     399                 :         { 0x01C8, 0x01C7, 0x01C9, 0x01C8, { -1, -1, -1 } }, /* index: 303 */
     400                 :         { 0x01C9, 0x01C7, 0x01C9, 0x01C8, { -1, -1, -1 } }, /* index: 304 */
     401                 :         { 0x01CA, 0x01CA, 0x01CC, 0x01CB, { -1, -1, -1 } }, /* index: 305 */
     402                 :         { 0x01CB, 0x01CA, 0x01CC, 0x01CB, { -1, -1, -1 } }, /* index: 306 */
     403                 :         { 0x01CC, 0x01CA, 0x01CC, 0x01CB, { -1, -1, -1 } }, /* index: 307 */
     404                 :         { 0x01CD, 0x01CD, 0x01CE, 0x01CD, { -1, -1, -1 } }, /* index: 308 */
     405                 :         { 0x01CE, 0x01CD, 0x01CE, 0x01CD, { -1, -1, -1 } }, /* index: 309 */
     406                 :         { 0x01CF, 0x01CF, 0x01D0, 0x01CF, { -1, -1, -1 } }, /* index: 310 */
     407                 :         { 0x01D0, 0x01CF, 0x01D0, 0x01CF, { -1, -1, -1 } }, /* index: 311 */
     408                 :         { 0x01D1, 0x01D1, 0x01D2, 0x01D1, { -1, -1, -1 } }, /* index: 312 */
     409                 :         { 0x01D2, 0x01D1, 0x01D2, 0x01D1, { -1, -1, -1 } }, /* index: 313 */
     410                 :         { 0x01D3, 0x01D3, 0x01D4, 0x01D3, { -1, -1, -1 } }, /* index: 314 */
     411                 :         { 0x01D4, 0x01D3, 0x01D4, 0x01D3, { -1, -1, -1 } }, /* index: 315 */
     412                 :         { 0x01D5, 0x01D5, 0x01D6, 0x01D5, { -1, -1, -1 } }, /* index: 316 */
     413                 :         { 0x01D6, 0x01D5, 0x01D6, 0x01D5, { -1, -1, -1 } }, /* index: 317 */
     414                 :         { 0x01D7, 0x01D7, 0x01D8, 0x01D7, { -1, -1, -1 } }, /* index: 318 */
     415                 :         { 0x01D8, 0x01D7, 0x01D8, 0x01D7, { -1, -1, -1 } }, /* index: 319 */
     416                 :         { 0x01D9, 0x01D9, 0x01DA, 0x01D9, { -1, -1, -1 } }, /* index: 320 */
     417                 :         { 0x01DA, 0x01D9, 0x01DA, 0x01D9, { -1, -1, -1 } }, /* index: 321 */
     418                 :         { 0x01DB, 0x01DB, 0x01DC, 0x01DB, { -1, -1, -1 } }, /* index: 322 */
     419                 :         { 0x01DC, 0x01DB, 0x01DC, 0x01DB, { -1, -1, -1 } }, /* index: 323 */
     420                 :         { 0x01DD, 0x018E, 0x01DD, 0x018E, { -1, -1, -1 } }, /* index: 324 */
     421                 :         { 0x01DE, 0x01DE, 0x01DF, 0x01DE, { -1, -1, -1 } }, /* index: 325 */
     422                 :         { 0x01DF, 0x01DE, 0x01DF, 0x01DE, { -1, -1, -1 } }, /* index: 326 */
     423                 :         { 0x01E0, 0x01E0, 0x01E1, 0x01E0, { -1, -1, -1 } }, /* index: 327 */
     424                 :         { 0x01E1, 0x01E0, 0x01E1, 0x01E0, { -1, -1, -1 } }, /* index: 328 */
     425                 :         { 0x01E2, 0x01E2, 0x01E3, 0x01E2, { -1, -1, -1 } }, /* index: 329 */
     426                 :         { 0x01E3, 0x01E2, 0x01E3, 0x01E2, { -1, -1, -1 } }, /* index: 330 */
     427                 :         { 0x01E4, 0x01E4, 0x01E5, 0x01E4, { -1, -1, -1 } }, /* index: 331 */
     428                 :         { 0x01E5, 0x01E4, 0x01E5, 0x01E4, { -1, -1, -1 } }, /* index: 332 */
     429                 :         { 0x01E6, 0x01E6, 0x01E7, 0x01E6, { -1, -1, -1 } }, /* index: 333 */
     430                 :         { 0x01E7, 0x01E6, 0x01E7, 0x01E6, { -1, -1, -1 } }, /* index: 334 */
     431                 :         { 0x01E8, 0x01E8, 0x01E9, 0x01E8, { -1, -1, -1 } }, /* index: 335 */
     432                 :         { 0x01E9, 0x01E8, 0x01E9, 0x01E8, { -1, -1, -1 } }, /* index: 336 */
     433                 :         { 0x01EA, 0x01EA, 0x01EB, 0x01EA, { -1, -1, -1 } }, /* index: 337 */
     434                 :         { 0x01EB, 0x01EA, 0x01EB, 0x01EA, { -1, -1, -1 } }, /* index: 338 */
     435                 :         { 0x01EC, 0x01EC, 0x01ED, 0x01EC, { -1, -1, -1 } }, /* index: 339 */
     436                 :         { 0x01ED, 0x01EC, 0x01ED, 0x01EC, { -1, -1, -1 } }, /* index: 340 */
     437                 :         { 0x01EE, 0x01EE, 0x01EF, 0x01EE, { -1, -1, -1 } }, /* index: 341 */
     438                 :         { 0x01EF, 0x01EE, 0x01EF, 0x01EE, { -1, -1, -1 } }, /* index: 342 */
     439                 :         { 0x01F0, 0x01F0, 0x01F0, 0x01F0, { 18, -1, -1 } }, /* index: 343 */
     440                 :         { 0x01F1, 0x01F1, 0x01F3, 0x01F2, { -1, -1, -1 } }, /* index: 344 */
     441                 :         { 0x01F2, 0x01F1, 0x01F3, 0x01F2, { -1, -1, -1 } }, /* index: 345 */
     442                 :         { 0x01F3, 0x01F1, 0x01F3, 0x01F2, { -1, -1, -1 } }, /* index: 346 */
     443                 :         { 0x01F4, 0x01F4, 0x01F5, 0x01F4, { -1, -1, -1 } }, /* index: 347 */
     444                 :         { 0x01F5, 0x01F4, 0x01F5, 0x01F4, { -1, -1, -1 } }, /* index: 348 */
     445                 :         { 0x01F6, 0x01F6, 0x0195, 0x01F6, { -1, -1, -1 } }, /* index: 349 */
     446                 :         { 0x01F7, 0x01F7, 0x01BF, 0x01F7, { -1, -1, -1 } }, /* index: 350 */
     447                 :         { 0x01F8, 0x01F8, 0x01F9, 0x01F8, { -1, -1, -1 } }, /* index: 351 */
     448                 :         { 0x01F9, 0x01F8, 0x01F9, 0x01F8, { -1, -1, -1 } }, /* index: 352 */
     449                 :         { 0x01FA, 0x01FA, 0x01FB, 0x01FA, { -1, -1, -1 } }, /* index: 353 */
     450                 :         { 0x01FB, 0x01FA, 0x01FB, 0x01FA, { -1, -1, -1 } }, /* index: 354 */
     451                 :         { 0x01FC, 0x01FC, 0x01FD, 0x01FC, { -1, -1, -1 } }, /* index: 355 */
     452                 :         { 0x01FD, 0x01FC, 0x01FD, 0x01FC, { -1, -1, -1 } }, /* index: 356 */
     453                 :         { 0x01FE, 0x01FE, 0x01FF, 0x01FE, { -1, -1, -1 } }, /* index: 357 */
     454                 :         { 0x01FF, 0x01FE, 0x01FF, 0x01FE, { -1, -1, -1 } }, /* index: 358 */
     455                 :         { 0x0200, 0x0200, 0x0201, 0x0200, { -1, -1, -1 } }, /* index: 359 */
     456                 :         { 0x0201, 0x0200, 0x0201, 0x0200, { -1, -1, -1 } }, /* index: 360 */
     457                 :         { 0x0202, 0x0202, 0x0203, 0x0202, { -1, -1, -1 } }, /* index: 361 */
     458                 :         { 0x0203, 0x0202, 0x0203, 0x0202, { -1, -1, -1 } }, /* index: 362 */
     459                 :         { 0x0204, 0x0204, 0x0205, 0x0204, { -1, -1, -1 } }, /* index: 363 */
     460                 :         { 0x0205, 0x0204, 0x0205, 0x0204, { -1, -1, -1 } }, /* index: 364 */
     461                 :         { 0x0206, 0x0206, 0x0207, 0x0206, { -1, -1, -1 } }, /* index: 365 */
     462                 :         { 0x0207, 0x0206, 0x0207, 0x0206, { -1, -1, -1 } }, /* index: 366 */
     463                 :         { 0x0208, 0x0208, 0x0209, 0x0208, { -1, -1, -1 } }, /* index: 367 */
     464                 :         { 0x0209, 0x0208, 0x0209, 0x0208, { -1, -1, -1 } }, /* index: 368 */
     465                 :         { 0x020A, 0x020A, 0x020B, 0x020A, { -1, -1, -1 } }, /* index: 369 */
     466                 :         { 0x020B, 0x020A, 0x020B, 0x020A, { -1, -1, -1 } }, /* index: 370 */
     467                 :         { 0x020C, 0x020C, 0x020D, 0x020C, { -1, -1, -1 } }, /* index: 371 */
     468                 :         { 0x020D, 0x020C, 0x020D, 0x020C, { -1, -1, -1 } }, /* index: 372 */
     469                 :         { 0x020E, 0x020E, 0x020F, 0x020E, { -1, -1, -1 } }, /* index: 373 */
     470                 :         { 0x020F, 0x020E, 0x020F, 0x020E, { -1, -1, -1 } }, /* index: 374 */
     471                 :         { 0x0210, 0x0210, 0x0211, 0x0210, { -1, -1, -1 } }, /* index: 375 */
     472                 :         { 0x0211, 0x0210, 0x0211, 0x0210, { -1, -1, -1 } }, /* index: 376 */
     473                 :         { 0x0212, 0x0212, 0x0213, 0x0212, { -1, -1, -1 } }, /* index: 377 */
     474                 :         { 0x0213, 0x0212, 0x0213, 0x0212, { -1, -1, -1 } }, /* index: 378 */
     475                 :         { 0x0214, 0x0214, 0x0215, 0x0214, { -1, -1, -1 } }, /* index: 379 */
     476                 :         { 0x0215, 0x0214, 0x0215, 0x0214, { -1, -1, -1 } }, /* index: 380 */
     477                 :         { 0x0216, 0x0216, 0x0217, 0x0216, { -1, -1, -1 } }, /* index: 381 */
     478                 :         { 0x0217, 0x0216, 0x0217, 0x0216, { -1, -1, -1 } }, /* index: 382 */
     479                 :         { 0x0218, 0x0218, 0x0219, 0x0218, { -1, -1, -1 } }, /* index: 383 */
     480                 :         { 0x0219, 0x0218, 0x0219, 0x0218, { -1, -1, -1 } }, /* index: 384 */
     481                 :         { 0x021A, 0x021A, 0x021B, 0x021A, { -1, -1, -1 } }, /* index: 385 */
     482                 :         { 0x021B, 0x021A, 0x021B, 0x021A, { -1, -1, -1 } }, /* index: 386 */
     483                 :         { 0x021C, 0x021C, 0x021D, 0x021C, { -1, -1, -1 } }, /* index: 387 */
     484                 :         { 0x021D, 0x021C, 0x021D, 0x021C, { -1, -1, -1 } }, /* index: 388 */
     485                 :         { 0x021E, 0x021E, 0x021F, 0x021E, { -1, -1, -1 } }, /* index: 389 */
     486                 :         { 0x021F, 0x021E, 0x021F, 0x021E, { -1, -1, -1 } }, /* index: 390 */
     487                 :         { 0x0220, 0x0220, 0x019E, 0x0220, { -1, -1, -1 } }, /* index: 391 */
     488                 :         { 0x0222, 0x0222, 0x0223, 0x0222, { -1, -1, -1 } }, /* index: 392 */
     489                 :         { 0x0223, 0x0222, 0x0223, 0x0222, { -1, -1, -1 } }, /* index: 393 */
     490                 :         { 0x0224, 0x0224, 0x0225, 0x0224, { -1, -1, -1 } }, /* index: 394 */
     491                 :         { 0x0225, 0x0224, 0x0225, 0x0224, { -1, -1, -1 } }, /* index: 395 */
     492                 :         { 0x0226, 0x0226, 0x0227, 0x0226, { -1, -1, -1 } }, /* index: 396 */
     493                 :         { 0x0227, 0x0226, 0x0227, 0x0226, { -1, -1, -1 } }, /* index: 397 */
     494                 :         { 0x0228, 0x0228, 0x0229, 0x0228, { -1, -1, -1 } }, /* index: 398 */
     495                 :         { 0x0229, 0x0228, 0x0229, 0x0228, { -1, -1, -1 } }, /* index: 399 */
     496                 :         { 0x022A, 0x022A, 0x022B, 0x022A, { -1, -1, -1 } }, /* index: 400 */
     497                 :         { 0x022B, 0x022A, 0x022B, 0x022A, { -1, -1, -1 } }, /* index: 401 */
     498                 :         { 0x022C, 0x022C, 0x022D, 0x022C, { -1, -1, -1 } }, /* index: 402 */
     499                 :         { 0x022D, 0x022C, 0x022D, 0x022C, { -1, -1, -1 } }, /* index: 403 */
     500                 :         { 0x022E, 0x022E, 0x022F, 0x022E, { -1, -1, -1 } }, /* index: 404 */
     501                 :         { 0x022F, 0x022E, 0x022F, 0x022E, { -1, -1, -1 } }, /* index: 405 */
     502                 :         { 0x0230, 0x0230, 0x0231, 0x0230, { -1, -1, -1 } }, /* index: 406 */
     503                 :         { 0x0231, 0x0230, 0x0231, 0x0230, { -1, -1, -1 } }, /* index: 407 */
     504                 :         { 0x0232, 0x0232, 0x0233, 0x0232, { -1, -1, -1 } }, /* index: 408 */
     505                 :         { 0x0233, 0x0232, 0x0233, 0x0232, { -1, -1, -1 } }, /* index: 409 */
     506                 :         { 0x023A, 0x023A, 0x2C65, 0x023A, { -1, -1, -1 } }, /* index: 410 */
     507                 :         { 0x023B, 0x023B, 0x023C, 0x023B, { -1, -1, -1 } }, /* index: 411 */
     508                 :         { 0x023C, 0x023B, 0x023C, 0x023B, { -1, -1, -1 } }, /* index: 412 */
     509                 :         { 0x023D, 0x023D, 0x019A, 0x023D, { -1, -1, -1 } }, /* index: 413 */
     510                 :         { 0x023E, 0x023E, 0x2C66, 0x023E, { -1, -1, -1 } }, /* index: 414 */
     511                 :         { 0x0241, 0x0241, 0x0242, 0x0241, { -1, -1, -1 } }, /* index: 415 */
     512                 :         { 0x0242, 0x0241, 0x0242, 0x0241, { -1, -1, -1 } }, /* index: 416 */
     513                 :         { 0x0243, 0x0243, 0x0180, 0x0243, { -1, -1, -1 } }, /* index: 417 */
     514                 :         { 0x0244, 0x0244, 0x0289, 0x0244, { -1, -1, -1 } }, /* index: 418 */
     515                 :         { 0x0245, 0x0245, 0x028C, 0x0245, { -1, -1, -1 } }, /* index: 419 */
     516                 :         { 0x0246, 0x0246, 0x0247, 0x0246, { -1, -1, -1 } }, /* index: 420 */
     517                 :         { 0x0247, 0x0246, 0x0247, 0x0246, { -1, -1, -1 } }, /* index: 421 */
     518                 :         { 0x0248, 0x0248, 0x0249, 0x0248, { -1, -1, -1 } }, /* index: 422 */
     519                 :         { 0x0249, 0x0248, 0x0249, 0x0248, { -1, -1, -1 } }, /* index: 423 */
     520                 :         { 0x024A, 0x024A, 0x024B, 0x024A, { -1, -1, -1 } }, /* index: 424 */
     521                 :         { 0x024B, 0x024A, 0x024B, 0x024A, { -1, -1, -1 } }, /* index: 425 */
     522                 :         { 0x024C, 0x024C, 0x024D, 0x024C, { -1, -1, -1 } }, /* index: 426 */
     523                 :         { 0x024D, 0x024C, 0x024D, 0x024C, { -1, -1, -1 } }, /* index: 427 */
     524                 :         { 0x024E, 0x024E, 0x024F, 0x024E, { -1, -1, -1 } }, /* index: 428 */
     525                 :         { 0x024F, 0x024E, 0x024F, 0x024E, { -1, -1, -1 } }, /* index: 429 */
     526                 :         { 0x0250, 0x2C6F, 0x0250, 0x2C6F, { -1, -1, -1 } }, /* index: 430 */
     527                 :         { 0x0251, 0x2C6D, 0x0251, 0x2C6D, { -1, -1, -1 } }, /* index: 431 */
     528                 :         { 0x0253, 0x0181, 0x0253, 0x0181, { -1, -1, -1 } }, /* index: 432 */
     529                 :         { 0x0254, 0x0186, 0x0254, 0x0186, { -1, -1, -1 } }, /* index: 433 */
     530                 :         { 0x0256, 0x0189, 0x0256, 0x0189, { -1, -1, -1 } }, /* index: 434 */
     531                 :         { 0x0257, 0x018A, 0x0257, 0x018A, { -1, -1, -1 } }, /* index: 435 */
     532                 :         { 0x0259, 0x018F, 0x0259, 0x018F, { -1, -1, -1 } }, /* index: 436 */
     533                 :         { 0x025B, 0x0190, 0x025B, 0x0190, { -1, -1, -1 } }, /* index: 437 */
     534                 :         { 0x0260, 0x0193, 0x0260, 0x0193, { -1, -1, -1 } }, /* index: 438 */
     535                 :         { 0x0263, 0x0194, 0x0263, 0x0194, { -1, -1, -1 } }, /* index: 439 */
     536                 :         { 0x0268, 0x0197, 0x0268, 0x0197, { -1, -1, -1 } }, /* index: 440 */
     537                 :         { 0x0269, 0x0196, 0x0269, 0x0196, { -1, -1, -1 } }, /* index: 441 */
     538                 :         { 0x026B, 0x2C62, 0x026B, 0x2C62, { -1, -1, -1 } }, /* index: 442 */
     539                 :         { 0x026F, 0x019C, 0x026F, 0x019C, { -1, -1, -1 } }, /* index: 443 */
     540                 :         { 0x0271, 0x2C6E, 0x0271, 0x2C6E, { -1, -1, -1 } }, /* index: 444 */
     541                 :         { 0x0272, 0x019D, 0x0272, 0x019D, { -1, -1, -1 } }, /* index: 445 */
     542                 :         { 0x0275, 0x019F, 0x0275, 0x019F, { -1, -1, -1 } }, /* index: 446 */
     543                 :         { 0x027D, 0x2C64, 0x027D, 0x2C64, { -1, -1, -1 } }, /* index: 447 */
     544                 :         { 0x0280, 0x01A6, 0x0280, 0x01A6, { -1, -1, -1 } }, /* index: 448 */
     545                 :         { 0x0283, 0x01A9, 0x0283, 0x01A9, { -1, -1, -1 } }, /* index: 449 */
     546                 :         { 0x0288, 0x01AE, 0x0288, 0x01AE, { -1, -1, -1 } }, /* index: 450 */
     547                 :         { 0x0289, 0x0244, 0x0289, 0x0244, { -1, -1, -1 } }, /* index: 451 */
     548                 :         { 0x028A, 0x01B1, 0x028A, 0x01B1, { -1, -1, -1 } }, /* index: 452 */
     549                 :         { 0x028B, 0x01B2, 0x028B, 0x01B2, { -1, -1, -1 } }, /* index: 453 */
     550                 :         { 0x028C, 0x0245, 0x028C, 0x0245, { -1, -1, -1 } }, /* index: 454 */
     551                 :         { 0x0292, 0x01B7, 0x0292, 0x01B7, { -1, -1, -1 } }, /* index: 455 */
     552                 :         { 0x0307, 0x0307, 0x0307, 0x0307, { 104, 113, 114 } }, /* index: 456 */
     553                 :         { 0x0345, 0x0399, 0x0345, 0x0399, { -1, -1, -1 } }, /* index: 457 */
     554                 :         { 0x0370, 0x0370, 0x0371, 0x0370, { -1, -1, -1 } }, /* index: 458 */
     555                 :         { 0x0371, 0x0370, 0x0371, 0x0370, { -1, -1, -1 } }, /* index: 459 */
     556                 :         { 0x0372, 0x0372, 0x0373, 0x0372, { -1, -1, -1 } }, /* index: 460 */
     557                 :         { 0x0373, 0x0372, 0x0373, 0x0372, { -1, -1, -1 } }, /* index: 461 */
     558                 :         { 0x0376, 0x0376, 0x0377, 0x0376, { -1, -1, -1 } }, /* index: 462 */
     559                 :         { 0x0377, 0x0376, 0x0377, 0x0376, { -1, -1, -1 } }, /* index: 463 */
     560                 :         { 0x037B, 0x03FD, 0x037B, 0x03FD, { -1, -1, -1 } }, /* index: 464 */
     561                 :         { 0x037C, 0x03FE, 0x037C, 0x03FE, { -1, -1, -1 } }, /* index: 465 */
     562                 :         { 0x037D, 0x03FF, 0x037D, 0x03FF, { -1, -1, -1 } }, /* index: 466 */
     563                 :         { 0x0386, 0x0386, 0x03AC, 0x0386, { -1, -1, -1 } }, /* index: 467 */
     564                 :         { 0x0388, 0x0388, 0x03AD, 0x0388, { -1, -1, -1 } }, /* index: 468 */
     565                 :         { 0x0389, 0x0389, 0x03AE, 0x0389, { -1, -1, -1 } }, /* index: 469 */
     566                 :         { 0x038A, 0x038A, 0x03AF, 0x038A, { -1, -1, -1 } }, /* index: 470 */
     567                 :         { 0x038C, 0x038C, 0x03CC, 0x038C, { -1, -1, -1 } }, /* index: 471 */
     568                 :         { 0x038E, 0x038E, 0x03CD, 0x038E, { -1, -1, -1 } }, /* index: 472 */
     569                 :         { 0x038F, 0x038F, 0x03CE, 0x038F, { -1, -1, -1 } }, /* index: 473 */
     570                 :         { 0x0390, 0x0390, 0x0390, 0x0390, { 16, -1, -1 } }, /* index: 474 */
     571                 :         { 0x0391, 0x0391, 0x03B1, 0x0391, { -1, -1, -1 } }, /* index: 475 */
     572                 :         { 0x0392, 0x0392, 0x03B2, 0x0392, { -1, -1, -1 } }, /* index: 476 */
     573                 :         { 0x0393, 0x0393, 0x03B3, 0x0393, { -1, -1, -1 } }, /* index: 477 */
     574                 :         { 0x0394, 0x0394, 0x03B4, 0x0394, { -1, -1, -1 } }, /* index: 478 */
     575                 :         { 0x0395, 0x0395, 0x03B5, 0x0395, { -1, -1, -1 } }, /* index: 479 */
     576                 :         { 0x0396, 0x0396, 0x03B6, 0x0396, { -1, -1, -1 } }, /* index: 480 */
     577                 :         { 0x0397, 0x0397, 0x03B7, 0x0397, { -1, -1, -1 } }, /* index: 481 */
     578                 :         { 0x0398, 0x0398, 0x03B8, 0x0398, { -1, -1, -1 } }, /* index: 482 */
     579                 :         { 0x0399, 0x0399, 0x03B9, 0x0399, { -1, -1, -1 } }, /* index: 483 */
     580                 :         { 0x039A, 0x039A, 0x03BA, 0x039A, { -1, -1, -1 } }, /* index: 484 */
     581                 :         { 0x039B, 0x039B, 0x03BB, 0x039B, { -1, -1, -1 } }, /* index: 485 */
     582                 :         { 0x039C, 0x039C, 0x03BC, 0x039C, { -1, -1, -1 } }, /* index: 486 */
     583                 :         { 0x039D, 0x039D, 0x03BD, 0x039D, { -1, -1, -1 } }, /* index: 487 */
     584                 :         { 0x039E, 0x039E, 0x03BE, 0x039E, { -1, -1, -1 } }, /* index: 488 */
     585                 :         { 0x039F, 0x039F, 0x03BF, 0x039F, { -1, -1, -1 } }, /* index: 489 */
     586                 :         { 0x03A0, 0x03A0, 0x03C0, 0x03A0, { -1, -1, -1 } }, /* index: 490 */
     587                 :         { 0x03A1, 0x03A1, 0x03C1, 0x03A1, { -1, -1, -1 } }, /* index: 491 */
     588                 :         { 0x03A3, 0x03A3, 0x03C3, 0x03A3, { 103, -1, -1 } }, /* index: 492 */
     589                 :         { 0x03A4, 0x03A4, 0x03C4, 0x03A4, { -1, -1, -1 } }, /* index: 493 */
     590                 :         { 0x03A5, 0x03A5, 0x03C5, 0x03A5, { -1, -1, -1 } }, /* index: 494 */
     591                 :         { 0x03A6, 0x03A6, 0x03C6, 0x03A6, { -1, -1, -1 } }, /* index: 495 */
     592                 :         { 0x03A7, 0x03A7, 0x03C7, 0x03A7, { -1, -1, -1 } }, /* index: 496 */
     593                 :         { 0x03A8, 0x03A8, 0x03C8, 0x03A8, { -1, -1, -1 } }, /* index: 497 */
     594                 :         { 0x03A9, 0x03A9, 0x03C9, 0x03A9, { -1, -1, -1 } }, /* index: 498 */
     595                 :         { 0x03AA, 0x03AA, 0x03CA, 0x03AA, { -1, -1, -1 } }, /* index: 499 */
     596                 :         { 0x03AB, 0x03AB, 0x03CB, 0x03AB, { -1, -1, -1 } }, /* index: 500 */
     597                 :         { 0x03AC, 0x0386, 0x03AC, 0x0386, { -1, -1, -1 } }, /* index: 501 */
     598                 :         { 0x03AD, 0x0388, 0x03AD, 0x0388, { -1, -1, -1 } }, /* index: 502 */
     599                 :         { 0x03AE, 0x0389, 0x03AE, 0x0389, { -1, -1, -1 } }, /* index: 503 */
     600                 :         { 0x03AF, 0x038A, 0x03AF, 0x038A, { -1, -1, -1 } }, /* index: 504 */
     601                 :         { 0x03B0, 0x03B0, 0x03B0, 0x03B0, { 17, -1, -1 } }, /* index: 505 */
     602                 :         { 0x03B1, 0x0391, 0x03B1, 0x0391, { -1, -1, -1 } }, /* index: 506 */
     603                 :         { 0x03B2, 0x0392, 0x03B2, 0x0392, { -1, -1, -1 } }, /* index: 507 */
     604                 :         { 0x03B3, 0x0393, 0x03B3, 0x0393, { -1, -1, -1 } }, /* index: 508 */
     605                 :         { 0x03B4, 0x0394, 0x03B4, 0x0394, { -1, -1, -1 } }, /* index: 509 */
     606                 :         { 0x03B5, 0x0395, 0x03B5, 0x0395, { -1, -1, -1 } }, /* index: 510 */
     607                 :         { 0x03B6, 0x0396, 0x03B6, 0x0396, { -1, -1, -1 } }, /* index: 511 */
     608                 :         { 0x03B7, 0x0397, 0x03B7, 0x0397, { -1, -1, -1 } }, /* index: 512 */
     609                 :         { 0x03B8, 0x0398, 0x03B8, 0x0398, { -1, -1, -1 } }, /* index: 513 */
     610                 :         { 0x03B9, 0x0399, 0x03B9, 0x0399, { -1, -1, -1 } }, /* index: 514 */
     611                 :         { 0x03BA, 0x039A, 0x03BA, 0x039A, { -1, -1, -1 } }, /* index: 515 */
     612                 :         { 0x03BB, 0x039B, 0x03BB, 0x039B, { -1, -1, -1 } }, /* index: 516 */
     613                 :         { 0x03BC, 0x039C, 0x03BC, 0x039C, { -1, -1, -1 } }, /* index: 517 */
     614                 :         { 0x03BD, 0x039D, 0x03BD, 0x039D, { -1, -1, -1 } }, /* index: 518 */
     615                 :         { 0x03BE, 0x039E, 0x03BE, 0x039E, { -1, -1, -1 } }, /* index: 519 */
     616                 :         { 0x03BF, 0x039F, 0x03BF, 0x039F, { -1, -1, -1 } }, /* index: 520 */
     617                 :         { 0x03C0, 0x03A0, 0x03C0, 0x03A0, { -1, -1, -1 } }, /* index: 521 */
     618                 :         { 0x03C1, 0x03A1, 0x03C1, 0x03A1, { -1, -1, -1 } }, /* index: 522 */
     619                 :         { 0x03C2, 0x03A3, 0x03C2, 0x03A3, { -1, -1, -1 } }, /* index: 523 */
     620                 :         { 0x03C3, 0x03A3, 0x03C3, 0x03A3, { -1, -1, -1 } }, /* index: 524 */
     621                 :         { 0x03C4, 0x03A4, 0x03C4, 0x03A4, { -1, -1, -1 } }, /* index: 525 */
     622                 :         { 0x03C5, 0x03A5, 0x03C5, 0x03A5, { -1, -1, -1 } }, /* index: 526 */
     623                 :         { 0x03C6, 0x03A6, 0x03C6, 0x03A6, { -1, -1, -1 } }, /* index: 527 */
     624                 :         { 0x03C7, 0x03A7, 0x03C7, 0x03A7, { -1, -1, -1 } }, /* index: 528 */
     625                 :         { 0x03C8, 0x03A8, 0x03C8, 0x03A8, { -1, -1, -1 } }, /* index: 529 */
     626                 :         { 0x03C9, 0x03A9, 0x03C9, 0x03A9, { -1, -1, -1 } }, /* index: 530 */
     627                 :         { 0x03CA, 0x03AA, 0x03CA, 0x03AA, { -1, -1, -1 } }, /* index: 531 */
     628                 :         { 0x03CB, 0x03AB, 0x03CB, 0x03AB, { -1, -1, -1 } }, /* index: 532 */
     629                 :         { 0x03CC, 0x038C, 0x03CC, 0x038C, { -1, -1, -1 } }, /* index: 533 */
     630                 :         { 0x03CD, 0x038E, 0x03CD, 0x038E, { -1, -1, -1 } }, /* index: 534 */
     631                 :         { 0x03CE, 0x038F, 0x03CE, 0x038F, { -1, -1, -1 } }, /* index: 535 */
     632                 :         { 0x03CF, 0x03CF, 0x03D7, 0x03CF, { -1, -1, -1 } }, /* index: 536 */
     633                 :         { 0x03D0, 0x0392, 0x03D0, 0x0392, { -1, -1, -1 } }, /* index: 537 */
     634                 :         { 0x03D1, 0x0398, 0x03D1, 0x0398, { -1, -1, -1 } }, /* index: 538 */
     635                 :         { 0x03D5, 0x03A6, 0x03D5, 0x03A6, { -1, -1, -1 } }, /* index: 539 */
     636                 :         { 0x03D6, 0x03A0, 0x03D6, 0x03A0, { -1, -1, -1 } }, /* index: 540 */
     637                 :         { 0x03D7, 0x03CF, 0x03D7, 0x03CF, { -1, -1, -1 } }, /* index: 541 */
     638                 :         { 0x03D8, 0x03D8, 0x03D9, 0x03D8, { -1, -1, -1 } }, /* index: 542 */
     639                 :         { 0x03D9, 0x03D8, 0x03D9, 0x03D8, { -1, -1, -1 } }, /* index: 543 */
     640                 :         { 0x03DA, 0x03DA, 0x03DB, 0x03DA, { -1, -1, -1 } }, /* index: 544 */
     641                 :         { 0x03DB, 0x03DA, 0x03DB, 0x03DA, { -1, -1, -1 } }, /* index: 545 */
     642                 :         { 0x03DC, 0x03DC, 0x03DD, 0x03DC, { -1, -1, -1 } }, /* index: 546 */
     643                 :         { 0x03DD, 0x03DC, 0x03DD, 0x03DC, { -1, -1, -1 } }, /* index: 547 */
     644                 :         { 0x03DE, 0x03DE, 0x03DF, 0x03DE, { -1, -1, -1 } }, /* index: 548 */
     645                 :         { 0x03DF, 0x03DE, 0x03DF, 0x03DE, { -1, -1, -1 } }, /* index: 549 */
     646                 :         { 0x03E0, 0x03E0, 0x03E1, 0x03E0, { -1, -1, -1 } }, /* index: 550 */
     647                 :         { 0x03E1, 0x03E0, 0x03E1, 0x03E0, { -1, -1, -1 } }, /* index: 551 */
     648                 :         { 0x03E2, 0x03E2, 0x03E3, 0x03E2, { -1, -1, -1 } }, /* index: 552 */
     649                 :         { 0x03E3, 0x03E2, 0x03E3, 0x03E2, { -1, -1, -1 } }, /* index: 553 */
     650                 :         { 0x03E4, 0x03E4, 0x03E5, 0x03E4, { -1, -1, -1 } }, /* index: 554 */
     651                 :         { 0x03E5, 0x03E4, 0x03E5, 0x03E4, { -1, -1, -1 } }, /* index: 555 */
     652                 :         { 0x03E6, 0x03E6, 0x03E7, 0x03E6, { -1, -1, -1 } }, /* index: 556 */
     653                 :         { 0x03E7, 0x03E6, 0x03E7, 0x03E6, { -1, -1, -1 } }, /* index: 557 */
     654                 :         { 0x03E8, 0x03E8, 0x03E9, 0x03E8, { -1, -1, -1 } }, /* index: 558 */
     655                 :         { 0x03E9, 0x03E8, 0x03E9, 0x03E8, { -1, -1, -1 } }, /* index: 559 */
     656                 :         { 0x03EA, 0x03EA, 0x03EB, 0x03EA, { -1, -1, -1 } }, /* index: 560 */
     657                 :         { 0x03EB, 0x03EA, 0x03EB, 0x03EA, { -1, -1, -1 } }, /* index: 561 */
     658                 :         { 0x03EC, 0x03EC, 0x03ED, 0x03EC, { -1, -1, -1 } }, /* index: 562 */
     659                 :         { 0x03ED, 0x03EC, 0x03ED, 0x03EC, { -1, -1, -1 } }, /* index: 563 */
     660                 :         { 0x03EE, 0x03EE, 0x03EF, 0x03EE, { -1, -1, -1 } }, /* index: 564 */
     661                 :         { 0x03EF, 0x03EE, 0x03EF, 0x03EE, { -1, -1, -1 } }, /* index: 565 */
     662                 :         { 0x03F0, 0x039A, 0x03F0, 0x039A, { -1, -1, -1 } }, /* index: 566 */
     663                 :         { 0x03F1, 0x03A1, 0x03F1, 0x03A1, { -1, -1, -1 } }, /* index: 567 */
     664                 :         { 0x03F2, 0x03F9, 0x03F2, 0x03F9, { -1, -1, -1 } }, /* index: 568 */
     665                 :         { 0x03F4, 0x03F4, 0x03B8, 0x03F4, { -1, -1, -1 } }, /* index: 569 */
     666                 :         { 0x03F5, 0x0395, 0x03F5, 0x0395, { -1, -1, -1 } }, /* index: 570 */
     667                 :         { 0x03F7, 0x03F7, 0x03F8, 0x03F7, { -1, -1, -1 } }, /* index: 571 */
     668                 :         { 0x03F8, 0x03F7, 0x03F8, 0x03F7, { -1, -1, -1 } }, /* index: 572 */
     669                 :         { 0x03F9, 0x03F9, 0x03F2, 0x03F9, { -1, -1, -1 } }, /* index: 573 */
     670                 :         { 0x03FA, 0x03FA, 0x03FB, 0x03FA, { -1, -1, -1 } }, /* index: 574 */
     671                 :         { 0x03FB, 0x03FA, 0x03FB, 0x03FA, { -1, -1, -1 } }, /* index: 575 */
     672                 :         { 0x03FD, 0x03FD, 0x037B, 0x03FD, { -1, -1, -1 } }, /* index: 576 */
     673                 :         { 0x03FE, 0x03FE, 0x037C, 0x03FE, { -1, -1, -1 } }, /* index: 577 */
     674                 :         { 0x03FF, 0x03FF, 0x037D, 0x03FF, { -1, -1, -1 } }, /* index: 578 */
     675                 :         { 0x0400, 0x0400, 0x0450, 0x0400, { -1, -1, -1 } }, /* index: 579 */
     676                 :         { 0x0401, 0x0401, 0x0451, 0x0401, { -1, -1, -1 } }, /* index: 580 */
     677                 :         { 0x0402, 0x0402, 0x0452, 0x0402, { -1, -1, -1 } }, /* index: 581 */
     678                 :         { 0x0403, 0x0403, 0x0453, 0x0403, { -1, -1, -1 } }, /* index: 582 */
     679                 :         { 0x0404, 0x0404, 0x0454, 0x0404, { -1, -1, -1 } }, /* index: 583 */
     680                 :         { 0x0405, 0x0405, 0x0455, 0x0405, { -1, -1, -1 } }, /* index: 584 */
     681                 :         { 0x0406, 0x0406, 0x0456, 0x0406, { -1, -1, -1 } }, /* index: 585 */
     682                 :         { 0x0407, 0x0407, 0x0457, 0x0407, { -1, -1, -1 } }, /* index: 586 */
     683                 :         { 0x0408, 0x0408, 0x0458, 0x0408, { -1, -1, -1 } }, /* index: 587 */
     684                 :         { 0x0409, 0x0409, 0x0459, 0x0409, { -1, -1, -1 } }, /* index: 588 */
     685                 :         { 0x040A, 0x040A, 0x045A, 0x040A, { -1, -1, -1 } }, /* index: 589 */
     686                 :         { 0x040B, 0x040B, 0x045B, 0x040B, { -1, -1, -1 } }, /* index: 590 */
     687                 :         { 0x040C, 0x040C, 0x045C, 0x040C, { -1, -1, -1 } }, /* index: 591 */
     688                 :         { 0x040D, 0x040D, 0x045D, 0x040D, { -1, -1, -1 } }, /* index: 592 */
     689                 :         { 0x040E, 0x040E, 0x045E, 0x040E, { -1, -1, -1 } }, /* index: 593 */
     690                 :         { 0x040F, 0x040F, 0x045F, 0x040F, { -1, -1, -1 } }, /* index: 594 */
     691                 :         { 0x0410, 0x0410, 0x0430, 0x0410, { -1, -1, -1 } }, /* index: 595 */
     692                 :         { 0x0411, 0x0411, 0x0431, 0x0411, { -1, -1, -1 } }, /* index: 596 */
     693                 :         { 0x0412, 0x0412, 0x0432, 0x0412, { -1, -1, -1 } }, /* index: 597 */
     694                 :         { 0x0413, 0x0413, 0x0433, 0x0413, { -1, -1, -1 } }, /* index: 598 */
     695                 :         { 0x0414, 0x0414, 0x0434, 0x0414, { -1, -1, -1 } }, /* index: 599 */
     696                 :         { 0x0415, 0x0415, 0x0435, 0x0415, { -1, -1, -1 } }, /* index: 600 */
     697                 :         { 0x0416, 0x0416, 0x0436, 0x0416, { -1, -1, -1 } }, /* index: 601 */
     698                 :         { 0x0417, 0x0417, 0x0437, 0x0417, { -1, -1, -1 } }, /* index: 602 */
     699                 :         { 0x0418, 0x0418, 0x0438, 0x0418, { -1, -1, -1 } }, /* index: 603 */
     700                 :         { 0x0419, 0x0419, 0x0439, 0x0419, { -1, -1, -1 } }, /* index: 604 */
     701                 :         { 0x041A, 0x041A, 0x043A, 0x041A, { -1, -1, -1 } }, /* index: 605 */
     702                 :         { 0x041B, 0x041B, 0x043B, 0x041B, { -1, -1, -1 } }, /* index: 606 */
     703                 :         { 0x041C, 0x041C, 0x043C, 0x041C, { -1, -1, -1 } }, /* index: 607 */
     704                 :         { 0x041D, 0x041D, 0x043D, 0x041D, { -1, -1, -1 } }, /* index: 608 */
     705                 :         { 0x041E, 0x041E, 0x043E, 0x041E, { -1, -1, -1 } }, /* index: 609 */
     706                 :         { 0x041F, 0x041F, 0x043F, 0x041F, { -1, -1, -1 } }, /* index: 610 */
     707                 :         { 0x0420, 0x0420, 0x0440, 0x0420, { -1, -1, -1 } }, /* index: 611 */
     708                 :         { 0x0421, 0x0421, 0x0441, 0x0421, { -1, -1, -1 } }, /* index: 612 */
     709                 :         { 0x0422, 0x0422, 0x0442, 0x0422, { -1, -1, -1 } }, /* index: 613 */
     710                 :         { 0x0423, 0x0423, 0x0443, 0x0423, { -1, -1, -1 } }, /* index: 614 */
     711                 :         { 0x0424, 0x0424, 0x0444, 0x0424, { -1, -1, -1 } }, /* index: 615 */
     712                 :         { 0x0425, 0x0425, 0x0445, 0x0425, { -1, -1, -1 } }, /* index: 616 */
     713                 :         { 0x0426, 0x0426, 0x0446, 0x0426, { -1, -1, -1 } }, /* index: 617 */
     714                 :         { 0x0427, 0x0427, 0x0447, 0x0427, { -1, -1, -1 } }, /* index: 618 */
     715                 :         { 0x0428, 0x0428, 0x0448, 0x0428, { -1, -1, -1 } }, /* index: 619 */
     716                 :         { 0x0429, 0x0429, 0x0449, 0x0429, { -1, -1, -1 } }, /* index: 620 */
     717                 :         { 0x042A, 0x042A, 0x044A, 0x042A, { -1, -1, -1 } }, /* index: 621 */
     718                 :         { 0x042B, 0x042B, 0x044B, 0x042B, { -1, -1, -1 } }, /* index: 622 */
     719                 :         { 0x042C, 0x042C, 0x044C, 0x042C, { -1, -1, -1 } }, /* index: 623 */
     720                 :         { 0x042D, 0x042D, 0x044D, 0x042D, { -1, -1, -1 } }, /* index: 624 */
     721                 :         { 0x042E, 0x042E, 0x044E, 0x042E, { -1, -1, -1 } }, /* index: 625 */
     722                 :         { 0x042F, 0x042F, 0x044F, 0x042F, { -1, -1, -1 } }, /* index: 626 */
     723                 :         { 0x0430, 0x0410, 0x0430, 0x0410, { -1, -1, -1 } }, /* index: 627 */
     724                 :         { 0x0431, 0x0411, 0x0431, 0x0411, { -1, -1, -1 } }, /* index: 628 */
     725                 :         { 0x0432, 0x0412, 0x0432, 0x0412, { -1, -1, -1 } }, /* index: 629 */
     726                 :         { 0x0433, 0x0413, 0x0433, 0x0413, { -1, -1, -1 } }, /* index: 630 */
     727                 :         { 0x0434, 0x0414, 0x0434, 0x0414, { -1, -1, -1 } }, /* index: 631 */
     728                 :         { 0x0435, 0x0415, 0x0435, 0x0415, { -1, -1, -1 } }, /* index: 632 */
     729                 :         { 0x0436, 0x0416, 0x0436, 0x0416, { -1, -1, -1 } }, /* index: 633 */
     730                 :         { 0x0437, 0x0417, 0x0437, 0x0417, { -1, -1, -1 } }, /* index: 634 */
     731                 :         { 0x0438, 0x0418, 0x0438, 0x0418, { -1, -1, -1 } }, /* index: 635 */
     732                 :         { 0x0439, 0x0419, 0x0439, 0x0419, { -1, -1, -1 } }, /* index: 636 */
     733                 :         { 0x043A, 0x041A, 0x043A, 0x041A, { -1, -1, -1 } }, /* index: 637 */
     734                 :         { 0x043B, 0x041B, 0x043B, 0x041B, { -1, -1, -1 } }, /* index: 638 */
     735                 :         { 0x043C, 0x041C, 0x043C, 0x041C, { -1, -1, -1 } }, /* index: 639 */
     736                 :         { 0x043D, 0x041D, 0x043D, 0x041D, { -1, -1, -1 } }, /* index: 640 */
     737                 :         { 0x043E, 0x041E, 0x043E, 0x041E, { -1, -1, -1 } }, /* index: 641 */
     738                 :         { 0x043F, 0x041F, 0x043F, 0x041F, { -1, -1, -1 } }, /* index: 642 */
     739                 :         { 0x0440, 0x0420, 0x0440, 0x0420, { -1, -1, -1 } }, /* index: 643 */
     740                 :         { 0x0441, 0x0421, 0x0441, 0x0421, { -1, -1, -1 } }, /* index: 644 */
     741                 :         { 0x0442, 0x0422, 0x0442, 0x0422, { -1, -1, -1 } }, /* index: 645 */
     742                 :         { 0x0443, 0x0423, 0x0443, 0x0423, { -1, -1, -1 } }, /* index: 646 */
     743                 :         { 0x0444, 0x0424, 0x0444, 0x0424, { -1, -1, -1 } }, /* index: 647 */
     744                 :         { 0x0445, 0x0425, 0x0445, 0x0425, { -1, -1, -1 } }, /* index: 648 */
     745                 :         { 0x0446, 0x0426, 0x0446, 0x0426, { -1, -1, -1 } }, /* index: 649 */
     746                 :         { 0x0447, 0x0427, 0x0447, 0x0427, { -1, -1, -1 } }, /* index: 650 */
     747                 :         { 0x0448, 0x0428, 0x0448, 0x0428, { -1, -1, -1 } }, /* index: 651 */
     748                 :         { 0x0449, 0x0429, 0x0449, 0x0429, { -1, -1, -1 } }, /* index: 652 */
     749                 :         { 0x044A, 0x042A, 0x044A, 0x042A, { -1, -1, -1 } }, /* index: 653 */
     750                 :         { 0x044B, 0x042B, 0x044B, 0x042B, { -1, -1, -1 } }, /* index: 654 */
     751                 :         { 0x044C, 0x042C, 0x044C, 0x042C, { -1, -1, -1 } }, /* index: 655 */
     752                 :         { 0x044D, 0x042D, 0x044D, 0x042D, { -1, -1, -1 } }, /* index: 656 */
     753                 :         { 0x044E, 0x042E, 0x044E, 0x042E, { -1, -1, -1 } }, /* index: 657 */
     754                 :         { 0x044F, 0x042F, 0x044F, 0x042F, { -1, -1, -1 } }, /* index: 658 */
     755                 :         { 0x0450, 0x0400, 0x0450, 0x0400, { -1, -1, -1 } }, /* index: 659 */
     756                 :         { 0x0451, 0x0401, 0x0451, 0x0401, { -1, -1, -1 } }, /* index: 660 */
     757                 :         { 0x0452, 0x0402, 0x0452, 0x0402, { -1, -1, -1 } }, /* index: 661 */
     758                 :         { 0x0453, 0x0403, 0x0453, 0x0403, { -1, -1, -1 } }, /* index: 662 */
     759                 :         { 0x0454, 0x0404, 0x0454, 0x0404, { -1, -1, -1 } }, /* index: 663 */
     760                 :         { 0x0455, 0x0405, 0x0455, 0x0405, { -1, -1, -1 } }, /* index: 664 */
     761                 :         { 0x0456, 0x0406, 0x0456, 0x0406, { -1, -1, -1 } }, /* index: 665 */
     762                 :         { 0x0457, 0x0407, 0x0457, 0x0407, { -1, -1, -1 } }, /* index: 666 */
     763                 :         { 0x0458, 0x0408, 0x0458, 0x0408, { -1, -1, -1 } }, /* index: 667 */
     764                 :         { 0x0459, 0x0409, 0x0459, 0x0409, { -1, -1, -1 } }, /* index: 668 */
     765                 :         { 0x045A, 0x040A, 0x045A, 0x040A, { -1, -1, -1 } }, /* index: 669 */
     766                 :         { 0x045B, 0x040B, 0x045B, 0x040B, { -1, -1, -1 } }, /* index: 670 */
     767                 :         { 0x045C, 0x040C, 0x045C, 0x040C, { -1, -1, -1 } }, /* index: 671 */
     768                 :         { 0x045D, 0x040D, 0x045D, 0x040D, { -1, -1, -1 } }, /* index: 672 */
     769                 :         { 0x045E, 0x040E, 0x045E, 0x040E, { -1, -1, -1 } }, /* index: 673 */
     770                 :         { 0x045F, 0x040F, 0x045F, 0x040F, { -1, -1, -1 } }, /* index: 674 */
     771                 :         { 0x0460, 0x0460, 0x0461, 0x0460, { -1, -1, -1 } }, /* index: 675 */
     772                 :         { 0x0461, 0x0460, 0x0461, 0x0460, { -1, -1, -1 } }, /* index: 676 */
     773                 :         { 0x0462, 0x0462, 0x0463, 0x0462, { -1, -1, -1 } }, /* index: 677 */
     774                 :         { 0x0463, 0x0462, 0x0463, 0x0462, { -1, -1, -1 } }, /* index: 678 */
     775                 :         { 0x0464, 0x0464, 0x0465, 0x0464, { -1, -1, -1 } }, /* index: 679 */
     776                 :         { 0x0465, 0x0464, 0x0465, 0x0464, { -1, -1, -1 } }, /* index: 680 */
     777                 :         { 0x0466, 0x0466, 0x0467, 0x0466, { -1, -1, -1 } }, /* index: 681 */
     778                 :         { 0x0467, 0x0466, 0x0467, 0x0466, { -1, -1, -1 } }, /* index: 682 */
     779                 :         { 0x0468, 0x0468, 0x0469, 0x0468, { -1, -1, -1 } }, /* index: 683 */
     780                 :         { 0x0469, 0x0468, 0x0469, 0x0468, { -1, -1, -1 } }, /* index: 684 */
     781                 :         { 0x046A, 0x046A, 0x046B, 0x046A, { -1, -1, -1 } }, /* index: 685 */
     782                 :         { 0x046B, 0x046A, 0x046B, 0x046A, { -1, -1, -1 } }, /* index: 686 */
     783                 :         { 0x046C, 0x046C, 0x046D, 0x046C, { -1, -1, -1 } }, /* index: 687 */
     784                 :         { 0x046D, 0x046C, 0x046D, 0x046C, { -1, -1, -1 } }, /* index: 688 */
     785                 :         { 0x046E, 0x046E, 0x046F, 0x046E, { -1, -1, -1 } }, /* index: 689 */
     786                 :         { 0x046F, 0x046E, 0x046F, 0x046E, { -1, -1, -1 } }, /* index: 690 */
     787                 :         { 0x0470, 0x0470, 0x0471, 0x0470, { -1, -1, -1 } }, /* index: 691 */
     788                 :         { 0x0471, 0x0470, 0x0471, 0x0470, { -1, -1, -1 } }, /* index: 692 */
     789                 :         { 0x0472, 0x0472, 0x0473, 0x0472, { -1, -1, -1 } }, /* index: 693 */
     790                 :         { 0x0473, 0x0472, 0x0473, 0x0472, { -1, -1, -1 } }, /* index: 694 */
     791                 :         { 0x0474, 0x0474, 0x0475, 0x0474, { -1, -1, -1 } }, /* index: 695 */
     792                 :         { 0x0475, 0x0474, 0x0475, 0x0474, { -1, -1, -1 } }, /* index: 696 */
     793                 :         { 0x0476, 0x0476, 0x0477, 0x0476, { -1, -1, -1 } }, /* index: 697 */
     794                 :         { 0x0477, 0x0476, 0x0477, 0x0476, { -1, -1, -1 } }, /* index: 698 */
     795                 :         { 0x0478, 0x0478, 0x0479, 0x0478, { -1, -1, -1 } }, /* index: 699 */
     796                 :         { 0x0479, 0x0478, 0x0479, 0x0478, { -1, -1, -1 } }, /* index: 700 */
     797                 :         { 0x047A, 0x047A, 0x047B, 0x047A, { -1, -1, -1 } }, /* index: 701 */
     798                 :         { 0x047B, 0x047A, 0x047B, 0x047A, { -1, -1, -1 } }, /* index: 702 */
     799                 :         { 0x047C, 0x047C, 0x047D, 0x047C, { -1, -1, -1 } }, /* index: 703 */
     800                 :         { 0x047D, 0x047C, 0x047D, 0x047C, { -1, -1, -1 } }, /* index: 704 */
     801                 :         { 0x047E, 0x047E, 0x047F, 0x047E, { -1, -1, -1 } }, /* index: 705 */
     802                 :         { 0x047F, 0x047E, 0x047F, 0x047E, { -1, -1, -1 } }, /* index: 706 */
     803                 :         { 0x0480, 0x0480, 0x0481, 0x0480, { -1, -1, -1 } }, /* index: 707 */
     804                 :         { 0x0481, 0x0480, 0x0481, 0x0480, { -1, -1, -1 } }, /* index: 708 */
     805                 :         { 0x048A, 0x048A, 0x048B, 0x048A, { -1, -1, -1 } }, /* index: 709 */
     806                 :         { 0x048B, 0x048A, 0x048B, 0x048A, { -1, -1, -1 } }, /* index: 710 */
     807                 :         { 0x048C, 0x048C, 0x048D, 0x048C, { -1, -1, -1 } }, /* index: 711 */
     808                 :         { 0x048D, 0x048C, 0x048D, 0x048C, { -1, -1, -1 } }, /* index: 712 */
     809                 :         { 0x048E, 0x048E, 0x048F, 0x048E, { -1, -1, -1 } }, /* index: 713 */
     810                 :         { 0x048F, 0x048E, 0x048F, 0x048E, { -1, -1, -1 } }, /* index: 714 */
     811                 :         { 0x0490, 0x0490, 0x0491, 0x0490, { -1, -1, -1 } }, /* index: 715 */
     812                 :         { 0x0491, 0x0490, 0x0491, 0x0490, { -1, -1, -1 } }, /* index: 716 */
     813                 :         { 0x0492, 0x0492, 0x0493, 0x0492, { -1, -1, -1 } }, /* index: 717 */
     814                 :         { 0x0493, 0x0492, 0x0493, 0x0492, { -1, -1, -1 } }, /* index: 718 */
     815                 :         { 0x0494, 0x0494, 0x0495, 0x0494, { -1, -1, -1 } }, /* index: 719 */
     816                 :         { 0x0495, 0x0494, 0x0495, 0x0494, { -1, -1, -1 } }, /* index: 720 */
     817                 :         { 0x0496, 0x0496, 0x0497, 0x0496, { -1, -1, -1 } }, /* index: 721 */
     818                 :         { 0x0497, 0x0496, 0x0497, 0x0496, { -1, -1, -1 } }, /* index: 722 */
     819                 :         { 0x0498, 0x0498, 0x0499, 0x0498, { -1, -1, -1 } }, /* index: 723 */
     820                 :         { 0x0499, 0x0498, 0x0499, 0x0498, { -1, -1, -1 } }, /* index: 724 */
     821                 :         { 0x049A, 0x049A, 0x049B, 0x049A, { -1, -1, -1 } }, /* index: 725 */
     822                 :         { 0x049B, 0x049A, 0x049B, 0x049A, { -1, -1, -1 } }, /* index: 726 */
     823                 :         { 0x049C, 0x049C, 0x049D, 0x049C, { -1, -1, -1 } }, /* index: 727 */
     824                 :         { 0x049D, 0x049C, 0x049D, 0x049C, { -1, -1, -1 } }, /* index: 728 */
     825                 :         { 0x049E, 0x049E, 0x049F, 0x049E, { -1, -1, -1 } }, /* index: 729 */
     826                 :         { 0x049F, 0x049E, 0x049F, 0x049E, { -1, -1, -1 } }, /* index: 730 */
     827                 :         { 0x04A0, 0x04A0, 0x04A1, 0x04A0, { -1, -1, -1 } }, /* index: 731 */
     828                 :         { 0x04A1, 0x04A0, 0x04A1, 0x04A0, { -1, -1, -1 } }, /* index: 732 */
     829                 :         { 0x04A2, 0x04A2, 0x04A3, 0x04A2, { -1, -1, -1 } }, /* index: 733 */
     830                 :         { 0x04A3, 0x04A2, 0x04A3, 0x04A2, { -1, -1, -1 } }, /* index: 734 */
     831                 :         { 0x04A4, 0x04A4, 0x04A5, 0x04A4, { -1, -1, -1 } }, /* index: 735 */
     832                 :         { 0x04A5, 0x04A4, 0x04A5, 0x04A4, { -1, -1, -1 } }, /* index: 736 */
     833                 :         { 0x04A6, 0x04A6, 0x04A7, 0x04A6, { -1, -1, -1 } }, /* index: 737 */
     834                 :         { 0x04A7, 0x04A6, 0x04A7, 0x04A6, { -1, -1, -1 } }, /* index: 738 */
     835                 :         { 0x04A8, 0x04A8, 0x04A9, 0x04A8, { -1, -1, -1 } }, /* index: 739 */
     836                 :         { 0x04A9, 0x04A8, 0x04A9, 0x04A8, { -1, -1, -1 } }, /* index: 740 */
     837                 :         { 0x04AA, 0x04AA, 0x04AB, 0x04AA, { -1, -1, -1 } }, /* index: 741 */
     838                 :         { 0x04AB, 0x04AA, 0x04AB, 0x04AA, { -1, -1, -1 } }, /* index: 742 */
     839                 :         { 0x04AC, 0x04AC, 0x04AD, 0x04AC, { -1, -1, -1 } }, /* index: 743 */
     840                 :         { 0x04AD, 0x04AC, 0x04AD, 0x04AC, { -1, -1, -1 } }, /* index: 744 */
     841                 :         { 0x04AE, 0x04AE, 0x04AF, 0x04AE, { -1, -1, -1 } }, /* index: 745 */
     842                 :         { 0x04AF, 0x04AE, 0x04AF, 0x04AE, { -1, -1, -1 } }, /* index: 746 */
     843                 :         { 0x04B0, 0x04B0, 0x04B1, 0x04B0, { -1, -1, -1 } }, /* index: 747 */
     844                 :         { 0x04B1, 0x04B0, 0x04B1, 0x04B0, { -1, -1, -1 } }, /* index: 748 */
     845                 :         { 0x04B2, 0x04B2, 0x04B3, 0x04B2, { -1, -1, -1 } }, /* index: 749 */
     846                 :         { 0x04B3, 0x04B2, 0x04B3, 0x04B2, { -1, -1, -1 } }, /* index: 750 */
     847                 :         { 0x04B4, 0x04B4, 0x04B5, 0x04B4, { -1, -1, -1 } }, /* index: 751 */
     848                 :         { 0x04B5, 0x04B4, 0x04B5, 0x04B4, { -1, -1, -1 } }, /* index: 752 */
     849                 :         { 0x04B6, 0x04B6, 0x04B7, 0x04B6, { -1, -1, -1 } }, /* index: 753 */
     850                 :         { 0x04B7, 0x04B6, 0x04B7, 0x04B6, { -1, -1, -1 } }, /* index: 754 */
     851                 :         { 0x04B8, 0x04B8, 0x04B9, 0x04B8, { -1, -1, -1 } }, /* index: 755 */
     852                 :         { 0x04B9, 0x04B8, 0x04B9, 0x04B8, { -1, -1, -1 } }, /* index: 756 */
     853                 :         { 0x04BA, 0x04BA, 0x04BB, 0x04BA, { -1, -1, -1 } }, /* index: 757 */
     854                 :         { 0x04BB, 0x04BA, 0x04BB, 0x04BA, { -1, -1, -1 } }, /* index: 758 */
     855                 :         { 0x04BC, 0x04BC, 0x04BD, 0x04BC, { -1, -1, -1 } }, /* index: 759 */
     856                 :         { 0x04BD, 0x04BC, 0x04BD, 0x04BC, { -1, -1, -1 } }, /* index: 760 */
     857                 :         { 0x04BE, 0x04BE, 0x04BF, 0x04BE, { -1, -1, -1 } }, /* index: 761 */
     858                 :         { 0x04BF, 0x04BE, 0x04BF, 0x04BE, { -1, -1, -1 } }, /* index: 762 */
     859                 :         { 0x04C0, 0x04C0, 0x04CF, 0x04C0, { -1, -1, -1 } }, /* index: 763 */
     860                 :         { 0x04C1, 0x04C1, 0x04C2, 0x04C1, { -1, -1, -1 } }, /* index: 764 */
     861                 :         { 0x04C2, 0x04C1, 0x04C2, 0x04C1, { -1, -1, -1 } }, /* index: 765 */
     862                 :         { 0x04C3, 0x04C3, 0x04C4, 0x04C3, { -1, -1, -1 } }, /* index: 766 */
     863                 :         { 0x04C4, 0x04C3, 0x04C4, 0x04C3, { -1, -1, -1 } }, /* index: 767 */
     864                 :         { 0x04C5, 0x04C5, 0x04C6, 0x04C5, { -1, -1, -1 } }, /* index: 768 */
     865                 :         { 0x04C6, 0x04C5, 0x04C6, 0x04C5, { -1, -1, -1 } }, /* index: 769 */
     866                 :         { 0x04C7, 0x04C7, 0x04C8, 0x04C7, { -1, -1, -1 } }, /* index: 770 */
     867                 :         { 0x04C8, 0x04C7, 0x04C8, 0x04C7, { -1, -1, -1 } }, /* index: 771 */
     868                 :         { 0x04C9, 0x04C9, 0x04CA, 0x04C9, { -1, -1, -1 } }, /* index: 772 */
     869                 :         { 0x04CA, 0x04C9, 0x04CA, 0x04C9, { -1, -1, -1 } }, /* index: 773 */
     870                 :         { 0x04CB, 0x04CB, 0x04CC, 0x04CB, { -1, -1, -1 } }, /* index: 774 */
     871                 :         { 0x04CC, 0x04CB, 0x04CC, 0x04CB, { -1, -1, -1 } }, /* index: 775 */
     872                 :         { 0x04CD, 0x04CD, 0x04CE, 0x04CD, { -1, -1, -1 } }, /* index: 776 */
     873                 :         { 0x04CE, 0x04CD, 0x04CE, 0x04CD, { -1, -1, -1 } }, /* index: 777 */
     874                 :         { 0x04CF, 0x04C0, 0x04CF, 0x04C0, { -1, -1, -1 } }, /* index: 778 */
     875                 :         { 0x04D0, 0x04D0, 0x04D1, 0x04D0, { -1, -1, -1 } }, /* index: 779 */
     876                 :         { 0x04D1, 0x04D0, 0x04D1, 0x04D0, { -1, -1, -1 } }, /* index: 780 */
     877                 :         { 0x04D2, 0x04D2, 0x04D3, 0x04D2, { -1, -1, -1 } }, /* index: 781 */
     878                 :         { 0x04D3, 0x04D2, 0x04D3, 0x04D2, { -1, -1, -1 } }, /* index: 782 */
     879                 :         { 0x04D4, 0x04D4, 0x04D5, 0x04D4, { -1, -1, -1 } }, /* index: 783 */
     880                 :         { 0x04D5, 0x04D4, 0x04D5, 0x04D4, { -1, -1, -1 } }, /* index: 784 */
     881                 :         { 0x04D6, 0x04D6, 0x04D7, 0x04D6, { -1, -1, -1 } }, /* index: 785 */
     882                 :         { 0x04D7, 0x04D6, 0x04D7, 0x04D6, { -1, -1, -1 } }, /* index: 786 */
     883                 :         { 0x04D8, 0x04D8, 0x04D9, 0x04D8, { -1, -1, -1 } }, /* index: 787 */
     884                 :         { 0x04D9, 0x04D8, 0x04D9, 0x04D8, { -1, -1, -1 } }, /* index: 788 */
     885                 :         { 0x04DA, 0x04DA, 0x04DB, 0x04DA, { -1, -1, -1 } }, /* index: 789 */
     886                 :         { 0x04DB, 0x04DA, 0x04DB, 0x04DA, { -1, -1, -1 } }, /* index: 790 */
     887                 :         { 0x04DC, 0x04DC, 0x04DD, 0x04DC, { -1, -1, -1 } }, /* index: 791 */
     888                 :         { 0x04DD, 0x04DC, 0x04DD, 0x04DC, { -1, -1, -1 } }, /* index: 792 */
     889                 :         { 0x04DE, 0x04DE, 0x04DF, 0x04DE, { -1, -1, -1 } }, /* index: 793 */
     890                 :         { 0x04DF, 0x04DE, 0x04DF, 0x04DE, { -1, -1, -1 } }, /* index: 794 */
     891                 :         { 0x04E0, 0x04E0, 0x04E1, 0x04E0, { -1, -1, -1 } }, /* index: 795 */
     892                 :         { 0x04E1, 0x04E0, 0x04E1, 0x04E0, { -1, -1, -1 } }, /* index: 796 */
     893                 :         { 0x04E2, 0x04E2, 0x04E3, 0x04E2, { -1, -1, -1 } }, /* index: 797 */
     894                 :         { 0x04E3, 0x04E2, 0x04E3, 0x04E2, { -1, -1, -1 } }, /* index: 798 */
     895                 :         { 0x04E4, 0x04E4, 0x04E5, 0x04E4, { -1, -1, -1 } }, /* index: 799 */
     896                 :         { 0x04E5, 0x04E4, 0x04E5, 0x04E4, { -1, -1, -1 } }, /* index: 800 */
     897                 :         { 0x04E6, 0x04E6, 0x04E7, 0x04E6, { -1, -1, -1 } }, /* index: 801 */
     898                 :         { 0x04E7, 0x04E6, 0x04E7, 0x04E6, { -1, -1, -1 } }, /* index: 802 */
     899                 :         { 0x04E8, 0x04E8, 0x04E9, 0x04E8, { -1, -1, -1 } }, /* index: 803 */
     900                 :         { 0x04E9, 0x04E8, 0x04E9, 0x04E8, { -1, -1, -1 } }, /* index: 804 */
     901                 :         { 0x04EA, 0x04EA, 0x04EB, 0x04EA, { -1, -1, -1 } }, /* index: 805 */
     902                 :         { 0x04EB, 0x04EA, 0x04EB, 0x04EA, { -1, -1, -1 } }, /* index: 806 */
     903                 :         { 0x04EC, 0x04EC, 0x04ED, 0x04EC, { -1, -1, -1 } }, /* index: 807 */
     904                 :         { 0x04ED, 0x04EC, 0x04ED, 0x04EC, { -1, -1, -1 } }, /* index: 808 */
     905                 :         { 0x04EE, 0x04EE, 0x04EF, 0x04EE, { -1, -1, -1 } }, /* index: 809 */
     906                 :         { 0x04EF, 0x04EE, 0x04EF, 0x04EE, { -1, -1, -1 } }, /* index: 810 */
     907                 :         { 0x04F0, 0x04F0, 0x04F1, 0x04F0, { -1, -1, -1 } }, /* index: 811 */
     908                 :         { 0x04F1, 0x04F0, 0x04F1, 0x04F0, { -1, -1, -1 } }, /* index: 812 */
     909                 :         { 0x04F2, 0x04F2, 0x04F3, 0x04F2, { -1, -1, -1 } }, /* index: 813 */
     910                 :         { 0x04F3, 0x04F2, 0x04F3, 0x04F2, { -1, -1, -1 } }, /* index: 814 */
     911                 :         { 0x04F4, 0x04F4, 0x04F5, 0x04F4, { -1, -1, -1 } }, /* index: 815 */
     912                 :         { 0x04F5, 0x04F4, 0x04F5, 0x04F4, { -1, -1, -1 } }, /* index: 816 */
     913                 :         { 0x04F6, 0x04F6, 0x04F7, 0x04F6, { -1, -1, -1 } }, /* index: 817 */
     914                 :         { 0x04F7, 0x04F6, 0x04F7, 0x04F6, { -1, -1, -1 } }, /* index: 818 */
     915                 :         { 0x04F8, 0x04F8, 0x04F9, 0x04F8, { -1, -1, -1 } }, /* index: 819 */
     916                 :         { 0x04F9, 0x04F8, 0x04F9, 0x04F8, { -1, -1, -1 } }, /* index: 820 */
     917                 :         { 0x04FA, 0x04FA, 0x04FB, 0x04FA, { -1, -1, -1 } }, /* index: 821 */
     918                 :         { 0x04FB, 0x04FA, 0x04FB, 0x04FA, { -1, -1, -1 } }, /* index: 822 */
     919                 :         { 0x04FC, 0x04FC, 0x04FD, 0x04FC, { -1, -1, -1 } }, /* index: 823 */
     920                 :         { 0x04FD, 0x04FC, 0x04FD, 0x04FC, { -1, -1, -1 } }, /* index: 824 */
     921                 :         { 0x04FE, 0x04FE, 0x04FF, 0x04FE, { -1, -1, -1 } }, /* index: 825 */
     922                 :         { 0x04FF, 0x04FE, 0x04FF, 0x04FE, { -1, -1, -1 } }, /* index: 826 */
     923                 :         { 0x0500, 0x0500, 0x0501, 0x0500, { -1, -1, -1 } }, /* index: 827 */
     924                 :         { 0x0501, 0x0500, 0x0501, 0x0500, { -1, -1, -1 } }, /* index: 828 */
     925                 :         { 0x0502, 0x0502, 0x0503, 0x0502, { -1, -1, -1 } }, /* index: 829 */
     926                 :         { 0x0503, 0x0502, 0x0503, 0x0502, { -1, -1, -1 } }, /* index: 830 */
     927                 :         { 0x0504, 0x0504, 0x0505, 0x0504, { -1, -1, -1 } }, /* index: 831 */
     928                 :         { 0x0505, 0x0504, 0x0505, 0x0504, { -1, -1, -1 } }, /* index: 832 */
     929                 :         { 0x0506, 0x0506, 0x0507, 0x0506, { -1, -1, -1 } }, /* index: 833 */
     930                 :         { 0x0507, 0x0506, 0x0507, 0x0506, { -1, -1, -1 } }, /* index: 834 */
     931                 :         { 0x0508, 0x0508, 0x0509, 0x0508, { -1, -1, -1 } }, /* index: 835 */
     932                 :         { 0x0509, 0x0508, 0x0509, 0x0508, { -1, -1, -1 } }, /* index: 836 */
     933                 :         { 0x050A, 0x050A, 0x050B, 0x050A, { -1, -1, -1 } }, /* index: 837 */
     934                 :         { 0x050B, 0x050A, 0x050B, 0x050A, { -1, -1, -1 } }, /* index: 838 */
     935                 :         { 0x050C, 0x050C, 0x050D, 0x050C, { -1, -1, -1 } }, /* index: 839 */
     936                 :         { 0x050D, 0x050C, 0x050D, 0x050C, { -1, -1, -1 } }, /* index: 840 */
     937                 :         { 0x050E, 0x050E, 0x050F, 0x050E, { -1, -1, -1 } }, /* index: 841 */
     938                 :         { 0x050F, 0x050E, 0x050F, 0x050E, { -1, -1, -1 } }, /* index: 842 */
     939                 :         { 0x0510, 0x0510, 0x0511, 0x0510, { -1, -1, -1 } }, /* index: 843 */
     940                 :         { 0x0511, 0x0510, 0x0511, 0x0510, { -1, -1, -1 } }, /* index: 844 */
     941                 :         { 0x0512, 0x0512, 0x0513, 0x0512, { -1, -1, -1 } }, /* index: 845 */
     942                 :         { 0x0513, 0x0512, 0x0513, 0x0512, { -1, -1, -1 } }, /* index: 846 */
     943                 :         { 0x0514, 0x0514, 0x0515, 0x0514, { -1, -1, -1 } }, /* index: 847 */
     944                 :         { 0x0515, 0x0514, 0x0515, 0x0514, { -1, -1, -1 } }, /* index: 848 */
     945                 :         { 0x0516, 0x0516, 0x0517, 0x0516, { -1, -1, -1 } }, /* index: 849 */
     946                 :         { 0x0517, 0x0516, 0x0517, 0x0516, { -1, -1, -1 } }, /* index: 850 */
     947                 :         { 0x0518, 0x0518, 0x0519, 0x0518, { -1, -1, -1 } }, /* index: 851 */
     948                 :         { 0x0519, 0x0518, 0x0519, 0x0518, { -1, -1, -1 } }, /* index: 852 */
     949                 :         { 0x051A, 0x051A, 0x051B, 0x051A, { -1, -1, -1 } }, /* index: 853 */
     950                 :         { 0x051B, 0x051A, 0x051B, 0x051A, { -1, -1, -1 } }, /* index: 854 */
     951                 :         { 0x051C, 0x051C, 0x051D, 0x051C, { -1, -1, -1 } }, /* index: 855 */
     952                 :         { 0x051D, 0x051C, 0x051D, 0x051C, { -1, -1, -1 } }, /* index: 856 */
     953                 :         { 0x051E, 0x051E, 0x051F, 0x051E, { -1, -1, -1 } }, /* index: 857 */
     954                 :         { 0x051F, 0x051E, 0x051F, 0x051E, { -1, -1, -1 } }, /* index: 858 */
     955                 :         { 0x0520, 0x0520, 0x0521, 0x0520, { -1, -1, -1 } }, /* index: 859 */
     956                 :         { 0x0521, 0x0520, 0x0521, 0x0520, { -1, -1, -1 } }, /* index: 860 */
     957                 :         { 0x0522, 0x0522, 0x0523, 0x0522, { -1, -1, -1 } }, /* index: 861 */
     958                 :         { 0x0523, 0x0522, 0x0523, 0x0522, { -1, -1, -1 } }, /* index: 862 */
     959                 :         { 0x0531, 0x0531, 0x0561, 0x0531, { -1, -1, -1 } }, /* index: 863 */
     960                 :         { 0x0532, 0x0532, 0x0562, 0x0532, { -1, -1, -1 } }, /* index: 864 */
     961                 :         { 0x0533, 0x0533, 0x0563, 0x0533, { -1, -1, -1 } }, /* index: 865 */
     962                 :         { 0x0534, 0x0534, 0x0564, 0x0534, { -1, -1, -1 } }, /* index: 866 */
     963                 :         { 0x0535, 0x0535, 0x0565, 0x0535, { -1, -1, -1 } }, /* index: 867 */
     964                 :         { 0x0536, 0x0536, 0x0566, 0x0536, { -1, -1, -1 } }, /* index: 868 */
     965                 :         { 0x0537, 0x0537, 0x0567, 0x0537, { -1, -1, -1 } }, /* index: 869 */
     966                 :         { 0x0538, 0x0538, 0x0568, 0x0538, { -1, -1, -1 } }, /* index: 870 */
     967                 :         { 0x0539, 0x0539, 0x0569, 0x0539, { -1, -1, -1 } }, /* index: 871 */
     968                 :         { 0x053A, 0x053A, 0x056A, 0x053A, { -1, -1, -1 } }, /* index: 872 */
     969                 :         { 0x053B, 0x053B, 0x056B, 0x053B, { -1, -1, -1 } }, /* index: 873 */
     970                 :         { 0x053C, 0x053C, 0x056C, 0x053C, { -1, -1, -1 } }, /* index: 874 */
     971                 :         { 0x053D, 0x053D, 0x056D, 0x053D, { -1, -1, -1 } }, /* index: 875 */
     972                 :         { 0x053E, 0x053E, 0x056E, 0x053E, { -1, -1, -1 } }, /* index: 876 */
     973                 :         { 0x053F, 0x053F, 0x056F, 0x053F, { -1, -1, -1 } }, /* index: 877 */
     974                 :         { 0x0540, 0x0540, 0x0570, 0x0540, { -1, -1, -1 } }, /* index: 878 */
     975                 :         { 0x0541, 0x0541, 0x0571, 0x0541, { -1, -1, -1 } }, /* index: 879 */
     976                 :         { 0x0542, 0x0542, 0x0572, 0x0542, { -1, -1, -1 } }, /* index: 880 */
     977                 :         { 0x0543, 0x0543, 0x0573, 0x0543, { -1, -1, -1 } }, /* index: 881 */
     978                 :         { 0x0544, 0x0544, 0x0574, 0x0544, { -1, -1, -1 } }, /* index: 882 */
     979                 :         { 0x0545, 0x0545, 0x0575, 0x0545, { -1, -1, -1 } }, /* index: 883 */
     980                 :         { 0x0546, 0x0546, 0x0576, 0x0546, { -1, -1, -1 } }, /* index: 884 */
     981                 :         { 0x0547, 0x0547, 0x0577, 0x0547, { -1, -1, -1 } }, /* index: 885 */
     982                 :         { 0x0548, 0x0548, 0x0578, 0x0548, { -1, -1, -1 } }, /* index: 886 */
     983                 :         { 0x0549, 0x0549, 0x0579, 0x0549, { -1, -1, -1 } }, /* index: 887 */
     984                 :         { 0x054A, 0x054A, 0x057A, 0x054A, { -1, -1, -1 } }, /* index: 888 */
     985                 :         { 0x054B, 0x054B, 0x057B, 0x054B, { -1, -1, -1 } }, /* index: 889 */
     986                 :         { 0x054C, 0x054C, 0x057C, 0x054C, { -1, -1, -1 } }, /* index: 890 */
     987                 :         { 0x054D, 0x054D, 0x057D, 0x054D, { -1, -1, -1 } }, /* index: 891 */
     988                 :         { 0x054E, 0x054E, 0x057E, 0x054E, { -1, -1, -1 } }, /* index: 892 */
     989                 :         { 0x054F, 0x054F, 0x057F, 0x054F, { -1, -1, -1 } }, /* index: 893 */
     990                 :         { 0x0550, 0x0550, 0x0580, 0x0550, { -1, -1, -1 } }, /* index: 894 */
     991                 :         { 0x0551, 0x0551, 0x0581, 0x0551, { -1, -1, -1 } }, /* index: 895 */
     992                 :         { 0x0552, 0x0552, 0x0582, 0x0552, { -1, -1, -1 } }, /* index: 896 */
     993                 :         { 0x0553, 0x0553, 0x0583, 0x0553, { -1, -1, -1 } }, /* index: 897 */
     994                 :         { 0x0554, 0x0554, 0x0584, 0x0554, { -1, -1, -1 } }, /* index: 898 */
     995                 :         { 0x0555, 0x0555, 0x0585, 0x0555, { -1, -1, -1 } }, /* index: 899 */
     996                 :         { 0x0556, 0x0556, 0x0586, 0x0556, { -1, -1, -1 } }, /* index: 900 */
     997                 :         { 0x0561, 0x0531, 0x0561, 0x0531, { -1, -1, -1 } }, /* index: 901 */
     998                 :         { 0x0562, 0x0532, 0x0562, 0x0532, { -1, -1, -1 } }, /* index: 902 */
     999                 :         { 0x0563, 0x0533, 0x0563, 0x0533, { -1, -1, -1 } }, /* index: 903 */
    1000                 :         { 0x0564, 0x0534, 0x0564, 0x0534, { -1, -1, -1 } }, /* index: 904 */
    1001                 :         { 0x0565, 0x0535, 0x0565, 0x0535, { -1, -1, -1 } }, /* index: 905 */
    1002                 :         { 0x0566, 0x0536, 0x0566, 0x0536, { -1, -1, -1 } }, /* index: 906 */
    1003                 :         { 0x0567, 0x0537, 0x0567, 0x0537, { -1, -1, -1 } }, /* index: 907 */
    1004                 :         { 0x0568, 0x0538, 0x0568, 0x0538, { -1, -1, -1 } }, /* index: 908 */
    1005                 :         { 0x0569, 0x0539, 0x0569, 0x0539, { -1, -1, -1 } }, /* index: 909 */
    1006                 :         { 0x056A, 0x053A, 0x056A, 0x053A, { -1, -1, -1 } }, /* index: 910 */
    1007                 :         { 0x056B, 0x053B, 0x056B, 0x053B, { -1, -1, -1 } }, /* index: 911 */
    1008                 :         { 0x056C, 0x053C, 0x056C, 0x053C, { -1, -1, -1 } }, /* index: 912 */
    1009                 :         { 0x056D, 0x053D, 0x056D, 0x053D, { -1, -1, -1 } }, /* index: 913 */
    1010                 :         { 0x056E, 0x053E, 0x056E, 0x053E, { -1, -1, -1 } }, /* index: 914 */
    1011                 :         { 0x056F, 0x053F, 0x056F, 0x053F, { -1, -1, -1 } }, /* index: 915 */
    1012                 :         { 0x0570, 0x0540, 0x0570, 0x0540, { -1, -1, -1 } }, /* index: 916 */
    1013                 :         { 0x0571, 0x0541, 0x0571, 0x0541, { -1, -1, -1 } }, /* index: 917 */
    1014                 :         { 0x0572, 0x0542, 0x0572, 0x0542, { -1, -1, -1 } }, /* index: 918 */
    1015                 :         { 0x0573, 0x0543, 0x0573, 0x0543, { -1, -1, -1 } }, /* index: 919 */
    1016                 :         { 0x0574, 0x0544, 0x0574, 0x0544, { -1, -1, -1 } }, /* index: 920 */
    1017                 :         { 0x0575, 0x0545, 0x0575, 0x0545, { -1, -1, -1 } }, /* index: 921 */
    1018                 :         { 0x0576, 0x0546, 0x0576, 0x0546, { -1, -1, -1 } }, /* index: 922 */
    1019                 :         { 0x0577, 0x0547, 0x0577, 0x0547, { -1, -1, -1 } }, /* index: 923 */
    1020                 :         { 0x0578, 0x0548, 0x0578, 0x0548, { -1, -1, -1 } }, /* index: 924 */
    1021                 :         { 0x0579, 0x0549, 0x0579, 0x0549, { -1, -1, -1 } }, /* index: 925 */
    1022                 :         { 0x057A, 0x054A, 0x057A, 0x054A, { -1, -1, -1 } }, /* index: 926 */
    1023                 :         { 0x057B, 0x054B, 0x057B, 0x054B, { -1, -1, -1 } }, /* index: 927 */
    1024                 :         { 0x057C, 0x054C, 0x057C, 0x054C, { -1, -1, -1 } }, /* index: 928 */
    1025                 :         { 0x057D, 0x054D, 0x057D, 0x054D, { -1, -1, -1 } }, /* index: 929 */
    1026                 :         { 0x057E, 0x054E, 0x057E, 0x054E, { -1, -1, -1 } }, /* index: 930 */
    1027                 :         { 0x057F, 0x054F, 0x057F, 0x054F, { -1, -1, -1 } }, /* index: 931 */
    1028                 :         { 0x0580, 0x0550, 0x0580, 0x0550, { -1, -1, -1 } }, /* index: 932 */
    1029                 :         { 0x0581, 0x0551, 0x0581, 0x0551, { -1, -1, -1 } }, /* index: 933 */
    1030                 :         { 0x0582, 0x0552, 0x0582, 0x0552, { -1, -1, -1 } }, /* index: 934 */
    1031                 :         { 0x0583, 0x0553, 0x0583, 0x0553, { -1, -1, -1 } }, /* index: 935 */
    1032                 :         { 0x0584, 0x0554, 0x0584, 0x0554, { -1, -1, -1 } }, /* index: 936 */
    1033                 :         { 0x0585, 0x0555, 0x0585, 0x0555, { -1, -1, -1 } }, /* index: 937 */
    1034                 :         { 0x0586, 0x0556, 0x0586, 0x0556, { -1, -1, -1 } }, /* index: 938 */
    1035                 :         { 0x0587, 0x0587, 0x0587, 0x0587, { 9, -1, -1 } }, /* index: 939 */
    1036                 :         { 0x10A0, 0x10A0, 0x2D00, 0x10A0, { -1, -1, -1 } }, /* index: 940 */
    1037                 :         { 0x10A1, 0x10A1, 0x2D01, 0x10A1, { -1, -1, -1 } }, /* index: 941 */
    1038                 :         { 0x10A2, 0x10A2, 0x2D02, 0x10A2, { -1, -1, -1 } }, /* index: 942 */
    1039                 :         { 0x10A3, 0x10A3, 0x2D03, 0x10A3, { -1, -1, -1 } }, /* index: 943 */
    1040                 :         { 0x10A4, 0x10A4, 0x2D04, 0x10A4, { -1, -1, -1 } }, /* index: 944 */
    1041                 :         { 0x10A5, 0x10A5, 0x2D05, 0x10A5, { -1, -1, -1 } }, /* index: 945 */
    1042                 :         { 0x10A6, 0x10A6, 0x2D06, 0x10A6, { -1, -1, -1 } }, /* index: 946 */
    1043                 :         { 0x10A7, 0x10A7, 0x2D07, 0x10A7, { -1, -1, -1 } }, /* index: 947 */
    1044                 :         { 0x10A8, 0x10A8, 0x2D08, 0x10A8, { -1, -1, -1 } }, /* index: 948 */
    1045                 :         { 0x10A9, 0x10A9, 0x2D09, 0x10A9, { -1, -1, -1 } }, /* index: 949 */
    1046                 :         { 0x10AA, 0x10AA, 0x2D0A, 0x10AA, { -1, -1, -1 } }, /* index: 950 */
    1047                 :         { 0x10AB, 0x10AB, 0x2D0B, 0x10AB, { -1, -1, -1 } }, /* index: 951 */
    1048                 :         { 0x10AC, 0x10AC, 0x2D0C, 0x10AC, { -1, -1, -1 } }, /* index: 952 */
    1049                 :         { 0x10AD, 0x10AD, 0x2D0D, 0x10AD, { -1, -1, -1 } }, /* index: 953 */
    1050                 :         { 0x10AE, 0x10AE, 0x2D0E, 0x10AE, { -1, -1, -1 } }, /* index: 954 */
    1051                 :         { 0x10AF, 0x10AF, 0x2D0F, 0x10AF, { -1, -1, -1 } }, /* index: 955 */
    1052                 :         { 0x10B0, 0x10B0, 0x2D10, 0x10B0, { -1, -1, -1 } }, /* index: 956 */
    1053                 :         { 0x10B1, 0x10B1, 0x2D11, 0x10B1, { -1, -1, -1 } }, /* index: 957 */
    1054                 :         { 0x10B2, 0x10B2, 0x2D12, 0x10B2, { -1, -1, -1 } }, /* index: 958 */
    1055                 :         { 0x10B3, 0x10B3, 0x2D13, 0x10B3, { -1, -1, -1 } }, /* index: 959 */
    1056                 :         { 0x10B4, 0x10B4, 0x2D14, 0x10B4, { -1, -1, -1 } }, /* index: 960 */
    1057                 :         { 0x10B5, 0x10B5, 0x2D15, 0x10B5, { -1, -1, -1 } }, /* index: 961 */
    1058                 :         { 0x10B6, 0x10B6, 0x2D16, 0x10B6, { -1, -1, -1 } }, /* index: 962 */
    1059                 :         { 0x10B7, 0x10B7, 0x2D17, 0x10B7, { -1, -1, -1 } }, /* index: 963 */
    1060                 :         { 0x10B8, 0x10B8, 0x2D18, 0x10B8, { -1, -1, -1 } }, /* index: 964 */
    1061                 :         { 0x10B9, 0x10B9, 0x2D19, 0x10B9, { -1, -1, -1 } }, /* index: 965 */
    1062                 :         { 0x10BA, 0x10BA, 0x2D1A, 0x10BA, { -1, -1, -1 } }, /* index: 966 */
    1063                 :         { 0x10BB, 0x10BB, 0x2D1B, 0x10BB, { -1, -1, -1 } }, /* index: 967 */
    1064                 :         { 0x10BC, 0x10BC, 0x2D1C, 0x10BC, { -1, -1, -1 } }, /* index: 968 */
    1065                 :         { 0x10BD, 0x10BD, 0x2D1D, 0x10BD, { -1, -1, -1 } }, /* index: 969 */
    1066                 :         { 0x10BE, 0x10BE, 0x2D1E, 0x10BE, { -1, -1, -1 } }, /* index: 970 */
    1067                 :         { 0x10BF, 0x10BF, 0x2D1F, 0x10BF, { -1, -1, -1 } }, /* index: 971 */
    1068                 :         { 0x10C0, 0x10C0, 0x2D20, 0x10C0, { -1, -1, -1 } }, /* index: 972 */
    1069                 :         { 0x10C1, 0x10C1, 0x2D21, 0x10C1, { -1, -1, -1 } }, /* index: 973 */
    1070                 :         { 0x10C2, 0x10C2, 0x2D22, 0x10C2, { -1, -1, -1 } }, /* index: 974 */
    1071                 :         { 0x10C3, 0x10C3, 0x2D23, 0x10C3, { -1, -1, -1 } }, /* index: 975 */
    1072                 :         { 0x10C4, 0x10C4, 0x2D24, 0x10C4, { -1, -1, -1 } }, /* index: 976 */
    1073                 :         { 0x10C5, 0x10C5, 0x2D25, 0x10C5, { -1, -1, -1 } }, /* index: 977 */
    1074                 :         { 0x1D79, 0xA77D, 0x1D79, 0xA77D, { -1, -1, -1 } }, /* index: 978 */
    1075                 :         { 0x1D7D, 0x2C63, 0x1D7D, 0x2C63, { -1, -1, -1 } }, /* index: 979 */
    1076                 :         { 0x1E00, 0x1E00, 0x1E01, 0x1E00, { -1, -1, -1 } }, /* index: 980 */
    1077                 :         { 0x1E01, 0x1E00, 0x1E01, 0x1E00, { -1, -1, -1 } }, /* index: 981 */
    1078                 :         { 0x1E02, 0x1E02, 0x1E03, 0x1E02, { -1, -1, -1 } }, /* index: 982 */
    1079                 :         { 0x1E03, 0x1E02, 0x1E03, 0x1E02, { -1, -1, -1 } }, /* index: 983 */
    1080                 :         { 0x1E04, 0x1E04, 0x1E05, 0x1E04, { -1, -1, -1 } }, /* index: 984 */
    1081                 :         { 0x1E05, 0x1E04, 0x1E05, 0x1E04, { -1, -1, -1 } }, /* index: 985 */
    1082                 :         { 0x1E06, 0x1E06, 0x1E07, 0x1E06, { -1, -1, -1 } }, /* index: 986 */
    1083                 :         { 0x1E07, 0x1E06, 0x1E07, 0x1E06, { -1, -1, -1 } }, /* index: 987 */
    1084                 :         { 0x1E08, 0x1E08, 0x1E09, 0x1E08, { -1, -1, -1 } }, /* index: 988 */
    1085                 :         { 0x1E09, 0x1E08, 0x1E09, 0x1E08, { -1, -1, -1 } }, /* index: 989 */
    1086                 :         { 0x1E0A, 0x1E0A, 0x1E0B, 0x1E0A, { -1, -1, -1 } }, /* index: 990 */
    1087                 :         { 0x1E0B, 0x1E0A, 0x1E0B, 0x1E0A, { -1, -1, -1 } }, /* index: 991 */
    1088                 :         { 0x1E0C, 0x1E0C, 0x1E0D, 0x1E0C, { -1, -1, -1 } }, /* index: 992 */
    1089                 :         { 0x1E0D, 0x1E0C, 0x1E0D, 0x1E0C, { -1, -1, -1 } }, /* index: 993 */
    1090                 :         { 0x1E0E, 0x1E0E, 0x1E0F, 0x1E0E, { -1, -1, -1 } }, /* index: 994 */
    1091                 :         { 0x1E0F, 0x1E0E, 0x1E0F, 0x1E0E, { -1, -1, -1 } }, /* index: 995 */
    1092                 :         { 0x1E10, 0x1E10, 0x1E11, 0x1E10, { -1, -1, -1 } }, /* index: 996 */
    1093                 :         { 0x1E11, 0x1E10, 0x1E11, 0x1E10, { -1, -1, -1 } }, /* index: 997 */
    1094                 :         { 0x1E12, 0x1E12, 0x1E13, 0x1E12, { -1, -1, -1 } }, /* index: 998 */
    1095                 :         { 0x1E13, 0x1E12, 0x1E13, 0x1E12, { -1, -1, -1 } }, /* index: 999 */
    1096                 :         { 0x1E14, 0x1E14, 0x1E15, 0x1E14, { -1, -1, -1 } }, /* index: 1000 */
    1097                 :         { 0x1E15, 0x1E14, 0x1E15, 0x1E14, { -1, -1, -1 } }, /* index: 1001 */
    1098                 :         { 0x1E16, 0x1E16, 0x1E17, 0x1E16, { -1, -1, -1 } }, /* index: 1002 */
    1099                 :         { 0x1E17, 0x1E16, 0x1E17, 0x1E16, { -1, -1, -1 } }, /* index: 1003 */
    1100                 :         { 0x1E18, 0x1E18, 0x1E19, 0x1E18, { -1, -1, -1 } }, /* index: 1004 */
    1101                 :         { 0x1E19, 0x1E18, 0x1E19, 0x1E18, { -1, -1, -1 } }, /* index: 1005 */
    1102                 :         { 0x1E1A, 0x1E1A, 0x1E1B, 0x1E1A, { -1, -1, -1 } }, /* index: 1006 */
    1103                 :         { 0x1E1B, 0x1E1A, 0x1E1B, 0x1E1A, { -1, -1, -1 } }, /* index: 1007 */
    1104                 :         { 0x1E1C, 0x1E1C, 0x1E1D, 0x1E1C, { -1, -1, -1 } }, /* index: 1008 */
    1105                 :         { 0x1E1D, 0x1E1C, 0x1E1D, 0x1E1C, { -1, -1, -1 } }, /* index: 1009 */
    1106                 :         { 0x1E1E, 0x1E1E, 0x1E1F, 0x1E1E, { -1, -1, -1 } }, /* index: 1010 */
    1107                 :         { 0x1E1F, 0x1E1E, 0x1E1F, 0x1E1E, { -1, -1, -1 } }, /* index: 1011 */
    1108                 :         { 0x1E20, 0x1E20, 0x1E21, 0x1E20, { -1, -1, -1 } }, /* index: 1012 */
    1109                 :         { 0x1E21, 0x1E20, 0x1E21, 0x1E20, { -1, -1, -1 } }, /* index: 1013 */
    1110                 :         { 0x1E22, 0x1E22, 0x1E23, 0x1E22, { -1, -1, -1 } }, /* index: 1014 */
    1111                 :         { 0x1E23, 0x1E22, 0x1E23, 0x1E22, { -1, -1, -1 } }, /* index: 1015 */
    1112                 :         { 0x1E24, 0x1E24, 0x1E25, 0x1E24, { -1, -1, -1 } }, /* index: 1016 */
    1113                 :         { 0x1E25, 0x1E24, 0x1E25, 0x1E24, { -1, -1, -1 } }, /* index: 1017 */
    1114                 :         { 0x1E26, 0x1E26, 0x1E27, 0x1E26, { -1, -1, -1 } }, /* index: 1018 */
    1115                 :         { 0x1E27, 0x1E26, 0x1E27, 0x1E26, { -1, -1, -1 } }, /* index: 1019 */
    1116                 :         { 0x1E28, 0x1E28, 0x1E29, 0x1E28, { -1, -1, -1 } }, /* index: 1020 */
    1117                 :         { 0x1E29, 0x1E28, 0x1E29, 0x1E28, { -1, -1, -1 } }, /* index: 1021 */
    1118                 :         { 0x1E2A, 0x1E2A, 0x1E2B, 0x1E2A, { -1, -1, -1 } }, /* index: 1022 */
    1119                 :         { 0x1E2B, 0x1E2A, 0x1E2B, 0x1E2A, { -1, -1, -1 } }, /* index: 1023 */
    1120                 :         { 0x1E2C, 0x1E2C, 0x1E2D, 0x1E2C, { -1, -1, -1 } }, /* index: 1024 */
    1121                 :         { 0x1E2D, 0x1E2C, 0x1E2D, 0x1E2C, { -1, -1, -1 } }, /* index: 1025 */
    1122                 :         { 0x1E2E, 0x1E2E, 0x1E2F, 0x1E2E, { -1, -1, -1 } }, /* index: 1026 */
    1123                 :         { 0x1E2F, 0x1E2E, 0x1E2F, 0x1E2E, { -1, -1, -1 } }, /* index: 1027 */
    1124                 :         { 0x1E30, 0x1E30, 0x1E31, 0x1E30, { -1, -1, -1 } }, /* index: 1028 */
    1125                 :         { 0x1E31, 0x1E30, 0x1E31, 0x1E30, { -1, -1, -1 } }, /* index: 1029 */
    1126                 :         { 0x1E32, 0x1E32, 0x1E33, 0x1E32, { -1, -1, -1 } }, /* index: 1030 */
    1127                 :         { 0x1E33, 0x1E32, 0x1E33, 0x1E32, { -1, -1, -1 } }, /* index: 1031 */
    1128                 :         { 0x1E34, 0x1E34, 0x1E35, 0x1E34, { -1, -1, -1 } }, /* index: 1032 */
    1129                 :         { 0x1E35, 0x1E34, 0x1E35, 0x1E34, { -1, -1, -1 } }, /* index: 1033 */
    1130                 :         { 0x1E36, 0x1E36, 0x1E37, 0x1E36, { -1, -1, -1 } }, /* index: 1034 */
    1131                 :         { 0x1E37, 0x1E36, 0x1E37, 0x1E36, { -1, -1, -1 } }, /* index: 1035 */
    1132                 :         { 0x1E38, 0x1E38, 0x1E39, 0x1E38, { -1, -1, -1 } }, /* index: 1036 */
    1133                 :         { 0x1E39, 0x1E38, 0x1E39, 0x1E38, { -1, -1, -1 } }, /* index: 1037 */
    1134                 :         { 0x1E3A, 0x1E3A, 0x1E3B, 0x1E3A, { -1, -1, -1 } }, /* index: 1038 */
    1135                 :         { 0x1E3B, 0x1E3A, 0x1E3B, 0x1E3A, { -1, -1, -1 } }, /* index: 1039 */
    1136                 :         { 0x1E3C, 0x1E3C, 0x1E3D, 0x1E3C, { -1, -1, -1 } }, /* index: 1040 */
    1137                 :         { 0x1E3D, 0x1E3C, 0x1E3D, 0x1E3C, { -1, -1, -1 } }, /* index: 1041 */
    1138                 :         { 0x1E3E, 0x1E3E, 0x1E3F, 0x1E3E, { -1, -1, -1 } }, /* index: 1042 */
    1139                 :         { 0x1E3F, 0x1E3E, 0x1E3F, 0x1E3E, { -1, -1, -1 } }, /* index: 1043 */
    1140                 :         { 0x1E40, 0x1E40, 0x1E41, 0x1E40, { -1, -1, -1 } }, /* index: 1044 */
    1141                 :         { 0x1E41, 0x1E40, 0x1E41, 0x1E40, { -1, -1, -1 } }, /* index: 1045 */
    1142                 :         { 0x1E42, 0x1E42, 0x1E43, 0x1E42, { -1, -1, -1 } }, /* index: 1046 */
    1143                 :         { 0x1E43, 0x1E42, 0x1E43, 0x1E42, { -1, -1, -1 } }, /* index: 1047 */
    1144                 :         { 0x1E44, 0x1E44, 0x1E45, 0x1E44, { -1, -1, -1 } }, /* index: 1048 */
    1145                 :         { 0x1E45, 0x1E44, 0x1E45, 0x1E44, { -1, -1, -1 } }, /* index: 1049 */
    1146                 :         { 0x1E46, 0x1E46, 0x1E47, 0x1E46, { -1, -1, -1 } }, /* index: 1050 */
    1147                 :         { 0x1E47, 0x1E46, 0x1E47, 0x1E46, { -1, -1, -1 } }, /* index: 1051 */
    1148                 :         { 0x1E48, 0x1E48, 0x1E49, 0x1E48, { -1, -1, -1 } }, /* index: 1052 */
    1149                 :         { 0x1E49, 0x1E48, 0x1E49, 0x1E48, { -1, -1, -1 } }, /* index: 1053 */
    1150                 :         { 0x1E4A, 0x1E4A, 0x1E4B, 0x1E4A, { -1, -1, -1 } }, /* index: 1054 */
    1151                 :         { 0x1E4B, 0x1E4A, 0x1E4B, 0x1E4A, { -1, -1, -1 } }, /* index: 1055 */
    1152                 :         { 0x1E4C, 0x1E4C, 0x1E4D, 0x1E4C, { -1, -1, -1 } }, /* index: 1056 */
    1153                 :         { 0x1E4D, 0x1E4C, 0x1E4D, 0x1E4C, { -1, -1, -1 } }, /* index: 1057 */
    1154                 :         { 0x1E4E, 0x1E4E, 0x1E4F, 0x1E4E, { -1, -1, -1 } }, /* index: 1058 */
    1155                 :         { 0x1E4F, 0x1E4E, 0x1E4F, 0x1E4E, { -1, -1, -1 } }, /* index: 1059 */
    1156                 :         { 0x1E50, 0x1E50, 0x1E51, 0x1E50, { -1, -1, -1 } }, /* index: 1060 */
    1157                 :         { 0x1E51, 0x1E50, 0x1E51, 0x1E50, { -1, -1, -1 } }, /* index: 1061 */
    1158                 :         { 0x1E52, 0x1E52, 0x1E53, 0x1E52, { -1, -1, -1 } }, /* index: 1062 */
    1159                 :         { 0x1E53, 0x1E52, 0x1E53, 0x1E52, { -1, -1, -1 } }, /* index: 1063 */
    1160                 :         { 0x1E54, 0x1E54, 0x1E55, 0x1E54, { -1, -1, -1 } }, /* index: 1064 */
    1161                 :         { 0x1E55, 0x1E54, 0x1E55, 0x1E54, { -1, -1, -1 } }, /* index: 1065 */
    1162                 :         { 0x1E56, 0x1E56, 0x1E57, 0x1E56, { -1, -1, -1 } }, /* index: 1066 */
    1163                 :         { 0x1E57, 0x1E56, 0x1E57, 0x1E56, { -1, -1, -1 } }, /* index: 1067 */
    1164                 :         { 0x1E58, 0x1E58, 0x1E59, 0x1E58, { -1, -1, -1 } }, /* index: 1068 */
    1165                 :         { 0x1E59, 0x1E58, 0x1E59, 0x1E58, { -1, -1, -1 } }, /* index: 1069 */
    1166                 :         { 0x1E5A, 0x1E5A, 0x1E5B, 0x1E5A, { -1, -1, -1 } }, /* index: 1070 */
    1167                 :         { 0x1E5B, 0x1E5A, 0x1E5B, 0x1E5A, { -1, -1, -1 } }, /* index: 1071 */
    1168                 :         { 0x1E5C, 0x1E5C, 0x1E5D, 0x1E5C, { -1, -1, -1 } }, /* index: 1072 */
    1169                 :         { 0x1E5D, 0x1E5C, 0x1E5D, 0x1E5C, { -1, -1, -1 } }, /* index: 1073 */
    1170                 :         { 0x1E5E, 0x1E5E, 0x1E5F, 0x1E5E, { -1, -1, -1 } }, /* index: 1074 */
    1171                 :         { 0x1E5F, 0x1E5E, 0x1E5F, 0x1E5E, { -1, -1, -1 } }, /* index: 1075 */
    1172                 :         { 0x1E60, 0x1E60, 0x1E61, 0x1E60, { -1, -1, -1 } }, /* index: 1076 */
    1173                 :         { 0x1E61, 0x1E60, 0x1E61, 0x1E60, { -1, -1, -1 } }, /* index: 1077 */
    1174                 :         { 0x1E62, 0x1E62, 0x1E63, 0x1E62, { -1, -1, -1 } }, /* index: 1078 */
    1175                 :         { 0x1E63, 0x1E62, 0x1E63, 0x1E62, { -1, -1, -1 } }, /* index: 1079 */
    1176                 :         { 0x1E64, 0x1E64, 0x1E65, 0x1E64, { -1, -1, -1 } }, /* index: 1080 */
    1177                 :         { 0x1E65, 0x1E64, 0x1E65, 0x1E64, { -1, -1, -1 } }, /* index: 1081 */
    1178                 :         { 0x1E66, 0x1E66, 0x1E67, 0x1E66, { -1, -1, -1 } }, /* index: 1082 */
    1179                 :         { 0x1E67, 0x1E66, 0x1E67, 0x1E66, { -1, -1, -1 } }, /* index: 1083 */
    1180                 :         { 0x1E68, 0x1E68, 0x1E69, 0x1E68, { -1, -1, -1 } }, /* index: 1084 */
    1181                 :         { 0x1E69, 0x1E68, 0x1E69, 0x1E68, { -1, -1, -1 } }, /* index: 1085 */
    1182                 :         { 0x1E6A, 0x1E6A, 0x1E6B, 0x1E6A, { -1, -1, -1 } }, /* index: 1086 */
    1183                 :         { 0x1E6B, 0x1E6A, 0x1E6B, 0x1E6A, { -1, -1, -1 } }, /* index: 1087 */
    1184                 :         { 0x1E6C, 0x1E6C, 0x1E6D, 0x1E6C, { -1, -1, -1 } }, /* index: 1088 */
    1185                 :         { 0x1E6D, 0x1E6C, 0x1E6D, 0x1E6C, { -1, -1, -1 } }, /* index: 1089 */
    1186                 :         { 0x1E6E, 0x1E6E, 0x1E6F, 0x1E6E, { -1, -1, -1 } }, /* index: 1090 */
    1187                 :         { 0x1E6F, 0x1E6E, 0x1E6F, 0x1E6E, { -1, -1, -1 } }, /* index: 1091 */
    1188                 :         { 0x1E70, 0x1E70, 0x1E71, 0x1E70, { -1, -1, -1 } }, /* index: 1092 */
    1189                 :         { 0x1E71, 0x1E70, 0x1E71, 0x1E70, { -1, -1, -1 } }, /* index: 1093 */
    1190                 :         { 0x1E72, 0x1E72, 0x1E73, 0x1E72, { -1, -1, -1 } }, /* index: 1094 */
    1191                 :         { 0x1E73, 0x1E72, 0x1E73, 0x1E72, { -1, -1, -1 } }, /* index: 1095 */
    1192                 :         { 0x1E74, 0x1E74, 0x1E75, 0x1E74, { -1, -1, -1 } }, /* index: 1096 */
    1193                 :         { 0x1E75, 0x1E74, 0x1E75, 0x1E74, { -1, -1, -1 } }, /* index: 1097 */
    1194                 :         { 0x1E76, 0x1E76, 0x1E77, 0x1E76, { -1, -1, -1 } }, /* index: 1098 */
    1195                 :         { 0x1E77, 0x1E76, 0x1E77, 0x1E76, { -1, -1, -1 } }, /* index: 1099 */
    1196                 :         { 0x1E78, 0x1E78, 0x1E79, 0x1E78, { -1, -1, -1 } }, /* index: 1100 */
    1197                 :         { 0x1E79, 0x1E78, 0x1E79, 0x1E78, { -1, -1, -1 } }, /* index: 1101 */
    1198                 :         { 0x1E7A, 0x1E7A, 0x1E7B, 0x1E7A, { -1, -1, -1 } }, /* index: 1102 */
    1199                 :         { 0x1E7B, 0x1E7A, 0x1E7B, 0x1E7A, { -1, -1, -1 } }, /* index: 1103 */
    1200                 :         { 0x1E7C, 0x1E7C, 0x1E7D, 0x1E7C, { -1, -1, -1 } }, /* index: 1104 */
    1201                 :         { 0x1E7D, 0x1E7C, 0x1E7D, 0x1E7C, { -1, -1, -1 } }, /* index: 1105 */
    1202                 :         { 0x1E7E, 0x1E7E, 0x1E7F, 0x1E7E, { -1, -1, -1 } }, /* index: 1106 */
    1203                 :         { 0x1E7F, 0x1E7E, 0x1E7F, 0x1E7E, { -1, -1, -1 } }, /* index: 1107 */
    1204                 :         { 0x1E80, 0x1E80, 0x1E81, 0x1E80, { -1, -1, -1 } }, /* index: 1108 */
    1205                 :         { 0x1E81, 0x1E80, 0x1E81, 0x1E80, { -1, -1, -1 } }, /* index: 1109 */
    1206                 :         { 0x1E82, 0x1E82, 0x1E83, 0x1E82, { -1, -1, -1 } }, /* index: 1110 */
    1207                 :         { 0x1E83, 0x1E82, 0x1E83, 0x1E82, { -1, -1, -1 } }, /* index: 1111 */
    1208                 :         { 0x1E84, 0x1E84, 0x1E85, 0x1E84, { -1, -1, -1 } }, /* index: 1112 */
    1209                 :         { 0x1E85, 0x1E84, 0x1E85, 0x1E84, { -1, -1, -1 } }, /* index: 1113 */
    1210                 :         { 0x1E86, 0x1E86, 0x1E87, 0x1E86, { -1, -1, -1 } }, /* index: 1114 */
    1211                 :         { 0x1E87, 0x1E86, 0x1E87, 0x1E86, { -1, -1, -1 } }, /* index: 1115 */
    1212                 :         { 0x1E88, 0x1E88, 0x1E89, 0x1E88, { -1, -1, -1 } }, /* index: 1116 */
    1213                 :         { 0x1E89, 0x1E88, 0x1E89, 0x1E88, { -1, -1, -1 } }, /* index: 1117 */
    1214                 :         { 0x1E8A, 0x1E8A, 0x1E8B, 0x1E8A, { -1, -1, -1 } }, /* index: 1118 */
    1215                 :         { 0x1E8B, 0x1E8A, 0x1E8B, 0x1E8A, { -1, -1, -1 } }, /* index: 1119 */
    1216                 :         { 0x1E8C, 0x1E8C, 0x1E8D, 0x1E8C, { -1, -1, -1 } }, /* index: 1120 */
    1217                 :         { 0x1E8D, 0x1E8C, 0x1E8D, 0x1E8C, { -1, -1, -1 } }, /* index: 1121 */
    1218                 :         { 0x1E8E, 0x1E8E, 0x1E8F, 0x1E8E, { -1, -1, -1 } }, /* index: 1122 */
    1219                 :         { 0x1E8F, 0x1E8E, 0x1E8F, 0x1E8E, { -1, -1, -1 } }, /* index: 1123 */
    1220                 :         { 0x1E90, 0x1E90, 0x1E91, 0x1E90, { -1, -1, -1 } }, /* index: 1124 */
    1221                 :         { 0x1E91, 0x1E90, 0x1E91, 0x1E90, { -1, -1, -1 } }, /* index: 1125 */
    1222                 :         { 0x1E92, 0x1E92, 0x1E93, 0x1E92, { -1, -1, -1 } }, /* index: 1126 */
    1223                 :         { 0x1E93, 0x1E92, 0x1E93, 0x1E92, { -1, -1, -1 } }, /* index: 1127 */
    1224                 :         { 0x1E94, 0x1E94, 0x1E95, 0x1E94, { -1, -1, -1 } }, /* index: 1128 */
    1225                 :         { 0x1E95, 0x1E94, 0x1E95, 0x1E94, { -1, -1, -1 } }, /* index: 1129 */
    1226                 :         { 0x1E96, 0x1E96, 0x1E96, 0x1E96, { 19, -1, -1 } }, /* index: 1130 */
    1227                 :         { 0x1E97, 0x1E97, 0x1E97, 0x1E97, { 20, -1, -1 } }, /* index: 1131 */
    1228                 :         { 0x1E98, 0x1E98, 0x1E98, 0x1E98, { 21, -1, -1 } }, /* index: 1132 */
    1229                 :         { 0x1E99, 0x1E99, 0x1E99, 0x1E99, { 22, -1, -1 } }, /* index: 1133 */
    1230                 :         { 0x1E9A, 0x1E9A, 0x1E9A, 0x1E9A, { 23, -1, -1 } }, /* index: 1134 */
    1231                 :         { 0x1E9B, 0x1E60, 0x1E9B, 0x1E60, { -1, -1, -1 } }, /* index: 1135 */
    1232                 :         { 0x1E9E, 0x1E9E, 0x00DF, 0x1E9E, { -1, -1, -1 } }, /* index: 1136 */
    1233                 :         { 0x1EA0, 0x1EA0, 0x1EA1, 0x1EA0, { -1, -1, -1 } }, /* index: 1137 */
    1234                 :         { 0x1EA1, 0x1EA0, 0x1EA1, 0x1EA0, { -1, -1, -1 } }, /* index: 1138 */
    1235                 :         { 0x1EA2, 0x1EA2, 0x1EA3, 0x1EA2, { -1, -1, -1 } }, /* index: 1139 */
    1236                 :         { 0x1EA3, 0x1EA2, 0x1EA3, 0x1EA2, { -1, -1, -1 } }, /* index: 1140 */
    1237                 :         { 0x1EA4, 0x1EA4, 0x1EA5, 0x1EA4, { -1, -1, -1 } }, /* index: 1141 */
    1238                 :         { 0x1EA5, 0x1EA4, 0x1EA5, 0x1EA4, { -1, -1, -1 } }, /* index: 1142 */
    1239                 :         { 0x1EA6, 0x1EA6, 0x1EA7, 0x1EA6, { -1, -1, -1 } }, /* index: 1143 */
    1240                 :         { 0x1EA7, 0x1EA6, 0x1EA7, 0x1EA6, { -1, -1, -1 } }, /* index: 1144 */
    1241                 :         { 0x1EA8, 0x1EA8, 0x1EA9, 0x1EA8, { -1, -1, -1 } }, /* index: 1145 */
    1242                 :         { 0x1EA9, 0x1EA8, 0x1EA9, 0x1EA8, { -1, -1, -1 } }, /* index: 1146 */
    1243                 :         { 0x1EAA, 0x1EAA, 0x1EAB, 0x1EAA, { -1, -1, -1 } }, /* index: 1147 */
    1244                 :         { 0x1EAB, 0x1EAA, 0x1EAB, 0x1EAA, { -1, -1, -1 } }, /* index: 1148 */
    1245                 :         { 0x1EAC, 0x1EAC, 0x1EAD, 0x1EAC, { -1, -1, -1 } }, /* index: 1149 */
    1246                 :         { 0x1EAD, 0x1EAC, 0x1EAD, 0x1EAC, { -1, -1, -1 } }, /* index: 1150 */
    1247                 :         { 0x1EAE, 0x1EAE, 0x1EAF, 0x1EAE, { -1, -1, -1 } }, /* index: 1151 */
    1248                 :         { 0x1EAF, 0x1EAE, 0x1EAF, 0x1EAE, { -1, -1, -1 } }, /* index: 1152 */
    1249                 :         { 0x1EB0, 0x1EB0, 0x1EB1, 0x1EB0, { -1, -1, -1 } }, /* index: 1153 */
    1250                 :         { 0x1EB1, 0x1EB0, 0x1EB1, 0x1EB0, { -1, -1, -1 } }, /* index: 1154 */
    1251                 :         { 0x1EB2, 0x1EB2, 0x1EB3, 0x1EB2, { -1, -1, -1 } }, /* index: 1155 */
    1252                 :         { 0x1EB3, 0x1EB2, 0x1EB3, 0x1EB2, { -1, -1, -1 } }, /* index: 1156 */
    1253                 :         { 0x1EB4, 0x1EB4, 0x1EB5, 0x1EB4, { -1, -1, -1 } }, /* index: 1157 */
    1254                 :         { 0x1EB5, 0x1EB4, 0x1EB5, 0x1EB4, { -1, -1, -1 } }, /* index: 1158 */
    1255                 :         { 0x1EB6, 0x1EB6, 0x1EB7, 0x1EB6, { -1, -1, -1 } }, /* index: 1159 */
    1256                 :         { 0x1EB7, 0x1EB6, 0x1EB7, 0x1EB6, { -1, -1, -1 } }, /* index: 1160 */
    1257                 :         { 0x1EB8, 0x1EB8, 0x1EB9, 0x1EB8, { -1, -1, -1 } }, /* index: 1161 */
    1258                 :         { 0x1EB9, 0x1EB8, 0x1EB9, 0x1EB8, { -1, -1, -1 } }, /* index: 1162 */
    1259                 :         { 0x1EBA, 0x1EBA, 0x1EBB, 0x1EBA, { -1, -1, -1 } }, /* index: 1163 */
    1260                 :         { 0x1EBB, 0x1EBA, 0x1EBB, 0x1EBA, { -1, -1, -1 } }, /* index: 1164 */
    1261                 :         { 0x1EBC, 0x1EBC, 0x1EBD, 0x1EBC, { -1, -1, -1 } }, /* index: 1165 */
    1262                 :         { 0x1EBD, 0x1EBC, 0x1EBD, 0x1EBC, { -1, -1, -1 } }, /* index: 1166 */
    1263                 :         { 0x1EBE, 0x1EBE, 0x1EBF, 0x1EBE, { -1, -1, -1 } }, /* index: 1167 */
    1264                 :         { 0x1EBF, 0x1EBE, 0x1EBF, 0x1EBE, { -1, -1, -1 } }, /* index: 1168 */
    1265                 :         { 0x1EC0, 0x1EC0, 0x1EC1, 0x1EC0, { -1, -1, -1 } }, /* index: 1169 */
    1266                 :         { 0x1EC1, 0x1EC0, 0x1EC1, 0x1EC0, { -1, -1, -1 } }, /* index: 1170 */
    1267                 :         { 0x1EC2, 0x1EC2, 0x1EC3, 0x1EC2, { -1, -1, -1 } }, /* index: 1171 */
    1268                 :         { 0x1EC3, 0x1EC2, 0x1EC3, 0x1EC2, { -1, -1, -1 } }, /* index: 1172 */
    1269                 :         { 0x1EC4, 0x1EC4, 0x1EC5, 0x1EC4, { -1, -1, -1 } }, /* index: 1173 */
    1270                 :         { 0x1EC5, 0x1EC4, 0x1EC5, 0x1EC4, { -1, -1, -1 } }, /* index: 1174 */
    1271                 :         { 0x1EC6, 0x1EC6, 0x1EC7, 0x1EC6, { -1, -1, -1 } }, /* index: 1175 */
    1272                 :         { 0x1EC7, 0x1EC6, 0x1EC7, 0x1EC6, { -1, -1, -1 } }, /* index: 1176 */
    1273                 :         { 0x1EC8, 0x1EC8, 0x1EC9, 0x1EC8, { -1, -1, -1 } }, /* index: 1177 */
    1274                 :         { 0x1EC9, 0x1EC8, 0x1EC9, 0x1EC8, { -1, -1, -1 } }, /* index: 1178 */
    1275                 :         { 0x1ECA, 0x1ECA, 0x1ECB, 0x1ECA, { -1, -1, -1 } }, /* index: 1179 */
    1276                 :         { 0x1ECB, 0x1ECA, 0x1ECB, 0x1ECA, { -1, -1, -1 } }, /* index: 1180 */
    1277                 :         { 0x1ECC, 0x1ECC, 0x1ECD, 0x1ECC, { -1, -1, -1 } }, /* index: 1181 */
    1278                 :         { 0x1ECD, 0x1ECC, 0x1ECD, 0x1ECC, { -1, -1, -1 } }, /* index: 1182 */
    1279                 :         { 0x1ECE, 0x1ECE, 0x1ECF, 0x1ECE, { -1, -1, -1 } }, /* index: 1183 */
    1280                 :         { 0x1ECF, 0x1ECE, 0x1ECF, 0x1ECE, { -1, -1, -1 } }, /* index: 1184 */
    1281                 :         { 0x1ED0, 0x1ED0, 0x1ED1, 0x1ED0, { -1, -1, -1 } }, /* index: 1185 */
    1282                 :         { 0x1ED1, 0x1ED0, 0x1ED1, 0x1ED0, { -1, -1, -1 } }, /* index: 1186 */
    1283                 :         { 0x1ED2, 0x1ED2, 0x1ED3, 0x1ED2, { -1, -1, -1 } }, /* index: 1187 */
    1284                 :         { 0x1ED3, 0x1ED2, 0x1ED3, 0x1ED2, { -1, -1, -1 } }, /* index: 1188 */
    1285                 :         { 0x1ED4, 0x1ED4, 0x1ED5, 0x1ED4, { -1, -1, -1 } }, /* index: 1189 */
    1286                 :         { 0x1ED5, 0x1ED4, 0x1ED5, 0x1ED4, { -1, -1, -1 } }, /* index: 1190 */
    1287                 :         { 0x1ED6, 0x1ED6, 0x1ED7, 0x1ED6, { -1, -1, -1 } }, /* index: 1191 */
    1288                 :         { 0x1ED7, 0x1ED6, 0x1ED7, 0x1ED6, { -1, -1, -1 } }, /* index: 1192 */
    1289                 :         { 0x1ED8, 0x1ED8, 0x1ED9, 0x1ED8, { -1, -1, -1 } }, /* index: 1193 */
    1290                 :         { 0x1ED9, 0x1ED8, 0x1ED9, 0x1ED8, { -1, -1, -1 } }, /* index: 1194 */
    1291                 :         { 0x1EDA, 0x1EDA, 0x1EDB, 0x1EDA, { -1, -1, -1 } }, /* index: 1195 */
    1292                 :         { 0x1EDB, 0x1EDA, 0x1EDB, 0x1EDA, { -1, -1, -1 } }, /* index: 1196 */
    1293                 :         { 0x1EDC, 0x1EDC, 0x1EDD, 0x1EDC, { -1, -1, -1 } }, /* index: 1197 */
    1294                 :         { 0x1EDD, 0x1EDC, 0x1EDD, 0x1EDC, { -1, -1, -1 } }, /* index: 1198 */
    1295                 :         { 0x1EDE, 0x1EDE, 0x1EDF, 0x1EDE, { -1, -1, -1 } }, /* index: 1199 */
    1296                 :         { 0x1EDF, 0x1EDE, 0x1EDF, 0x1EDE, { -1, -1, -1 } }, /* index: 1200 */
    1297                 :         { 0x1EE0, 0x1EE0, 0x1EE1, 0x1EE0, { -1, -1, -1 } }, /* index: 1201 */
    1298                 :         { 0x1EE1, 0x1EE0, 0x1EE1, 0x1EE0, { -1, -1, -1 } }, /* index: 1202 */
    1299                 :         { 0x1EE2, 0x1EE2, 0x1EE3, 0x1EE2, { -1, -1, -1 } }, /* index: 1203 */
    1300                 :         { 0x1EE3, 0x1EE2, 0x1EE3, 0x1EE2, { -1, -1, -1 } }, /* index: 1204 */
    1301                 :         { 0x1EE4, 0x1EE4, 0x1EE5, 0x1EE4, { -1, -1, -1 } }, /* index: 1205 */
    1302                 :         { 0x1EE5, 0x1EE4, 0x1EE5, 0x1EE4, { -1, -1, -1 } }, /* index: 1206 */
    1303                 :         { 0x1EE6, 0x1EE6, 0x1EE7, 0x1EE6, { -1, -1, -1 } }, /* index: 1207 */
    1304                 :         { 0x1EE7, 0x1EE6, 0x1EE7, 0x1EE6, { -1, -1, -1 } }, /* index: 1208 */
    1305                 :         { 0x1EE8, 0x1EE8, 0x1EE9, 0x1EE8, { -1, -1, -1 } }, /* index: 1209 */
    1306                 :         { 0x1EE9, 0x1EE8, 0x1EE9, 0x1EE8, { -1, -1, -1 } }, /* index: 1210 */
    1307                 :         { 0x1EEA, 0x1EEA, 0x1EEB, 0x1EEA, { -1, -1, -1 } }, /* index: 1211 */
    1308                 :         { 0x1EEB, 0x1EEA, 0x1EEB, 0x1EEA, { -1, -1, -1 } }, /* index: 1212 */
    1309                 :         { 0x1EEC, 0x1EEC, 0x1EED, 0x1EEC, { -1, -1, -1 } }, /* index: 1213 */
    1310                 :         { 0x1EED, 0x1EEC, 0x1EED, 0x1EEC, { -1, -1, -1 } }, /* index: 1214 */
    1311                 :         { 0x1EEE, 0x1EEE, 0x1EEF, 0x1EEE, { -1, -1, -1 } }, /* index: 1215 */
    1312                 :         { 0x1EEF, 0x1EEE, 0x1EEF, 0x1EEE, { -1, -1, -1 } }, /* index: 1216 */
    1313                 :         { 0x1EF0, 0x1EF0, 0x1EF1, 0x1EF0, { -1, -1, -1 } }, /* index: 1217 */
    1314                 :         { 0x1EF1, 0x1EF0, 0x1EF1, 0x1EF0, { -1, -1, -1 } }, /* index: 1218 */
    1315                 :         { 0x1EF2, 0x1EF2, 0x1EF3, 0x1EF2, { -1, -1, -1 } }, /* index: 1219 */
    1316                 :         { 0x1EF3, 0x1EF2, 0x1EF3, 0x1EF2, { -1, -1, -1 } }, /* index: 1220 */
    1317                 :         { 0x1EF4, 0x1EF4, 0x1EF5, 0x1EF4, { -1, -1, -1 } }, /* index: 1221 */
    1318                 :         { 0x1EF5, 0x1EF4, 0x1EF5, 0x1EF4, { -1, -1, -1 } }, /* index: 1222 */
    1319                 :         { 0x1EF6, 0x1EF6, 0x1EF7, 0x1EF6, { -1, -1, -1 } }, /* index: 1223 */
    1320                 :         { 0x1EF7, 0x1EF6, 0x1EF7, 0x1EF6, { -1, -1, -1 } }, /* index: 1224 */
    1321                 :         { 0x1EF8, 0x1EF8, 0x1EF9, 0x1EF8, { -1, -1, -1 } }, /* index: 1225 */
    1322                 :         { 0x1EF9, 0x1EF8, 0x1EF9, 0x1EF8, { -1, -1, -1 } }, /* index: 1226 */
    1323                 :         { 0x1EFA, 0x1EFA, 0x1EFB, 0x1EFA, { -1, -1, -1 } }, /* index: 1227 */
    1324                 :         { 0x1EFB, 0x1EFA, 0x1EFB, 0x1EFA, { -1, -1, -1 } }, /* index: 1228 */
    1325                 :         { 0x1EFC, 0x1EFC, 0x1EFD, 0x1EFC, { -1, -1, -1 } }, /* index: 1229 */
    1326                 :         { 0x1EFD, 0x1EFC, 0x1EFD, 0x1EFC, { -1, -1, -1 } }, /* index: 1230 */
    1327                 :         { 0x1EFE, 0x1EFE, 0x1EFF, 0x1EFE, { -1, -1, -1 } }, /* index: 1231 */
    1328                 :         { 0x1EFF, 0x1EFE, 0x1EFF, 0x1EFE, { -1, -1, -1 } }, /* index: 1232 */
    1329                 :         { 0x1F00, 0x1F08, 0x1F00, 0x1F08, { -1, -1, -1 } }, /* index: 1233 */
    1330                 :         { 0x1F01, 0x1F09, 0x1F01, 0x1F09, { -1, -1, -1 } }, /* index: 1234 */
    1331                 :         { 0x1F02, 0x1F0A, 0x1F02, 0x1F0A, { -1, -1, -1 } }, /* index: 1235 */
    1332                 :         { 0x1F03, 0x1F0B, 0x1F03, 0x1F0B, { -1, -1, -1 } }, /* index: 1236 */
    1333                 :         { 0x1F04, 0x1F0C, 0x1F04, 0x1F0C, { -1, -1, -1 } }, /* index: 1237 */
    1334                 :         { 0x1F05, 0x1F0D, 0x1F05, 0x1F0D, { -1, -1, -1 } }, /* index: 1238 */
    1335                 :         { 0x1F06, 0x1F0E, 0x1F06, 0x1F0E, { -1, -1, -1 } }, /* index: 1239 */
    1336                 :         { 0x1F07, 0x1F0F, 0x1F07, 0x1F0F, { -1, -1, -1 } }, /* index: 1240 */
    1337                 :         { 0x1F08, 0x1F08, 0x1F00, 0x1F08, { -1, -1, -1 } }, /* index: 1241 */
    1338                 :         { 0x1F09, 0x1F09, 0x1F01, 0x1F09, { -1, -1, -1 } }, /* index: 1242 */
    1339                 :         { 0x1F0A, 0x1F0A, 0x1F02, 0x1F0A, { -1, -1, -1 } }, /* index: 1243 */
    1340                 :         { 0x1F0B, 0x1F0B, 0x1F03, 0x1F0B, { -1, -1, -1 } }, /* index: 1244 */
    1341                 :         { 0x1F0C, 0x1F0C, 0x1F04, 0x1F0C, { -1, -1, -1 } }, /* index: 1245 */
    1342                 :         { 0x1F0D, 0x1F0D, 0x1F05, 0x1F0D, { -1, -1, -1 } }, /* index: 1246 */
    1343                 :         { 0x1F0E, 0x1F0E, 0x1F06, 0x1F0E, { -1, -1, -1 } }, /* index: 1247 */
    1344                 :         { 0x1F0F, 0x1F0F, 0x1F07, 0x1F0F, { -1, -1, -1 } }, /* index: 1248 */
    1345                 :         { 0x1F10, 0x1F18, 0x1F10, 0x1F18, { -1, -1, -1 } }, /* index: 1249 */
    1346                 :         { 0x1F11, 0x1F19, 0x1F11, 0x1F19, { -1, -1, -1 } }, /* index: 1250 */
    1347                 :         { 0x1F12, 0x1F1A, 0x1F12, 0x1F1A, { -1, -1, -1 } }, /* index: 1251 */
    1348                 :         { 0x1F13, 0x1F1B, 0x1F13, 0x1F1B, { -1, -1, -1 } }, /* index: 1252 */
    1349                 :         { 0x1F14, 0x1F1C, 0x1F14, 0x1F1C, { -1, -1, -1 } }, /* index: 1253 */
    1350                 :         { 0x1F15, 0x1F1D, 0x1F15, 0x1F1D, { -1, -1, -1 } }, /* index: 1254 */
    1351                 :         { 0x1F18, 0x1F18, 0x1F10, 0x1F18, { -1, -1, -1 } }, /* index: 1255 */
    1352                 :         { 0x1F19, 0x1F19, 0x1F11, 0x1F19, { -1, -1, -1 } }, /* index: 1256 */
    1353                 :         { 0x1F1A, 0x1F1A, 0x1F12, 0x1F1A, { -1, -1, -1 } }, /* index: 1257 */
    1354                 :         { 0x1F1B, 0x1F1B, 0x1F13, 0x1F1B, { -1, -1, -1 } }, /* index: 1258 */
    1355                 :         { 0x1F1C, 0x1F1C, 0x1F14, 0x1F1C, { -1, -1, -1 } }, /* index: 1259 */
    1356                 :         { 0x1F1D, 0x1F1D, 0x1F15, 0x1F1D, { -1, -1, -1 } }, /* index: 1260 */
    1357                 :         { 0x1F20, 0x1F28, 0x1F20, 0x1F28, { -1, -1, -1 } }, /* index: 1261 */
    1358                 :         { 0x1F21, 0x1F29, 0x1F21, 0x1F29, { -1, -1, -1 } }, /* index: 1262 */
    1359                 :         { 0x1F22, 0x1F2A, 0x1F22, 0x1F2A, { -1, -1, -1 } }, /* index: 1263 */
    1360                 :         { 0x1F23, 0x1F2B, 0x1F23, 0x1F2B, { -1, -1, -1 } }, /* index: 1264 */
    1361                 :         { 0x1F24, 0x1F2C, 0x1F24, 0x1F2C, { -1, -1, -1 } }, /* index: 1265 */
    1362                 :         { 0x1F25, 0x1F2D, 0x1F25, 0x1F2D, { -1, -1, -1 } }, /* index: 1266 */
    1363                 :         { 0x1F26, 0x1F2E, 0x1F26, 0x1F2E, { -1, -1, -1 } }, /* index: 1267 */
    1364                 :         { 0x1F27, 0x1F2F, 0x1F27, 0x1F2F, { -1, -1, -1 } }, /* index: 1268 */
    1365                 :         { 0x1F28, 0x1F28, 0x1F20, 0x1F28, { -1, -1, -1 } }, /* index: 1269 */
    1366                 :         { 0x1F29, 0x1F29, 0x1F21, 0x1F29, { -1, -1, -1 } }, /* index: 1270 */
    1367                 :         { 0x1F2A, 0x1F2A, 0x1F22, 0x1F2A, { -1, -1, -1 } }, /* index: 1271 */
    1368                 :         { 0x1F2B, 0x1F2B, 0x1F23, 0x1F2B, { -1, -1, -1 } }, /* index: 1272 */
    1369                 :         { 0x1F2C, 0x1F2C, 0x1F24, 0x1F2C, { -1, -1, -1 } }, /* index: 1273 */
    1370                 :         { 0x1F2D, 0x1F2D, 0x1F25, 0x1F2D, { -1, -1, -1 } }, /* index: 1274 */
    1371                 :         { 0x1F2E, 0x1F2E, 0x1F26, 0x1F2E, { -1, -1, -1 } }, /* index: 1275 */
    1372                 :         { 0x1F2F, 0x1F2F, 0x1F27, 0x1F2F, { -1, -1, -1 } }, /* index: 1276 */
    1373                 :         { 0x1F30, 0x1F38, 0x1F30, 0x1F38, { -1, -1, -1 } }, /* index: 1277 */
    1374                 :         { 0x1F31, 0x1F39, 0x1F31, 0x1F39, { -1, -1, -1 } }, /* index: 1278 */
    1375                 :         { 0x1F32, 0x1F3A, 0x1F32, 0x1F3A, { -1, -1, -1 } }, /* index: 1279 */
    1376                 :         { 0x1F33, 0x1F3B, 0x1F33, 0x1F3B, { -1, -1, -1 } }, /* index: 1280 */
    1377                 :         { 0x1F34, 0x1F3C, 0x1F34, 0x1F3C, { -1, -1, -1 } }, /* index: 1281 */
    1378                 :         { 0x1F35, 0x1F3D, 0x1F35, 0x1F3D, { -1, -1, -1 } }, /* index: 1282 */
    1379                 :         { 0x1F36, 0x1F3E, 0x1F36, 0x1F3E, { -1, -1, -1 } }, /* index: 1283 */
    1380                 :         { 0x1F37, 0x1F3F, 0x1F37, 0x1F3F, { -1, -1, -1 } }, /* index: 1284 */
    1381                 :         { 0x1F38, 0x1F38, 0x1F30, 0x1F38, { -1, -1, -1 } }, /* index: 1285 */
    1382                 :         { 0x1F39, 0x1F39, 0x1F31, 0x1F39, { -1, -1, -1 } }, /* index: 1286 */
    1383                 :         { 0x1F3A, 0x1F3A, 0x1F32, 0x1F3A, { -1, -1, -1 } }, /* index: 1287 */
    1384                 :         { 0x1F3B, 0x1F3B, 0x1F33, 0x1F3B, { -1, -1, -1 } }, /* index: 1288 */
    1385                 :         { 0x1F3C, 0x1F3C, 0x1F34, 0x1F3C, { -1, -1, -1 } }, /* index: 1289 */
    1386                 :         { 0x1F3D, 0x1F3D, 0x1F35, 0x1F3D, { -1, -1, -1 } }, /* index: 1290 */
    1387                 :         { 0x1F3E, 0x1F3E, 0x1F36, 0x1F3E, { -1, -1, -1 } }, /* index: 1291 */
    1388                 :         { 0x1F3F, 0x1F3F, 0x1F37, 0x1F3F, { -1, -1, -1 } }, /* index: 1292 */
    1389                 :         { 0x1F40, 0x1F48, 0x1F40, 0x1F48, { -1, -1, -1 } }, /* index: 1293 */
    1390                 :         { 0x1F41, 0x1F49, 0x1F41, 0x1F49, { -1, -1, -1 } }, /* index: 1294 */
    1391                 :         { 0x1F42, 0x1F4A, 0x1F42, 0x1F4A, { -1, -1, -1 } }, /* index: 1295 */
    1392                 :         { 0x1F43, 0x1F4B, 0x1F43, 0x1F4B, { -1, -1, -1 } }, /* index: 1296 */
    1393                 :         { 0x1F44, 0x1F4C, 0x1F44, 0x1F4C, { -1, -1, -1 } }, /* index: 1297 */
    1394                 :         { 0x1F45, 0x1F4D, 0x1F45, 0x1F4D, { -1, -1, -1 } }, /* index: 1298 */
    1395                 :         { 0x1F48, 0x1F48, 0x1F40, 0x1F48, { -1, -1, -1 } }, /* index: 1299 */
    1396                 :         { 0x1F49, 0x1F49, 0x1F41, 0x1F49, { -1, -1, -1 } }, /* index: 1300 */
    1397                 :         { 0x1F4A, 0x1F4A, 0x1F42, 0x1F4A, { -1, -1, -1 } }, /* index: 1301 */
    1398                 :         { 0x1F4B, 0x1F4B, 0x1F43, 0x1F4B, { -1, -1, -1 } }, /* index: 1302 */
    1399                 :         { 0x1F4C, 0x1F4C, 0x1F44, 0x1F4C, { -1, -1, -1 } }, /* index: 1303 */
    1400                 :         { 0x1F4D, 0x1F4D, 0x1F45, 0x1F4D, { -1, -1, -1 } }, /* index: 1304 */
    1401                 :         { 0x1F50, 0x1F50, 0x1F50, 0x1F50, { 24, -1, -1 } }, /* index: 1305 */
    1402                 :         { 0x1F51, 0x1F59, 0x1F51, 0x1F59, { -1, -1, -1 } }, /* index: 1306 */
    1403                 :         { 0x1F52, 0x1F52, 0x1F52, 0x1F52, { 25, -1, -1 } }, /* index: 1307 */
    1404                 :         { 0x1F53, 0x1F5B, 0x1F53, 0x1F5B, { -1, -1, -1 } }, /* index: 1308 */
    1405                 :         { 0x1F54, 0x1F54, 0x1F54, 0x1F54, { 26, -1, -1 } }, /* index: 1309 */
    1406                 :         { 0x1F55, 0x1F5D, 0x1F55, 0x1F5D, { -1, -1, -1 } }, /* index: 1310 */
    1407                 :         { 0x1F56, 0x1F56, 0x1F56, 0x1F56, { 27, -1, -1 } }, /* index: 1311 */
    1408                 :         { 0x1F57, 0x1F5F, 0x1F57, 0x1F5F, { -1, -1, -1 } }, /* index: 1312 */
    1409                 :         { 0x1F59, 0x1F59, 0x1F51, 0x1F59, { -1, -1, -1 } }, /* index: 1313 */
    1410                 :         { 0x1F5B, 0x1F5B, 0x1F53, 0x1F5B, { -1, -1, -1 } }, /* index: 1314 */
    1411                 :         { 0x1F5D, 0x1F5D, 0x1F55, 0x1F5D, { -1, -1, -1 } }, /* index: 1315 */
    1412                 :         { 0x1F5F, 0x1F5F, 0x1F57, 0x1F5F, { -1, -1, -1 } }, /* index: 1316 */
    1413                 :         { 0x1F60, 0x1F68, 0x1F60, 0x1F68, { -1, -1, -1 } }, /* index: 1317 */
    1414                 :         { 0x1F61, 0x1F69, 0x1F61, 0x1F69, { -1, -1, -1 } }, /* index: 1318 */
    1415                 :         { 0x1F62, 0x1F6A, 0x1F62, 0x1F6A, { -1, -1, -1 } }, /* index: 1319 */
    1416                 :         { 0x1F63, 0x1F6B, 0x1F63, 0x1F6B, { -1, -1, -1 } }, /* index: 1320 */
    1417                 :         { 0x1F64, 0x1F6C, 0x1F64, 0x1F6C, { -1, -1, -1 } }, /* index: 1321 */
    1418                 :         { 0x1F65, 0x1F6D, 0x1F65, 0x1F6D, { -1, -1, -1 } }, /* index: 1322 */
    1419                 :         { 0x1F66, 0x1F6E, 0x1F66, 0x1F6E, { -1, -1, -1 } }, /* index: 1323 */
    1420                 :         { 0x1F67, 0x1F6F, 0x1F67, 0x1F6F, { -1, -1, -1 } }, /* index: 1324 */
    1421                 :         { 0x1F68, 0x1F68, 0x1F60, 0x1F68, { -1, -1, -1 } }, /* index: 1325 */
    1422                 :         { 0x1F69, 0x1F69, 0x1F61, 0x1F69, { -1, -1, -1 } }, /* index: 1326 */
    1423                 :         { 0x1F6A, 0x1F6A, 0x1F62, 0x1F6A, { -1, -1, -1 } }, /* index: 1327 */
    1424                 :         { 0x1F6B, 0x1F6B, 0x1F63, 0x1F6B, { -1, -1, -1 } }, /* index: 1328 */
    1425                 :         { 0x1F6C, 0x1F6C, 0x1F64, 0x1F6C, { -1, -1, -1 } }, /* index: 1329 */
    1426                 :         { 0x1F6D, 0x1F6D, 0x1F65, 0x1F6D, { -1, -1, -1 } }, /* index: 1330 */
    1427                 :         { 0x1F6E, 0x1F6E, 0x1F66, 0x1F6E, { -1, -1, -1 } }, /* index: 1331 */
    1428                 :         { 0x1F6F, 0x1F6F, 0x1F67, 0x1F6F, { -1, -1, -1 } }, /* index: 1332 */
    1429                 :         { 0x1F70, 0x1FBA, 0x1F70, 0x1FBA, { -1, -1, -1 } }, /* index: 1333 */
    1430                 :         { 0x1F71, 0x1FBB, 0x1F71, 0x1FBB, { -1, -1, -1 } }, /* index: 1334 */
    1431                 :         { 0x1F72, 0x1FC8, 0x1F72, 0x1FC8, { -1, -1, -1 } }, /* index: 1335 */
    1432                 :         { 0x1F73, 0x1FC9, 0x1F73, 0x1FC9, { -1, -1, -1 } }, /* index: 1336 */
    1433                 :         { 0x1F74, 0x1FCA, 0x1F74, 0x1FCA, { -1, -1, -1 } }, /* index: 1337 */
    1434                 :         { 0x1F75, 0x1FCB, 0x1F75, 0x1FCB, { -1, -1, -1 } }, /* index: 1338 */
    1435                 :         { 0x1F76, 0x1FDA, 0x1F76, 0x1FDA, { -1, -1, -1 } }, /* index: 1339 */
    1436                 :         { 0x1F77, 0x1FDB, 0x1F77, 0x1FDB, { -1, -1, -1 } }, /* index: 1340 */
    1437                 :         { 0x1F78, 0x1FF8, 0x1F78, 0x1FF8, { -1, -1, -1 } }, /* index: 1341 */
    1438                 :         { 0x1F79, 0x1FF9, 0x1F79, 0x1FF9, { -1, -1, -1 } }, /* index: 1342 */
    1439                 :         { 0x1F7A, 0x1FEA, 0x1F7A, 0x1FEA, { -1, -1, -1 } }, /* index: 1343 */
    1440                 :         { 0x1F7B, 0x1FEB, 0x1F7B, 0x1FEB, { -1, -1, -1 } }, /* index: 1344 */
    1441                 :         { 0x1F7C, 0x1FFA, 0x1F7C, 0x1FFA, { -1, -1, -1 } }, /* index: 1345 */
    1442                 :         { 0x1F7D, 0x1FFB, 0x1F7D, 0x1FFB, { -1, -1, -1 } }, /* index: 1346 */
    1443                 :         { 0x1F80, 0x1F88, 0x1F80, 0x1F88, { 40, -1, -1 } }, /* index: 1347 */
    1444                 :         { 0x1F81, 0x1F89, 0x1F81, 0x1F89, { 41, -1, -1 } }, /* index: 1348 */
    1445                 :         { 0x1F82, 0x1F8A, 0x1F82, 0x1F8A, { 42, -1, -1 } }, /* index: 1349 */
    1446                 :         { 0x1F83, 0x1F8B, 0x1F83, 0x1F8B, { 43, -1, -1 } }, /* index: 1350 */
    1447                 :         { 0x1F84, 0x1F8C, 0x1F84, 0x1F8C, { 44, -1, -1 } }, /* index: 1351 */
    1448                 :         { 0x1F85, 0x1F8D, 0x1F85, 0x1F8D, { 45, -1, -1 } }, /* index: 1352 */
    1449                 :         { 0x1F86, 0x1F8E, 0x1F86, 0x1F8E, { 46, -1, -1 } }, /* index: 1353 */
    1450                 :         { 0x1F87, 0x1F8F, 0x1F87, 0x1F8F, { 47, -1, -1 } }, /* index: 1354 */
    1451                 :         { 0x1F88, 0x1F88, 0x1F80, 0x1F88, { 48, -1, -1 } }, /* index: 1355 */
    1452                 :         { 0x1F89, 0x1F89, 0x1F81, 0x1F89, { 49, -1, -1 } }, /* index: 1356 */
    1453                 :         { 0x1F8A, 0x1F8A, 0x1F82, 0x1F8A, { 50, -1, -1 } }, /* index: 1357 */
    1454                 :         { 0x1F8B, 0x1F8B, 0x1F83, 0x1F8B, { 51, -1, -1 } }, /* index: 1358 */
    1455                 :         { 0x1F8C, 0x1F8C, 0x1F84, 0x1F8C, { 52, -1, -1 } }, /* index: 1359 */
    1456                 :         { 0x1F8D, 0x1F8D, 0x1F85, 0x1F8D, { 53, -1, -1 } }, /* index: 1360 */
    1457                 :         { 0x1F8E, 0x1F8E, 0x1F86, 0x1F8E, { 54, -1, -1 } }, /* index: 1361 */
    1458                 :         { 0x1F8F, 0x1F8F, 0x1F87, 0x1F8F, { 55, -1, -1 } }, /* index: 1362 */
    1459                 :         { 0x1F90, 0x1F98, 0x1F90, 0x1F98, { 56, -1, -1 } }, /* index: 1363 */
    1460                 :         { 0x1F91, 0x1F99, 0x1F91, 0x1F99, { 57, -1, -1 } }, /* index: 1364 */
    1461                 :         { 0x1F92, 0x1F9A, 0x1F92, 0x1F9A, { 58, -1, -1 } }, /* index: 1365 */
    1462                 :         { 0x1F93, 0x1F9B, 0x1F93, 0x1F9B, { 59, -1, -1 } }, /* index: 1366 */
    1463                 :         { 0x1F94, 0x1F9C, 0x1F94, 0x1F9C, { 60, -1, -1 } }, /* index: 1367 */
    1464                 :         { 0x1F95, 0x1F9D, 0x1F95, 0x1F9D, { 61, -1, -1 } }, /* index: 1368 */
    1465                 :         { 0x1F96, 0x1F9E, 0x1F96, 0x1F9E, { 62, -1, -1 } }, /* index: 1369 */
    1466                 :         { 0x1F97, 0x1F9F, 0x1F97, 0x1F9F, { 63, -1, -1 } }, /* index: 1370 */
    1467                 :         { 0x1F98, 0x1F98, 0x1F90, 0x1F98, { 64, -1, -1 } }, /* index: 1371 */
    1468                 :         { 0x1F99, 0x1F99, 0x1F91, 0x1F99, { 65, -1, -1 } }, /* index: 1372 */
    1469                 :         { 0x1F9A, 0x1F9A, 0x1F92, 0x1F9A, { 66, -1, -1 } }, /* index: 1373 */
    1470                 :         { 0x1F9B, 0x1F9B, 0x1F93, 0x1F9B, { 67, -1, -1 } }, /* index: 1374 */
    1471                 :         { 0x1F9C, 0x1F9C, 0x1F94, 0x1F9C, { 68, -1, -1 } }, /* index: 1375 */
    1472                 :         { 0x1F9D, 0x1F9D, 0x1F95, 0x1F9D, { 69, -1, -1 } }, /* index: 1376 */
    1473                 :         { 0x1F9E, 0x1F9E, 0x1F96, 0x1F9E, { 70, -1, -1 } }, /* index: 1377 */
    1474                 :         { 0x1F9F, 0x1F9F, 0x1F97, 0x1F9F, { 71, -1, -1 } }, /* index: 1378 */
    1475                 :         { 0x1FA0, 0x1FA8, 0x1FA0, 0x1FA8, { 72, -1, -1 } }, /* index: 1379 */
    1476                 :         { 0x1FA1, 0x1FA9, 0x1FA1, 0x1FA9, { 73, -1, -1 } }, /* index: 1380 */
    1477                 :         { 0x1FA2, 0x1FAA, 0x1FA2, 0x1FAA, { 74, -1, -1 } }, /* index: 1381 */
    1478                 :         { 0x1FA3, 0x1FAB, 0x1FA3, 0x1FAB, { 75, -1, -1 } }, /* index: 1382 */
    1479                 :         { 0x1FA4, 0x1FAC, 0x1FA4, 0x1FAC, { 76, -1, -1 } }, /* index: 1383 */
    1480                 :         { 0x1FA5, 0x1FAD, 0x1FA5, 0x1FAD, { 77, -1, -1 } }, /* index: 1384 */
    1481                 :         { 0x1FA6, 0x1FAE, 0x1FA6, 0x1FAE, { 78, -1, -1 } }, /* index: 1385 */
    1482                 :         { 0x1FA7, 0x1FAF, 0x1FA7, 0x1FAF, { 79, -1, -1 } }, /* index: 1386 */
    1483                 :         { 0x1FA8, 0x1FA8, 0x1FA0, 0x1FA8, { 80, -1, -1 } }, /* index: 1387 */
    1484                 :         { 0x1FA9, 0x1FA9, 0x1FA1, 0x1FA9, { 81, -1, -1 } }, /* index: 1388 */
    1485                 :         { 0x1FAA, 0x1FAA, 0x1FA2, 0x1FAA, { 82, -1, -1 } }, /* index: 1389 */
    1486                 :         { 0x1FAB, 0x1FAB, 0x1FA3, 0x1FAB, { 83, -1, -1 } }, /* index: 1390 */
    1487                 :         { 0x1FAC, 0x1FAC, 0x1FA4, 0x1FAC, { 84, -1, -1 } }, /* index: 1391 */
    1488                 :         { 0x1FAD, 0x1FAD, 0x1FA5, 0x1FAD, { 85, -1, -1 } }, /* index: 1392 */
    1489                 :         { 0x1FAE, 0x1FAE, 0x1FA6, 0x1FAE, { 86, -1, -1 } }, /* index: 1393 */
    1490                 :         { 0x1FAF, 0x1FAF, 0x1FA7, 0x1FAF, { 87, -1, -1 } }, /* index: 1394 */
    1491                 :         { 0x1FB0, 0x1FB8, 0x1FB0, 0x1FB8, { -1, -1, -1 } }, /* index: 1395 */
    1492                 :         { 0x1FB1, 0x1FB9, 0x1FB1, 0x1FB9, { -1, -1, -1 } }, /* index: 1396 */
    1493                 :         { 0x1FB2, 0x1FB2, 0x1FB2, 0x1FB2, { 94, -1, -1 } }, /* index: 1397 */
    1494                 :         { 0x1FB3, 0x1FBC, 0x1FB3, 0x1FBC, { 88, -1, -1 } }, /* index: 1398 */
    1495                 :         { 0x1FB4, 0x1FB4, 0x1FB4, 0x1FB4, { 95, -1, -1 } }, /* index: 1399 */
    1496                 :         { 0x1FB6, 0x1FB6, 0x1FB6, 0x1FB6, { 28, -1, -1 } }, /* index: 1400 */
    1497                 :         { 0x1FB7, 0x1FB7, 0x1FB7, 0x1FB7, { 100, -1, -1 } }, /* index: 1401 */
    1498                 :         { 0x1FB8, 0x1FB8, 0x1FB0, 0x1FB8, { -1, -1, -1 } }, /* index: 1402 */
    1499                 :         { 0x1FB9, 0x1FB9, 0x1FB1, 0x1FB9, { -1, -1, -1 } }, /* index: 1403 */
    1500                 :         { 0x1FBA, 0x1FBA, 0x1F70, 0x1FBA, { -1, -1, -1 } }, /* index: 1404 */
    1501                 :         { 0x1FBB, 0x1FBB, 0x1F71, 0x1FBB, { -1, -1, -1 } }, /* index: 1405 */
    1502                 :         { 0x1FBC, 0x1FBC, 0x1FB3, 0x1FBC, { 89, -1, -1 } }, /* index: 1406 */
    1503                 :         { 0x1FBE, 0x0399, 0x1FBE, 0x0399, { -1, -1, -1 } }, /* index: 1407 */
    1504                 :         { 0x1FC2, 0x1FC2, 0x1FC2, 0x1FC2, { 96, -1, -1 } }, /* index: 1408 */
    1505                 :         { 0x1FC3, 0x1FCC, 0x1FC3, 0x1FCC, { 90, -1, -1 } }, /* index: 1409 */
    1506                 :         { 0x1FC4, 0x1FC4, 0x1FC4, 0x1FC4, { 97, -1, -1 } }, /* index: 1410 */
    1507                 :         { 0x1FC6, 0x1FC6, 0x1FC6, 0x1FC6, { 29, -1, -1 } }, /* index: 1411 */
    1508                 :         { 0x1FC7, 0x1FC7, 0x1FC7, 0x1FC7, { 101, -1, -1 } }, /* index: 1412 */
    1509                 :         { 0x1FC8, 0x1FC8, 0x1F72, 0x1FC8, { -1, -1, -1 } }, /* index: 1413 */
    1510                 :         { 0x1FC9, 0x1FC9, 0x1F73, 0x1FC9, { -1, -1, -1 } }, /* index: 1414 */
    1511                 :         { 0x1FCA, 0x1FCA, 0x1F74, 0x1FCA, { -1, -1, -1 } }, /* index: 1415 */
    1512                 :         { 0x1FCB, 0x1FCB, 0x1F75, 0x1FCB, { -1, -1, -1 } }, /* index: 1416 */
    1513                 :         { 0x1FCC, 0x1FCC, 0x1FC3, 0x1FCC, { 91, -1, -1 } }, /* index: 1417 */
    1514                 :         { 0x1FD0, 0x1FD8, 0x1FD0, 0x1FD8, { -1, -1, -1 } }, /* index: 1418 */
    1515                 :         { 0x1FD1, 0x1FD9, 0x1FD1, 0x1FD9, { -1, -1, -1 } }, /* index: 1419 */
    1516                 :         { 0x1FD2, 0x1FD2, 0x1FD2, 0x1FD2, { 30, -1, -1 } }, /* index: 1420 */
    1517                 :         { 0x1FD3, 0x1FD3, 0x1FD3, 0x1FD3, { 31, -1, -1 } }, /* index: 1421 */
    1518                 :         { 0x1FD6, 0x1FD6, 0x1FD6, 0x1FD6, { 32, -1, -1 } }, /* index: 1422 */
    1519                 :         { 0x1FD7, 0x1FD7, 0x1FD7, 0x1FD7, { 33, -1, -1 } }, /* index: 1423 */
    1520                 :         { 0x1FD8, 0x1FD8, 0x1FD0, 0x1FD8, { -1, -1, -1 } }, /* index: 1424 */
    1521                 :         { 0x1FD9, 0x1FD9, 0x1FD1, 0x1FD9, { -1, -1, -1 } }, /* index: 1425 */
    1522                 :         { 0x1FDA, 0x1FDA, 0x1F76, 0x1FDA, { -1, -1, -1 } }, /* index: 1426 */
    1523                 :         { 0x1FDB, 0x1FDB, 0x1F77, 0x1FDB, { -1, -1, -1 } }, /* index: 1427 */
    1524                 :         { 0x1FE0, 0x1FE8, 0x1FE0, 0x1FE8, { -1, -1, -1 } }, /* index: 1428 */
    1525                 :         { 0x1FE1, 0x1FE9, 0x1FE1, 0x1FE9, { -1, -1, -1 } }, /* index: 1429 */
    1526                 :         { 0x1FE2, 0x1FE2, 0x1FE2, 0x1FE2, { 34, -1, -1 } }, /* index: 1430 */
    1527                 :         { 0x1FE3, 0x1FE3, 0x1FE3, 0x1FE3, { 35, -1, -1 } }, /* index: 1431 */
    1528                 :         { 0x1FE4, 0x1FE4, 0x1FE4, 0x1FE4, { 36, -1, -1 } }, /* index: 1432 */
    1529                 :         { 0x1FE5, 0x1FEC, 0x1FE5, 0x1FEC, { -1, -1, -1 } }, /* index: 1433 */
    1530                 :         { 0x1FE6, 0x1FE6, 0x1FE6, 0x1FE6, { 37, -1, -1 } }, /* index: 1434 */
    1531                 :         { 0x1FE7, 0x1FE7, 0x1FE7, 0x1FE7, { 38, -1, -1 } }, /* index: 1435 */
    1532                 :         { 0x1FE8, 0x1FE8, 0x1FE0, 0x1FE8, { -1, -1, -1 } }, /* index: 1436 */
    1533                 :         { 0x1FE9, 0x1FE9, 0x1FE1, 0x1FE9, { -1, -1, -1 } }, /* index: 1437 */
    1534                 :         { 0x1FEA, 0x1FEA, 0x1F7A, 0x1FEA, { -1, -1, -1 } }, /* index: 1438 */
    1535                 :         { 0x1FEB, 0x1FEB, 0x1F7B, 0x1FEB, { -1, -1, -1 } }, /* index: 1439 */
    1536                 :         { 0x1FEC, 0x1FEC, 0x1FE5, 0x1FEC, { -1, -1, -1 } }, /* index: 1440 */
    1537                 :         { 0x1FF2, 0x1FF2, 0x1FF2, 0x1FF2, { 98, -1, -1 } }, /* index: 1441 */
    1538                 :         { 0x1FF3, 0x1FFC, 0x1FF3, 0x1FFC, { 92, -1, -1 } }, /* index: 1442 */
    1539                 :         { 0x1FF4, 0x1FF4, 0x1FF4, 0x1FF4, { 99, -1, -1 } }, /* index: 1443 */
    1540                 :         { 0x1FF6, 0x1FF6, 0x1FF6, 0x1FF6, { 39, -1, -1 } }, /* index: 1444 */
    1541                 :         { 0x1FF7, 0x1FF7, 0x1FF7, 0x1FF7, { 102, -1, -1 } }, /* index: 1445 */
    1542                 :         { 0x1FF8, 0x1FF8, 0x1F78, 0x1FF8, { -1, -1, -1 } }, /* index: 1446 */
    1543                 :         { 0x1FF9, 0x1FF9, 0x1F79, 0x1FF9, { -1, -1, -1 } }, /* index: 1447 */
    1544                 :         { 0x1FFA, 0x1FFA, 0x1F7C, 0x1FFA, { -1, -1, -1 } }, /* index: 1448 */
    1545                 :         { 0x1FFB, 0x1FFB, 0x1F7D, 0x1FFB, { -1, -1, -1 } }, /* index: 1449 */
    1546                 :         { 0x1FFC, 0x1FFC, 0x1FF3, 0x1FFC, { 93, -1, -1 } }, /* index: 1450 */
    1547                 :         { 0x2126, 0x2126, 0x03C9, 0x2126, { -1, -1, -1 } }, /* index: 1451 */
    1548                 :         { 0x212A, 0x212A, 0x006B, 0x212A, { -1, -1, -1 } }, /* index: 1452 */
    1549                 :         { 0x212B, 0x212B, 0x00E5, 0x212B, { -1, -1, -1 } }, /* index: 1453 */
    1550                 :         { 0x2132, 0x2132, 0x214E, 0x2132, { -1, -1, -1 } }, /* index: 1454 */
    1551                 :         { 0x214E, 0x2132, 0x214E, 0x2132, { -1, -1, -1 } }, /* index: 1455 */
    1552                 :         { 0x2160, 0x2160, 0x2170, 0x2160, { -1, -1, -1 } }, /* index: 1456 */
    1553                 :         { 0x2161, 0x2161, 0x2171, 0x2161, { -1, -1, -1 } }, /* index: 1457 */
    1554                 :         { 0x2162, 0x2162, 0x2172, 0x2162, { -1, -1, -1 } }, /* index: 1458 */
    1555                 :         { 0x2163, 0x2163, 0x2173, 0x2163, { -1, -1, -1 } }, /* index: 1459 */
    1556                 :         { 0x2164, 0x2164, 0x2174, 0x2164, { -1, -1, -1 } }, /* index: 1460 */
    1557                 :         { 0x2165, 0x2165, 0x2175, 0x2165, { -1, -1, -1 } }, /* index: 1461 */
    1558                 :         { 0x2166, 0x2166, 0x2176, 0x2166, { -1, -1, -1 } }, /* index: 1462 */
    1559                 :         { 0x2167, 0x2167, 0x2177, 0x2167, { -1, -1, -1 } }, /* index: 1463 */
    1560                 :         { 0x2168, 0x2168, 0x2178, 0x2168, { -1, -1, -1 } }, /* index: 1464 */
    1561                 :         { 0x2169, 0x2169, 0x2179, 0x2169, { -1, -1, -1 } }, /* index: 1465 */
    1562                 :         { 0x216A, 0x216A, 0x217A, 0x216A, { -1, -1, -1 } }, /* index: 1466 */
    1563                 :         { 0x216B, 0x216B, 0x217B, 0x216B, { -1, -1, -1 } }, /* index: 1467 */
    1564                 :         { 0x216C, 0x216C, 0x217C, 0x216C, { -1, -1, -1 } }, /* index: 1468 */
    1565                 :         { 0x216D, 0x216D, 0x217D, 0x216D, { -1, -1, -1 } }, /* index: 1469 */
    1566                 :         { 0x216E, 0x216E, 0x217E, 0x216E, { -1, -1, -1 } }, /* index: 1470 */
    1567                 :         { 0x216F, 0x216F, 0x217F, 0x216F, { -1, -1, -1 } }, /* index: 1471 */
    1568                 :         { 0x2170, 0x2160, 0x2170, 0x2160, { -1, -1, -1 } }, /* index: 1472 */
    1569                 :         { 0x2171, 0x2161, 0x2171, 0x2161, { -1, -1, -1 } }, /* index: 1473 */
    1570                 :         { 0x2172, 0x2162, 0x2172, 0x2162, { -1, -1, -1 } }, /* index: 1474 */
    1571                 :         { 0x2173, 0x2163, 0x2173, 0x2163, { -1, -1, -1 } }, /* index: 1475 */
    1572                 :         { 0x2174, 0x2164, 0x2174, 0x2164, { -1, -1, -1 } }, /* index: 1476 */
    1573                 :         { 0x2175, 0x2165, 0x2175, 0x2165, { -1, -1, -1 } }, /* index: 1477 */
    1574                 :         { 0x2176, 0x2166, 0x2176, 0x2166, { -1, -1, -1 } }, /* index: 1478 */
    1575                 :         { 0x2177, 0x2167, 0x2177, 0x2167, { -1, -1, -1 } }, /* index: 1479 */
    1576                 :         { 0x2178, 0x2168, 0x2178, 0x2168, { -1, -1, -1 } }, /* index: 1480 */
    1577                 :         { 0x2179, 0x2169, 0x2179, 0x2169, { -1, -1, -1 } }, /* index: 1481 */
    1578                 :         { 0x217A, 0x216A, 0x217A, 0x216A, { -1, -1, -1 } }, /* index: 1482 */
    1579                 :         { 0x217B, 0x216B, 0x217B, 0x216B, { -1, -1, -1 } }, /* index: 1483 */
    1580                 :         { 0x217C, 0x216C, 0x217C, 0x216C, { -1, -1, -1 } }, /* index: 1484 */
    1581                 :         { 0x217D, 0x216D, 0x217D, 0x216D, { -1, -1, -1 } }, /* index: 1485 */
    1582                 :         { 0x217E, 0x216E, 0x217E, 0x216E, { -1, -1, -1 } }, /* index: 1486 */
    1583                 :         { 0x217F, 0x216F, 0x217F, 0x216F, { -1, -1, -1 } }, /* index: 1487 */
    1584                 :         { 0x2183, 0x2183, 0x2184, 0x2183, { -1, -1, -1 } }, /* index: 1488 */
    1585                 :         { 0x2184, 0x2183, 0x2184, 0x2183, { -1, -1, -1 } }, /* index: 1489 */
    1586                 :         { 0x24B6, 0x24B6, 0x24D0, 0x24B6, { -1, -1, -1 } }, /* index: 1490 */
    1587                 :         { 0x24B7, 0x24B7, 0x24D1, 0x24B7, { -1, -1, -1 } }, /* index: 1491 */
    1588                 :         { 0x24B8, 0x24B8, 0x24D2, 0x24B8, { -1, -1, -1 } }, /* index: 1492 */
    1589                 :         { 0x24B9, 0x24B9, 0x24D3, 0x24B9, { -1, -1, -1 } }, /* index: 1493 */
    1590                 :         { 0x24BA, 0x24BA, 0x24D4, 0x24BA, { -1, -1, -1 } }, /* index: 1494 */
    1591                 :         { 0x24BB, 0x24BB, 0x24D5, 0x24BB, { -1, -1, -1 } }, /* index: 1495 */
    1592                 :         { 0x24BC, 0x24BC, 0x24D6, 0x24BC, { -1, -1, -1 } }, /* index: 1496 */
    1593                 :         { 0x24BD, 0x24BD, 0x24D7, 0x24BD, { -1, -1, -1 } }, /* index: 1497 */
    1594                 :         { 0x24BE, 0x24BE, 0x24D8, 0x24BE, { -1, -1, -1 } }, /* index: 1498 */
    1595                 :         { 0x24BF, 0x24BF, 0x24D9, 0x24BF, { -1, -1, -1 } }, /* index: 1499 */
    1596                 :         { 0x24C0, 0x24C0, 0x24DA, 0x24C0, { -1, -1, -1 } }, /* index: 1500 */
    1597                 :         { 0x24C1, 0x24C1, 0x24DB, 0x24C1, { -1, -1, -1 } }, /* index: 1501 */
    1598                 :         { 0x24C2, 0x24C2, 0x24DC, 0x24C2, { -1, -1, -1 } }, /* index: 1502 */
    1599                 :         { 0x24C3, 0x24C3, 0x24DD, 0x24C3, { -1, -1, -1 } }, /* index: 1503 */
    1600                 :         { 0x24C4, 0x24C4, 0x24DE, 0x24C4, { -1, -1, -1 } }, /* index: 1504 */
    1601                 :         { 0x24C5, 0x24C5, 0x24DF, 0x24C5, { -1, -1, -1 } }, /* index: 1505 */
    1602                 :         { 0x24C6, 0x24C6, 0x24E0, 0x24C6, { -1, -1, -1 } }, /* index: 1506 */
    1603                 :         { 0x24C7, 0x24C7, 0x24E1, 0x24C7, { -1, -1, -1 } }, /* index: 1507 */
    1604                 :         { 0x24C8, 0x24C8, 0x24E2, 0x24C8, { -1, -1, -1 } }, /* index: 1508 */
    1605                 :         { 0x24C9, 0x24C9, 0x24E3, 0x24C9, { -1, -1, -1 } }, /* index: 1509 */
    1606                 :         { 0x24CA, 0x24CA, 0x24E4, 0x24CA, { -1, -1, -1 } }, /* index: 1510 */
    1607                 :         { 0x24CB, 0x24CB, 0x24E5, 0x24CB, { -1, -1, -1 } }, /* index: 1511 */
    1608                 :         { 0x24CC, 0x24CC, 0x24E6, 0x24CC, { -1, -1, -1 } }, /* index: 1512 */
    1609                 :         { 0x24CD, 0x24CD, 0x24E7, 0x24CD, { -1, -1, -1 } }, /* index: 1513 */
    1610                 :         { 0x24CE, 0x24CE, 0x24E8, 0x24CE, { -1, -1, -1 } }, /* index: 1514 */
    1611                 :         { 0x24CF, 0x24CF, 0x24E9, 0x24CF, { -1, -1, -1 } }, /* index: 1515 */
    1612                 :         { 0x24D0, 0x24B6, 0x24D0, 0x24B6, { -1, -1, -1 } }, /* index: 1516 */
    1613                 :         { 0x24D1, 0x24B7, 0x24D1, 0x24B7, { -1, -1, -1 } }, /* index: 1517 */
    1614                 :         { 0x24D2, 0x24B8, 0x24D2, 0x24B8, { -1, -1, -1 } }, /* index: 1518 */
    1615                 :         { 0x24D3, 0x24B9, 0x24D3, 0x24B9, { -1, -1, -1 } }, /* index: 1519 */
    1616                 :         { 0x24D4, 0x24BA, 0x24D4, 0x24BA, { -1, -1, -1 } }, /* index: 1520 */
    1617                 :         { 0x24D5, 0x24BB, 0x24D5, 0x24BB, { -1, -1, -1 } }, /* index: 1521 */
    1618                 :         { 0x24D6, 0x24BC, 0x24D6, 0x24BC, { -1, -1, -1 } }, /* index: 1522 */
    1619                 :         { 0x24D7, 0x24BD, 0x24D7, 0x24BD, { -1, -1, -1 } }, /* index: 1523 */
    1620                 :         { 0x24D8, 0x24BE, 0x24D8, 0x24BE, { -1, -1, -1 } }, /* index: 1524 */
    1621                 :         { 0x24D9, 0x24BF, 0x24D9, 0x24BF, { -1, -1, -1 } }, /* index: 1525 */
    1622                 :         { 0x24DA, 0x24C0, 0x24DA, 0x24C0, { -1, -1, -1 } }, /* index: 1526 */
    1623                 :         { 0x24DB, 0x24C1, 0x24DB, 0x24C1, { -1, -1, -1 } }, /* index: 1527 */
    1624                 :         { 0x24DC, 0x24C2, 0x24DC, 0x24C2, { -1, -1, -1 } }, /* index: 1528 */
    1625                 :         { 0x24DD, 0x24C3, 0x24DD, 0x24C3, { -1, -1, -1 } }, /* index: 1529 */
    1626                 :         { 0x24DE, 0x24C4, 0x24DE, 0x24C4, { -1, -1, -1 } }, /* index: 1530 */
    1627                 :         { 0x24DF, 0x24C5, 0x24DF, 0x24C5, { -1, -1, -1 } }, /* index: 1531 */
    1628                 :         { 0x24E0, 0x24C6, 0x24E0, 0x24C6, { -1, -1, -1 } }, /* index: 1532 */
    1629                 :         { 0x24E1, 0x24C7, 0x24E1, 0x24C7, { -1, -1, -1 } }, /* index: 1533 */
    1630                 :         { 0x24E2, 0x24C8, 0x24E2, 0x24C8, { -1, -1, -1 } }, /* index: 1534 */
    1631                 :         { 0x24E3, 0x24C9, 0x24E3, 0x24C9, { -1, -1, -1 } }, /* index: 1535 */
    1632                 :         { 0x24E4, 0x24CA, 0x24E4, 0x24CA, { -1, -1, -1 } }, /* index: 1536 */
    1633                 :         { 0x24E5, 0x24CB, 0x24E5, 0x24CB, { -1, -1, -1 } }, /* index: 1537 */
    1634                 :         { 0x24E6, 0x24CC, 0x24E6, 0x24CC, { -1, -1, -1 } }, /* index: 1538 */
    1635                 :         { 0x24E7, 0x24CD, 0x24E7, 0x24CD, { -1, -1, -1 } }, /* index: 1539 */
    1636                 :         { 0x24E8, 0x24CE, 0x24E8, 0x24CE, { -1, -1, -1 } }, /* index: 1540 */
    1637                 :         { 0x24E9, 0x24CF, 0x24E9, 0x24CF, { -1, -1, -1 } }, /* index: 1541 */
    1638                 :         { 0x2C00, 0x2C00, 0x2C30, 0x2C00, { -1, -1, -1 } }, /* index: 1542 */
    1639                 :         { 0x2C01, 0x2C01, 0x2C31, 0x2C01, { -1, -1, -1 } }, /* index: 1543 */
    1640                 :         { 0x2C02, 0x2C02, 0x2C32, 0x2C02, { -1, -1, -1 } }, /* index: 1544 */
    1641                 :         { 0x2C03, 0x2C03, 0x2C33, 0x2C03, { -1, -1, -1 } }, /* index: 1545 */
    1642                 :         { 0x2C04, 0x2C04, 0x2C34, 0x2C04, { -1, -1, -1 } }, /* index: 1546 */
    1643                 :         { 0x2C05, 0x2C05, 0x2C35, 0x2C05, { -1, -1, -1 } }, /* index: 1547 */
    1644                 :         { 0x2C06, 0x2C06, 0x2C36, 0x2C06, { -1, -1, -1 } }, /* index: 1548 */
    1645                 :         { 0x2C07, 0x2C07, 0x2C37, 0x2C07, { -1, -1, -1 } }, /* index: 1549 */
    1646                 :         { 0x2C08, 0x2C08, 0x2C38, 0x2C08, { -1, -1, -1 } }, /* index: 1550 */
    1647                 :         { 0x2C09, 0x2C09, 0x2C39, 0x2C09, { -1, -1, -1 } }, /* index: 1551 */
    1648                 :         { 0x2C0A, 0x2C0A, 0x2C3A, 0x2C0A, { -1, -1, -1 } }, /* index: 1552 */
    1649                 :         { 0x2C0B, 0x2C0B, 0x2C3B, 0x2C0B, { -1, -1, -1 } }, /* index: 1553 */
    1650                 :         { 0x2C0C, 0x2C0C, 0x2C3C, 0x2C0C, { -1, -1, -1 } }, /* index: 1554 */
    1651                 :         { 0x2C0D, 0x2C0D, 0x2C3D, 0x2C0D, { -1, -1, -1 } }, /* index: 1555 */
    1652                 :         { 0x2C0E, 0x2C0E, 0x2C3E, 0x2C0E, { -1, -1, -1 } }, /* index: 1556 */
    1653                 :         { 0x2C0F, 0x2C0F, 0x2C3F, 0x2C0F, { -1, -1, -1 } }, /* index: 1557 */
    1654                 :         { 0x2C10, 0x2C10, 0x2C40, 0x2C10, { -1, -1, -1 } }, /* index: 1558 */
    1655                 :         { 0x2C11, 0x2C11, 0x2C41, 0x2C11, { -1, -1, -1 } }, /* index: 1559 */
    1656                 :         { 0x2C12, 0x2C12, 0x2C42, 0x2C12, { -1, -1, -1 } }, /* index: 1560 */
    1657                 :         { 0x2C13, 0x2C13, 0x2C43, 0x2C13, { -1, -1, -1 } }, /* index: 1561 */
    1658                 :         { 0x2C14, 0x2C14, 0x2C44, 0x2C14, { -1, -1, -1 } }, /* index: 1562 */
    1659                 :         { 0x2C15, 0x2C15, 0x2C45, 0x2C15, { -1, -1, -1 } }, /* index: 1563 */
    1660                 :         { 0x2C16, 0x2C16, 0x2C46, 0x2C16, { -1, -1, -1 } }, /* index: 1564 */
    1661                 :         { 0x2C17, 0x2C17, 0x2C47, 0x2C17, { -1, -1, -1 } }, /* index: 1565 */
    1662                 :         { 0x2C18, 0x2C18, 0x2C48, 0x2C18, { -1, -1, -1 } }, /* index: 1566 */
    1663                 :         { 0x2C19, 0x2C19, 0x2C49, 0x2C19, { -1, -1, -1 } }, /* index: 1567 */
    1664                 :         { 0x2C1A, 0x2C1A, 0x2C4A, 0x2C1A, { -1, -1, -1 } }, /* index: 1568 */
    1665                 :         { 0x2C1B, 0x2C1B, 0x2C4B, 0x2C1B, { -1, -1, -1 } }, /* index: 1569 */
    1666                 :         { 0x2C1C, 0x2C1C, 0x2C4C, 0x2C1C, { -1, -1, -1 } }, /* index: 1570 */
    1667                 :         { 0x2C1D, 0x2C1D, 0x2C4D, 0x2C1D, { -1, -1, -1 } }, /* index: 1571 */
    1668                 :         { 0x2C1E, 0x2C1E, 0x2C4E, 0x2C1E, { -1, -1, -1 } }, /* index: 1572 */
    1669                 :         { 0x2C1F, 0x2C1F, 0x2C4F, 0x2C1F, { -1, -1, -1 } }, /* index: 1573 */
    1670                 :         { 0x2C20, 0x2C20, 0x2C50, 0x2C20, { -1, -1, -1 } }, /* index: 1574 */
    1671                 :         { 0x2C21, 0x2C21, 0x2C51, 0x2C21, { -1, -1, -1 } }, /* index: 1575 */
    1672                 :         { 0x2C22, 0x2C22, 0x2C52, 0x2C22, { -1, -1, -1 } }, /* index: 1576 */
    1673                 :         { 0x2C23, 0x2C23, 0x2C53, 0x2C23, { -1, -1, -1 } }, /* index: 1577 */
    1674                 :         { 0x2C24, 0x2C24, 0x2C54, 0x2C24, { -1, -1, -1 } }, /* index: 1578 */
    1675                 :         { 0x2C25, 0x2C25, 0x2C55, 0x2C25, { -1, -1, -1 } }, /* index: 1579 */
    1676                 :         { 0x2C26, 0x2C26, 0x2C56, 0x2C26, { -1, -1, -1 } }, /* index: 1580 */
    1677                 :         { 0x2C27, 0x2C27, 0x2C57, 0x2C27, { -1, -1, -1 } }, /* index: 1581 */
    1678                 :         { 0x2C28, 0x2C28, 0x2C58, 0x2C28, { -1, -1, -1 } }, /* index: 1582 */
    1679                 :         { 0x2C29, 0x2C29, 0x2C59, 0x2C29, { -1, -1, -1 } }, /* index: 1583 */
    1680                 :         { 0x2C2A, 0x2C2A, 0x2C5A, 0x2C2A, { -1, -1, -1 } }, /* index: 1584 */
    1681                 :         { 0x2C2B, 0x2C2B, 0x2C5B, 0x2C2B, { -1, -1, -1 } }, /* index: 1585 */
    1682                 :         { 0x2C2C, 0x2C2C, 0x2C5C, 0x2C2C, { -1, -1, -1 } }, /* index: 1586 */
    1683                 :         { 0x2C2D, 0x2C2D, 0x2C5D, 0x2C2D, { -1, -1, -1 } }, /* index: 1587 */
    1684                 :         { 0x2C2E, 0x2C2E, 0x2C5E, 0x2C2E, { -1, -1, -1 } }, /* index: 1588 */
    1685                 :         { 0x2C30, 0x2C00, 0x2C30, 0x2C00, { -1, -1, -1 } }, /* index: 1589 */
    1686                 :         { 0x2C31, 0x2C01, 0x2C31, 0x2C01, { -1, -1, -1 } }, /* index: 1590 */
    1687                 :         { 0x2C32, 0x2C02, 0x2C32, 0x2C02, { -1, -1, -1 } }, /* index: 1591 */
    1688                 :         { 0x2C33, 0x2C03, 0x2C33, 0x2C03, { -1, -1, -1 } }, /* index: 1592 */
    1689                 :         { 0x2C34, 0x2C04, 0x2C34, 0x2C04, { -1, -1, -1 } }, /* index: 1593 */
    1690                 :         { 0x2C35, 0x2C05, 0x2C35, 0x2C05, { -1, -1, -1 } }, /* index: 1594 */
    1691                 :         { 0x2C36, 0x2C06, 0x2C36, 0x2C06, { -1, -1, -1 } }, /* index: 1595 */
    1692                 :         { 0x2C37, 0x2C07, 0x2C37, 0x2C07, { -1, -1, -1 } }, /* index: 1596 */
    1693                 :         { 0x2C38, 0x2C08, 0x2C38, 0x2C08, { -1, -1, -1 } }, /* index: 1597 */
    1694                 :         { 0x2C39, 0x2C09, 0x2C39, 0x2C09, { -1, -1, -1 } }, /* index: 1598 */
    1695                 :         { 0x2C3A, 0x2C0A, 0x2C3A, 0x2C0A, { -1, -1, -1 } }, /* index: 1599 */
    1696                 :         { 0x2C3B, 0x2C0B, 0x2C3B, 0x2C0B, { -1, -1, -1 } }, /* index: 1600 */
    1697                 :         { 0x2C3C, 0x2C0C, 0x2C3C, 0x2C0C, { -1, -1, -1 } }, /* index: 1601 */
    1698                 :         { 0x2C3D, 0x2C0D, 0x2C3D, 0x2C0D, { -1, -1, -1 } }, /* index: 1602 */
    1699                 :         { 0x2C3E, 0x2C0E, 0x2C3E, 0x2C0E, { -1, -1, -1 } }, /* index: 1603 */
    1700                 :         { 0x2C3F, 0x2C0F, 0x2C3F, 0x2C0F, { -1, -1, -1 } }, /* index: 1604 */
    1701                 :         { 0x2C40, 0x2C10, 0x2C40, 0x2C10, { -1, -1, -1 } }, /* index: 1605 */
    1702                 :         { 0x2C41, 0x2C11, 0x2C41, 0x2C11, { -1, -1, -1 } }, /* index: 1606 */
    1703                 :         { 0x2C42, 0x2C12, 0x2C42, 0x2C12, { -1, -1, -1 } }, /* index: 1607 */
    1704                 :         { 0x2C43, 0x2C13, 0x2C43, 0x2C13, { -1, -1, -1 } }, /* index: 1608 */
    1705                 :         { 0x2C44, 0x2C14, 0x2C44, 0x2C14, { -1, -1, -1 } }, /* index: 1609 */
    1706                 :         { 0x2C45, 0x2C15, 0x2C45, 0x2C15, { -1, -1, -1 } }, /* index: 1610 */
    1707                 :         { 0x2C46, 0x2C16, 0x2C46, 0x2C16, { -1, -1, -1 } }, /* index: 1611 */
    1708                 :         { 0x2C47, 0x2C17, 0x2C47, 0x2C17, { -1, -1, -1 } }, /* index: 1612 */
    1709                 :         { 0x2C48, 0x2C18, 0x2C48, 0x2C18, { -1, -1, -1 } }, /* index: 1613 */
    1710                 :         { 0x2C49, 0x2C19, 0x2C49, 0x2C19, { -1, -1, -1 } }, /* index: 1614 */
    1711                 :         { 0x2C4A, 0x2C1A, 0x2C4A, 0x2C1A, { -1, -1, -1 } }, /* index: 1615 */
    1712                 :         { 0x2C4B, 0x2C1B, 0x2C4B, 0x2C1B, { -1, -1, -1 } }, /* index: 1616 */
    1713                 :         { 0x2C4C, 0x2C1C, 0x2C4C, 0x2C1C, { -1, -1, -1 } }, /* index: 1617 */
    1714                 :         { 0x2C4D, 0x2C1D, 0x2C4D, 0x2C1D, { -1, -1, -1 } }, /* index: 1618 */
    1715                 :         { 0x2C4E, 0x2C1E, 0x2C4E, 0x2C1E, { -1, -1, -1 } }, /* index: 1619 */
    1716                 :         { 0x2C4F, 0x2C1F, 0x2C4F, 0x2C1F, { -1, -1, -1 } }, /* index: 1620 */
    1717                 :         { 0x2C50, 0x2C20, 0x2C50, 0x2C20, { -1, -1, -1 } }, /* index: 1621 */
    1718                 :         { 0x2C51, 0x2C21, 0x2C51, 0x2C21, { -1, -1, -1 } }, /* index: 1622 */
    1719                 :         { 0x2C52, 0x2C22, 0x2C52, 0x2C22, { -1, -1, -1 } }, /* index: 1623 */
    1720                 :         { 0x2C53, 0x2C23, 0x2C53, 0x2C23, { -1, -1, -1 } }, /* index: 1624 */
    1721                 :         { 0x2C54, 0x2C24, 0x2C54, 0x2C24, { -1, -1, -1 } }, /* index: 1625 */
    1722                 :         { 0x2C55, 0x2C25, 0x2C55, 0x2C25, { -1, -1, -1 } }, /* index: 1626 */
    1723                 :         { 0x2C56, 0x2C26, 0x2C56, 0x2C26, { -1, -1, -1 } }, /* index: 1627 */
    1724                 :         { 0x2C57, 0x2C27, 0x2C57, 0x2C27, { -1, -1, -1 } }, /* index: 1628 */
    1725                 :         { 0x2C58, 0x2C28, 0x2C58, 0x2C28, { -1, -1, -1 } }, /* index: 1629 */
    1726                 :         { 0x2C59, 0x2C29, 0x2C59, 0x2C29, { -1, -1, -1 } }, /* index: 1630 */
    1727                 :         { 0x2C5A, 0x2C2A, 0x2C5A, 0x2C2A, { -1, -1, -1 } }, /* index: 1631 */
    1728                 :         { 0x2C5B, 0x2C2B, 0x2C5B, 0x2C2B, { -1, -1, -1 } }, /* index: 1632 */
    1729                 :         { 0x2C5C, 0x2C2C, 0x2C5C, 0x2C2C, { -1, -1, -1 } }, /* index: 1633 */
    1730                 :         { 0x2C5D, 0x2C2D, 0x2C5D, 0x2C2D, { -1, -1, -1 } }, /* index: 1634 */
    1731                 :         { 0x2C5E, 0x2C2E, 0x2C5E, 0x2C2E, { -1, -1, -1 } }, /* index: 1635 */
    1732                 :         { 0x2C60, 0x2C60, 0x2C61, 0x2C60, { -1, -1, -1 } }, /* index: 1636 */
    1733                 :         { 0x2C61, 0x2C60, 0x2C61, 0x2C60, { -1, -1, -1 } }, /* index: 1637 */
    1734                 :         { 0x2C62, 0x2C62, 0x026B, 0x2C62, { -1, -1, -1 } }, /* index: 1638 */
    1735                 :         { 0x2C63, 0x2C63, 0x1D7D, 0x2C63, { -1, -1, -1 } }, /* index: 1639 */
    1736                 :         { 0x2C64, 0x2C64, 0x027D, 0x2C64, { -1, -1, -1 } }, /* index: 1640 */
    1737                 :         { 0x2C65, 0x023A, 0x2C65, 0x023A, { -1, -1, -1 } }, /* index: 1641 */
    1738                 :         { 0x2C66, 0x023E, 0x2C66, 0x023E, { -1, -1, -1 } }, /* index: 1642 */
    1739                 :         { 0x2C67, 0x2C67, 0x2C68, 0x2C67, { -1, -1, -1 } }, /* index: 1643 */
    1740                 :         { 0x2C68, 0x2C67, 0x2C68, 0x2C67, { -1, -1, -1 } }, /* index: 1644 */
    1741                 :         { 0x2C69, 0x2C69, 0x2C6A, 0x2C69, { -1, -1, -1 } }, /* index: 1645 */
    1742                 :         { 0x2C6A, 0x2C69, 0x2C6A, 0x2C69, { -1, -1, -1 } }, /* index: 1646 */
    1743                 :         { 0x2C6B, 0x2C6B, 0x2C6C, 0x2C6B, { -1, -1, -1 } }, /* index: 1647 */
    1744                 :         { 0x2C6C, 0x2C6B, 0x2C6C, 0x2C6B, { -1, -1, -1 } }, /* index: 1648 */
    1745                 :         { 0x2C6D, 0x2C6D, 0x0251, 0x2C6D, { -1, -1, -1 } }, /* index: 1649 */
    1746                 :         { 0x2C6E, 0x2C6E, 0x0271, 0x2C6E, { -1, -1, -1 } }, /* index: 1650 */
    1747                 :         { 0x2C6F, 0x2C6F, 0x0250, 0x2C6F, { -1, -1, -1 } }, /* index: 1651 */
    1748                 :         { 0x2C72, 0x2C72, 0x2C73, 0x2C72, { -1, -1, -1 } }, /* index: 1652 */
    1749                 :         { 0x2C73, 0x2C72, 0x2C73, 0x2C72, { -1, -1, -1 } }, /* index: 1653 */
    1750                 :         { 0x2C75, 0x2C75, 0x2C76, 0x2C75, { -1, -1, -1 } }, /* index: 1654 */
    1751                 :         { 0x2C76, 0x2C75, 0x2C76, 0x2C75, { -1, -1, -1 } }, /* index: 1655 */
    1752                 :         { 0x2C80, 0x2C80, 0x2C81, 0x2C80, { -1, -1, -1 } }, /* index: 1656 */
    1753                 :         { 0x2C81, 0x2C80, 0x2C81, 0x2C80, { -1, -1, -1 } }, /* index: 1657 */
    1754                 :         { 0x2C82, 0x2C82, 0x2C83, 0x2C82, { -1, -1, -1 } }, /* index: 1658 */
    1755                 :         { 0x2C83, 0x2C82, 0x2C83, 0x2C82, { -1, -1, -1 } }, /* index: 1659 */
    1756                 :         { 0x2C84, 0x2C84, 0x2C85, 0x2C84, { -1, -1, -1 } }, /* index: 1660 */
    1757                 :         { 0x2C85, 0x2C84, 0x2C85, 0x2C84, { -1, -1, -1 } }, /* index: 1661 */
    1758                 :         { 0x2C86, 0x2C86, 0x2C87, 0x2C86, { -1, -1, -1 } }, /* index: 1662 */
    1759                 :         { 0x2C87, 0x2C86, 0x2C87, 0x2C86, { -1, -1, -1 } }, /* index: 1663 */
    1760                 :         { 0x2C88, 0x2C88, 0x2C89, 0x2C88, { -1, -1, -1 } }, /* index: 1664 */
    1761                 :         { 0x2C89, 0x2C88, 0x2C89, 0x2C88, { -1, -1, -1 } }, /* index: 1665 */
    1762                 :         { 0x2C8A, 0x2C8A, 0x2C8B, 0x2C8A, { -1, -1, -1 } }, /* index: 1666 */
    1763                 :         { 0x2C8B, 0x2C8A, 0x2C8B, 0x2C8A, { -1, -1, -1 } }, /* index: 1667 */
    1764                 :         { 0x2C8C, 0x2C8C, 0x2C8D, 0x2C8C, { -1, -1, -1 } }, /* index: 1668 */
    1765                 :         { 0x2C8D, 0x2C8C, 0x2C8D, 0x2C8C, { -1, -1, -1 } }, /* index: 1669 */
    1766                 :         { 0x2C8E, 0x2C8E, 0x2C8F, 0x2C8E, { -1, -1, -1 } }, /* index: 1670 */
    1767                 :         { 0x2C8F, 0x2C8E, 0x2C8F, 0x2C8E, { -1, -1, -1 } }, /* index: 1671 */
    1768                 :         { 0x2C90, 0x2C90, 0x2C91, 0x2C90, { -1, -1, -1 } }, /* index: 1672 */
    1769                 :         { 0x2C91, 0x2C90, 0x2C91, 0x2C90, { -1, -1, -1 } }, /* index: 1673 */
    1770                 :         { 0x2C92, 0x2C92, 0x2C93, 0x2C92, { -1, -1, -1 } }, /* index: 1674 */
    1771                 :         { 0x2C93, 0x2C92, 0x2C93, 0x2C92, { -1, -1, -1 } }, /* index: 1675 */
    1772                 :         { 0x2C94, 0x2C94, 0x2C95, 0x2C94, { -1, -1, -1 } }, /* index: 1676 */
    1773                 :         { 0x2C95, 0x2C94, 0x2C95, 0x2C94, { -1, -1, -1 } }, /* index: 1677 */
    1774                 :         { 0x2C96, 0x2C96, 0x2C97, 0x2C96, { -1, -1, -1 } }, /* index: 1678 */
    1775                 :         { 0x2C97, 0x2C96, 0x2C97, 0x2C96, { -1, -1, -1 } }, /* index: 1679 */
    1776                 :         { 0x2C98, 0x2C98, 0x2C99, 0x2C98, { -1, -1, -1 } }, /* index: 1680 */
    1777                 :         { 0x2C99, 0x2C98, 0x2C99, 0x2C98, { -1, -1, -1 } }, /* index: 1681 */
    1778                 :         { 0x2C9A, 0x2C9A, 0x2C9B, 0x2C9A, { -1, -1, -1 } }, /* index: 1682 */
    1779                 :         { 0x2C9B, 0x2C9A, 0x2C9B, 0x2C9A, { -1, -1, -1 } }, /* index: 1683 */
    1780                 :         { 0x2C9C, 0x2C9C, 0x2C9D, 0x2C9C, { -1, -1, -1 } }, /* index: 1684 */
    1781                 :         { 0x2C9D, 0x2C9C, 0x2C9D, 0x2C9C, { -1, -1, -1 } }, /* index: 1685 */
    1782                 :         { 0x2C9E, 0x2C9E, 0x2C9F, 0x2C9E, { -1, -1, -1 } }, /* index: 1686 */
    1783                 :         { 0x2C9F, 0x2C9E, 0x2C9F, 0x2C9E, { -1, -1, -1 } }, /* index: 1687 */
    1784                 :         { 0x2CA0, 0x2CA0, 0x2CA1, 0x2CA0, { -1, -1, -1 } }, /* index: 1688 */
    1785                 :         { 0x2CA1, 0x2CA0, 0x2CA1, 0x2CA0, { -1, -1, -1 } }, /* index: 1689 */
    1786                 :         { 0x2CA2, 0x2CA2, 0x2CA3, 0x2CA2, { -1, -1, -1 } }, /* index: 1690 */
    1787                 :         { 0x2CA3, 0x2CA2, 0x2CA3, 0x2CA2, { -1, -1, -1 } }, /* index: 1691 */
    1788                 :         { 0x2CA4, 0x2CA4, 0x2CA5, 0x2CA4, { -1, -1, -1 } }, /* index: 1692 */
    1789                 :         { 0x2CA5, 0x2CA4, 0x2CA5, 0x2CA4, { -1, -1, -1 } }, /* index: 1693 */
    1790                 :         { 0x2CA6, 0x2CA6, 0x2CA7, 0x2CA6, { -1, -1, -1 } }, /* index: 1694 */
    1791                 :         { 0x2CA7, 0x2CA6, 0x2CA7, 0x2CA6, { -1, -1, -1 } }, /* index: 1695 */
    1792                 :         { 0x2CA8, 0x2CA8, 0x2CA9, 0x2CA8, { -1, -1, -1 } }, /* index: 1696 */
    1793                 :         { 0x2CA9, 0x2CA8, 0x2CA9, 0x2CA8, { -1, -1, -1 } }, /* index: 1697 */
    1794                 :         { 0x2CAA, 0x2CAA, 0x2CAB, 0x2CAA, { -1, -1, -1 } }, /* index: 1698 */
    1795                 :         { 0x2CAB, 0x2CAA, 0x2CAB, 0x2CAA, { -1, -1, -1 } }, /* index: 1699 */
    1796                 :         { 0x2CAC, 0x2CAC, 0x2CAD, 0x2CAC, { -1, -1, -1 } }, /* index: 1700 */
    1797                 :         { 0x2CAD, 0x2CAC, 0x2CAD, 0x2CAC, { -1, -1, -1 } }, /* index: 1701 */
    1798                 :         { 0x2CAE, 0x2CAE, 0x2CAF, 0x2CAE, { -1, -1, -1 } }, /* index: 1702 */
    1799                 :         { 0x2CAF, 0x2CAE, 0x2CAF, 0x2CAE, { -1, -1, -1 } }, /* index: 1703 */
    1800                 :         { 0x2CB0, 0x2CB0, 0x2CB1, 0x2CB0, { -1, -1, -1 } }, /* index: 1704 */
    1801                 :         { 0x2CB1, 0x2CB0, 0x2CB1, 0x2CB0, { -1, -1, -1 } }, /* index: 1705 */
    1802                 :         { 0x2CB2, 0x2CB2, 0x2CB3, 0x2CB2, { -1, -1, -1 } }, /* index: 1706 */
    1803                 :         { 0x2CB3, 0x2CB2, 0x2CB3, 0x2CB2, { -1, -1, -1 } }, /* index: 1707 */
    1804                 :         { 0x2CB4, 0x2CB4, 0x2CB5, 0x2CB4, { -1, -1, -1 } }, /* index: 1708 */
    1805                 :         { 0x2CB5, 0x2CB4, 0x2CB5, 0x2CB4, { -1, -1, -1 } }, /* index: 1709 */
    1806                 :         { 0x2CB6, 0x2CB6, 0x2CB7, 0x2CB6, { -1, -1, -1 } }, /* index: 1710 */
    1807                 :         { 0x2CB7, 0x2CB6, 0x2CB7, 0x2CB6, { -1, -1, -1 } }, /* index: 1711 */
    1808                 :         { 0x2CB8, 0x2CB8, 0x2CB9, 0x2CB8, { -1, -1, -1 } }, /* index: 1712 */
    1809                 :         { 0x2CB9, 0x2CB8, 0x2CB9, 0x2CB8, { -1, -1, -1 } }, /* index: 1713 */
    1810                 :         { 0x2CBA, 0x2CBA, 0x2CBB, 0x2CBA, { -1, -1, -1 } }, /* index: 1714 */
    1811                 :         { 0x2CBB, 0x2CBA, 0x2CBB, 0x2CBA, { -1, -1, -1 } }, /* index: 1715 */
    1812                 :         { 0x2CBC, 0x2CBC, 0x2CBD, 0x2CBC, { -1, -1, -1 } }, /* index: 1716 */
    1813                 :         { 0x2CBD, 0x2CBC, 0x2CBD, 0x2CBC, { -1, -1, -1 } }, /* index: 1717 */
    1814                 :         { 0x2CBE, 0x2CBE, 0x2CBF, 0x2CBE, { -1, -1, -1 } }, /* index: 1718 */
    1815                 :         { 0x2CBF, 0x2CBE, 0x2CBF, 0x2CBE, { -1, -1, -1 } }, /* index: 1719 */
    1816                 :         { 0x2CC0, 0x2CC0, 0x2CC1, 0x2CC0, { -1, -1, -1 } }, /* index: 1720 */
    1817                 :         { 0x2CC1, 0x2CC0, 0x2CC1, 0x2CC0, { -1, -1, -1 } }, /* index: 1721 */
    1818                 :         { 0x2CC2, 0x2CC2, 0x2CC3, 0x2CC2, { -1, -1, -1 } }, /* index: 1722 */
    1819                 :         { 0x2CC3, 0x2CC2, 0x2CC3, 0x2CC2, { -1, -1, -1 } }, /* index: 1723 */
    1820                 :         { 0x2CC4, 0x2CC4, 0x2CC5, 0x2CC4, { -1, -1, -1 } }, /* index: 1724 */
    1821                 :         { 0x2CC5, 0x2CC4, 0x2CC5, 0x2CC4, { -1, -1, -1 } }, /* index: 1725 */
    1822                 :         { 0x2CC6, 0x2CC6, 0x2CC7, 0x2CC6, { -1, -1, -1 } }, /* index: 1726 */
    1823                 :         { 0x2CC7, 0x2CC6, 0x2CC7, 0x2CC6, { -1, -1, -1 } }, /* index: 1727 */
    1824                 :         { 0x2CC8, 0x2CC8, 0x2CC9, 0x2CC8, { -1, -1, -1 } }, /* index: 1728 */
    1825                 :         { 0x2CC9, 0x2CC8, 0x2CC9, 0x2CC8, { -1, -1, -1 } }, /* index: 1729 */
    1826                 :         { 0x2CCA, 0x2CCA, 0x2CCB, 0x2CCA, { -1, -1, -1 } }, /* index: 1730 */
    1827                 :         { 0x2CCB, 0x2CCA, 0x2CCB, 0x2CCA, { -1, -1, -1 } }, /* index: 1731 */
    1828                 :         { 0x2CCC, 0x2CCC, 0x2CCD, 0x2CCC, { -1, -1, -1 } }, /* index: 1732 */
    1829                 :         { 0x2CCD, 0x2CCC, 0x2CCD, 0x2CCC, { -1, -1, -1 } }, /* index: 1733 */
    1830                 :         { 0x2CCE, 0x2CCE, 0x2CCF, 0x2CCE, { -1, -1, -1 } }, /* index: 1734 */
    1831                 :         { 0x2CCF, 0x2CCE, 0x2CCF, 0x2CCE, { -1, -1, -1 } }, /* index: 1735 */
    1832                 :         { 0x2CD0, 0x2CD0, 0x2CD1, 0x2CD0, { -1, -1, -1 } }, /* index: 1736 */
    1833                 :         { 0x2CD1, 0x2CD0, 0x2CD1, 0x2CD0, { -1, -1, -1 } }, /* index: 1737 */
    1834                 :         { 0x2CD2, 0x2CD2, 0x2CD3, 0x2CD2, { -1, -1, -1 } }, /* index: 1738 */
    1835                 :         { 0x2CD3, 0x2CD2, 0x2CD3, 0x2CD2, { -1, -1, -1 } }, /* index: 1739 */
    1836                 :         { 0x2CD4, 0x2CD4, 0x2CD5, 0x2CD4, { -1, -1, -1 } }, /* index: 1740 */
    1837                 :         { 0x2CD5, 0x2CD4, 0x2CD5, 0x2CD4, { -1, -1, -1 } }, /* index: 1741 */
    1838                 :         { 0x2CD6, 0x2CD6, 0x2CD7, 0x2CD6, { -1, -1, -1 } }, /* index: 1742 */
    1839                 :         { 0x2CD7, 0x2CD6, 0x2CD7, 0x2CD6, { -1, -1, -1 } }, /* index: 1743 */
    1840                 :         { 0x2CD8, 0x2CD8, 0x2CD9, 0x2CD8, { -1, -1, -1 } }, /* index: 1744 */
    1841                 :         { 0x2CD9, 0x2CD8, 0x2CD9, 0x2CD8, { -1, -1, -1 } }, /* index: 1745 */
    1842                 :         { 0x2CDA, 0x2CDA, 0x2CDB, 0x2CDA, { -1, -1, -1 } }, /* index: 1746 */
    1843                 :         { 0x2CDB, 0x2CDA, 0x2CDB, 0x2CDA, { -1, -1, -1 } }, /* index: 1747 */
    1844                 :         { 0x2CDC, 0x2CDC, 0x2CDD, 0x2CDC, { -1, -1, -1 } }, /* index: 1748 */
    1845                 :         { 0x2CDD, 0x2CDC, 0x2CDD, 0x2CDC, { -1, -1, -1 } }, /* index: 1749 */
    1846                 :         { 0x2CDE, 0x2CDE, 0x2CDF, 0x2CDE, { -1, -1, -1 } }, /* index: 1750 */
    1847                 :         { 0x2CDF, 0x2CDE, 0x2CDF, 0x2CDE, { -1, -1, -1 } }, /* index: 1751 */
    1848                 :         { 0x2CE0, 0x2CE0, 0x2CE1, 0x2CE0, { -1, -1, -1 } }, /* index: 1752 */
    1849                 :         { 0x2CE1, 0x2CE0, 0x2CE1, 0x2CE0, { -1, -1, -1 } }, /* index: 1753 */
    1850                 :         { 0x2CE2, 0x2CE2, 0x2CE3, 0x2CE2, { -1, -1, -1 } }, /* index: 1754 */
    1851                 :         { 0x2CE3, 0x2CE2, 0x2CE3, 0x2CE2, { -1, -1, -1 } }, /* index: 1755 */
    1852                 :         { 0x2D00, 0x10A0, 0x2D00, 0x10A0, { -1, -1, -1 } }, /* index: 1756 */
    1853                 :         { 0x2D01, 0x10A1, 0x2D01, 0x10A1, { -1, -1, -1 } }, /* index: 1757 */
    1854                 :         { 0x2D02, 0x10A2, 0x2D02, 0x10A2, { -1, -1, -1 } }, /* index: 1758 */
    1855                 :         { 0x2D03, 0x10A3, 0x2D03, 0x10A3, { -1, -1, -1 } }, /* index: 1759 */
    1856                 :         { 0x2D04, 0x10A4, 0x2D04, 0x10A4, { -1, -1, -1 } }, /* index: 1760 */
    1857                 :         { 0x2D05, 0x10A5, 0x2D05, 0x10A5, { -1, -1, -1 } }, /* index: 1761 */
    1858                 :         { 0x2D06, 0x10A6, 0x2D06, 0x10A6, { -1, -1, -1 } }, /* index: 1762 */
    1859                 :         { 0x2D07, 0x10A7, 0x2D07, 0x10A7, { -1, -1, -1 } }, /* index: 1763 */
    1860                 :         { 0x2D08, 0x10A8, 0x2D08, 0x10A8, { -1, -1, -1 } }, /* index: 1764 */
    1861                 :         { 0x2D09, 0x10A9, 0x2D09, 0x10A9, { -1, -1, -1 } }, /* index: 1765 */
    1862                 :         { 0x2D0A, 0x10AA, 0x2D0A, 0x10AA, { -1, -1, -1 } }, /* index: 1766 */
    1863                 :         { 0x2D0B, 0x10AB, 0x2D0B, 0x10AB, { -1, -1, -1 } }, /* index: 1767 */
    1864                 :         { 0x2D0C, 0x10AC, 0x2D0C, 0x10AC, { -1, -1, -1 } }, /* index: 1768 */
    1865                 :         { 0x2D0D, 0x10AD, 0x2D0D, 0x10AD, { -1, -1, -1 } }, /* index: 1769 */
    1866                 :         { 0x2D0E, 0x10AE, 0x2D0E, 0x10AE, { -1, -1, -1 } }, /* index: 1770 */
    1867                 :         { 0x2D0F, 0x10AF, 0x2D0F, 0x10AF, { -1, -1, -1 } }, /* index: 1771 */
    1868                 :         { 0x2D10, 0x10B0, 0x2D10, 0x10B0, { -1, -1, -1 } }, /* index: 1772 */
    1869                 :         { 0x2D11, 0x10B1, 0x2D11, 0x10B1, { -1, -1, -1 } }, /* index: 1773 */
    1870                 :         { 0x2D12, 0x10B2, 0x2D12, 0x10B2, { -1, -1, -1 } }, /* index: 1774 */
    1871                 :         { 0x2D13, 0x10B3, 0x2D13, 0x10B3, { -1, -1, -1 } }, /* index: 1775 */
    1872                 :         { 0x2D14, 0x10B4, 0x2D14, 0x10B4, { -1, -1, -1 } }, /* index: 1776 */
    1873                 :         { 0x2D15, 0x10B5, 0x2D15, 0x10B5, { -1, -1, -1 } }, /* index: 1777 */
    1874                 :         { 0x2D16, 0x10B6, 0x2D16, 0x10B6, { -1, -1, -1 } }, /* index: 1778 */
    1875                 :         { 0x2D17, 0x10B7, 0x2D17, 0x10B7, { -1, -1, -1 } }, /* index: 1779 */
    1876                 :         { 0x2D18, 0x10B8, 0x2D18, 0x10B8, { -1, -1, -1 } }, /* index: 1780 */
    1877                 :         { 0x2D19, 0x10B9, 0x2D19, 0x10B9, { -1, -1, -1 } }, /* index: 1781 */
    1878                 :         { 0x2D1A, 0x10BA, 0x2D1A, 0x10BA, { -1, -1, -1 } }, /* index: 1782 */
    1879                 :         { 0x2D1B, 0x10BB, 0x2D1B, 0x10BB, { -1, -1, -1 } }, /* index: 1783 */
    1880                 :         { 0x2D1C, 0x10BC, 0x2D1C, 0x10BC, { -1, -1, -1 } }, /* index: 1784 */
    1881                 :         { 0x2D1D, 0x10BD, 0x2D1D, 0x10BD, { -1, -1, -1 } }, /* index: 1785 */
    1882                 :         { 0x2D1E, 0x10BE, 0x2D1E, 0x10BE, { -1, -1, -1 } }, /* index: 1786 */
    1883                 :         { 0x2D1F, 0x10BF, 0x2D1F, 0x10BF, { -1, -1, -1 } }, /* index: 1787 */
    1884                 :         { 0x2D20, 0x10C0, 0x2D20, 0x10C0, { -1, -1, -1 } }, /* index: 1788 */
    1885                 :         { 0x2D21, 0x10C1, 0x2D21, 0x10C1, { -1, -1, -1 } }, /* index: 1789 */
    1886                 :         { 0x2D22, 0x10C2, 0x2D22, 0x10C2, { -1, -1, -1 } }, /* index: 1790 */
    1887                 :         { 0x2D23, 0x10C3, 0x2D23, 0x10C3, { -1, -1, -1 } }, /* index: 1791 */
    1888                 :         { 0x2D24, 0x10C4, 0x2D24, 0x10C4, { -1, -1, -1 } }, /* index: 1792 */
    1889                 :         { 0x2D25, 0x10C5, 0x2D25, 0x10C5, { -1, -1, -1 } }, /* index: 1793 */
    1890                 :         { 0xA640, 0xA640, 0xA641, 0xA640, { -1, -1, -1 } }, /* index: 1794 */
    1891                 :         { 0xA641, 0xA640, 0xA641, 0xA640, { -1, -1, -1 } }, /* index: 1795 */
    1892                 :         { 0xA642, 0xA642, 0xA643, 0xA642, { -1, -1, -1 } }, /* index: 1796 */
    1893                 :         { 0xA643, 0xA642, 0xA643, 0xA642, { -1, -1, -1 } }, /* index: 1797 */
    1894                 :         { 0xA644, 0xA644, 0xA645, 0xA644, { -1, -1, -1 } }, /* index: 1798 */
    1895                 :         { 0xA645, 0xA644, 0xA645, 0xA644, { -1, -1, -1 } }, /* index: 1799 */
    1896                 :         { 0xA646, 0xA646, 0xA647, 0xA646, { -1, -1, -1 } }, /* index: 1800 */
    1897                 :         { 0xA647, 0xA646, 0xA647, 0xA646, { -1, -1, -1 } }, /* index: 1801 */
    1898                 :         { 0xA648, 0xA648, 0xA649, 0xA648, { -1, -1, -1 } }, /* index: 1802 */
    1899                 :         { 0xA649, 0xA648, 0xA649, 0xA648, { -1, -1, -1 } }, /* index: 1803 */
    1900                 :         { 0xA64A, 0xA64A, 0xA64B, 0xA64A, { -1, -1, -1 } }, /* index: 1804 */
    1901                 :         { 0xA64B, 0xA64A, 0xA64B, 0xA64A, { -1, -1, -1 } }, /* index: 1805 */
    1902                 :         { 0xA64C, 0xA64C, 0xA64D, 0xA64C, { -1, -1, -1 } }, /* index: 1806 */
    1903                 :         { 0xA64D, 0xA64C, 0xA64D, 0xA64C, { -1, -1, -1 } }, /* index: 1807 */
    1904                 :         { 0xA64E, 0xA64E, 0xA64F, 0xA64E, { -1, -1, -1 } }, /* index: 1808 */
    1905                 :         { 0xA64F, 0xA64E, 0xA64F, 0xA64E, { -1, -1, -1 } }, /* index: 1809 */
    1906                 :         { 0xA650, 0xA650, 0xA651, 0xA650, { -1, -1, -1 } }, /* index: 1810 */
    1907                 :         { 0xA651, 0xA650, 0xA651, 0xA650, { -1, -1, -1 } }, /* index: 1811 */
    1908                 :         { 0xA652, 0xA652, 0xA653, 0xA652, { -1, -1, -1 } }, /* index: 1812 */
    1909                 :         { 0xA653, 0xA652, 0xA653, 0xA652, { -1, -1, -1 } }, /* index: 1813 */
    1910                 :         { 0xA654, 0xA654, 0xA655, 0xA654, { -1, -1, -1 } }, /* index: 1814 */
    1911                 :         { 0xA655, 0xA654, 0xA655, 0xA654, { -1, -1, -1 } }, /* index: 1815 */
    1912                 :         { 0xA656, 0xA656, 0xA657, 0xA656, { -1, -1, -1 } }, /* index: 1816 */
    1913                 :         { 0xA657, 0xA656, 0xA657, 0xA656, { -1, -1, -1 } }, /* index: 1817 */
    1914                 :         { 0xA658, 0xA658, 0xA659, 0xA658, { -1, -1, -1 } }, /* index: 1818 */
    1915                 :         { 0xA659, 0xA658, 0xA659, 0xA658, { -1, -1, -1 } }, /* index: 1819 */
    1916                 :         { 0xA65A, 0xA65A, 0xA65B, 0xA65A, { -1, -1, -1 } }, /* index: 1820 */
    1917                 :         { 0xA65B, 0xA65A, 0xA65B, 0xA65A, { -1, -1, -1 } }, /* index: 1821 */
    1918                 :         { 0xA65C, 0xA65C, 0xA65D, 0xA65C, { -1, -1, -1 } }, /* index: 1822 */
    1919                 :         { 0xA65D, 0xA65C, 0xA65D, 0xA65C, { -1, -1, -1 } }, /* index: 1823 */
    1920                 :         { 0xA65E, 0xA65E, 0xA65F, 0xA65E, { -1, -1, -1 } }, /* index: 1824 */
    1921                 :         { 0xA65F, 0xA65E, 0xA65F, 0xA65E, { -1, -1, -1 } }, /* index: 1825 */
    1922                 :         { 0xA662, 0xA662, 0xA663, 0xA662, { -1, -1, -1 } }, /* index: 1826 */
    1923                 :         { 0xA663, 0xA662, 0xA663, 0xA662, { -1, -1, -1 } }, /* index: 1827 */
    1924                 :         { 0xA664, 0xA664, 0xA665, 0xA664, { -1, -1, -1 } }, /* index: 1828 */
    1925                 :         { 0xA665, 0xA664, 0xA665, 0xA664, { -1, -1, -1 } }, /* index: 1829 */
    1926                 :         { 0xA666, 0xA666, 0xA667, 0xA666, { -1, -1, -1 } }, /* index: 1830 */
    1927                 :         { 0xA667, 0xA666, 0xA667, 0xA666, { -1, -1, -1 } }, /* index: 1831 */
    1928                 :         { 0xA668, 0xA668, 0xA669, 0xA668, { -1, -1, -1 } }, /* index: 1832 */
    1929                 :         { 0xA669, 0xA668, 0xA669, 0xA668, { -1, -1, -1 } }, /* index: 1833 */
    1930                 :         { 0xA66A, 0xA66A, 0xA66B, 0xA66A, { -1, -1, -1 } }, /* index: 1834 */
    1931                 :         { 0xA66B, 0xA66A, 0xA66B, 0xA66A, { -1, -1, -1 } }, /* index: 1835 */
    1932                 :         { 0xA66C, 0xA66C, 0xA66D, 0xA66C, { -1, -1, -1 } }, /* index: 1836 */
    1933                 :         { 0xA66D, 0xA66C, 0xA66D, 0xA66C, { -1, -1, -1 } }, /* index: 1837 */
    1934                 :         { 0xA680, 0xA680, 0xA681, 0xA680, { -1, -1, -1 } }, /* index: 1838 */
    1935                 :         { 0xA681, 0xA680, 0xA681, 0xA680, { -1, -1, -1 } }, /* index: 1839 */
    1936                 :         { 0xA682, 0xA682, 0xA683, 0xA682, { -1, -1, -1 } }, /* index: 1840 */
    1937                 :         { 0xA683, 0xA682, 0xA683, 0xA682, { -1, -1, -1 } }, /* index: 1841 */
    1938                 :         { 0xA684, 0xA684, 0xA685, 0xA684, { -1, -1, -1 } }, /* index: 1842 */
    1939                 :         { 0xA685, 0xA684, 0xA685, 0xA684, { -1, -1, -1 } }, /* index: 1843 */
    1940                 :         { 0xA686, 0xA686, 0xA687, 0xA686, { -1, -1, -1 } }, /* index: 1844 */
    1941                 :         { 0xA687, 0xA686, 0xA687, 0xA686, { -1, -1, -1 } }, /* index: 1845 */
    1942                 :         { 0xA688, 0xA688, 0xA689, 0xA688, { -1, -1, -1 } }, /* index: 1846 */
    1943                 :         { 0xA689, 0xA688, 0xA689, 0xA688, { -1, -1, -1 } }, /* index: 1847 */
    1944                 :         { 0xA68A, 0xA68A, 0xA68B, 0xA68A, { -1, -1, -1 } }, /* index: 1848 */
    1945                 :         { 0xA68B, 0xA68A, 0xA68B, 0xA68A, { -1, -1, -1 } }, /* index: 1849 */
    1946                 :         { 0xA68C, 0xA68C, 0xA68D, 0xA68C, { -1, -1, -1 } }, /* index: 1850 */
    1947                 :         { 0xA68D, 0xA68C, 0xA68D, 0xA68C, { -1, -1, -1 } }, /* index: 1851 */
    1948                 :         { 0xA68E, 0xA68E, 0xA68F, 0xA68E, { -1, -1, -1 } }, /* index: 1852 */
    1949                 :         { 0xA68F, 0xA68E, 0xA68F, 0xA68E, { -1, -1, -1 } }, /* index: 1853 */
    1950                 :         { 0xA690, 0xA690, 0xA691, 0xA690, { -1, -1, -1 } }, /* index: 1854 */
    1951                 :         { 0xA691, 0xA690, 0xA691, 0xA690, { -1, -1, -1 } }, /* index: 1855 */
    1952                 :         { 0xA692, 0xA692, 0xA693, 0xA692, { -1, -1, -1 } }, /* index: 1856 */
    1953                 :         { 0xA693, 0xA692, 0xA693, 0xA692, { -1, -1, -1 } }, /* index: 1857 */
    1954                 :         { 0xA694, 0xA694, 0xA695, 0xA694, { -1, -1, -1 } }, /* index: 1858 */
    1955                 :         { 0xA695, 0xA694, 0xA695, 0xA694, { -1, -1, -1 } }, /* index: 1859 */
    1956                 :         { 0xA696, 0xA696, 0xA697, 0xA696, { -1, -1, -1 } }, /* index: 1860 */
    1957                 :         { 0xA697, 0xA696, 0xA697, 0xA696, { -1, -1, -1 } }, /* index: 1861 */
    1958                 :         { 0xA722, 0xA722, 0xA723, 0xA722, { -1, -1, -1 } }, /* index: 1862 */
    1959                 :         { 0xA723, 0xA722, 0xA723, 0xA722, { -1, -1, -1 } }, /* index: 1863 */
    1960                 :         { 0xA724, 0xA724, 0xA725, 0xA724, { -1, -1, -1 } }, /* index: 1864 */
    1961                 :         { 0xA725, 0xA724, 0xA725, 0xA724, { -1, -1, -1 } }, /* index: 1865 */
    1962                 :         { 0xA726, 0xA726, 0xA727, 0xA726, { -1, -1, -1 } }, /* index: 1866 */
    1963                 :         { 0xA727, 0xA726, 0xA727, 0xA726, { -1, -1, -1 } }, /* index: 1867 */
    1964                 :         { 0xA728, 0xA728, 0xA729, 0xA728, { -1, -1, -1 } }, /* index: 1868 */
    1965                 :         { 0xA729, 0xA728, 0xA729, 0xA728, { -1, -1, -1 } }, /* index: 1869 */
    1966                 :         { 0xA72A, 0xA72A, 0xA72B, 0xA72A, { -1, -1, -1 } }, /* index: 1870 */
    1967                 :         { 0xA72B, 0xA72A, 0xA72B, 0xA72A, { -1, -1, -1 } }, /* index: 1871 */
    1968                 :         { 0xA72C, 0xA72C, 0xA72D, 0xA72C, { -1, -1, -1 } }, /* index: 1872 */
    1969                 :         { 0xA72D, 0xA72C, 0xA72D, 0xA72C, { -1, -1, -1 } }, /* index: 1873 */
    1970                 :         { 0xA72E, 0xA72E, 0xA72F, 0xA72E, { -1, -1, -1 } }, /* index: 1874 */
    1971                 :         { 0xA72F, 0xA72E, 0xA72F, 0xA72E, { -1, -1, -1 } }, /* index: 1875 */
    1972                 :         { 0xA732, 0xA732, 0xA733, 0xA732, { -1, -1, -1 } }, /* index: 1876 */
    1973                 :         { 0xA733, 0xA732, 0xA733, 0xA732, { -1, -1, -1 } }, /* index: 1877 */
    1974                 :         { 0xA734, 0xA734, 0xA735, 0xA734, { -1, -1, -1 } }, /* index: 1878 */
    1975                 :         { 0xA735, 0xA734, 0xA735, 0xA734, { -1, -1, -1 } }, /* index: 1879 */
    1976                 :         { 0xA736, 0xA736, 0xA737, 0xA736, { -1, -1, -1 } }, /* index: 1880 */
    1977                 :         { 0xA737, 0xA736, 0xA737, 0xA736, { -1, -1, -1 } }, /* index: 1881 */
    1978                 :         { 0xA738, 0xA738, 0xA739, 0xA738, { -1, -1, -1 } }, /* index: 1882 */
    1979                 :         { 0xA739, 0xA738, 0xA739, 0xA738, { -1, -1, -1 } }, /* index: 1883 */
    1980                 :         { 0xA73A, 0xA73A, 0xA73B, 0xA73A, { -1, -1, -1 } }, /* index: 1884 */
    1981                 :         { 0xA73B, 0xA73A, 0xA73B, 0xA73A, { -1, -1, -1 } }, /* index: 1885 */
    1982                 :         { 0xA73C, 0xA73C, 0xA73D, 0xA73C, { -1, -1, -1 } }, /* index: 1886 */
    1983                 :         { 0xA73D, 0xA73C, 0xA73D, 0xA73C, { -1, -1, -1 } }, /* index: 1887 */
    1984                 :         { 0xA73E, 0xA73E, 0xA73F, 0xA73E, { -1, -1, -1 } }, /* index: 1888 */
    1985                 :         { 0xA73F, 0xA73E, 0xA73F, 0xA73E, { -1, -1, -1 } }, /* index: 1889 */
    1986                 :         { 0xA740, 0xA740, 0xA741, 0xA740, { -1, -1, -1 } }, /* index: 1890 */
    1987                 :         { 0xA741, 0xA740, 0xA741, 0xA740, { -1, -1, -1 } }, /* index: 1891 */
    1988                 :         { 0xA742, 0xA742, 0xA743, 0xA742, { -1, -1, -1 } }, /* index: 1892 */
    1989                 :         { 0xA743, 0xA742, 0xA743, 0xA742, { -1, -1, -1 } }, /* index: 1893 */
    1990                 :         { 0xA744, 0xA744, 0xA745, 0xA744, { -1, -1, -1 } }, /* index: 1894 */
    1991                 :         { 0xA745, 0xA744, 0xA745, 0xA744, { -1, -1, -1 } }, /* index: 1895 */
    1992                 :         { 0xA746, 0xA746, 0xA747, 0xA746, { -1, -1, -1 } }, /* index: 1896 */
    1993                 :         { 0xA747, 0xA746, 0xA747, 0xA746, { -1, -1, -1 } }, /* index: 1897 */
    1994                 :         { 0xA748, 0xA748, 0xA749, 0xA748, { -1, -1, -1 } }, /* index: 1898 */
    1995                 :         { 0xA749, 0xA748, 0xA749, 0xA748, { -1, -1, -1 } }, /* index: 1899 */
    1996                 :         { 0xA74A, 0xA74A, 0xA74B, 0xA74A, { -1, -1, -1 } }, /* index: 1900 */
    1997                 :         { 0xA74B, 0xA74A, 0xA74B, 0xA74A, { -1, -1, -1 } }, /* index: 1901 */
    1998                 :         { 0xA74C, 0xA74C, 0xA74D, 0xA74C, { -1, -1, -1 } }, /* index: 1902 */
    1999                 :         { 0xA74D, 0xA74C, 0xA74D, 0xA74C, { -1, -1, -1 } }, /* index: 1903 */
    2000                 :         { 0xA74E, 0xA74E, 0xA74F, 0xA74E, { -1, -1, -1 } }, /* index: 1904 */
    2001                 :         { 0xA74F, 0xA74E, 0xA74F, 0xA74E, { -1, -1, -1 } }, /* index: 1905 */
    2002                 :         { 0xA750, 0xA750, 0xA751, 0xA750, { -1, -1, -1 } }, /* index: 1906 */
    2003                 :         { 0xA751, 0xA750, 0xA751, 0xA750, { -1, -1, -1 } }, /* index: 1907 */
    2004                 :         { 0xA752, 0xA752, 0xA753, 0xA752, { -1, -1, -1 } }, /* index: 1908 */
    2005                 :         { 0xA753, 0xA752, 0xA753, 0xA752, { -1, -1, -1 } }, /* index: 1909 */
    2006                 :         { 0xA754, 0xA754, 0xA755, 0xA754, { -1, -1, -1 } }, /* index: 1910 */
    2007                 :         { 0xA755, 0xA754, 0xA755, 0xA754, { -1, -1, -1 } }, /* index: 1911 */
    2008                 :         { 0xA756, 0xA756, 0xA757, 0xA756, { -1, -1, -1 } }, /* index: 1912 */
    2009                 :         { 0xA757, 0xA756, 0xA757, 0xA756, { -1, -1, -1 } }, /* index: 1913 */
    2010                 :         { 0xA758, 0xA758, 0xA759, 0xA758, { -1, -1, -1 } }, /* index: 1914 */
    2011                 :         { 0xA759, 0xA758, 0xA759, 0xA758, { -1, -1, -1 } }, /* index: 1915 */
    2012                 :         { 0xA75A, 0xA75A, 0xA75B, 0xA75A, { -1, -1, -1 } }, /* index: 1916 */
    2013                 :         { 0xA75B, 0xA75A, 0xA75B, 0xA75A, { -1, -1, -1 } }, /* index: 1917 */
    2014                 :         { 0xA75C, 0xA75C, 0xA75D, 0xA75C, { -1, -1, -1 } }, /* index: 1918 */
    2015                 :         { 0xA75D, 0xA75C, 0xA75D, 0xA75C, { -1, -1, -1 } }, /* index: 1919 */
    2016                 :         { 0xA75E, 0xA75E, 0xA75F, 0xA75E, { -1, -1, -1 } }, /* index: 1920 */
    2017                 :         { 0xA75F, 0xA75E, 0xA75F, 0xA75E, { -1, -1, -1 } }, /* index: 1921 */
    2018                 :         { 0xA760, 0xA760, 0xA761, 0xA760, { -1, -1, -1 } }, /* index: 1922 */
    2019                 :         { 0xA761, 0xA760, 0xA761, 0xA760, { -1, -1, -1 } }, /* index: 1923 */
    2020                 :         { 0xA762, 0xA762, 0xA763, 0xA762, { -1, -1, -1 } }, /* index: 1924 */
    2021                 :         { 0xA763, 0xA762, 0xA763, 0xA762, { -1, -1, -1 } }, /* index: 1925 */
    2022                 :         { 0xA764, 0xA764, 0xA765, 0xA764, { -1, -1, -1 } }, /* index: 1926 */
    2023                 :         { 0xA765, 0xA764, 0xA765, 0xA764, { -1, -1, -1 } }, /* index: 1927 */
    2024                 :         { 0xA766, 0xA766, 0xA767, 0xA766, { -1, -1, -1 } }, /* index: 1928 */
    2025                 :         { 0xA767, 0xA766, 0xA767, 0xA766, { -1, -1, -1 } }, /* index: 1929 */
    2026                 :         { 0xA768, 0xA768, 0xA769, 0xA768, { -1, -1, -1 } }, /* index: 1930 */
    2027                 :         { 0xA769, 0xA768, 0xA769, 0xA768, { -1, -1, -1 } }, /* index: 1931 */
    2028                 :         { 0xA76A, 0xA76A, 0xA76B, 0xA76A, { -1, -1, -1 } }, /* index: 1932 */
    2029                 :         { 0xA76B, 0xA76A, 0xA76B, 0xA76A, { -1, -1, -1 } }, /* index: 1933 */
    2030                 :         { 0xA76C, 0xA76C, 0xA76D, 0xA76C, { -1, -1, -1 } }, /* index: 1934 */
    2031                 :         { 0xA76D, 0xA76C, 0xA76D, 0xA76C, { -1, -1, -1 } }, /* index: 1935 */
    2032                 :         { 0xA76E, 0xA76E, 0xA76F, 0xA76E, { -1, -1, -1 } }, /* index: 1936 */
    2033                 :         { 0xA76F, 0xA76E, 0xA76F, 0xA76E, { -1, -1, -1 } }, /* index: 1937 */
    2034                 :         { 0xA779, 0xA779, 0xA77A, 0xA779, { -1, -1, -1 } }, /* index: 1938 */
    2035                 :         { 0xA77A, 0xA779, 0xA77A, 0xA779, { -1, -1, -1 } }, /* index: 1939 */
    2036                 :         { 0xA77B, 0xA77B, 0xA77C, 0xA77B, { -1, -1, -1 } }, /* index: 1940 */
    2037                 :         { 0xA77C, 0xA77B, 0xA77C, 0xA77B, { -1, -1, -1 } }, /* index: 1941 */
    2038                 :         { 0xA77D, 0xA77D, 0x1D79, 0xA77D, { -1, -1, -1 } }, /* index: 1942 */
    2039                 :         { 0xA77E, 0xA77E, 0xA77F, 0xA77E, { -1, -1, -1 } }, /* index: 1943 */
    2040                 :         { 0xA77F, 0xA77E, 0xA77F, 0xA77E, { -1, -1, -1 } }, /* index: 1944 */
    2041                 :         { 0xA780, 0xA780, 0xA781, 0xA780, { -1, -1, -1 } }, /* index: 1945 */
    2042                 :         { 0xA781, 0xA780, 0xA781, 0xA780, { -1, -1, -1 } }, /* index: 1946 */
    2043                 :         { 0xA782, 0xA782, 0xA783, 0xA782, { -1, -1, -1 } }, /* index: 1947 */
    2044                 :         { 0xA783, 0xA782, 0xA783, 0xA782, { -1, -1, -1 } }, /* index: 1948 */
    2045                 :         { 0xA784, 0xA784, 0xA785, 0xA784, { -1, -1, -1 } }, /* index: 1949 */
    2046                 :         { 0xA785, 0xA784, 0xA785, 0xA784, { -1, -1, -1 } }, /* index: 1950 */
    2047                 :         { 0xA786, 0xA786, 0xA787, 0xA786, { -1, -1, -1 } }, /* index: 1951 */
    2048                 :         { 0xA787, 0xA786, 0xA787, 0xA786, { -1, -1, -1 } }, /* index: 1952 */
    2049                 :         { 0xA78B, 0xA78B, 0xA78C, 0xA78B, { -1, -1, -1 } }, /* index: 1953 */
    2050                 :         { 0xA78C, 0xA78B, 0xA78C, 0xA78B, { -1, -1, -1 } }, /* index: 1954 */
    2051                 :         { 0xFB00, 0xFB00, 0xFB00, 0xFB00, { 2, -1, -1 } }, /* index: 1955 */
    2052                 :         { 0xFB01, 0xFB01, 0xFB01, 0xFB01, { 3, -1, -1 } }, /* index: 1956 */
    2053                 :         { 0xFB02, 0xFB02, 0xFB02, 0xFB02, { 4, -1, -1 } }, /* index: 1957 */
    2054                 :         { 0xFB03, 0xFB03, 0xFB03, 0xFB03, { 5, -1, -1 } }, /* index: 1958 */
    2055                 :         { 0xFB04, 0xFB04, 0xFB04, 0xFB04, { 6, -1, -1 } }, /* index: 1959 */
    2056                 :         { 0xFB05, 0xFB05, 0xFB05, 0xFB05, { 7, -1, -1 } }, /* index: 1960 */
    2057                 :         { 0xFB06, 0xFB06, 0xFB06, 0xFB06, { 8, -1, -1 } }, /* index: 1961 */
    2058                 :         { 0xFB13, 0xFB13, 0xFB13, 0xFB13, { 10, -1, -1 } }, /* index: 1962 */
    2059                 :         { 0xFB14, 0xFB14, 0xFB14, 0xFB14, { 11, -1, -1 } }, /* index: 1963 */
    2060                 :         { 0xFB15, 0xFB15, 0xFB15, 0xFB15, { 12, -1, -1 } }, /* index: 1964 */
    2061                 :         { 0xFB16, 0xFB16, 0xFB16, 0xFB16, { 13, -1, -1 } }, /* index: 1965 */
    2062                 :         { 0xFB17, 0xFB17, 0xFB17, 0xFB17, { 14, -1, -1 } }, /* index: 1966 */
    2063                 :         { 0xFF21, 0xFF21, 0xFF41, 0xFF21, { -1, -1, -1 } }, /* index: 1967 */
    2064                 :         { 0xFF22, 0xFF22, 0xFF42, 0xFF22, { -1, -1, -1 } }, /* index: 1968 */
    2065                 :         { 0xFF23, 0xFF23, 0xFF43, 0xFF23, { -1, -1, -1 } }, /* index: 1969 */
    2066                 :         { 0xFF24, 0xFF24, 0xFF44, 0xFF24, { -1, -1, -1 } }, /* index: 1970 */
    2067                 :         { 0xFF25, 0xFF25, 0xFF45, 0xFF25, { -1, -1, -1 } }, /* index: 1971 */
    2068                 :         { 0xFF26, 0xFF26, 0xFF46, 0xFF26, { -1, -1, -1 } }, /* index: 1972 */
    2069                 :         { 0xFF27, 0xFF27, 0xFF47, 0xFF27, { -1, -1, -1 } }, /* index: 1973 */
    2070                 :         { 0xFF28, 0xFF28, 0xFF48, 0xFF28, { -1, -1, -1 } }, /* index: 1974 */
    2071                 :         { 0xFF29, 0xFF29, 0xFF49, 0xFF29, { -1, -1, -1 } }, /* index: 1975 */
    2072                 :         { 0xFF2A, 0xFF2A, 0xFF4A, 0xFF2A, { -1, -1, -1 } }, /* index: 1976 */
    2073                 :         { 0xFF2B, 0xFF2B, 0xFF4B, 0xFF2B, { -1, -1, -1 } }, /* index: 1977 */
    2074                 :         { 0xFF2C, 0xFF2C, 0xFF4C, 0xFF2C, { -1, -1, -1 } }, /* index: 1978 */
    2075                 :         { 0xFF2D, 0xFF2D, 0xFF4D, 0xFF2D, { -1, -1, -1 } }, /* index: 1979 */
    2076                 :         { 0xFF2E, 0xFF2E, 0xFF4E, 0xFF2E, { -1, -1, -1 } }, /* index: 1980 */
    2077                 :         { 0xFF2F, 0xFF2F, 0xFF4F, 0xFF2F, { -1, -1, -1 } }, /* index: 1981 */
    2078                 :         { 0xFF30, 0xFF30, 0xFF50, 0xFF30, { -1, -1, -1 } }, /* index: 1982 */
    2079                 :         { 0xFF31, 0xFF31, 0xFF51, 0xFF31, { -1, -1, -1 } }, /* index: 1983 */
    2080                 :         { 0xFF32, 0xFF32, 0xFF52, 0xFF32, { -1, -1, -1 } }, /* index: 1984 */
    2081                 :         { 0xFF33, 0xFF33, 0xFF53, 0xFF33, { -1, -1, -1 } }, /* index: 1985 */
    2082                 :         { 0xFF34, 0xFF34, 0xFF54, 0xFF34, { -1, -1, -1 } }, /* index: 1986 */
    2083                 :         { 0xFF35, 0xFF35, 0xFF55, 0xFF35, { -1, -1, -1 } }, /* index: 1987 */
    2084                 :         { 0xFF36, 0xFF36, 0xFF56, 0xFF36, { -1, -1, -1 } }, /* index: 1988 */
    2085                 :         { 0xFF37, 0xFF37, 0xFF57, 0xFF37, { -1, -1, -1 } }, /* index: 1989 */
    2086                 :         { 0xFF38, 0xFF38, 0xFF58, 0xFF38, { -1, -1, -1 } }, /* index: 1990 */
    2087                 :         { 0xFF39, 0xFF39, 0xFF59, 0xFF39, { -1, -1, -1 } }, /* index: 1991 */
    2088                 :         { 0xFF3A, 0xFF3A, 0xFF5A, 0xFF3A, { -1, -1, -1 } }, /* index: 1992 */
    2089                 :         { 0xFF41, 0xFF21, 0xFF41, 0xFF21, { -1, -1, -1 } }, /* index: 1993 */
    2090                 :         { 0xFF42, 0xFF22, 0xFF42, 0xFF22, { -1, -1, -1 } }, /* index: 1994 */
    2091                 :         { 0xFF43, 0xFF23, 0xFF43, 0xFF23, { -1, -1, -1 } }, /* index: 1995 */
    2092                 :         { 0xFF44, 0xFF24, 0xFF44, 0xFF24, { -1, -1, -1 } }, /* index: 1996 */
    2093                 :         { 0xFF45, 0xFF25, 0xFF45, 0xFF25, { -1, -1, -1 } }, /* index: 1997 */
    2094                 :         { 0xFF46, 0xFF26, 0xFF46, 0xFF26, { -1, -1, -1 } }, /* index: 1998 */
    2095                 :         { 0xFF47, 0xFF27, 0xFF47, 0xFF27, { -1, -1, -1 } }, /* index: 1999 */
    2096                 :         { 0xFF48, 0xFF28, 0xFF48, 0xFF28, { -1, -1, -1 } }, /* index: 2000 */
    2097                 :         { 0xFF49, 0xFF29, 0xFF49, 0xFF29, { -1, -1, -1 } }, /* index: 2001 */
    2098                 :         { 0xFF4A, 0xFF2A, 0xFF4A, 0xFF2A, { -1, -1, -1 } }, /* index: 2002 */
    2099                 :         { 0xFF4B, 0xFF2B, 0xFF4B, 0xFF2B, { -1, -1, -1 } }, /* index: 2003 */
    2100                 :         { 0xFF4C, 0xFF2C, 0xFF4C, 0xFF2C, { -1, -1, -1 } }, /* index: 2004 */
    2101                 :         { 0xFF4D, 0xFF2D, 0xFF4D, 0xFF2D, { -1, -1, -1 } }, /* index: 2005 */
    2102                 :         { 0xFF4E, 0xFF2E, 0xFF4E, 0xFF2E, { -1, -1, -1 } }, /* index: 2006 */
    2103                 :         { 0xFF4F, 0xFF2F, 0xFF4F, 0xFF2F, { -1, -1, -1 } }, /* index: 2007 */
    2104                 :         { 0xFF50, 0xFF30, 0xFF50, 0xFF30, { -1, -1, -1 } }, /* index: 2008 */
    2105                 :         { 0xFF51, 0xFF31, 0xFF51, 0xFF31, { -1, -1, -1 } }, /* index: 2009 */
    2106                 :         { 0xFF52, 0xFF32, 0xFF52, 0xFF32, { -1, -1, -1 } }, /* index: 2010 */
    2107                 :         { 0xFF53, 0xFF33, 0xFF53, 0xFF33, { -1, -1, -1 } }, /* index: 2011 */
    2108                 :         { 0xFF54, 0xFF34, 0xFF54, 0xFF34, { -1, -1, -1 } }, /* index: 2012 */
    2109                 :         { 0xFF55, 0xFF35, 0xFF55, 0xFF35, { -1, -1, -1 } }, /* index: 2013 */
    2110                 :         { 0xFF56, 0xFF36, 0xFF56, 0xFF36, { -1, -1, -1 } }, /* index: 2014 */
    2111                 :         { 0xFF57, 0xFF37, 0xFF57, 0xFF37, { -1, -1, -1 } }, /* index: 2015 */
    2112                 :         { 0xFF58, 0xFF38, 0xFF58, 0xFF38, { -1, -1, -1 } }, /* index: 2016 */
    2113                 :         { 0xFF59, 0xFF39, 0xFF59, 0xFF39, { -1, -1, -1 } }, /* index: 2017 */
    2114                 :         { 0xFF5A, 0xFF3A, 0xFF5A, 0xFF3A, { -1, -1, -1 } }, /* index: 2018 */
    2115                 :         { 0x10400, 0x10400, 0x10428, 0x10400, { -1, -1, -1 } }, /* index: 2019 */
    2116                 :         { 0x10401, 0x10401, 0x10429, 0x10401, { -1, -1, -1 } }, /* index: 2020 */
    2117                 :         { 0x10402, 0x10402, 0x1042A, 0x10402, { -1, -1, -1 } }, /* index: 2021 */
    2118                 :         { 0x10403, 0x10403, 0x1042B, 0x10403, { -1, -1, -1 } }, /* index: 2022 */
    2119                 :         { 0x10404, 0x10404, 0x1042C, 0x10404, { -1, -1, -1 } }, /* index: 2023 */
    2120                 :         { 0x10405, 0x10405, 0x1042D, 0x10405, { -1, -1, -1 } }, /* index: 2024 */
    2121                 :         { 0x10406, 0x10406, 0x1042E, 0x10406, { -1, -1, -1 } }, /* index: 2025 */
    2122                 :         { 0x10407, 0x10407, 0x1042F, 0x10407, { -1, -1, -1 } }, /* index: 2026 */
    2123                 :         { 0x10408, 0x10408, 0x10430, 0x10408, { -1, -1, -1 } }, /* index: 2027 */
    2124                 :         { 0x10409, 0x10409, 0x10431, 0x10409, { -1, -1, -1 } }, /* index: 2028 */
    2125                 :         { 0x1040A, 0x1040A, 0x10432, 0x1040A, { -1, -1, -1 } }, /* index: 2029 */
    2126                 :         { 0x1040B, 0x1040B, 0x10433, 0x1040B, { -1, -1, -1 } }, /* index: 2030 */
    2127                 :         { 0x1040C, 0x1040C, 0x10434, 0x1040C, { -1, -1, -1 } }, /* index: 2031 */
    2128                 :         { 0x1040D, 0x1040D, 0x10435, 0x1040D, { -1, -1, -1 } }, /* index: 2032 */
    2129                 :         { 0x1040E, 0x1040E, 0x10436, 0x1040E, { -1, -1, -1 } }, /* index: 2033 */
    2130                 :         { 0x1040F, 0x1040F, 0x10437, 0x1040F, { -1, -1, -1 } }, /* index: 2034 */
    2131                 :         { 0x10410, 0x10410, 0x10438, 0x10410, { -1, -1, -1 } }, /* index: 2035 */
    2132                 :         { 0x10411, 0x10411, 0x10439, 0x10411, { -1, -1, -1 } }, /* index: 2036 */
    2133                 :         { 0x10412, 0x10412, 0x1043A, 0x10412, { -1, -1, -1 } }, /* index: 2037 */
    2134                 :         { 0x10413, 0x10413, 0x1043B, 0x10413, { -1, -1, -1 } }, /* index: 2038 */
    2135                 :         { 0x10414, 0x10414, 0x1043C, 0x10414, { -1, -1, -1 } }, /* index: 2039 */
    2136                 :         { 0x10415, 0x10415, 0x1043D, 0x10415, { -1, -1, -1 } }, /* index: 2040 */
    2137                 :         { 0x10416, 0x10416, 0x1043E, 0x10416, { -1, -1, -1 } }, /* index: 2041 */
    2138                 :         { 0x10417, 0x10417, 0x1043F, 0x10417, { -1, -1, -1 } }, /* index: 2042 */
    2139                 :         { 0x10418, 0x10418, 0x10440, 0x10418, { -1, -1, -1 } }, /* index: 2043 */
    2140                 :         { 0x10419, 0x10419, 0x10441, 0x10419, { -1, -1, -1 } }, /* index: 2044 */
    2141                 :         { 0x1041A, 0x1041A, 0x10442, 0x1041A, { -1, -1, -1 } }, /* index: 2045 */
    2142                 :         { 0x1041B, 0x1041B, 0x10443, 0x1041B, { -1, -1, -1 } }, /* index: 2046 */
    2143                 :         { 0x1041C, 0x1041C, 0x10444, 0x1041C, { -1, -1, -1 } }, /* index: 2047 */
    2144                 :         { 0x1041D, 0x1041D, 0x10445, 0x1041D, { -1, -1, -1 } }, /* index: 2048 */
    2145                 :         { 0x1041E, 0x1041E, 0x10446, 0x1041E, { -1, -1, -1 } }, /* index: 2049 */
    2146                 :         { 0x1041F, 0x1041F, 0x10447, 0x1041F, { -1, -1, -1 } }, /* index: 2050 */
    2147                 :         { 0x10420, 0x10420, 0x10448, 0x10420, { -1, -1, -1 } }, /* index: 2051 */
    2148                 :         { 0x10421, 0x10421, 0x10449, 0x10421, { -1, -1, -1 } }, /* index: 2052 */
    2149                 :         { 0x10422, 0x10422, 0x1044A, 0x10422, { -1, -1, -1 } }, /* index: 2053 */
    2150                 :         { 0x10423, 0x10423, 0x1044B, 0x10423, { -1, -1, -1 } }, /* index: 2054 */
    2151                 :         { 0x10424, 0x10424, 0x1044C, 0x10424, { -1, -1, -1 } }, /* index: 2055 */
    2152                 :         { 0x10425, 0x10425, 0x1044D, 0x10425, { -1, -1, -1 } }, /* index: 2056 */
    2153                 :         { 0x10426, 0x10426, 0x1044E, 0x10426, { -1, -1, -1 } }, /* index: 2057 */
    2154                 :         { 0x10427, 0x10427, 0x1044F, 0x10427, { -1, -1, -1 } }, /* index: 2058 */
    2155                 :         { 0x10428, 0x10400, 0x10428, 0x10400, { -1, -1, -1 } }, /* index: 2059 */
    2156                 :         { 0x10429, 0x10401, 0x10429, 0x10401, { -1, -1, -1 } }, /* index: 2060 */
    2157                 :         { 0x1042A, 0x10402, 0x1042A, 0x10402, { -1, -1, -1 } }, /* index: 2061 */
    2158                 :         { 0x1042B, 0x10403, 0x1042B, 0x10403, { -1, -1, -1 } }, /* index: 2062 */
    2159                 :         { 0x1042C, 0x10404, 0x1042C, 0x10404, { -1, -1, -1 } }, /* index: 2063 */
    2160                 :         { 0x1042D, 0x10405, 0x1042D, 0x10405, { -1, -1, -1 } }, /* index: 2064 */
    2161                 :         { 0x1042E, 0x10406, 0x1042E, 0x10406, { -1, -1, -1 } }, /* index: 2065 */
    2162                 :         { 0x1042F, 0x10407, 0x1042F, 0x10407, { -1, -1, -1 } }, /* index: 2066 */
    2163                 :         { 0x10430, 0x10408, 0x10430, 0x10408, { -1, -1, -1 } }, /* index: 2067 */
    2164                 :         { 0x10431, 0x10409, 0x10431, 0x10409, { -1, -1, -1 } }, /* index: 2068 */
    2165                 :         { 0x10432, 0x1040A, 0x10432, 0x1040A, { -1, -1, -1 } }, /* index: 2069 */
    2166                 :         { 0x10433, 0x1040B, 0x10433, 0x1040B, { -1, -1, -1 } }, /* index: 2070 */
    2167                 :         { 0x10434, 0x1040C, 0x10434, 0x1040C, { -1, -1, -1 } }, /* index: 2071 */
    2168                 :         { 0x10435, 0x1040D, 0x10435, 0x1040D, { -1, -1, -1 } }, /* index: 2072 */
    2169                 :         { 0x10436, 0x1040E, 0x10436, 0x1040E, { -1, -1, -1 } }, /* index: 2073 */
    2170                 :         { 0x10437, 0x1040F, 0x10437, 0x1040F, { -1, -1, -1 } }, /* index: 2074 */
    2171                 :         { 0x10438, 0x10410, 0x10438, 0x10410, { -1, -1, -1 } }, /* index: 2075 */
    2172                 :         { 0x10439, 0x10411, 0x10439, 0x10411, { -1, -1, -1 } }, /* index: 2076 */
    2173                 :         { 0x1043A, 0x10412, 0x1043A, 0x10412, { -1, -1, -1 } }, /* index: 2077 */
    2174                 :         { 0x1043B, 0x10413, 0x1043B, 0x10413, { -1, -1, -1 } }, /* index: 2078 */
    2175                 :         { 0x1043C, 0x10414, 0x1043C, 0x10414, { -1, -1, -1 } }, /* index: 2079 */
    2176                 :         { 0x1043D, 0x10415, 0x1043D, 0x10415, { -1, -1, -1 } }, /* index: 2080 */
    2177                 :         { 0x1043E, 0x10416, 0x1043E, 0x10416, { -1, -1, -1 } }, /* index: 2081 */
    2178                 :         { 0x1043F, 0x10417, 0x1043F, 0x10417, { -1, -1, -1 } }, /* index: 2082 */
    2179                 :         { 0x10440, 0x10418, 0x10440, 0x10418, { -1, -1, -1 } }, /* index: 2083 */
    2180                 :         { 0x10441, 0x10419, 0x10441, 0x10419, { -1, -1, -1 } }, /* index: 2084 */
    2181                 :         { 0x10442, 0x1041A, 0x10442, 0x1041A, { -1, -1, -1 } }, /* index: 2085 */
    2182                 :         { 0x10443, 0x1041B, 0x10443, 0x1041B, { -1, -1, -1 } }, /* index: 2086 */
    2183                 :         { 0x10444, 0x1041C, 0x10444, 0x1041C, { -1, -1, -1 } }, /* index: 2087 */
    2184                 :         { 0x10445, 0x1041D, 0x10445, 0x1041D, { -1, -1, -1 } }, /* index: 2088 */
    2185                 :         { 0x10446, 0x1041E, 0x10446, 0x1041E, { -1, -1, -1 } }, /* index: 2089 */
    2186                 :         { 0x10447, 0x1041F, 0x10447, 0x1041F, { -1, -1, -1 } }, /* index: 2090 */
    2187                 :         { 0x10448, 0x10420, 0x10448, 0x10420, { -1, -1, -1 } }, /* index: 2091 */
    2188                 :         { 0x10449, 0x10421, 0x10449, 0x10421, { -1, -1, -1 } }, /* index: 2092 */
    2189                 :         { 0x1044A, 0x10422, 0x1044A, 0x10422, { -1, -1, -1 } }, /* index: 2093 */
    2190                 :         { 0x1044B, 0x10423, 0x1044B, 0x10423, { -1, -1, -1 } }, /* index: 2094 */
    2191                 :         { 0x1044C, 0x10424, 0x1044C, 0x10424, { -1, -1, -1 } }, /* index: 2095 */
    2192                 :         { 0x1044D, 0x10425, 0x1044D, 0x10425, { -1, -1, -1 } }, /* index: 2096 */
    2193                 :         { 0x1044E, 0x10426, 0x1044E, 0x10426, { -1, -1, -1 } }, /* index: 2097 */
    2194                 :         { 0x1044F, 0x10427, 0x1044F, 0x10427, { -1, -1, -1 } }, /* index: 2098 */
    2195                 : };
    2196                 : 
    2197                 : 
    2198                 : /* Array containing the list of different intervals related to case information
    2199                 :  *  in the Unicode Character Database. */
    2200                 : static unicode_case_interval_t unicode_case_int[UCD_C_INT_N] = {
    2201                 :   { 0x000041, 0x00005A, 65 }, /* index: 0 */
    2202                 :   { 0x000061, 0x00007A, 71 }, /* index: 1 */
    2203                 :   { 0x0000B5, 0x0000B5, 129 }, /* index: 2 */
    2204                 :   { 0x0000C0, 0x0000D6, 139 }, /* index: 3 */
    2205                 :   { 0x0000D8, 0x0000F6, 140 }, /* index: 4 */
    2206                 :   { 0x0000F8, 0x000137, 141 }, /* index: 5 */
    2207                 :   { 0x000139, 0x00018C, 142 }, /* index: 6 */
    2208                 :   { 0x00018E, 0x00019A, 143 }, /* index: 7 */
    2209                 :   { 0x00019C, 0x0001A9, 144 }, /* index: 8 */
    2210                 :   { 0x0001AC, 0x0001B9, 146 }, /* index: 9 */
    2211                 :   { 0x0001BC, 0x0001BD, 148 }, /* index: 10 */
    2212                 :   { 0x0001BF, 0x0001BF, 149 }, /* index: 11 */
    2213                 :   { 0x0001C4, 0x000220, 153 }, /* index: 12 */
    2214                 :   { 0x000222, 0x000233, 154 }, /* index: 13 */
    2215                 :   { 0x00023A, 0x00023E, 160 }, /* index: 14 */
    2216                 :   { 0x000241, 0x000251, 162 }, /* index: 15 */
    2217                 :   { 0x000253, 0x000254, 163 }, /* index: 16 */
    2218                 :   { 0x000256, 0x000257, 164 }, /* index: 17 */
    2219                 :   { 0x000259, 0x000259, 165 }, /* index: 18 */
    2220                 :   { 0x00025B, 0x00025B, 166 }, /* index: 19 */
    2221                 :   { 0x000260, 0x000260, 170 }, /* index: 20 */
    2222                 :   { 0x000263, 0x000263, 172 }, /* index: 21 */
    2223                 :   { 0x000268, 0x000269, 176 }, /* index: 22 */
    2224                 :   { 0x00026B, 0x00026B, 177 }, /* index: 23 */
    2225                 :   { 0x00026F, 0x00026F, 180 }, /* index: 24 */
    2226                 :   { 0x000271, 0x000272, 181 }, /* index: 25 */
    2227                 :   { 0x000275, 0x000275, 183 }, /* index: 26 */
    2228                 :   { 0x00027D, 0x00027D, 190 }, /* index: 27 */
    2229                 :   { 0x000280, 0x000280, 192 }, /* index: 28 */
    2230                 :   { 0x000283, 0x000283, 194 }, /* index: 29 */
    2231                 :   { 0x000288, 0x00028C, 198 }, /* index: 30 */
    2232                 :   { 0x000292, 0x000292, 203 }, /* index: 31 */
    2233                 :   { 0x000307, 0x000307, 319 }, /* index: 32 */
    2234                 :   { 0x000345, 0x000345, 380 }, /* index: 33 */
    2235                 :   { 0x000370, 0x000373, 422 }, /* index: 34 */
    2236                 :   { 0x000376, 0x000377, 424 }, /* index: 35 */
    2237                 :   { 0x00037B, 0x00037D, 427 }, /* index: 36 */
    2238                 :   { 0x000386, 0x000386, 435 }, /* index: 37 */
    2239                 :   { 0x000388, 0x00038A, 436 }, /* index: 38 */
    2240                 :   { 0x00038C, 0x00038C, 437 }, /* index: 39 */
    2241                 :   { 0x00038E, 0x0003A1, 438 }, /* index: 40 */
    2242                 :   { 0x0003A3, 0x0003D1, 439 }, /* index: 41 */
    2243                 :   { 0x0003D5, 0x0003F2, 442 }, /* index: 42 */
    2244                 :   { 0x0003F4, 0x0003F5, 443 }, /* index: 43 */
    2245                 :   { 0x0003F7, 0x0003FB, 444 }, /* index: 44 */
    2246                 :   { 0x0003FD, 0x000481, 445 }, /* index: 45 */
    2247                 :   { 0x00048A, 0x000523, 453 }, /* index: 46 */
    2248                 :   { 0x000531, 0x000556, 466 }, /* index: 47 */
    2249                 :   { 0x000561, 0x000587, 476 }, /* index: 48 */
    2250                 :   { 0x0010A0, 0x0010C5, 3316 }, /* index: 49 */
    2251                 :   { 0x001D79, 0x001D79, 6567 }, /* index: 50 */
    2252                 :   { 0x001D7D, 0x001D7D, 6570 }, /* index: 51 */
    2253                 :   { 0x001E00, 0x001E9B, 6700 }, /* index: 52 */
    2254                 :   { 0x001E9E, 0x001E9E, 6702 }, /* index: 53 */
    2255                 :   { 0x001EA0, 0x001F15, 6703 }, /* index: 54 */
    2256                 :   { 0x001F18, 0x001F1D, 6705 }, /* index: 55 */
    2257                 :   { 0x001F20, 0x001F45, 6707 }, /* index: 56 */
    2258                 :   { 0x001F48, 0x001F4D, 6709 }, /* index: 57 */
    2259                 :   { 0x001F50, 0x001F57, 6711 }, /* index: 58 */
    2260                 :   { 0x001F59, 0x001F59, 6712 }, /* index: 59 */
    2261                 :   { 0x001F5B, 0x001F5B, 6713 }, /* index: 60 */
    2262                 :   { 0x001F5D, 0x001F5D, 6714 }, /* index: 61 */
    2263                 :   { 0x001F5F, 0x001F7D, 6715 }, /* index: 62 */
    2264                 :   { 0x001F80, 0x001FB4, 6717 }, /* index: 63 */
    2265                 :   { 0x001FB6, 0x001FBC, 6718 }, /* index: 64 */
    2266                 :   { 0x001FBE, 0x001FBE, 6719 }, /* index: 65 */
    2267                 :   { 0x001FC2, 0x001FC4, 6722 }, /* index: 66 */
    2268                 :   { 0x001FC6, 0x001FCC, 6723 }, /* index: 67 */
    2269                 :   { 0x001FD0, 0x001FD3, 6726 }, /* index: 68 */
    2270                 :   { 0x001FD6, 0x001FDB, 6728 }, /* index: 69 */
    2271                 :   { 0x001FE0, 0x001FEC, 6732 }, /* index: 70 */
    2272                 :   { 0x001FF2, 0x001FF4, 6737 }, /* index: 71 */
    2273                 :   { 0x001FF6, 0x001FFC, 6738 }, /* index: 72 */
    2274                 :   { 0x002126, 0x002126, 7035 }, /* index: 73 */
    2275                 :   { 0x00212A, 0x00212B, 7038 }, /* index: 74 */
    2276                 :   { 0x002132, 0x002132, 7044 }, /* index: 75 */
    2277                 :   { 0x00214E, 0x00214E, 7071 }, /* index: 76 */
    2278                 :   { 0x002160, 0x00217F, 7088 }, /* index: 77 */
    2279                 :   { 0x002183, 0x002184, 7091 }, /* index: 78 */
    2280                 :   { 0x0024B6, 0x0024E9, 7908 }, /* index: 79 */
    2281                 :   { 0x002C00, 0x002C2E, 9722 }, /* index: 80 */
    2282                 :   { 0x002C30, 0x002C5E, 9723 }, /* index: 81 */
    2283                 :   { 0x002C60, 0x002C6F, 9724 }, /* index: 82 */
    2284                 :   { 0x002C72, 0x002C73, 9726 }, /* index: 83 */
    2285                 :   { 0x002C75, 0x002C76, 9727 }, /* index: 84 */
    2286                 :   { 0x002C80, 0x002CE3, 9736 }, /* index: 85 */
    2287                 :   { 0x002D00, 0x002D25, 9764 }, /* index: 86 */
    2288                 :   { 0x00A640, 0x00A65F, 40766 }, /* index: 87 */
    2289                 :   { 0x00A662, 0x00A66D, 40768 }, /* index: 88 */
    2290                 :   { 0x00A680, 0x00A697, 40786 }, /* index: 89 */
    2291                 :   { 0x00A722, 0x00A72F, 40924 }, /* index: 90 */
    2292                 :   { 0x00A732, 0x00A76F, 40926 }, /* index: 91 */
    2293                 :   { 0x00A779, 0x00A787, 40935 }, /* index: 92 */
    2294                 :   { 0x00A78B, 0x00A78C, 40938 }, /* index: 93 */
    2295                 :   { 0x00FB00, 0x00FB06, 62301 }, /* index: 94 */
    2296                 :   { 0x00FB13, 0x00FB17, 62313 }, /* index: 95 */
    2297                 :   { 0x00FF21, 0x00FF3A, 63346 }, /* index: 96 */
    2298                 :   { 0x00FF41, 0x00FF5A, 63352 }, /* index: 97 */
    2299                 :   { 0x010400, 0x01044F, 64541 }, /* index: 98 */
    2300                 : };
    2301                 : 
    2302                 : 
    2303                 : /* Array containing the special case information for each unicode point (really
    2304                 :  *  only for those which actually have some special case information) */
    2305                 : static unicode_special_case_info_t unicode_special_case_info[UCD_SC_INFO_N] = {
    2306                 :   {  /* index: 0 */
    2307                 :     0x00DF,
    2308                 :     { 0x00DF, 0x0000, 0x0000 }, /* lowercase */
    2309                 :     { 0x0053, 0x0053, 0x0000 }, /* uppercase */
    2310                 :     { 0x0053, 0x0073, 0x0000 }, /* titlecase */
    2311                 :     "" /* conditions */
    2312                 :   },
    2313                 :   {  /* index: 1 */
    2314                 :     0x0130,
    2315                 :     { 0x0069, 0x0307, 0x0000 }, /* lowercase */
    2316                 :     { 0x0130, 0x0000, 0x0000 }, /* uppercase */
    2317                 :     { 0x0130, 0x0000, 0x0000 }, /* titlecase */
    2318                 :     "" /* conditions */
    2319                 :   },
    2320                 :   {  /* index: 2 */
    2321                 :     0xFB00,
    2322                 :     { 0xFB00, 0x0000, 0x0000 }, /* lowercase */
    2323                 :     { 0x0046, 0x0046, 0x0000 }, /* uppercase */
    2324                 :     { 0x0046, 0x0066, 0x0000 }, /* titlecase */
    2325                 :     "" /* conditions */
    2326                 :   },
    2327                 :   {  /* index: 3 */
    2328                 :     0xFB01,
    2329                 :     { 0xFB01, 0x0000, 0x0000 }, /* lowercase */
    2330                 :     { 0x0046, 0x0049, 0x0000 }, /* uppercase */
    2331                 :     { 0x0046, 0x0069, 0x0000 }, /* titlecase */
    2332                 :     "" /* conditions */
    2333                 :   },
    2334                 :   {  /* index: 4 */
    2335                 :     0xFB02,
    2336                 :     { 0xFB02, 0x0000, 0x0000 }, /* lowercase */
    2337                 :     { 0x0046, 0x004C, 0x0000 }, /* uppercase */
    2338                 :     { 0x0046, 0x006C, 0x0000 }, /* titlecase */
    2339                 :     "" /* conditions */
    2340                 :   },
    2341                 :   {  /* index: 5 */
    2342                 :     0xFB03,
    2343                 :     { 0xFB03, 0x0000, 0x0000 }, /* lowercase */
    2344                 :     { 0x0046, 0x0046, 0x0049 }, /* uppercase */
    2345                 :     { 0x0046, 0x0066, 0x0069 }, /* titlecase */
    2346                 :     "" /* conditions */
    2347                 :   },
    2348                 :   {  /* index: 6 */
    2349                 :     0xFB04,
    2350                 :     { 0xFB04, 0x0000, 0x0000 }, /* lowercase */
    2351                 :     { 0x0046, 0x0046, 0x004C }, /* uppercase */
    2352                 :     { 0x0046, 0x0066, 0x006C }, /* titlecase */
    2353                 :     "" /* conditions */
    2354                 :   },
    2355                 :   {  /* index: 7 */
    2356                 :     0xFB05,
    2357                 :     { 0xFB05, 0x0000, 0x0000 }, /* lowercase */
    2358                 :     { 0x0053, 0x0054, 0x0000 }, /* uppercase */
    2359                 :     { 0x0053, 0x0074, 0x0000 }, /* titlecase */
    2360                 :     "" /* conditions */
    2361                 :   },
    2362                 :   {  /* index: 8 */
    2363                 :     0xFB06,
    2364                 :     { 0xFB06, 0x0000, 0x0000 }, /* lowercase */
    2365                 :     { 0x0053, 0x0054, 0x0000 }, /* uppercase */
    2366                 :     { 0x0053, 0x0074, 0x0000 }, /* titlecase */
    2367                 :     "" /* conditions */
    2368                 :   },
    2369                 :   {  /* index: 9 */
    2370                 :     0x0587,
    2371                 :     { 0x0587, 0x0000, 0x0000 }, /* lowercase */
    2372                 :     { 0x0535, 0x0552, 0x0000 }, /* uppercase */
    2373                 :     { 0x0535, 0x0582, 0x0000 }, /* titlecase */
    2374                 :     "" /* conditions */
    2375                 :   },
    2376                 :   {  /* index: 10 */
    2377                 :     0xFB13,
    2378                 :     { 0xFB13, 0x0000, 0x0000 }, /* lowercase */
    2379                 :     { 0x0544, 0x0546, 0x0000 }, /* uppercase */
    2380                 :     { 0x0544, 0x0576, 0x0000 }, /* titlecase */
    2381                 :     "" /* conditions */
    2382                 :   },
    2383                 :   {  /* index: 11 */
    2384                 :     0xFB14,
    2385                 :     { 0xFB14, 0x0000, 0x0000 }, /* lowercase */
    2386                 :     { 0x0544, 0x0535, 0x0000 }, /* uppercase */
    2387                 :     { 0x0544, 0x0565, 0x0000 }, /* titlecase */
    2388                 :     "" /* conditions */
    2389                 :   },
    2390                 :   {  /* index: 12 */
    2391                 :     0xFB15,
    2392                 :     { 0xFB15, 0x0000, 0x0000 }, /* lowercase */
    2393                 :     { 0x0544, 0x053B, 0x0000 }, /* uppercase */
    2394                 :     { 0x0544, 0x056B, 0x0000 }, /* titlecase */
    2395                 :     "" /* conditions */
    2396                 :   },
    2397                 :   {  /* index: 13 */
    2398                 :     0xFB16,
    2399                 :     { 0xFB16, 0x0000, 0x0000 }, /* lowercase */
    2400                 :     { 0x054E, 0x0546, 0x0000 }, /* uppercase */
    2401                 :     { 0x054E, 0x0576, 0x0000 }, /* titlecase */
    2402                 :     "" /* conditions */
    2403                 :   },
    2404                 :   {  /* index: 14 */
    2405                 :     0xFB17,
    2406                 :     { 0xFB17, 0x0000, 0x0000 }, /* lowercase */
    2407                 :     { 0x0544, 0x053D, 0x0000 }, /* uppercase */
    2408                 :     { 0x0544, 0x056D, 0x0000 }, /* titlecase */
    2409                 :     "" /* conditions */
    2410                 :   },
    2411                 :   {  /* index: 15 */
    2412                 :     0x0149,
    2413                 :     { 0x0149, 0x0000, 0x0000 }, /* lowercase */
    2414                 :     { 0x02BC, 0x004E, 0x0000 }, /* uppercase */
    2415                 :     { 0x02BC, 0x004E, 0x0000 }, /* titlecase */
    2416                 :     "" /* conditions */
    2417                 :   },
    2418                 :   {  /* index: 16 */
    2419                 :     0x0390,
    2420                 :     { 0x0390, 0x0000, 0x0000 }, /* lowercase */
    2421                 :     { 0x0399, 0x0308, 0x0301 }, /* uppercase */
    2422                 :     { 0x0399, 0x0308, 0x0301 }, /* titlecase */
    2423                 :     "" /* conditions */
    2424                 :   },
    2425                 :   {  /* index: 17 */
    2426                 :     0x03B0,
    2427                 :     { 0x03B0, 0x0000, 0x0000 }, /* lowercase */
    2428                 :     { 0x03A5, 0x0308, 0x0301 }, /* uppercase */
    2429                 :     { 0x03A5, 0x0308, 0x0301 }, /* titlecase */
    2430                 :     "" /* conditions */
    2431                 :   },
    2432                 :   {  /* index: 18 */
    2433                 :     0x01F0,
    2434                 :     { 0x01F0, 0x0000, 0x0000 }, /* lowercase */
    2435                 :     { 0x004A, 0x030C, 0x0000 }, /* uppercase */
    2436                 :     { 0x004A, 0x030C, 0x0000 }, /* titlecase */
    2437                 :     "" /* conditions */
    2438                 :   },
    2439                 :   {  /* index: 19 */
    2440                 :     0x1E96,
    2441                 :     { 0x1E96, 0x0000, 0x0000 }, /* lowercase */
    2442                 :     { 0x0048, 0x0331, 0x0000 }, /* uppercase */
    2443                 :     { 0x0048, 0x0331, 0x0000 }, /* titlecase */
    2444                 :     "" /* conditions */
    2445                 :   },
    2446                 :   {  /* index: 20 */
    2447                 :     0x1E97,
    2448                 :     { 0x1E97, 0x0000, 0x0000 }, /* lowercase */
    2449                 :     { 0x0054, 0x0308, 0x0000 }, /* uppercase */
    2450                 :     { 0x0054, 0x0308, 0x0000 }, /* titlecase */
    2451                 :     "" /* conditions */
    2452                 :   },
    2453                 :   {  /* index: 21 */
    2454                 :     0x1E98,
    2455                 :     { 0x1E98, 0x0000, 0x0000 }, /* lowercase */
    2456                 :     { 0x0057, 0x030A, 0x0000 }, /* uppercase */
    2457                 :     { 0x0057, 0x030A, 0x0000 }, /* titlecase */
    2458                 :     "" /* conditions */
    2459                 :   },
    2460                 :   {  /* index: 22 */
    2461                 :     0x1E99,
    2462                 :     { 0x1E99, 0x0000, 0x0000 }, /* lowercase */
    2463                 :     { 0x0059, 0x030A, 0x0000 }, /* uppercase */
    2464                 :     { 0x0059, 0x030A, 0x0000 }, /* titlecase */
    2465                 :     "" /* conditions */
    2466                 :   },
    2467                 :   {  /* index: 23 */
    2468                 :     0x1E9A,
    2469                 :     { 0x1E9A, 0x0000, 0x0000 }, /* lowercase */
    2470                 :     { 0x0041, 0x02BE, 0x0000 }, /* uppercase */
    2471                 :     { 0x0041, 0x02BE, 0x0000 }, /* titlecase */
    2472                 :     "" /* conditions */
    2473                 :   },
    2474                 :   {  /* index: 24 */
    2475                 :     0x1F50,
    2476                 :     { 0x1F50, 0x0000, 0x0000 }, /* lowercase */
    2477                 :     { 0x03A5, 0x0313, 0x0000 }, /* uppercase */
    2478                 :     { 0x03A5, 0x0313, 0x0000 }, /* titlecase */
    2479                 :     "" /* conditions */
    2480                 :   },
    2481                 :   {  /* index: 25 */
    2482                 :     0x1F52,
    2483                 :     { 0x1F52, 0x0000, 0x0000 }, /* lowercase */
    2484                 :     { 0x03A5, 0x0313, 0x0300 }, /* uppercase */
    2485                 :     { 0x03A5, 0x0313, 0x0300 }, /* titlecase */
    2486                 :     "" /* conditions */
    2487                 :   },
    2488                 :   {  /* index: 26 */
    2489                 :     0x1F54,
    2490                 :     { 0x1F54, 0x0000, 0x0000 }, /* lowercase */
    2491                 :     { 0x03A5, 0x0313, 0x0301 }, /* uppercase */
    2492                 :     { 0x03A5, 0x0313, 0x0301 }, /* titlecase */
    2493                 :     "" /* conditions */
    2494                 :   },
    2495                 :   {  /* index: 27 */
    2496                 :     0x1F56,
    2497                 :     { 0x1F56, 0x0000, 0x0000 }, /* lowercase */
    2498                 :     { 0x03A5, 0x0313, 0x0342 }, /* uppercase */
    2499                 :     { 0x03A5, 0x0313, 0x0342 }, /* titlecase */
    2500                 :     "" /* conditions */
    2501                 :   },
    2502                 :   {  /* index: 28 */
    2503                 :     0x1FB6,
    2504                 :     { 0x1FB6, 0x0000, 0x0000 }, /* lowercase */
    2505                 :     { 0x0391, 0x0342, 0x0000 }, /* uppercase */
    2506                 :     { 0x0391, 0x0342, 0x0000 }, /* titlecase */
    2507                 :     "" /* conditions */
    2508                 :   },
    2509                 :   {  /* index: 29 */
    2510                 :     0x1FC6,
    2511                 :     { 0x1FC6, 0x0000, 0x0000 }, /* lowercase */
    2512                 :     { 0x0397, 0x0342, 0x0000 }, /* uppercase */
    2513                 :     { 0x0397, 0x0342, 0x0000 }, /* titlecase */
    2514                 :     "" /* conditions */
    2515                 :   },
    2516                 :   {  /* index: 30 */
    2517                 :     0x1FD2,
    2518                 :     { 0x1FD2, 0x0000, 0x0000 }, /* lowercase */
    2519                 :     { 0x0399, 0x0308, 0x0300 }, /* uppercase */
    2520                 :     { 0x0399, 0x0308, 0x0300 }, /* titlecase */
    2521                 :     "" /* conditions */
    2522                 :   },
    2523                 :   {  /* index: 31 */
    2524                 :     0x1FD3,
    2525                 :     { 0x1FD3, 0x0000, 0x0000 }, /* lowercase */
    2526                 :     { 0x0399, 0x0308, 0x0301 }, /* uppercase */
    2527                 :     { 0x0399, 0x0308, 0x0301 }, /* titlecase */
    2528                 :     "" /* conditions */
    2529                 :   },
    2530                 :   {  /* index: 32 */
    2531                 :     0x1FD6,
    2532                 :     { 0x1FD6, 0x0000, 0x0000 }, /* lowercase */
    2533                 :     { 0x0399, 0x0342, 0x0000 }, /* uppercase */
    2534                 :     { 0x0399, 0x0342, 0x0000 }, /* titlecase */
    2535                 :     "" /* conditions */
    2536                 :   },
    2537                 :   {  /* index: 33 */
    2538                 :     0x1FD7,
    2539                 :     { 0x1FD7, 0x0000, 0x0000 }, /* lowercase */
    2540                 :     { 0x0399, 0x0308, 0x0342 }, /* uppercase */
    2541                 :     { 0x0399, 0x0308, 0x0342 }, /* titlecase */
    2542                 :     "" /* conditions */
    2543                 :   },
    2544                 :   {  /* index: 34 */
    2545                 :     0x1FE2,
    2546                 :     { 0x1FE2, 0x0000, 0x0000 }, /* lowercase */
    2547                 :     { 0x03A5, 0x0308, 0x0300 }, /* uppercase */
    2548                 :     { 0x03A5, 0x0308, 0x0300 }, /* titlecase */
    2549                 :     "" /* conditions */
    2550                 :   },
    2551                 :   {  /* index: 35 */
    2552                 :     0x1FE3,
    2553                 :     { 0x1FE3, 0x0000, 0x0000 }, /* lowercase */
    2554                 :     { 0x03A5, 0x0308, 0x0301 }, /* uppercase */
    2555                 :     { 0x03A5, 0x0308, 0x0301 }, /* titlecase */
    2556                 :     "" /* conditions */
    2557                 :   },
    2558                 :   {  /* index: 36 */
    2559                 :     0x1FE4,
    2560                 :     { 0x1FE4, 0x0000, 0x0000 }, /* lowercase */
    2561                 :     { 0x03A1, 0x0313, 0x0000 }, /* uppercase */
    2562                 :     { 0x03A1, 0x0313, 0x0000 }, /* titlecase */
    2563                 :     "" /* conditions */
    2564                 :   },
    2565                 :   {  /* index: 37 */
    2566                 :     0x1FE6,
    2567                 :     { 0x1FE6, 0x0000, 0x0000 }, /* lowercase */
    2568                 :     { 0x03A5, 0x0342, 0x0000 }, /* uppercase */
    2569                 :     { 0x03A5, 0x0342, 0x0000 }, /* titlecase */
    2570                 :     "" /* conditions */
    2571                 :   },
    2572                 :   {  /* index: 38 */
    2573                 :     0x1FE7,
    2574                 :     { 0x1FE7, 0x0000, 0x0000 }, /* lowercase */
    2575                 :     { 0x03A5, 0x0308, 0x0342 }, /* uppercase */
    2576                 :     { 0x03A5, 0x0308, 0x0342 }, /* titlecase */
    2577                 :     "" /* conditions */
    2578                 :   },
    2579                 :   {  /* index: 39 */
    2580                 :     0x1FF6,
    2581                 :     { 0x1FF6, 0x0000, 0x0000 }, /* lowercase */
    2582                 :     { 0x03A9, 0x0342, 0x0000 }, /* uppercase */
    2583                 :     { 0x03A9, 0x0342, 0x0000 }, /* titlecase */
    2584                 :     "" /* conditions */
    2585                 :   },
    2586                 :   {  /* index: 40 */
    2587                 :     0x1F80,
    2588                 :     { 0x1F80, 0x0000, 0x0000 }, /* lowercase */
    2589                 :     { 0x1F08, 0x0399, 0x0000 }, /* uppercase */
    2590                 :     { 0x1F88, 0x0000, 0x0000 }, /* titlecase */
    2591                 :     "" /* conditions */
    2592                 :   },
    2593                 :   {  /* index: 41 */
    2594                 :     0x1F81,
    2595                 :     { 0x1F81, 0x0000, 0x0000 }, /* lowercase */
    2596                 :     { 0x1F09, 0x0399, 0x0000 }, /* uppercase */
    2597                 :     { 0x1F89, 0x0000, 0x0000 }, /* titlecase */
    2598                 :     "" /* conditions */
    2599                 :   },
    2600                 :   {  /* index: 42 */
    2601                 :     0x1F82,
    2602                 :     { 0x1F82, 0x0000, 0x0000 }, /* lowercase */
    2603                 :     { 0x1F0A, 0x0399, 0x0000 }, /* uppercase */
    2604                 :     { 0x1F8A, 0x0000, 0x0000 }, /* titlecase */
    2605                 :     "" /* conditions */
    2606                 :   },
    2607                 :   {  /* index: 43 */
    2608                 :     0x1F83,
    2609                 :     { 0x1F83, 0x0000, 0x0000 }, /* lowercase */
    2610                 :     { 0x1F0B, 0x0399, 0x0000 }, /* uppercase */
    2611                 :     { 0x1F8B, 0x0000, 0x0000 }, /* titlecase */
    2612                 :     "" /* conditions */
    2613                 :   },
    2614                 :   {  /* index: 44 */
    2615                 :     0x1F84,
    2616                 :     { 0x1F84, 0x0000, 0x0000 }, /* lowercase */
    2617                 :     { 0x1F0C, 0x0399, 0x0000 }, /* uppercase */
    2618                 :     { 0x1F8C, 0x0000, 0x0000 }, /* titlecase */
    2619                 :     "" /* conditions */
    2620                 :   },
    2621                 :   {  /* index: 45 */
    2622                 :     0x1F85,
    2623                 :     { 0x1F85, 0x0000, 0x0000 }, /* lowercase */
    2624                 :     { 0x1F0D, 0x0399, 0x0000 }, /* uppercase */
    2625                 :     { 0x1F8D, 0x0000, 0x0000 }, /* titlecase */
    2626                 :     "" /* conditions */
    2627                 :   },
    2628                 :   {  /* index: 46 */
    2629                 :     0x1F86,
    2630                 :     { 0x1F86, 0x0000, 0x0000 }, /* lowercase */
    2631                 :     { 0x1F0E, 0x0399, 0x0000 }, /* uppercase */
    2632                 :     { 0x1F8E, 0x0000, 0x0000 }, /* titlecase */
    2633                 :     "" /* conditions */
    2634                 :   },
    2635                 :   {  /* index: 47 */
    2636                 :     0x1F87,
    2637                 :     { 0x1F87, 0x0000, 0x0000 }, /* lowercase */
    2638                 :     { 0x1F0F, 0x0399, 0x0000 }, /* uppercase */
    2639                 :     { 0x1F8F, 0x0000, 0x0000 }, /* titlecase */
    2640                 :     "" /* conditions */
    2641                 :   },
    2642                 :   {  /* index: 48 */
    2643                 :     0x1F88,
    2644                 :     { 0x1F80, 0x0000, 0x0000 }, /* lowercase */
    2645                 :     { 0x1F08, 0x0399, 0x0000 }, /* uppercase */
    2646                 :     { 0x1F88, 0x0000, 0x0000 }, /* titlecase */
    2647                 :     "" /* conditions */
    2648                 :   },
    2649                 :   {  /* index: 49 */
    2650                 :     0x1F89,
    2651                 :     { 0x1F81, 0x0000, 0x0000 }, /* lowercase */
    2652                 :     { 0x1F09, 0x0399, 0x0000 }, /* uppercase */
    2653                 :     { 0x1F89, 0x0000, 0x0000 }, /* titlecase */
    2654                 :     "" /* conditions */
    2655                 :   },
    2656                 :   {  /* index: 50 */
    2657                 :     0x1F8A,
    2658                 :     { 0x1F82, 0x0000, 0x0000 }, /* lowercase */
    2659                 :     { 0x1F0A, 0x0399, 0x0000 }, /* uppercase */
    2660                 :     { 0x1F8A, 0x0000, 0x0000 }, /* titlecase */
    2661                 :     "" /* conditions */
    2662                 :   },
    2663                 :   {  /* index: 51 */
    2664                 :     0x1F8B,
    2665                 :     { 0x1F83, 0x0000, 0x0000 }, /* lowercase */
    2666                 :     { 0x1F0B, 0x0399, 0x0000 }, /* uppercase */
    2667                 :     { 0x1F8B, 0x0000, 0x0000 }, /* titlecase */
    2668                 :     "" /* conditions */
    2669                 :   },
    2670                 :   {  /* index: 52 */
    2671                 :     0x1F8C,
    2672                 :     { 0x1F84, 0x0000, 0x0000 }, /* lowercase */
    2673                 :     { 0x1F0C, 0x0399, 0x0000 }, /* uppercase */
    2674                 :     { 0x1F8C, 0x0000, 0x0000 }, /* titlecase */
    2675                 :     "" /* conditions */
    2676                 :   },
    2677                 :   {  /* index: 53 */
    2678                 :     0x1F8D,
    2679                 :     { 0x1F85, 0x0000, 0x0000 }, /* lowercase */
    2680                 :     { 0x1F0D, 0x0399, 0x0000 }, /* uppercase */
    2681                 :     { 0x1F8D, 0x0000, 0x0000 }, /* titlecase */
    2682                 :     "" /* conditions */
    2683                 :   },
    2684                 :   {  /* index: 54 */
    2685                 :     0x1F8E,
    2686                 :     { 0x1F86, 0x0000, 0x0000 }, /* lowercase */
    2687                 :     { 0x1F0E, 0x0399, 0x0000 }, /* uppercase */
    2688                 :     { 0x1F8E, 0x0000, 0x0000 }, /* titlecase */
    2689                 :     "" /* conditions */
    2690                 :   },
    2691                 :   {  /* index: 55 */
    2692                 :     0x1F8F,
    2693                 :     { 0x1F87, 0x0000, 0x0000 }, /* lowercase */
    2694                 :     { 0x1F0F, 0x0399, 0x0000 }, /* uppercase */
    2695                 :     { 0x1F8F, 0x0000, 0x0000 }, /* titlecase */
    2696                 :     "" /* conditions */
    2697                 :   },
    2698                 :   {  /* index: 56 */
    2699                 :     0x1F90,
    2700                 :     { 0x1F90, 0x0000, 0x0000 }, /* lowercase */
    2701                 :     { 0x1F28, 0x0399, 0x0000 }, /* uppercase */
    2702                 :     { 0x1F98, 0x0000, 0x0000 }, /* titlecase */
    2703                 :     "" /* conditions */
    2704                 :   },
    2705                 :   {  /* index: 57 */
    2706                 :     0x1F91,
    2707                 :     { 0x1F91, 0x0000, 0x0000 }, /* lowercase */
    2708                 :     { 0x1F29, 0x0399, 0x0000 }, /* uppercase */
    2709                 :     { 0x1F99, 0x0000, 0x0000 }, /* titlecase */
    2710                 :     "" /* conditions */
    2711                 :   },
    2712                 :   {  /* index: 58 */
    2713                 :     0x1F92,
    2714                 :     { 0x1F92, 0x0000, 0x0000 }, /* lowercase */
    2715                 :     { 0x1F2A, 0x0399, 0x0000 }, /* uppercase */
    2716                 :     { 0x1F9A, 0x0000, 0x0000 }, /* titlecase */
    2717                 :     "" /* conditions */
    2718                 :   },
    2719                 :   {  /* index: 59 */
    2720                 :     0x1F93,
    2721                 :     { 0x1F93, 0x0000, 0x0000 }, /* lowercase */
    2722                 :     { 0x1F2B, 0x0399, 0x0000 }, /* uppercase */
    2723                 :     { 0x1F9B, 0x0000, 0x0000 }, /* titlecase */
    2724                 :     "" /* conditions */
    2725                 :   },
    2726                 :   {  /* index: 60 */
    2727                 :     0x1F94,
    2728                 :     { 0x1F94, 0x0000, 0x0000 }, /* lowercase */
    2729                 :     { 0x1F2C, 0x0399, 0x0000 }, /* uppercase */
    2730                 :     { 0x1F9C, 0x0000, 0x0000 }, /* titlecase */
    2731                 :     "" /* conditions */
    2732                 :   },
    2733                 :   {  /* index: 61 */
    2734                 :     0x1F95,
    2735                 :     { 0x1F95, 0x0000, 0x0000 }, /* lowercase */
    2736                 :     { 0x1F2D, 0x0399, 0x0000 }, /* uppercase */
    2737                 :     { 0x1F9D, 0x0000, 0x0000 }, /* titlecase */
    2738                 :     "" /* conditions */
    2739                 :   },
    2740                 :   {  /* index: 62 */
    2741                 :     0x1F96,
    2742                 :     { 0x1F96, 0x0000, 0x0000 }, /* lowercase */
    2743                 :     { 0x1F2E, 0x0399, 0x0000 }, /* uppercase */
    2744                 :     { 0x1F9E, 0x0000, 0x0000 }, /* titlecase */
    2745                 :     "" /* conditions */
    2746                 :   },
    2747                 :   {  /* index: 63 */
    2748                 :     0x1F97,
    2749                 :     { 0x1F97, 0x0000, 0x0000 }, /* lowercase */
    2750                 :     { 0x1F2F, 0x0399, 0x0000 }, /* uppercase */
    2751                 :     { 0x1F9F, 0x0000, 0x0000 }, /* titlecase */
    2752                 :     "" /* conditions */
    2753                 :   },
    2754                 :   {  /* index: 64 */
    2755                 :     0x1F98,
    2756                 :     { 0x1F90, 0x0000, 0x0000 }, /* lowercase */
    2757                 :     { 0x1F28, 0x0399, 0x0000 }, /* uppercase */
    2758                 :     { 0x1F98, 0x0000, 0x0000 }, /* titlecase */
    2759                 :     "" /* conditions */
    2760                 :   },
    2761                 :   {  /* index: 65 */
    2762                 :     0x1F99,
    2763                 :     { 0x1F91, 0x0000, 0x0000 }, /* lowercase */
    2764                 :     { 0x1F29, 0x0399, 0x0000 }, /* uppercase */
    2765                 :     { 0x1F99, 0x0000, 0x0000 }, /* titlecase */
    2766                 :     "" /* conditions */
    2767                 :   },
    2768                 :   {  /* index: 66 */
    2769                 :     0x1F9A,
    2770                 :     { 0x1F92, 0x0000, 0x0000 }, /* lowercase */
    2771                 :     { 0x1F2A, 0x0399, 0x0000 }, /* uppercase */
    2772                 :     { 0x1F9A, 0x0000, 0x0000 }, /* titlecase */
    2773                 :     "" /* conditions */
    2774                 :   },
    2775                 :   {  /* index: 67 */
    2776                 :     0x1F9B,
    2777                 :     { 0x1F93, 0x0000, 0x0000 }, /* lowercase */
    2778                 :     { 0x1F2B, 0x0399, 0x0000 }, /* uppercase */
    2779                 :     { 0x1F9B, 0x0000, 0x0000 }, /* titlecase */
    2780                 :     "" /* conditions */
    2781                 :   },
    2782                 :   {  /* index: 68 */
    2783                 :     0x1F9C,
    2784                 :     { 0x1F94, 0x0000, 0x0000 }, /* lowercase */
    2785                 :     { 0x1F2C, 0x0399, 0x0000 }, /* uppercase */
    2786                 :     { 0x1F9C, 0x0000, 0x0000 }, /* titlecase */
    2787                 :     "" /* conditions */
    2788                 :   },
    2789                 :   {  /* index: 69 */
    2790                 :     0x1F9D,
    2791                 :     { 0x1F95, 0x0000, 0x0000 }, /* lowercase */
    2792                 :     { 0x1F2D, 0x0399, 0x0000 }, /* uppercase */
    2793                 :     { 0x1F9D, 0x0000, 0x0000 }, /* titlecase */
    2794                 :     "" /* conditions */
    2795                 :   },
    2796                 :   {  /* index: 70 */
    2797                 :     0x1F9E,
    2798                 :     { 0x1F96, 0x0000, 0x0000 }, /* lowercase */
    2799                 :     { 0x1F2E, 0x0399, 0x0000 }, /* uppercase */
    2800                 :     { 0x1F9E, 0x0000, 0x0000 }, /* titlecase */
    2801                 :     "" /* conditions */
    2802                 :   },
    2803                 :   {  /* index: 71 */
    2804                 :     0x1F9F,
    2805                 :     { 0x1F97, 0x0000, 0x0000 }, /* lowercase */
    2806                 :     { 0x1F2F, 0x0399, 0x0000 }, /* uppercase */
    2807                 :     { 0x1F9F, 0x0000, 0x0000 }, /* titlecase */
    2808                 :     "" /* conditions */
    2809                 :   },
    2810                 :   {  /* index: 72 */
    2811                 :     0x1FA0,
    2812                 :     { 0x1FA0, 0x0000, 0x0000 }, /* lowercase */
    2813                 :     { 0x1F68, 0x0399, 0x0000 }, /* uppercase */
    2814                 :     { 0x1FA8, 0x0000, 0x0000 }, /* titlecase */
    2815                 :     "" /* conditions */
    2816                 :   },
    2817                 :   {  /* index: 73 */
    2818                 :     0x1FA1,
    2819                 :     { 0x1FA1, 0x0000, 0x0000 }, /* lowercase */
    2820                 :     { 0x1F69, 0x0399, 0x0000 }, /* uppercase */
    2821                 :     { 0x1FA9, 0x0000, 0x0000 }, /* titlecase */
    2822                 :     "" /* conditions */
    2823                 :   },
    2824                 :   {  /* index: 74 */
    2825                 :     0x1FA2,
    2826                 :     { 0x1FA2, 0x0000, 0x0000 }, /* lowercase */
    2827                 :     { 0x1F6A, 0x0399, 0x0000 }, /* uppercase */
    2828                 :     { 0x1FAA, 0x0000, 0x0000 }, /* titlecase */
    2829                 :     "" /* conditions */
    2830                 :   },
    2831                 :   {  /* index: 75 */
    2832                 :     0x1FA3,
    2833                 :     { 0x1FA3, 0x0000, 0x0000 }, /* lowercase */
    2834                 :     { 0x1F6B, 0x0399, 0x0000 }, /* uppercase */
    2835                 :     { 0x1FAB, 0x0000, 0x0000 }, /* titlecase */
    2836                 :     "" /* conditions */
    2837                 :   },
    2838                 :   {  /* index: 76 */
    2839                 :     0x1FA4,
    2840                 :     { 0x1FA4, 0x0000, 0x0000 }, /* lowercase */
    2841                 :     { 0x1F6C, 0x0399, 0x0000 }, /* uppercase */
    2842                 :     { 0x1FAC, 0x0000, 0x0000 }, /* titlecase */
    2843                 :     "" /* conditions */
    2844                 :   },
    2845                 :   {  /* index: 77 */
    2846                 :     0x1FA5,
    2847                 :     { 0x1FA5, 0x0000, 0x0000 }, /* lowercase */
    2848                 :     { 0x1F6D, 0x0399, 0x0000 }, /* uppercase */
    2849                 :     { 0x1FAD, 0x0000, 0x0000 }, /* titlecase */
    2850                 :     "" /* conditions */
    2851                 :   },
    2852                 :   {  /* index: 78 */
    2853                 :     0x1FA6,
    2854                 :     { 0x1FA6, 0x0000, 0x0000 }, /* lowercase */
    2855                 :     { 0x1F6E, 0x0399, 0x0000 }, /* uppercase */
    2856                 :     { 0x1FAE, 0x0000, 0x0000 }, /* titlecase */
    2857                 :     "" /* conditions */
    2858                 :   },
    2859                 :   {  /* index: 79 */
    2860                 :     0x1FA7,
    2861                 :     { 0x1FA7, 0x0000, 0x0000 }, /* lowercase */
    2862                 :     { 0x1F6F, 0x0399, 0x0000 }, /* uppercase */
    2863                 :     { 0x1FAF, 0x0000, 0x0000 }, /* titlecase */
    2864                 :     "" /* conditions */
    2865                 :   },
    2866                 :   {  /* index: 80 */
    2867                 :     0x1FA8,
    2868                 :     { 0x1FA0, 0x0000, 0x0000 }, /* lowercase */
    2869                 :     { 0x1F68, 0x0399, 0x0000 }, /* uppercase */
    2870                 :     { 0x1FA8, 0x0000, 0x0000 }, /* titlecase */
    2871                 :     "" /* conditions */
    2872                 :   },
    2873                 :   {  /* index: 81 */
    2874                 :     0x1FA9,
    2875                 :     { 0x1FA1, 0x0000, 0x0000 }, /* lowercase */
    2876                 :     { 0x1F69, 0x0399, 0x0000 }, /* uppercase */
    2877                 :     { 0x1FA9, 0x0000, 0x0000 }, /* titlecase */
    2878                 :     "" /* conditions */
    2879                 :   },
    2880                 :   {  /* index: 82 */
    2881                 :     0x1FAA,
    2882                 :     { 0x1FA2, 0x0000, 0x0000 }, /* lowercase */
    2883                 :     { 0x1F6A, 0x0399, 0x0000 }, /* uppercase */
    2884                 :     { 0x1FAA, 0x0000, 0x0000 }, /* titlecase */
    2885                 :     "" /* conditions */
    2886                 :   },
    2887                 :   {  /* index: 83 */
    2888                 :     0x1FAB,
    2889                 :     { 0x1FA3, 0x0000, 0x0000 }, /* lowercase */
    2890                 :     { 0x1F6B, 0x0399, 0x0000 }, /* uppercase */
    2891                 :     { 0x1FAB, 0x0000, 0x0000 }, /* titlecase */
    2892                 :     "" /* conditions */
    2893                 :   },
    2894                 :   {  /* index: 84 */
    2895                 :     0x1FAC,
    2896                 :     { 0x1FA4, 0x0000, 0x0000 }, /* lowercase */
    2897                 :     { 0x1F6C, 0x0399, 0x0000 }, /* uppercase */
    2898                 :     { 0x1FAC, 0x0000, 0x0000 }, /* titlecase */
    2899                 :     "" /* conditions */
    2900                 :   },
    2901                 :   {  /* index: 85 */
    2902                 :     0x1FAD,
    2903                 :     { 0x1FA5, 0x0000, 0x0000 }, /* lowercase */
    2904                 :     { 0x1F6D, 0x0399, 0x0000 }, /* uppercase */
    2905                 :     { 0x1FAD, 0x0000, 0x0000 }, /* titlecase */
    2906                 :     "" /* conditions */
    2907                 :   },
    2908                 :   {  /* index: 86 */
    2909                 :     0x1FAE,
    2910                 :     { 0x1FA6, 0x0000, 0x0000 }, /* lowercase */
    2911                 :     { 0x1F6E, 0x0399, 0x0000 }, /* uppercase */
    2912                 :     { 0x1FAE, 0x0000, 0x0000 }, /* titlecase */
    2913                 :     "" /* conditions */
    2914                 :   },
    2915                 :   {  /* index: 87 */
    2916                 :     0x1FAF,
    2917                 :     { 0x1FA7, 0x0000, 0x0000 }, /* lowercase */
    2918                 :     { 0x1F6F, 0x0399, 0x0000 }, /* uppercase */
    2919                 :     { 0x1FAF, 0x0000, 0x0000 }, /* titlecase */
    2920                 :     "" /* conditions */
    2921                 :   },
    2922                 :   {  /* index: 88 */
    2923                 :     0x1FB3,
    2924                 :     { 0x1FB3, 0x0000, 0x0000 }, /* lowercase */
    2925                 :     { 0x0391, 0x0399, 0x0000 }, /* uppercase */
    2926                 :     { 0x1FBC, 0x0000, 0x0000 }, /* titlecase */
    2927                 :     "" /* conditions */
    2928                 :   },
    2929                 :   {  /* index: 89 */
    2930                 :     0x1FBC,
    2931                 :     { 0x1FB3, 0x0000, 0x0000 }, /* lowercase */
    2932                 :     { 0x0391, 0x0399, 0x0000 }, /* uppercase */
    2933                 :     { 0x1FBC, 0x0000, 0x0000 }, /* titlecase */
    2934                 :     "" /* conditions */
    2935                 :   },
    2936                 :   {  /* index: 90 */
    2937                 :     0x1FC3,
    2938                 :     { 0x1FC3, 0x0000, 0x0000 }, /* lowercase */
    2939                 :     { 0x0397, 0x0399, 0x0000 }, /* uppercase */
    2940                 :     { 0x1FCC, 0x0000, 0x0000 }, /* titlecase */
    2941                 :     "" /* conditions */
    2942                 :   },
    2943                 :   {  /* index: 91 */
    2944                 :     0x1FCC,
    2945                 :     { 0x1FC3, 0x0000, 0x0000 }, /* lowercase */
    2946                 :     { 0x0397, 0x0399, 0x0000 }, /* uppercase */
    2947                 :     { 0x1FCC, 0x0000, 0x0000 }, /* titlecase */
    2948                 :     "" /* conditions */
    2949                 :   },
    2950                 :   {  /* index: 92 */
    2951                 :     0x1FF3,
    2952                 :     { 0x1FF3, 0x0000, 0x0000 }, /* lowercase */
    2953                 :     { 0x03A9, 0x0399, 0x0000 }, /* uppercase */
    2954                 :     { 0x1FFC, 0x0000, 0x0000 }, /* titlecase */
    2955                 :     "" /* conditions */
    2956                 :   },
    2957                 :   {  /* index: 93 */
    2958                 :     0x1FFC,
    2959                 :     { 0x1FF3, 0x0000, 0x0000 }, /* lowercase */
    2960                 :     { 0x03A9, 0x0399, 0x0000 }, /* uppercase */
    2961                 :     { 0x1FFC, 0x0000, 0x0000 }, /* titlecase */
    2962                 :     "" /* conditions */
    2963                 :   },
    2964                 :   {  /* index: 94 */
    2965                 :     0x1FB2,
    2966                 :     { 0x1FB2, 0x0000, 0x0000 }, /* lowercase */
    2967                 :     { 0x1FBA, 0x0399, 0x0000 }, /* uppercase */
    2968                 :     { 0x1FBA, 0x0345, 0x0000 }, /* titlecase */
    2969                 :     "" /* conditions */
    2970                 :   },
    2971                 :   {  /* index: 95 */
    2972                 :     0x1FB4,
    2973                 :     { 0x1FB4, 0x0000, 0x0000 }, /* lowercase */
    2974                 :     { 0x0386, 0x0399, 0x0000 }, /* uppercase */
    2975                 :     { 0x0386, 0x0345, 0x0000 }, /* titlecase */
    2976                 :     "" /* conditions */
    2977                 :   },
    2978                 :   {  /* index: 96 */
    2979                 :     0x1FC2,
    2980                 :     { 0x1FC2, 0x0000, 0x0000 }, /* lowercase */
    2981                 :     { 0x1FCA, 0x0399, 0x0000 }, /* uppercase */
    2982                 :     { 0x1FCA, 0x0345, 0x0000 }, /* titlecase */
    2983                 :     "" /* conditions */
    2984                 :   },
    2985                 :   {  /* index: 97 */
    2986                 :     0x1FC4,
    2987                 :     { 0x1FC4, 0x0000, 0x0000 }, /* lowercase */
    2988                 :     { 0x0389, 0x0399, 0x0000 }, /* uppercase */
    2989                 :     { 0x0389, 0x0345, 0x0000 }, /* titlecase */
    2990                 :     "" /* conditions */
    2991                 :   },
    2992                 :   {  /* index: 98 */
    2993                 :     0x1FF2,
    2994                 :     { 0x1FF2, 0x0000, 0x0000 }, /* lowercase */
    2995                 :     { 0x1FFA, 0x0399, 0x0000 }, /* uppercase */
    2996                 :     { 0x1FFA, 0x0345, 0x0000 }, /* titlecase */
    2997                 :     "" /* conditions */
    2998                 :   },
    2999                 :   {  /* index: 99 */
    3000                 :     0x1FF4,
    3001                 :     { 0x1FF4, 0x0000, 0x0000 }, /* lowercase */
    3002                 :     { 0x038F, 0x0399, 0x0000 }, /* uppercase */
    3003                 :     { 0x038F, 0x0345, 0x0000 }, /* titlecase */
    3004                 :     "" /* conditions */
    3005                 :   },
    3006                 :   {  /* index: 100 */
    3007                 :     0x1FB7,
    3008                 :     { 0x1FB7, 0x0000, 0x0000 }, /* lowercase */
    3009                 :     { 0x0391, 0x0342, 0x0399 }, /* uppercase */
    3010                 :     { 0x0391, 0x0342, 0x0345 }, /* titlecase */
    3011                 :     "" /* conditions */
    3012                 :   },
    3013                 :   {  /* index: 101 */
    3014                 :     0x1FC7,
    3015                 :     { 0x1FC7, 0x0000, 0x0000 }, /* lowercase */
    3016                 :     { 0x0397, 0x0342, 0x0399 }, /* uppercase */
    3017                 :     { 0x0397, 0x0342, 0x0345 }, /* titlecase */
    3018                 :     "" /* conditions */
    3019                 :   },
    3020                 :   {  /* index: 102 */
    3021                 :     0x1FF7,
    3022                 :     { 0x1FF7, 0x0000, 0x0000 }, /* lowercase */
    3023                 :     { 0x03A9, 0x0342, 0x0399 }, /* uppercase */
    3024                 :     { 0x03A9, 0x0342, 0x0345 }, /* titlecase */
    3025                 :     "" /* conditions */
    3026                 :   },
    3027                 :   {  /* index: 103 */
    3028                 :     0x03A3,
    3029                 :     { 0x03C2, 0x0000, 0x0000 }, /* lowercase */
    3030                 :     { 0x03A3, 0x0000, 0x0000 }, /* uppercase */
    3031                 :     { 0x03A3, 0x0000, 0x0000 }, /* titlecase */
    3032                 :     "Final_Sigma" /* conditions */
    3033                 :   },
    3034                 :   {  /* index: 104 */
    3035                 :     0x0307,
    3036                 :     { 0x0307, 0x0000, 0x0000 }, /* lowercase */
    3037                 :     { 0x0000, 0x0000, 0x0000 }, /* uppercase */
    3038                 :     { 0x0000, 0x0000, 0x0000 }, /* titlecase */
    3039                 :     "lt After_Soft_Dotted" /* conditions */
    3040                 :   },
    3041                 :   {  /* index: 105 */
    3042                 :     0x0049,
    3043                 :     { 0x0069, 0x0307, 0x0000 }, /* lowercase */
    3044                 :     { 0x0049, 0x0000, 0x0000 }, /* uppercase */
    3045                 :     { 0x0049, 0x0000, 0x0000 }, /* titlecase */
    3046                 :     "lt More_Above" /* conditions */
    3047                 :   },
    3048                 :   {  /* index: 106 */
    3049                 :     0x004A,
    3050                 :     { 0x006A, 0x0307, 0x0000 }, /* lowercase */
    3051                 :     { 0x004A, 0x0000, 0x0000 }, /* uppercase */
    3052                 :     { 0x004A, 0x0000, 0x0000 }, /* titlecase */
    3053                 :     "lt More_Above" /* conditions */
    3054                 :   },
    3055                 :   {  /* index: 107 */
    3056                 :     0x012E,
    3057                 :     { 0x012F, 0x0307, 0x0000 }, /* lowercase */
    3058                 :     { 0x012E, 0x0000, 0x0000 }, /* uppercase */
    3059                 :     { 0x012E, 0x0000, 0x0000 }, /* titlecase */
    3060                 :     "lt More_Above" /* conditions */
    3061                 :   },
    3062                 :   {  /* index: 108 */
    3063                 :     0x00CC,
    3064                 :     { 0x0069, 0x0307, 0x0300 }, /* lowercase */
    3065                 :     { 0x00CC, 0x0000, 0x0000 }, /* uppercase */
    3066                 :     { 0x00CC, 0x0000, 0x0000 }, /* titlecase */
    3067                 :     "lt" /* conditions */
    3068                 :   },
    3069                 :   {  /* index: 109 */
    3070                 :     0x00CD,
    3071                 :     { 0x0069, 0x0307, 0x0301 }, /* lowercase */
    3072                 :     { 0x00CD, 0x0000, 0x0000 }, /* uppercase */
    3073                 :     { 0x00CD, 0x0000, 0x0000 }, /* titlecase */
    3074                 :     "lt" /* conditions */
    3075                 :   },
    3076                 :   {  /* index: 110 */
    3077                 :     0x0128,
    3078                 :     { 0x0069, 0x0307, 0x0303 }, /* lowercase */
    3079                 :     { 0x0128, 0x0000, 0x0000 }, /* uppercase */
    3080                 :     { 0x0128, 0x0000, 0x0000 }, /* titlecase */
    3081                 :     "lt" /* conditions */
    3082                 :   },
    3083                 :   {  /* index: 111 */
    3084                 :     0x0130,
    3085                 :     { 0x0069, 0x0000, 0x0000 }, /* lowercase */
    3086                 :     { 0x0130, 0x0000, 0x0000 }, /* uppercase */
    3087                 :     { 0x0130, 0x0000, 0x0000 }, /* titlecase */
    3088                 :     "tr" /* conditions */
    3089                 :   },
    3090                 :   {  /* index: 112 */
    3091                 :     0x0130,
    3092                 :     { 0x0069, 0x0000, 0x0000 }, /* lowercase */
    3093                 :     { 0x0130, 0x0000, 0x0000 }, /* uppercase */
    3094                 :     { 0x0130, 0x0000, 0x0000 }, /* titlecase */
    3095                 :     "az" /* conditions */
    3096                 :   },
    3097                 :   {  /* index: 113 */
    3098                 :     0x0307,
    3099                 :     { 0x0000, 0x0000, 0x0000 }, /* lowercase */
    3100                 :     { 0x0307, 0x0000, 0x0000 }, /* uppercase */
    3101                 :     { 0x0307, 0x0000, 0x0000 }, /* titlecase */
    3102                 :     "tr After_I" /* conditions */
    3103                 :   },
    3104                 :   {  /* index: 114 */
    3105                 :     0x0307,
    3106                 :     { 0x0000, 0x0000, 0x0000 }, /* lowercase */
    3107                 :     { 0x0307, 0x0000, 0x0000 }, /* uppercase */
    3108                 :     { 0x0307, 0x0000, 0x0000 }, /* titlecase */
    3109                 :     "az After_I" /* conditions */
    3110                 :   },
    3111                 :   {  /* index: 115 */
    3112                 :     0x0049,
    3113                 :     { 0x0131, 0x0000, 0x0000 }, /* lowercase */
    3114                 :     { 0x0049, 0x0000, 0x0000 }, /* uppercase */
    3115                 :     { 0x0049, 0x0000, 0x0000 }, /* titlecase */
    3116                 :     "tr Not_Before_Dot" /* conditions */
    3117                 :   },
    3118                 :   {  /* index: 116 */
    3119                 :     0x0049,
    3120                 :     { 0x0131, 0x0000, 0x0000 }, /* lowercase */
    3121                 :     { 0x0049, 0x0000, 0x0000 }, /* uppercase */
    3122                 :     { 0x0049, 0x0000, 0x0000 }, /* titlecase */
    3123                 :     "az Not_Before_Dot" /* conditions */
    3124                 :   },
    3125                 :   {  /* index: 117 */
    3126                 :     0x0069,
    3127                 :     { 0x0069, 0x0000, 0x0000 }, /* lowercase */
    3128                 :     { 0x0130, 0x0000, 0x0000 }, /* uppercase */
    3129                 :     { 0x0130, 0x0000, 0x0000 }, /* titlecase */
    3130                 :     "tr" /* conditions */
    3131                 :   },
    3132                 :   {  /* index: 118 */
    3133                 :     0x0069,
    3134                 :     { 0x0069, 0x0000, 0x0000 }, /* lowercase */
    3135                 :     { 0x0130, 0x0000, 0x0000 }, /* uppercase */
    3136                 :     { 0x0130, 0x0000, 0x0000 }, /* titlecase */
    3137                 :     "az" /* conditions */
    3138                 :   },
    3139                 : };
    3140                 : 
    3141                 : 
    3142                 : /***************** END OF SELF-GENERATED DATA *********************************/
    3143                 : 
    3144                 : 
    3145                 : /* Final_Sigma condition in Special Case algorithms
    3146                 :  *  When the given character is preceded by a sequence consisting of a
    3147                 :  *  cased unicode point (with case information) and a case-ignorable
    3148                 :  *  (without case information) sequence of points. The given character
    3149                 :  *  must no be followed by a sequence consisting of a case-ignorable
    3150                 :  *  sequence and a cased letter. */
    3151                 : static pdf_bool_t
    3152                 : pdf_text_ucd_Final_Sigma(const pdf_text_ucd_context_t *context)
    3153              12 : {
    3154                 :   pdf_char_t *walker;
    3155                 :   short stop;
    3156                 :   int n_case_ignorable;
    3157                 :   int cased_found;
    3158                 : 
    3159              12 :   if((context->unicode_point < context->context_start) || \
    3160                 :      (context->unicode_point > context->context_stop))
    3161                 :     {
    3162                 :       PDF_DEBUG_BASE("Unicode point outside context interval");
    3163                 :       /* The unicode point must not be outside the context interval */
    3164               0 :       return PDF_FALSE;
    3165                 :     }
    3166                 : 
    3167              12 :   if(context->unicode_point == context->context_start)
    3168                 :     {
    3169                 :       /* If the unicode point is the start of the context, then it is impossible
    3170                 :        *  to have a sequence before it */
    3171               5 :       return PDF_FALSE;
    3172                 :     }
    3173                 : 
    3174                 :   /*----- Check backward -----*/
    3175                 : 
    3176               7 :   n_case_ignorable = 0;
    3177               7 :   walker = (pdf_char_t *)(context->unicode_point - 4);
    3178               7 :   stop = 0;
    3179               7 :   cased_found = 0;
    3180              25 :   while(!stop)
    3181                 :     {
    3182              11 :       if(walker < context->context_start)
    3183                 :         {
    3184                 :           /* Arrived to context start, stop loop */
    3185               0 :           stop = 1;
    3186                 :         }
    3187                 :       else
    3188                 :         {
    3189                 :           pdf_u32_t aux_point;
    3190              11 :           memcpy(&aux_point, walker, 4);
    3191              11 :           if(pdf_text_ucd_is_case_ignorable(aux_point))
    3192                 :             {
    3193               4 :               n_case_ignorable++;
    3194                 :             }
    3195               7 :           else if(pdf_text_ucd_is_cased(aux_point))
    3196                 :             {
    3197               7 :               cased_found = 1;  /* Cased char found, stop loop */
    3198               7 :               stop = 1;
    3199                 :             }
    3200              11 :           if(!stop)
    3201                 :             {
    3202               4 :               walker -= 4; /* Point to previous UTF-32 char */
    3203                 :             }
    3204                 :         }
    3205                 :     }
    3206                 : 
    3207                 :   /* Check status of previous characters */
    3208               7 :   if((cased_found == 1) && \
    3209                 :      (n_case_ignorable >= 0))
    3210                 :     {
    3211                 :       /*----- Check forward -----*/
    3212                 : 
    3213               7 :       walker = (pdf_char_t *)(context->unicode_point + 4);
    3214               7 :       stop = 0;
    3215               7 :       cased_found = 0;
    3216               7 :       n_case_ignorable = 0;
    3217              21 :       while(!stop)
    3218                 :         {
    3219               7 :           if(walker > context->context_stop)
    3220                 :             {
    3221                 :               /* Arrived to context end, stop loop */
    3222               6 :               stop = 1;
    3223                 :             }
    3224                 :           else
    3225                 :             {
    3226                 :               pdf_u32_t aux_point;
    3227               1 :               memcpy(&aux_point, walker, 4);
    3228               1 :               if(pdf_text_ucd_is_case_ignorable(aux_point))
    3229                 :                 {
    3230               0 :                   n_case_ignorable++;
    3231                 :                 }
    3232               1 :               else if(pdf_text_ucd_is_cased(aux_point))
    3233                 :                 {
    3234               1 :                   cased_found = 1;  /* Cased char found, stop loop */
    3235               1 :                   stop = 1;
    3236                 :                 }
    3237               1 :               if(!stop)
    3238                 :                 {
    3239               0 :                   walker += 4; /* Point to next UTF-32 char */
    3240                 :                 }
    3241                 :             }
    3242                 :         }
    3243                 : 
    3244                 :       /* Check status of next characters */
    3245               7 :       if((cased_found == 0) && \
    3246                 :          (n_case_ignorable == 0))
    3247                 :         {
    3248               6 :           return PDF_TRUE;
    3249                 :         }
    3250                 :     }
    3251                 : 
    3252               1 :   return PDF_FALSE;
    3253                 : }
    3254                 : 
    3255                 : 
    3256                 : /* After_Soft_Dotted condition in Special Case algorithms
    3257                 :  *  There is a character with the Soft_Dotted property before the character to
    3258                 :  *  convert, with no intervening character of combining class 0 or 230.
    3259                 :  */
    3260                 : static pdf_bool_t
    3261                 : pdf_text_ucd_After_Soft_Dotted(const pdf_text_ucd_context_t *context)
    3262               6 : {
    3263                 :   pdf_char_t *walker;
    3264                 :   short stop;
    3265                 :   int n_combclass230;
    3266                 :   int n_combclass0;
    3267                 :   int soft_dotted_found;
    3268                 : 
    3269               6 :   if((context->unicode_point < context->context_start) || \
    3270                 :      (context->unicode_point > context->context_stop))
    3271                 :     {
    3272                 :       PDF_DEBUG_BASE("Unicode point outside context interval");
    3273                 :       /* The unicode point must not be outside the context interval */
    3274               0 :       return PDF_FALSE;
    3275                 :     }
    3276                 : 
    3277               6 :   if(context->unicode_point == context->context_start)
    3278                 :     {
    3279                 :       PDF_DEBUG_BASE("Unicode point is context start");
    3280                 :       /* If the unicode point is the start of the context, then it is impossible
    3281                 :        *  to have a sequence before it */
    3282               0 :       return PDF_FALSE;
    3283                 :     }
    3284                 : 
    3285                 :   /*----- Check backward -----*/
    3286                 : 
    3287               6 :   n_combclass0 = 0;
    3288               6 :   n_combclass230 = 0;
    3289               6 :   soft_dotted_found = 0;
    3290               6 :   walker = (pdf_char_t *)(context->unicode_point - 4);
    3291               6 :   stop = 0;
    3292              21 :   while(!stop)
    3293                 :     {
    3294               9 :       if(walker < context->context_start)
    3295                 :         {
    3296                 :           /* Arrived to context start, stop loop */
    3297               0 :           stop = 1;
    3298                 :         }
    3299                 :       else
    3300                 :         {
    3301                 :           pdf_u32_t aux_point;
    3302               9 :           memcpy(&aux_point, walker, 4);
    3303                 : 
    3304                 :           /* Check for point being Soft_Dotted before checking combining class,
    3305                 :            * as the Soft_Dotted character can also be of combining class 0 */
    3306               9 :           if(pdf_text_ucd_pl_is_Soft_Dotted(aux_point))
    3307                 :             {
    3308               6 :               soft_dotted_found = 1;
    3309               6 :               stop = 1;
    3310                 :             }
    3311                 :           else
    3312                 :             {
    3313                 :               pdf_u8_t comb_class;
    3314               3 :               comb_class = pdf_text_ucd_get_combining_class(aux_point);
    3315               3 :               switch(comb_class)
    3316                 :               {
    3317                 :                 case 0:
    3318               0 :                   n_combclass0++;
    3319               0 :                   break;
    3320                 :                 case 230:
    3321               3 :                   n_combclass230++;
    3322                 :                   break;
    3323                 :                 default:
    3324                 :                   break;
    3325                 :               }
    3326                 :             }
    3327                 : 
    3328               9 :           if(!stop)
    3329                 :             {
    3330               3 :               walker -= 4; /* Point to previous UTF-32 char */
    3331                 :             }
    3332                 :         }
    3333                 :     }
    3334                 : 
    3335               6 :   return (((soft_dotted_found) && \
    3336                 :            (n_combclass0 == 0) && \
    3337                 :            (n_combclass230 == 0)) ? PDF_TRUE : PDF_FALSE);
    3338                 : }
    3339                 : 
    3340                 : /* More_Above condition in Special Case algorithms
    3341                 :  *  The character is followed by a character of combining class 230 (Above)
    3342                 :  *  with no intervening character of combining class 0.
    3343                 :  */
    3344                 : static pdf_bool_t
    3345                 : pdf_text_ucd_More_Above(const pdf_text_ucd_context_t *context)
    3346               6 : {
    3347                 :   pdf_char_t *walker;
    3348                 :   short stop;
    3349                 :   int combclass230found;
    3350                 :   int n_combclass0;
    3351                 : 
    3352               6 :   if((context->unicode_point < context->context_start) || \
    3353                 :      (context->unicode_point > context->context_stop))
    3354                 :     {
    3355                 :       PDF_DEBUG_BASE("Unicode point outside context interval");
    3356                 :       /* The unicode point must not be outside the context interval */
    3357               0 :       return PDF_FALSE;
    3358                 :     }
    3359                 : 
    3360               6 :   if(context->unicode_point == context->context_stop)
    3361                 :     {
    3362                 :       /* If the unicode point is the start of the context, then it is impossible
    3363                 :        *  to have a sequence before it */
    3364               0 :       return PDF_FALSE;
    3365                 :     }
    3366                 : 
    3367                 :   /*----- Check forward -----*/
    3368                 : 
    3369               6 :   walker = (pdf_char_t *)(context->unicode_point + 4);
    3370               6 :   stop = 0;
    3371               6 :   combclass230found = 0;
    3372               6 :   n_combclass0 = 0;
    3373              21 :   while(!stop)
    3374                 :     {
    3375               9 :       if(walker > context->context_stop)
    3376                 :         {
    3377                 :           /* Arrived to context end, stop loop */
    3378               0 :           stop = 1;
    3379                 :         }
    3380                 :       else
    3381                 :         {
    3382               9 :           pdf_u8_t combining_class = 0;
    3383                 :           pdf_u32_t aux_point;
    3384               9 :           memcpy(&aux_point, walker, 4);
    3385               9 :           combining_class = pdf_text_ucd_get_combining_class(aux_point);
    3386                 : 
    3387               9 :           if(combining_class == 0)
    3388                 :             {
    3389               3 :               n_combclass0++;
    3390                 :             }
    3391               6 :           else if(combining_class == 230)
    3392                 :             {
    3393               6 :               combclass230found = 1;
    3394               6 :               stop = 1;
    3395                 :             }
    3396               9 :           if(!stop)
    3397                 :             {
    3398               3 :               walker += 4; /* Point to next UTF-32 char */
    3399                 :             }
    3400                 :         }
    3401                 :     }
    3402                 : 
    3403               6 :   return (((combclass230found) && \
    3404                 :            (n_combclass0 == 0)) ? PDF_TRUE : PDF_FALSE);
    3405                 : }
    3406                 : 
    3407                 : /* Before_Dot condition in Special Case algorithms
    3408                 :  *  The character is followed by COMBINING DOT ABOVE (U+0307). Any sequence of
    3409                 :  *  characters with a combining class that is neither 0 nor 230 may intervene
    3410                 :  *  between the current character and the combining dot above.
    3411                 :  */
    3412                 : static pdf_bool_t
    3413                 : pdf_text_ucd_Before_Dot(const pdf_text_ucd_context_t *context)
    3414              18 : {
    3415                 :   pdf_char_t *walker;
    3416                 :   short stop;
    3417                 :   int dotAbovefound;
    3418                 :   int n_combclass0or230;
    3419                 : 
    3420              18 :   if((context->unicode_point < context->context_start) || \
    3421                 :      (context->unicode_point > context->context_stop))
    3422                 :     {
    3423                 :       PDF_DEBUG_BASE("Unicode point outside context interval");
    3424                 :       /* The unicode point must not be outside the context interval */
    3425               0 :       return PDF_FALSE;
    3426                 :     }
    3427                 : 
    3428              18 :   if(context->unicode_point == context->context_stop)
    3429                 :     {
    3430                 :       /* If the unicode point is the start of the context, then it is impossible
    3431                 :        *  to have a sequence before it */
    3432               0 :       return PDF_FALSE;
    3433                 :     }
    3434                 : 
    3435                 :   /*----- Check forward -----*/
    3436                 : 
    3437              18 :   walker = (pdf_char_t *)(context->unicode_point + 4);
    3438              18 :   stop = 0;
    3439              18 :   dotAbovefound = 0;
    3440              18 :   n_combclass0or230 = 0;
    3441              63 :   while(!stop)
    3442                 :     {
    3443              27 :       if(walker > context->context_stop)
    3444                 :         {
    3445                 :           /* Arrived to context end, stop loop */
    3446               3 :           stop = 1;
    3447                 :         }
    3448                 :       else
    3449                 :         {
    3450                 :           pdf_u32_t aux_point;
    3451              24 :           memcpy(&aux_point, walker, 4);
    3452              24 :           if(aux_point == 0x0307)
    3453                 :             {
    3454              15 :               dotAbovefound = 1;
    3455              15 :               stop = 1;
    3456                 :             }
    3457                 :           else
    3458                 :             {
    3459                 :               pdf_u8_t combining_class;
    3460               9 :               combining_class = pdf_text_ucd_get_combining_class(aux_point);
    3461               9 :               if((combining_class == 0) || \
    3462                 :                  (combining_class == 230))
    3463                 :                 {
    3464               9 :                   n_combclass0or230++;
    3465                 :                 }
    3466                 :             }
    3467              24 :           if(!stop)
    3468                 :             {
    3469               9 :               walker += 4; /* Point to next UTF-32 char */
    3470                 :             }
    3471                 :         }
    3472                 :     }
    3473                 : 
    3474              18 :   return (((dotAbovefound) && \
    3475                 :            (n_combclass0or230 == 0)) ? PDF_TRUE : PDF_FALSE);
    3476                 : }
    3477                 : 
    3478                 : /* After_I condition in Special Case algorithms
    3479                 :  *  There is an uppercase I before the character, and there is no intervening
    3480                 :  *  combining character class 230 (Above) or 0.
    3481                 :  */
    3482                 : static pdf_bool_t
    3483                 : pdf_text_ucd_After_I(const pdf_text_ucd_context_t *context)
    3484              15 : {
    3485                 :   pdf_char_t *walker;
    3486                 :   short stop;
    3487                 :   int n_combclass230;
    3488                 :   int n_combclass0;
    3489                 :   int upper_i_found;
    3490                 : 
    3491              15 :   if((context->unicode_point < context->context_start) || \
    3492                 :      (context->unicode_point > context->context_stop))
    3493                 :     {
    3494                 :       PDF_DEBUG_BASE("Unicode point outside context interval");
    3495                 :       /* The unicode point must not be outside the context interval */
    3496               0 :       return PDF_FALSE;
    3497                 :     }
    3498                 : 
    3499              15 :   if(context->unicode_point == context->context_start)
    3500                 :     {
    3501                 :       /* If the unicode point is the start of the context, then it is impossible
    3502                 :        *  to have a sequence before it */
    3503               0 :       return PDF_FALSE;
    3504                 :     }
    3505                 : 
    3506                 :   /*----- Check backward -----*/
    3507                 : 
    3508              15 :   n_combclass0 = 0;
    3509              15 :   n_combclass230 = 0;
    3510              15 :   upper_i_found = 0;
    3511              15 :   walker = (pdf_char_t *)(context->unicode_point - 4);
    3512              15 :   stop = 0;
    3513              51 :   while(!stop)
    3514                 :     {
    3515              21 :       if(walker < context->context_start)
    3516                 :         {
    3517                 :           /* Arrived to context start, stop loop */
    3518               0 :           stop = 1;
    3519                 :         }
    3520                 :       else
    3521                 :         {
    3522                 :           pdf_u32_t aux_point;
    3523              21 :           memcpy(&aux_point, walker, 4);
    3524                 : 
    3525                 :           /* Check for character being I before checking combining class, as
    3526                 :            * code point I has a 0 value combining class... */
    3527              21 :           if(aux_point == 0x49) /* 0x49 == 'I' */
    3528                 :             {
    3529              15 :               upper_i_found = 1;
    3530              15 :               stop = 1;
    3531                 :             }
    3532                 :           else
    3533                 :             {
    3534               6 :               switch(pdf_text_ucd_get_combining_class(aux_point))
    3535                 :               {
    3536                 :                 case 0:
    3537               0 :                   n_combclass0++;
    3538               0 :                   break;
    3539                 :                 case 230:
    3540               6 :                   n_combclass230++;
    3541                 :                   break;
    3542                 :                 default:
    3543                 :                   break;
    3544                 :               }
    3545                 :             }
    3546                 : 
    3547              21 :           if(!stop)
    3548                 :             {
    3549               6 :               walker -= 4; /* Point to previous UTF-32 char */
    3550                 :             }
    3551                 :         }
    3552                 :     }
    3553                 : 
    3554              15 :   return (((upper_i_found) && \
    3555                 :            (n_combclass0 == 0) && \
    3556                 :            (n_combclass230 == 0)) ? PDF_TRUE : PDF_FALSE);
    3557                 : }
    3558                 : 
    3559                 : 
    3560                 : static pdf_bool_t
    3561                 : pdf_text_ucd_check_lang(const pdf_char_t *text,
    3562                 :                         const pdf_text_ucd_context_t *context)
    3563                 : {
    3564             133 :   if((text!=NULL) && \
    3565                 :      (context != NULL) && \
    3566                 :      (strncmp((char *)text, (char *)(&context->locale[0]), 2) == 0))
    3567                 :     {
    3568              48 :       return PDF_TRUE;
    3569                 :     }
    3570                 :   else
    3571                 :     {
    3572              85 :       return PDF_FALSE;
    3573                 :     }
    3574                 : }
    3575                 : 
    3576                 : 
    3577                 : #define UCD_SC_COND_N    5
    3578                 : typedef struct _pdf_text_ucd_condition_s {
    3579                 :   pdf_char_t *cond_name;
    3580                 :   pdf_bool_t (*cond_func) (const pdf_text_ucd_context_t *context);
    3581                 : } pdf_text_ucd_condition_t;
    3582                 : 
    3583                 : static const pdf_text_ucd_condition_t ucd_condition_list[UCD_SC_COND_N] = {
    3584                 :   { (pdf_char_t *)"Final_Sigma",        pdf_text_ucd_Final_Sigma        },
    3585                 :   { (pdf_char_t *)"After_Soft_Dotted",  pdf_text_ucd_After_Soft_Dotted  },
    3586                 :   { (pdf_char_t *)"More_Above",         pdf_text_ucd_More_Above         },
    3587                 :   { (pdf_char_t *)"Before_Dot",         pdf_text_ucd_Before_Dot         },
    3588                 :   { (pdf_char_t *)"After_I",            pdf_text_ucd_After_I            }
    3589                 : };
    3590                 : 
    3591                 : 
    3592                 : /* Get pointers to next condition start. It also creates a NUL terminated
    3593                 :  * string by putting a '\0' at the end of the condition. Returns PDF_TRUE if
    3594                 :  * last condition. */
    3595                 : static pdf_bool_t
    3596                 : pdf_text_ucd_special_case_get_next_condition(pdf_char_t **condition_start,
    3597                 :                                              pdf_char_t **condition_stop)
    3598                 : {
    3599                 :   pdf_char_t *field_start;
    3600                 :   pdf_char_t *field_stop;
    3601                 : 
    3602             190 :   if((condition_start == NULL) || \
    3603                 :      (condition_stop == NULL))
    3604                 :     {
    3605               0 :       return PDF_FALSE;
    3606                 :     }
    3607                 : 
    3608                 :   /* Initiate field start */
    3609             190 :   field_start = *condition_start;
    3610                 : 
    3611                 :   /* Skip leading white chars, if any */
    3612             190 :   while(*field_start == ' ')
    3613                 :     {
    3614               0 :       field_start++;
    3615                 :     }
    3616                 : 
    3617                 :   /* Look for field stop */
    3618             190 :   field_stop = field_start;
    3619            1107 :   while((*field_stop != ' ') && (*field_stop != '\0'))
    3620                 :     {
    3621             917 :       field_stop++;
    3622                 :     }
    3623                 : 
    3624                 :   /* Set output pointers */
    3625             190 :   *condition_start = field_start;
    3626             190 :   *condition_stop = field_stop;
    3627                 : 
    3628                 : 
    3629                 :   /* Reset field end and create NUL-terminated string (if not already) */
    3630             190 :   if(*field_stop == ' ')
    3631                 :     {
    3632             108 :       *field_stop = '\0';
    3633             108 :       return PDF_FALSE;
    3634                 :     }
    3635                 :   else
    3636                 :     {
    3637                 :       /* Last condition found */
    3638              82 :       return PDF_TRUE;
    3639                 :     }
    3640                 : }
    3641                 : 
    3642                 : 
    3643                 : /* Check a single given condition (NUL-terminate string) against the casing
    3644                 :  * context */
    3645                 : static pdf_status_t
    3646                 : pdf_text_ucd_special_case_check_single(const pdf_text_ucd_context_t *context,
    3647                 :                                        const pdf_char_t *condition,
    3648                 :                                        pdf_bool_t *p_fulfilled)
    3649             190 : {
    3650             190 :   pdf_bool_t negate_condition = PDF_FALSE;
    3651             190 :   pdf_char_t *walker = (pdf_char_t *)condition;
    3652                 : 
    3653                 :   /* Check if it is a Negative condition (Preceded by 'Not_') */
    3654             190 :   if((strlen((char *)walker) > 4) && \
    3655                 :      (strncmp((char *)walker, "Not_", 4) == 0))
    3656                 :     {
    3657              18 :       negate_condition = PDF_TRUE;
    3658              18 :       walker += 4;
    3659                 :     }
    3660                 : 
    3661                 :   /* Check if what we have is a LANGUAGE ID (2 characters) */
    3662             190 :   if(strlen((char *)walker) == 2)
    3663                 :     {
    3664                 :       pdf_bool_t condition_ok;
    3665             133 :       condition_ok = pdf_text_ucd_check_lang(walker, context);
    3666                 :       /* Condition fulfilled if only one of condition_ok and negate_condition
    3667                 :        *  is true (XOR). */
    3668             133 :       *p_fulfilled = condition_ok ^ negate_condition;
    3669             133 :       return PDF_OK;
    3670                 :     }
    3671                 :   else
    3672                 :     {
    3673                 :       /* Check conditions depending on CONTEXT */
    3674              57 :       short i = 0;
    3675             246 :       while(i < UCD_SC_COND_N)
    3676                 :         {
    3677             189 :           if(strcmp((char *)walker,(char *)ucd_condition_list[i].cond_name)==0)
    3678                 :             {
    3679                 :               pdf_bool_t condition_ok;
    3680                 :               /* Condition found! */
    3681              57 :               condition_ok = ucd_condition_list[i].cond_func(context);
    3682                 :               /* Condition fulfilled if only one of condition_ok and
    3683                 :                *  negate_condition is true (XOR). */
    3684              57 :               *p_fulfilled = condition_ok ^ negate_condition;
    3685              57 :               return PDF_OK;
    3686                 :             }
    3687                 :           /* Update condition walker to check the next one... */
    3688             132 :           ++i;
    3689                 :         }
    3690                 :     }
    3691                 : 
    3692                 :   /* Received condition is not valid */
    3693               0 :   return PDF_EBADTEXT;
    3694                 : }
    3695                 : 
    3696                 : 
    3697                 : /* Function to parse the condition list from the UCD, and check the found
    3698                 :  * conditions against the given casing context */
    3699                 : static pdf_bool_t
    3700                 : pdf_text_ucd_special_case_conditions(const pdf_text_ucd_context_t *context,
    3701                 :                                      const pdf_char_t *condition_list)
    3702             145 : {
    3703                 :   pdf_char_t *walker;
    3704                 :   pdf_char_t *internal_condition_list;
    3705                 :   pdf_bool_t is_last;
    3706                 :   pdf_size_t condition_list_size;
    3707                 : 
    3708             145 :   if((condition_list == NULL) || \
    3709                 :      (context == NULL) || \
    3710                 :      (context->unicode_point == NULL) || \
    3711                 :      (strlen((char *)condition_list) == 0))
    3712                 :     {
    3713               0 :       return PDF_FALSE; /* Default is the condition not being fulfilled */
    3714                 :     }
    3715                 : 
    3716                 :   /* Copy condition list, as this function will modify it to create NUL
    3717                 :    * terminated strings per condition */
    3718             145 :   condition_list_size = strlen((char *)condition_list);
    3719             145 :   internal_condition_list = (pdf_char_t *)pdf_alloc(condition_list_size+1);
    3720             145 :   if(internal_condition_list == NULL)
    3721                 :     {
    3722                 :       PDF_DEBUG_BASE("Problem dupping condition list");
    3723               0 :       return PDF_FALSE;
    3724                 :     }
    3725             145 :   memcpy(internal_condition_list,condition_list,condition_list_size);
    3726             145 :   internal_condition_list[condition_list_size] = '\0';
    3727                 : 
    3728                 :   /* Initiate walker */
    3729             145 :   walker = internal_condition_list;
    3730                 : 
    3731                 :   /* Walk the whole character string, until last NUL char */
    3732             145 :   is_last = 0;
    3733             368 :   while((!is_last) && \
    3734                 :         (*walker != '\0'))
    3735                 :     {
    3736                 :       pdf_char_t *field_end;
    3737                 :       pdf_bool_t fulfilled;
    3738                 : 
    3739                 :       /* Get NUL-terminated string to next condition */
    3740             190 :       is_last = pdf_text_ucd_special_case_get_next_condition(&walker, \
    3741                 :                                                              &field_end);
    3742                 : 
    3743                 : 
    3744                 :       /* Check single condition */
    3745             190 :       if(pdf_text_ucd_special_case_check_single(context, \
    3746                 :                                                 walker, \
    3747                 :                                                 &fulfilled) != PDF_OK)
    3748                 :         {
    3749                 :           /* Invalid condition!!! */
    3750                 :           PDF_DEBUG_BASE("Invalid condition in Special Case check: '%s'",
    3751                 :                          (char *)walker);
    3752               0 :           return PDF_FALSE;
    3753                 :         }
    3754                 :       /* Check if single condition was fulfilled */
    3755             190 :       if(!fulfilled)
    3756                 :         {
    3757             112 :           pdf_dealloc(internal_condition_list);
    3758             112 :           return PDF_FALSE;
    3759                 :         }
    3760                 : 
    3761                 :       /* Update walker if not last */
    3762              78 :       if(!is_last)
    3763                 :         {
    3764              45 :           walker = field_end+1;
    3765                 :         }
    3766                 :     }
    3767                 : 
    3768                 :   /* If arrived here, this means that all the conditions were fulfilled */
    3769              33 :   pdf_dealloc(internal_condition_list);
    3770              33 :   return PDF_TRUE;
    3771                 : }
    3772                 : 
    3773                 : static pdf_bool_t
    3774                 : pdf_text_ucd_special_case(pdf_u32_t to_he[UCD_SC_MAX_EXPAND],
    3775                 :                           pdf_size_t *p_n_points,
    3776                 :                           const pdf_u32_t from_he,
    3777                 :                           const pdf_i32_t index_in_array,
    3778                 :                           const pdf_text_ucd_context_t *context,
    3779                 :                           const enum unicode_case_type to_case)
    3780                 : {
    3781             232 :   int index = 0;
    3782             232 :   pdf_char_t *condition_list = NULL;
    3783                 : 
    3784             344 :   while(index < PDF_TEXT_MNSC)
    3785                 :     {
    3786                 :       /* Check if a special case is available for this unicode point */
    3787             322 :       if(unicode_case_info[index_in_array].special_case_indexes[index] == -1)
    3788                 :         {
    3789                 :           /* Return 0 if no special case was found... */
    3790             171 :           return PDF_FALSE;
    3791                 :         }
    3792                 :       else
    3793                 :         {
    3794             151 :           pdf_i32_t index_in_sc_array = unicode_case_info[index_in_array].special_case_indexes[index];
    3795                 :           /* Sanity check to see if we really found the correct unicode point */
    3796             151 :           if(from_he != unicode_special_case_info[index_in_sc_array].unicode_point)
    3797                 :             {
    3798                 :               PDF_DEBUG_BASE("Invalid search was done in the Special "
    3799                 :                              "Casing array! (%lu vs %lu). "
    3800                 :                              "index_in_sc_array: %ld, index_in_array: %ld",
    3801                 :                              (unsigned long)from_he,
    3802                 :                              (unsigned long)unicode_special_case_info[index_in_sc_array].unicode_point,
    3803                 :                              (long)index_in_sc_array,
    3804                 :                              (long)index_in_array);
    3805               0 :               return PDF_FALSE;
    3806                 :             }
    3807                 : 
    3808                 :           /* Ok, there is a special case */
    3809                 :           /* Get conditions list in Special Case, if any */
    3810             151 :           condition_list = (pdf_char_t *)unicode_special_case_info[index_in_sc_array].condition_list;
    3811                 : 
    3812                 :           /* Check special case conditions */
    3813             151 :           if(((strlen((char *)condition_list)>0) && \
    3814                 :               (pdf_text_ucd_special_case_conditions(context, condition_list)))||
    3815                 :              (strlen((char *)condition_list) == 0))
    3816                 :             {
    3817              39 :               pdf_u32_t *dest = NULL;
    3818                 :               /* If conditions fullfiled, or there was no condition.... */
    3819                 : 
    3820                 :               /* Delta is the good one! */
    3821              39 :               switch(to_case)
    3822                 :               {
    3823                 :                 case UNICODE_CASE_INFO_UPPER_CASE:
    3824              15 :                   dest = &(unicode_special_case_info[index_in_sc_array].uppercase_point[0]);
    3825                 :                   break;
    3826                 :                 case UNICODE_CASE_INFO_LOWER_CASE:
    3827              24 :                   dest = &(unicode_special_case_info[index_in_sc_array].lowercase_point[0]);
    3828                 :                   break;
    3829                 :                 case UNICODE_CASE_INFO_TITLE_CASE:
    3830               0 :                   dest = &(unicode_special_case_info[index_in_sc_array].titlecase_point[0]);
    3831                 :                   break;
    3832                 :                 default:
    3833                 :                   /* Will never happen */
    3834               0 :                   return PDF_FALSE;
    3835                 :               }
    3836                 :               /* Copy contents */
    3837              39 :               memcpy(&to_he[0], dest, UCD_SC_MAX_EXPAND*4);
    3838                 : 
    3839                 :               /* Compute number of valid points */
    3840              39 :               if(p_n_points != NULL)
    3841                 :                 {
    3842              39 :                   if(to_he[2] != 0)
    3843                 :                     {
    3844               2 :                       *p_n_points = (pdf_size_t)3;
    3845                 :                     }
    3846              37 :                   else if(to_he[1] != 0)
    3847                 :                     {
    3848               8 :                       *p_n_points = (pdf_size_t)2;
    3849                 :                     }
    3850              29 :                   else if(to_he[0] != 0)
    3851                 :                     {
    3852              22 :                       *p_n_points = (pdf_size_t)1;
    3853                 :                     }
    3854                 :                   else
    3855                 :                     {
    3856                 :                       /* It can really happen that a given Unicode point MUST
    3857                 :                        *  dissappear when converting to uppercase or titlecase,
    3858                 :                        *  for example combining marks. E.g: 0x0307 */
    3859               7 :                       *p_n_points = (pdf_size_t)0;
    3860                 :                     }
    3861                 :                 }
    3862              39 :               return PDF_TRUE; /* Conversion was done... */
    3863                 :             }
    3864                 :           /* check next condition, if any */
    3865             112 :           index++;
    3866                 :         }
    3867                 :     }
    3868                 : 
    3869                 :   /* else, just return a not found flag */
    3870              22 :   return PDF_FALSE;
    3871                 : }
    3872                 : 
    3873                 : static pdf_bool_t
    3874                 : pdf_text_ucd_simple_case(pdf_u32_t *to_he,
    3875                 :                          const pdf_u32_t from_he,
    3876                 :                          const pdf_i32_t index_in_array,
    3877                 :                          const enum unicode_case_type to_case)
    3878                 : {
    3879                 :   /* Sanity check to see if we really found the correct unicode point */
    3880             193 :   if(from_he != unicode_case_info[index_in_array].unicode_point)
    3881                 :     {
    3882                 :       PDF_DEBUG_BASE("Invalid search was done in the "
    3883                 :                      "Casing array! (%lu vs %lu)",
    3884                 :                      (unsigned long)from_he,
    3885                 :                      (unsigned long)unicode_case_info[index_in_array].unicode_point);
    3886               0 :       return PDF_FALSE;
    3887                 :     }
    3888                 : 
    3889             193 :   switch(to_case)
    3890                 :   {
    3891                 :     case UNICODE_CASE_INFO_UPPER_CASE:
    3892                 :     {
    3893              46 :       *to_he = unicode_case_info[index_in_array].uppercase_point;
    3894                 :       break;
    3895                 :     }
    3896                 :     case UNICODE_CASE_INFO_LOWER_CASE:
    3897                 :     {
    3898             121 :       *to_he = unicode_case_info[index_in_array].lowercase_point;
    3899                 :       break;
    3900                 :     }
    3901                 :     case UNICODE_CASE_INFO_TITLE_CASE:
    3902                 :     {
    3903              26 :       *to_he = unicode_case_info[index_in_array].titlecase_point;
    3904                 :       break;
    3905                 :     }
    3906                 :     default:
    3907                 :     {
    3908               0 :       *to_he = unicode_case_info[index_in_array].unicode_point;
    3909                 :       break;
    3910                 :     }
    3911                 :   }
    3912             193 :   return PDF_TRUE;
    3913                 : }
    3914                 : 
    3915                 : 
    3916                 : static pdf_i32_t
    3917                 : pdf_text_ucd_find_case_index(const pdf_u32_t from_he)
    3918                 : {
    3919                 :   pdf_bool_t found;
    3920                 :   int index;
    3921             345 :   long delta = 0;
    3922                 : 
    3923                 :   /* Look for input unicode point in intervals */
    3924             345 :   index = 0;
    3925             345 :   found = PDF_FALSE;
    3926            2676 :   while((!found) && \
    3927                 :         (index < UCD_C_INT_N))
    3928                 :     {
    3929                 :       /* First, check if the input point is not within the interval, but between
    3930                 :        *  two given intervals */
    3931            2331 :       if(from_he < unicode_case_int[index].interval_start)
    3932                 :         {
    3933                 :           /* Ok, no case information for this point, return the same one. Force
    3934                 :            *  loop exit without having found the point */
    3935             113 :           index = UCD_C_INT_N;
    3936                 :         }
    3937            2218 :       else if(from_he <= unicode_case_int[index].interval_stop)
    3938                 :         {
    3939                 :           /* Found!! Set deltaToIndex */
    3940             232 :           found = PDF_TRUE;
    3941             232 :           delta = unicode_case_int[index].deltaToIndex;
    3942                 :         }
    3943                 :       else
    3944                 :         {
    3945            1986 :           index++;
    3946                 :         }
    3947                 :     }
    3948                 : 
    3949                 :   /* Return index of the Unicode point in the unicode_case_info array, only if
    3950                 :    *  it was found */
    3951             345 :   return (found ? (from_he - delta) : -1);
    3952                 : }
    3953                 : 
    3954                 : 
    3955                 : static pdf_size_t
    3956                 : pdf_text_ucd_to_case(pdf_u32_t dest[UCD_SC_MAX_EXPAND], pdf_u32_t origin,
    3957                 :                      const pdf_text_ucd_context_t *context,
    3958                 :                      const enum unicode_case_type to_case)
    3959             345 : {
    3960             345 :   pdf_i32_t unicode_point_index = -1;
    3961             345 :   pdf_size_t n_points = 0;
    3962                 : 
    3963                 :   /* Completely clear output array */
    3964             345 :   memset(&dest[0],0,sizeof(pdf_u32_t)*UCD_SC_MAX_EXPAND);
    3965                 : 
    3966                 :   /* Get index of unicode point in casing info array */
    3967             345 :   unicode_point_index = pdf_text_ucd_find_case_index(origin);
    3968                 : 
    3969                 :   /* If point was not found in casing info array, return the same point... */
    3970             345 :   if(unicode_point_index < 0)
    3971                 :     {
    3972             113 :       dest[0] = origin;
    3973             113 :       return 1; /* Return number of output unicode points */
    3974                 :     }
    3975                 : 
    3976                 :   /* Try special cases first */
    3977             232 :   if(pdf_text_ucd_special_case(dest,
    3978                 :                                &n_points,
    3979                 :                                origin,
    3980                 :                                unicode_point_index,
    3981                 :                                context,
    3982                 :                                to_case))
    3983                 :     {
    3984                 :       /* Special case correctly processed */
    3985              39 :       return n_points;
    3986                 :     }
    3987                 :   else
    3988                 :     {
    3989                 :       /* Get simple case */
    3990             193 :       return ((pdf_text_ucd_simple_case(&dest[0],
    3991                 :                                         origin,
    3992                 :                                         unicode_point_index,
    3993                 :                                         to_case)) ? 1 : 0);
    3994                 :     }
    3995                 : }
    3996                 : 
    3997                 : 
    3998                 : 
    3999                 : static pdf_status_t
    4000                 : pdf_text_ucd_create_case_context(pdf_text_ucd_context_t *context,
    4001                 :                                  const pdf_char_t *word,
    4002                 :                                  const pdf_size_t length,
    4003                 :                                  const pdf_char_t *language)
    4004                 : {
    4005                 :   /* Check word length. As it comes in bytes, it must be multiple of 4! */
    4006             192 :   if(length % 4 != 0)
    4007                 :     {
    4008                 :       PDF_DEBUG_BASE("Invalid word length");
    4009               0 :       return PDF_EBADDATA;
    4010                 :     }
    4011                 : 
    4012                 :   /* Set context start as the first character in the word */
    4013             192 :   context->context_start = (pdf_char_t *)word;
    4014                 :   /* Set context stop as the last character in the word. Length is coming in
    4015                 :    *  bytes! */
    4016             192 :   context->context_stop = (pdf_char_t *)&(word[length -4]);
    4017                 :   /* Set language code, if any */
    4018             192 :   if(strlen((char *)language) == 2)
    4019                 :     {
    4020             156 :       strncpy((char *)&(context->locale[0]), (char *)language, 2);
    4021                 :     }
    4022                 :   else
    4023                 :     {
    4024              36 :       strncpy((char *)&(context->locale[0]), "  ", 2);
    4025                 :     }
    4026                 : 
    4027             192 :   return PDF_OK;
    4028                 : }
    4029                 : 
    4030                 : /* Convert a given UTF-32HE word to specified case.
    4031                 :  *  Warning!!! The destination word MUST contain enough space for the WORST
    4032                 :  *  conversion case, this is, for each unicode point, 3 unicode points are
    4033                 :  *  generated after the conversion!!! */
    4034                 : pdf_status_t
    4035                 : pdf_text_ucd_word_change_case(pdf_char_t *destination_word,
    4036                 :                               pdf_size_t *p_destination_length,
    4037                 :                               enum unicode_case_type destination_case,
    4038                 :                               const pdf_char_t *origin_word,
    4039                 :                               const pdf_size_t origin_length,
    4040                 :                               const pdf_char_t *origin_lang)
    4041             192 : {
    4042                 :   pdf_text_ucd_context_t context;
    4043             192 :   pdf_size_t i = 0; /* Index in the original word */
    4044             192 :   pdf_size_t j = 0; /* Index in the destination word */
    4045                 :   pdf_char_t new_length;
    4046             192 :   pdf_size_t new_char_size = 0;
    4047                 : 
    4048             192 :   if((destination_word == NULL) || \
    4049                 :      (origin_word == NULL) || \
    4050                 :      (origin_lang == NULL) || \
    4051                 :      (p_destination_length == NULL))
    4052                 :     {
    4053                 :       PDF_DEBUG_BASE("Invalid inputs");
    4054               0 :       return PDF_EBADDATA;
    4055                 :     }
    4056                 : 
    4057                 :   /* Create context for this word */
    4058             192 :   if(pdf_text_ucd_create_case_context(&context,
    4059                 :                                       origin_word,
    4060                 :                                       origin_length,
    4061                 :                                       origin_lang) != PDF_OK)
    4062                 :     {
    4063                 :       PDF_DEBUG_BASE("Error creating casing context");
    4064               0 :       return PDF_EBADDATA;
    4065                 :     }
    4066                 : 
    4067             192 :   new_length = 0;
    4068             537 :   for(i = 0; i < origin_length; i+=4, j+=new_char_size)
    4069                 :     {
    4070                 :       enum unicode_case_type new_case;
    4071                 :       pdf_u32_t dest_character[UCD_SC_MAX_EXPAND];
    4072                 :       pdf_u32_t  character;
    4073                 : 
    4074                 :       /* In title case, only title-case the first character, and lower-case all
    4075                 :        *  the others */
    4076             345 :       new_case = ((destination_case==UNICODE_CASE_INFO_TITLE_CASE)&&(i>0)) ? \
    4077                 :                   UNICODE_CASE_INFO_LOWER_CASE : destination_case;
    4078                 : 
    4079                 :       /* Store pointer to character within the context */
    4080             345 :       context.unicode_point = (pdf_char_t *)(&origin_word[i]);
    4081                 :       /* Store language info in context */
    4082             345 :       if(strlen((char *)origin_lang) == 2)
    4083                 :         {
    4084             281 :           memcpy(&context.locale[0],origin_lang,2);
    4085                 :         }
    4086                 :       else
    4087                 :         {
    4088              64 :           memset(&context.locale[0],0,2);
    4089                 :         }
    4090                 : 
    4091                 :       /* Store character */
    4092             345 :       memcpy(&character, &origin_word[i], 4);
    4093                 :       /* Perform conversion */
    4094             345 :       new_char_size = pdf_text_ucd_to_case(dest_character,
    4095                 :                                            character,
    4096                 :                                            &context,
    4097                 :                                            new_case);
    4098                 :       /* Remember that after casing, a given character can even disappear, so
    4099                 :        * new_char_size could also be 0 */
    4100             345 :       if(new_char_size > UCD_SC_MAX_EXPAND)
    4101                 :         {
    4102                 :           PDF_DEBUG_BASE("Invalid length for case converted char: %u\n",
    4103                 :                          (unsigned int) new_char_size);
    4104               0 :           return PDF_ETEXTENC;
    4105                 :         }
    4106             345 :       else if(new_char_size > 0)
    4107                 :         {
    4108                 :           /* Convert new char size to bytes */
    4109             338 :           new_char_size*=4;
    4110                 :           /* Update length of new word (in bytes!) */
    4111             338 :           new_length += new_char_size;
    4112                 :           /* Store case-converted character */
    4113             338 :           memcpy(&destination_word[j], &dest_character[0], new_char_size);
    4114                 :         }
    4115                 :     }
    4116                 : 
    4117                 :   /* Set output data length of word, in bytes! */
    4118             192 :   *p_destination_length = new_length;
    4119                 : 
    4120             192 :   return PDF_OK;
    4121                 : }
    4122                 : 
    4123                 : 
    4124                 : pdf_bool_t
    4125                 : pdf_text_ucd_is_case_ignorable(const pdf_u32_t character)
    4126              12 : {
    4127                 :   /* If character has the MidLetter or MidNumLet property value in Word_Break...
    4128                 :    *   (List of chars obtained from WordBreakProperty.txt UCD file */
    4129                 : 
    4130              12 :   if(pdf_text_ucd_wb_is_midletter(character) || \
    4131                 :      pdf_text_ucd_wb_is_midnumlet(character))
    4132                 :     {
    4133               4 :       return PDF_TRUE;
    4134                 :     }
    4135                 : 
    4136                 :   /* Ok, so continue checking... Now if General Category is one of:
    4137                 :    *    Mn, Me, Cf, Lm, Sk
    4138                 :    *  then is case ignorable
    4139                 :    */
    4140               8 :   switch(pdf_text_ucd_get_general_category(character))
    4141                 :   {
    4142                 :     case UNICODE_GENCAT_Mn:
    4143                 :     case UNICODE_GENCAT_Me:
    4144                 :     case UNICODE_GENCAT_Cf:
    4145                 :     case UNICODE_GENCAT_Lm:
    4146                 :     case UNICODE_GENCAT_Sk:
    4147               0 :       return PDF_TRUE;
    4148                 :     default:
    4149               8 :       return PDF_FALSE;
    4150                 :   }
    4151                 : }
    4152                 : 
    4153                 : 
    4154                 : pdf_bool_t
    4155                 : pdf_text_ucd_is_cased(const pdf_u32_t character)
    4156               8 : {
    4157                 :   /* The character is cased if the General Category is one of:
    4158                 :    *  Lu, Ll, Lt
    4159                 :    */
    4160               8 :   switch(pdf_text_ucd_get_general_category(character))
    4161                 :   {
    4162                 :     case UNICODE_GENCAT_Lu:
    4163                 :     case UNICODE_GENCAT_Ll:
    4164                 :     case UNICODE_GENCAT_Lt:
    4165               8 :       return PDF_TRUE;
    4166                 :     default:
    4167               0 :       return PDF_FALSE;
    4168                 :   }
    4169                 : }
    4170                 : 
    4171                 : /* End of pdf-text-ucd-case.c */

Generated by: LTP GCOV extension version 1.6