Cosmetic
authorBehdad Esfahbod <behdad@behdad.org>
Mon, 13 Jun 2011 20:02:18 +0000 (16:02 -0400)
committerBehdad Esfahbod <behdad@behdad.org>
Mon, 13 Jun 2011 20:12:56 +0000 (16:12 -0400)
src/gen-indic-table.py
src/hb-ot-shape-complex-indic-table.hh

index 92ec8fe..dc6a19a 100755 (executable)
@@ -81,9 +81,10 @@ short = [{
        "Bindu":                'Bi',
        "Visarga":              'Vs',
        "Vowel":                'Vo',
-       "Other":                'X',
+       "Vowel_Dependent":      'M',
+       "Other":                'x',
 },{
-       "Not_Applicable":       'X',
+       "Not_Applicable":       'x',
 }]
 all_shorts = [[],[]]
 
@@ -131,7 +132,7 @@ def print_block (block, start, end, data):
                if u in data:
                        num += 1
                d = data.get (u, defaults)
-               print "%10s" % ("_(%s,%s)," % (short[0][d[0]], short[1][d[1]])),
+               sys.stdout.write ("%9s" % ("_(%s,%s)," % (short[0][d[0]], short[1][d[1]])))
 
        if num == 0:
                # Filler block, don't check occupancy
@@ -183,7 +184,7 @@ for u in tables:
        print "  if (0x%04X <= u && u <= 0x%04X + ARRAY_LENGTH (%s)) return %s[u - 0x%04X];" % (u, u, t, t, u)
 for u,d in singles.items ():
        print "  if (unlikely (u == 0x%04X)) return _(%s,%s);" % (u, short[0][d[0]], short[1][d[1]])
-print "  return _(X,X);"
+print "  return _(x,x);"
 print "}"
 
 print
index 2d0d32b..4b04914 100644 (file)
@@ -60,14 +60,14 @@ HB_BEGIN_DECLS
 #define ISC_CS INDIC_SYLLABIC_CATEGORY_CONSONANT_SUBJOINED     /*   9 chars; Consonant_Subjoined */
 #define ISC_ML INDIC_SYLLABIC_CATEGORY_MODIFYING_LETTER        /*   1 chars; Modifying_Letter */
 #define ISC_N  INDIC_SYLLABIC_CATEGORY_NUKTA                   /*  11 chars; Nukta */
-#define ISC_X  INDIC_SYLLABIC_CATEGORY_OTHER                   /*   1 chars; Other */
+#define ISC_x  INDIC_SYLLABIC_CATEGORY_OTHER                   /*   1 chars; Other */
 #define ISC_RS INDIC_SYLLABIC_CATEGORY_REGISTER_SHIFTER        /*   1 chars; Register_Shifter */
 #define ISC_TL INDIC_SYLLABIC_CATEGORY_TONE_LETTER             /*   3 chars; Tone_Letter */
 #define ISC_TM INDIC_SYLLABIC_CATEGORY_TONE_MARK               /*  16 chars; Tone_Mark */
 #define ISC_V  INDIC_SYLLABIC_CATEGORY_VIRAMA                  /*  29 chars; Virama */
 #define ISC_Vs INDIC_SYLLABIC_CATEGORY_VISARGA                 /*  19 chars; Visarga */
 #define ISC_Vo INDIC_SYLLABIC_CATEGORY_VOWEL                   /*   5 chars; Vowel */
-#define ISC_VD INDIC_SYLLABIC_CATEGORY_VOWEL_DEPENDENT         /* 161 chars; Vowel_Dependent */
+#define ISC_ INDIC_SYLLABIC_CATEGORY_VOWEL_DEPENDENT         /* 161 chars; Vowel_Dependent */
 #define ISC_VI INDIC_SYLLABIC_CATEGORY_VOWEL_INDEPENDENT       /*  53 chars; Vowel_Independent */
 
 #define IMC_B  INDIC_MATRA_CATEGORY_BOTTOM                     /*  60 chars; Bottom */
@@ -75,7 +75,7 @@ HB_BEGIN_DECLS
 #define IMC_I  INDIC_MATRA_CATEGORY_INVISIBLE                  /*   4 chars; Invisible */
 #define IMC_L  INDIC_MATRA_CATEGORY_LEFT                       /*  25 chars; Left */
 #define IMC_LR INDIC_MATRA_CATEGORY_LEFT_AND_RIGHT             /*   8 chars; Left_And_Right */
-#define IMC_X  INDIC_MATRA_CATEGORY_NOT_APPLICABLE             /*   1 chars; Not_Applicable */
+#define IMC_x  INDIC_MATRA_CATEGORY_NOT_APPLICABLE             /*   1 chars; Not_Applicable */
 #define IMC_O  INDIC_MATRA_CATEGORY_OVERSTRUCK                 /*   2 chars; Overstruck */
 #define IMC_R  INDIC_MATRA_CATEGORY_RIGHT                      /*  70 chars; Right */
 #define IMC_T  INDIC_MATRA_CATEGORY_TOP                        /*  74 chars; Top */
@@ -94,289 +94,289 @@ static const INDIC_TABLE_ELEMENT_TYPE indic_table_0x0900[] =
 
   /* Devanagari  (0900..097F) */
 
-  /* 0900 */   _(Bi,X),   _(Bi,X),   _(Bi,X),   _(Vs,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* 0908 */   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* 0910 */   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0918 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0920 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0928 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0930 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0938 */    _(C,X),    _(C,X),   _(VD,T),   _(VD,R),    _(N,X),    _(A,X),   _(VD,R),   _(VD,L),
-  /* 0940 */   _(VD,R),   _(VD,B),   _(VD,B),   _(VD,B),   _(VD,B),   _(VD,T),   _(VD,T),   _(VD,T),
-  /* 0948 */   _(VD,T),   _(VD,R),   _(VD,R),   _(VD,R),   _(VD,R),    _(V,B),   _(VD,L),   _(VD,R),
-  /* 0950 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),   _(VD,T),   _(VD,B),   _(VD,B),
-  /* 0958 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0960 */   _(VI,X),   _(VI,X),   _(VD,B),   _(VD,B),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0968 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0970 */    _(X,X),    _(X,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* 0978 */    _(X,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
+  /* 0900 */ _(Bi,x), _(Bi,x), _(Bi,x), _(Vs,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),
+  /* 0908 */ _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),
+  /* 0910 */ _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0918 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0920 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0928 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0930 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0938 */  _(C,x),  _(C,x),  _(M,T),  _(M,R),  _(N,x),  _(A,x),  _(M,R),  _(M,L),
+  /* 0940 */  _(M,R),  _(M,B),  _(M,B),  _(M,B),  _(M,B),  _(M,T),  _(M,T),  _(M,T),
+  /* 0948 */  _(M,T),  _(M,R),  _(M,R),  _(M,R),  _(M,R),  _(V,B),  _(M,L),  _(M,R),
+  /* 0950 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(M,T),  _(M,B),  _(M,B),
+  /* 0958 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0960 */ _(VI,x), _(VI,x),  _(M,B),  _(M,B),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0968 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0970 */  _(x,x),  _(x,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),
+  /* 0978 */  _(x,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
 
   /* Bengali  (0980..09FF) */
 
-  /* 0980 */    _(X,X),   _(Bi,X),   _(Bi,X),   _(Vs,X),    _(X,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* 0988 */   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),    _(X,X),    _(X,X),   _(VI,X),
-  /* 0990 */   _(VI,X),    _(X,X),    _(X,X),   _(VI,X),   _(VI,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0998 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 09A0 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 09A8 */    _(C,X),    _(X,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 09B0 */    _(C,X),    _(X,X),    _(C,X),    _(X,X),    _(X,X),    _(X,X),    _(C,X),    _(C,X),
-  /* 09B8 */    _(C,X),    _(C,X),    _(X,X),    _(X,X),    _(N,X),    _(A,X),   _(VD,R),   _(VD,L),
-  /* 09C0 */   _(VD,R),   _(VD,B),   _(VD,B),   _(VD,B),   _(VD,B),    _(X,X),    _(X,X),   _(VD,L),
-  /* 09C8 */   _(VD,L),    _(X,X),    _(X,X),  _(VD,LR),  _(VD,LR),    _(V,B),   _(CD,X),    _(X,X),
-  /* 09D0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),   _(VD,R),
-  /* 09D8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(C,X),    _(C,X),    _(X,X),    _(C,X),
-  /* 09E0 */   _(VI,X),   _(VI,X),   _(VD,B),   _(VD,B),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 09E8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 09F0 */    _(C,X),    _(C,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 09F8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 0980 */  _(x,x), _(Bi,x), _(Bi,x), _(Vs,x),  _(x,x), _(VI,x), _(VI,x), _(VI,x),
+  /* 0988 */ _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),  _(x,x),  _(x,x), _(VI,x),
+  /* 0990 */ _(VI,x),  _(x,x),  _(x,x), _(VI,x), _(VI,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0998 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 09A0 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 09A8 */  _(C,x),  _(x,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 09B0 */  _(C,x),  _(x,x),  _(C,x),  _(x,x),  _(x,x),  _(x,x),  _(C,x),  _(C,x),
+  /* 09B8 */  _(C,x),  _(C,x),  _(x,x),  _(x,x),  _(N,x),  _(A,x),  _(M,R),  _(M,L),
+  /* 09C0 */  _(M,R),  _(M,B),  _(M,B),  _(M,B),  _(M,B),  _(x,x),  _(x,x),  _(M,L),
+  /* 09C8 */  _(M,L),  _(x,x),  _(x,x), _(M,LR), _(M,LR),  _(V,B), _(CD,x),  _(x,x),
+  /* 09D0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(M,R),
+  /* 09D8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(C,x),  _(C,x),  _(x,x),  _(C,x),
+  /* 09E0 */ _(VI,x), _(VI,x),  _(M,B),  _(M,B),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 09E8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 09F0 */  _(C,x),  _(C,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 09F8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Gurmukhi  (0A00..0A7F) */
 
-  /* 0A00 */    _(X,X),   _(Bi,X),   _(Bi,X),   _(Vs,X),    _(X,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* 0A08 */   _(VI,X),   _(VI,X),   _(VI,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),   _(VI,X),
-  /* 0A10 */   _(VI,X),    _(X,X),    _(X,X),   _(VI,X),   _(VI,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0A18 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0A20 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0A28 */    _(C,X),    _(X,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0A30 */    _(C,X),    _(X,X),    _(C,X),    _(C,X),    _(X,X),    _(C,X),    _(C,X),    _(X,X),
-  /* 0A38 */    _(C,X),    _(C,X),    _(X,X),    _(X,X),    _(N,X),    _(X,X),   _(VD,R),   _(VD,L),
-  /* 0A40 */   _(VD,R),   _(VD,B),   _(VD,B),    _(X,X),    _(X,X),    _(X,X),    _(X,X),   _(VD,T),
-  /* 0A48 */   _(VD,T),    _(X,X),    _(X,X),   _(VD,T),   _(VD,T),    _(V,B),    _(X,X),    _(X,X),
-  /* 0A50 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0A58 */    _(X,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(X,X),    _(C,X),    _(X,X),
-  /* 0A60 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0A68 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0A70 */   _(Bi,X),    _(X,X),   _(CP,X),   _(CP,X),    _(X,X),   _(CM,X),    _(X,X),    _(X,X),
-  /* 0A78 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 0A00 */  _(x,x), _(Bi,x), _(Bi,x), _(Vs,x),  _(x,x), _(VI,x), _(VI,x), _(VI,x),
+  /* 0A08 */ _(VI,x), _(VI,x), _(VI,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x), _(VI,x),
+  /* 0A10 */ _(VI,x),  _(x,x),  _(x,x), _(VI,x), _(VI,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0A18 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0A20 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0A28 */  _(C,x),  _(x,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0A30 */  _(C,x),  _(x,x),  _(C,x),  _(C,x),  _(x,x),  _(C,x),  _(C,x),  _(x,x),
+  /* 0A38 */  _(C,x),  _(C,x),  _(x,x),  _(x,x),  _(N,x),  _(x,x),  _(M,R),  _(M,L),
+  /* 0A40 */  _(M,R),  _(M,B),  _(M,B),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(M,T),
+  /* 0A48 */  _(M,T),  _(x,x),  _(x,x),  _(M,T),  _(M,T),  _(V,B),  _(x,x),  _(x,x),
+  /* 0A50 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0A58 */  _(x,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(x,x),  _(C,x),  _(x,x),
+  /* 0A60 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0A68 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0A70 */ _(Bi,x),  _(x,x), _(CP,x), _(CP,x),  _(x,x), _(CM,x),  _(x,x),  _(x,x),
+  /* 0A78 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Gujarati  (0A80..0AFF) */
 
-  /* 0A80 */    _(X,X),   _(Bi,X),   _(Bi,X),   _(Vs,X),    _(X,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* 0A88 */   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),    _(X,X),   _(VI,X),
-  /* 0A90 */   _(VI,X),   _(VI,X),    _(X,X),   _(VI,X),   _(VI,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0A98 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0AA0 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0AA8 */    _(C,X),    _(X,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0AB0 */    _(C,X),    _(X,X),    _(C,X),    _(C,X),    _(X,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0AB8 */    _(C,X),    _(C,X),    _(X,X),    _(X,X),    _(N,X),    _(A,X),   _(VD,R),   _(VD,L),
-  /* 0AC0 */   _(VD,R),   _(VD,B),   _(VD,B),   _(VD,B),   _(VD,B),   _(VD,T),    _(X,X),   _(VD,T),
-  /* 0AC8 */   _(VD,T),  _(VD,TR),    _(X,X),   _(VD,R),   _(VD,R),    _(V,B),    _(X,X),    _(X,X),
-  /* 0AD0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0AD8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0AE0 */   _(VI,X),   _(VI,X),   _(VD,B),   _(VD,B),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0AE8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0AF0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0AF8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 0A80 */  _(x,x), _(Bi,x), _(Bi,x), _(Vs,x),  _(x,x), _(VI,x), _(VI,x), _(VI,x),
+  /* 0A88 */ _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),  _(x,x), _(VI,x),
+  /* 0A90 */ _(VI,x), _(VI,x),  _(x,x), _(VI,x), _(VI,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0A98 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0AA0 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0AA8 */  _(C,x),  _(x,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0AB0 */  _(C,x),  _(x,x),  _(C,x),  _(C,x),  _(x,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0AB8 */  _(C,x),  _(C,x),  _(x,x),  _(x,x),  _(N,x),  _(A,x),  _(M,R),  _(M,L),
+  /* 0AC0 */  _(M,R),  _(M,B),  _(M,B),  _(M,B),  _(M,B),  _(M,T),  _(x,x),  _(M,T),
+  /* 0AC8 */  _(M,T), _(M,TR),  _(x,x),  _(M,R),  _(M,R),  _(V,B),  _(x,x),  _(x,x),
+  /* 0AD0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0AD8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0AE0 */ _(VI,x), _(VI,x),  _(M,B),  _(M,B),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0AE8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0AF0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0AF8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Oriya  (0B00..0B7F) */
 
-  /* 0B00 */    _(X,X),   _(Bi,X),   _(Bi,X),   _(Vs,X),    _(X,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* 0B08 */   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),    _(X,X),    _(X,X),   _(VI,X),
-  /* 0B10 */   _(VI,X),    _(X,X),    _(X,X),   _(VI,X),   _(VI,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0B18 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0B20 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0B28 */    _(C,X),    _(X,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0B30 */    _(C,X),    _(X,X),    _(C,X),    _(C,X),    _(X,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0B38 */    _(C,X),    _(C,X),    _(X,X),    _(X,X),    _(N,X),    _(A,X),   _(VD,R),   _(VD,T),
-  /* 0B40 */   _(VD,R),   _(VD,B),   _(VD,B),   _(VD,B),   _(VD,B),    _(X,X),    _(X,X),   _(VD,L),
-  /* 0B48 */  _(VD,TL),    _(X,X),    _(X,X),  _(VD,LR), _(VD,TLR),    _(V,B),    _(X,X),    _(X,X),
-  /* 0B50 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),   _(VD,T),  _(VD,TR),
-  /* 0B58 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(C,X),    _(C,X),    _(X,X),    _(C,X),
-  /* 0B60 */   _(VI,X),   _(VI,X),   _(VD,B),   _(VD,B),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0B68 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0B70 */    _(X,X),    _(C,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0B78 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 0B00 */  _(x,x), _(Bi,x), _(Bi,x), _(Vs,x),  _(x,x), _(VI,x), _(VI,x), _(VI,x),
+  /* 0B08 */ _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),  _(x,x),  _(x,x), _(VI,x),
+  /* 0B10 */ _(VI,x),  _(x,x),  _(x,x), _(VI,x), _(VI,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0B18 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0B20 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0B28 */  _(C,x),  _(x,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0B30 */  _(C,x),  _(x,x),  _(C,x),  _(C,x),  _(x,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0B38 */  _(C,x),  _(C,x),  _(x,x),  _(x,x),  _(N,x),  _(A,x),  _(M,R),  _(M,T),
+  /* 0B40 */  _(M,R),  _(M,B),  _(M,B),  _(M,B),  _(M,B),  _(x,x),  _(x,x),  _(M,L),
+  /* 0B48 */ _(M,TL),  _(x,x),  _(x,x), _(M,LR),_(M,TLR),  _(V,B),  _(x,x),  _(x,x),
+  /* 0B50 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(M,T), _(M,TR),
+  /* 0B58 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(C,x),  _(C,x),  _(x,x),  _(C,x),
+  /* 0B60 */ _(VI,x), _(VI,x),  _(M,B),  _(M,B),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0B68 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0B70 */  _(x,x),  _(C,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0B78 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Tamil  (0B80..0BFF) */
 
-  /* 0B80 */    _(X,X),    _(X,X),   _(Bi,X),   _(ML,X),    _(X,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* 0B88 */   _(VI,X),   _(VI,X),   _(VI,X),    _(X,X),    _(X,X),    _(X,X),   _(VI,X),   _(VI,X),
-  /* 0B90 */   _(VI,X),    _(X,X),   _(VI,X),   _(VI,X),   _(VI,X),    _(C,X),    _(X,X),    _(X,X),
-  /* 0B98 */    _(X,X),    _(C,X),    _(C,X),    _(X,X),    _(C,X),    _(X,X),    _(C,X),    _(C,X),
-  /* 0BA0 */    _(X,X),    _(X,X),    _(X,X),    _(C,X),    _(C,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0BA8 */    _(C,X),    _(C,X),    _(C,X),    _(X,X),    _(X,X),    _(X,X),    _(C,X),    _(C,X),
-  /* 0BB0 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0BB8 */    _(C,X),    _(C,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),   _(VD,R),   _(VD,R),
-  /* 0BC0 */   _(VD,T),   _(VD,B),   _(VD,B),    _(X,X),    _(X,X),    _(X,X),   _(VD,L),   _(VD,L),
-  /* 0BC8 */   _(VD,L),    _(X,X),  _(VD,LR),  _(VD,LR),  _(VD,LR),    _(V,T),    _(X,X),    _(X,X),
-  /* 0BD0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),   _(VD,R),
-  /* 0BD8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0BE0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0BE8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0BF0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0BF8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 0B80 */  _(x,x),  _(x,x), _(Bi,x), _(ML,x),  _(x,x), _(VI,x), _(VI,x), _(VI,x),
+  /* 0B88 */ _(VI,x), _(VI,x), _(VI,x),  _(x,x),  _(x,x),  _(x,x), _(VI,x), _(VI,x),
+  /* 0B90 */ _(VI,x),  _(x,x), _(VI,x), _(VI,x), _(VI,x),  _(C,x),  _(x,x),  _(x,x),
+  /* 0B98 */  _(x,x),  _(C,x),  _(C,x),  _(x,x),  _(C,x),  _(x,x),  _(C,x),  _(C,x),
+  /* 0BA0 */  _(x,x),  _(x,x),  _(x,x),  _(C,x),  _(C,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0BA8 */  _(C,x),  _(C,x),  _(C,x),  _(x,x),  _(x,x),  _(x,x),  _(C,x),  _(C,x),
+  /* 0BB0 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0BB8 */  _(C,x),  _(C,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(M,R),  _(M,R),
+  /* 0BC0 */  _(M,T),  _(M,B),  _(M,B),  _(x,x),  _(x,x),  _(x,x),  _(M,L),  _(M,L),
+  /* 0BC8 */  _(M,L),  _(x,x), _(M,LR), _(M,LR), _(M,LR),  _(V,T),  _(x,x),  _(x,x),
+  /* 0BD0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(M,R),
+  /* 0BD8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0BE0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0BE8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0BF0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0BF8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Telugu  (0C00..0C7F) */
 
-  /* 0C00 */    _(X,X),   _(Bi,X),   _(Bi,X),   _(Vs,X),    _(X,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* 0C08 */   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),    _(X,X),   _(VI,X),   _(VI,X),
-  /* 0C10 */   _(VI,X),    _(X,X),   _(VI,X),   _(VI,X),   _(VI,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0C18 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0C20 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0C28 */    _(C,X),    _(X,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0C30 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(X,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0C38 */    _(C,X),    _(C,X),    _(X,X),    _(X,X),    _(X,X),    _(A,X),   _(VD,T),   _(VD,T),
-  /* 0C40 */   _(VD,T),   _(VD,R),   _(VD,R),   _(VD,R),   _(VD,R),    _(X,X),   _(VD,T),   _(VD,T),
-  /* 0C48 */  _(VD,TB),    _(X,X),   _(VD,T),   _(VD,T),   _(VD,T),    _(V,T),    _(X,X),    _(X,X),
-  /* 0C50 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),   _(VD,T),   _(VD,B),    _(X,X),
-  /* 0C58 */    _(C,X),    _(C,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0C60 */   _(VI,X),   _(VI,X),   _(VD,B),   _(VD,B),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0C68 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0C70 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0C78 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 0C00 */  _(x,x), _(Bi,x), _(Bi,x), _(Vs,x),  _(x,x), _(VI,x), _(VI,x), _(VI,x),
+  /* 0C08 */ _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),  _(x,x), _(VI,x), _(VI,x),
+  /* 0C10 */ _(VI,x),  _(x,x), _(VI,x), _(VI,x), _(VI,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0C18 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0C20 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0C28 */  _(C,x),  _(x,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0C30 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(x,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0C38 */  _(C,x),  _(C,x),  _(x,x),  _(x,x),  _(x,x),  _(A,x),  _(M,T),  _(M,T),
+  /* 0C40 */  _(M,T),  _(M,R),  _(M,R),  _(M,R),  _(M,R),  _(x,x),  _(M,T),  _(M,T),
+  /* 0C48 */ _(M,TB),  _(x,x),  _(M,T),  _(M,T),  _(M,T),  _(V,T),  _(x,x),  _(x,x),
+  /* 0C50 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(M,T),  _(M,B),  _(x,x),
+  /* 0C58 */  _(C,x),  _(C,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0C60 */ _(VI,x), _(VI,x),  _(M,B),  _(M,B),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0C68 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0C70 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0C78 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Kannada  (0C80..0CFF) */
 
-  /* 0C80 */    _(X,X),    _(X,X),   _(Bi,X),   _(Vs,X),    _(X,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* 0C88 */   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),    _(X,X),   _(VI,X),   _(VI,X),
-  /* 0C90 */   _(VI,X),    _(X,X),   _(VI,X),   _(VI,X),   _(VI,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0C98 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0CA0 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0CA8 */    _(C,X),    _(X,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0CB0 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(X,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0CB8 */    _(C,X),    _(C,X),    _(X,X),    _(X,X),    _(N,X),    _(A,X),   _(VD,R),   _(VD,T),
-  /* 0CC0 */  _(VD,TR),   _(VD,R),   _(VD,R),   _(VD,R),   _(VD,R),    _(X,X),   _(VD,T),  _(VD,TR),
-  /* 0CC8 */  _(VD,TR),    _(X,X),  _(VD,TR),  _(VD,TR),   _(VD,T),    _(V,T),    _(X,X),    _(X,X),
-  /* 0CD0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),   _(VD,R),   _(VD,R),    _(X,X),
-  /* 0CD8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(C,X),    _(X,X),
-  /* 0CE0 */   _(VI,X),   _(VI,X),   _(VD,B),   _(VD,B),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0CE8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0CF0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0CF8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 0C80 */  _(x,x),  _(x,x), _(Bi,x), _(Vs,x),  _(x,x), _(VI,x), _(VI,x), _(VI,x),
+  /* 0C88 */ _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),  _(x,x), _(VI,x), _(VI,x),
+  /* 0C90 */ _(VI,x),  _(x,x), _(VI,x), _(VI,x), _(VI,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0C98 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0CA0 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0CA8 */  _(C,x),  _(x,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0CB0 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(x,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0CB8 */  _(C,x),  _(C,x),  _(x,x),  _(x,x),  _(N,x),  _(A,x),  _(M,R),  _(M,T),
+  /* 0CC0 */ _(M,TR),  _(M,R),  _(M,R),  _(M,R),  _(M,R),  _(x,x),  _(M,T), _(M,TR),
+  /* 0CC8 */ _(M,TR),  _(x,x), _(M,TR), _(M,TR),  _(M,T),  _(V,T),  _(x,x),  _(x,x),
+  /* 0CD0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(M,R),  _(M,R),  _(x,x),
+  /* 0CD8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(C,x),  _(x,x),
+  /* 0CE0 */ _(VI,x), _(VI,x),  _(M,B),  _(M,B),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0CE8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0CF0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0CF8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Malayalam  (0D00..0D7F) */
 
-  /* 0D00 */    _(X,X),    _(X,X),   _(Bi,X),   _(Vs,X),    _(X,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* 0D08 */   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),    _(X,X),   _(VI,X),   _(VI,X),
-  /* 0D10 */   _(VI,X),    _(X,X),   _(VI,X),   _(VI,X),   _(VI,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0D18 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0D20 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0D28 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0D30 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0D38 */    _(C,X),    _(C,X),    _(C,X),    _(X,X),    _(X,X),    _(A,X),   _(VD,R),   _(VD,R),
-  /* 0D40 */   _(VD,R),   _(VD,R),   _(VD,R),   _(VD,B),   _(VD,B),    _(X,X),   _(VD,L),   _(VD,L),
-  /* 0D48 */   _(VD,L),    _(X,X),  _(VD,LR),  _(VD,LR),  _(VD,LR),    _(V,T),   _(CR,X),    _(X,X),
-  /* 0D50 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),   _(VD,R),
-  /* 0D58 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0D60 */   _(VI,X),   _(VI,X),   _(VD,B),   _(VD,B),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0D68 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0D70 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0D78 */    _(X,X),    _(X,X),   _(CD,X),   _(CD,X),   _(CD,X),   _(CD,X),   _(CD,X),   _(CD,X),
+  /* 0D00 */  _(x,x),  _(x,x), _(Bi,x), _(Vs,x),  _(x,x), _(VI,x), _(VI,x), _(VI,x),
+  /* 0D08 */ _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),  _(x,x), _(VI,x), _(VI,x),
+  /* 0D10 */ _(VI,x),  _(x,x), _(VI,x), _(VI,x), _(VI,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0D18 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0D20 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0D28 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0D30 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0D38 */  _(C,x),  _(C,x),  _(C,x),  _(x,x),  _(x,x),  _(A,x),  _(M,R),  _(M,R),
+  /* 0D40 */  _(M,R),  _(M,R),  _(M,R),  _(M,B),  _(M,B),  _(x,x),  _(M,L),  _(M,L),
+  /* 0D48 */  _(M,L),  _(x,x), _(M,LR), _(M,LR), _(M,LR),  _(V,T), _(CR,x),  _(x,x),
+  /* 0D50 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(M,R),
+  /* 0D58 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0D60 */ _(VI,x), _(VI,x),  _(M,B),  _(M,B),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0D68 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0D70 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0D78 */  _(x,x),  _(x,x), _(CD,x), _(CD,x), _(CD,x), _(CD,x), _(CD,x), _(CD,x),
 
   /* Sinhala  (0D80..0DFF) */
 
-  /* 0D80 */    _(X,X),    _(X,X),   _(Bi,X),   _(Vs,X),    _(X,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* 0D88 */   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* 0D90 */   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),    _(X,X),
-  /* 0D98 */    _(X,X),    _(X,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0DA0 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0DA8 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0DB0 */    _(C,X),    _(C,X),    _(X,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0DB8 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(X,X),    _(C,X),    _(X,X),    _(X,X),
-  /* 0DC0 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(X,X),
-  /* 0DC8 */    _(X,X),    _(X,X),    _(V,T),    _(X,X),    _(X,X),    _(X,X),    _(X,X),   _(VD,R),
-  /* 0DD0 */   _(VD,R),   _(VD,R),   _(VD,T),   _(VD,T),   _(VD,B),    _(X,X),   _(VD,B),    _(X,X),
-  /* 0DD8 */   _(VD,R),   _(VD,L),  _(VD,TL),   _(VD,L),  _(VD,LR),  _(VD,LR),  _(VD,LR),   _(VD,R),
-  /* 0DE0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0DE8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0DF0 */    _(X,X),    _(X,X),   _(VD,R),   _(VD,R),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0DF8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 0D80 */  _(x,x),  _(x,x), _(Bi,x), _(Vs,x),  _(x,x), _(VI,x), _(VI,x), _(VI,x),
+  /* 0D88 */ _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),
+  /* 0D90 */ _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),  _(x,x),
+  /* 0D98 */  _(x,x),  _(x,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0DA0 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0DA8 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0DB0 */  _(C,x),  _(C,x),  _(x,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0DB8 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(x,x),  _(C,x),  _(x,x),  _(x,x),
+  /* 0DC0 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(x,x),
+  /* 0DC8 */  _(x,x),  _(x,x),  _(V,T),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(M,R),
+  /* 0DD0 */  _(M,R),  _(M,R),  _(M,T),  _(M,T),  _(M,B),  _(x,x),  _(M,B),  _(x,x),
+  /* 0DD8 */  _(M,R),  _(M,L), _(M,TL),  _(M,L), _(M,LR), _(M,LR), _(M,LR),  _(M,R),
+  /* 0DE0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0DE8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0DF0 */  _(x,x),  _(x,x),  _(M,R),  _(M,R),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0DF8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Thai  (0E00..0E7F) */
 
-  /* 0E00 */    _(X,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0E08 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0E10 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0E18 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0E20 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0E28 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(X,X),
-  /* 0E30 */   _(VD,R),   _(VD,T),   _(VD,R),   _(VD,R),   _(VD,T),   _(VD,T),   _(VD,T),   _(VD,T),
-  /* 0E38 */   _(VD,B),   _(VD,B),    _(V,B),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0E40 */ _(VD,VOL), _(VD,VOL), _(VD,VOL), _(VD,VOL), _(VD,VOL),   _(VD,R),    _(X,X),   _(VD,T),
-  /* 0E48 */   _(TM,X),   _(TM,X),   _(TM,X),   _(TM,X),    _(X,X),   _(Bi,X),    _(V,T),    _(X,X),
-  /* 0E50 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0E58 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0E60 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0E68 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0E70 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0E78 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 0E00 */  _(x,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0E08 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0E10 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0E18 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0E20 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0E28 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(x,x),
+  /* 0E30 */  _(M,R),  _(M,T),  _(M,R),  _(M,R),  _(M,T),  _(M,T),  _(M,T),  _(M,T),
+  /* 0E38 */  _(M,B),  _(M,B),  _(V,B),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0E40 */_(M,VOL),_(M,VOL),_(M,VOL),_(M,VOL),_(M,VOL),  _(M,R),  _(x,x),  _(M,T),
+  /* 0E48 */ _(TM,x), _(TM,x), _(TM,x), _(TM,x),  _(x,x), _(Bi,x),  _(V,T),  _(x,x),
+  /* 0E50 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0E58 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0E60 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0E68 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0E70 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0E78 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Lao  (0E80..0EFF) */
 
-  /* 0E80 */    _(X,X),    _(C,X),    _(C,X),    _(X,X),    _(C,X),    _(X,X),    _(X,X),    _(C,X),
-  /* 0E88 */    _(C,X),    _(X,X),    _(C,X),    _(X,X),    _(X,X),    _(C,X),    _(X,X),    _(X,X),
-  /* 0E90 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0E98 */    _(X,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0EA0 */    _(X,X),    _(C,X),    _(C,X),    _(C,X),    _(X,X),    _(C,X),    _(X,X),    _(C,X),
-  /* 0EA8 */    _(X,X),    _(X,X),    _(C,X),    _(C,X),    _(X,X),    _(C,X),    _(C,X),    _(X,X),
-  /* 0EB0 */   _(VD,R),   _(VD,T),   _(VD,R),   _(VD,R),   _(VD,T),   _(VD,T),   _(VD,T),   _(VD,T),
-  /* 0EB8 */   _(VD,B),   _(VD,B),    _(X,X),   _(VD,T),   _(CM,X),   _(CM,X),    _(X,X),    _(X,X),
-  /* 0EC0 */ _(VD,VOL), _(VD,VOL), _(VD,VOL), _(VD,VOL), _(VD,VOL),    _(X,X),    _(X,X),    _(X,X),
-  /* 0EC8 */   _(TM,X),   _(TM,X),   _(TM,X),   _(TM,X),    _(X,X),   _(Bi,X),    _(X,X),    _(X,X),
-  /* 0ED0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0ED8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(C,X),    _(C,X),    _(X,X),    _(X,X),
-  /* 0EE0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0EE8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0EF0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0EF8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 0E80 */  _(x,x),  _(C,x),  _(C,x),  _(x,x),  _(C,x),  _(x,x),  _(x,x),  _(C,x),
+  /* 0E88 */  _(C,x),  _(x,x),  _(C,x),  _(x,x),  _(x,x),  _(C,x),  _(x,x),  _(x,x),
+  /* 0E90 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0E98 */  _(x,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0EA0 */  _(x,x),  _(C,x),  _(C,x),  _(C,x),  _(x,x),  _(C,x),  _(x,x),  _(C,x),
+  /* 0EA8 */  _(x,x),  _(x,x),  _(C,x),  _(C,x),  _(x,x),  _(C,x),  _(C,x),  _(x,x),
+  /* 0EB0 */  _(M,R),  _(M,T),  _(M,R),  _(M,R),  _(M,T),  _(M,T),  _(M,T),  _(M,T),
+  /* 0EB8 */  _(M,B),  _(M,B),  _(x,x),  _(M,T), _(CM,x), _(CM,x),  _(x,x),  _(x,x),
+  /* 0EC0 */_(M,VOL),_(M,VOL),_(M,VOL),_(M,VOL),_(M,VOL),  _(x,x),  _(x,x),  _(x,x),
+  /* 0EC8 */ _(TM,x), _(TM,x), _(TM,x), _(TM,x),  _(x,x), _(Bi,x),  _(x,x),  _(x,x),
+  /* 0ED0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0ED8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(C,x),  _(C,x),  _(x,x),  _(x,x),
+  /* 0EE0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0EE8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0EF0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0EF8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Tibetan  (0F00..0FFF) */
 
-  /* 0F00 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0F08 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0F10 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0F18 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0F20 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0F28 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0F30 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0F38 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0F40 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0F48 */    _(X,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0F50 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0F58 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0F60 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 0F68 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0F70 */    _(X,X),   _(VD,B),   _(VD,T),  _(VD,TB),   _(VD,B),   _(VD,B),  _(VD,TB),  _(VD,TB),
-  /* 0F78 */  _(VD,TB),  _(VD,TB),   _(VD,T),   _(VD,T),   _(VD,T),   _(VD,T),   _(Bi,X),   _(Vs,X),
-  /* 0F80 */   _(VD,T),  _(VD,TB),   _(Bi,X),   _(Bi,X),    _(V,B),    _(A,X),    _(X,X),    _(X,X),
-  /* 0F88 */  _(CHL,X),  _(CHL,X),  _(CHL,X),  _(CHL,X),  _(CHL,X),   _(CS,X),   _(CS,X),   _(CS,X),
-  /* 0F90 */   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),
-  /* 0F98 */    _(X,X),   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),
-  /* 0FA0 */   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),
-  /* 0FA8 */   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),
-  /* 0FB0 */   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),
-  /* 0FB8 */   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),   _(CS,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0FC0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0FC8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0FD0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0FD8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0FE0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0FE8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0FF0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 0FF8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 0F00 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0F08 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0F10 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0F18 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0F20 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0F28 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0F30 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0F38 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0F40 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0F48 */  _(x,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0F50 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0F58 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0F60 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 0F68 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0F70 */  _(x,x),  _(M,B),  _(M,T), _(M,TB),  _(M,B),  _(M,B), _(M,TB), _(M,TB),
+  /* 0F78 */ _(M,TB), _(M,TB),  _(M,T),  _(M,T),  _(M,T),  _(M,T), _(Bi,x), _(Vs,x),
+  /* 0F80 */  _(M,T), _(M,TB), _(Bi,x), _(Bi,x),  _(V,B),  _(A,x),  _(x,x),  _(x,x),
+  /* 0F88 */_(CHL,x),_(CHL,x),_(CHL,x),_(CHL,x),_(CHL,x), _(CS,x), _(CS,x), _(CS,x),
+  /* 0F90 */ _(CS,x), _(CS,x), _(CS,x), _(CS,x), _(CS,x), _(CS,x), _(CS,x), _(CS,x),
+  /* 0F98 */  _(x,x), _(CS,x), _(CS,x), _(CS,x), _(CS,x), _(CS,x), _(CS,x), _(CS,x),
+  /* 0FA0 */ _(CS,x), _(CS,x), _(CS,x), _(CS,x), _(CS,x), _(CS,x), _(CS,x), _(CS,x),
+  /* 0FA8 */ _(CS,x), _(CS,x), _(CS,x), _(CS,x), _(CS,x), _(CS,x), _(CS,x), _(CS,x),
+  /* 0FB0 */ _(CS,x), _(CS,x), _(CS,x), _(CS,x), _(CS,x), _(CS,x), _(CS,x), _(CS,x),
+  /* 0FB8 */ _(CS,x), _(CS,x), _(CS,x), _(CS,x), _(CS,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0FC0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0FC8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0FD0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0FD8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0FE0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0FE8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0FF0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 0FF8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Myanmar  (1000..109F) */
 
-  /* 1000 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1008 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1010 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1018 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1020 */    _(C,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* 1028 */   _(VI,X),   _(VI,X),   _(VI,X),   _(VD,R),   _(VD,R),   _(VD,T),   _(VD,T),   _(VD,B),
-  /* 1030 */   _(VD,B),   _(VD,L),   _(VD,T),   _(VD,T),   _(VD,T),   _(VD,T),   _(Bi,X),   _(TM,X),
-  /* 1038 */   _(Vs,X),    _(V,I),    _(V,T),   _(CM,X),   _(CM,X),   _(CM,X),   _(CM,X),    _(C,X),
-  /* 1040 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1048 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1050 */    _(C,X),    _(C,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VD,R),   _(VD,R),
-  /* 1058 */   _(VD,B),   _(VD,B),    _(C,X),    _(C,X),    _(C,X),    _(C,X),   _(CM,X),   _(CM,X),
-  /* 1060 */   _(CM,X),    _(C,X),   _(VD,R),   _(TM,X),   _(TM,X),    _(C,X),    _(C,X),   _(VD,R),
-  /* 1068 */   _(VD,R),   _(TM,X),   _(TM,X),   _(TM,X),   _(TM,X),   _(TM,X),    _(C,X),    _(C,X),
-  /* 1070 */    _(C,X),   _(VD,T),   _(VD,T),   _(VD,T),   _(VD,T),    _(C,X),    _(C,X),    _(C,X),
-  /* 1078 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1080 */    _(C,X),    _(C,X),   _(CM,X),   _(VD,R),   _(VD,L),   _(VD,T),   _(VD,T),   _(TM,X),
-  /* 1088 */   _(TM,X),   _(TM,X),   _(TM,X),   _(TM,X),   _(TM,X),   _(TM,X),    _(C,X),   _(TM,X),
-  /* 1090 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1098 */    _(X,X),    _(X,X),   _(TM,X),   _(TM,X),   _(VD,R),   _(VD,T),    _(X,X),    _(X,X),
+  /* 1000 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1008 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1010 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1018 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1020 */  _(C,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),
+  /* 1028 */ _(VI,x), _(VI,x), _(VI,x),  _(M,R),  _(M,R),  _(M,T),  _(M,T),  _(M,B),
+  /* 1030 */  _(M,B),  _(M,L),  _(M,T),  _(M,T),  _(M,T),  _(M,T), _(Bi,x), _(TM,x),
+  /* 1038 */ _(Vs,x),  _(V,I),  _(V,T), _(CM,x), _(CM,x), _(CM,x), _(CM,x),  _(C,x),
+  /* 1040 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1048 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1050 */  _(C,x),  _(C,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),  _(M,R),  _(M,R),
+  /* 1058 */  _(M,B),  _(M,B),  _(C,x),  _(C,x),  _(C,x),  _(C,x), _(CM,x), _(CM,x),
+  /* 1060 */ _(CM,x),  _(C,x),  _(M,R), _(TM,x), _(TM,x),  _(C,x),  _(C,x),  _(M,R),
+  /* 1068 */  _(M,R), _(TM,x), _(TM,x), _(TM,x), _(TM,x), _(TM,x),  _(C,x),  _(C,x),
+  /* 1070 */  _(C,x),  _(M,T),  _(M,T),  _(M,T),  _(M,T),  _(C,x),  _(C,x),  _(C,x),
+  /* 1078 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1080 */  _(C,x),  _(C,x), _(CM,x),  _(M,R),  _(M,L),  _(M,T),  _(M,T), _(TM,x),
+  /* 1088 */ _(TM,x), _(TM,x), _(TM,x), _(TM,x), _(TM,x), _(TM,x),  _(C,x), _(TM,x),
+  /* 1090 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1098 */  _(x,x),  _(x,x), _(TM,x), _(TM,x),  _(M,R),  _(M,T),  _(x,x),  _(x,x),
 };
 
 static const INDIC_TABLE_ELEMENT_TYPE indic_table_0x1700[] =
@@ -384,50 +384,50 @@ static const INDIC_TABLE_ELEMENT_TYPE indic_table_0x1700[] =
 
   /* Tagalog  (1700..171F) */
 
-  /* 1700 */   _(VI,X),   _(VI,X),   _(VI,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1708 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(X,X),    _(C,X),    _(C,X),
-  /* 1710 */    _(C,X),    _(C,X),   _(VD,T),   _(VD,B),    _(V,B),    _(X,X),    _(X,X),    _(X,X),
-  /* 1718 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 1700 */ _(VI,x), _(VI,x), _(VI,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1708 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(x,x),  _(C,x),  _(C,x),
+  /* 1710 */  _(C,x),  _(C,x),  _(M,T),  _(M,B),  _(V,B),  _(x,x),  _(x,x),  _(x,x),
+  /* 1718 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Hanunoo  (1720..173F) */
 
-  /* 1720 */   _(VI,X),   _(VI,X),   _(VI,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1728 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1730 */    _(C,X),    _(C,X),   _(VD,T),   _(VD,B),    _(V,B),    _(X,X),    _(X,X),    _(X,X),
-  /* 1738 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 1720 */ _(VI,x), _(VI,x), _(VI,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1728 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1730 */  _(C,x),  _(C,x),  _(M,T),  _(M,B),  _(V,B),  _(x,x),  _(x,x),  _(x,x),
+  /* 1738 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Buhid  (1740..175F) */
 
-  /* 1740 */   _(VI,X),   _(VI,X),   _(VI,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1748 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1750 */    _(C,X),    _(C,X),   _(VD,T),   _(VD,B),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1758 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 1740 */ _(VI,x), _(VI,x), _(VI,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1748 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1750 */  _(C,x),  _(C,x),  _(M,T),  _(M,B),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1758 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Tagbanwa  (1760..177F) */
 
-  /* 1760 */   _(VI,X),   _(VI,X),   _(VI,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1768 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(X,X),    _(C,X),    _(C,X),
-  /* 1770 */    _(C,X),    _(X,X),   _(VD,T),   _(VD,B),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1778 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 1760 */ _(VI,x), _(VI,x), _(VI,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1768 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(x,x),  _(C,x),  _(C,x),
+  /* 1770 */  _(C,x),  _(x,x),  _(M,T),  _(M,B),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1778 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Khmer  (1780..17FF) */
 
-  /* 1780 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1788 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1790 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1798 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 17A0 */    _(C,X),    _(C,X),    _(C,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* 17A8 */   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* 17B0 */   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),    _(X,X),    _(X,X),   _(VD,R),   _(VD,T),
-  /* 17B8 */   _(VD,T),   _(VD,T),   _(VD,T),   _(VD,B),   _(VD,B),   _(VD,B),  _(VD,TL), _(VD,TLR),
-  /* 17C0 */  _(VD,LR),   _(VD,L),   _(VD,L),   _(VD,L),  _(VD,LR),  _(VD,LR),   _(Bi,X),   _(Vs,X),
-  /* 17C8 */   _(VD,R),   _(RS,X),   _(RS,X),    _(X,X),   _(CR,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 17D0 */    _(X,X),    _(V,T),    _(V,I),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 17D8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(A,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 17E0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 17E8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 17F0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 17F8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 1780 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1788 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1790 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1798 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 17A0 */  _(C,x),  _(C,x),  _(C,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),
+  /* 17A8 */ _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),
+  /* 17B0 */ _(VI,x), _(VI,x), _(VI,x), _(VI,x),  _(x,x),  _(x,x),  _(M,R),  _(M,T),
+  /* 17B8 */  _(M,T),  _(M,T),  _(M,T),  _(M,B),  _(M,B),  _(M,B), _(M,TL),_(M,TLR),
+  /* 17C0 */ _(M,LR),  _(M,L),  _(M,L),  _(M,L), _(M,LR), _(M,LR), _(Bi,x), _(Vs,x),
+  /* 17C8 */  _(M,R), _(RS,x), _(RS,x),  _(x,x), _(CR,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 17D0 */  _(x,x),  _(V,T),  _(V,I),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 17D8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(A,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 17E0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 17E8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 17F0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 17F8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 };
 
 static const INDIC_TABLE_ELEMENT_TYPE indic_table_0x1900[] =
@@ -435,75 +435,75 @@ static const INDIC_TABLE_ELEMENT_TYPE indic_table_0x1900[] =
 
   /* Limbu  (1900..194F) */
 
-  /* 1900 */   _(CP,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1908 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1910 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1918 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1920 */   _(VD,T),   _(VD,T),   _(VD,B),   _(VD,R),   _(VD,R),  _(VD,TR),  _(VD,TR),   _(VD,T),
-  /* 1928 */   _(VD,T),   _(CS,X),   _(CS,X),   _(CS,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1930 */   _(CF,X),   _(CF,X),   _(Bi,X),   _(CF,X),   _(CF,X),   _(CF,X),   _(CF,X),   _(CF,X),
-  /* 1938 */   _(CF,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1940 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1948 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 1900 */ _(CP,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1908 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1910 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1918 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1920 */  _(M,T),  _(M,T),  _(M,B),  _(M,R),  _(M,R), _(M,TR), _(M,TR),  _(M,T),
+  /* 1928 */  _(M,T), _(CS,x), _(CS,x), _(CS,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1930 */ _(CF,x), _(CF,x), _(Bi,x), _(CF,x), _(CF,x), _(CF,x), _(CF,x), _(CF,x),
+  /* 1938 */ _(CF,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1940 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1948 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Tai Le  (1950..197F) */
 
-  /* 1950 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1958 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1960 */    _(C,X),    _(C,X),    _(C,X),   _(Vo,X),   _(Vo,X),   _(Vo,X),   _(Vo,X),   _(Vo,X),
-  /* 1968 */   _(Vo,X),   _(Vo,X),   _(Vo,X),   _(Vo,X),   _(Vo,X),   _(Vo,X),    _(X,X),    _(X,X),
-  /* 1970 */   _(TL,X),   _(TL,X),   _(TL,X),   _(TL,X),   _(TL,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1978 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 1950 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1958 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1960 */  _(C,x),  _(C,x),  _(C,x), _(Vo,x), _(Vo,x), _(Vo,x), _(Vo,x), _(Vo,x),
+  /* 1968 */ _(Vo,x), _(Vo,x), _(Vo,x), _(Vo,x), _(Vo,x), _(Vo,x),  _(x,x),  _(x,x),
+  /* 1970 */ _(TL,x), _(TL,x), _(TL,x), _(TL,x), _(TL,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1978 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* New Tai Lue  (1980..19DF) */
 
-  /* 1980 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1988 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1990 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1998 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 19A0 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 19A8 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 19B0 */   _(VD,R),   _(VD,R),   _(VD,R),   _(VD,R),   _(VD,R),   _(VD,L),   _(VD,L),   _(VD,L),
-  /* 19B8 */   _(VD,R),   _(VD,R),   _(VD,L),   _(VD,R),   _(VD,R),   _(VD,R),   _(VD,R),   _(VD,R),
-  /* 19C0 */   _(VD,R),   _(CF,X),   _(CF,X),   _(CF,X),   _(CF,X),   _(CF,X),   _(CF,X),   _(CF,X),
-  /* 19C8 */   _(TM,X),   _(TM,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 19D0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 19D8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 1980 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1988 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1990 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1998 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 19A0 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 19A8 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 19B0 */  _(M,R),  _(M,R),  _(M,R),  _(M,R),  _(M,R),  _(M,L),  _(M,L),  _(M,L),
+  /* 19B8 */  _(M,R),  _(M,R),  _(M,L),  _(M,R),  _(M,R),  _(M,R),  _(M,R),  _(M,R),
+  /* 19C0 */  _(M,R), _(CF,x), _(CF,x), _(CF,x), _(CF,x), _(CF,x), _(CF,x), _(CF,x),
+  /* 19C8 */ _(TM,x), _(TM,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 19D0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 19D8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* FILLER  (19E0..19FF) */
 
-  /* 19E0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 19E8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 19F0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 19F8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 19E0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 19E8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 19F0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 19F8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Buginese  (1A00..1A1F) */
 
-  /* 1A00 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1A08 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1A10 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),   _(VD,T),
-  /* 1A18 */   _(VD,B),   _(VD,L),   _(VD,R),   _(VD,L),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 1A00 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1A08 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1A10 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(M,T),
+  /* 1A18 */  _(M,B),  _(M,L),  _(M,R),  _(M,L),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Tai Tham  (1A20..1AAF) */
 
-  /* 1A20 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1A28 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1A30 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1A38 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1A40 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1A48 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* 1A50 */   _(VI,X),   _(VI,X),   _(VI,X),    _(C,X),    _(C,X),   _(CM,X),   _(CM,X),   _(CF,X),
-  /* 1A58 */   _(CF,X),   _(CF,X),   _(CF,X),   _(CF,X),   _(CF,X),   _(CF,X),   _(CF,X),    _(X,X),
-  /* 1A60 */    _(V,I),   _(VD,R),   _(VD,T),   _(VD,R),   _(VD,R),   _(VD,T),   _(VD,T),   _(VD,T),
-  /* 1A68 */   _(VD,T),   _(VD,B),   _(VD,B),   _(VD,T),   _(VD,B),   _(VD,R),   _(VD,L),   _(VD,L),
-  /* 1A70 */   _(VD,L),   _(VD,L),   _(VD,L),   _(VD,T),   _(VD,T),   _(TM,X),   _(TM,X),   _(TM,X),
-  /* 1A78 */   _(TM,X),   _(TM,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1A80 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1A88 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1A90 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1A98 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1AA0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1AA8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 1A20 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1A28 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1A30 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1A38 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1A40 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1A48 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x), _(VI,x), _(VI,x), _(VI,x),
+  /* 1A50 */ _(VI,x), _(VI,x), _(VI,x),  _(C,x),  _(C,x), _(CM,x), _(CM,x), _(CF,x),
+  /* 1A58 */ _(CF,x), _(CF,x), _(CF,x), _(CF,x), _(CF,x), _(CF,x), _(CF,x),  _(x,x),
+  /* 1A60 */  _(V,I),  _(M,R),  _(M,T),  _(M,R),  _(M,R),  _(M,T),  _(M,T),  _(M,T),
+  /* 1A68 */  _(M,T),  _(M,B),  _(M,B),  _(M,T),  _(M,B),  _(M,R),  _(M,L),  _(M,L),
+  /* 1A70 */  _(M,L),  _(M,L),  _(M,L),  _(M,T),  _(M,T), _(TM,x), _(TM,x), _(TM,x),
+  /* 1A78 */ _(TM,x), _(TM,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1A80 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1A88 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1A90 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1A98 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1AA0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1AA8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 };
 
 static const INDIC_TABLE_ELEMENT_TYPE indic_table_0x1b00[] =
@@ -511,57 +511,57 @@ static const INDIC_TABLE_ELEMENT_TYPE indic_table_0x1b00[] =
 
   /* Balinese  (1B00..1B7F) */
 
-  /* 1B00 */   _(Bi,X),   _(Bi,X),   _(Bi,X),   _(CR,X),   _(Vs,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* 1B08 */   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* 1B10 */   _(VI,X),   _(VI,X),   _(VI,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1B18 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1B20 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1B28 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1B30 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(N,X),   _(VD,R),   _(VD,T),   _(VD,T),
-  /* 1B38 */   _(VD,B),   _(VD,B),   _(VD,B),  _(VD,BR),  _(VD,TB), _(VD,TBR),   _(VD,L),   _(VD,L),
-  /* 1B40 */  _(VD,LR),  _(VD,LR),   _(VD,T),  _(VD,TR),    _(V,R),    _(C,X),    _(C,X),    _(C,X),
-  /* 1B48 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1B50 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1B58 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1B60 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1B68 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1B70 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1B78 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 1B00 */ _(Bi,x), _(Bi,x), _(Bi,x), _(CR,x), _(Vs,x), _(VI,x), _(VI,x), _(VI,x),
+  /* 1B08 */ _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),
+  /* 1B10 */ _(VI,x), _(VI,x), _(VI,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1B18 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1B20 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1B28 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1B30 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(N,x),  _(M,R),  _(M,T),  _(M,T),
+  /* 1B38 */  _(M,B),  _(M,B),  _(M,B), _(M,BR), _(M,TB),_(M,TBR),  _(M,L),  _(M,L),
+  /* 1B40 */ _(M,LR), _(M,LR),  _(M,T), _(M,TR),  _(V,R),  _(C,x),  _(C,x),  _(C,x),
+  /* 1B48 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1B50 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1B58 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1B60 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1B68 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1B70 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1B78 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Sundanese  (1B80..1BBF) */
 
-  /* 1B80 */   _(Bi,X),   _(CR,X),   _(Vs,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* 1B88 */   _(VI,X),   _(VI,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1B90 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1B98 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1BA0 */    _(C,X),   _(CS,X),   _(CS,X),   _(CS,X),   _(VD,T),   _(VD,B),   _(VD,L),   _(VD,R),
-  /* 1BA8 */   _(VD,T),   _(VD,T),    _(V,R),    _(X,X),    _(X,X),    _(X,X),    _(C,X),    _(C,X),
-  /* 1BB0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1BB8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 1B80 */ _(Bi,x), _(CR,x), _(Vs,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),
+  /* 1B88 */ _(VI,x), _(VI,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1B90 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1B98 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1BA0 */  _(C,x), _(CS,x), _(CS,x), _(CS,x),  _(M,T),  _(M,B),  _(M,L),  _(M,R),
+  /* 1BA8 */  _(M,T),  _(M,T),  _(V,R),  _(x,x),  _(x,x),  _(x,x),  _(C,x),  _(C,x),
+  /* 1BB0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1BB8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Batak  (1BC0..1BFF) */
 
-  /* 1BC0 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1BC8 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1BD0 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1BD8 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1BE0 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),   _(VI,X),   _(VI,X),    _(N,X),   _(VD,X),
-  /* 1BE8 */   _(VD,X),   _(VD,X),   _(VD,X),   _(VD,X),   _(VD,X),   _(VD,X),   _(VD,X),   _(VD,X),
-  /* 1BF0 */   _(CF,X),   _(CF,X),    _(V,R),    _(V,R),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1BF8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 1BC0 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1BC8 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1BD0 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1BD8 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1BE0 */  _(C,x),  _(C,x),  _(C,x),  _(C,x), _(VI,x), _(VI,x),  _(N,x),  _(M,x),
+  /* 1BE8 */  _(M,x),  _(M,x),  _(M,x),  _(M,x),  _(M,x),  _(M,x),  _(M,x),  _(M,x),
+  /* 1BF0 */ _(CF,x), _(CF,x),  _(V,R),  _(V,R),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1BF8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Lepcha  (1C00..1C4F) */
 
-  /* 1C00 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1C08 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1C10 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1C18 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 1C20 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),   _(CS,X),   _(CS,X),   _(VD,R),   _(VD,L),
-  /* 1C28 */   _(VD,L),  _(VD,TL),   _(VD,R),   _(VD,R),   _(VD,B),   _(CF,X),   _(CF,X),   _(CF,X),
-  /* 1C30 */   _(CF,X),   _(CF,X),   _(CF,X),   _(CF,X),   _(Bi,X),   _(Bi,X),    _(X,X),    _(N,X),
-  /* 1C38 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1C40 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 1C48 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(C,X),    _(C,X),    _(C,X),
+  /* 1C00 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1C08 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1C10 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1C18 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 1C20 */  _(C,x),  _(C,x),  _(C,x),  _(C,x), _(CS,x), _(CS,x),  _(M,R),  _(M,L),
+  /* 1C28 */  _(M,L), _(M,TL),  _(M,R),  _(M,R),  _(M,B), _(CF,x), _(CF,x), _(CF,x),
+  /* 1C30 */ _(CF,x), _(CF,x), _(CF,x), _(CF,x), _(Bi,x), _(Bi,x),  _(x,x),  _(N,x),
+  /* 1C38 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1C40 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 1C48 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(C,x),  _(C,x),  _(C,x),
 };
 
 static const INDIC_TABLE_ELEMENT_TYPE indic_table_0xa800[] =
@@ -569,134 +569,134 @@ static const INDIC_TABLE_ELEMENT_TYPE indic_table_0xa800[] =
 
   /* Syloti Nagri  (A800..A82F) */
 
-  /* A800 */   _(VI,X),   _(VI,X),    _(X,X),   _(VI,X),   _(VI,X),   _(VI,X),    _(V,T),    _(C,X),
-  /* A808 */    _(C,X),    _(C,X),    _(C,X),   _(Bi,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* A810 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* A818 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* A820 */    _(C,X),    _(C,X),    _(C,X),   _(VD,R),   _(VD,R),   _(VD,B),   _(VD,T),   _(VD,R),
-  /* A828 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* A800 */ _(VI,x), _(VI,x),  _(x,x), _(VI,x), _(VI,x), _(VI,x),  _(V,T),  _(C,x),
+  /* A808 */  _(C,x),  _(C,x),  _(C,x), _(Bi,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* A810 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* A818 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* A820 */  _(C,x),  _(C,x),  _(C,x),  _(M,R),  _(M,R),  _(M,B),  _(M,T),  _(M,R),
+  /* A828 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* FILLER  (A830..A83F) */
 
-  /* A830 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* A838 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* A830 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* A838 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Phags-pa  (A840..A87F) */
 
-  /* A840 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* A848 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* A850 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* A858 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),   _(Vo,X),   _(Vo,X),
-  /* A860 */   _(Vo,X),   _(Vo,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),   _(Vo,X),   _(CS,X),
-  /* A868 */   _(CS,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* A870 */    _(C,X),   _(CS,X),    _(C,X),   _(Bi,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* A878 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* A840 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* A848 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* A850 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* A858 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x), _(Vo,x), _(Vo,x),
+  /* A860 */ _(Vo,x), _(Vo,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x), _(Vo,x), _(CS,x),
+  /* A868 */ _(CS,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* A870 */  _(C,x), _(CS,x),  _(C,x), _(Bi,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* A878 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Saurashtra  (A880..A8DF) */
 
-  /* A880 */   _(Bi,X),   _(Vs,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* A888 */   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* A890 */   _(VI,X),   _(VI,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* A898 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* A8A0 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* A8A8 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* A8B0 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),   _(CF,X),   _(VD,R),   _(VD,R),   _(VD,R),
-  /* A8B8 */   _(VD,R),   _(VD,R),   _(VD,R),   _(VD,R),   _(VD,R),   _(VD,R),   _(VD,R),   _(VD,R),
-  /* A8C0 */   _(VD,R),   _(VD,R),   _(VD,R),   _(VD,R),    _(V,B),    _(X,X),    _(X,X),    _(X,X),
-  /* A8C8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* A8D0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* A8D8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* A880 */ _(Bi,x), _(Vs,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),
+  /* A888 */ _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),
+  /* A890 */ _(VI,x), _(VI,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* A898 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* A8A0 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* A8A8 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* A8B0 */  _(C,x),  _(C,x),  _(C,x),  _(C,x), _(CF,x),  _(M,R),  _(M,R),  _(M,R),
+  /* A8B8 */  _(M,R),  _(M,R),  _(M,R),  _(M,R),  _(M,R),  _(M,R),  _(M,R),  _(M,R),
+  /* A8C0 */  _(M,R),  _(M,R),  _(M,R),  _(M,R),  _(V,B),  _(x,x),  _(x,x),  _(x,x),
+  /* A8C8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* A8D0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* A8D8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* FILLER  (A8E0..A8FF) */
 
-  /* A8E0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* A8E8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* A8F0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* A8F8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* A8E0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* A8E8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* A8F0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* A8F8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Kayah Li  (A900..A92F) */
 
-  /* A900 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* A908 */    _(X,X),    _(X,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* A910 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* A918 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* A920 */    _(C,X),    _(C,X),   _(Vo,X),   _(Vo,X),   _(Vo,X),   _(Vo,X),   _(Vo,X),   _(Vo,X),
-  /* A928 */   _(Vo,X),   _(Vo,X),   _(Vo,X),   _(TM,X),   _(TM,X),   _(TM,X),    _(X,X),    _(X,X),
+  /* A900 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* A908 */  _(x,x),  _(x,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* A910 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* A918 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* A920 */  _(C,x),  _(C,x), _(Vo,x), _(Vo,x), _(Vo,x), _(Vo,x), _(Vo,x), _(Vo,x),
+  /* A928 */ _(Vo,x), _(Vo,x), _(Vo,x), _(TM,x), _(TM,x), _(TM,x),  _(x,x),  _(x,x),
 
   /* Rejang  (A930..A95F) */
 
-  /* A930 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* A938 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* A940 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),   _(VD,B),
-  /* A948 */   _(VD,B),   _(VD,B),   _(VD,T),   _(VD,B),   _(VD,B),   _(VD,B),   _(VD,B),   _(CF,X),
-  /* A950 */   _(CF,X),   _(CF,X),   _(CF,X),    _(V,R),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* A958 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* A930 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* A938 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* A940 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(M,B),
+  /* A948 */  _(M,B),  _(M,B),  _(M,T),  _(M,B),  _(M,B),  _(M,B),  _(M,B), _(CF,x),
+  /* A950 */ _(CF,x), _(CF,x), _(CF,x),  _(V,R),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* A958 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* FILLER  (A960..A97F) */
 
-  /* A960 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* A968 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* A970 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* A978 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* A960 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* A968 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* A970 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* A978 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Javanese  (A980..A9DF) */
 
-  /* A980 */   _(Bi,X),   _(Bi,X),   _(CR,X),   _(Vs,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* A988 */   _(VI,X),    _(C,X),    _(C,X),    _(C,X),   _(VI,X),   _(VI,X),   _(VI,X),    _(C,X),
-  /* A990 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* A998 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* A9A0 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* A9A8 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* A9B0 */    _(C,X),    _(C,X),    _(C,X),    _(N,X),   _(VD,R),   _(VD,R),   _(VD,T),   _(VD,T),
-  /* A9B8 */   _(VD,B),   _(VD,B),   _(VD,L),   _(VD,L),   _(VD,T),   _(CS,X),   _(CM,X),   _(CM,X),
-  /* A9C0 */   _(V,BR),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* A9C8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* A9D0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* A9D8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* A980 */ _(Bi,x), _(Bi,x), _(CR,x), _(Vs,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),
+  /* A988 */ _(VI,x),  _(C,x),  _(C,x),  _(C,x), _(VI,x), _(VI,x), _(VI,x),  _(C,x),
+  /* A990 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* A998 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* A9A0 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* A9A8 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* A9B0 */  _(C,x),  _(C,x),  _(C,x),  _(N,x),  _(M,R),  _(M,R),  _(M,T),  _(M,T),
+  /* A9B8 */  _(M,B),  _(M,B),  _(M,L),  _(M,L),  _(M,T), _(CS,x), _(CM,x), _(CM,x),
+  /* A9C0 */ _(V,BR),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* A9C8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* A9D0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* A9D8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* FILLER  (A9E0..A9FF) */
 
-  /* A9E0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* A9E8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* A9F0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* A9F8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* A9E0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* A9E8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* A9F0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* A9F8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Cham  (AA00..AA5F) */
 
-  /* AA00 */   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),    _(C,X),    _(C,X),
-  /* AA08 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* AA10 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* AA18 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* AA20 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* AA28 */    _(C,X),   _(VD,T),   _(VD,T),   _(VD,T),   _(VD,T),   _(VD,B),   _(VD,T),   _(VD,L),
-  /* AA30 */   _(VD,L),   _(VD,T),   _(VD,B),   _(CM,X),   _(CM,X),   _(CM,X),   _(CM,X),    _(X,X),
-  /* AA38 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* AA40 */   _(CF,X),   _(CF,X),   _(CF,X),   _(CF,X),   _(CF,X),   _(CF,X),   _(CF,X),   _(CF,X),
-  /* AA48 */   _(CF,X),   _(CF,X),   _(CF,X),   _(CF,X),   _(CF,X),   _(CF,X),    _(X,X),    _(X,X),
-  /* AA50 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* AA58 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* AA00 */ _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),  _(C,x),  _(C,x),
+  /* AA08 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* AA10 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* AA18 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* AA20 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* AA28 */  _(C,x),  _(M,T),  _(M,T),  _(M,T),  _(M,T),  _(M,B),  _(M,T),  _(M,L),
+  /* AA30 */  _(M,L),  _(M,T),  _(M,B), _(CM,x), _(CM,x), _(CM,x), _(CM,x),  _(x,x),
+  /* AA38 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* AA40 */ _(CF,x), _(CF,x), _(CF,x), _(CF,x), _(CF,x), _(CF,x), _(CF,x), _(CF,x),
+  /* AA48 */ _(CF,x), _(CF,x), _(CF,x), _(CF,x), _(CF,x), _(CF,x),  _(x,x),  _(x,x),
+  /* AA50 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* AA58 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Myanmar Extended-A  (AA60..AA7F) */
 
-  /* AA60 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* AA68 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* AA70 */    _(X,X),    _(C,X),    _(C,X),    _(C,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* AA78 */    _(X,X),    _(X,X),    _(C,X),   _(TM,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* AA60 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* AA68 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* AA70 */  _(x,x),  _(C,x),  _(C,x),  _(C,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* AA78 */  _(x,x),  _(x,x),  _(C,x), _(TM,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Tai Viet  (AA80..AADF) */
 
-  /* AA80 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* AA88 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* AA90 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* AA98 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* AAA0 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* AAA8 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* AAB0 */   _(VD,T),   _(VD,R),   _(VD,T),   _(VD,T),   _(VD,B), _(VD,VOL), _(VD,VOL),   _(VD,T),
-  /* AAB8 */   _(VD,T), _(VD,VOL),   _(VD,R), _(VD,VOL), _(VD,VOL),   _(VD,R),   _(VD,T),   _(TM,X),
-  /* AAC0 */   _(TL,X),   _(TM,X),   _(TL,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* AAC8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* AAD0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* AAD8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* AA80 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* AA88 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* AA90 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* AA98 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* AAA0 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* AAA8 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* AAB0 */  _(M,T),  _(M,R),  _(M,T),  _(M,T),  _(M,B),_(M,VOL),_(M,VOL),  _(M,T),
+  /* AAB8 */  _(M,T),_(M,VOL),  _(M,R),_(M,VOL),_(M,VOL),  _(M,R),  _(M,T), _(TM,x),
+  /* AAC0 */ _(TL,x), _(TM,x), _(TL,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* AAC8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* AAD0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* AAD8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 };
 
 static const INDIC_TABLE_ELEMENT_TYPE indic_table_0xabc0[] =
@@ -704,14 +704,14 @@ static const INDIC_TABLE_ELEMENT_TYPE indic_table_0xabc0[] =
 
   /* Meetei Mayek  (ABC0..ABFF) */
 
-  /* ABC0 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* ABC8 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* ABD0 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* ABD8 */    _(C,X),    _(C,X),    _(C,X),   _(CF,X),   _(CF,X),   _(CF,X),   _(CF,X),   _(CF,X),
-  /* ABE0 */   _(CF,X),   _(CF,X),   _(CF,X),   _(VD,R),   _(VD,R),   _(VD,T),   _(VD,R),   _(VD,R),
-  /* ABE8 */   _(VD,B),   _(VD,R),   _(VD,R),    _(X,X),   _(TM,X),    _(V,B),    _(X,X),    _(X,X),
-  /* ABF0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* ABF8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* ABC0 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* ABC8 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* ABD0 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* ABD8 */  _(C,x),  _(C,x),  _(C,x), _(CF,x), _(CF,x), _(CF,x), _(CF,x), _(CF,x),
+  /* ABE0 */ _(CF,x), _(CF,x), _(CF,x),  _(M,R),  _(M,R),  _(M,T),  _(M,R),  _(M,R),
+  /* ABE8 */  _(M,B),  _(M,R),  _(M,R),  _(x,x), _(TM,x),  _(V,B),  _(x,x),  _(x,x),
+  /* ABF0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* ABF8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 };
 
 static const INDIC_TABLE_ELEMENT_TYPE indic_table_0x10a00[] =
@@ -719,18 +719,18 @@ static const INDIC_TABLE_ELEMENT_TYPE indic_table_0x10a00[] =
 
   /* Kharoshthi  (10A00..10A5F) */
 
-  /* 10A00 */    _(C,X),   _(VD,O),   _(VD,B),   _(VD,B),    _(X,X),   _(VD,T),   _(VD,O),    _(X,X),
-  /* 10A08 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),   _(VD,B),    _(X,X),   _(Bi,X),   _(Vs,X),
-  /* 10A10 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(X,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 10A18 */    _(X,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 10A20 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 10A28 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 10A30 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 10A38 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(V,I),
-  /* 10A40 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 10A48 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 10A50 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 10A58 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 10A00 */  _(C,x),  _(M,O),  _(M,B),  _(M,B),  _(x,x),  _(M,T),  _(M,O),  _(x,x),
+  /* 10A08 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(M,B),  _(x,x), _(Bi,x), _(Vs,x),
+  /* 10A10 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(x,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 10A18 */  _(x,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 10A20 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 10A28 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 10A30 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 10A38 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(V,I),
+  /* 10A40 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 10A48 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 10A50 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 10A58 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 };
 
 static const INDIC_TABLE_ELEMENT_TYPE indic_table_0x11000[] =
@@ -738,35 +738,35 @@ static const INDIC_TABLE_ELEMENT_TYPE indic_table_0x11000[] =
 
   /* Brahmi  (11000..1107F) */
 
-  /* 11000 */   _(Bi,X),   _(Bi,X),   _(Vs,X),    _(X,X),    _(X,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* 11008 */   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* 11010 */   _(VI,X),   _(VI,X),   _(VI,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 11018 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 11020 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 11028 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 11030 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 11038 */   _(VD,T),   _(VD,T),   _(VD,T),   _(VD,T),   _(VD,B),   _(VD,B),   _(VD,B),   _(VD,B),
-  /* 11040 */   _(VD,B),   _(VD,B),   _(VD,T),   _(VD,T),   _(VD,T),   _(VD,T),    _(V,T),    _(X,X),
-  /* 11048 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 11050 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 11058 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 11060 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 11068 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 11070 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 11078 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 11000 */ _(Bi,x), _(Bi,x), _(Vs,x),  _(x,x),  _(x,x), _(VI,x), _(VI,x), _(VI,x),
+  /* 11008 */ _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),
+  /* 11010 */ _(VI,x), _(VI,x), _(VI,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 11018 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 11020 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 11028 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 11030 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 11038 */  _(M,T),  _(M,T),  _(M,T),  _(M,T),  _(M,B),  _(M,B),  _(M,B),  _(M,B),
+  /* 11040 */  _(M,B),  _(M,B),  _(M,T),  _(M,T),  _(M,T),  _(M,T),  _(V,T),  _(x,x),
+  /* 11048 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 11050 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 11058 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 11060 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 11068 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 11070 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 11078 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 
   /* Kaithi  (11080..110CF) */
 
-  /* 11080 */   _(Bi,X),   _(Bi,X),   _(Vs,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),
-  /* 11088 */   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),   _(VI,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 11090 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 11098 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 110A0 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 110A8 */    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),    _(C,X),
-  /* 110B0 */   _(VD,R),   _(VD,L),   _(VD,R),   _(VD,B),   _(VD,B),   _(VD,T),   _(VD,T),   _(VD,R),
-  /* 110B8 */   _(VD,R),    _(V,B),    _(N,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 110C0 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
-  /* 110C8 */    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),    _(X,X),
+  /* 11080 */ _(Bi,x), _(Bi,x), _(Vs,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),
+  /* 11088 */ _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 11090 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 11098 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 110A0 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 110A8 */  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),  _(C,x),
+  /* 110B0 */  _(M,R),  _(M,L),  _(M,R),  _(M,B),  _(M,B),  _(M,T),  _(M,T),  _(M,R),
+  /* 110B8 */  _(M,R),  _(V,B),  _(N,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 110C0 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
+  /* 110C8 */  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),  _(x,x),
 };
 
 
@@ -781,9 +781,9 @@ get_indic_categories (hb_codepoint_t u)
   if (0xABC0 <= u && u <= 0xABC0 + ARRAY_LENGTH (indic_table_0xabc0)) return indic_table_0xabc0[u - 0xABC0];
   if (0x10A00 <= u && u <= 0x10A00 + ARRAY_LENGTH (indic_table_0x10a00)) return indic_table_0x10a00[u - 0x10A00];
   if (0x11000 <= u && u <= 0x11000 + ARRAY_LENGTH (indic_table_0x11000)) return indic_table_0x11000[u - 0x11000];
-  if (unlikely (u == 0x00A0)) return _(CP,X);
-  if (unlikely (u == 0x25CC)) return _(CP,X);
-  return _(X,X);
+  if (unlikely (u == 0x00A0)) return _(CP,x);
+  if (unlikely (u == 0x25CC)) return _(CP,x);
+  return _(x,x);
 }
 
 #undef _
@@ -800,14 +800,14 @@ get_indic_categories (hb_codepoint_t u)
 #undef ISC_CS
 #undef ISC_ML
 #undef ISC_N
-#undef ISC_X
+#undef ISC_x
 #undef ISC_RS
 #undef ISC_TL
 #undef ISC_TM
 #undef ISC_V
 #undef ISC_Vs
 #undef ISC_Vo
-#undef ISC_VD
+#undef ISC_M
 #undef ISC_VI
 
 #undef IMC_B
@@ -815,7 +815,7 @@ get_indic_categories (hb_codepoint_t u)
 #undef IMC_I
 #undef IMC_L
 #undef IMC_LR
-#undef IMC_X
+#undef IMC_x
 #undef IMC_O
 #undef IMC_R
 #undef IMC_T