[前][次][番号順一覧][スレッド一覧]

ruby-changes:13545

From: naruse <ko1@a...>
Date: Tue, 13 Oct 2009 21:27:25 +0900 (JST)
Subject: [ruby-changes:13545] Ruby:r25324 (trunk): Add derived core and binary property and aliases.

naruse	2009-10-13 21:27:00 +0900 (Tue, 13 Oct 2009)

  New Revision: 25324

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=25324

  Log:
    Add derived core and binary property and aliases.
    
    * tool/enc-unicode.rb,
      enc/unicode/name2ctype.h, enc/unicode/name2ctype.h.blt,
      enc/unicode/name2ctype.kwd, enc/unicode/name2ctype.src:
      Add DerivedCoreProperties, PropList (Binary Property),
      PropertyAlias and PropertyValueAlias.
      Now users of tool/enc-unicode.rb should specify
      the directory of UCD files.

  Modified files:
    trunk/ChangeLog
    trunk/enc/unicode/name2ctype.h
    trunk/enc/unicode/name2ctype.h.blt
    trunk/enc/unicode/name2ctype.kwd
    trunk/enc/unicode/name2ctype.src
    trunk/tool/enc-unicode.rb

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 25323)
+++ ChangeLog	(revision 25324)
@@ -1,3 +1,13 @@
+Tue Oct 13 21:05:01 2009  NARUSE, Yui  <naruse@r...>
+
+	* tool/enc-unicode.rb,
+	  enc/unicode/name2ctype.h, enc/unicode/name2ctype.h.blt,
+	  enc/unicode/name2ctype.kwd, enc/unicode/name2ctype.src:
+	  Add DerivedCoreProperties, PropList (Binary Property),
+	  PropertyAlias and PropertyValueAlias.
+	  Now users of tool/enc-unicode.rb should specify
+	  the directory of UCD files.
+
 Tue Oct 13 18:54:25 2009  Hidetoshi NAGAI  <nagai@a...>
 
 	* ext/tk/variable.rb: bug fix. additional trace definition changes the
Index: enc/unicode/name2ctype.kwd
===================================================================
--- enc/unicode/name2ctype.kwd	(revision 25323)
+++ enc/unicode/name2ctype.kwd	(revision 25324)
@@ -8683,6 +8683,7311 @@
 	0x3000, 0x3000,
 }; /* CR_Zs */
 
+/* 'Math': Derived Property */
+static const OnigCodePoint CR_Math[] = {
+	105,
+	0x002b, 0x002b,
+	0x003c, 0x003e,
+	0x005e, 0x005e,
+	0x007c, 0x007c,
+	0x007e, 0x007e,
+	0x00ac, 0x00ac,
+	0x00b1, 0x00b1,
+	0x00d7, 0x00d7,
+	0x00f7, 0x00f7,
+	0x03d0, 0x03d2,
+	0x03d5, 0x03d5,
+	0x03f0, 0x03f1,
+	0x03f4, 0x03f6,
+	0x0606, 0x0608,
+	0x2016, 0x2016,
+	0x2032, 0x2034,
+	0x2040, 0x2040,
+	0x2044, 0x2044,
+	0x2052, 0x2052,
+	0x2061, 0x2064,
+	0x207a, 0x207e,
+	0x208a, 0x208e,
+	0x20d0, 0x20dc,
+	0x20e1, 0x20e1,
+	0x20e5, 0x20e6,
+	0x20eb, 0x20ef,
+	0x2102, 0x2102,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2119, 0x211d,
+	0x2124, 0x2124,
+	0x2128, 0x2129,
+	0x212c, 0x212d,
+	0x212f, 0x2131,
+	0x2133, 0x2138,
+	0x213c, 0x2149,
+	0x214b, 0x214b,
+	0x2190, 0x21a7,
+	0x21a9, 0x21ae,
+	0x21b0, 0x21b1,
+	0x21b6, 0x21b7,
+	0x21bc, 0x21db,
+	0x21dd, 0x21dd,
+	0x21e4, 0x21e5,
+	0x21f4, 0x22ff,
+	0x2308, 0x230b,
+	0x2320, 0x2321,
+	0x237c, 0x237c,
+	0x239b, 0x23b5,
+	0x23b7, 0x23b7,
+	0x23d0, 0x23d0,
+	0x23dc, 0x23e2,
+	0x25a0, 0x25a1,
+	0x25ae, 0x25b7,
+	0x25bc, 0x25c1,
+	0x25c6, 0x25c7,
+	0x25ca, 0x25cb,
+	0x25cf, 0x25d3,
+	0x25e2, 0x25e2,
+	0x25e4, 0x25e4,
+	0x25e7, 0x25ec,
+	0x25f8, 0x25ff,
+	0x2605, 0x2606,
+	0x2640, 0x2640,
+	0x2642, 0x2642,
+	0x2660, 0x2663,
+	0x266d, 0x266f,
+	0x27c0, 0x27ca,
+	0x27cc, 0x27cc,
+	0x27d0, 0x27ff,
+	0x2900, 0x2aff,
+	0x2b30, 0x2b44,
+	0x2b47, 0x2b4c,
+	0xfb29, 0xfb29,
+	0xfe61, 0xfe66,
+	0xfe68, 0xfe68,
+	0xff0b, 0xff0b,
+	0xff1c, 0xff1e,
+	0xff3c, 0xff3c,
+	0xff3e, 0xff3e,
+	0xff5c, 0xff5c,
+	0xff5e, 0xff5e,
+	0xffe2, 0xffe2,
+	0xffe9, 0xffec,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d7cb,
+	0x1d7ce, 0x1d7ff,
+}; /* CR_Math */
+
+/* 'Alphabetic': Derived Property */
+static const OnigCodePoint CR_Alphabetic[] = {
+	474,
+	0x0041, 0x005a,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0345, 0x0345,
+	0x0370, 0x0374,
+	0x0376, 0x0377,
+	0x037a, 0x037d,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x0559,
+	0x0561, 0x0587,
+	0x05b0, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f2,
+	0x0610, 0x061a,
+	0x0621, 0x0657,
+	0x0659, 0x065e,
+	0x066e, 0x06d3,
+	0x06d5, 0x06dc,
+	0x06e1, 0x06e8,
+	0x06ed, 0x06ef,
+	0x06fa, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x073f,
+	0x074d, 0x07b1,
+	0x07ca, 0x07ea,
+	0x07f4, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0800, 0x0817,
+	0x081a, 0x082c,
+	0x0900, 0x0939,
+	0x093d, 0x094c,
+	0x094e, 0x094e,
+	0x0950, 0x0950,
+	0x0955, 0x0955,
+	0x0958, 0x0963,
+	0x0971, 0x0972,
+	0x0979, 0x097f,
+	0x0981, 0x0983,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bd, 0x09c4,
+	0x09c7, 0x09c8,
+	0x09cb, 0x09cc,
+	0x09ce, 0x09ce,
+	0x09d7, 0x09d7,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e3,
+	0x09f0, 0x09f1,
+	0x0a01, 0x0a03,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a3e, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4c,
+	0x0a51, 0x0a51,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a70, 0x0a75,
+	0x0a81, 0x0a83,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abd, 0x0ac5,
+	0x0ac7, 0x0ac9,
+	0x0acb, 0x0acc,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae3,
+	0x0b01, 0x0b03,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3d, 0x0b44,
+	0x0b47, 0x0b48,
+	0x0b4b, 0x0b4c,
+	0x0b56, 0x0b57,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b63,
+	0x0b71, 0x0b71,
+	0x0b82, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bbe, 0x0bc2,
+	0x0bc6, 0x0bc8,
+	0x0bca, 0x0bcc,
+	0x0bd0, 0x0bd0,
+	0x0bd7, 0x0bd7,
+	0x0c01, 0x0c03,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c44,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4c,
+	0x0c55, 0x0c56,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c63,
+	0x0c82, 0x0c83,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbd, 0x0cc4,
+	0x0cc6, 0x0cc8,
+	0x0cca, 0x0ccc,
+	0x0cd5, 0x0cd6,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce3,
+	0x0d02, 0x0d03,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d44,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4c,
+	0x0d57, 0x0d57,
+	0x0d60, 0x0d63,
+	0x0d7a, 0x0d7f,
+	0x0d82, 0x0d83,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0dcf, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0dd8, 0x0ddf,
+	0x0df2, 0x0df3,
+	0x0e01, 0x0e3a,
+	0x0e40, 0x0e46,
+	0x0e4d, 0x0e4d,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb9,
+	0x0ebb, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0ecd, 0x0ecd,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f00,
+	0x0f40, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f71, 0x0f81,
+	0x0f88, 0x0f8b,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x1000, 0x1036,
+	0x1038, 0x1038,
+	0x103b, 0x103f,
+	0x1050, 0x1062,
+	0x1065, 0x1068,
+	0x106e, 0x1086,
+	0x108e, 0x108e,
+	0x109c, 0x109d,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x135f, 0x135f,
+	0x1380, 0x138f,
+	0x13a0, 0x13f4,
+	0x1401, 0x166c,
+	0x166f, 0x167f,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	0x16ee, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1713,
+	0x1720, 0x1733,
+	0x1740, 0x1753,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1772, 0x1773,
+	0x1780, 0x17b3,
+	0x17b6, 0x17c8,
+	0x17d7, 0x17d7,
+	0x17dc, 0x17dc,
+	0x1820, 0x1877,
+	0x1880, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1920, 0x192b,
+	0x1930, 0x1938,
+	0x1950, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19b0, 0x19c9,
+	0x1a00, 0x1a1b,
+	0x1a20, 0x1a5e,
+	0x1a61, 0x1a74,
+	0x1aa7, 0x1aa7,
+	0x1b00, 0x1b33,
+	0x1b35, 0x1b43,
+	0x1b45, 0x1b4b,
+	0x1b80, 0x1ba9,
+	0x1bae, 0x1baf,
+	0x1c00, 0x1c35,
+	0x1c4d, 0x1c4f,
+	0x1c5a, 0x1c7d,
+	0x1ce9, 0x1cec,
+	0x1cee, 0x1cf2,
+	0x1d00, 0x1dbf,
+	0x1e00, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2119, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x212d,
+	0x212f, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x2188,
+	0x24b6, 0x24e9,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cee,
+	0x2d00, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x2de0, 0x2dff,
+	0x2e2f, 0x2e2f,
+	0x3005, 0x3007,
+	0x3021, 0x3029,
+	0x3031, 0x3035,
+	0x3038, 0x303c,
+	0x3041, 0x3096,
+	0x309d, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa4d0, 0xa4fd,
+	0xa500, 0xa60c,
+	0xa610, 0xa61f,
+	0xa62a, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66e,
+	0xa67f, 0xa697,
+	0xa6a0, 0xa6ef,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa801,
+	0xa803, 0xa805,
+	0xa807, 0xa80a,
+	0xa80c, 0xa827,
+	0xa840, 0xa873,
+	0xa880, 0xa8c3,
+	0xa8f2, 0xa8f7,
+	0xa8fb, 0xa8fb,
+	0xa90a, 0xa92a,
+	0xa930, 0xa952,
+	0xa960, 0xa97c,
+	0xa980, 0xa9bf,
+	0xa9cf, 0xa9cf,
+	0xaa00, 0xaa36,
+	0xaa40, 0xaa4d,
+	0xaa60, 0xaa76,
+	0xaa7a, 0xaa7a,
+	0xaa80, 0xaabe,
+	0xaac0, 0xaac0,
+	0xaac2, 0xaac2,
+	0xaadb, 0xaadd,
+	0xabc0, 0xabea,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb28,
+	0xfb2a, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfd3d,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdfb,
+	0xfe70, 0xfe74,
+	0xfe76, 0xfefc,
+	0xff21, 0xff3a,
+	0xff41, 0xff5a,
+	0xff66, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10140, 0x10174,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x103d1, 0x103d5,
+	0x10400, 0x1049d,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a60, 0x10a7c,
+	0x10b00, 0x10b35,
+	0x10b40, 0x10b55,
+	0x10b60, 0x10b72,
+	0x10c00, 0x10c48,
+	0x11082, 0x110b8,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x13000, 0x1342e,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+}; /* CR_Alphabetic */
+
+/* 'Lowercase': Derived Property */
+static const OnigCodePoint CR_Lowercase[] = {
+	602,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00ba, 0x00ba,
+	0x00df, 0x00f6,
+	0x00f8, 0x00ff,
+	0x0101, 0x0101,
+	0x0103, 0x0103,
+	0x0105, 0x0105,
+	0x0107, 0x0107,
+	0x0109, 0x0109,
+	0x010b, 0x010b,
+	0x010d, 0x010d,
+	0x010f, 0x010f,
+	0x0111, 0x0111,
+	0x0113, 0x0113,
+	0x0115, 0x0115,
+	0x0117, 0x0117,
+	0x0119, 0x0119,
+	0x011b, 0x011b,
+	0x011d, 0x011d,
+	0x011f, 0x011f,
+	0x0121, 0x0121,
+	0x0123, 0x0123,
+	0x0125, 0x0125,
+	0x0127, 0x0127,
+	0x0129, 0x0129,
+	0x012b, 0x012b,
+	0x012d, 0x012d,
+	0x012f, 0x012f,
+	0x0131, 0x0131,
+	0x0133, 0x0133,
+	0x0135, 0x0135,
+	0x0137, 0x0138,
+	0x013a, 0x013a,
+	0x013c, 0x013c,
+	0x013e, 0x013e,
+	0x0140, 0x0140,
+	0x0142, 0x0142,
+	0x0144, 0x0144,
+	0x0146, 0x0146,
+	0x0148, 0x0149,
+	0x014b, 0x014b,
+	0x014d, 0x014d,
+	0x014f, 0x014f,
+	0x0151, 0x0151,
+	0x0153, 0x0153,
+	0x0155, 0x0155,
+	0x0157, 0x0157,
+	0x0159, 0x0159,
+	0x015b, 0x015b,
+	0x015d, 0x015d,
+	0x015f, 0x015f,
+	0x0161, 0x0161,
+	0x0163, 0x0163,
+	0x0165, 0x0165,
+	0x0167, 0x0167,
+	0x0169, 0x0169,
+	0x016b, 0x016b,
+	0x016d, 0x016d,
+	0x016f, 0x016f,
+	0x0171, 0x0171,
+	0x0173, 0x0173,
+	0x0175, 0x0175,
+	0x0177, 0x0177,
+	0x017a, 0x017a,
+	0x017c, 0x017c,
+	0x017e, 0x0180,
+	0x0183, 0x0183,
+	0x0185, 0x0185,
+	0x0188, 0x0188,
+	0x018c, 0x018d,
+	0x0192, 0x0192,
+	0x0195, 0x0195,
+	0x0199, 0x019b,
+	0x019e, 0x019e,
+	0x01a1, 0x01a1,
+	0x01a3, 0x01a3,
+	0x01a5, 0x01a5,
+	0x01a8, 0x01a8,
+	0x01aa, 0x01ab,
+	0x01ad, 0x01ad,
+	0x01b0, 0x01b0,
+	0x01b4, 0x01b4,
+	0x01b6, 0x01b6,
+	0x01b9, 0x01ba,
+	0x01bd, 0x01bf,
+	0x01c6, 0x01c6,
+	0x01c9, 0x01c9,
+	0x01cc, 0x01cc,
+	0x01ce, 0x01ce,
+	0x01d0, 0x01d0,
+	0x01d2, 0x01d2,
+	0x01d4, 0x01d4,
+	0x01d6, 0x01d6,
+	0x01d8, 0x01d8,
+	0x01da, 0x01da,
+	0x01dc, 0x01dd,
+	0x01df, 0x01df,
+	0x01e1, 0x01e1,
+	0x01e3, 0x01e3,
+	0x01e5, 0x01e5,
+	0x01e7, 0x01e7,
+	0x01e9, 0x01e9,
+	0x01eb, 0x01eb,
+	0x01ed, 0x01ed,
+	0x01ef, 0x01f0,
+	0x01f3, 0x01f3,
+	0x01f5, 0x01f5,
+	0x01f9, 0x01f9,
+	0x01fb, 0x01fb,
+	0x01fd, 0x01fd,
+	0x01ff, 0x01ff,
+	0x0201, 0x0201,
+	0x0203, 0x0203,
+	0x0205, 0x0205,
+	0x0207, 0x0207,
+	0x0209, 0x0209,
+	0x020b, 0x020b,
+	0x020d, 0x020d,
+	0x020f, 0x020f,
+	0x0211, 0x0211,
+	0x0213, 0x0213,
+	0x0215, 0x0215,
+	0x0217, 0x0217,
+	0x0219, 0x0219,
+	0x021b, 0x021b,
+	0x021d, 0x021d,
+	0x021f, 0x021f,
+	0x0221, 0x0221,
+	0x0223, 0x0223,
+	0x0225, 0x0225,
+	0x0227, 0x0227,
+	0x0229, 0x0229,
+	0x022b, 0x022b,
+	0x022d, 0x022d,
+	0x022f, 0x022f,
+	0x0231, 0x0231,
+	0x0233, 0x0239,
+	0x023c, 0x023c,
+	0x023f, 0x0240,
+	0x0242, 0x0242,
+	0x0247, 0x0247,
+	0x0249, 0x0249,
+	0x024b, 0x024b,
+	0x024d, 0x024d,
+	0x024f, 0x0293,
+	0x0295, 0x02b8,
+	0x02c0, 0x02c1,
+	0x02e0, 0x02e4,
+	0x0345, 0x0345,
+	0x0371, 0x0371,
+	0x0373, 0x0373,
+	0x0377, 0x0377,
+	0x037a, 0x037d,
+	0x0390, 0x0390,
+	0x03ac, 0x03ce,
+	0x03d0, 0x03d1,
+	0x03d5, 0x03d7,
+	0x03d9, 0x03d9,
+	0x03db, 0x03db,
+	0x03dd, 0x03dd,
+	0x03df, 0x03df,
+	0x03e1, 0x03e1,
+	0x03e3, 0x03e3,
+	0x03e5, 0x03e5,
+	0x03e7, 0x03e7,
+	0x03e9, 0x03e9,
+	0x03eb, 0x03eb,
+	0x03ed, 0x03ed,
+	0x03ef, 0x03f3,
+	0x03f5, 0x03f5,
+	0x03f8, 0x03f8,
+	0x03fb, 0x03fc,
+	0x0430, 0x045f,
+	0x0461, 0x0461,
+	0x0463, 0x0463,
+	0x0465, 0x0465,
+	0x0467, 0x0467,
+	0x0469, 0x0469,
+	0x046b, 0x046b,
+	0x046d, 0x046d,
+	0x046f, 0x046f,
+	0x0471, 0x0471,
+	0x0473, 0x0473,
+	0x0475, 0x0475,
+	0x0477, 0x0477,
+	0x0479, 0x0479,
+	0x047b, 0x047b,
+	0x047d, 0x047d,
+	0x047f, 0x047f,
+	0x0481, 0x0481,
+	0x048b, 0x048b,
+	0x048d, 0x048d,
+	0x048f, 0x048f,
+	0x0491, 0x0491,
+	0x0493, 0x0493,
+	0x0495, 0x0495,
+	0x0497, 0x0497,
+	0x0499, 0x0499,
+	0x049b, 0x049b,
+	0x049d, 0x049d,
+	0x049f, 0x049f,
+	0x04a1, 0x04a1,
+	0x04a3, 0x04a3,
+	0x04a5, 0x04a5,
+	0x04a7, 0x04a7,
+	0x04a9, 0x04a9,
+	0x04ab, 0x04ab,
+	0x04ad, 0x04ad,
+	0x04af, 0x04af,
+	0x04b1, 0x04b1,
+	0x04b3, 0x04b3,
+	0x04b5, 0x04b5,
+	0x04b7, 0x04b7,
+	0x04b9, 0x04b9,
+	0x04bb, 0x04bb,
+	0x04bd, 0x04bd,
+	0x04bf, 0x04bf,
+	0x04c2, 0x04c2,
+	0x04c4, 0x04c4,
+	0x04c6, 0x04c6,
+	0x04c8, 0x04c8,
+	0x04ca, 0x04ca,
+	0x04cc, 0x04cc,
+	0x04ce, 0x04cf,
+	0x04d1, 0x04d1,
+	0x04d3, 0x04d3,
+	0x04d5, 0x04d5,
+	0x04d7, 0x04d7,
+	0x04d9, 0x04d9,
+	0x04db, 0x04db,
+	0x04dd, 0x04dd,
+	0x04df, 0x04df,
+	0x04e1, 0x04e1,
+	0x04e3, 0x04e3,
+	0x04e5, 0x04e5,
+	0x04e7, 0x04e7,
+	0x04e9, 0x04e9,
+	0x04eb, 0x04eb,
+	0x04ed, 0x04ed,
+	0x04ef, 0x04ef,
+	0x04f1, 0x04f1,
+	0x04f3, 0x04f3,
+	0x04f5, 0x04f5,
+	0x04f7, 0x04f7,
+	0x04f9, 0x04f9,
+	0x04fb, 0x04fb,
+	0x04fd, 0x04fd,
+	0x04ff, 0x04ff,
+	0x0501, 0x0501,
+	0x0503, 0x0503,
+	0x0505, 0x0505,
+	0x0507, 0x0507,
+	0x0509, 0x0509,
+	0x050b, 0x050b,
+	0x050d, 0x050d,
+	0x050f, 0x050f,
+	0x0511, 0x0511,
+	0x0513, 0x0513,
+	0x0515, 0x0515,
+	0x0517, 0x0517,
+	0x0519, 0x0519,
+	0x051b, 0x051b,
+	0x051d, 0x051d,
+	0x051f, 0x051f,
+	0x0521, 0x0521,
+	0x0523, 0x0523,
+	0x0525, 0x0525,
+	0x0561, 0x0587,
+	0x1d00, 0x1dbf,
+	0x1e01, 0x1e01,
+	0x1e03, 0x1e03,
+	0x1e05, 0x1e05,
+	0x1e07, 0x1e07,
+	0x1e09, 0x1e09,
+	0x1e0b, 0x1e0b,
+	0x1e0d, 0x1e0d,
+	0x1e0f, 0x1e0f,
+	0x1e11, 0x1e11,
+	0x1e13, 0x1e13,
+	0x1e15, 0x1e15,
+	0x1e17, 0x1e17,
+	0x1e19, 0x1e19,
+	0x1e1b, 0x1e1b,
+	0x1e1d, 0x1e1d,
+	0x1e1f, 0x1e1f,
+	0x1e21, 0x1e21,
+	0x1e23, 0x1e23,
+	0x1e25, 0x1e25,
+	0x1e27, 0x1e27,
+	0x1e29, 0x1e29,
+	0x1e2b, 0x1e2b,
+	0x1e2d, 0x1e2d,
+	0x1e2f, 0x1e2f,
+	0x1e31, 0x1e31,
+	0x1e33, 0x1e33,
+	0x1e35, 0x1e35,
+	0x1e37, 0x1e37,
+	0x1e39, 0x1e39,
+	0x1e3b, 0x1e3b,
+	0x1e3d, 0x1e3d,
+	0x1e3f, 0x1e3f,
+	0x1e41, 0x1e41,
+	0x1e43, 0x1e43,
+	0x1e45, 0x1e45,
+	0x1e47, 0x1e47,
+	0x1e49, 0x1e49,
+	0x1e4b, 0x1e4b,
+	0x1e4d, 0x1e4d,
+	0x1e4f, 0x1e4f,
+	0x1e51, 0x1e51,
+	0x1e53, 0x1e53,
+	0x1e55, 0x1e55,
+	0x1e57, 0x1e57,
+	0x1e59, 0x1e59,
+	0x1e5b, 0x1e5b,
+	0x1e5d, 0x1e5d,
+	0x1e5f, 0x1e5f,
+	0x1e61, 0x1e61,
+	0x1e63, 0x1e63,
+	0x1e65, 0x1e65,
+	0x1e67, 0x1e67,
+	0x1e69, 0x1e69,
+	0x1e6b, 0x1e6b,
+	0x1e6d, 0x1e6d,
+	0x1e6f, 0x1e6f,
+	0x1e71, 0x1e71,
+	0x1e73, 0x1e73,
+	0x1e75, 0x1e75,
+	0x1e77, 0x1e77,
+	0x1e79, 0x1e79,
+	0x1e7b, 0x1e7b,
+	0x1e7d, 0x1e7d,
+	0x1e7f, 0x1e7f,
+	0x1e81, 0x1e81,
+	0x1e83, 0x1e83,
+	0x1e85, 0x1e85,
+	0x1e87, 0x1e87,
+	0x1e89, 0x1e89,
+	0x1e8b, 0x1e8b,
+	0x1e8d, 0x1e8d,
+	0x1e8f, 0x1e8f,
+	0x1e91, 0x1e91,
+	0x1e93, 0x1e93,
+	0x1e95, 0x1e9d,
+	0x1e9f, 0x1e9f,
+	0x1ea1, 0x1ea1,
+	0x1ea3, 0x1ea3,
+	0x1ea5, 0x1ea5,
+	0x1ea7, 0x1ea7,
+	0x1ea9, 0x1ea9,
+	0x1eab, 0x1eab,
+	0x1ead, 0x1ead,
+	0x1eaf, 0x1eaf,
+	0x1eb1, 0x1eb1,
+	0x1eb3, 0x1eb3,
+	0x1eb5, 0x1eb5,
+	0x1eb7, 0x1eb7,
+	0x1eb9, 0x1eb9,
+	0x1ebb, 0x1ebb,
+	0x1ebd, 0x1ebd,
+	0x1ebf, 0x1ebf,
+	0x1ec1, 0x1ec1,
+	0x1ec3, 0x1ec3,
+	0x1ec5, 0x1ec5,
+	0x1ec7, 0x1ec7,
+	0x1ec9, 0x1ec9,
+	0x1ecb, 0x1ecb,
+	0x1ecd, 0x1ecd,
+	0x1ecf, 0x1ecf,
+	0x1ed1, 0x1ed1,
+	0x1ed3, 0x1ed3,
+	0x1ed5, 0x1ed5,
+	0x1ed7, 0x1ed7,
+	0x1ed9, 0x1ed9,
+	0x1edb, 0x1edb,
+	0x1edd, 0x1edd,
+	0x1edf, 0x1edf,
+	0x1ee1, 0x1ee1,
+	0x1ee3, 0x1ee3,
+	0x1ee5, 0x1ee5,
+	0x1ee7, 0x1ee7,
+	0x1ee9, 0x1ee9,
+	0x1eeb, 0x1eeb,
+	0x1eed, 0x1eed,
+	0x1eef, 0x1eef,
+	0x1ef1, 0x1ef1,
+	0x1ef3, 0x1ef3,
+	0x1ef5, 0x1ef5,
+	0x1ef7, 0x1ef7,
+	0x1ef9, 0x1ef9,
+	0x1efb, 0x1efb,
+	0x1efd, 0x1efd,
+	0x1eff, 0x1f07,
+	0x1f10, 0x1f15,
+	0x1f20, 0x1f27,
+	0x1f30, 0x1f37,
+	0x1f40, 0x1f45,
+	0x1f50, 0x1f57,
+	0x1f60, 0x1f67,
+	0x1f70, 0x1f7d,
+	0x1f80, 0x1f87,
+	0x1f90, 0x1f97,
+	0x1fa0, 0x1fa7,
+	0x1fb0, 0x1fb4,
+	0x1fb6, 0x1fb7,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fc7,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fd7,
+	0x1fe0, 0x1fe7,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ff7,
+	0x2090, 0x2094,
+	0x210a, 0x210a,
+	0x210e, 0x210f,
+	0x2113, 0x2113,
+	0x212f, 0x212f,
+	0x2134, 0x2134,
+	0x2139, 0x2139,
+	0x213c, 0x213d,
+	0x2146, 0x2149,
+	0x214e, 0x214e,
+	0x2170, 0x217f,
+	0x2184, 0x2184,
+	0x24d0, 0x24e9,
+	0x2c30, 0x2c5e,
+	0x2c61, 0x2c61,
+	0x2c65, 0x2c66,
+	0x2c68, 0x2c68,
+	0x2c6a, 0x2c6a,
+	0x2c6c, 0x2c6c,
+	0x2c71, 0x2c71,
+	0x2c73, 0x2c74,
+	0x2c76, 0x2c7d,
+	0x2c81, 0x2c81,
+	0x2c83, 0x2c83,
+	0x2c85, 0x2c85,
+	0x2c87, 0x2c87,
+	0x2c89, 0x2c89,
+	0x2c8b, 0x2c8b,
+	0x2c8d, 0x2c8d,
+	0x2c8f, 0x2c8f,
+	0x2c91, 0x2c91,
+	0x2c93, 0x2c93,
+	0x2c95, 0x2c95,
+	0x2c97, 0x2c97,
+	0x2c99, 0x2c99,
+	0x2c9b, 0x2c9b,
+	0x2c9d, 0x2c9d,
+	0x2c9f, 0x2c9f,
+	0x2ca1, 0x2ca1,
+	0x2ca3, 0x2ca3,
+	0x2ca5, 0x2ca5,
+	0x2ca7, 0x2ca7,
+	0x2ca9, 0x2ca9,
+	0x2cab, 0x2cab,
+	0x2cad, 0x2cad,
+	0x2caf, 0x2caf,
+	0x2cb1, 0x2cb1,
+	0x2cb3, 0x2cb3,
+	0x2cb5, 0x2cb5,
+	0x2cb7, 0x2cb7,
+	0x2cb9, 0x2cb9,
+	0x2cbb, 0x2cbb,
+	0x2cbd, 0x2cbd,
+	0x2cbf, 0x2cbf,
+	0x2cc1, 0x2cc1,
+	0x2cc3, 0x2cc3,
+	0x2cc5, 0x2cc5,
+	0x2cc7, 0x2cc7,
+	0x2cc9, 0x2cc9,
+	0x2ccb, 0x2ccb,
+	0x2ccd, 0x2ccd,
+	0x2ccf, 0x2ccf,
+	0x2cd1, 0x2cd1,
+	0x2cd3, 0x2cd3,
+	0x2cd5, 0x2cd5,
+	0x2cd7, 0x2cd7,
+	0x2cd9, 0x2cd9,
+	0x2cdb, 0x2cdb,
+	0x2cdd, 0x2cdd,
+	0x2cdf, 0x2cdf,
+	0x2ce1, 0x2ce1,
+	0x2ce3, 0x2ce4,
+	0x2cec, 0x2cec,
+	0x2cee, 0x2cee,
+	0x2d00, 0x2d25,
+	0xa641, 0xa641,
+	0xa643, 0xa643,
+	0xa645, 0xa645,
+	0xa647, 0xa647,
+	0xa649, 0xa649,
+	0xa64b, 0xa64b,
+	0xa64d, 0xa64d,
+	0xa64f, 0xa64f,
+	0xa651, 0xa651,
+	0xa653, 0xa653,
+	0xa655, 0xa655,
+	0xa657, 0xa657,
+	0xa659, 0xa659,
+	0xa65b, 0xa65b,
+	0xa65d, 0xa65d,
+	0xa65f, 0xa65f,
+	0xa663, 0xa663,
+	0xa665, 0xa665,
+	0xa667, 0xa667,
+	0xa669, 0xa669,
+	0xa66b, 0xa66b,
+	0xa66d, 0xa66d,
+	0xa681, 0xa681,
+	0xa683, 0xa683,
+	0xa685, 0xa685,
+	0xa687, 0xa687,
+	0xa689, 0xa689,
+	0xa68b, 0xa68b,
+	0xa68d, 0xa68d,
+	0xa68f, 0xa68f,
+	0xa691, 0xa691,
+	0xa693, 0xa693,
+	0xa695, 0xa695,
+	0xa697, 0xa697,
+	0xa723, 0xa723,
+	0xa725, 0xa725,
+	0xa727, 0xa727,
+	0xa729, 0xa729,
+	0xa72b, 0xa72b,
+	0xa72d, 0xa72d,
+	0xa72f, 0xa731,
+	0xa733, 0xa733,
+	0xa735, 0xa735,
+	0xa737, 0xa737,
+	0xa739, 0xa739,
+	0xa73b, 0xa73b,
+	0xa73d, 0xa73d,
+	0xa73f, 0xa73f,
+	0xa741, 0xa741,
+	0xa743, 0xa743,
+	0xa745, 0xa745,
+	0xa747, 0xa747,
+	0xa749, 0xa749,
+	0xa74b, 0xa74b,
+	0xa74d, 0xa74d,
+	0xa74f, 0xa74f,
+	0xa751, 0xa751,
+	0xa753, 0xa753,
+	0xa755, 0xa755,
+	0xa757, 0xa757,
+	0xa759, 0xa759,
+	0xa75b, 0xa75b,
+	0xa75d, 0xa75d,
+	0xa75f, 0xa75f,
+	0xa761, 0xa761,
+	0xa763, 0xa763,
+	0xa765, 0xa765,
+	0xa767, 0xa767,
+	0xa769, 0xa769,
+	0xa76b, 0xa76b,
+	0xa76d, 0xa76d,
+	0xa76f, 0xa778,
+	0xa77a, 0xa77a,
+	0xa77c, 0xa77c,
+	0xa77f, 0xa77f,
+	0xa781, 0xa781,
+	0xa783, 0xa783,
+	0xa785, 0xa785,
+	0xa787, 0xa787,
+	0xa78c, 0xa78c,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff41, 0xff5a,
+	0x10428, 0x1044f,
+	0x1d41a, 0x1d433,
+	0x1d44e, 0x1d454,
+	0x1d456, 0x1d467,
+	0x1d482, 0x1d49b,
+	0x1d4b6, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d4cf,
+	0x1d4ea, 0x1d503,
+	0x1d51e, 0x1d537,
+	0x1d552, 0x1d56b,
+	0x1d586, 0x1d59f,
+	0x1d5ba, 0x1d5d3,
+	0x1d5ee, 0x1d607,
+	0x1d622, 0x1d63b,
+	0x1d656, 0x1d66f,
+	0x1d68a, 0x1d6a5,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6e1,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d71b,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d755,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d78f,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7c9,
+	0x1d7cb, 0x1d7cb,
+}; /* CR_Lowercase */
+
+/* 'Uppercase': Derived Property */
+static const OnigCodePoint CR_Uppercase[] = {
+	596,
+	0x0041, 0x005a,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00de,
+	0x0100, 0x0100,
+	0x0102, 0x0102,
+	0x0104, 0x0104,
+	0x0106, 0x0106,
+	0x0108, 0x0108,
+	0x010a, 0x010a,
+	0x010c, 0x010c,
+	0x010e, 0x010e,
+	0x0110, 0x0110,
+	0x0112, 0x0112,
+	0x0114, 0x0114,
+	0x0116, 0x0116,
+	0x0118, 0x0118,
+	0x011a, 0x011a,
+	0x011c, 0x011c,
+	0x011e, 0x011e,
+	0x0120, 0x0120,
+	0x0122, 0x0122,
+	0x0124, 0x0124,
+	0x0126, 0x0126,
+	0x0128, 0x0128,
+	0x012a, 0x012a,
+	0x012c, 0x012c,
+	0x012e, 0x012e,
+	0x0130, 0x0130,
+	0x0132, 0x0132,
+	0x0134, 0x0134,
+	0x0136, 0x0136,
+	0x0139, 0x0139,
+	0x013b, 0x013b,
+	0x013d, 0x013d,
+	0x013f, 0x013f,
+	0x0141, 0x0141,
+	0x0143, 0x0143,
+	0x0145, 0x0145,
+	0x0147, 0x0147,
+	0x014a, 0x014a,
+	0x014c, 0x014c,
+	0x014e, 0x014e,
+	0x0150, 0x0150,
+	0x0152, 0x0152,
+	0x0154, 0x0154,
+	0x0156, 0x0156,
+	0x0158, 0x0158,
+	0x015a, 0x015a,
+	0x015c, 0x015c,
+	0x015e, 0x015e,
+	0x0160, 0x0160,
+	0x0162, 0x0162,
+	0x0164, 0x0164,
+	0x0166, 0x0166,
+	0x0168, 0x0168,
+	0x016a, 0x016a,
+	0x016c, 0x016c,
+	0x016e, 0x016e,
+	0x0170, 0x0170,
+	0x0172, 0x0172,
+	0x0174, 0x0174,
+	0x0176, 0x0176,
+	0x0178, 0x0179,
+	0x017b, 0x017b,
+	0x017d, 0x017d,
+	0x0181, 0x0182,
+	0x0184, 0x0184,
+	0x0186, 0x0187,
+	0x0189, 0x018b,
+	0x018e, 0x0191,
+	0x0193, 0x0194,
+	0x0196, 0x0198,
+	0x019c, 0x019d,
+	0x019f, 0x01a0,
+	0x01a2, 0x01a2,
+	0x01a4, 0x01a4,
+	0x01a6, 0x01a7,
+	0x01a9, 0x01a9,
+	0x01ac, 0x01ac,
+	0x01ae, 0x01af,
+	0x01b1, 0x01b3,
+	0x01b5, 0x01b5,
+	0x01b7, 0x01b8,
+	0x01bc, 0x01bc,
+	0x01c4, 0x01c4,
+	0x01c7, 0x01c7,
+	0x01ca, 0x01ca,
+	0x01cd, 0x01cd,
+	0x01cf, 0x01cf,
+	0x01d1, 0x01d1,
+	0x01d3, 0x01d3,
+	0x01d5, 0x01d5,
+	0x01d7, 0x01d7,
+	0x01d9, 0x01d9,
+	0x01db, 0x01db,
+	0x01de, 0x01de,
+	0x01e0, 0x01e0,
+	0x01e2, 0x01e2,
+	0x01e4, 0x01e4,
+	0x01e6, 0x01e6,
+	0x01e8, 0x01e8,
+	0x01ea, 0x01ea,
+	0x01ec, 0x01ec,
+	0x01ee, 0x01ee,
+	0x01f1, 0x01f1,
+	0x01f4, 0x01f4,
+	0x01f6, 0x01f8,
+	0x01fa, 0x01fa,
+	0x01fc, 0x01fc,
+	0x01fe, 0x01fe,
+	0x0200, 0x0200,
+	0x0202, 0x0202,
+	0x0204, 0x0204,
+	0x0206, 0x0206,
+	0x0208, 0x0208,
+	0x020a, 0x020a,
+	0x020c, 0x020c,
+	0x020e, 0x020e,
+	0x0210, 0x0210,
+	0x0212, 0x0212,
+	0x0214, 0x0214,
+	0x0216, 0x0216,
+	0x0218, 0x0218,
+	0x021a, 0x021a,
+	0x021c, 0x021c,
+	0x021e, 0x021e,
+	0x0220, 0x0220,
+	0x0222, 0x0222,
+	0x0224, 0x0224,
+	0x0226, 0x0226,
+	0x0228, 0x0228,
+	0x022a, 0x022a,
+	0x022c, 0x022c,
+	0x022e, 0x022e,
+	0x0230, 0x0230,
+	0x0232, 0x0232,
+	0x023a, 0x023b,
+	0x023d, 0x023e,
+	0x0241, 0x0241,
+	0x0243, 0x0246,
+	0x0248, 0x0248,
+	0x024a, 0x024a,
+	0x024c, 0x024c,
+	0x024e, 0x024e,
+	0x0370, 0x0370,
+	0x0372, 0x0372,
+	0x0376, 0x0376,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x038f,
+	0x0391, 0x03a1,
+	0x03a3, 0x03ab,
+	0x03cf, 0x03cf,
+	0x03d2, 0x03d4,
+	0x03d8, 0x03d8,
+	0x03da, 0x03da,
+	0x03dc, 0x03dc,
+	0x03de, 0x03de,
+	0x03e0, 0x03e0,
+	0x03e2, 0x03e2,
+	0x03e4, 0x03e4,
+	0x03e6, 0x03e6,
+	0x03e8, 0x03e8,
+	0x03ea, 0x03ea,
+	0x03ec, 0x03ec,
+	0x03ee, 0x03ee,
+	0x03f4, 0x03f4,
+	0x03f7, 0x03f7,
+	0x03f9, 0x03fa,
+	0x03fd, 0x042f,
+	0x0460, 0x0460,
+	0x0462, 0x0462,
+	0x0464, 0x0464,
+	0x0466, 0x0466,
+	0x0468, 0x0468,
+	0x046a, 0x046a,
+	0x046c, 0x046c,
+	0x046e, 0x046e,
+	0x0470, 0x0470,
+	0x0472, 0x0472,
+	0x0474, 0x0474,
+	0x0476, 0x0476,
+	0x0478, 0x0478,
+	0x047a, 0x047a,
+	0x047c, 0x047c,
+	0x047e, 0x047e,
+	0x0480, 0x0480,
+	0x048a, 0x048a,
+	0x048c, 0x048c,
+	0x048e, 0x048e,
+	0x0490, 0x0490,
+	0x0492, 0x0492,
+	0x0494, 0x0494,
+	0x0496, 0x0496,
+	0x0498, 0x0498,
+	0x049a, 0x049a,
+	0x049c, 0x049c,
+	0x049e, 0x049e,
+	0x04a0, 0x04a0,
+	0x04a2, 0x04a2,
+	0x04a4, 0x04a4,
+	0x04a6, 0x04a6,
+	0x04a8, 0x04a8,
+	0x04aa, 0x04aa,
+	0x04ac, 0x04ac,
+	0x04ae, 0x04ae,
+	0x04b0, 0x04b0,
+	0x04b2, 0x04b2,
+	0x04b4, 0x04b4,
+	0x04b6, 0x04b6,
+	0x04b8, 0x04b8,
+	0x04ba, 0x04ba,
+	0x04bc, 0x04bc,
+	0x04be, 0x04be,
+	0x04c0, 0x04c1,
+	0x04c3, 0x04c3,
+	0x04c5, 0x04c5,
+	0x04c7, 0x04c7,
+	0x04c9, 0x04c9,
+	0x04cb, 0x04cb,
+	0x04cd, 0x04cd,
+	0x04d0, 0x04d0,
+	0x04d2, 0x04d2,
+	0x04d4, 0x04d4,
+	0x04d6, 0x04d6,
+	0x04d8, 0x04d8,
+	0x04da, 0x04da,
+	0x04dc, 0x04dc,
+	0x04de, 0x04de,
+	0x04e0, 0x04e0,
+	0x04e2, 0x04e2,
+	0x04e4, 0x04e4,
+	0x04e6, 0x04e6,
+	0x04e8, 0x04e8,
+	0x04ea, 0x04ea,
+	0x04ec, 0x04ec,
+	0x04ee, 0x04ee,
+	0x04f0, 0x04f0,
+	0x04f2, 0x04f2,
+	0x04f4, 0x04f4,
+	0x04f6, 0x04f6,
+	0x04f8, 0x04f8,
+	0x04fa, 0x04fa,
+	0x04fc, 0x04fc,
+	0x04fe, 0x04fe,
+	0x0500, 0x0500,
+	0x0502, 0x0502,
+	0x0504, 0x0504,
+	0x0506, 0x0506,
+	0x0508, 0x0508,
+	0x050a, 0x050a,
+	0x050c, 0x050c,
+	0x050e, 0x050e,
+	0x0510, 0x0510,
+	0x0512, 0x0512,
+	0x0514, 0x0514,
+	0x0516, 0x0516,
+	0x0518, 0x0518,
+	0x051a, 0x051a,
+	0x051c, 0x051c,
+	0x051e, 0x051e,
+	0x0520, 0x0520,
+	0x0522, 0x0522,
+	0x0524, 0x0524,
+	0x0531, 0x0556,
+	0x10a0, 0x10c5,
+	0x1e00, 0x1e00,
+	0x1e02, 0x1e02,
+	0x1e04, 0x1e04,
+	0x1e06, 0x1e06,
+	0x1e08, 0x1e08,
+	0x1e0a, 0x1e0a,
+	0x1e0c, 0x1e0c,
+	0x1e0e, 0x1e0e,
+	0x1e10, 0x1e10,
+	0x1e12, 0x1e12,
+	0x1e14, 0x1e14,
+	0x1e16, 0x1e16,
+	0x1e18, 0x1e18,
+	0x1e1a, 0x1e1a,
+	0x1e1c, 0x1e1c,
+	0x1e1e, 0x1e1e,
+	0x1e20, 0x1e20,
+	0x1e22, 0x1e22,
+	0x1e24, 0x1e24,
+	0x1e26, 0x1e26,
+	0x1e28, 0x1e28,
+	0x1e2a, 0x1e2a,
+	0x1e2c, 0x1e2c,
+	0x1e2e, 0x1e2e,
+	0x1e30, 0x1e30,
+	0x1e32, 0x1e32,
+	0x1e34, 0x1e34,
+	0x1e36, 0x1e36,
+	0x1e38, 0x1e38,
+	0x1e3a, 0x1e3a,
+	0x1e3c, 0x1e3c,
+	0x1e3e, 0x1e3e,
+	0x1e40, 0x1e40,
+	0x1e42, 0x1e42,
+	0x1e44, 0x1e44,
+	0x1e46, 0x1e46,
+	0x1e48, 0x1e48,
+	0x1e4a, 0x1e4a,
+	0x1e4c, 0x1e4c,
+	0x1e4e, 0x1e4e,
+	0x1e50, 0x1e50,
+	0x1e52, 0x1e52,
+	0x1e54, 0x1e54,
+	0x1e56, 0x1e56,
+	0x1e58, 0x1e58,
+	0x1e5a, 0x1e5a,
+	0x1e5c, 0x1e5c,
+	0x1e5e, 0x1e5e,
+	0x1e60, 0x1e60,
+	0x1e62, 0x1e62,
+	0x1e64, 0x1e64,
+	0x1e66, 0x1e66,
+	0x1e68, 0x1e68,
+	0x1e6a, 0x1e6a,
+	0x1e6c, 0x1e6c,
+	0x1e6e, 0x1e6e,
+	0x1e70, 0x1e70,
+	0x1e72, 0x1e72,
+	0x1e74, 0x1e74,
+	0x1e76, 0x1e76,
+	0x1e78, 0x1e78,
+	0x1e7a, 0x1e7a,
+	0x1e7c, 0x1e7c,
+	0x1e7e, 0x1e7e,
+	0x1e80, 0x1e80,
+	0x1e82, 0x1e82,
+	0x1e84, 0x1e84,
+	0x1e86, 0x1e86,
+	0x1e88, 0x1e88,
+	0x1e8a, 0x1e8a,
+	0x1e8c, 0x1e8c,
+	0x1e8e, 0x1e8e,
+	0x1e90, 0x1e90,
+	0x1e92, 0x1e92,
+	0x1e94, 0x1e94,
+	0x1e9e, 0x1e9e,
+	0x1ea0, 0x1ea0,
+	0x1ea2, 0x1ea2,
+	0x1ea4, 0x1ea4,
+	0x1ea6, 0x1ea6,
+	0x1ea8, 0x1ea8,
+	0x1eaa, 0x1eaa,
+	0x1eac, 0x1eac,
+	0x1eae, 0x1eae,
+	0x1eb0, 0x1eb0,
+	0x1eb2, 0x1eb2,
+	0x1eb4, 0x1eb4,
+	0x1eb6, 0x1eb6,
+	0x1eb8, 0x1eb8,
+	0x1eba, 0x1eba,
+	0x1ebc, 0x1ebc,
+	0x1ebe, 0x1ebe,
+	0x1ec0, 0x1ec0,
+	0x1ec2, 0x1ec2,
+	0x1ec4, 0x1ec4,
+	0x1ec6, 0x1ec6,
+	0x1ec8, 0x1ec8,
+	0x1eca, 0x1eca,
+	0x1ecc, 0x1ecc,
+	0x1ece, 0x1ece,
+	0x1ed0, 0x1ed0,
+	0x1ed2, 0x1ed2,
+	0x1ed4, 0x1ed4,
+	0x1ed6, 0x1ed6,
+	0x1ed8, 0x1ed8,
+	0x1eda, 0x1eda,
+	0x1edc, 0x1edc,
+	0x1ede, 0x1ede,
+	0x1ee0, 0x1ee0,
+	0x1ee2, 0x1ee2,
+	0x1ee4, 0x1ee4,
+	0x1ee6, 0x1ee6,
+	0x1ee8, 0x1ee8,
+	0x1eea, 0x1eea,
+	0x1eec, 0x1eec,
+	0x1eee, 0x1eee,
+	0x1ef0, 0x1ef0,
+	0x1ef2, 0x1ef2,
+	0x1ef4, 0x1ef4,
+	0x1ef6, 0x1ef6,
+	0x1ef8, 0x1ef8,
+	0x1efa, 0x1efa,
+	0x1efc, 0x1efc,
+	0x1efe, 0x1efe,
+	0x1f08, 0x1f0f,
+	0x1f18, 0x1f1d,
+	0x1f28, 0x1f2f,
+	0x1f38, 0x1f3f,
+	0x1f48, 0x1f4d,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f5f,
+	0x1f68, 0x1f6f,
+	0x1fb8, 0x1fbb,
+	0x1fc8, 0x1fcb,
+	0x1fd8, 0x1fdb,
+	0x1fe8, 0x1fec,
+	0x1ff8, 0x1ffb,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210b, 0x210d,
+	0x2110, 0x2112,
+	0x2115, 0x2115,
+	0x2119, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x212d,
+	0x2130, 0x2133,
+	0x213e, 0x213f,
+	0x2145, 0x2145,
+	0x2160, 0x216f,
+	0x2183, 0x2183,
+	0x24b6, 0x24cf,
+	0x2c00, 0x2c2e,
+	0x2c60, 0x2c60,
+	0x2c62, 0x2c64,
+	0x2c67, 0x2c67,
+	0x2c69, 0x2c69,
+	0x2c6b, 0x2c6b,
+	0x2c6d, 0x2c70,
+	0x2c72, 0x2c72,
+	0x2c75, 0x2c75,
+	0x2c7e, 0x2c80,
+	0x2c82, 0x2c82,
+	0x2c84, 0x2c84,
+	0x2c86, 0x2c86,
+	0x2c88, 0x2c88,
+	0x2c8a, 0x2c8a,
+	0x2c8c, 0x2c8c,
+	0x2c8e, 0x2c8e,
+	0x2c90, 0x2c90,
+	0x2c92, 0x2c92,
+	0x2c94, 0x2c94,
+	0x2c96, 0x2c96,
+	0x2c98, 0x2c98,
+	0x2c9a, 0x2c9a,
+	0x2c9c, 0x2c9c,
+	0x2c9e, 0x2c9e,
+	0x2ca0, 0x2ca0,
+	0x2ca2, 0x2ca2,
+	0x2ca4, 0x2ca4,
+	0x2ca6, 0x2ca6,
+	0x2ca8, 0x2ca8,
+	0x2caa, 0x2caa,
+	0x2cac, 0x2cac,
+	0x2cae, 0x2cae,
+	0x2cb0, 0x2cb0,
+	0x2cb2, 0x2cb2,
+	0x2cb4, 0x2cb4,
+	0x2cb6, 0x2cb6,
+	0x2cb8, 0x2cb8,
+	0x2cba, 0x2cba,
+	0x2cbc, 0x2cbc,
+	0x2cbe, 0x2cbe,
+	0x2cc0, 0x2cc0,
+	0x2cc2, 0x2cc2,
+	0x2cc4, 0x2cc4,
+	0x2cc6, 0x2cc6,
+	0x2cc8, 0x2cc8,
+	0x2cca, 0x2cca,
+	0x2ccc, 0x2ccc,
+	0x2cce, 0x2cce,
+	0x2cd0, 0x2cd0,
+	0x2cd2, 0x2cd2,
+	0x2cd4, 0x2cd4,
+	0x2cd6, 0x2cd6,
+	0x2cd8, 0x2cd8,
+	0x2cda, 0x2cda,
+	0x2cdc, 0x2cdc,
+	0x2cde, 0x2cde,
+	0x2ce0, 0x2ce0,
+	0x2ce2, 0x2ce2,
+	0x2ceb, 0x2ceb,
+	0x2ced, 0x2ced,
+	0xa640, 0xa640,
+	0xa642, 0xa642,
+	0xa644, 0xa644,
+	0xa646, 0xa646,
+	0xa648, 0xa648,
+	0xa64a, 0xa64a,
+	0xa64c, 0xa64c,
+	0xa64e, 0xa64e,
+	0xa650, 0xa650,
+	0xa652, 0xa652,
+	0xa654, 0xa654,
+	0xa656, 0xa656,
+	0xa658, 0xa658,
+	0xa65a, 0xa65a,
+	0xa65c, 0xa65c,
+	0xa65e, 0xa65e,
+	0xa662, 0xa662,
+	0xa664, 0xa664,
+	0xa666, 0xa666,
+	0xa668, 0xa668,
+	0xa66a, 0xa66a,
+	0xa66c, 0xa66c,
+	0xa680, 0xa680,
+	0xa682, 0xa682,
+	0xa684, 0xa684,
+	0xa686, 0xa686,
+	0xa688, 0xa688,
+	0xa68a, 0xa68a,
+	0xa68c, 0xa68c,
+	0xa68e, 0xa68e,
+	0xa690, 0xa690,
+	0xa692, 0xa692,
+	0xa694, 0xa694,
+	0xa696, 0xa696,
+	0xa722, 0xa722,
+	0xa724, 0xa724,
+	0xa726, 0xa726,
+	0xa728, 0xa728,
+	0xa72a, 0xa72a,
+	0xa72c, 0xa72c,
+	0xa72e, 0xa72e,
+	0xa732, 0xa732,
+	0xa734, 0xa734,
+	0xa736, 0xa736,
+	0xa738, 0xa738,
+	0xa73a, 0xa73a,
+	0xa73c, 0xa73c,
+	0xa73e, 0xa73e,
+	0xa740, 0xa740,
+	0xa742, 0xa742,
+	0xa744, 0xa744,
+	0xa746, 0xa746,
+	0xa748, 0xa748,
+	0xa74a, 0xa74a,
+	0xa74c, 0xa74c,
+	0xa74e, 0xa74e,
+	0xa750, 0xa750,
+	0xa752, 0xa752,
+	0xa754, 0xa754,
+	0xa756, 0xa756,
+	0xa758, 0xa758,
+	0xa75a, 0xa75a,
+	0xa75c, 0xa75c,
+	0xa75e, 0xa75e,
+	0xa760, 0xa760,
+	0xa762, 0xa762,
+	0xa764, 0xa764,
+	0xa766, 0xa766,
+	0xa768, 0xa768,
+	0xa76a, 0xa76a,
+	0xa76c, 0xa76c,
+	0xa76e, 0xa76e,
+	0xa779, 0xa779,
+	0xa77b, 0xa77b,
+	0xa77d, 0xa77e,
+	0xa780, 0xa780,
+	0xa782, 0xa782,
+	0xa784, 0xa784,
+	0xa786, 0xa786,
+	0xa78b, 0xa78b,
+	0xff21, 0xff3a,
+	0x10400, 0x10427,
+	0x1d400, 0x1d419,
+	0x1d434, 0x1d44d,
+	0x1d468, 0x1d481,
+	0x1d49c, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b5,
+	0x1d4d0, 0x1d4e9,
+	0x1d504, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d538, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d56c, 0x1d585,
+	0x1d5a0, 0x1d5b9,
+	0x1d5d4, 0x1d5ed,
+	0x1d608, 0x1d621,
+	0x1d63c, 0x1d655,
+	0x1d670, 0x1d689,
+	0x1d6a8, 0x1d6c0,
+	0x1d6e2, 0x1d6fa,
+	0x1d71c, 0x1d734,
+	0x1d756, 0x1d76e,
+	0x1d790, 0x1d7a8,
+	0x1d7ca, 0x1d7ca,
+}; /* CR_Uppercase */
+
+/* 'Cased': Derived Property */
+static const OnigCodePoint CR_Cased[] = {
+	110,
+	0x0041, 0x005a,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x01ba,
+	0x01bc, 0x01bf,
+	0x01c4, 0x0293,
+	0x0295, 0x02b8,
+	0x02c0, 0x02c1,
+	0x02e0, 0x02e4,
+	0x0345, 0x0345,
+	0x0370, 0x0373,
+	0x0376, 0x0377,
+	0x037a, 0x037d,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0561, 0x0587,
+	0x10a0, 0x10c5,
+	0x1d00, 0x1dbf,
+	0x1e00, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x2090, 0x2094,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2119, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x212d,
+	0x212f, 0x2134,
+	0x2139, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x217f,
+	0x2183, 0x2184,
+	0x24b6, 0x24e9,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cee,
+	0x2d00, 0x2d25,
+	0xa640, 0xa65f,
+	0xa662, 0xa66d,
+	0xa680, 0xa697,
+	0xa722, 0xa787,
+	0xa78b, 0xa78c,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff21, 0xff3a,
+	0xff41, 0xff5a,
+	0x10400, 0x1044f,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+}; /* CR_Cased */
+
+/* 'Case_Ignorable': Derived Property */
+static const OnigCodePoint CR_Case_Ignorable[] = {
+	266,
+	0x0027, 0x0027,
+	0x002e, 0x002e,
+	0x003a, 0x003a,
+	0x005e, 0x005e,
+	0x0060, 0x0060,
+	0x00a8, 0x00a8,
+	0x00ad, 0x00ad,
+	0x00af, 0x00af,
+	0x00b4, 0x00b4,
+	0x00b7, 0x00b8,
+	0x02b0, 0x036f,
+	0x0374, 0x0375,
+	0x037a, 0x037a,
+	0x0384, 0x0385,
+	0x0387, 0x0387,
+	0x0483, 0x0489,
+	0x0559, 0x0559,
+	0x0591, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x05f4, 0x05f4,
+	0x0600, 0x0603,
+	0x0610, 0x061a,
+	0x0640, 0x0640,
+	0x064b, 0x065e,
+	0x0670, 0x0670,
+	0x06d6, 0x06e8,
+	0x06ea, 0x06ed,
+	0x070f, 0x070f,
+	0x0711, 0x0711,
+	0x0730, 0x074a,
+	0x07a6, 0x07b0,
+	0x07eb, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0816, 0x082d,
+	0x0900, 0x0902,
+	0x093c, 0x093c,
+	0x0941, 0x0948,
+	0x094d, 0x094d,
+	0x0951, 0x0955,
+	0x0962, 0x0963,
+	0x0971, 0x0971,
+	0x0981, 0x0981,
+	0x09bc, 0x09bc,
+	0x09c1, 0x09c4,
+	0x09cd, 0x09cd,
+	0x09e2, 0x09e3,
+	0x0a01, 0x0a02,
+	0x0a3c, 0x0a3c,
+	0x0a41, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4d,
+	0x0a51, 0x0a51,
+	0x0a70, 0x0a71,
+	0x0a75, 0x0a75,
+	0x0a81, 0x0a82,
+	0x0abc, 0x0abc,
+	0x0ac1, 0x0ac5,
+	0x0ac7, 0x0ac8,
+	0x0acd, 0x0acd,
+	0x0ae2, 0x0ae3,
+	0x0b01, 0x0b01,
+	0x0b3c, 0x0b3c,
+	0x0b3f, 0x0b3f,
+	0x0b41, 0x0b44,
+	0x0b4d, 0x0b4d,
+	0x0b56, 0x0b56,
+	0x0b62, 0x0b63,
+	0x0b82, 0x0b82,
+	0x0bc0, 0x0bc0,
+	0x0bcd, 0x0bcd,
+	0x0c3e, 0x0c40,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4d,
+	0x0c55, 0x0c56,
+	0x0c62, 0x0c63,
+	0x0cbc, 0x0cbc,
+	0x0cbf, 0x0cbf,
+	0x0cc6, 0x0cc6,
+	0x0ccc, 0x0ccd,
+	0x0ce2, 0x0ce3,
+	0x0d41, 0x0d44,
+	0x0d4d, 0x0d4d,
+	0x0d62, 0x0d63,
+	0x0dca, 0x0dca,
+	0x0dd2, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0e31, 0x0e31,
+	0x0e34, 0x0e3a,
+	0x0e46, 0x0e4e,
+	0x0eb1, 0x0eb1,
+	0x0eb4, 0x0eb9,
+	0x0ebb, 0x0ebc,
+	0x0ec6, 0x0ec6,
+	0x0ec8, 0x0ecd,
+	0x0f18, 0x0f19,
+	0x0f35, 0x0f35,
+	0x0f37, 0x0f37,
+	0x0f39, 0x0f39,
+	0x0f71, 0x0f7e,
+	0x0f80, 0x0f84,
+	0x0f86, 0x0f87,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x0fc6, 0x0fc6,
+	0x102d, 0x1030,
+	0x1032, 0x1037,
+	0x1039, 0x103a,
+	0x103d, 0x103e,
+	0x1058, 0x1059,
+	0x105e, 0x1060,
+	0x1071, 0x1074,
+	0x1082, 0x1082,
+	0x1085, 0x1086,
+	0x108d, 0x108d,
+	0x109d, 0x109d,
+	0x10fc, 0x10fc,
+	0x135f, 0x135f,
+	0x1712, 0x1714,
+	0x1732, 0x1734,
+	0x1752, 0x1753,
+	0x1772, 0x1773,
+	0x17b4, 0x17b5,
+	0x17b7, 0x17bd,
+	0x17c6, 0x17c6,
+	0x17c9, 0x17d3,
+	0x17d7, 0x17d7,
+	0x17dd, 0x17dd,
+	0x180b, 0x180d,
+	0x1843, 0x1843,
+	0x18a9, 0x18a9,
+	0x1920, 0x1922,
+	0x1927, 0x1928,
+	0x1932, 0x1932,
+	0x1939, 0x193b,
+	0x1a17, 0x1a18,
+	0x1a56, 0x1a56,
+	0x1a58, 0x1a5e,
+	0x1a60, 0x1a60,
+	0x1a62, 0x1a62,
+	0x1a65, 0x1a6c,
+	0x1a73, 0x1a7c,
+	0x1a7f, 0x1a7f,
+	0x1aa7, 0x1aa7,
+	0x1b00, 0x1b03,
+	0x1b34, 0x1b34,
+	0x1b36, 0x1b3a,
+	0x1b3c, 0x1b3c,
+	0x1b42, 0x1b42,
+	0x1b6b, 0x1b73,
+	0x1b80, 0x1b81,
+	0x1ba2, 0x1ba5,
+	0x1ba8, 0x1ba9,
+	0x1c2c, 0x1c33,
+	0x1c36, 0x1c37,
+	0x1c78, 0x1c7d,
+	0x1cd0, 0x1cd2,
+	0x1cd4, 0x1ce0,
+	0x1ce2, 0x1ce8,
+	0x1ced, 0x1ced,
+	0x1d2c, 0x1d61,
+	0x1d78, 0x1d78,
+	0x1d9b, 0x1de6,
+	0x1dfd, 0x1dff,
+	0x1fbd, 0x1fbd,
+	0x1fbf, 0x1fc1,
+	0x1fcd, 0x1fcf,
+	0x1fdd, 0x1fdf,
+	0x1fed, 0x1fef,
+	0x1ffd, 0x1ffe,
+	0x200b, 0x200f,
+	0x2018, 0x2019,
+	0x2024, 0x2024,
+	0x2027, 0x2027,
+	0x202a, 0x202e,
+	0x2060, 0x2064,
+	0x206a, 0x206f,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x20d0, 0x20f0,
+	0x2c7d, 0x2c7d,
+	0x2cef, 0x2cf1,
+	0x2d6f, 0x2d6f,
+	0x2de0, 0x2dff,
+	0x2e2f, 0x2e2f,
+	0x3005, 0x3005,
+	0x302a, 0x302f,
+	0x3031, 0x3035,
+	0x303b, 0x303b,
+	0x3099, 0x309e,
+	0x30fc, 0x30fe,
+	0xa015, 0xa015,
+	0xa4f8, 0xa4fd,
+	0xa60c, 0xa60c,
+	0xa66f, 0xa672,
+	0xa67c, 0xa67d,
+	0xa67f, 0xa67f,
+	0xa6f0, 0xa6f1,
+	0xa700, 0xa721,
+	0xa770, 0xa770,
+	0xa788, 0xa78a,
+	0xa802, 0xa802,
+	0xa806, 0xa806,
+	0xa80b, 0xa80b,
+	0xa825, 0xa826,
+	0xa8c4, 0xa8c4,
+	0xa8e0, 0xa8f1,
+	0xa926, 0xa92d,
+	0xa947, 0xa951,
+	0xa980, 0xa982,
+	0xa9b3, 0xa9b3,
+	0xa9b6, 0xa9b9,
+	0xa9bc, 0xa9bc,
+	0xa9cf, 0xa9cf,
+	0xaa29, 0xaa2e,
+	0xaa31, 0xaa32,
+	0xaa35, 0xaa36,
+	0xaa43, 0xaa43,
+	0xaa4c, 0xaa4c,
+	0xaa70, 0xaa70,
+	0xaab0, 0xaab0,
+	0xaab2, 0xaab4,
+	0xaab7, 0xaab8,
+	0xaabe, 0xaabf,
+	0xaac1, 0xaac1,
+	0xaadd, 0xaadd,
+	0xabe5, 0xabe5,
+	0xabe8, 0xabe8,
+	0xabed, 0xabed,
+	0xfb1e, 0xfb1e,
+	0xfe00, 0xfe0f,
+	0xfe13, 0xfe13,
+	0xfe20, 0xfe26,
+	0xfe52, 0xfe52,
+	0xfe55, 0xfe55,
+	0xfeff, 0xfeff,
+	0xff07, 0xff07,
+	0xff0e, 0xff0e,
+	0xff1a, 0xff1a,
+	0xff3e, 0xff3e,
+	0xff40, 0xff40,
+	0xff70, 0xff70,
+	0xff9e, 0xff9f,
+	0xffe3, 0xffe3,
+	0xfff9, 0xfffb,
+	0x101fd, 0x101fd,
+	0x10a01, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a0f,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a3f,
+	0x11080, 0x11081,
+	0x110b3, 0x110b6,
+	0x110b9, 0x110ba,
+	0x110bd, 0x110bd,
+	0x1d167, 0x1d169,
+	0x1d173, 0x1d182,
+	0x1d185, 0x1d18b,
+	0x1d1aa, 0x1d1ad,
+	0x1d242, 0x1d244,
+	0xe0001, 0xe0001,
+	0xe0020, 0xe007f,
+	0xe0100, 0xe01ef,
+}; /* CR_Case_Ignorable */
+
+/* 'Changes_When_Lowercased': Derived Property */
+static const OnigCodePoint CR_Changes_When_Lowercased[] = {
+	557,
+	0x0041, 0x005a,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00de,
+	0x0100, 0x0100,
+	0x0102, 0x0102,
+	0x0104, 0x0104,
+	0x0106, 0x0106,
+	0x0108, 0x0108,
+	0x010a, 0x010a,
+	0x010c, 0x010c,
+	0x010e, 0x010e,
+	0x0110, 0x0110,
+	0x0112, 0x0112,
+	0x0114, 0x0114,
+	0x0116, 0x0116,
+	0x0118, 0x0118,
+	0x011a, 0x011a,
+	0x011c, 0x011c,
+	0x011e, 0x011e,
+	0x0120, 0x0120,
+	0x0122, 0x0122,
+	0x0124, 0x0124,
+	0x0126, 0x0126,
+	0x0128, 0x0128,
+	0x012a, 0x012a,
+	0x012c, 0x012c,
+	0x012e, 0x012e,
+	0x0130, 0x0130,
+	0x0132, 0x0132,
+	0x0134, 0x0134,
+	0x0136, 0x0136,
+	0x0139, 0x0139,
+	0x013b, 0x013b,
+	0x013d, 0x013d,
+	0x013f, 0x013f,
+	0x0141, 0x0141,
+	0x0143, 0x0143,
+	0x0145, 0x0145,
+	0x0147, 0x0147,
+	0x014a, 0x014a,
+	0x014c, 0x014c,
+	0x014e, 0x014e,
+	0x0150, 0x0150,
+	0x0152, 0x0152,
+	0x0154, 0x0154,
+	0x0156, 0x0156,
+	0x0158, 0x0158,
+	0x015a, 0x015a,
+	0x015c, 0x015c,
+	0x015e, 0x015e,
+	0x0160, 0x0160,
+	0x0162, 0x0162,
+	0x0164, 0x0164,
+	0x0166, 0x0166,
+	0x0168, 0x0168,
+	0x016a, 0x016a,
+	0x016c, 0x016c,
+	0x016e, 0x016e,
+	0x0170, 0x0170,
+	0x0172, 0x0172,
+	0x0174, 0x0174,
+	0x0176, 0x0176,
+	0x0178, 0x0179,
+	0x017b, 0x017b,
+	0x017d, 0x017d,
+	0x0181, 0x0182,
+	0x0184, 0x0184,
+	0x0186, 0x0187,
+	0x0189, 0x018b,
+	0x018e, 0x0191,
+	0x0193, 0x0194,
+	0x0196, 0x0198,
+	0x019c, 0x019d,
+	0x019f, 0x01a0,
+	0x01a2, 0x01a2,
+	0x01a4, 0x01a4,
+	0x01a6, 0x01a7,
+	0x01a9, 0x01a9,
+	0x01ac, 0x01ac,
+	0x01ae, 0x01af,
+	0x01b1, 0x01b3,
+	0x01b5, 0x01b5,
+	0x01b7, 0x01b8,
+	0x01bc, 0x01bc,
+	0x01c4, 0x01c5,
+	0x01c7, 0x01c8,
+	0x01ca, 0x01cb,
+	0x01cd, 0x01cd,
+	0x01cf, 0x01cf,
+	0x01d1, 0x01d1,
+	0x01d3, 0x01d3,
+	0x01d5, 0x01d5,
+	0x01d7, 0x01d7,
+	0x01d9, 0x01d9,
+	0x01db, 0x01db,
+	0x01de, 0x01de,
+	0x01e0, 0x01e0,
+	0x01e2, 0x01e2,
+	0x01e4, 0x01e4,
+	0x01e6, 0x01e6,
+	0x01e8, 0x01e8,
+	0x01ea, 0x01ea,
+	0x01ec, 0x01ec,
+	0x01ee, 0x01ee,
+	0x01f1, 0x01f2,
+	0x01f4, 0x01f4,
+	0x01f6, 0x01f8,
+	0x01fa, 0x01fa,
+	0x01fc, 0x01fc,
+	0x01fe, 0x01fe,
+	0x0200, 0x0200,
+	0x0202, 0x0202,
+	0x0204, 0x0204,
+	0x0206, 0x0206,
+	0x0208, 0x0208,
+	0x020a, 0x020a,
+	0x020c, 0x020c,
+	0x020e, 0x020e,
+	0x0210, 0x0210,
+	0x0212, 0x0212,
+	0x0214, 0x0214,
+	0x0216, 0x0216,
+	0x0218, 0x0218,
+	0x021a, 0x021a,
+	0x021c, 0x021c,
+	0x021e, 0x021e,
+	0x0220, 0x0220,
+	0x0222, 0x0222,
+	0x0224, 0x0224,
+	0x0226, 0x0226,
+	0x0228, 0x0228,
+	0x022a, 0x022a,
+	0x022c, 0x022c,
+	0x022e, 0x022e,
+	0x0230, 0x0230,
+	0x0232, 0x0232,
+	0x023a, 0x023b,
+	0x023d, 0x023e,
+	0x0241, 0x0241,
+	0x0243, 0x0246,
+	0x0248, 0x0248,
+	0x024a, 0x024a,
+	0x024c, 0x024c,
+	0x024e, 0x024e,
+	0x0370, 0x0370,
+	0x0372, 0x0372,
+	0x0376, 0x0376,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x038f,
+	0x0391, 0x03a1,
+	0x03a3, 0x03ab,
+	0x03cf, 0x03cf,
+	0x03d8, 0x03d8,
+	0x03da, 0x03da,
+	0x03dc, 0x03dc,
+	0x03de, 0x03de,
+	0x03e0, 0x03e0,
+	0x03e2, 0x03e2,
+	0x03e4, 0x03e4,
+	0x03e6, 0x03e6,
+	0x03e8, 0x03e8,
+	0x03ea, 0x03ea,
+	0x03ec, 0x03ec,
+	0x03ee, 0x03ee,
+	0x03f4, 0x03f4,
+	0x03f7, 0x03f7,
+	0x03f9, 0x03fa,
+	0x03fd, 0x042f,
+	0x0460, 0x0460,
+	0x0462, 0x0462,
+	0x0464, 0x0464,
+	0x0466, 0x0466,
+	0x0468, 0x0468,
+	0x046a, 0x046a,
+	0x046c, 0x046c,
+	0x046e, 0x046e,
+	0x0470, 0x0470,
+	0x0472, 0x0472,
+	0x0474, 0x0474,
+	0x0476, 0x0476,
+	0x0478, 0x0478,
+	0x047a, 0x047a,
+	0x047c, 0x047c,
+	0x047e, 0x047e,
+	0x0480, 0x0480,
+	0x048a, 0x048a,
+	0x048c, 0x048c,
+	0x048e, 0x048e,
+	0x0490, 0x0490,
+	0x0492, 0x0492,
+	0x0494, 0x0494,
+	0x0496, 0x0496,
+	0x0498, 0x0498,
+	0x049a, 0x049a,
+	0x049c, 0x049c,
+	0x049e, 0x049e,
+	0x04a0, 0x04a0,
+	0x04a2, 0x04a2,
+	0x04a4, 0x04a4,
+	0x04a6, 0x04a6,
+	0x04a8, 0x04a8,
+	0x04aa, 0x04aa,
+	0x04ac, 0x04ac,
+	0x04ae, 0x04ae,
+	0x04b0, 0x04b0,
+	0x04b2, 0x04b2,
+	0x04b4, 0x04b4,
+	0x04b6, 0x04b6,
+	0x04b8, 0x04b8,
+	0x04ba, 0x04ba,
+	0x04bc, 0x04bc,
+	0x04be, 0x04be,
+	0x04c0, 0x04c1,
+	0x04c3, 0x04c3,
+	0x04c5, 0x04c5,
+	0x04c7, 0x04c7,
+	0x04c9, 0x04c9,
+	0x04cb, 0x04cb,
+	0x04cd, 0x04cd,
+	0x04d0, 0x04d0,
+	0x04d2, 0x04d2,
+	0x04d4, 0x04d4,
+	0x04d6, 0x04d6,
+	0x04d8, 0x04d8,
+	0x04da, 0x04da,
+	0x04dc, 0x04dc,
+	0x04de, 0x04de,
+	0x04e0, 0x04e0,
+	0x04e2, 0x04e2,
+	0x04e4, 0x04e4,
+	0x04e6, 0x04e6,
+	0x04e8, 0x04e8,
+	0x04ea, 0x04ea,
+	0x04ec, 0x04ec,
+	0x04ee, 0x04ee,
+	0x04f0, 0x04f0,
+	0x04f2, 0x04f2,
+	0x04f4, 0x04f4,
+	0x04f6, 0x04f6,
+	0x04f8, 0x04f8,
+	0x04fa, 0x04fa,
+	0x04fc, 0x04fc,
+	0x04fe, 0x04fe,
+	0x0500, 0x0500,
+	0x0502, 0x0502,
+	0x0504, 0x0504,
+	0x0506, 0x0506,
+	0x0508, 0x0508,
+	0x050a, 0x050a,
+	0x050c, 0x050c,
+	0x050e, 0x050e,
+	0x0510, 0x0510,
+	0x0512, 0x0512,
+	0x0514, 0x0514,
+	0x0516, 0x0516,
+	0x0518, 0x0518,
+	0x051a, 0x051a,
+	0x051c, 0x051c,
+	0x051e, 0x051e,
+	0x0520, 0x0520,
+	0x0522, 0x0522,
+	0x0524, 0x0524,
+	0x0531, 0x0556,
+	0x10a0, 0x10c5,
+	0x1e00, 0x1e00,
+	0x1e02, 0x1e02,
+	0x1e04, 0x1e04,
+	0x1e06, 0x1e06,
+	0x1e08, 0x1e08,
+	0x1e0a, 0x1e0a,
+	0x1e0c, 0x1e0c,
+	0x1e0e, 0x1e0e,
+	0x1e10, 0x1e10,
+	0x1e12, 0x1e12,
+	0x1e14, 0x1e14,
+	0x1e16, 0x1e16,
+	0x1e18, 0x1e18,
+	0x1e1a, 0x1e1a,
+	0x1e1c, 0x1e1c,
+	0x1e1e, 0x1e1e,
+	0x1e20, 0x1e20,
+	0x1e22, 0x1e22,
+	0x1e24, 0x1e24,
+	0x1e26, 0x1e26,
+	0x1e28, 0x1e28,
+	0x1e2a, 0x1e2a,
+	0x1e2c, 0x1e2c,
+	0x1e2e, 0x1e2e,
+	0x1e30, 0x1e30,
+	0x1e32, 0x1e32,
+	0x1e34, 0x1e34,
+	0x1e36, 0x1e36,
+	0x1e38, 0x1e38,
+	0x1e3a, 0x1e3a,
+	0x1e3c, 0x1e3c,
+	0x1e3e, 0x1e3e,
+	0x1e40, 0x1e40,
+	0x1e42, 0x1e42,
+	0x1e44, 0x1e44,
+	0x1e46, 0x1e46,
+	0x1e48, 0x1e48,
+	0x1e4a, 0x1e4a,
+	0x1e4c, 0x1e4c,
+	0x1e4e, 0x1e4e,
+	0x1e50, 0x1e50,
+	0x1e52, 0x1e52,
+	0x1e54, 0x1e54,
+	0x1e56, 0x1e56,
+	0x1e58, 0x1e58,
+	0x1e5a, 0x1e5a,
+	0x1e5c, 0x1e5c,
+	0x1e5e, 0x1e5e,
+	0x1e60, 0x1e60,
+	0x1e62, 0x1e62,
+	0x1e64, 0x1e64,
+	0x1e66, 0x1e66,
+	0x1e68, 0x1e68,
+	0x1e6a, 0x1e6a,
+	0x1e6c, 0x1e6c,
+	0x1e6e, 0x1e6e,
+	0x1e70, 0x1e70,
+	0x1e72, 0x1e72,
+	0x1e74, 0x1e74,
+	0x1e76, 0x1e76,
+	0x1e78, 0x1e78,
+	0x1e7a, 0x1e7a,
+	0x1e7c, 0x1e7c,
+	0x1e7e, 0x1e7e,
+	0x1e80, 0x1e80,
+	0x1e82, 0x1e82,
+	0x1e84, 0x1e84,
+	0x1e86, 0x1e86,
+	0x1e88, 0x1e88,
+	0x1e8a, 0x1e8a,
+	0x1e8c, 0x1e8c,
+	0x1e8e, 0x1e8e,
+	0x1e90, 0x1e90,
+	0x1e92, 0x1e92,
+	0x1e94, 0x1e94,
+	0x1e9e, 0x1e9e,
+	0x1ea0, 0x1ea0,
+	0x1ea2, 0x1ea2,
+	0x1ea4, 0x1ea4,
+	0x1ea6, 0x1ea6,
+	0x1ea8, 0x1ea8,
+	0x1eaa, 0x1eaa,
+	0x1eac, 0x1eac,
+	0x1eae, 0x1eae,
+	0x1eb0, 0x1eb0,
+	0x1eb2, 0x1eb2,
+	0x1eb4, 0x1eb4,
+	0x1eb6, 0x1eb6,
+	0x1eb8, 0x1eb8,
+	0x1eba, 0x1eba,
+	0x1ebc, 0x1ebc,
+	0x1ebe, 0x1ebe,
+	0x1ec0, 0x1ec0,
+	0x1ec2, 0x1ec2,
+	0x1ec4, 0x1ec4,
+	0x1ec6, 0x1ec6,
+	0x1ec8, 0x1ec8,
+	0x1eca, 0x1eca,
+	0x1ecc, 0x1ecc,
+	0x1ece, 0x1ece,
+	0x1ed0, 0x1ed0,
+	0x1ed2, 0x1ed2,
+	0x1ed4, 0x1ed4,
+	0x1ed6, 0x1ed6,
+	0x1ed8, 0x1ed8,
+	0x1eda, 0x1eda,
+	0x1edc, 0x1edc,
+	0x1ede, 0x1ede,
+	0x1ee0, 0x1ee0,
+	0x1ee2, 0x1ee2,
+	0x1ee4, 0x1ee4,
+	0x1ee6, 0x1ee6,
+	0x1ee8, 0x1ee8,
+	0x1eea, 0x1eea,
+	0x1eec, 0x1eec,
+	0x1eee, 0x1eee,
+	0x1ef0, 0x1ef0,
+	0x1ef2, 0x1ef2,
+	0x1ef4, 0x1ef4,
+	0x1ef6, 0x1ef6,
+	0x1ef8, 0x1ef8,
+	0x1efa, 0x1efa,
+	0x1efc, 0x1efc,
+	0x1efe, 0x1efe,
+	0x1f08, 0x1f0f,
+	0x1f18, 0x1f1d,
+	0x1f28, 0x1f2f,
+	0x1f38, 0x1f3f,
+	0x1f48, 0x1f4d,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f5f,
+	0x1f68, 0x1f6f,
+	0x1f88, 0x1f8f,
+	0x1f98, 0x1f9f,
+	0x1fa8, 0x1faf,
+	0x1fb8, 0x1fbc,
+	0x1fc8, 0x1fcc,
+	0x1fd8, 0x1fdb,
+	0x1fe8, 0x1fec,
+	0x1ff8, 0x1ffc,
+	0x2126, 0x2126,
+	0x212a, 0x212b,
+	0x2132, 0x2132,
+	0x2160, 0x216f,
+	0x2183, 0x2183,
+	0x24b6, 0x24cf,
+	0x2c00, 0x2c2e,
+	0x2c60, 0x2c60,
+	0x2c62, 0x2c64,
+	0x2c67, 0x2c67,
+	0x2c69, 0x2c69,
+	0x2c6b, 0x2c6b,
+	0x2c6d, 0x2c70,
+	0x2c72, 0x2c72,
+	0x2c75, 0x2c75,
+	0x2c7e, 0x2c80,
+	0x2c82, 0x2c82,
+	0x2c84, 0x2c84,
+	0x2c86, 0x2c86,
+	0x2c88, 0x2c88,
+	0x2c8a, 0x2c8a,
+	0x2c8c, 0x2c8c,
+	0x2c8e, 0x2c8e,
+	0x2c90, 0x2c90,
+	0x2c92, 0x2c92,
+	0x2c94, 0x2c94,
+	0x2c96, 0x2c96,
+	0x2c98, 0x2c98,
+	0x2c9a, 0x2c9a,
+	0x2c9c, 0x2c9c,
+	0x2c9e, 0x2c9e,
+	0x2ca0, 0x2ca0,
+	0x2ca2, 0x2ca2,
+	0x2ca4, 0x2ca4,
+	0x2ca6, 0x2ca6,
+	0x2ca8, 0x2ca8,
+	0x2caa, 0x2caa,
+	0x2cac, 0x2cac,
+	0x2cae, 0x2cae,
+	0x2cb0, 0x2cb0,
+	0x2cb2, 0x2cb2,
+	0x2cb4, 0x2cb4,
+	0x2cb6, 0x2cb6,
+	0x2cb8, 0x2cb8,
+	0x2cba, 0x2cba,
+	0x2cbc, 0x2cbc,
+	0x2cbe, 0x2cbe,
+	0x2cc0, 0x2cc0,
+	0x2cc2, 0x2cc2,
+	0x2cc4, 0x2cc4,
+	0x2cc6, 0x2cc6,
+	0x2cc8, 0x2cc8,
+	0x2cca, 0x2cca,
+	0x2ccc, 0x2ccc,
+	0x2cce, 0x2cce,
+	0x2cd0, 0x2cd0,
+	0x2cd2, 0x2cd2,
+	0x2cd4, 0x2cd4,
+	0x2cd6, 0x2cd6,
+	0x2cd8, 0x2cd8,
+	0x2cda, 0x2cda,
+	0x2cdc, 0x2cdc,
+	0x2cde, 0x2cde,
+	0x2ce0, 0x2ce0,
+	0x2ce2, 0x2ce2,
+	0x2ceb, 0x2ceb,
+	0x2ced, 0x2ced,
+	0xa640, 0xa640,
+	0xa642, 0xa642,
+	0xa644, 0xa644,
+	0xa646, 0xa646,
+	0xa648, 0xa648,
+	0xa64a, 0xa64a,
+	0xa64c, 0xa64c,
+	0xa64e, 0xa64e,
+	0xa650, 0xa650,
+	0xa652, 0xa652,
+	0xa654, 0xa654,
+	0xa656, 0xa656,
+	0xa658, 0xa658,
+	0xa65a, 0xa65a,
+	0xa65c, 0xa65c,
+	0xa65e, 0xa65e,
+	0xa662, 0xa662,
+	0xa664, 0xa664,
+	0xa666, 0xa666,
+	0xa668, 0xa668,
+	0xa66a, 0xa66a,
+	0xa66c, 0xa66c,
+	0xa680, 0xa680,
+	0xa682, 0xa682,
+	0xa684, 0xa684,
+	0xa686, 0xa686,
+	0xa688, 0xa688,
+	0xa68a, 0xa68a,
+	0xa68c, 0xa68c,
+	0xa68e, 0xa68e,
+	0xa690, 0xa690,
+	0xa692, 0xa692,
+	0xa694, 0xa694,
+	0xa696, 0xa696,
+	0xa722, 0xa722,
+	0xa724, 0xa724,
+	0xa726, 0xa726,
+	0xa728, 0xa728,
+	0xa72a, 0xa72a,
+	0xa72c, 0xa72c,
+	0xa72e, 0xa72e,
+	0xa732, 0xa732,
+	0xa734, 0xa734,
+	0xa736, 0xa736,
+	0xa738, 0xa738,
+	0xa73a, 0xa73a,
+	0xa73c, 0xa73c,
+	0xa73e, 0xa73e,
+	0xa740, 0xa740,
+	0xa742, 0xa742,
+	0xa744, 0xa744,
+	0xa746, 0xa746,
+	0xa748, 0xa748,
+	0xa74a, 0xa74a,
+	0xa74c, 0xa74c,
+	0xa74e, 0xa74e,
+	0xa750, 0xa750,
+	0xa752, 0xa752,
+	0xa754, 0xa754,
+	0xa756, 0xa756,
+	0xa758, 0xa758,
+	0xa75a, 0xa75a,
+	0xa75c, 0xa75c,
+	0xa75e, 0xa75e,
+	0xa760, 0xa760,
+	0xa762, 0xa762,
+	0xa764, 0xa764,
+	0xa766, 0xa766,
+	0xa768, 0xa768,
+	0xa76a, 0xa76a,
+	0xa76c, 0xa76c,
+	0xa76e, 0xa76e,
+	0xa779, 0xa779,
+	0xa77b, 0xa77b,
+	0xa77d, 0xa77e,
+	0xa780, 0xa780,
+	0xa782, 0xa782,
+	0xa784, 0xa784,
+	0xa786, 0xa786,
+	0xa78b, 0xa78b,
+	0xff21, 0xff3a,
+	0x10400, 0x10427,
+}; /* CR_Changes_When_Lowercased */
+
+/* 'Changes_When_Uppercased': Derived Property */
+static const OnigCodePoint CR_Changes_When_Uppercased[] = {
+	573,
+	0x0061, 0x007a,
+	0x00b5, 0x00b5,
+	0x00df, 0x00f6,
+	0x00f8, 0x00ff,
+	0x0101, 0x0101,
+	0x0103, 0x0103,
+	0x0105, 0x0105,
+	0x0107, 0x0107,
+	0x0109, 0x0109,
+	0x010b, 0x010b,
+	0x010d, 0x010d,
+	0x010f, 0x010f,
+	0x0111, 0x0111,
+	0x0113, 0x0113,
+	0x0115, 0x0115,
+	0x0117, 0x0117,
+	0x0119, 0x0119,
+	0x011b, 0x011b,
+	0x011d, 0x011d,
+	0x011f, 0x011f,
+	0x0121, 0x0121,
+	0x0123, 0x0123,
+	0x0125, 0x0125,
+	0x0127, 0x0127,
+	0x0129, 0x0129,
+	0x012b, 0x012b,
+	0x012d, 0x012d,
+	0x012f, 0x012f,
+	0x0131, 0x0131,
+	0x0133, 0x0133,
+	0x0135, 0x0135,
+	0x0137, 0x0137,
+	0x013a, 0x013a,
+	0x013c, 0x013c,
+	0x013e, 0x013e,
+	0x0140, 0x0140,
+	0x0142, 0x0142,
+	0x0144, 0x0144,
+	0x0146, 0x0146,
+	0x0148, 0x0149,
+	0x014b, 0x014b,
+	0x014d, 0x014d,
+	0x014f, 0x014f,
+	0x0151, 0x0151,
+	0x0153, 0x0153,
+	0x0155, 0x0155,
+	0x0157, 0x0157,
+	0x0159, 0x0159,
+	0x015b, 0x015b,
+	0x015d, 0x015d,
+	0x015f, 0x015f,
+	0x0161, 0x0161,
+	0x0163, 0x0163,
+	0x0165, 0x0165,
+	0x0167, 0x0167,
+	0x0169, 0x0169,
+	0x016b, 0x016b,
+	0x016d, 0x016d,
+	0x016f, 0x016f,
+	0x0171, 0x0171,
+	0x0173, 0x0173,
+	0x0175, 0x0175,
+	0x0177, 0x0177,
+	0x017a, 0x017a,
+	0x017c, 0x017c,
+	0x017e, 0x0180,
+	0x0183, 0x0183,
+	0x0185, 0x0185,
+	0x0188, 0x0188,
+	0x018c, 0x018c,
+	0x0192, 0x0192,
+	0x0195, 0x0195,
+	0x0199, 0x019a,
+	0x019e, 0x019e,
+	0x01a1, 0x01a1,
+	0x01a3, 0x01a3,
+	0x01a5, 0x01a5,
+	0x01a8, 0x01a8,
+	0x01ad, 0x01ad,
+	0x01b0, 0x01b0,
+	0x01b4, 0x01b4,
+	0x01b6, 0x01b6,
+	0x01b9, 0x01b9,
+	0x01bd, 0x01bd,
+	0x01bf, 0x01bf,
+	0x01c5, 0x01c6,
+	0x01c8, 0x01c9,
+	0x01cb, 0x01cc,
+	0x01ce, 0x01ce,
+	0x01d0, 0x01d0,
+	0x01d2, 0x01d2,
+	0x01d4, 0x01d4,
+	0x01d6, 0x01d6,
+	0x01d8, 0x01d8,
+	0x01da, 0x01da,
+	0x01dc, 0x01dd,
+	0x01df, 0x01df,
+	0x01e1, 0x01e1,
+	0x01e3, 0x01e3,
+	0x01e5, 0x01e5,
+	0x01e7, 0x01e7,
+	0x01e9, 0x01e9,
+	0x01eb, 0x01eb,
+	0x01ed, 0x01ed,
+	0x01ef, 0x01f0,
+	0x01f2, 0x01f3,
+	0x01f5, 0x01f5,
+	0x01f9, 0x01f9,
+	0x01fb, 0x01fb,
+	0x01fd, 0x01fd,
+	0x01ff, 0x01ff,
+	0x0201, 0x0201,
+	0x0203, 0x0203,
+	0x0205, 0x0205,
+	0x0207, 0x0207,
+	0x0209, 0x0209,
+	0x020b, 0x020b,
+	0x020d, 0x020d,
+	0x020f, 0x020f,
+	0x0211, 0x0211,
+	0x0213, 0x0213,
+	0x0215, 0x0215,
+	0x0217, 0x0217,
+	0x0219, 0x0219,
+	0x021b, 0x021b,
+	0x021d, 0x021d,
+	0x021f, 0x021f,
+	0x0223, 0x0223,
+	0x0225, 0x0225,
+	0x0227, 0x0227,
+	0x0229, 0x0229,
+	0x022b, 0x022b,
+	0x022d, 0x022d,
+	0x022f, 0x022f,
+	0x0231, 0x0231,
+	0x0233, 0x0233,
+	0x023c, 0x023c,
+	0x023f, 0x0240,
+	0x0242, 0x0242,
+	0x0247, 0x0247,
+	0x0249, 0x0249,
+	0x024b, 0x024b,
+	0x024d, 0x024d,
+	0x024f, 0x0254,
+	0x0256, 0x0257,
+	0x0259, 0x0259,
+	0x025b, 0x025b,
+	0x0260, 0x0260,
+	0x0263, 0x0263,
+	0x0268, 0x0269,
+	0x026b, 0x026b,
+	0x026f, 0x026f,
+	0x0271, 0x0272,
+	0x0275, 0x0275,
+	0x027d, 0x027d,
+	0x0280, 0x0280,
+	0x0283, 0x0283,
+	0x0288, 0x028c,
+	0x0292, 0x0292,
+	0x0345, 0x0345,
+	0x0371, 0x0371,
+	0x0373, 0x0373,
+	0x0377, 0x0377,
+	0x037b, 0x037d,
+	0x0390, 0x0390,
+	0x03ac, 0x03ce,
+	0x03d0, 0x03d1,
+	0x03d5, 0x03d7,
+	0x03d9, 0x03d9,
+	0x03db, 0x03db,
+	0x03dd, 0x03dd,
+	0x03df, 0x03df,
+	0x03e1, 0x03e1,
+	0x03e3, 0x03e3,
+	0x03e5, 0x03e5,
+	0x03e7, 0x03e7,
+	0x03e9, 0x03e9,
+	0x03eb, 0x03eb,
+	0x03ed, 0x03ed,
+	0x03ef, 0x03f2,
+	0x03f5, 0x03f5,
+	0x03f8, 0x03f8,
+	0x03fb, 0x03fb,
+	0x0430, 0x045f,
+	0x0461, 0x0461,
+	0x0463, 0x0463,
+	0x0465, 0x0465,
+	0x0467, 0x0467,
+	0x0469, 0x0469,
+	0x046b, 0x046b,
+	0x046d, 0x046d,
+	0x046f, 0x046f,
+	0x0471, 0x0471,
+	0x0473, 0x0473,
+	0x0475, 0x0475,
+	0x0477, 0x0477,
+	0x0479, 0x0479,
+	0x047b, 0x047b,
+	0x047d, 0x047d,
+	0x047f, 0x047f,
+	0x0481, 0x0481,
+	0x048b, 0x048b,
+	0x048d, 0x048d,
+	0x048f, 0x048f,
+	0x0491, 0x0491,
+	0x0493, 0x0493,
+	0x0495, 0x0495,
+	0x0497, 0x0497,
+	0x0499, 0x0499,
+	0x049b, 0x049b,
+	0x049d, 0x049d,
+	0x049f, 0x049f,
+	0x04a1, 0x04a1,
+	0x04a3, 0x04a3,
+	0x04a5, 0x04a5,
+	0x04a7, 0x04a7,
+	0x04a9, 0x04a9,
+	0x04ab, 0x04ab,
+	0x04ad, 0x04ad,
+	0x04af, 0x04af,
+	0x04b1, 0x04b1,
+	0x04b3, 0x04b3,
+	0x04b5, 0x04b5,
+	0x04b7, 0x04b7,
+	0x04b9, 0x04b9,
+	0x04bb, 0x04bb,
+	0x04bd, 0x04bd,
+	0x04bf, 0x04bf,
+	0x04c2, 0x04c2,
+	0x04c4, 0x04c4,
+	0x04c6, 0x04c6,
+	0x04c8, 0x04c8,
+	0x04ca, 0x04ca,
+	0x04cc, 0x04cc,
+	0x04ce, 0x04cf,
+	0x04d1, 0x04d1,
+	0x04d3, 0x04d3,
+	0x04d5, 0x04d5,
+	0x04d7, 0x04d7,
+	0x04d9, 0x04d9,
+	0x04db, 0x04db,
+	0x04dd, 0x04dd,
+	0x04df, 0x04df,
+	0x04e1, 0x04e1,
+	0x04e3, 0x04e3,
+	0x04e5, 0x04e5,
+	0x04e7, 0x04e7,
+	0x04e9, 0x04e9,
+	0x04eb, 0x04eb,
+	0x04ed, 0x04ed,
+	0x04ef, 0x04ef,
+	0x04f1, 0x04f1,
+	0x04f3, 0x04f3,
+	0x04f5, 0x04f5,
+	0x04f7, 0x04f7,
+	0x04f9, 0x04f9,
+	0x04fb, 0x04fb,
+	0x04fd, 0x04fd,
+	0x04ff, 0x04ff,
+	0x0501, 0x0501,
+	0x0503, 0x0503,
+	0x0505, 0x0505,
+	0x0507, 0x0507,
+	0x0509, 0x0509,
+	0x050b, 0x050b,
+	0x050d, 0x050d,
+	0x050f, 0x050f,
+	0x0511, 0x0511,
+	0x0513, 0x0513,
+	0x0515, 0x0515,
+	0x0517, 0x0517,
+	0x0519, 0x0519,
+	0x051b, 0x051b,
+	0x051d, 0x051d,
+	0x051f, 0x051f,
+	0x0521, 0x0521,
+	0x0523, 0x0523,
+	0x0525, 0x0525,
+	0x0561, 0x0587,
+	0x1d79, 0x1d79,
+	0x1d7d, 0x1d7d,
+	0x1e01, 0x1e01,
+	0x1e03, 0x1e03,
+	0x1e05, 0x1e05,
+	0x1e07, 0x1e07,
+	0x1e09, 0x1e09,
+	0x1e0b, 0x1e0b,
+	0x1e0d, 0x1e0d,
+	0x1e0f, 0x1e0f,
+	0x1e11, 0x1e11,
+	0x1e13, 0x1e13,
+	0x1e15, 0x1e15,
+	0x1e17, 0x1e17,
+	0x1e19, 0x1e19,
+	0x1e1b, 0x1e1b,
+	0x1e1d, 0x1e1d,
+	0x1e1f, 0x1e1f,
+	0x1e21, 0x1e21,
+	0x1e23, 0x1e23,
+	0x1e25, 0x1e25,
+	0x1e27, 0x1e27,
+	0x1e29, 0x1e29,
+	0x1e2b, 0x1e2b,
+	0x1e2d, 0x1e2d,
+	0x1e2f, 0x1e2f,
+	0x1e31, 0x1e31,
+	0x1e33, 0x1e33,
+	0x1e35, 0x1e35,
+	0x1e37, 0x1e37,
+	0x1e39, 0x1e39,
+	0x1e3b, 0x1e3b,
+	0x1e3d, 0x1e3d,
+	0x1e3f, 0x1e3f,
+	0x1e41, 0x1e41,
+	0x1e43, 0x1e43,
+	0x1e45, 0x1e45,
+	0x1e47, 0x1e47,
+	0x1e49, 0x1e49,
+	0x1e4b, 0x1e4b,
+	0x1e4d, 0x1e4d,
+	0x1e4f, 0x1e4f,
+	0x1e51, 0x1e51,
+	0x1e53, 0x1e53,
+	0x1e55, 0x1e55,
+	0x1e57, 0x1e57,
+	0x1e59, 0x1e59,
+	0x1e5b, 0x1e5b,
+	0x1e5d, 0x1e5d,
+	0x1e5f, 0x1e5f,
+	0x1e61, 0x1e61,
+	0x1e63, 0x1e63,
+	0x1e65, 0x1e65,
+	0x1e67, 0x1e67,
+	0x1e69, 0x1e69,
+	0x1e6b, 0x1e6b,
+	0x1e6d, 0x1e6d,
+	0x1e6f, 0x1e6f,
+	0x1e71, 0x1e71,
+	0x1e73, 0x1e73,
+	0x1e75, 0x1e75,
+	0x1e77, 0x1e77,
+	0x1e79, 0x1e79,
+	0x1e7b, 0x1e7b,
+	0x1e7d, 0x1e7d,
+	0x1e7f, 0x1e7f,
+	0x1e81, 0x1e81,
+	0x1e83, 0x1e83,
+	0x1e85, 0x1e85,
+	0x1e87, 0x1e87,
+	0x1e89, 0x1e89,
+	0x1e8b, 0x1e8b,
+	0x1e8d, 0x1e8d,
+	0x1e8f, 0x1e8f,
+	0x1e91, 0x1e91,
+	0x1e93, 0x1e93,
+	0x1e95, 0x1e9b,
+	0x1ea1, 0x1ea1,
+	0x1ea3, 0x1ea3,
+	0x1ea5, 0x1ea5,
+	0x1ea7, 0x1ea7,
+	0x1ea9, 0x1ea9,
+	0x1eab, 0x1eab,
+	0x1ead, 0x1ead,
+	0x1eaf, 0x1eaf,
+	0x1eb1, 0x1eb1,
+	0x1eb3, 0x1eb3,
+	0x1eb5, 0x1eb5,
+	0x1eb7, 0x1eb7,
+	0x1eb9, 0x1eb9,
+	0x1ebb, 0x1ebb,
+	0x1ebd, 0x1ebd,
+	0x1ebf, 0x1ebf,
+	0x1ec1, 0x1ec1,
+	0x1ec3, 0x1ec3,
+	0x1ec5, 0x1ec5,
+	0x1ec7, 0x1ec7,
+	0x1ec9, 0x1ec9,
+	0x1ecb, 0x1ecb,
+	0x1ecd, 0x1ecd,
+	0x1ecf, 0x1ecf,
+	0x1ed1, 0x1ed1,
+	0x1ed3, 0x1ed3,
+	0x1ed5, 0x1ed5,
+	0x1ed7, 0x1ed7,
+	0x1ed9, 0x1ed9,
+	0x1edb, 0x1edb,
+	0x1edd, 0x1edd,
+	0x1edf, 0x1edf,
+	0x1ee1, 0x1ee1,
+	0x1ee3, 0x1ee3,
+	0x1ee5, 0x1ee5,
+	0x1ee7, 0x1ee7,
+	0x1ee9, 0x1ee9,
+	0x1eeb, 0x1eeb,
+	0x1eed, 0x1eed,
+	0x1eef, 0x1eef,
+	0x1ef1, 0x1ef1,
+	0x1ef3, 0x1ef3,
+	0x1ef5, 0x1ef5,
+	0x1ef7, 0x1ef7,
+	0x1ef9, 0x1ef9,
+	0x1efb, 0x1efb,
+	0x1efd, 0x1efd,
+	0x1eff, 0x1f07,
+	0x1f10, 0x1f15,
+	0x1f20, 0x1f27,
+	0x1f30, 0x1f37,
+	0x1f40, 0x1f45,
+	0x1f50, 0x1f57,
+	0x1f60, 0x1f67,
+	0x1f70, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fb7,
+	0x1fbc, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fc7,
+	0x1fcc, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fd7,
+	0x1fe0, 0x1fe7,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ff7,
+	0x1ffc, 0x1ffc,
+	0x214e, 0x214e,
+	0x2170, 0x217f,
+	0x2184, 0x2184,
+	0x24d0, 0x24e9,
+	0x2c30, 0x2c5e,
+	0x2c61, 0x2c61,
+	0x2c65, 0x2c66,
+	0x2c68, 0x2c68,
+	0x2c6a, 0x2c6a,
+	0x2c6c, 0x2c6c,
+	0x2c73, 0x2c73,
+	0x2c76, 0x2c76,
+	0x2c81, 0x2c81,
+	0x2c83, 0x2c83,
+	0x2c85, 0x2c85,
+	0x2c87, 0x2c87,
+	0x2c89, 0x2c89,
+	0x2c8b, 0x2c8b,
+	0x2c8d, 0x2c8d,
+	0x2c8f, 0x2c8f,
+	0x2c91, 0x2c91,
+	0x2c93, 0x2c93,
+	0x2c95, 0x2c95,
+	0x2c97, 0x2c97,
+	0x2c99, 0x2c99,
+	0x2c9b, 0x2c9b,
+	0x2c9d, 0x2c9d,
+	0x2c9f, 0x2c9f,
+	0x2ca1, 0x2ca1,
+	0x2ca3, 0x2ca3,
+	0x2ca5, 0x2ca5,
+	0x2ca7, 0x2ca7,
+	0x2ca9, 0x2ca9,
+	0x2cab, 0x2cab,
+	0x2cad, 0x2cad,
+	0x2caf, 0x2caf,
+	0x2cb1, 0x2cb1,
+	0x2cb3, 0x2cb3,
+	0x2cb5, 0x2cb5,
+	0x2cb7, 0x2cb7,
+	0x2cb9, 0x2cb9,
+	0x2cbb, 0x2cbb,
+	0x2cbd, 0x2cbd,
+	0x2cbf, 0x2cbf,
+	0x2cc1, 0x2cc1,
+	0x2cc3, 0x2cc3,
+	0x2cc5, 0x2cc5,
+	0x2cc7, 0x2cc7,
+	0x2cc9, 0x2cc9,
+	0x2ccb, 0x2ccb,
+	0x2ccd, 0x2ccd,
+	0x2ccf, 0x2ccf,
+	0x2cd1, 0x2cd1,
+	0x2cd3, 0x2cd3,
+	0x2cd5, 0x2cd5,
+	0x2cd7, 0x2cd7,
+	0x2cd9, 0x2cd9,
+	0x2cdb, 0x2cdb,
+	0x2cdd, 0x2cdd,
+	0x2cdf, 0x2cdf,
+	0x2ce1, 0x2ce1,
+	0x2ce3, 0x2ce3,
+	0x2cec, 0x2cec,
+	0x2cee, 0x2cee,
+	0x2d00, 0x2d25,
+	0xa641, 0xa641,
+	0xa643, 0xa643,
+	0xa645, 0xa645,
+	0xa647, 0xa647,
+	0xa649, 0xa649,
+	0xa64b, 0xa64b,
+	0xa64d, 0xa64d,
+	0xa64f, 0xa64f,
+	0xa651, 0xa651,
+	0xa653, 0xa653,
+	0xa655, 0xa655,
+	0xa657, 0xa657,
+	0xa659, 0xa659,
+	0xa65b, 0xa65b,
+	0xa65d, 0xa65d,
+	0xa65f, 0xa65f,
+	0xa663, 0xa663,
+	0xa665, 0xa665,
+	0xa667, 0xa667,
+	0xa669, 0xa669,
+	0xa66b, 0xa66b,
+	0xa66d, 0xa66d,
+	0xa681, 0xa681,
+	0xa683, 0xa683,
+	0xa685, 0xa685,
+	0xa687, 0xa687,
+	0xa689, 0xa689,
+	0xa68b, 0xa68b,
+	0xa68d, 0xa68d,
+	0xa68f, 0xa68f,
+	0xa691, 0xa691,
+	0xa693, 0xa693,
+	0xa695, 0xa695,
+	0xa697, 0xa697,
+	0xa723, 0xa723,
+	0xa725, 0xa725,
+	0xa727, 0xa727,
+	0xa729, 0xa729,
+	0xa72b, 0xa72b,
+	0xa72d, 0xa72d,
+	0xa72f, 0xa72f,
+	0xa733, 0xa733,
+	0xa735, 0xa735,
+	0xa737, 0xa737,
+	0xa739, 0xa739,
+	0xa73b, 0xa73b,
+	0xa73d, 0xa73d,
+	0xa73f, 0xa73f,
+	0xa741, 0xa741,
+	0xa743, 0xa743,
+	0xa745, 0xa745,
+	0xa747, 0xa747,
+	0xa749, 0xa749,
+	0xa74b, 0xa74b,
+	0xa74d, 0xa74d,
+	0xa74f, 0xa74f,
+	0xa751, 0xa751,
+	0xa753, 0xa753,
+	0xa755, 0xa755,
+	0xa757, 0xa757,
+	0xa759, 0xa759,
+	0xa75b, 0xa75b,
+	0xa75d, 0xa75d,
+	0xa75f, 0xa75f,
+	0xa761, 0xa761,
+	0xa763, 0xa763,
+	0xa765, 0xa765,
+	0xa767, 0xa767,
+	0xa769, 0xa769,
+	0xa76b, 0xa76b,
+	0xa76d, 0xa76d,
+	0xa76f, 0xa76f,
+	0xa77a, 0xa77a,
+	0xa77c, 0xa77c,
+	0xa77f, 0xa77f,
+	0xa781, 0xa781,
+	0xa783, 0xa783,
+	0xa785, 0xa785,
+	0xa787, 0xa787,
+	0xa78c, 0xa78c,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff41, 0xff5a,
+	0x10428, 0x1044f,
+}; /* CR_Changes_When_Uppercased */
+
+/* 'Changes_When_Titlecased': Derived Property */
+static const OnigCodePoint CR_Changes_When_Titlecased[] = {
+	574,
+	0x0061, 0x007a,
+	0x00b5, 0x00b5,
+	0x00df, 0x00f6,
+	0x00f8, 0x00ff,
+	0x0101, 0x0101,
+	0x0103, 0x0103,
+	0x0105, 0x0105,
+	0x0107, 0x0107,
+	0x0109, 0x0109,
+	0x010b, 0x010b,
+	0x010d, 0x010d,
+	0x010f, 0x010f,
+	0x0111, 0x0111,
+	0x0113, 0x0113,
+	0x0115, 0x0115,
+	0x0117, 0x0117,
+	0x0119, 0x0119,
+	0x011b, 0x011b,
+	0x011d, 0x011d,
+	0x011f, 0x011f,
+	0x0121, 0x0121,
+	0x0123, 0x0123,
+	0x0125, 0x0125,
+	0x0127, 0x0127,
+	0x0129, 0x0129,
+	0x012b, 0x012b,
+	0x012d, 0x012d,
+	0x012f, 0x012f,
+	0x0131, 0x0131,
+	0x0133, 0x0133,
+	0x0135, 0x0135,
+	0x0137, 0x0137,
+	0x013a, 0x013a,
+	0x013c, 0x013c,
+	0x013e, 0x013e,
+	0x0140, 0x0140,
+	0x0142, 0x0142,
+	0x0144, 0x0144,
+	0x0146, 0x0146,
+	0x0148, 0x0149,
+	0x014b, 0x014b,
+	0x014d, 0x014d,
+	0x014f, 0x014f,
+	0x0151, 0x0151,
+	0x0153, 0x0153,
+	0x0155, 0x0155,
+	0x0157, 0x0157,
+	0x0159, 0x0159,
+	0x015b, 0x015b,
+	0x015d, 0x015d,
+	0x015f, 0x015f,
+	0x0161, 0x0161,
+	0x0163, 0x0163,
+	0x0165, 0x0165,
+	0x0167, 0x0167,
+	0x0169, 0x0169,
+	0x016b, 0x016b,
+	0x016d, 0x016d,
+	0x016f, 0x016f,
+	0x0171, 0x0171,
+	0x0173, 0x0173,
+	0x0175, 0x0175,
+	0x0177, 0x0177,
+	0x017a, 0x017a,
+	0x017c, 0x017c,
+	0x017e, 0x0180,
+	0x0183, 0x0183,
+	0x0185, 0x0185,
+	0x0188, 0x0188,
+	0x018c, 0x018c,
+	0x0192, 0x0192,
+	0x0195, 0x0195,
+	0x0199, 0x019a,
+	0x019e, 0x019e,
+	0x01a1, 0x01a1,
+	0x01a3, 0x01a3,
+	0x01a5, 0x01a5,
+	0x01a8, 0x01a8,
+	0x01ad, 0x01ad,
+	0x01b0, 0x01b0,
+	0x01b4, 0x01b4,
+	0x01b6, 0x01b6,
+	0x01b9, 0x01b9,
+	0x01bd, 0x01bd,
+	0x01bf, 0x01bf,
+	0x01c4, 0x01c4,
+	0x01c6, 0x01c7,
+	0x01c9, 0x01ca,
+	0x01cc, 0x01cc,
+	0x01ce, 0x01ce,
+	0x01d0, 0x01d0,
+	0x01d2, 0x01d2,
+	0x01d4, 0x01d4,
+	0x01d6, 0x01d6,
+	0x01d8, 0x01d8,
+	0x01da, 0x01da,
+	0x01dc, 0x01dd,
+	0x01df, 0x01df,
+	0x01e1, 0x01e1,
+	0x01e3, 0x01e3,
+	0x01e5, 0x01e5,
+	0x01e7, 0x01e7,
+	0x01e9, 0x01e9,
+	0x01eb, 0x01eb,
+	0x01ed, 0x01ed,
+	0x01ef, 0x01f1,
+	0x01f3, 0x01f3,
+	0x01f5, 0x01f5,
+	0x01f9, 0x01f9,
+	0x01fb, 0x01fb,
+	0x01fd, 0x01fd,
+	0x01ff, 0x01ff,
+	0x0201, 0x0201,
+	0x0203, 0x0203,
+	0x0205, 0x0205,
+	0x0207, 0x0207,
+	0x0209, 0x0209,
+	0x020b, 0x020b,
+	0x020d, 0x020d,
+	0x020f, 0x020f,
+	0x0211, 0x0211,
+	0x0213, 0x0213,
+	0x0215, 0x0215,
+	0x0217, 0x0217,
+	0x0219, 0x0219,
+	0x021b, 0x021b,
+	0x021d, 0x021d,
+	0x021f, 0x021f,
+	0x0223, 0x0223,
+	0x0225, 0x0225,
+	0x0227, 0x0227,
+	0x0229, 0x0229,
+	0x022b, 0x022b,
+	0x022d, 0x022d,
+	0x022f, 0x022f,
+	0x0231, 0x0231,
+	0x0233, 0x0233,
+	0x023c, 0x023c,
+	0x023f, 0x0240,
+	0x0242, 0x0242,
+	0x0247, 0x0247,
+	0x0249, 0x0249,
+	0x024b, 0x024b,
+	0x024d, 0x024d,
+	0x024f, 0x0254,
+	0x0256, 0x0257,
+	0x0259, 0x0259,
+	0x025b, 0x025b,
+	0x0260, 0x0260,
+	0x0263, 0x0263,
+	0x0268, 0x0269,
+	0x026b, 0x026b,
+	0x026f, 0x026f,
+	0x0271, 0x0272,
+	0x0275, 0x0275,
+	0x027d, 0x027d,
+	0x0280, 0x0280,
+	0x0283, 0x0283,
+	0x0288, 0x028c,
+	0x0292, 0x0292,
+	0x0345, 0x0345,
+	0x0371, 0x0371,
+	0x0373, 0x0373,
+	0x0377, 0x0377,
+	0x037b, 0x037d,
+	0x0390, 0x0390,
+	0x03ac, 0x03ce,
+	0x03d0, 0x03d1,
+	0x03d5, 0x03d7,
+	0x03d9, 0x03d9,
+	0x03db, 0x03db,
+	0x03dd, 0x03dd,
+	0x03df, 0x03df,
+	0x03e1, 0x03e1,
+	0x03e3, 0x03e3,
+	0x03e5, 0x03e5,
+	0x03e7, 0x03e7,
+	0x03e9, 0x03e9,
+	0x03eb, 0x03eb,
+	0x03ed, 0x03ed,
+	0x03ef, 0x03f2,
+	0x03f5, 0x03f5,
+	0x03f8, 0x03f8,
+	0x03fb, 0x03fb,
+	0x0430, 0x045f,
+	0x0461, 0x0461,
+	0x0463, 0x0463,
+	0x0465, 0x0465,
+	0x0467, 0x0467,
+	0x0469, 0x0469,
+	0x046b, 0x046b,
+	0x046d, 0x046d,
+	0x046f, 0x046f,
+	0x0471, 0x0471,
+	0x0473, 0x0473,
+	0x0475, 0x0475,
+	0x0477, 0x0477,
+	0x0479, 0x0479,
+	0x047b, 0x047b,
+	0x047d, 0x047d,
+	0x047f, 0x047f,
+	0x0481, 0x0481,
+	0x048b, 0x048b,
+	0x048d, 0x048d,
+	0x048f, 0x048f,
+	0x0491, 0x0491,
+	0x0493, 0x0493,
+	0x0495, 0x0495,
+	0x0497, 0x0497,
+	0x0499, 0x0499,
+	0x049b, 0x049b,
+	0x049d, 0x049d,
+	0x049f, 0x049f,
+	0x04a1, 0x04a1,
+	0x04a3, 0x04a3,
+	0x04a5, 0x04a5,
+	0x04a7, 0x04a7,
+	0x04a9, 0x04a9,
+	0x04ab, 0x04ab,
+	0x04ad, 0x04ad,
+	0x04af, 0x04af,
+	0x04b1, 0x04b1,
+	0x04b3, 0x04b3,
+	0x04b5, 0x04b5,
+	0x04b7, 0x04b7,
+	0x04b9, 0x04b9,
+	0x04bb, 0x04bb,
+	0x04bd, 0x04bd,
+	0x04bf, 0x04bf,
+	0x04c2, 0x04c2,
+	0x04c4, 0x04c4,
+	0x04c6, 0x04c6,
+	0x04c8, 0x04c8,
+	0x04ca, 0x04ca,
+	0x04cc, 0x04cc,
+	0x04ce, 0x04cf,
+	0x04d1, 0x04d1,
+	0x04d3, 0x04d3,
+	0x04d5, 0x04d5,
+	0x04d7, 0x04d7,
+	0x04d9, 0x04d9,
+	0x04db, 0x04db,
+	0x04dd, 0x04dd,
+	0x04df, 0x04df,
+	0x04e1, 0x04e1,
+	0x04e3, 0x04e3,
+	0x04e5, 0x04e5,
+	0x04e7, 0x04e7,
+	0x04e9, 0x04e9,
+	0x04eb, 0x04eb,
+	0x04ed, 0x04ed,
+	0x04ef, 0x04ef,
+	0x04f1, 0x04f1,
+	0x04f3, 0x04f3,
+	0x04f5, 0x04f5,
+	0x04f7, 0x04f7,
+	0x04f9, 0x04f9,
+	0x04fb, 0x04fb,
+	0x04fd, 0x04fd,
+	0x04ff, 0x04ff,
+	0x0501, 0x0501,
+	0x0503, 0x0503,
+	0x0505, 0x0505,
+	0x0507, 0x0507,
+	0x0509, 0x0509,
+	0x050b, 0x050b,
+	0x050d, 0x050d,
+	0x050f, 0x050f,
+	0x0511, 0x0511,
+	0x0513, 0x0513,
+	0x0515, 0x0515,
+	0x0517, 0x0517,
+	0x0519, 0x0519,
+	0x051b, 0x051b,
+	0x051d, 0x051d,
+	0x051f, 0x051f,
+	0x0521, 0x0521,
+	0x0523, 0x0523,
+	0x0525, 0x0525,
+	0x0561, 0x0587,
+	0x1d79, 0x1d79,
+	0x1d7d, 0x1d7d,
+	0x1e01, 0x1e01,
+	0x1e03, 0x1e03,
+	0x1e05, 0x1e05,
+	0x1e07, 0x1e07,
+	0x1e09, 0x1e09,
+	0x1e0b, 0x1e0b,
+	0x1e0d, 0x1e0d,
+	0x1e0f, 0x1e0f,
+	0x1e11, 0x1e11,
+	0x1e13, 0x1e13,
+	0x1e15, 0x1e15,
+	0x1e17, 0x1e17,
+	0x1e19, 0x1e19,
+	0x1e1b, 0x1e1b,
+	0x1e1d, 0x1e1d,
+	0x1e1f, 0x1e1f,
+	0x1e21, 0x1e21,
+	0x1e23, 0x1e23,
+	0x1e25, 0x1e25,
+	0x1e27, 0x1e27,
+	0x1e29, 0x1e29,
+	0x1e2b, 0x1e2b,
+	0x1e2d, 0x1e2d,
+	0x1e2f, 0x1e2f,
+	0x1e31, 0x1e31,
+	0x1e33, 0x1e33,
+	0x1e35, 0x1e35,
+	0x1e37, 0x1e37,
+	0x1e39, 0x1e39,
+	0x1e3b, 0x1e3b,
+	0x1e3d, 0x1e3d,
+	0x1e3f, 0x1e3f,
+	0x1e41, 0x1e41,
+	0x1e43, 0x1e43,
+	0x1e45, 0x1e45,
+	0x1e47, 0x1e47,
+	0x1e49, 0x1e49,
+	0x1e4b, 0x1e4b,
+	0x1e4d, 0x1e4d,
+	0x1e4f, 0x1e4f,
+	0x1e51, 0x1e51,
+	0x1e53, 0x1e53,
+	0x1e55, 0x1e55,
+	0x1e57, 0x1e57,
+	0x1e59, 0x1e59,
+	0x1e5b, 0x1e5b,
+	0x1e5d, 0x1e5d,
+	0x1e5f, 0x1e5f,
+	0x1e61, 0x1e61,
+	0x1e63, 0x1e63,
+	0x1e65, 0x1e65,
+	0x1e67, 0x1e67,
+	0x1e69, 0x1e69,
+	0x1e6b, 0x1e6b,
+	0x1e6d, 0x1e6d,
+	0x1e6f, 0x1e6f,
+	0x1e71, 0x1e71,
+	0x1e73, 0x1e73,
+	0x1e75, 0x1e75,
+	0x1e77, 0x1e77,
+	0x1e79, 0x1e79,
+	0x1e7b, 0x1e7b,
+	0x1e7d, 0x1e7d,
+	0x1e7f, 0x1e7f,
+	0x1e81, 0x1e81,
+	0x1e83, 0x1e83,
+	0x1e85, 0x1e85,
+	0x1e87, 0x1e87,
+	0x1e89, 0x1e89,
+	0x1e8b, 0x1e8b,
+	0x1e8d, 0x1e8d,
+	0x1e8f, 0x1e8f,
+	0x1e91, 0x1e91,
+	0x1e93, 0x1e93,
+	0x1e95, 0x1e9b,
+	0x1ea1, 0x1ea1,
+	0x1ea3, 0x1ea3,
+	0x1ea5, 0x1ea5,
+	0x1ea7, 0x1ea7,
+	0x1ea9, 0x1ea9,
+	0x1eab, 0x1eab,
+	0x1ead, 0x1ead,
+	0x1eaf, 0x1eaf,
+	0x1eb1, 0x1eb1,
+	0x1eb3, 0x1eb3,
+	0x1eb5, 0x1eb5,
+	0x1eb7, 0x1eb7,
+	0x1eb9, 0x1eb9,
+	0x1ebb, 0x1ebb,
+	0x1ebd, 0x1ebd,
+	0x1ebf, 0x1ebf,
+	0x1ec1, 0x1ec1,
+	0x1ec3, 0x1ec3,
+	0x1ec5, 0x1ec5,
+	0x1ec7, 0x1ec7,
+	0x1ec9, 0x1ec9,
+	0x1ecb, 0x1ecb,
+	0x1ecd, 0x1ecd,
+	0x1ecf, 0x1ecf,
+	0x1ed1, 0x1ed1,
+	0x1ed3, 0x1ed3,
+	0x1ed5, 0x1ed5,
+	0x1ed7, 0x1ed7,
+	0x1ed9, 0x1ed9,
+	0x1edb, 0x1edb,
+	0x1edd, 0x1edd,
+	0x1edf, 0x1edf,
+	0x1ee1, 0x1ee1,
+	0x1ee3, 0x1ee3,
+	0x1ee5, 0x1ee5,
+	0x1ee7, 0x1ee7,
+	0x1ee9, 0x1ee9,
+	0x1eeb, 0x1eeb,
+	0x1eed, 0x1eed,
+	0x1eef, 0x1eef,
+	0x1ef1, 0x1ef1,
+	0x1ef3, 0x1ef3,
+	0x1ef5, 0x1ef5,
+	0x1ef7, 0x1ef7,
+	0x1ef9, 0x1ef9,
+	0x1efb, 0x1efb,
+	0x1efd, 0x1efd,
+	0x1eff, 0x1f07,
+	0x1f10, 0x1f15,
+	0x1f20, 0x1f27,
+	0x1f30, 0x1f37,
+	0x1f40, 0x1f45,
+	0x1f50, 0x1f57,
+	0x1f60, 0x1f67,
+	0x1f70, 0x1f7d,
+	0x1f80, 0x1f87,
+	0x1f90, 0x1f97,
+	0x1fa0, 0x1fa7,
+	0x1fb0, 0x1fb4,
+	0x1fb6, 0x1fb7,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fc7,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fd7,
+	0x1fe0, 0x1fe7,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ff7,
+	0x214e, 0x214e,
+	0x2170, 0x217f,
+	0x2184, 0x2184,
+	0x24d0, 0x24e9,
+	0x2c30, 0x2c5e,
+	0x2c61, 0x2c61,
+	0x2c65, 0x2c66,
+	0x2c68, 0x2c68,
+	0x2c6a, 0x2c6a,
+	0x2c6c, 0x2c6c,
+	0x2c73, 0x2c73,
+	0x2c76, 0x2c76,
+	0x2c81, 0x2c81,
+	0x2c83, 0x2c83,
+	0x2c85, 0x2c85,
+	0x2c87, 0x2c87,
+	0x2c89, 0x2c89,
+	0x2c8b, 0x2c8b,
+	0x2c8d, 0x2c8d,
+	0x2c8f, 0x2c8f,
+	0x2c91, 0x2c91,
+	0x2c93, 0x2c93,
+	0x2c95, 0x2c95,
+	0x2c97, 0x2c97,
+	0x2c99, 0x2c99,
+	0x2c9b, 0x2c9b,
+	0x2c9d, 0x2c9d,
+	0x2c9f, 0x2c9f,
+	0x2ca1, 0x2ca1,
+	0x2ca3, 0x2ca3,
+	0x2ca5, 0x2ca5,
+	0x2ca7, 0x2ca7,
+	0x2ca9, 0x2ca9,
+	0x2cab, 0x2cab,
+	0x2cad, 0x2cad,
+	0x2caf, 0x2caf,
+	0x2cb1, 0x2cb1,
+	0x2cb3, 0x2cb3,
+	0x2cb5, 0x2cb5,
+	0x2cb7, 0x2cb7,
+	0x2cb9, 0x2cb9,
+	0x2cbb, 0x2cbb,
+	0x2cbd, 0x2cbd,
+	0x2cbf, 0x2cbf,
+	0x2cc1, 0x2cc1,
+	0x2cc3, 0x2cc3,
+	0x2cc5, 0x2cc5,
+	0x2cc7, 0x2cc7,
+	0x2cc9, 0x2cc9,
+	0x2ccb, 0x2ccb,
+	0x2ccd, 0x2ccd,
+	0x2ccf, 0x2ccf,
+	0x2cd1, 0x2cd1,
+	0x2cd3, 0x2cd3,
+	0x2cd5, 0x2cd5,
+	0x2cd7, 0x2cd7,
+	0x2cd9, 0x2cd9,
+	0x2cdb, 0x2cdb,
+	0x2cdd, 0x2cdd,
+	0x2cdf, 0x2cdf,
+	0x2ce1, 0x2ce1,
+	0x2ce3, 0x2ce3,
+	0x2cec, 0x2cec,
+	0x2cee, 0x2cee,
+	0x2d00, 0x2d25,
+	0xa641, 0xa641,
+	0xa643, 0xa643,
+	0xa645, 0xa645,
+	0xa647, 0xa647,
+	0xa649, 0xa649,
+	0xa64b, 0xa64b,
+	0xa64d, 0xa64d,
+	0xa64f, 0xa64f,
+	0xa651, 0xa651,
+	0xa653, 0xa653,
+	0xa655, 0xa655,
+	0xa657, 0xa657,
+	0xa659, 0xa659,
+	0xa65b, 0xa65b,
+	0xa65d, 0xa65d,
+	0xa65f, 0xa65f,
+	0xa663, 0xa663,
+	0xa665, 0xa665,
+	0xa667, 0xa667,
+	0xa669, 0xa669,
+	0xa66b, 0xa66b,
+	0xa66d, 0xa66d,
+	0xa681, 0xa681,
+	0xa683, 0xa683,
+	0xa685, 0xa685,
+	0xa687, 0xa687,
+	0xa689, 0xa689,
+	0xa68b, 0xa68b,
+	0xa68d, 0xa68d,
+	0xa68f, 0xa68f,
+	0xa691, 0xa691,
+	0xa693, 0xa693,
+	0xa695, 0xa695,
+	0xa697, 0xa697,
+	0xa723, 0xa723,
+	0xa725, 0xa725,
+	0xa727, 0xa727,
+	0xa729, 0xa729,
+	0xa72b, 0xa72b,
+	0xa72d, 0xa72d,
+	0xa72f, 0xa72f,
+	0xa733, 0xa733,
+	0xa735, 0xa735,
+	0xa737, 0xa737,
+	0xa739, 0xa739,
+	0xa73b, 0xa73b,
+	0xa73d, 0xa73d,
+	0xa73f, 0xa73f,
+	0xa741, 0xa741,
+	0xa743, 0xa743,
+	0xa745, 0xa745,
+	0xa747, 0xa747,
+	0xa749, 0xa749,
+	0xa74b, 0xa74b,
+	0xa74d, 0xa74d,
+	0xa74f, 0xa74f,
+	0xa751, 0xa751,
+	0xa753, 0xa753,
+	0xa755, 0xa755,
+	0xa757, 0xa757,
+	0xa759, 0xa759,
+	0xa75b, 0xa75b,
+	0xa75d, 0xa75d,
+	0xa75f, 0xa75f,
+	0xa761, 0xa761,
+	0xa763, 0xa763,
+	0xa765, 0xa765,
+	0xa767, 0xa767,
+	0xa769, 0xa769,
+	0xa76b, 0xa76b,
+	0xa76d, 0xa76d,
+	0xa76f, 0xa76f,
+	0xa77a, 0xa77a,
+	0xa77c, 0xa77c,
+	0xa77f, 0xa77f,
+	0xa781, 0xa781,
+	0xa783, 0xa783,
+	0xa785, 0xa785,
+	0xa787, 0xa787,
+	0xa78c, 0xa78c,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff41, 0xff5a,
+	0x10428, 0x1044f,
+}; /* CR_Changes_When_Titlecased */
+
+/* 'Changes_When_Casefolded': Derived Property */
+static const OnigCodePoint CR_Changes_When_Casefolded[] = {
+	568,
+	0x0041, 0x005a,
+	0x00b5, 0x00b5,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00df,
+	0x0100, 0x0100,
+	0x0102, 0x0102,
+	0x0104, 0x0104,
+	0x0106, 0x0106,
+	0x0108, 0x0108,
+	0x010a, 0x010a,
+	0x010c, 0x010c,
+	0x010e, 0x010e,
+	0x0110, 0x0110,
+	0x0112, 0x0112,
+	0x0114, 0x0114,
+	0x0116, 0x0116,
+	0x0118, 0x0118,
+	0x011a, 0x011a,
+	0x011c, 0x011c,
+	0x011e, 0x011e,
+	0x0120, 0x0120,
+	0x0122, 0x0122,
+	0x0124, 0x0124,
+	0x0126, 0x0126,
+	0x0128, 0x0128,
+	0x012a, 0x012a,
+	0x012c, 0x012c,
+	0x012e, 0x012e,
+	0x0130, 0x0130,
+	0x0132, 0x0132,
+	0x0134, 0x0134,
+	0x0136, 0x0136,
+	0x0139, 0x0139,
+	0x013b, 0x013b,
+	0x013d, 0x013d,
+	0x013f, 0x013f,
+	0x0141, 0x0141,
+	0x0143, 0x0143,
+	0x0145, 0x0145,
+	0x0147, 0x0147,
+	0x0149, 0x014a,
+	0x014c, 0x014c,
+	0x014e, 0x014e,
+	0x0150, 0x0150,
+	0x0152, 0x0152,
+	0x0154, 0x0154,
+	0x0156, 0x0156,
+	0x0158, 0x0158,
+	0x015a, 0x015a,
+	0x015c, 0x015c,
+	0x015e, 0x015e,
+	0x0160, 0x0160,
+	0x0162, 0x0162,
+	0x0164, 0x0164,
+	0x0166, 0x0166,
+	0x0168, 0x0168,
+	0x016a, 0x016a,
+	0x016c, 0x016c,
+	0x016e, 0x016e,
+	0x0170, 0x0170,
+	0x0172, 0x0172,
+	0x0174, 0x0174,
+	0x0176, 0x0176,
+	0x0178, 0x0179,
+	0x017b, 0x017b,
+	0x017d, 0x017d,
+	0x017f, 0x017f,
+	0x0181, 0x0182,
+	0x0184, 0x0184,
+	0x0186, 0x0187,
+	0x0189, 0x018b,
+	0x018e, 0x0191,
+	0x0193, 0x0194,
+	0x0196, 0x0198,
+	0x019c, 0x019d,
+	0x019f, 0x01a0,
+	0x01a2, 0x01a2,
+	0x01a4, 0x01a4,
+	0x01a6, 0x01a7,
+	0x01a9, 0x01a9,
+	0x01ac, 0x01ac,
+	0x01ae, 0x01af,
+	0x01b1, 0x01b3,
+	0x01b5, 0x01b5,
+	0x01b7, 0x01b8,
+	0x01bc, 0x01bc,
+	0x01c4, 0x01c5,
+	0x01c7, 0x01c8,
+	0x01ca, 0x01cb,
+	0x01cd, 0x01cd,
+	0x01cf, 0x01cf,
+	0x01d1, 0x01d1,
+	0x01d3, 0x01d3,
+	0x01d5, 0x01d5,
+	0x01d7, 0x01d7,
+	0x01d9, 0x01d9,
+	0x01db, 0x01db,
+	0x01de, 0x01de,
+	0x01e0, 0x01e0,
+	0x01e2, 0x01e2,
+	0x01e4, 0x01e4,
+	0x01e6, 0x01e6,
+	0x01e8, 0x01e8,
+	0x01ea, 0x01ea,
+	0x01ec, 0x01ec,
+	0x01ee, 0x01ee,
+	0x01f1, 0x01f2,
+	0x01f4, 0x01f4,
+	0x01f6, 0x01f8,
+	0x01fa, 0x01fa,
+	0x01fc, 0x01fc,
+	0x01fe, 0x01fe,
+	0x0200, 0x0200,
+	0x0202, 0x0202,
+	0x0204, 0x0204,
+	0x0206, 0x0206,
+	0x0208, 0x0208,
+	0x020a, 0x020a,
+	0x020c, 0x020c,
+	0x020e, 0x020e,
+	0x0210, 0x0210,
+	0x0212, 0x0212,
+	0x0214, 0x0214,
+	0x0216, 0x0216,
+	0x0218, 0x0218,
+	0x021a, 0x021a,
+	0x021c, 0x021c,
+	0x021e, 0x021e,
+	0x0220, 0x0220,
+	0x0222, 0x0222,
+	0x0224, 0x0224,
+	0x0226, 0x0226,
+	0x0228, 0x0228,
+	0x022a, 0x022a,
+	0x022c, 0x022c,
+	0x022e, 0x022e,
+	0x0230, 0x0230,
+	0x0232, 0x0232,
+	0x023a, 0x023b,
+	0x023d, 0x023e,
+	0x0241, 0x0241,
+	0x0243, 0x0246,
+	0x0248, 0x0248,
+	0x024a, 0x024a,
+	0x024c, 0x024c,
+	0x024e, 0x024e,
+	0x0345, 0x0345,
+	0x0370, 0x0370,
+	0x0372, 0x0372,
+	0x0376, 0x0376,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x038f,
+	0x0391, 0x03a1,
+	0x03a3, 0x03ab,
+	0x03c2, 0x03c2,
+	0x03cf, 0x03d1,
+	0x03d5, 0x03d6,
+	0x03d8, 0x03d8,
+	0x03da, 0x03da,
+	0x03dc, 0x03dc,
+	0x03de, 0x03de,
+	0x03e0, 0x03e0,
+	0x03e2, 0x03e2,
+	0x03e4, 0x03e4,
+	0x03e6, 0x03e6,
+	0x03e8, 0x03e8,
+	0x03ea, 0x03ea,
+	0x03ec, 0x03ec,
+	0x03ee, 0x03ee,
+	0x03f0, 0x03f1,
+	0x03f4, 0x03f5,
+	0x03f7, 0x03f7,
+	0x03f9, 0x03fa,
+	0x03fd, 0x042f,
+	0x0460, 0x0460,
+	0x0462, 0x0462,
+	0x0464, 0x0464,
+	0x0466, 0x0466,
+	0x0468, 0x0468,
+	0x046a, 0x046a,
+	0x046c, 0x046c,
+	0x046e, 0x046e,
+	0x0470, 0x0470,
+	0x0472, 0x0472,
+	0x0474, 0x0474,
+	0x0476, 0x0476,
+	0x0478, 0x0478,
+	0x047a, 0x047a,
+	0x047c, 0x047c,
+	0x047e, 0x047e,
+	0x0480, 0x0480,
+	0x048a, 0x048a,
+	0x048c, 0x048c,
+	0x048e, 0x048e,
+	0x0490, 0x0490,
+	0x0492, 0x0492,
+	0x0494, 0x0494,
+	0x0496, 0x0496,
+	0x0498, 0x0498,
+	0x049a, 0x049a,
+	0x049c, 0x049c,
+	0x049e, 0x049e,
+	0x04a0, 0x04a0,
+	0x04a2, 0x04a2,
+	0x04a4, 0x04a4,
+	0x04a6, 0x04a6,
+	0x04a8, 0x04a8,
+	0x04aa, 0x04aa,
+	0x04ac, 0x04ac,
+	0x04ae, 0x04ae,
+	0x04b0, 0x04b0,
+	0x04b2, 0x04b2,
+	0x04b4, 0x04b4,
+	0x04b6, 0x04b6,
+	0x04b8, 0x04b8,
+	0x04ba, 0x04ba,
+	0x04bc, 0x04bc,
+	0x04be, 0x04be,
+	0x04c0, 0x04c1,
+	0x04c3, 0x04c3,
+	0x04c5, 0x04c5,
+	0x04c7, 0x04c7,
+	0x04c9, 0x04c9,
+	0x04cb, 0x04cb,
+	0x04cd, 0x04cd,
+	0x04d0, 0x04d0,
+	0x04d2, 0x04d2,
+	0x04d4, 0x04d4,
+	0x04d6, 0x04d6,
+	0x04d8, 0x04d8,
+	0x04da, 0x04da,
+	0x04dc, 0x04dc,
+	0x04de, 0x04de,
+	0x04e0, 0x04e0,
+	0x04e2, 0x04e2,
+	0x04e4, 0x04e4,
+	0x04e6, 0x04e6,
+	0x04e8, 0x04e8,
+	0x04ea, 0x04ea,
+	0x04ec, 0x04ec,
+	0x04ee, 0x04ee,
+	0x04f0, 0x04f0,
+	0x04f2, 0x04f2,
+	0x04f4, 0x04f4,
+	0x04f6, 0x04f6,
+	0x04f8, 0x04f8,
+	0x04fa, 0x04fa,
+	0x04fc, 0x04fc,
+	0x04fe, 0x04fe,
+	0x0500, 0x0500,
+	0x0502, 0x0502,
+	0x0504, 0x0504,
+	0x0506, 0x0506,
+	0x0508, 0x0508,
+	0x050a, 0x050a,
+	0x050c, 0x050c,
+	0x050e, 0x050e,
+	0x0510, 0x0510,
+	0x0512, 0x0512,
+	0x0514, 0x0514,
+	0x0516, 0x0516,
+	0x0518, 0x0518,
+	0x051a, 0x051a,
+	0x051c, 0x051c,
+	0x051e, 0x051e,
+	0x0520, 0x0520,
+	0x0522, 0x0522,
+	0x0524, 0x0524,
+	0x0531, 0x0556,
+	0x0587, 0x0587,
+	0x10a0, 0x10c5,
+	0x1e00, 0x1e00,
+	0x1e02, 0x1e02,
+	0x1e04, 0x1e04,
+	0x1e06, 0x1e06,
+	0x1e08, 0x1e08,
+	0x1e0a, 0x1e0a,
+	0x1e0c, 0x1e0c,
+	0x1e0e, 0x1e0e,
+	0x1e10, 0x1e10,
+	0x1e12, 0x1e12,
+	0x1e14, 0x1e14,
+	0x1e16, 0x1e16,
+	0x1e18, 0x1e18,
+	0x1e1a, 0x1e1a,
+	0x1e1c, 0x1e1c,
+	0x1e1e, 0x1e1e,
+	0x1e20, 0x1e20,
+	0x1e22, 0x1e22,
+	0x1e24, 0x1e24,
+	0x1e26, 0x1e26,
+	0x1e28, 0x1e28,
+	0x1e2a, 0x1e2a,
+	0x1e2c, 0x1e2c,
+	0x1e2e, 0x1e2e,
+	0x1e30, 0x1e30,
+	0x1e32, 0x1e32,
+	0x1e34, 0x1e34,
+	0x1e36, 0x1e36,
+	0x1e38, 0x1e38,
+	0x1e3a, 0x1e3a,
+	0x1e3c, 0x1e3c,
+	0x1e3e, 0x1e3e,
+	0x1e40, 0x1e40,
+	0x1e42, 0x1e42,
+	0x1e44, 0x1e44,
+	0x1e46, 0x1e46,
+	0x1e48, 0x1e48,
+	0x1e4a, 0x1e4a,
+	0x1e4c, 0x1e4c,
+	0x1e4e, 0x1e4e,
+	0x1e50, 0x1e50,
+	0x1e52, 0x1e52,
+	0x1e54, 0x1e54,
+	0x1e56, 0x1e56,
+	0x1e58, 0x1e58,
+	0x1e5a, 0x1e5a,
+	0x1e5c, 0x1e5c,
+	0x1e5e, 0x1e5e,
+	0x1e60, 0x1e60,
+	0x1e62, 0x1e62,
+	0x1e64, 0x1e64,
+	0x1e66, 0x1e66,
+	0x1e68, 0x1e68,
+	0x1e6a, 0x1e6a,
+	0x1e6c, 0x1e6c,
+	0x1e6e, 0x1e6e,
+	0x1e70, 0x1e70,
+	0x1e72, 0x1e72,
+	0x1e74, 0x1e74,
+	0x1e76, 0x1e76,
+	0x1e78, 0x1e78,
+	0x1e7a, 0x1e7a,
+	0x1e7c, 0x1e7c,
+	0x1e7e, 0x1e7e,
+	0x1e80, 0x1e80,
+	0x1e82, 0x1e82,
+	0x1e84, 0x1e84,
+	0x1e86, 0x1e86,
+	0x1e88, 0x1e88,
+	0x1e8a, 0x1e8a,
+	0x1e8c, 0x1e8c,
+	0x1e8e, 0x1e8e,
+	0x1e90, 0x1e90,
+	0x1e92, 0x1e92,
+	0x1e94, 0x1e94,
+	0x1e9a, 0x1e9b,
+	0x1e9e, 0x1e9e,
+	0x1ea0, 0x1ea0,
+	0x1ea2, 0x1ea2,
+	0x1ea4, 0x1ea4,
+	0x1ea6, 0x1ea6,
+	0x1ea8, 0x1ea8,
+	0x1eaa, 0x1eaa,
+	0x1eac, 0x1eac,
+	0x1eae, 0x1eae,
+	0x1eb0, 0x1eb0,
+	0x1eb2, 0x1eb2,
+	0x1eb4, 0x1eb4,
+	0x1eb6, 0x1eb6,
+	0x1eb8, 0x1eb8,
+	0x1eba, 0x1eba,
+	0x1ebc, 0x1ebc,
+	0x1ebe, 0x1ebe,
+	0x1ec0, 0x1ec0,
+	0x1ec2, 0x1ec2,
+	0x1ec4, 0x1ec4,
+	0x1ec6, 0x1ec6,
+	0x1ec8, 0x1ec8,
+	0x1eca, 0x1eca,
+	0x1ecc, 0x1ecc,
+	0x1ece, 0x1ece,
+	0x1ed0, 0x1ed0,
+	0x1ed2, 0x1ed2,
+	0x1ed4, 0x1ed4,
+	0x1ed6, 0x1ed6,
+	0x1ed8, 0x1ed8,
+	0x1eda, 0x1eda,
+	0x1edc, 0x1edc,
+	0x1ede, 0x1ede,
+	0x1ee0, 0x1ee0,
+	0x1ee2, 0x1ee2,
+	0x1ee4, 0x1ee4,
+	0x1ee6, 0x1ee6,
+	0x1ee8, 0x1ee8,
+	0x1eea, 0x1eea,
+	0x1eec, 0x1eec,
+	0x1eee, 0x1eee,
+	0x1ef0, 0x1ef0,
+	0x1ef2, 0x1ef2,
+	0x1ef4, 0x1ef4,
+	0x1ef6, 0x1ef6,
+	0x1ef8, 0x1ef8,
+	0x1efa, 0x1efa,
+	0x1efc, 0x1efc,
+	0x1efe, 0x1efe,
+	0x1f08, 0x1f0f,
+	0x1f18, 0x1f1d,
+	0x1f28, 0x1f2f,
+	0x1f38, 0x1f3f,
+	0x1f48, 0x1f4d,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f5f,
+	0x1f68, 0x1f6f,
+	0x1f80, 0x1faf,
+	0x1fb2, 0x1fb4,
+	0x1fb7, 0x1fbc,
+	0x1fc2, 0x1fc4,
+	0x1fc7, 0x1fcc,
+	0x1fd8, 0x1fdb,
+	0x1fe8, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff7, 0x1ffc,
+	0x2126, 0x2126,
+	0x212a, 0x212b,
+	0x2132, 0x2132,
+	0x2160, 0x216f,
+	0x2183, 0x2183,
+	0x24b6, 0x24cf,
+	0x2c00, 0x2c2e,
+	0x2c60, 0x2c60,
+	0x2c62, 0x2c64,
+	0x2c67, 0x2c67,
+	0x2c69, 0x2c69,
+	0x2c6b, 0x2c6b,
+	0x2c6d, 0x2c70,
+	0x2c72, 0x2c72,
+	0x2c75, 0x2c75,
+	0x2c7e, 0x2c80,
+	0x2c82, 0x2c82,
+	0x2c84, 0x2c84,
+	0x2c86, 0x2c86,
+	0x2c88, 0x2c88,
+	0x2c8a, 0x2c8a,
+	0x2c8c, 0x2c8c,
+	0x2c8e, 0x2c8e,
+	0x2c90, 0x2c90,
+	0x2c92, 0x2c92,
+	0x2c94, 0x2c94,
+	0x2c96, 0x2c96,
+	0x2c98, 0x2c98,
+	0x2c9a, 0x2c9a,
+	0x2c9c, 0x2c9c,
+	0x2c9e, 0x2c9e,
+	0x2ca0, 0x2ca0,
+	0x2ca2, 0x2ca2,
+	0x2ca4, 0x2ca4,
+	0x2ca6, 0x2ca6,
+	0x2ca8, 0x2ca8,
+	0x2caa, 0x2caa,
+	0x2cac, 0x2cac,
+	0x2cae, 0x2cae,
+	0x2cb0, 0x2cb0,
+	0x2cb2, 0x2cb2,
+	0x2cb4, 0x2cb4,
+	0x2cb6, 0x2cb6,
+	0x2cb8, 0x2cb8,
+	0x2cba, 0x2cba,
+	0x2cbc, 0x2cbc,
+	0x2cbe, 0x2cbe,
+	0x2cc0, 0x2cc0,
+	0x2cc2, 0x2cc2,
+	0x2cc4, 0x2cc4,
+	0x2cc6, 0x2cc6,
+	0x2cc8, 0x2cc8,
+	0x2cca, 0x2cca,
+	0x2ccc, 0x2ccc,
+	0x2cce, 0x2cce,
+	0x2cd0, 0x2cd0,
+	0x2cd2, 0x2cd2,
+	0x2cd4, 0x2cd4,
+	0x2cd6, 0x2cd6,
+	0x2cd8, 0x2cd8,
+	0x2cda, 0x2cda,
+	0x2cdc, 0x2cdc,
+	0x2cde, 0x2cde,
+	0x2ce0, 0x2ce0,
+	0x2ce2, 0x2ce2,
+	0x2ceb, 0x2ceb,
+	0x2ced, 0x2ced,
+	0xa640, 0xa640,
+	0xa642, 0xa642,
+	0xa644, 0xa644,
+	0xa646, 0xa646,
+	0xa648, 0xa648,
+	0xa64a, 0xa64a,
+	0xa64c, 0xa64c,
+	0xa64e, 0xa64e,
+	0xa650, 0xa650,
+	0xa652, 0xa652,
+	0xa654, 0xa654,
+	0xa656, 0xa656,
+	0xa658, 0xa658,
+	0xa65a, 0xa65a,
+	0xa65c, 0xa65c,
+	0xa65e, 0xa65e,
+	0xa662, 0xa662,
+	0xa664, 0xa664,
+	0xa666, 0xa666,
+	0xa668, 0xa668,
+	0xa66a, 0xa66a,
+	0xa66c, 0xa66c,
+	0xa680, 0xa680,
+	0xa682, 0xa682,
+	0xa684, 0xa684,
+	0xa686, 0xa686,
+	0xa688, 0xa688,
+	0xa68a, 0xa68a,
+	0xa68c, 0xa68c,
+	0xa68e, 0xa68e,
+	0xa690, 0xa690,
+	0xa692, 0xa692,
+	0xa694, 0xa694,
+	0xa696, 0xa696,
+	0xa722, 0xa722,
+	0xa724, 0xa724,
+	0xa726, 0xa726,
+	0xa728, 0xa728,
+	0xa72a, 0xa72a,
+	0xa72c, 0xa72c,
+	0xa72e, 0xa72e,
+	0xa732, 0xa732,
+	0xa734, 0xa734,
+	0xa736, 0xa736,
+	0xa738, 0xa738,
+	0xa73a, 0xa73a,
+	0xa73c, 0xa73c,
+	0xa73e, 0xa73e,
+	0xa740, 0xa740,
+	0xa742, 0xa742,
+	0xa744, 0xa744,
+	0xa746, 0xa746,
+	0xa748, 0xa748,
+	0xa74a, 0xa74a,
+	0xa74c, 0xa74c,
+	0xa74e, 0xa74e,
+	0xa750, 0xa750,
+	0xa752, 0xa752,
+	0xa754, 0xa754,
+	0xa756, 0xa756,
+	0xa758, 0xa758,
+	0xa75a, 0xa75a,
+	0xa75c, 0xa75c,
+	0xa75e, 0xa75e,
+	0xa760, 0xa760,
+	0xa762, 0xa762,
+	0xa764, 0xa764,
+	0xa766, 0xa766,
+	0xa768, 0xa768,
+	0xa76a, 0xa76a,
+	0xa76c, 0xa76c,
+	0xa76e, 0xa76e,
+	0xa779, 0xa779,
+	0xa77b, 0xa77b,
+	0xa77d, 0xa77e,
+	0xa780, 0xa780,
+	0xa782, 0xa782,
+	0xa784, 0xa784,
+	0xa786, 0xa786,
+	0xa78b, 0xa78b,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff21, 0xff3a,
+	0x10400, 0x10427,
+}; /* CR_Changes_When_Casefolded */
+
+/* 'Changes_When_Casemapped': Derived Property */
+static const OnigCodePoint CR_Changes_When_Casemapped[] = {
+	97,
+	0x0041, 0x005a,
+	0x0061, 0x007a,
+	0x00b5, 0x00b5,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x0137,
+	0x0139, 0x018c,
+	0x018e, 0x019a,
+	0x019c, 0x01a9,
+	0x01ac, 0x01b9,
+	0x01bc, 0x01bd,
+	0x01bf, 0x01bf,
+	0x01c4, 0x0220,
+	0x0222, 0x0233,
+	0x023a, 0x0254,
+	0x0256, 0x0257,
+	0x0259, 0x0259,
+	0x025b, 0x025b,
+	0x0260, 0x0260,
+	0x0263, 0x0263,
+	0x0268, 0x0269,
+	0x026b, 0x026b,
+	0x026f, 0x026f,
+	0x0271, 0x0272,
+	0x0275, 0x0275,
+	0x027d, 0x027d,
+	0x0280, 0x0280,
+	0x0283, 0x0283,
+	0x0288, 0x028c,
+	0x0292, 0x0292,
+	0x0345, 0x0345,
+	0x0370, 0x0373,
+	0x0376, 0x0377,
+	0x037b, 0x037d,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03d1,
+	0x03d5, 0x03f2,
+	0x03f4, 0x03f5,
+	0x03f7, 0x03fb,
+	0x03fd, 0x0481,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0561, 0x0587,
+	0x10a0, 0x10c5,
+	0x1d79, 0x1d79,
+	0x1d7d, 0x1d7d,
+	0x1e00, 0x1e9b,
+	0x1e9e, 0x1e9e,
+	0x1ea0, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x2126, 0x2126,
+	0x212a, 0x212b,
+	0x2132, 0x2132,
+	0x214e, 0x214e,
+	0x2160, 0x217f,
+	0x2183, 0x2184,
+	0x24b6, 0x24e9,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2c70,
+	0x2c72, 0x2c73,
+	0x2c75, 0x2c76,
+	0x2c7e, 0x2ce3,
+	0x2ceb, 0x2cee,
+	0x2d00, 0x2d25,
+	0xa640, 0xa65f,
+	0xa662, 0xa66d,
+	0xa680, 0xa697,
+	0xa722, 0xa72f,
+	0xa732, 0xa76f,
+	0xa779, 0xa787,
+	0xa78b, 0xa78c,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff21, 0xff3a,
+	0xff41, 0xff5a,
+	0x10400, 0x1044f,
+}; /* CR_Changes_When_Casemapped */
+
+/* 'ID_Start': Derived Property */
+static const OnigCodePoint CR_ID_Start[] = {
+	424,
+	0x0041, 0x005a,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0370, 0x0374,
+	0x0376, 0x0377,
+	0x037a, 0x037d,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x0559,
+	0x0561, 0x0587,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f2,
+	0x0621, 0x064a,
+	0x066e, 0x066f,
+	0x0671, 0x06d3,
+	0x06d5, 0x06d5,
+	0x06e5, 0x06e6,
+	0x06ee, 0x06ef,
+	0x06fa, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x0710,
+	0x0712, 0x072f,
+	0x074d, 0x07a5,
+	0x07b1, 0x07b1,
+	0x07ca, 0x07ea,
+	0x07f4, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0800, 0x0815,
+	0x081a, 0x081a,
+	0x0824, 0x0824,
+	0x0828, 0x0828,
+	0x0904, 0x0939,
+	0x093d, 0x093d,
+	0x0950, 0x0950,
+	0x0958, 0x0961,
+	0x0971, 0x0972,
+	0x0979, 0x097f,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bd, 0x09bd,
+	0x09ce, 0x09ce,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e1,
+	0x09f0, 0x09f1,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a72, 0x0a74,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abd, 0x0abd,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae1,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3d, 0x0b3d,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b61,
+	0x0b71, 0x0b71,
+	0x0b83, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bd0, 0x0bd0,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c3d,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c61,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbd, 0x0cbd,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce1,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d3d,
+	0x0d60, 0x0d61,
+	0x0d7a, 0x0d7f,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0e01, 0x0e30,
+	0x0e32, 0x0e33,
+	0x0e40, 0x0e46,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb0,
+	0x0eb2, 0x0eb3,
+	0x0ebd, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f00,
+	0x0f40, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f88, 0x0f8b,
+	0x1000, 0x102a,
+	0x103f, 0x103f,
+	0x1050, 0x1055,
+	0x105a, 0x105d,
+	0x1061, 0x1061,
+	0x1065, 0x1066,
+	0x106e, 0x1070,
+	0x1075, 0x1081,
+	0x108e, 0x108e,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x1380, 0x138f,
+	0x13a0, 0x13f4,
+	0x1401, 0x166c,
+	0x166f, 0x167f,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	0x16ee, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1711,
+	0x1720, 0x1731,
+	0x1740, 0x1751,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1780, 0x17b3,
+	0x17d7, 0x17d7,
+	0x17dc, 0x17dc,
+	0x1820, 0x1877,
+	0x1880, 0x18a8,
+	0x18aa, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1950, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19c1, 0x19c7,
+	0x1a00, 0x1a16,
+	0x1a20, 0x1a54,
+	0x1aa7, 0x1aa7,
+	0x1b05, 0x1b33,
+	0x1b45, 0x1b4b,
+	0x1b83, 0x1ba0,
+	0x1bae, 0x1baf,
+	0x1c00, 0x1c23,
+	0x1c4d, 0x1c4f,
+	0x1c5a, 0x1c7d,
+	0x1ce9, 0x1cec,
+	0x1cee, 0x1cf1,
+	0x1d00, 0x1dbf,
+	0x1e00, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2118, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x2188,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cee,
+	0x2d00, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x3005, 0x3007,
+	0x3021, 0x3029,
+	0x3031, 0x3035,
+	0x3038, 0x303c,
+	0x3041, 0x3096,
+	0x309b, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa4d0, 0xa4fd,
+	0xa500, 0xa60c,
+	0xa610, 0xa61f,
+	0xa62a, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66e,
+	0xa67f, 0xa697,
+	0xa6a0, 0xa6ef,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa801,
+	0xa803, 0xa805,
+	0xa807, 0xa80a,
+	0xa80c, 0xa822,
+	0xa840, 0xa873,
+	0xa882, 0xa8b3,
+	0xa8f2, 0xa8f7,
+	0xa8fb, 0xa8fb,
+	0xa90a, 0xa925,
+	0xa930, 0xa946,
+	0xa960, 0xa97c,
+	0xa984, 0xa9b2,
+	0xa9cf, 0xa9cf,
+	0xaa00, 0xaa28,
+	0xaa40, 0xaa42,
+	0xaa44, 0xaa4b,
+	0xaa60, 0xaa76,
+	0xaa7a, 0xaa7a,
+	0xaa80, 0xaaaf,
+	0xaab1, 0xaab1,
+	0xaab5, 0xaab6,
+	0xaab9, 0xaabd,
+	0xaac0, 0xaac0,
+	0xaac2, 0xaac2,
+	0xaadb, 0xaadd,
+	0xabc0, 0xabe2,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb1d,
+	0xfb1f, 0xfb28,
+	0xfb2a, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfd3d,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdfb,
+	0xfe70, 0xfe74,
+	0xfe76, 0xfefc,
+	0xff21, 0xff3a,
+	0xff41, 0xff5a,
+	0xff66, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10140, 0x10174,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x103d1, 0x103d5,
+	0x10400, 0x1049d,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a00,
+	0x10a10, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a60, 0x10a7c,
+	0x10b00, 0x10b35,
+	0x10b40, 0x10b55,
+	0x10b60, 0x10b72,
+	0x10c00, 0x10c48,
+	0x11083, 0x110af,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x13000, 0x1342e,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+}; /* CR_ID_Start */
+
+/* 'ID_Continue': Derived Property */
+static const OnigCodePoint CR_ID_Continue[] = {
+	506,
+	0x0030, 0x0039,
+	0x0041, 0x005a,
+	0x005f, 0x005f,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00b7, 0x00b7,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0300, 0x0374,
+	0x0376, 0x0377,
+	0x037a, 0x037d,
+	0x0386, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x0483, 0x0487,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x0559,
+	0x0561, 0x0587,
+	0x0591, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f2,
+	0x0610, 0x061a,
+	0x0621, 0x065e,
+	0x0660, 0x0669,
+	0x066e, 0x06d3,
+	0x06d5, 0x06dc,
+	0x06df, 0x06e8,
+	0x06ea, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x074a,
+	0x074d, 0x07b1,
+	0x07c0, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0800, 0x082d,
+	0x0900, 0x0939,
+	0x093c, 0x094e,
+	0x0950, 0x0955,
+	0x0958, 0x0963,
+	0x0966, 0x096f,
+	0x0971, 0x0972,
+	0x0979, 0x097f,
+	0x0981, 0x0983,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bc, 0x09c4,
+	0x09c7, 0x09c8,
+	0x09cb, 0x09ce,
+	0x09d7, 0x09d7,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e3,
+	0x09e6, 0x09f1,
+	0x0a01, 0x0a03,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a3c, 0x0a3c,
+	0x0a3e, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4d,
+	0x0a51, 0x0a51,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a66, 0x0a75,
+	0x0a81, 0x0a83,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abc, 0x0ac5,
+	0x0ac7, 0x0ac9,
+	0x0acb, 0x0acd,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae3,
+	0x0ae6, 0x0aef,
+	0x0b01, 0x0b03,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3c, 0x0b44,
+	0x0b47, 0x0b48,
+	0x0b4b, 0x0b4d,
+	0x0b56, 0x0b57,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b63,
+	0x0b66, 0x0b6f,
+	0x0b71, 0x0b71,
+	0x0b82, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bbe, 0x0bc2,
+	0x0bc6, 0x0bc8,
+	0x0bca, 0x0bcd,
+	0x0bd0, 0x0bd0,
+	0x0bd7, 0x0bd7,
+	0x0be6, 0x0bef,
+	0x0c01, 0x0c03,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c44,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4d,
+	0x0c55, 0x0c56,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c63,
+	0x0c66, 0x0c6f,
+	0x0c82, 0x0c83,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbc, 0x0cc4,
+	0x0cc6, 0x0cc8,
+	0x0cca, 0x0ccd,
+	0x0cd5, 0x0cd6,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce3,
+	0x0ce6, 0x0cef,
+	0x0d02, 0x0d03,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d44,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4d,
+	0x0d57, 0x0d57,
+	0x0d60, 0x0d63,
+	0x0d66, 0x0d6f,
+	0x0d7a, 0x0d7f,
+	0x0d82, 0x0d83,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0dca, 0x0dca,
+	0x0dcf, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0dd8, 0x0ddf,
+	0x0df2, 0x0df3,
+	0x0e01, 0x0e3a,
+	0x0e40, 0x0e4e,
+	0x0e50, 0x0e59,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb9,
+	0x0ebb, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0ec8, 0x0ecd,
+	0x0ed0, 0x0ed9,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f00,
+	0x0f18, 0x0f19,
+	0x0f20, 0x0f29,
+	0x0f35, 0x0f35,
+	0x0f37, 0x0f37,
+	0x0f39, 0x0f39,
+	0x0f3e, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f71, 0x0f84,
+	0x0f86, 0x0f8b,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x0fc6, 0x0fc6,
+	0x1000, 0x1049,
+	0x1050, 0x109d,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x135f, 0x135f,
+	0x1369, 0x1371,
+	0x1380, 0x138f,
+	0x13a0, 0x13f4,
+	0x1401, 0x166c,
+	0x166f, 0x167f,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	0x16ee, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1714,
+	0x1720, 0x1734,
+	0x1740, 0x1753,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1772, 0x1773,
+	0x1780, 0x17b3,
+	0x17b6, 0x17d3,
+	0x17d7, 0x17d7,
+	0x17dc, 0x17dd,
+	0x17e0, 0x17e9,
+	0x180b, 0x180d,
+	0x1810, 0x1819,
+	0x1820, 0x1877,
+	0x1880, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1920, 0x192b,
+	0x1930, 0x193b,
+	0x1946, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19b0, 0x19c9,
+	0x19d0, 0x19da,
+	0x1a00, 0x1a1b,
+	0x1a20, 0x1a5e,
+	0x1a60, 0x1a7c,
+	0x1a7f, 0x1a89,
+	0x1a90, 0x1a99,
+	0x1aa7, 0x1aa7,
+	0x1b00, 0x1b4b,
+	0x1b50, 0x1b59,
+	0x1b6b, 0x1b73,
+	0x1b80, 0x1baa,
+	0x1bae, 0x1bb9,
+	0x1c00, 0x1c37,
+	0x1c40, 0x1c49,
+	0x1c4d, 0x1c7d,
+	0x1cd0, 0x1cd2,
+	0x1cd4, 0x1cf2,
+	0x1d00, 0x1de6,
+	0x1dfd, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x203f, 0x2040,
+	0x2054, 0x2054,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x20d0, 0x20dc,
+	0x20e1, 0x20e1,
+	0x20e5, 0x20f0,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2118, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x2188,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cf1,
+	0x2d00, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x2de0, 0x2dff,
+	0x3005, 0x3007,
+	0x3021, 0x302f,
+	0x3031, 0x3035,
+	0x3038, 0x303c,
+	0x3041, 0x3096,
+	0x3099, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa4d0, 0xa4fd,
+	0xa500, 0xa60c,
+	0xa610, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66f,
+	0xa67c, 0xa67d,
+	0xa67f, 0xa697,
+	0xa6a0, 0xa6f1,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa827,
+	0xa840, 0xa873,
+	0xa880, 0xa8c4,
+	0xa8d0, 0xa8d9,
+	0xa8e0, 0xa8f7,
+	0xa8fb, 0xa8fb,
+	0xa900, 0xa92d,
+	0xa930, 0xa953,
+	0xa960, 0xa97c,
+	0xa980, 0xa9c0,
+	0xa9cf, 0xa9d9,
+	0xaa00, 0xaa36,
+	0xaa40, 0xaa4d,
+	0xaa50, 0xaa59,
+	0xaa60, 0xaa76,
+	0xaa7a, 0xaa7b,
+	0xaa80, 0xaac2,
+	0xaadb, 0xaadd,
+	0xabc0, 0xabea,
+	0xabec, 0xabed,
+	0xabf0, 0xabf9,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb28,
+	0xfb2a, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfd3d,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdfb,
+	0xfe00, 0xfe0f,
+	0xfe20, 0xfe26,
+	0xfe33, 0xfe34,
+	0xfe4d, 0xfe4f,
+	0xfe70, 0xfe74,
+	0xfe76, 0xfefc,
+	0xff10, 0xff19,
+	0xff21, 0xff3a,
+	0xff3f, 0xff3f,
+	0xff41, 0xff5a,
+	0xff66, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10140, 0x10174,
+	0x101fd, 0x101fd,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x103d1, 0x103d5,
+	0x10400, 0x1049d,
+	0x104a0, 0x104a9,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a3f,
+	0x10a60, 0x10a7c,
+	0x10b00, 0x10b35,
+	0x10b40, 0x10b55,
+	0x10b60, 0x10b72,
+	0x10c00, 0x10c48,
+	0x11080, 0x110ba,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x13000, 0x1342e,
+	0x1d165, 0x1d169,
+	0x1d16d, 0x1d172,
+	0x1d17b, 0x1d182,
+	0x1d185, 0x1d18b,
+	0x1d1aa, 0x1d1ad,
+	0x1d242, 0x1d244,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x1d7ce, 0x1d7ff,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+	0xe0100, 0xe01ef,
+}; /* CR_ID_Continue */
+
+/* 'XID_Start': Derived Property */
+static const OnigCodePoint CR_XID_Start[] = {
+	431,
+	0x0041, 0x005a,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0370, 0x0374,
+	0x0376, 0x0377,
+	0x037b, 0x037d,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x0559,
+	0x0561, 0x0587,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f2,
+	0x0621, 0x064a,
+	0x066e, 0x066f,
+	0x0671, 0x06d3,
+	0x06d5, 0x06d5,
+	0x06e5, 0x06e6,
+	0x06ee, 0x06ef,
+	0x06fa, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x0710,
+	0x0712, 0x072f,
+	0x074d, 0x07a5,
+	0x07b1, 0x07b1,
+	0x07ca, 0x07ea,
+	0x07f4, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0800, 0x0815,
+	0x081a, 0x081a,
+	0x0824, 0x0824,
+	0x0828, 0x0828,
+	0x0904, 0x0939,
+	0x093d, 0x093d,
+	0x0950, 0x0950,
+	0x0958, 0x0961,
+	0x0971, 0x0972,
+	0x0979, 0x097f,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bd, 0x09bd,
+	0x09ce, 0x09ce,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e1,
+	0x09f0, 0x09f1,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a72, 0x0a74,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abd, 0x0abd,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae1,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3d, 0x0b3d,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b61,
+	0x0b71, 0x0b71,
+	0x0b83, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bd0, 0x0bd0,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c3d,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c61,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbd, 0x0cbd,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce1,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d3d,
+	0x0d60, 0x0d61,
+	0x0d7a, 0x0d7f,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0e01, 0x0e30,
+	0x0e32, 0x0e32,
+	0x0e40, 0x0e46,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb0,
+	0x0eb2, 0x0eb2,
+	0x0ebd, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f00,
+	0x0f40, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f88, 0x0f8b,
+	0x1000, 0x102a,
+	0x103f, 0x103f,
+	0x1050, 0x1055,
+	0x105a, 0x105d,
+	0x1061, 0x1061,
+	0x1065, 0x1066,
+	0x106e, 0x1070,
+	0x1075, 0x1081,
+	0x108e, 0x108e,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x1380, 0x138f,
+	0x13a0, 0x13f4,
+	0x1401, 0x166c,
+	0x166f, 0x167f,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	0x16ee, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1711,
+	0x1720, 0x1731,
+	0x1740, 0x1751,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1780, 0x17b3,
+	0x17d7, 0x17d7,
+	0x17dc, 0x17dc,
+	0x1820, 0x1877,
+	0x1880, 0x18a8,
+	0x18aa, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1950, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19c1, 0x19c7,
+	0x1a00, 0x1a16,
+	0x1a20, 0x1a54,
+	0x1aa7, 0x1aa7,
+	0x1b05, 0x1b33,
+	0x1b45, 0x1b4b,
+	0x1b83, 0x1ba0,
+	0x1bae, 0x1baf,
+	0x1c00, 0x1c23,
+	0x1c4d, 0x1c4f,
+	0x1c5a, 0x1c7d,
+	0x1ce9, 0x1cec,
+	0x1cee, 0x1cf1,
+	0x1d00, 0x1dbf,
+	0x1e00, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2118, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x2188,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cee,
+	0x2d00, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x3005, 0x3007,
+	0x3021, 0x3029,
+	0x3031, 0x3035,
+	0x3038, 0x303c,
+	0x3041, 0x3096,
+	0x309d, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa4d0, 0xa4fd,
+	0xa500, 0xa60c,
+	0xa610, 0xa61f,
+	0xa62a, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66e,
+	0xa67f, 0xa697,
+	0xa6a0, 0xa6ef,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa801,
+	0xa803, 0xa805,
+	0xa807, 0xa80a,
+	0xa80c, 0xa822,
+	0xa840, 0xa873,
+	0xa882, 0xa8b3,
+	0xa8f2, 0xa8f7,
+	0xa8fb, 0xa8fb,
+	0xa90a, 0xa925,
+	0xa930, 0xa946,
+	0xa960, 0xa97c,
+	0xa984, 0xa9b2,
+	0xa9cf, 0xa9cf,
+	0xaa00, 0xaa28,
+	0xaa40, 0xaa42,
+	0xaa44, 0xaa4b,
+	0xaa60, 0xaa76,
+	0xaa7a, 0xaa7a,
+	0xaa80, 0xaaaf,
+	0xaab1, 0xaab1,
+	0xaab5, 0xaab6,
+	0xaab9, 0xaabd,
+	0xaac0, 0xaac0,
+	0xaac2, 0xaac2,
+	0xaadb, 0xaadd,
+	0xabc0, 0xabe2,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb1d,
+	0xfb1f, 0xfb28,
+	0xfb2a, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfc5d,
+	0xfc64, 0xfd3d,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdf9,
+	0xfe71, 0xfe71,
+	0xfe73, 0xfe73,
+	0xfe77, 0xfe77,
+	0xfe79, 0xfe79,
+	0xfe7b, 0xfe7b,
+	0xfe7d, 0xfe7d,
+	0xfe7f, 0xfefc,
+	0xff21, 0xff3a,
+	0xff41, 0xff5a,
+	0xff66, 0xff9d,
+	0xffa0, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10140, 0x10174,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x103d1, 0x103d5,
+	0x10400, 0x1049d,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a00,
+	0x10a10, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a60, 0x10a7c,
+	0x10b00, 0x10b35,
+	0x10b40, 0x10b55,
+	0x10b60, 0x10b72,
+	0x10c00, 0x10c48,
+	0x11083, 0x110af,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x13000, 0x1342e,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+}; /* CR_XID_Start */
+
+/* 'XID_Continue': Derived Property */
+static const OnigCodePoint CR_XID_Continue[] = {
+	513,
+	0x0030, 0x0039,
+	0x0041, 0x005a,
+	0x005f, 0x005f,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00b7, 0x00b7,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0300, 0x0374,
+	0x0376, 0x0377,
+	0x037b, 0x037d,
+	0x0386, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x0483, 0x0487,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x0559,
+	0x0561, 0x0587,
+	0x0591, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f2,
+	0x0610, 0x061a,
+	0x0621, 0x065e,
+	0x0660, 0x0669,
+	0x066e, 0x06d3,
+	0x06d5, 0x06dc,
+	0x06df, 0x06e8,
+	0x06ea, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x074a,
+	0x074d, 0x07b1,
+	0x07c0, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0800, 0x082d,
+	0x0900, 0x0939,
+	0x093c, 0x094e,
+	0x0950, 0x0955,
+	0x0958, 0x0963,
+	0x0966, 0x096f,
+	0x0971, 0x0972,
+	0x0979, 0x097f,
+	0x0981, 0x0983,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bc, 0x09c4,
+	0x09c7, 0x09c8,
+	0x09cb, 0x09ce,
+	0x09d7, 0x09d7,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e3,
+	0x09e6, 0x09f1,
+	0x0a01, 0x0a03,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a3c, 0x0a3c,
+	0x0a3e, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4d,
+	0x0a51, 0x0a51,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a66, 0x0a75,
+	0x0a81, 0x0a83,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abc, 0x0ac5,
+	0x0ac7, 0x0ac9,
+	0x0acb, 0x0acd,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae3,
+	0x0ae6, 0x0aef,
+	0x0b01, 0x0b03,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3c, 0x0b44,
+	0x0b47, 0x0b48,
+	0x0b4b, 0x0b4d,
+	0x0b56, 0x0b57,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b63,
+	0x0b66, 0x0b6f,
+	0x0b71, 0x0b71,
+	0x0b82, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bbe, 0x0bc2,
+	0x0bc6, 0x0bc8,
+	0x0bca, 0x0bcd,
+	0x0bd0, 0x0bd0,
+	0x0bd7, 0x0bd7,
+	0x0be6, 0x0bef,
+	0x0c01, 0x0c03,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c44,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4d,
+	0x0c55, 0x0c56,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c63,
+	0x0c66, 0x0c6f,
+	0x0c82, 0x0c83,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbc, 0x0cc4,
+	0x0cc6, 0x0cc8,
+	0x0cca, 0x0ccd,
+	0x0cd5, 0x0cd6,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce3,
+	0x0ce6, 0x0cef,
+	0x0d02, 0x0d03,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d44,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4d,
+	0x0d57, 0x0d57,
+	0x0d60, 0x0d63,
+	0x0d66, 0x0d6f,
+	0x0d7a, 0x0d7f,
+	0x0d82, 0x0d83,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0dca, 0x0dca,
+	0x0dcf, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0dd8, 0x0ddf,
+	0x0df2, 0x0df3,
+	0x0e01, 0x0e3a,
+	0x0e40, 0x0e4e,
+	0x0e50, 0x0e59,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb9,
+	0x0ebb, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0ec8, 0x0ecd,
+	0x0ed0, 0x0ed9,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f00,
+	0x0f18, 0x0f19,
+	0x0f20, 0x0f29,
+	0x0f35, 0x0f35,
+	0x0f37, 0x0f37,
+	0x0f39, 0x0f39,
+	0x0f3e, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f71, 0x0f84,
+	0x0f86, 0x0f8b,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x0fc6, 0x0fc6,
+	0x1000, 0x1049,
+	0x1050, 0x109d,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x135f, 0x135f,
+	0x1369, 0x1371,
+	0x1380, 0x138f,
+	0x13a0, 0x13f4,
+	0x1401, 0x166c,
+	0x166f, 0x167f,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	0x16ee, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1714,
+	0x1720, 0x1734,
+	0x1740, 0x1753,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1772, 0x1773,
+	0x1780, 0x17b3,
+	0x17b6, 0x17d3,
+	0x17d7, 0x17d7,
+	0x17dc, 0x17dd,
+	0x17e0, 0x17e9,
+	0x180b, 0x180d,
+	0x1810, 0x1819,
+	0x1820, 0x1877,
+	0x1880, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1920, 0x192b,
+	0x1930, 0x193b,
+	0x1946, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19b0, 0x19c9,
+	0x19d0, 0x19da,
+	0x1a00, 0x1a1b,
+	0x1a20, 0x1a5e,
+	0x1a60, 0x1a7c,
+	0x1a7f, 0x1a89,
+	0x1a90, 0x1a99,
+	0x1aa7, 0x1aa7,
+	0x1b00, 0x1b4b,
+	0x1b50, 0x1b59,
+	0x1b6b, 0x1b73,
+	0x1b80, 0x1baa,
+	0x1bae, 0x1bb9,
+	0x1c00, 0x1c37,
+	0x1c40, 0x1c49,
+	0x1c4d, 0x1c7d,
+	0x1cd0, 0x1cd2,
+	0x1cd4, 0x1cf2,
+	0x1d00, 0x1de6,
+	0x1dfd, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x203f, 0x2040,
+	0x2054, 0x2054,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x20d0, 0x20dc,
+	0x20e1, 0x20e1,
+	0x20e5, 0x20f0,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2118, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x2188,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cf1,
+	0x2d00, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x2de0, 0x2dff,
+	0x3005, 0x3007,
+	0x3021, 0x302f,
+	0x3031, 0x3035,
+	0x3038, 0x303c,
+	0x3041, 0x3096,
+	0x3099, 0x309a,
+	0x309d, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa4d0, 0xa4fd,
+	0xa500, 0xa60c,
+	0xa610, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66f,
+	0xa67c, 0xa67d,
+	0xa67f, 0xa697,
+	0xa6a0, 0xa6f1,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa827,
+	0xa840, 0xa873,
+	0xa880, 0xa8c4,
+	0xa8d0, 0xa8d9,
+	0xa8e0, 0xa8f7,
+	0xa8fb, 0xa8fb,
+	0xa900, 0xa92d,
+	0xa930, 0xa953,
+	0xa960, 0xa97c,
+	0xa980, 0xa9c0,
+	0xa9cf, 0xa9d9,
+	0xaa00, 0xaa36,
+	0xaa40, 0xaa4d,
+	0xaa50, 0xaa59,
+	0xaa60, 0xaa76,
+	0xaa7a, 0xaa7b,
+	0xaa80, 0xaac2,
+	0xaadb, 0xaadd,
+	0xabc0, 0xabea,
+	0xabec, 0xabed,
+	0xabf0, 0xabf9,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb28,
+	0xfb2a, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfc5d,
+	0xfc64, 0xfd3d,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdf9,
+	0xfe00, 0xfe0f,
+	0xfe20, 0xfe26,
+	0xfe33, 0xfe34,
+	0xfe4d, 0xfe4f,
+	0xfe71, 0xfe71,
+	0xfe73, 0xfe73,
+	0xfe77, 0xfe77,
+	0xfe79, 0xfe79,
+	0xfe7b, 0xfe7b,
+	0xfe7d, 0xfe7d,
+	0xfe7f, 0xfefc,
+	0xff10, 0xff19,
+	0xff21, 0xff3a,
+	0xff3f, 0xff3f,
+	0xff41, 0xff5a,
+	0xff66, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10140, 0x10174,
+	0x101fd, 0x101fd,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x103d1, 0x103d5,
+	0x10400, 0x1049d,
+	0x104a0, 0x104a9,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a3f,
+	0x10a60, 0x10a7c,
+	0x10b00, 0x10b35,
+	0x10b40, 0x10b55,
+	0x10b60, 0x10b72,
+	0x10c00, 0x10c48,
+	0x11080, 0x110ba,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x13000, 0x1342e,
+	0x1d165, 0x1d169,
+	0x1d16d, 0x1d172,
+	0x1d17b, 0x1d182,
+	0x1d185, 0x1d18b,
+	0x1d1aa, 0x1d1ad,
+	0x1d242, 0x1d244,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x1d7ce, 0x1d7ff,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+	0xe0100, 0xe01ef,
+}; /* CR_XID_Continue */
+
+/* 'Default_Ignorable_Code_Point': Derived Property */
+static const OnigCodePoint CR_Default_Ignorable_Code_Point[] = {
+	15,
+	0x00ad, 0x00ad,
+	0x034f, 0x034f,
+	0x115f, 0x1160,
+	0x17b4, 0x17b5,
+	0x180b, 0x180d,
+	0x200b, 0x200f,
+	0x202a, 0x202e,
+	0x2060, 0x206f,
+	0x3164, 0x3164,
+	0xfe00, 0xfe0f,
+	0xfeff, 0xfeff,
+	0xffa0, 0xffa0,
+	0xfff0, 0xfff8,
+	0x1d173, 0x1d17a,
+	0xe0000, 0xe0fff,
+}; /* CR_Default_Ignorable_Code_Point */
+
+/* 'Grapheme_Extend': Derived Property */
+static const OnigCodePoint CR_Grapheme_Extend[] = {
+	206,
+	0x0300, 0x036f,
+	0x0483, 0x0489,
+	0x0591, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x0610, 0x061a,
+	0x064b, 0x065e,
+	0x0670, 0x0670,
+	0x06d6, 0x06dc,
+	0x06de, 0x06e4,
+	0x06e7, 0x06e8,
+	0x06ea, 0x06ed,
+	0x0711, 0x0711,
+	0x0730, 0x074a,
+	0x07a6, 0x07b0,
+	0x07eb, 0x07f3,
+	0x0816, 0x0819,
+	0x081b, 0x0823,
+	0x0825, 0x0827,
+	0x0829, 0x082d,
+	0x0900, 0x0902,
+	0x093c, 0x093c,
+	0x0941, 0x0948,
+	0x094d, 0x094d,
+	0x0951, 0x0955,
+	0x0962, 0x0963,
+	0x0981, 0x0981,
+	0x09bc, 0x09bc,
+	0x09be, 0x09be,
+	0x09c1, 0x09c4,
+	0x09cd, 0x09cd,
+	0x09d7, 0x09d7,
+	0x09e2, 0x09e3,
+	0x0a01, 0x0a02,
+	0x0a3c, 0x0a3c,
+	0x0a41, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4d,
+	0x0a51, 0x0a51,
+	0x0a70, 0x0a71,
+	0x0a75, 0x0a75,
+	0x0a81, 0x0a82,
+	0x0abc, 0x0abc,
+	0x0ac1, 0x0ac5,
+	0x0ac7, 0x0ac8,
+	0x0acd, 0x0acd,
+	0x0ae2, 0x0ae3,
+	0x0b01, 0x0b01,
+	0x0b3c, 0x0b3c,
+	0x0b3e, 0x0b3f,
+	0x0b41, 0x0b44,
+	0x0b4d, 0x0b4d,
+	0x0b56, 0x0b57,
+	0x0b62, 0x0b63,
+	0x0b82, 0x0b82,
+	0x0bbe, 0x0bbe,
+	0x0bc0, 0x0bc0,
+	0x0bcd, 0x0bcd,
+	0x0bd7, 0x0bd7,
+	0x0c3e, 0x0c40,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4d,
+	0x0c55, 0x0c56,
+	0x0c62, 0x0c63,
+	0x0cbc, 0x0cbc,
+	0x0cbf, 0x0cbf,
+	0x0cc2, 0x0cc2,
+	0x0cc6, 0x0cc6,
+	0x0ccc, 0x0ccd,
+	0x0cd5, 0x0cd6,
+	0x0ce2, 0x0ce3,
+	0x0d3e, 0x0d3e,
+	0x0d41, 0x0d44,
+	0x0d4d, 0x0d4d,
+	0x0d57, 0x0d57,
+	0x0d62, 0x0d63,
+	0x0dca, 0x0dca,
+	0x0dcf, 0x0dcf,
+	0x0dd2, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0ddf, 0x0ddf,
+	0x0e31, 0x0e31,
+	0x0e34, 0x0e3a,
+	0x0e47, 0x0e4e,
+	0x0eb1, 0x0eb1,
+	0x0eb4, 0x0eb9,
+	0x0ebb, 0x0ebc,
+	0x0ec8, 0x0ecd,
+	0x0f18, 0x0f19,
+	0x0f35, 0x0f35,
+	0x0f37, 0x0f37,
+	0x0f39, 0x0f39,
+	0x0f71, 0x0f7e,
+	0x0f80, 0x0f84,
+	0x0f86, 0x0f87,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x0fc6, 0x0fc6,
+	0x102d, 0x1030,
+	0x1032, 0x1037,
+	0x1039, 0x103a,
+	0x103d, 0x103e,
+	0x1058, 0x1059,
+	0x105e, 0x1060,
+	0x1071, 0x1074,
+	0x1082, 0x1082,
+	0x1085, 0x1086,
+	0x108d, 0x108d,
+	0x109d, 0x109d,
+	0x135f, 0x135f,
+	0x1712, 0x1714,
+	0x1732, 0x1734,
+	0x1752, 0x1753,
+	0x1772, 0x1773,
+	0x17b7, 0x17bd,
+	0x17c6, 0x17c6,
+	0x17c9, 0x17d3,
+	0x17dd, 0x17dd,
+	0x180b, 0x180d,
+	0x18a9, 0x18a9,
+	0x1920, 0x1922,
+	0x1927, 0x1928,
+	0x1932, 0x1932,
+	0x1939, 0x193b,
+	0x1a17, 0x1a18,
+	0x1a56, 0x1a56,
+	0x1a58, 0x1a5e,
+	0x1a60, 0x1a60,
+	0x1a62, 0x1a62,
+	0x1a65, 0x1a6c,
+	0x1a73, 0x1a7c,
+	0x1a7f, 0x1a7f,
+	0x1b00, 0x1b03,
+	0x1b34, 0x1b34,
+	0x1b36, 0x1b3a,
+	0x1b3c, 0x1b3c,
+	0x1b42, 0x1b42,
+	0x1b6b, 0x1b73,
+	0x1b80, 0x1b81,
+	0x1ba2, 0x1ba5,
+	0x1ba8, 0x1ba9,
+	0x1c2c, 0x1c33,
+	0x1c36, 0x1c37,
+	0x1cd0, 0x1cd2,
+	0x1cd4, 0x1ce0,
+	0x1ce2, 0x1ce8,
+	0x1ced, 0x1ced,
+	0x1dc0, 0x1de6,
+	0x1dfd, 0x1dff,
+	0x200c, 0x200d,
+	0x20d0, 0x20f0,
+	0x2cef, 0x2cf1,
+	0x2de0, 0x2dff,
+	0x302a, 0x302f,
+	0x3099, 0x309a,
+	0xa66f, 0xa672,
+	0xa67c, 0xa67d,
+	0xa6f0, 0xa6f1,
+	0xa802, 0xa802,
+	0xa806, 0xa806,
+	0xa80b, 0xa80b,
+	0xa825, 0xa826,
+	0xa8c4, 0xa8c4,
+	0xa8e0, 0xa8f1,
+	0xa926, 0xa92d,
+	0xa947, 0xa951,
+	0xa980, 0xa982,
+	0xa9b3, 0xa9b3,
+	0xa9b6, 0xa9b9,
+	0xa9bc, 0xa9bc,
+	0xaa29, 0xaa2e,
+	0xaa31, 0xaa32,
+	0xaa35, 0xaa36,
+	0xaa43, 0xaa43,
+	0xaa4c, 0xaa4c,
+	0xaab0, 0xaab0,
+	0xaab2, 0xaab4,
+	0xaab7, 0xaab8,
+	0xaabe, 0xaabf,
+	0xaac1, 0xaac1,
+	0xabe5, 0xabe5,
+	0xabe8, 0xabe8,
+	0xabed, 0xabed,
+	0xfb1e, 0xfb1e,
+	0xfe00, 0xfe0f,
+	0xfe20, 0xfe26,
+	0xff9e, 0xff9f,
+	0x101fd, 0x101fd,
+	0x10a01, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a0f,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a3f,
+	0x11080, 0x11081,
+	0x110b3, 0x110b6,
+	0x110b9, 0x110ba,
+	0x1d165, 0x1d165,
+	0x1d167, 0x1d169,
+	0x1d16e, 0x1d172,
+	0x1d17b, 0x1d182,
+	0x1d185, 0x1d18b,
+	0x1d1aa, 0x1d1ad,
+	0x1d242, 0x1d244,
+	0xe0100, 0xe01ef,
+}; /* CR_Grapheme_Extend */
+
+/* 'Grapheme_Base': Derived Property */
+static const OnigCodePoint CR_Grapheme_Base[] = {
+	567,
+	0x0020, 0x007e,
+	0x00a0, 0x00ac,
+	0x00ae, 0x02ff,
+	0x0370, 0x0377,
+	0x037a, 0x037e,
+	0x0384, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x0482,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x055f,
+	0x0561, 0x0587,
+	0x0589, 0x058a,
+	0x05be, 0x05be,
+	0x05c0, 0x05c0,
+	0x05c3, 0x05c3,
+	0x05c6, 0x05c6,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f4,
+	0x0606, 0x060f,
+	0x061b, 0x061b,
+	0x061e, 0x061f,
+	0x0621, 0x064a,
+	0x0660, 0x066f,
+	0x0671, 0x06d5,
+	0x06e5, 0x06e6,
+	0x06e9, 0x06e9,
+	0x06ee, 0x070d,
+	0x0710, 0x0710,
+	0x0712, 0x072f,
+	0x074d, 0x07a5,
+	0x07b1, 0x07b1,
+	0x07c0, 0x07ea,
+	0x07f4, 0x07fa,
+	0x0800, 0x0815,
+	0x081a, 0x081a,
+	0x0824, 0x0824,
+	0x0828, 0x0828,
+	0x0830, 0x083e,
+	0x0903, 0x0939,
+	0x093d, 0x0940,
+	0x0949, 0x094c,
+	0x094e, 0x094e,
+	0x0950, 0x0950,
+	0x0958, 0x0961,
+	0x0964, 0x0972,
+	0x0979, 0x097f,
+	0x0982, 0x0983,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bd, 0x09bd,
+	0x09bf, 0x09c0,
+	0x09c7, 0x09c8,
+	0x09cb, 0x09cc,
+	0x09ce, 0x09ce,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e1,
+	0x09e6, 0x09fb,
+	0x0a03, 0x0a03,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a3e, 0x0a40,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a66, 0x0a6f,
+	0x0a72, 0x0a74,
+	0x0a83, 0x0a83,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abd, 0x0ac0,
+	0x0ac9, 0x0ac9,
+	0x0acb, 0x0acc,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae1,
+	0x0ae6, 0x0aef,
+	0x0af1, 0x0af1,
+	0x0b02, 0x0b03,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3d, 0x0b3d,
+	0x0b40, 0x0b40,
+	0x0b47, 0x0b48,
+	0x0b4b, 0x0b4c,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b61,
+	0x0b66, 0x0b71,
+	0x0b83, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bbf, 0x0bbf,
+	0x0bc1, 0x0bc2,
+	0x0bc6, 0x0bc8,
+	0x0bca, 0x0bcc,
+	0x0bd0, 0x0bd0,
+	0x0be6, 0x0bfa,
+	0x0c01, 0x0c03,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c3d,
+	0x0c41, 0x0c44,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c61,
+	0x0c66, 0x0c6f,
+	0x0c78, 0x0c7f,
+	0x0c82, 0x0c83,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbd, 0x0cbe,
+	0x0cc0, 0x0cc1,
+	0x0cc3, 0x0cc4,
+	0x0cc7, 0x0cc8,
+	0x0cca, 0x0ccb,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce1,
+	0x0ce6, 0x0cef,
+	0x0cf1, 0x0cf2,
+	0x0d02, 0x0d03,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d3d,
+	0x0d3f, 0x0d40,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4c,
+	0x0d60, 0x0d61,
+	0x0d66, 0x0d75,
+	0x0d79, 0x0d7f,
+	0x0d82, 0x0d83,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0dd0, 0x0dd1,
+	0x0dd8, 0x0dde,
+	0x0df2, 0x0df4,
+	0x0e01, 0x0e30,
+	0x0e32, 0x0e33,
+	0x0e3f, 0x0e46,
+	0x0e4f, 0x0e5b,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb0,
+	0x0eb2, 0x0eb3,
+	0x0ebd, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0ed0, 0x0ed9,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f17,
+	0x0f1a, 0x0f34,
+	0x0f36, 0x0f36,
+	0x0f38, 0x0f38,
+	0x0f3a, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f7f, 0x0f7f,
+	0x0f85, 0x0f85,
+	0x0f88, 0x0f8b,
+	0x0fbe, 0x0fc5,
+	0x0fc7, 0x0fcc,
+	0x0fce, 0x0fd8,
+	0x1000, 0x102c,
+	0x1031, 0x1031,
+	0x1038, 0x1038,
+	0x103b, 0x103c,
+	0x103f, 0x1057,
+	0x105a, 0x105d,
+	0x1061, 0x1070,
+	0x1075, 0x1081,
+	0x1083, 0x1084,
+	0x1087, 0x108c,
+	0x108e, 0x109c,
+	0x109e, 0x10c5,
+	0x10d0, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x1360, 0x137c,
+	0x1380, 0x1399,
+	0x13a0, 0x13f4,
+	0x1400, 0x169c,
+	0x16a0, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1711,
+	0x1720, 0x1731,
+	0x1735, 0x1736,
+	0x1740, 0x1751,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1780, 0x17b3,
+	0x17b6, 0x17b6,
+	0x17be, 0x17c5,
+	0x17c7, 0x17c8,
+	0x17d4, 0x17dc,
+	0x17e0, 0x17e9,
+	0x17f0, 0x17f9,
+	0x1800, 0x180a,
+	0x180e, 0x180e,
+	0x1810, 0x1819,
+	0x1820, 0x1877,
+	0x1880, 0x18a8,
+	0x18aa, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1923, 0x1926,
+	0x1929, 0x192b,
+	0x1930, 0x1931,
+	0x1933, 0x1938,
+	0x1940, 0x1940,
+	0x1944, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19b0, 0x19c9,
+	0x19d0, 0x19da,
+	0x19de, 0x1a16,
+	0x1a19, 0x1a1b,
+	0x1a1e, 0x1a55,
+	0x1a57, 0x1a57,
+	0x1a61, 0x1a61,
+	0x1a63, 0x1a64,
+	0x1a6d, 0x1a72,
+	0x1a80, 0x1a89,
+	0x1a90, 0x1a99,
+	0x1aa0, 0x1aad,
+	0x1b04, 0x1b33,
+	0x1b35, 0x1b35,
+	0x1b3b, 0x1b3b,
+	0x1b3d, 0x1b41,
+	0x1b43, 0x1b4b,
+	0x1b50, 0x1b6a,
+	0x1b74, 0x1b7c,
+	0x1b82, 0x1ba1,
+	0x1ba6, 0x1ba7,
+	0x1baa, 0x1baa,
+	0x1bae, 0x1bb9,
+	0x1c00, 0x1c2b,
+	0x1c34, 0x1c35,
+	0x1c3b, 0x1c49,
+	0x1c4d, 0x1c7f,
+	0x1cd3, 0x1cd3,
+	0x1ce1, 0x1ce1,
+	0x1ce9, 0x1cec,
+	0x1cee, 0x1cf2,
+	0x1d00, 0x1dbf,
+	0x1e00, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fc4,
+	0x1fc6, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fdd, 0x1fef,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffe,
+	0x2000, 0x200a,
+	0x2010, 0x2027,
+	0x202f, 0x205f,
+	0x2070, 0x2071,
+	0x2074, 0x208e,
+	0x2090, 0x2094,
+	0x20a0, 0x20b8,
+	0x2100, 0x2189,
+	0x2190, 0x23e8,
+	0x2400, 0x2426,
+	0x2440, 0x244a,
+	0x2460, 0x26cd,
+	0x26cf, 0x26e1,
+	0x26e3, 0x26e3,
+	0x26e8, 0x26ff,
+	0x2701, 0x2704,
+	0x2706, 0x2709,
+	0x270c, 0x2727,
+	0x2729, 0x274b,
+	0x274d, 0x274d,
+	0x274f, 0x2752,
+	0x2756, 0x275e,
+	0x2761, 0x2794,
+	0x2798, 0x27af,
+	0x27b1, 0x27be,
+	0x27c0, 0x27ca,
+	0x27cc, 0x27cc,
+	0x27d0, 0x2b4c,
+	0x2b50, 0x2b59,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2cee,
+	0x2cf9, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x2e00, 0x2e31,
+	0x2e80, 0x2e99,
+	0x2e9b, 0x2ef3,
+	0x2f00, 0x2fd5,
+	0x2ff0, 0x2ffb,
+	0x3000, 0x3029,
+	0x3030, 0x303f,
+	0x3041, 0x3096,
+	0x309b, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x3190, 0x31b7,
+	0x31c0, 0x31e3,
+	0x31f0, 0x321e,
+	0x3220, 0x32fe,
+	0x3300, 0x4db5,
+	0x4dc0, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa490, 0xa4c6,
+	0xa4d0, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66e,
+	0xa673, 0xa673,
+	0xa67e, 0xa697,
+	0xa6a0, 0xa6ef,
+	0xa6f2, 0xa6f7,
+	0xa700, 0xa78c,
+	0xa7fb, 0xa801,
+	0xa803, 0xa805,
+	0xa807, 0xa80a,
+	0xa80c, 0xa824,
+	0xa827, 0xa82b,
+	0xa830, 0xa839,
+	0xa840, 0xa877,
+	0xa880, 0xa8c3,
+	0xa8ce, 0xa8d9,
+	0xa8f2, 0xa8fb,
+	0xa900, 0xa925,
+	0xa92e, 0xa946,
+	0xa952, 0xa953,
+	0xa95f, 0xa97c,
+	0xa983, 0xa9b2,
+	0xa9b4, 0xa9b5,
+	0xa9ba, 0xa9bb,
+	0xa9bd, 0xa9cd,
+	0xa9cf, 0xa9d9,
+	0xa9de, 0xa9df,
+	0xaa00, 0xaa28,
+	0xaa2f, 0xaa30,
+	0xaa33, 0xaa34,
+	0xaa40, 0xaa42,
+	0xaa44, 0xaa4b,
+	0xaa4d, 0xaa4d,
+	0xaa50, 0xaa59,
+	0xaa5c, 0xaa7b,
+	0xaa80, 0xaaaf,
+	0xaab1, 0xaab1,
+	0xaab5, 0xaab6,
+	0xaab9, 0xaabd,
+	0xaac0, 0xaac0,
+	0xaac2, 0xaac2,
+	0xaadb, 0xaadf,
+	0xabc0, 0xabe4,
+	0xabe6, 0xabe7,
+	0xabe9, 0xabec,
+	0xabf0, 0xabf9,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb1d,
+	0xfb1f, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfd3f,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdfd,
+	0xfe10, 0xfe19,
+	0xfe30, 0xfe52,
+	0xfe54, 0xfe66,
+	0xfe68, 0xfe6b,
+	0xfe70, 0xfe74,
+	0xfe76, 0xfefc,
+	0xff01, 0xff9d,
+	0xffa0, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0xffe0, 0xffe6,
+	0xffe8, 0xffee,
+	0xfffc, 0xfffd,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10100, 0x10102,
+	0x10107, 0x10133,
+	0x10137, 0x1018a,
+	0x10190, 0x1019b,
+	0x101d0, 0x101fc,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10320, 0x10323,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x1039f, 0x103c3,
+	0x103c8, 0x103d5,
+	0x10400, 0x1049d,
+	0x104a0, 0x104a9,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10857, 0x1085f,
+	0x10900, 0x1091b,
+	0x1091f, 0x10939,
+	0x1093f, 0x1093f,
+	0x10a00, 0x10a00,
+	0x10a10, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a40, 0x10a47,
+	0x10a50, 0x10a58,
+	0x10a60, 0x10a7f,
+	0x10b00, 0x10b35,
+	0x10b39, 0x10b55,
+	0x10b58, 0x10b72,
+	0x10b78, 0x10b7f,
+	0x10c00, 0x10c48,
+	0x10e60, 0x10e7e,
+	0x11082, 0x110b2,
+	0x110b7, 0x110b8,
+	0x110bb, 0x110bc,
+	0x110be, 0x110c1,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x12470, 0x12473,
+	0x13000, 0x1342e,
+	0x1d000, 0x1d0f5,
+	0x1d100, 0x1d126,
+	0x1d129, 0x1d164,
+	0x1d166, 0x1d166,
+	0x1d16a, 0x1d16d,
+	0x1d183, 0x1d184,
+	0x1d18c, 0x1d1a9,
+	0x1d1ae, 0x1d1dd,
+	0x1d200, 0x1d241,
+	0x1d245, 0x1d245,
+	0x1d300, 0x1d356,
+	0x1d360, 0x1d371,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d7cb,
+	0x1d7ce, 0x1d7ff,
+	0x1f000, 0x1f02b,
+	0x1f030, 0x1f093,
+	0x1f100, 0x1f10a,
+	0x1f110, 0x1f12e,
+	0x1f131, 0x1f131,
+	0x1f13d, 0x1f13d,
+	0x1f13f, 0x1f13f,
+	0x1f142, 0x1f142,
+	0x1f146, 0x1f146,
+	0x1f14a, 0x1f14e,
+	0x1f157, 0x1f157,
+	0x1f15f, 0x1f15f,
+	0x1f179, 0x1f179,
+	0x1f17b, 0x1f17c,
+	0x1f17f, 0x1f17f,
+	0x1f18a, 0x1f18d,
+	0x1f190, 0x1f190,
+	0x1f200, 0x1f200,
+	0x1f210, 0x1f231,
+	0x1f240, 0x1f248,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+}; /* CR_Grapheme_Base */
+
+/* 'Grapheme_Link': Derived Property */
+static const OnigCodePoint CR_Grapheme_Link[] = {
+	26,
+	0x094d, 0x094d,
+	0x09cd, 0x09cd,
+	0x0a4d, 0x0a4d,
+	0x0acd, 0x0acd,
+	0x0b4d, 0x0b4d,
+	0x0bcd, 0x0bcd,
+	0x0c4d, 0x0c4d,
+	0x0ccd, 0x0ccd,
+	0x0d4d, 0x0d4d,
+	0x0dca, 0x0dca,
+	0x0e3a, 0x0e3a,
+	0x0f84, 0x0f84,
+	0x1039, 0x103a,
+	0x1714, 0x1714,
+	0x1734, 0x1734,
+	0x17d2, 0x17d2,
+	0x1a60, 0x1a60,
+	0x1b44, 0x1b44,
+	0x1baa, 0x1baa,
+	0xa806, 0xa806,
+	0xa8c4, 0xa8c4,
+	0xa953, 0xa953,
+	0xa9c0, 0xa9c0,
+	0xabed, 0xabed,
+	0x10a3f, 0x10a3f,
+	0x110b9, 0x110b9,
+}; /* CR_Grapheme_Link */
+
 /* 'Common': Script */
 static const OnigCodePoint CR_Common[] = {
 	159,
@@ -9798,9 +17103,890 @@
 	1,
 	0x11080, 0x110c1,
 }; /* CR_Kaithi */
+
+/* 'White_Space': Binary Property */
+static const OnigCodePoint CR_White_Space[] = {
+	11,
+	0x0009, 0x000d,
+	0x0020, 0x0020,
+	0x0085, 0x0085,
+	0x00a0, 0x00a0,
+	0x1680, 0x1680,
+	0x180e, 0x180e,
+	0x2000, 0x200a,
+	0x2028, 0x2029,
+	0x202f, 0x202f,
+	0x205f, 0x205f,
+	0x3000, 0x3000,
+}; /* CR_White_Space */
+
+/* 'Bidi_Control': Binary Property */
+static const OnigCodePoint CR_Bidi_Control[] = {
+	2,
+	0x200e, 0x200f,
+	0x202a, 0x202e,
+}; /* CR_Bidi_Control */
+
+/* 'Join_Control': Binary Property */
+static const OnigCodePoint CR_Join_Control[] = {
+	1,
+	0x200c, 0x200d,
+}; /* CR_Join_Control */
+
+/* 'Dash': Binary Property */
+static const OnigCodePoint CR_Dash[] = {
+	19,
+	0x002d, 0x002d,
+	0x058a, 0x058a,
+	0x05be, 0x05be,
+	0x1400, 0x1400,
+	0x1806, 0x1806,
+	0x2010, 0x2015,
+	0x2053, 0x2053,
+	0x207b, 0x207b,
+	0x208b, 0x208b,
+	0x2212, 0x2212,
+	0x2e17, 0x2e17,
+	0x2e1a, 0x2e1a,
+	0x301c, 0x301c,
+	0x3030, 0x3030,
+	0x30a0, 0x30a0,
+	0xfe31, 0xfe32,
+	0xfe58, 0xfe58,
+	0xfe63, 0xfe63,
+	0xff0d, 0xff0d,
+}; /* CR_Dash */
+
+/* 'Hyphen': Binary Property */
+static const OnigCodePoint CR_Hyphen[] = {
+	10,
+	0x002d, 0x002d,
+	0x00ad, 0x00ad,
+	0x058a, 0x058a,
+	0x1806, 0x1806,
+	0x2010, 0x2011,
+	0x2e17, 0x2e17,
+	0x30fb, 0x30fb,
+	0xfe63, 0xfe63,
+	0xff0d, 0xff0d,
+	0xff65, 0xff65,
+}; /* CR_Hyphen */
+
+/* 'Quotation_Mark': Binary Property */
+static const OnigCodePoint CR_Quotation_Mark[] = {
+	12,
+	0x0022, 0x0022,
+	0x0027, 0x0027,
+	0x00ab, 0x00ab,
+	0x00bb, 0x00bb,
+	0x2018, 0x201f,
+	0x2039, 0x203a,
+	0x300c, 0x300f,
+	0x301d, 0x301f,
+	0xfe41, 0xfe44,
+	0xff02, 0xff02,
+	0xff07, 0xff07,
+	0xff62, 0xff63,
+}; /* CR_Quotation_Mark */
+
+/* 'Terminal_Punctuation': Binary Property */
+static const OnigCodePoint CR_Terminal_Punctuation[] = {
+	65,
+	0x0021, 0x0021,
+	0x002c, 0x002c,
+	0x002e, 0x002e,
+	0x003a, 0x003b,
+	0x003f, 0x003f,
+	0x037e, 0x037e,
+	0x0387, 0x0387,
+	0x0589, 0x0589,
+	0x05c3, 0x05c3,
+	0x060c, 0x060c,
+	0x061b, 0x061b,
+	0x061f, 0x061f,
+	0x06d4, 0x06d4,
+	0x0700, 0x070a,
+	0x070c, 0x070c,
+	0x07f8, 0x07f9,
+	0x0830, 0x083e,
+	0x0964, 0x0965,
+	0x0e5a, 0x0e5b,
+	0x0f08, 0x0f08,
+	0x0f0d, 0x0f12,
+	0x104a, 0x104b,
+	0x1361, 0x1368,
+	0x166d, 0x166e,
+	0x16eb, 0x16ed,
+	0x17d4, 0x17d6,
+	0x17da, 0x17da,
+	0x1802, 0x1805,
+	0x1808, 0x1809,
+	0x1944, 0x1945,
+	0x1aa8, 0x1aab,
+	0x1b5a, 0x1b5b,
+	0x1b5d, 0x1b5f,
+	0x1c3b, 0x1c3f,
+	0x1c7e, 0x1c7f,
+	0x203c, 0x203d,
+	0x2047, 0x2049,
+	0x2e2e, 0x2e2e,
+	0x3001, 0x3002,
+	0xa4fe, 0xa4ff,
+	0xa60d, 0xa60f,
+	0xa6f3, 0xa6f7,
+	0xa876, 0xa877,
+	0xa8ce, 0xa8cf,
+	0xa92f, 0xa92f,
+	0xa9c7, 0xa9c9,
+	0xaa5d, 0xaa5f,
+	0xaadf, 0xaadf,
+	0xabeb, 0xabeb,
+	0xfe50, 0xfe52,
+	0xfe54, 0xfe57,
+	0xff01, 0xff01,
+	0xff0c, 0xff0c,
+	0xff0e, 0xff0e,
+	0xff1a, 0xff1b,
+	0xff1f, 0xff1f,
+	0xff61, 0xff61,
+	0xff64, 0xff64,
+	0x1039f, 0x1039f,
+	0x103d0, 0x103d0,
+	0x10857, 0x10857,
+	0x1091f, 0x1091f,
+	0x10b3a, 0x10b3f,
+	0x110be, 0x110c1,
+	0x12470, 0x12473,
+}; /* CR_Terminal_Punctuation */
+
+/* 'Other_Math': Binary Property */
+static const OnigCodePoint CR_Other_Math[] = {
+	99,
+	0x005e, 0x005e,
+	0x03d0, 0x03d2,
+	0x03d5, 0x03d5,
+	0x03f0, 0x03f1,
+	0x03f4, 0x03f5,
+	0x2016, 0x2016,
+	0x2032, 0x2034,
+	0x2040, 0x2040,
+	0x2061, 0x2064,
+	0x207d, 0x207e,
+	0x208d, 0x208e,
+	0x20d0, 0x20dc,
+	0x20e1, 0x20e1,
+	0x20e5, 0x20e6,
+	0x20eb, 0x20ef,
+	0x2102, 0x2102,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2119, 0x211d,
+	0x2124, 0x2124,
+	0x2128, 0x2129,
+	0x212c, 0x212d,
+	0x212f, 0x2131,
+	0x2133, 0x2138,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x2195, 0x2199,
+	0x219c, 0x219f,
+	0x21a1, 0x21a2,
+	0x21a4, 0x21a5,
+	0x21a7, 0x21a7,
+	0x21a9, 0x21ad,
+	0x21b0, 0x21b1,
+	0x21b6, 0x21b7,
+	0x21bc, 0x21cd,
+	0x21d0, 0x21d1,
+	0x21d3, 0x21d3,
+	0x21d5, 0x21db,
+	0x21dd, 0x21dd,
+	0x21e4, 0x21e5,
+	0x23b4, 0x23b5,
+	0x23b7, 0x23b7,
+	0x23d0, 0x23d0,
+	0x23e2, 0x23e2,
+	0x25a0, 0x25a1,
+	0x25ae, 0x25b6,
+	0x25bc, 0x25c0,
+	0x25c6, 0x25c7,
+	0x25ca, 0x25cb,
+	0x25cf, 0x25d3,
+	0x25e2, 0x25e2,
+	0x25e4, 0x25e4,
+	0x25e7, 0x25ec,
+	0x2605, 0x2606,
+	0x2640, 0x2640,
+	0x2642, 0x2642,
+	0x2660, 0x2663,
+	0x266d, 0x266e,
+	0x27c5, 0x27c6,
+	0x27e6, 0x27ef,
+	0x2983, 0x2998,
+	0x29d8, 0x29db,
+	0x29fc, 0x29fd,
+	0xfe61, 0xfe61,
+	0xfe63, 0xfe63,
+	0xfe68, 0xfe68,
+	0xff3c, 0xff3c,
+	0xff3e, 0xff3e,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x1d7ce, 0x1d7ff,
+}; /* CR_Other_Math */
+
+/* 'Hex_Digit': Binary Property */
+static const OnigCodePoint CR_Hex_Digit[] = {
+	6,
+	0x0030, 0x0039,
+	0x0041, 0x0046,
+	0x0061, 0x0066,
+	0xff10, 0xff19,
+	0xff21, 0xff26,
+	0xff41, 0xff46,
+}; /* CR_Hex_Digit */
+
+/* 'ASCII_Hex_Digit': Binary Property */
+static const OnigCodePoint CR_ASCII_Hex_Digit[] = {
+	3,
+	0x0030, 0x0039,
+	0x0041, 0x0046,
+	0x0061, 0x0066,
+}; /* CR_ASCII_Hex_Digit */
+
+/* 'Other_Alphabetic': Binary Property */
+static const OnigCodePoint CR_Other_Alphabetic[] = {
+	141,
+	0x0345, 0x0345,
+	0x05b0, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x0610, 0x061a,
+	0x064b, 0x0657,
+	0x0659, 0x065e,
+	0x0670, 0x0670,
+	0x06d6, 0x06dc,
+	0x06e1, 0x06e4,
+	0x06e7, 0x06e8,
+	0x06ed, 0x06ed,
+	0x0711, 0x0711,
+	0x0730, 0x073f,
+	0x07a6, 0x07b0,
+	0x0816, 0x0817,
+	0x081b, 0x0823,
+	0x0825, 0x0827,
+	0x0829, 0x082c,
+	0x0900, 0x0903,
+	0x093e, 0x094c,
+	0x094e, 0x094e,
+	0x0955, 0x0955,
+	0x0962, 0x0963,
+	0x0981, 0x0983,
+	0x09be, 0x09c4,
+	0x09c7, 0x09c8,
+	0x09cb, 0x09cc,
+	0x09d7, 0x09d7,
+	0x09e2, 0x09e3,
+	0x0a01, 0x0a03,
+	0x0a3e, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4c,
+	0x0a51, 0x0a51,
+	0x0a70, 0x0a71,
+	0x0a75, 0x0a75,
+	0x0a81, 0x0a83,
+	0x0abe, 0x0ac5,
+	0x0ac7, 0x0ac9,
+	0x0acb, 0x0acc,
+	0x0ae2, 0x0ae3,
+	0x0b01, 0x0b03,
+	0x0b3e, 0x0b44,
+	0x0b47, 0x0b48,
+	0x0b4b, 0x0b4c,
+	0x0b56, 0x0b57,
+	0x0b62, 0x0b63,
+	0x0b82, 0x0b82,
+	0x0bbe, 0x0bc2,
+	0x0bc6, 0x0bc8,
+	0x0bca, 0x0bcc,
+	0x0bd7, 0x0bd7,
+	0x0c01, 0x0c03,
+	0x0c3e, 0x0c44,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4c,
+	0x0c55, 0x0c56,
+	0x0c62, 0x0c63,
+	0x0c82, 0x0c83,
+	0x0cbe, 0x0cc4,
+	0x0cc6, 0x0cc8,
+	0x0cca, 0x0ccc,
+	0x0cd5, 0x0cd6,
+	0x0ce2, 0x0ce3,
+	0x0d02, 0x0d03,
+	0x0d3e, 0x0d44,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4c,
+	0x0d57, 0x0d57,
+	0x0d62, 0x0d63,
+	0x0d82, 0x0d83,
+	0x0dcf, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0dd8, 0x0ddf,
+	0x0df2, 0x0df3,
+	0x0e31, 0x0e31,
+	0x0e34, 0x0e3a,
+	0x0e4d, 0x0e4d,
+	0x0eb1, 0x0eb1,
+	0x0eb4, 0x0eb9,
+	0x0ebb, 0x0ebc,
+	0x0ecd, 0x0ecd,
+	0x0f71, 0x0f81,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x102b, 0x1036,
+	0x1038, 0x1038,
+	0x103b, 0x103e,
+	0x1056, 0x1059,
+	0x105e, 0x1060,
+	0x1062, 0x1062,
+	0x1067, 0x1068,
+	0x1071, 0x1074,
+	0x1082, 0x1086,
+	0x109c, 0x109d,
+	0x135f, 0x135f,
+	0x1712, 0x1713,
+	0x1732, 0x1733,
+	0x1752, 0x1753,
+	0x1772, 0x1773,
+	0x17b6, 0x17c8,
+	0x18a9, 0x18a9,
+	0x1920, 0x192b,
+	0x1930, 0x1938,
+	0x19b0, 0x19c0,
+	0x19c8, 0x19c9,
+	0x1a17, 0x1a1b,
+	0x1a55, 0x1a5e,
+	0x1a61, 0x1a74,
+	0x1b00, 0x1b04,
+	0x1b35, 0x1b43,
+	0x1b80, 0x1b82,
+	0x1ba1, 0x1ba9,
+	0x1c24, 0x1c35,
+	0x1cf2, 0x1cf2,
+	0x24b6, 0x24e9,
+	0x2de0, 0x2dff,
+	0xa823, 0xa827,
+	0xa880, 0xa881,
+	0xa8b4, 0xa8c3,
+	0xa926, 0xa92a,
+	0xa947, 0xa952,
+	0xa980, 0xa983,
+	0xa9b3, 0xa9bf,
+	0xaa29, 0xaa36,
+	0xaa43, 0xaa43,
+	0xaa4c, 0xaa4d,
+	0xaab0, 0xaab0,
+	0xaab2, 0xaab4,
+	0xaab7, 0xaab8,
+	0xaabe, 0xaabe,
+	0xabe3, 0xabea,
+	0xfb1e, 0xfb1e,
+	0x10a01, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a0f,
+	0x11082, 0x11082,
+	0x110b0, 0x110b8,
+}; /* CR_Other_Alphabetic */
+
+/* 'Ideographic': Binary Property */
+static const OnigCodePoint CR_Ideographic[] = {
+	11,
+	0x3006, 0x3007,
+	0x3021, 0x3029,
+	0x3038, 0x303a,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+}; /* CR_Ideographic */
+
+/* 'Diacritic': Binary Property */
+static const OnigCodePoint CR_Diacritic[] = {
+	117,
+	0x005e, 0x005e,
+	0x0060, 0x0060,
+	0x00a8, 0x00a8,
+	0x00af, 0x00af,
+	0x00b4, 0x00b4,
+	0x00b7, 0x00b8,
+	0x02b0, 0x034e,
+	0x0350, 0x0357,
+	0x035d, 0x0362,
+	0x0374, 0x0375,
+	0x037a, 0x037a,
+	0x0384, 0x0385,
+	0x0483, 0x0487,
+	0x0559, 0x0559,
+	0x0591, 0x05a1,
+	0x05a3, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c4,
+	0x064b, 0x0652,
+	0x0657, 0x0658,
+	0x06df, 0x06e0,
+	0x06e5, 0x06e6,
+	0x06ea, 0x06ec,
+	0x0730, 0x074a,
+	0x07a6, 0x07b0,
+	0x07eb, 0x07f5,
+	0x0818, 0x0819,
+	0x093c, 0x093c,
+	0x094d, 0x094d,
+	0x0951, 0x0954,
+	0x0971, 0x0971,
+	0x09bc, 0x09bc,
+	0x09cd, 0x09cd,
+	0x0a3c, 0x0a3c,
+	0x0a4d, 0x0a4d,
+	0x0abc, 0x0abc,
+	0x0acd, 0x0acd,
+	0x0b3c, 0x0b3c,
+	0x0b4d, 0x0b4d,
+	0x0bcd, 0x0bcd,
+	0x0c4d, 0x0c4d,
+	0x0cbc, 0x0cbc,
+	0x0ccd, 0x0ccd,
+	0x0d4d, 0x0d4d,
+	0x0dca, 0x0dca,
+	0x0e47, 0x0e4c,
+	0x0e4e, 0x0e4e,
+	0x0ec8, 0x0ecc,
+	0x0f18, 0x0f19,
+	0x0f35, 0x0f35,
+	0x0f37, 0x0f37,
+	0x0f39, 0x0f39,
+	0x0f3e, 0x0f3f,
+	0x0f82, 0x0f84,
+	0x0f86, 0x0f87,
+	0x0fc6, 0x0fc6,
+	0x1037, 0x1037,
+	0x1039, 0x103a,
+	0x1087, 0x108d,
+	0x108f, 0x108f,
+	0x109a, 0x109b,
+	0x17c9, 0x17d3,
+	0x17dd, 0x17dd,
+	0x1939, 0x193b,
+	0x1a75, 0x1a7c,
+	0x1a7f, 0x1a7f,
+	0x1b34, 0x1b34,
+	0x1b44, 0x1b44,
+	0x1b6b, 0x1b73,
+	0x1baa, 0x1baa,
+	0x1c36, 0x1c37,
+	0x1c78, 0x1c7d,
+	0x1cd0, 0x1ce8,
+	0x1ced, 0x1ced,
+	0x1d2c, 0x1d6a,
+	0x1dc4, 0x1dcf,
+	0x1dfd, 0x1dff,
+	0x1fbd, 0x1fbd,
+	0x1fbf, 0x1fc1,
+	0x1fcd, 0x1fcf,
+	0x1fdd, 0x1fdf,
+	0x1fed, 0x1fef,
+	0x1ffd, 0x1ffe,
+	0x2cef, 0x2cf1,
+	0x2e2f, 0x2e2f,
+	0x302a, 0x302f,
+	0x3099, 0x309c,
+	0x30fc, 0x30fc,
+	0xa66f, 0xa66f,
+	0xa67c, 0xa67d,
+	0xa67f, 0xa67f,
+	0xa6f0, 0xa6f1,
+	0xa717, 0xa721,
+	0xa788, 0xa788,
+	0xa8c4, 0xa8c4,
+	0xa8e0, 0xa8f1,
+	0xa92b, 0xa92e,
+	0xa953, 0xa953,
+	0xa9b3, 0xa9b3,
+	0xa9c0, 0xa9c0,
+	0xaa7b, 0xaa7b,
+	0xaabf, 0xaac2,
+	0xabec, 0xabed,
+	0xfb1e, 0xfb1e,
+	0xfe20, 0xfe26,
+	0xff3e, 0xff3e,
+	0xff40, 0xff40,
+	0xff70, 0xff70,
+	0xff9e, 0xff9f,
+	0xffe3, 0xffe3,
+	0x110b9, 0x110ba,
+	0x1d167, 0x1d169,
+	0x1d16d, 0x1d172,
+	0x1d17b, 0x1d182,
+	0x1d185, 0x1d18b,
+	0x1d1aa, 0x1d1ad,
+}; /* CR_Diacritic */
+
+/* 'Extender': Binary Property */
+static const OnigCodePoint CR_Extender[] = {
+	20,
+	0x00b7, 0x00b7,
+	0x02d0, 0x02d1,
+	0x0640, 0x0640,
+	0x07fa, 0x07fa,
+	0x0e46, 0x0e46,
+	0x0ec6, 0x0ec6,
+	0x1843, 0x1843,
+	0x1aa7, 0x1aa7,
+	0x1c36, 0x1c36,
+	0x1c7b, 0x1c7b,
+	0x3005, 0x3005,
+	0x3031, 0x3035,
+	0x309d, 0x309e,
+	0x30fc, 0x30fe,
+	0xa015, 0xa015,
+	0xa60c, 0xa60c,
+	0xa9cf, 0xa9cf,
+	0xaa70, 0xaa70,
+	0xaadd, 0xaadd,
+	0xff70, 0xff70,
+}; /* CR_Extender */
+
+/* 'Other_Lowercase': Binary Property */
+static const OnigCodePoint CR_Other_Lowercase[] = {
+	13,
+	0x02b0, 0x02b8,
+	0x02c0, 0x02c1,
+	0x02e0, 0x02e4,
+	0x0345, 0x0345,
+	0x037a, 0x037a,
+	0x1d2c, 0x1d61,
+	0x1d78, 0x1d78,
+	0x1d9b, 0x1dbf,
+	0x2090, 0x2094,
+	0x2170, 0x217f,
+	0x24d0, 0x24e9,
+	0x2c7d, 0x2c7d,
+	0xa770, 0xa770,
+}; /* CR_Other_Lowercase */
+
+/* 'Other_Uppercase': Binary Property */
+static const OnigCodePoint CR_Other_Uppercase[] = {
+	2,
+	0x2160, 0x216f,
+	0x24b6, 0x24cf,
+}; /* CR_Other_Uppercase */
+
+/* 'Noncharacter_Code_Point': Binary Property */
+static const OnigCodePoint CR_Noncharacter_Code_Point[] = {
+	18,
+	0xfdd0, 0xfdef,
+	0xfffe, 0xffff,
+	0x1fffe, 0x1ffff,
+	0x2fffe, 0x2ffff,
+	0x3fffe, 0x3ffff,
+	0x4fffe, 0x4ffff,
+	0x5fffe, 0x5ffff,
+	0x6fffe, 0x6ffff,
+	0x7fffe, 0x7ffff,
+	0x8fffe, 0x8ffff,
+	0x9fffe, 0x9ffff,
+	0xafffe, 0xaffff,
+	0xbfffe, 0xbffff,
+	0xcfffe, 0xcffff,
+	0xdfffe, 0xdffff,
+	0xefffe, 0xeffff,
+	0xffffe, 0xfffff,
+	0x10fffe, 0x10ffff,
+}; /* CR_Noncharacter_Code_Point */
+
+/* 'Other_Grapheme_Extend': Binary Property */
+static const OnigCodePoint CR_Other_Grapheme_Extend[] = {
+	16,
+	0x09be, 0x09be,
+	0x09d7, 0x09d7,
+	0x0b3e, 0x0b3e,
+	0x0b57, 0x0b57,
+	0x0bbe, 0x0bbe,
+	0x0bd7, 0x0bd7,
+	0x0cc2, 0x0cc2,
+	0x0cd5, 0x0cd6,
+	0x0d3e, 0x0d3e,
+	0x0d57, 0x0d57,
+	0x0dcf, 0x0dcf,
+	0x0ddf, 0x0ddf,
+	0x200c, 0x200d,
+	0xff9e, 0xff9f,
+	0x1d165, 0x1d165,
+	0x1d16e, 0x1d172,
+}; /* CR_Other_Grapheme_Extend */
+
+/* 'IDS_Binary_Operator': Binary Property */
+static const OnigCodePoint CR_IDS_Binary_Operator[] = {
+	2,
+	0x2ff0, 0x2ff1,
+	0x2ff4, 0x2ffb,
+}; /* CR_IDS_Binary_Operator */
+
+/* 'IDS_Trinary_Operator': Binary Property */
+static const OnigCodePoint CR_IDS_Trinary_Operator[] = {
+	1,
+	0x2ff2, 0x2ff3,
+}; /* CR_IDS_Trinary_Operator */
+
+/* 'Radical': Binary Property */
+static const OnigCodePoint CR_Radical[] = {
+	3,
+	0x2e80, 0x2e99,
+	0x2e9b, 0x2ef3,
+	0x2f00, 0x2fd5,
+}; /* CR_Radical */
+
+/* 'Unified_Ideograph': Binary Property */
+static const OnigCodePoint CR_Unified_Ideograph[] = {
+	11,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xfa0e, 0xfa0f,
+	0xfa11, 0xfa11,
+	0xfa13, 0xfa14,
+	0xfa1f, 0xfa1f,
+	0xfa21, 0xfa21,
+	0xfa23, 0xfa24,
+	0xfa27, 0xfa29,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+}; /* CR_Unified_Ideograph */
+
+/* 'Other_Default_Ignorable_Code_Point': Binary Property */
+static const OnigCodePoint CR_Other_Default_Ignorable_Code_Point[] = {
+	10,
+	0x034f, 0x034f,
+	0x115f, 0x1160,
+	0x2065, 0x2069,
+	0x3164, 0x3164,
+	0xffa0, 0xffa0,
+	0xfff0, 0xfff8,
+	0xe0000, 0xe0000,
+	0xe0002, 0xe001f,
+	0xe0080, 0xe00ff,
+	0xe01f0, 0xe0fff,
+}; /* CR_Other_Default_Ignorable_Code_Point */
+
+/* 'Deprecated': Binary Property */
+static const OnigCodePoint CR_Deprecated[] = {
+	8,
+	0x0149, 0x0149,
+	0x0f77, 0x0f77,
+	0x0f79, 0x0f79,
+	0x17a3, 0x17a4,
+	0x206a, 0x206f,
+	0x2329, 0x232a,
+	0xe0001, 0xe0001,
+	0xe0020, 0xe007f,
+}; /* CR_Deprecated */
+
+/* 'Soft_Dotted': Binary Property */
+static const OnigCodePoint CR_Soft_Dotted[] = {
+	31,
+	0x0069, 0x006a,
+	0x012f, 0x012f,
+	0x0249, 0x0249,
+	0x0268, 0x0268,
+	0x029d, 0x029d,
+	0x02b2, 0x02b2,
+	0x03f3, 0x03f3,
+	0x0456, 0x0456,
+	0x0458, 0x0458,
+	0x1d62, 0x1d62,
+	0x1d96, 0x1d96,
+	0x1da4, 0x1da4,
+	0x1da8, 0x1da8,
+	0x1e2d, 0x1e2d,
+	0x1ecb, 0x1ecb,
+	0x2071, 0x2071,
+	0x2148, 0x2149,
+	0x2c7c, 0x2c7c,
+	0x1d422, 0x1d423,
+	0x1d456, 0x1d457,
+	0x1d48a, 0x1d48b,
+	0x1d4be, 0x1d4bf,
+	0x1d4f2, 0x1d4f3,
+	0x1d526, 0x1d527,
+	0x1d55a, 0x1d55b,
+	0x1d58e, 0x1d58f,
+	0x1d5c2, 0x1d5c3,
+	0x1d5f6, 0x1d5f7,
+	0x1d62a, 0x1d62b,
+	0x1d65e, 0x1d65f,
+	0x1d692, 0x1d693,
+}; /* CR_Soft_Dotted */
+
+/* 'Logical_Order_Exception': Binary Property */
+static const OnigCodePoint CR_Logical_Order_Exception[] = {
+	5,
+	0x0e40, 0x0e44,
+	0x0ec0, 0x0ec4,
+	0xaab5, 0xaab6,
+	0xaab9, 0xaab9,
+	0xaabb, 0xaabc,
+}; /* CR_Logical_Order_Exception */
+
+/* 'Other_ID_Start': Binary Property */
+static const OnigCodePoint CR_Other_ID_Start[] = {
+	3,
+	0x2118, 0x2118,
+	0x212e, 0x212e,
+	0x309b, 0x309c,
+}; /* CR_Other_ID_Start */
+
+/* 'Other_ID_Continue': Binary Property */
+static const OnigCodePoint CR_Other_ID_Continue[] = {
+	3,
+	0x00b7, 0x00b7,
+	0x0387, 0x0387,
+	0x1369, 0x1371,
+}; /* CR_Other_ID_Continue */
+
+/* 'STerm': Binary Property */
+static const OnigCodePoint CR_STerm[] = {
+	43,
+	0x0021, 0x0021,
+	0x002e, 0x002e,
+	0x003f, 0x003f,
+	0x055c, 0x055c,
+	0x055e, 0x055e,
+	0x0589, 0x0589,
+	0x061f, 0x061f,
+	0x06d4, 0x06d4,
+	0x0700, 0x0702,
+	0x07f9, 0x07f9,
+	0x0964, 0x0965,
+	0x104a, 0x104b,
+	0x1362, 0x1362,
+	0x1367, 0x1368,
+	0x166e, 0x166e,
+	0x1803, 0x1803,
+	0x1809, 0x1809,
+	0x1944, 0x1945,
+	0x1b5a, 0x1b5b,
+	0x1b5e, 0x1b5f,
+	0x1c3b, 0x1c3c,
+	0x1c7e, 0x1c7f,
+	0x203c, 0x203d,
+	0x2047, 0x2049,
+	0x2e2e, 0x2e2e,
+	0x3002, 0x3002,
+	0xa4ff, 0xa4ff,
+	0xa60e, 0xa60f,
+	0xa6f3, 0xa6f3,
+	0xa6f7, 0xa6f7,
+	0xa876, 0xa877,
+	0xa8ce, 0xa8cf,
+	0xa92f, 0xa92f,
+	0xa9c8, 0xa9c9,
+	0xaa5d, 0xaa5f,
+	0xabeb, 0xabeb,
+	0xfe52, 0xfe52,
+	0xfe56, 0xfe57,
+	0xff01, 0xff01,
+	0xff0e, 0xff0e,
+	0xff1f, 0xff1f,
+	0xff61, 0xff61,
+	0x110be, 0x110c1,
+}; /* CR_STerm */
+
+/* 'Variation_Selector': Binary Property */
+static const OnigCodePoint CR_Variation_Selector[] = {
+	3,
+	0x180b, 0x180d,
+	0xfe00, 0xfe0f,
+	0xe0100, 0xe01ef,
+}; /* CR_Variation_Selector */
+
+/* 'Pattern_White_Space': Binary Property */
+static const OnigCodePoint CR_Pattern_White_Space[] = {
+	5,
+	0x0009, 0x000d,
+	0x0020, 0x0020,
+	0x0085, 0x0085,
+	0x200e, 0x200f,
+	0x2028, 0x2029,
+}; /* CR_Pattern_White_Space */
+
+/* 'Pattern_Syntax': Binary Property */
+static const OnigCodePoint CR_Pattern_Syntax[] = {
+	28,
+	0x0021, 0x002f,
+	0x003a, 0x0040,
+	0x005b, 0x005e,
+	0x0060, 0x0060,
+	0x007b, 0x007e,
+	0x00a1, 0x00a7,
+	0x00a9, 0x00a9,
+	0x00ab, 0x00ac,
+	0x00ae, 0x00ae,
+	0x00b0, 0x00b1,
+	0x00b6, 0x00b6,
+	0x00bb, 0x00bb,
+	0x00bf, 0x00bf,
+	0x00d7, 0x00d7,
+	0x00f7, 0x00f7,
+	0x2010, 0x2027,
+	0x2030, 0x203e,
+	0x2041, 0x2053,
+	0x2055, 0x205e,
+	0x2190, 0x245f,
+	0x2500, 0x2775,
+	0x2794, 0x2bff,
+	0x2e00, 0x2e7f,
+	0x3001, 0x3003,
+	0x3008, 0x3020,
+	0x3030, 0x3030,
+	0xfd3e, 0xfd3f,
+	0xfe45, 0xfe46,
+}; /* CR_Pattern_Syntax */
 #endif /* USE_UNICODE_PROPERTIES */
 
-
 static const OnigCodePoint* const CodeRanges[] = {
   CR_NEWLINE,
   CR_Alpha,
@@ -9857,6 +18043,25 @@
   CR_Zl,
   CR_Zp,
   CR_Zs,
+  CR_Math,
+  CR_Alphabetic,
+  CR_Lowercase,
+  CR_Uppercase,
+  CR_Cased,
+  CR_Case_Ignorable,
+  CR_Changes_When_Lowercased,
+  CR_Changes_When_Uppercased,
+  CR_Changes_When_Titlecased,
+  CR_Changes_When_Casefolded,
+  CR_Changes_When_Casemapped,
+  CR_ID_Start,
+  CR_ID_Continue,
+  CR_XID_Start,
+  CR_XID_Continue,
+  CR_Default_Ignorable_Code_Point,
+  CR_Grapheme_Extend,
+  CR_Grapheme_Base,
+  CR_Grapheme_Link,
   CR_Common,
   CR_Latin,
   CR_Greek,
@@ -9949,6 +18154,38 @@
   CR_Inscriptional_Pahlavi,
   CR_Old_Turkic,
   CR_Kaithi,
+  CR_White_Space,
+  CR_Bidi_Control,
+  CR_Join_Control,
+  CR_Dash,
+  CR_Hyphen,
+  CR_Quotation_Mark,
+  CR_Terminal_Punctuation,
+  CR_Other_Math,
+  CR_Hex_Digit,
+  CR_ASCII_Hex_Digit,
+  CR_Other_Alphabetic,
+  CR_Ideographic,
+  CR_Diacritic,
+  CR_Extender,
+  CR_Other_Lowercase,
+  CR_Other_Uppercase,
+  CR_Noncharacter_Code_Point,
+  CR_Other_Grapheme_Extend,
+  CR_IDS_Binary_Operator,
+  CR_IDS_Trinary_Operator,
+  CR_Radical,
+  CR_Unified_Ideograph,
+  CR_Other_Default_Ignorable_Code_Point,
+  CR_Deprecated,
+  CR_Soft_Dotted,
+  CR_Logical_Order_Exception,
+  CR_Other_ID_Start,
+  CR_Other_ID_Continue,
+  CR_STerm,
+  CR_Variation_Selector,
+  CR_Pattern_White_Space,
+  CR_Pattern_Syntax,
 #endif /* USE_UNICODE_PROPERTIES */
 };
 struct uniname2ctype_struct {
@@ -9959,153 +18196,374 @@
 %}
 struct uniname2ctype_struct;
 %%
-newline,                0
-alpha,                  1
-blank,                  2
-cntrl,                  3
-digit,                  4
-graph,                  5
-lower,                  6
-print,                  7
-punct,                  8
-space,                  9
-upper,                 10
-xdigit,                11
-word,                  12
-alnum,                 13
-ascii,                 14
+newline,                                   0
+alpha,                                     1
+blank,                                     2
+cntrl,                                     3
+digit,                                     4
+graph,                                     5
+lower,                                     6
+print,                                     7
+punct,                                     8
+space,                                     9
+upper,                                    10
+xdigit,                                   11
+word,                                     12
+alnum,                                    13
+ascii,                                    14
 #ifdef USE_UNICODE_PROPERTIES
-any,                   15
-assigned,              16
-c,                     17
-cc,                    18
-cf,                    19
-cn,                    20
-co,                    21
-cs,                    22
-l,                     23
-ll,                    24
-lm,                    25
-lo,                    26
-lt,                    27
-lu,                    28
-m,                     29
-mc,                    30
-me,                    31
-mn,                    32
-n,                     33
-nd,                    34
-nl,                    35
-no,                    36
-p,                     37
-pc,                    38
-pd,                    39
-pe,                    40
-pf,                    41
-pi,                    42
-po,                    43
-ps,                    44
-s,                     45
-sc,                    46
-sk,                    47
-sm,                    48
-so,                    49
-z,                     50
-zl,                    51
-zp,                    52
-zs,                    53
-common,                54
-latin,                 55
-greek,                 56
-cyrillic,              57
-armenian,              58
-hebrew,                59
-arabic,                60
-syriac,                61
-thaana,                62
-devanagari,            63
-bengali,               64
-gurmukhi,              65
-gujarati,              66
-oriya,                 67
-tamil,                 68
-telugu,                69
-kannada,               70
-malayalam,             71
-sinhala,               72
-thai,                  73
-lao,                   74
-tibetan,               75
-myanmar,               76
-georgian,              77
-hangul,                78
-ethiopic,              79
-cherokee,              80
-canadianaboriginal,    81
-ogham,                 82
-runic,                 83
-khmer,                 84
-mongolian,             85
-hiragana,              86
-katakana,              87
-bopomofo,              88
-han,                   89
-yi,                    90
-olditalic,             91
-gothic,                92
-deseret,               93
-inherited,             94
-tagalog,               95
-hanunoo,               96
-buhid,                 97
-tagbanwa,              98
-limbu,                 99
-taile,                100
-linearb,              101
-ugaritic,             102
-shavian,              103
-osmanya,              104
-cypriot,              105
-braille,              106
-buginese,             107
-coptic,               108
-newtailue,            109
-glagolitic,           110
-tifinagh,             111
-sylotinagri,          112
-oldpersian,           113
-kharoshthi,           114
-balinese,             115
-cuneiform,            116
-phoenician,           117
-phagspa,              118
-nko,                  119
-sundanese,            120
-lepcha,               121
-olchiki,              122
-vai,                  123
-saurashtra,           124
-kayahli,              125
-rejang,               126
-lycian,               127
-carian,               128
-lydian,               129
-cham,                 130
-taitham,              131
-taiviet,              132
-avestan,              133
-egyptianhieroglyphs,  134
-samaritan,            135
-lisu,                 136
-bamum,                137
-javanese,             138
-meeteimayek,          139
-imperialaramaic,      140
-oldsoutharabian,      141
-inscriptionalparthian, 142
-inscriptionalpahlavi, 143
-oldturkic,            144
-kaithi,               145
+any,                                      15
+assigned,                                 16
+c,                                        17
+cc,                                       18
+cf,                                       19
+cn,                                       20
+co,                                       21
+cs,                                       22
+l,                                        23
+ll,                                       24
+lm,                                       25
+lo,                                       26
+lt,                                       27
+lu,                                       28
+m,                                        29
+mc,                                       30
+me,                                       31
+mn,                                       32
+n,                                        33
+nd,                                       34
+nl,                                       35
+no,                                       36
+p,                                        37
+pc,                                       38
+pd,                                       39
+pe,                                       40
+pf,                                       41
+pi,                                       42
+po,                                       43
+ps,                                       44
+s,                                        45
+sc,                                       46
+sk,                                       47
+sm,                                       48
+so,                                       49
+z,                                        50
+zl,                                       51
+zp,                                       52
+zs,                                       53
+math,                                     54
+alphabetic,                               55
+lowercase,                                56
+uppercase,                                57
+cased,                                    58
+caseignorable,                            59
+changeswhenlowercased,                    60
+changeswhenuppercased,                    61
+changeswhentitlecased,                    62
+changeswhencasefolded,                    63
+changeswhencasemapped,                    64
+idstart,                                  65
+idcontinue,                               66
+xidstart,                                 67
+xidcontinue,                              68
+defaultignorablecodepoint,                69
+graphemeextend,                           70
+graphemebase,                             71
+graphemelink,                             72
+common,                                   73
+latin,                                    74
+greek,                                    75
+cyrillic,                                 76
+armenian,                                 77
+hebrew,                                   78
+arabic,                                   79
+syriac,                                   80
+thaana,                                   81
+devanagari,                               82
+bengali,                                  83
+gurmukhi,                                 84
+gujarati,                                 85
+oriya,                                    86
+tamil,                                    87
+telugu,                                   88
+kannada,                                  89
+malayalam,                                90
+sinhala,                                  91
+thai,                                     92
+lao,                                      93
+tibetan,                                  94
+myanmar,                                  95
+georgian,                                 96
+hangul,                                   97
+ethiopic,                                 98
+cherokee,                                 99
+canadianaboriginal,                      100
+ogham,                                   101
+runic,                                   102
+khmer,                                   103
+mongolian,                               104
+hiragana,                                105
+katakana,                                106
+bopomofo,                                107
+han,                                     108
+yi,                                      109
+olditalic,                               110
+gothic,                                  111
+deseret,                                 112
+inherited,                               113
+tagalog,                                 114
+hanunoo,                                 115
+buhid,                                   116
+tagbanwa,                                117
+limbu,                                   118
+taile,                                   119
+linearb,                                 120
+ugaritic,                                121
+shavian,                                 122
+osmanya,                                 123
+cypriot,                                 124
+braille,                                 125
+buginese,                                126
+coptic,                                  127
+newtailue,                               128
+glagolitic,                              129
+tifinagh,                                130
+sylotinagri,                             131
+oldpersian,                              132
+kharoshthi,                              133
+balinese,                                134
+cuneiform,                               135
+phoenician,                              136
+phagspa,                                 137
+nko,                                     138
+sundanese,                               139
+lepcha,                                  140
+olchiki,                                 141
+vai,                                     142
+saurashtra,                              143
+kayahli,                                 144
+rejang,                                  145
+lycian,                                  146
+carian,                                  147
+lydian,                                  148
+cham,                                    149
+taitham,                                 150
+taiviet,                                 151
+avestan,                                 152
+egyptianhieroglyphs,                     153
+samaritan,                               154
+lisu,                                    155
+bamum,                                   156
+javanese,                                157
+meeteimayek,                             158
+imperialaramaic,                         159
+oldsoutharabian,                         160
+inscriptionalparthian,                   161
+inscriptionalpahlavi,                    162
+oldturkic,                               163
+kaithi,                                  164
+whitespace,                              165
+bidicontrol,                             166
+joincontrol,                             167
+dash,                                    168
+hyphen,                                  169
+quotationmark,                           170
+terminalpunctuation,                     171
+othermath,                               172
+hexdigit,                                173
+asciihexdigit,                           174
+otheralphabetic,                         175
+ideographic,                             176
+diacritic,                               177
+extender,                                178
+otherlowercase,                          179
+otheruppercase,                          180
+noncharactercodepoint,                   181
+othergraphemeextend,                     182
+idsbinaryoperator,                       183
+idstrinaryoperator,                      184
+radical,                                 185
+unifiedideograph,                        186
+otherdefaultignorablecodepoint,          187
+deprecated,                              188
+softdotted,                              189
+logicalorderexception,                   190
+otheridstart,                            191
+otheridcontinue,                         192
+sterm,                                   193
+variationselector,                       194
+patternwhitespace,                       195
+patternsyntax,                           196
+ahex,                                    174
+bidic,                                   166
+ci,                                       59
+cwcf,                                     63
+cwcm,                                     64
+cwl,                                      60
+cwt,                                      62
+cwu,                                      61
+dep,                                     188
+di,                                       69
+dia,                                     177
+ext,                                     178
+grbase,                                   71
+grext,                                    70
+grlink,                                   72
+hex,                                     173
+idc,                                      66
+ideo,                                    176
+ids,                                      65
+idsb,                                    183
+idst,                                    184
+joinc,                                   167
+loe,                                     190
+nchar,                                   181
+oalpha,                                  175
+odi,                                     187
+ogrext,                                  182
+oidc,                                    192
+oids,                                    191
+olower,                                  179
+omath,                                   172
+oupper,                                  180
+patsyn,                                  196
+patws,                                   195
+qmark,                                   170
+sd,                                      189
+term,                                    171
+uideo,                                   186
+vs,                                      194
+wspace,                                  165
+xidc,                                     68
+xids,                                     67
+other,                                    17
+control,                                  18
+format,                                   19
+unassigned,                               20
+privateuse,                               21
+surrogate,                                22
+letter,                                   23
+lowercaseletter,                          24
+modifierletter,                           25
+otherletter,                              26
+titlecaseletter,                          27
+uppercaseletter,                          28
+mark,                                     29
+spacingmark,                              30
+enclosingmark,                            31
+nonspacingmark,                           32
+number,                                   33
+decimalnumber,                            34
+letternumber,                             35
+othernumber,                              36
+punctuation,                              37
+connectorpunctuation,                     38
+dashpunctuation,                          39
+closepunctuation,                         40
+finalpunctuation,                         41
+initialpunctuation,                       42
+otherpunctuation,                         43
+openpunctuation,                          44
+symbol,                                   45
+currencysymbol,                           46
+modifiersymbol,                           47
+mathsymbol,                               48
+othersymbol,                              49
+separator,                                50
+lineseparator,                            51
+paragraphseparator,                       52
+spaceseparator,                           53
+arab,                                     79
+armi,                                    159
+armn,                                     77
+avst,                                    152
+bali,                                    134
+bamu,                                    156
+beng,                                     83
+bopo,                                    107
+brai,                                    125
+bugi,                                    126
+buhd,                                    116
+cans,                                    100
+cari,                                    147
+cher,                                     99
+copt,                                    127
+qaac,                                    127
+cprt,                                    124
+cyrl,                                     76
+deva,                                     82
+dsrt,                                    112
+egyp,                                    153
+ethi,                                     98
+geor,                                     96
+glag,                                    129
+goth,                                    111
+grek,                                     75
+gujr,                                     85
+guru,                                     84
+hang,                                     97
+hani,                                    108
+hano,                                    115
+hebr,                                     78
+hira,                                    105
+ital,                                    110
+java,                                    157
+kali,                                    144
+kana,                                    106
+khar,                                    133
+khmr,                                    103
+knda,                                     89
+kthi,                                    164
+lana,                                    150
+laoo,                                     93
+latn,                                     74
+lepc,                                    140
+limb,                                    118
+linb,                                    120
+lyci,                                    146
+lydi,                                    148
+mlym,                                     90
+mong,                                    104
+mtei,                                    158
+mymr,                                     95
+nkoo,                                    138
+ogam,                                    101
+olck,                                    141
+orkh,                                    163
+orya,                                     86
+osma,                                    123
+phag,                                    137
+phli,                                    162
+phnx,                                    136
+prti,                                    161
+rjng,                                    145
+runr,                                    102
+samr,                                    154
+sarb,                                    160
+saur,                                    143
+shaw,                                    122
+sinh,                                     91
+sund,                                    139
+sylo,                                    131
+syrc,                                     80
+tagb,                                    117
+tale,                                    119
+talu,                                    128
+taml,                                     87
+tavt,                                    151
+telu,                                     88
+tfng,                                    130
+tglg,                                    114
+thaa,                                     81
+tibt,                                     94
+ugar,                                    121
+vaii,                                    142
+xpeo,                                    132
+xsux,                                    135
+yiii,                                    109
+zinh,                                    113
+qaai,                                    113
+zyyy,                                     73
 #endif /* USE_UNICODE_PROPERTIES */
 %%
 static int
Index: enc/unicode/name2ctype.h
===================================================================
--- enc/unicode/name2ctype.h	(revision 25323)
+++ enc/unicode/name2ctype.h	(revision 25324)
@@ -3,7 +3,7 @@
 #ifndef USE_UNICODE_PROPERTIES
 /* Computed positions: -k'1,3' */
 #else /* USE_UNICODE_PROPERTIES */
-/* Computed positions: -k'1,3-4,$' */
+/* Computed positions: -k'1-3,6,12,16,$' */
 #endif /* USE_UNICODE_PROPERTIES */
 
 #if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
@@ -8719,6 +8719,7311 @@
 	0x3000, 0x3000,
 }; /* CR_Zs */
 
+/* 'Math': Derived Property */
+static const OnigCodePoint CR_Math[] = {
+	105,
+	0x002b, 0x002b,
+	0x003c, 0x003e,
+	0x005e, 0x005e,
+	0x007c, 0x007c,
+	0x007e, 0x007e,
+	0x00ac, 0x00ac,
+	0x00b1, 0x00b1,
+	0x00d7, 0x00d7,
+	0x00f7, 0x00f7,
+	0x03d0, 0x03d2,
+	0x03d5, 0x03d5,
+	0x03f0, 0x03f1,
+	0x03f4, 0x03f6,
+	0x0606, 0x0608,
+	0x2016, 0x2016,
+	0x2032, 0x2034,
+	0x2040, 0x2040,
+	0x2044, 0x2044,
+	0x2052, 0x2052,
+	0x2061, 0x2064,
+	0x207a, 0x207e,
+	0x208a, 0x208e,
+	0x20d0, 0x20dc,
+	0x20e1, 0x20e1,
+	0x20e5, 0x20e6,
+	0x20eb, 0x20ef,
+	0x2102, 0x2102,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2119, 0x211d,
+	0x2124, 0x2124,
+	0x2128, 0x2129,
+	0x212c, 0x212d,
+	0x212f, 0x2131,
+	0x2133, 0x2138,
+	0x213c, 0x2149,
+	0x214b, 0x214b,
+	0x2190, 0x21a7,
+	0x21a9, 0x21ae,
+	0x21b0, 0x21b1,
+	0x21b6, 0x21b7,
+	0x21bc, 0x21db,
+	0x21dd, 0x21dd,
+	0x21e4, 0x21e5,
+	0x21f4, 0x22ff,
+	0x2308, 0x230b,
+	0x2320, 0x2321,
+	0x237c, 0x237c,
+	0x239b, 0x23b5,
+	0x23b7, 0x23b7,
+	0x23d0, 0x23d0,
+	0x23dc, 0x23e2,
+	0x25a0, 0x25a1,
+	0x25ae, 0x25b7,
+	0x25bc, 0x25c1,
+	0x25c6, 0x25c7,
+	0x25ca, 0x25cb,
+	0x25cf, 0x25d3,
+	0x25e2, 0x25e2,
+	0x25e4, 0x25e4,
+	0x25e7, 0x25ec,
+	0x25f8, 0x25ff,
+	0x2605, 0x2606,
+	0x2640, 0x2640,
+	0x2642, 0x2642,
+	0x2660, 0x2663,
+	0x266d, 0x266f,
+	0x27c0, 0x27ca,
+	0x27cc, 0x27cc,
+	0x27d0, 0x27ff,
+	0x2900, 0x2aff,
+	0x2b30, 0x2b44,
+	0x2b47, 0x2b4c,
+	0xfb29, 0xfb29,
+	0xfe61, 0xfe66,
+	0xfe68, 0xfe68,
+	0xff0b, 0xff0b,
+	0xff1c, 0xff1e,
+	0xff3c, 0xff3c,
+	0xff3e, 0xff3e,
+	0xff5c, 0xff5c,
+	0xff5e, 0xff5e,
+	0xffe2, 0xffe2,
+	0xffe9, 0xffec,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d7cb,
+	0x1d7ce, 0x1d7ff,
+}; /* CR_Math */
+
+/* 'Alphabetic': Derived Property */
+static const OnigCodePoint CR_Alphabetic[] = {
+	474,
+	0x0041, 0x005a,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0345, 0x0345,
+	0x0370, 0x0374,
+	0x0376, 0x0377,
+	0x037a, 0x037d,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x0559,
+	0x0561, 0x0587,
+	0x05b0, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f2,
+	0x0610, 0x061a,
+	0x0621, 0x0657,
+	0x0659, 0x065e,
+	0x066e, 0x06d3,
+	0x06d5, 0x06dc,
+	0x06e1, 0x06e8,
+	0x06ed, 0x06ef,
+	0x06fa, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x073f,
+	0x074d, 0x07b1,
+	0x07ca, 0x07ea,
+	0x07f4, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0800, 0x0817,
+	0x081a, 0x082c,
+	0x0900, 0x0939,
+	0x093d, 0x094c,
+	0x094e, 0x094e,
+	0x0950, 0x0950,
+	0x0955, 0x0955,
+	0x0958, 0x0963,
+	0x0971, 0x0972,
+	0x0979, 0x097f,
+	0x0981, 0x0983,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bd, 0x09c4,
+	0x09c7, 0x09c8,
+	0x09cb, 0x09cc,
+	0x09ce, 0x09ce,
+	0x09d7, 0x09d7,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e3,
+	0x09f0, 0x09f1,
+	0x0a01, 0x0a03,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a3e, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4c,
+	0x0a51, 0x0a51,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a70, 0x0a75,
+	0x0a81, 0x0a83,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abd, 0x0ac5,
+	0x0ac7, 0x0ac9,
+	0x0acb, 0x0acc,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae3,
+	0x0b01, 0x0b03,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3d, 0x0b44,
+	0x0b47, 0x0b48,
+	0x0b4b, 0x0b4c,
+	0x0b56, 0x0b57,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b63,
+	0x0b71, 0x0b71,
+	0x0b82, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bbe, 0x0bc2,
+	0x0bc6, 0x0bc8,
+	0x0bca, 0x0bcc,
+	0x0bd0, 0x0bd0,
+	0x0bd7, 0x0bd7,
+	0x0c01, 0x0c03,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c44,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4c,
+	0x0c55, 0x0c56,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c63,
+	0x0c82, 0x0c83,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbd, 0x0cc4,
+	0x0cc6, 0x0cc8,
+	0x0cca, 0x0ccc,
+	0x0cd5, 0x0cd6,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce3,
+	0x0d02, 0x0d03,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d44,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4c,
+	0x0d57, 0x0d57,
+	0x0d60, 0x0d63,
+	0x0d7a, 0x0d7f,
+	0x0d82, 0x0d83,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0dcf, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0dd8, 0x0ddf,
+	0x0df2, 0x0df3,
+	0x0e01, 0x0e3a,
+	0x0e40, 0x0e46,
+	0x0e4d, 0x0e4d,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb9,
+	0x0ebb, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0ecd, 0x0ecd,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f00,
+	0x0f40, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f71, 0x0f81,
+	0x0f88, 0x0f8b,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x1000, 0x1036,
+	0x1038, 0x1038,
+	0x103b, 0x103f,
+	0x1050, 0x1062,
+	0x1065, 0x1068,
+	0x106e, 0x1086,
+	0x108e, 0x108e,
+	0x109c, 0x109d,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x135f, 0x135f,
+	0x1380, 0x138f,
+	0x13a0, 0x13f4,
+	0x1401, 0x166c,
+	0x166f, 0x167f,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	0x16ee, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1713,
+	0x1720, 0x1733,
+	0x1740, 0x1753,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1772, 0x1773,
+	0x1780, 0x17b3,
+	0x17b6, 0x17c8,
+	0x17d7, 0x17d7,
+	0x17dc, 0x17dc,
+	0x1820, 0x1877,
+	0x1880, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1920, 0x192b,
+	0x1930, 0x1938,
+	0x1950, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19b0, 0x19c9,
+	0x1a00, 0x1a1b,
+	0x1a20, 0x1a5e,
+	0x1a61, 0x1a74,
+	0x1aa7, 0x1aa7,
+	0x1b00, 0x1b33,
+	0x1b35, 0x1b43,
+	0x1b45, 0x1b4b,
+	0x1b80, 0x1ba9,
+	0x1bae, 0x1baf,
+	0x1c00, 0x1c35,
+	0x1c4d, 0x1c4f,
+	0x1c5a, 0x1c7d,
+	0x1ce9, 0x1cec,
+	0x1cee, 0x1cf2,
+	0x1d00, 0x1dbf,
+	0x1e00, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2119, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x212d,
+	0x212f, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x2188,
+	0x24b6, 0x24e9,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cee,
+	0x2d00, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x2de0, 0x2dff,
+	0x2e2f, 0x2e2f,
+	0x3005, 0x3007,
+	0x3021, 0x3029,
+	0x3031, 0x3035,
+	0x3038, 0x303c,
+	0x3041, 0x3096,
+	0x309d, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa4d0, 0xa4fd,
+	0xa500, 0xa60c,
+	0xa610, 0xa61f,
+	0xa62a, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66e,
+	0xa67f, 0xa697,
+	0xa6a0, 0xa6ef,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa801,
+	0xa803, 0xa805,
+	0xa807, 0xa80a,
+	0xa80c, 0xa827,
+	0xa840, 0xa873,
+	0xa880, 0xa8c3,
+	0xa8f2, 0xa8f7,
+	0xa8fb, 0xa8fb,
+	0xa90a, 0xa92a,
+	0xa930, 0xa952,
+	0xa960, 0xa97c,
+	0xa980, 0xa9bf,
+	0xa9cf, 0xa9cf,
+	0xaa00, 0xaa36,
+	0xaa40, 0xaa4d,
+	0xaa60, 0xaa76,
+	0xaa7a, 0xaa7a,
+	0xaa80, 0xaabe,
+	0xaac0, 0xaac0,
+	0xaac2, 0xaac2,
+	0xaadb, 0xaadd,
+	0xabc0, 0xabea,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb28,
+	0xfb2a, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfd3d,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdfb,
+	0xfe70, 0xfe74,
+	0xfe76, 0xfefc,
+	0xff21, 0xff3a,
+	0xff41, 0xff5a,
+	0xff66, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10140, 0x10174,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x103d1, 0x103d5,
+	0x10400, 0x1049d,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a60, 0x10a7c,
+	0x10b00, 0x10b35,
+	0x10b40, 0x10b55,
+	0x10b60, 0x10b72,
+	0x10c00, 0x10c48,
+	0x11082, 0x110b8,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x13000, 0x1342e,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+}; /* CR_Alphabetic */
+
+/* 'Lowercase': Derived Property */
+static const OnigCodePoint CR_Lowercase[] = {
+	602,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00ba, 0x00ba,
+	0x00df, 0x00f6,
+	0x00f8, 0x00ff,
+	0x0101, 0x0101,
+	0x0103, 0x0103,
+	0x0105, 0x0105,
+	0x0107, 0x0107,
+	0x0109, 0x0109,
+	0x010b, 0x010b,
+	0x010d, 0x010d,
+	0x010f, 0x010f,
+	0x0111, 0x0111,
+	0x0113, 0x0113,
+	0x0115, 0x0115,
+	0x0117, 0x0117,
+	0x0119, 0x0119,
+	0x011b, 0x011b,
+	0x011d, 0x011d,
+	0x011f, 0x011f,
+	0x0121, 0x0121,
+	0x0123, 0x0123,
+	0x0125, 0x0125,
+	0x0127, 0x0127,
+	0x0129, 0x0129,
+	0x012b, 0x012b,
+	0x012d, 0x012d,
+	0x012f, 0x012f,
+	0x0131, 0x0131,
+	0x0133, 0x0133,
+	0x0135, 0x0135,
+	0x0137, 0x0138,
+	0x013a, 0x013a,
+	0x013c, 0x013c,
+	0x013e, 0x013e,
+	0x0140, 0x0140,
+	0x0142, 0x0142,
+	0x0144, 0x0144,
+	0x0146, 0x0146,
+	0x0148, 0x0149,
+	0x014b, 0x014b,
+	0x014d, 0x014d,
+	0x014f, 0x014f,
+	0x0151, 0x0151,
+	0x0153, 0x0153,
+	0x0155, 0x0155,
+	0x0157, 0x0157,
+	0x0159, 0x0159,
+	0x015b, 0x015b,
+	0x015d, 0x015d,
+	0x015f, 0x015f,
+	0x0161, 0x0161,
+	0x0163, 0x0163,
+	0x0165, 0x0165,
+	0x0167, 0x0167,
+	0x0169, 0x0169,
+	0x016b, 0x016b,
+	0x016d, 0x016d,
+	0x016f, 0x016f,
+	0x0171, 0x0171,
+	0x0173, 0x0173,
+	0x0175, 0x0175,
+	0x0177, 0x0177,
+	0x017a, 0x017a,
+	0x017c, 0x017c,
+	0x017e, 0x0180,
+	0x0183, 0x0183,
+	0x0185, 0x0185,
+	0x0188, 0x0188,
+	0x018c, 0x018d,
+	0x0192, 0x0192,
+	0x0195, 0x0195,
+	0x0199, 0x019b,
+	0x019e, 0x019e,
+	0x01a1, 0x01a1,
+	0x01a3, 0x01a3,
+	0x01a5, 0x01a5,
+	0x01a8, 0x01a8,
+	0x01aa, 0x01ab,
+	0x01ad, 0x01ad,
+	0x01b0, 0x01b0,
+	0x01b4, 0x01b4,
+	0x01b6, 0x01b6,
+	0x01b9, 0x01ba,
+	0x01bd, 0x01bf,
+	0x01c6, 0x01c6,
+	0x01c9, 0x01c9,
+	0x01cc, 0x01cc,
+	0x01ce, 0x01ce,
+	0x01d0, 0x01d0,
+	0x01d2, 0x01d2,
+	0x01d4, 0x01d4,
+	0x01d6, 0x01d6,
+	0x01d8, 0x01d8,
+	0x01da, 0x01da,
+	0x01dc, 0x01dd,
+	0x01df, 0x01df,
+	0x01e1, 0x01e1,
+	0x01e3, 0x01e3,
+	0x01e5, 0x01e5,
+	0x01e7, 0x01e7,
+	0x01e9, 0x01e9,
+	0x01eb, 0x01eb,
+	0x01ed, 0x01ed,
+	0x01ef, 0x01f0,
+	0x01f3, 0x01f3,
+	0x01f5, 0x01f5,
+	0x01f9, 0x01f9,
+	0x01fb, 0x01fb,
+	0x01fd, 0x01fd,
+	0x01ff, 0x01ff,
+	0x0201, 0x0201,
+	0x0203, 0x0203,
+	0x0205, 0x0205,
+	0x0207, 0x0207,
+	0x0209, 0x0209,
+	0x020b, 0x020b,
+	0x020d, 0x020d,
+	0x020f, 0x020f,
+	0x0211, 0x0211,
+	0x0213, 0x0213,
+	0x0215, 0x0215,
+	0x0217, 0x0217,
+	0x0219, 0x0219,
+	0x021b, 0x021b,
+	0x021d, 0x021d,
+	0x021f, 0x021f,
+	0x0221, 0x0221,
+	0x0223, 0x0223,
+	0x0225, 0x0225,
+	0x0227, 0x0227,
+	0x0229, 0x0229,
+	0x022b, 0x022b,
+	0x022d, 0x022d,
+	0x022f, 0x022f,
+	0x0231, 0x0231,
+	0x0233, 0x0239,
+	0x023c, 0x023c,
+	0x023f, 0x0240,
+	0x0242, 0x0242,
+	0x0247, 0x0247,
+	0x0249, 0x0249,
+	0x024b, 0x024b,
+	0x024d, 0x024d,
+	0x024f, 0x0293,
+	0x0295, 0x02b8,
+	0x02c0, 0x02c1,
+	0x02e0, 0x02e4,
+	0x0345, 0x0345,
+	0x0371, 0x0371,
+	0x0373, 0x0373,
+	0x0377, 0x0377,
+	0x037a, 0x037d,
+	0x0390, 0x0390,
+	0x03ac, 0x03ce,
+	0x03d0, 0x03d1,
+	0x03d5, 0x03d7,
+	0x03d9, 0x03d9,
+	0x03db, 0x03db,
+	0x03dd, 0x03dd,
+	0x03df, 0x03df,
+	0x03e1, 0x03e1,
+	0x03e3, 0x03e3,
+	0x03e5, 0x03e5,
+	0x03e7, 0x03e7,
+	0x03e9, 0x03e9,
+	0x03eb, 0x03eb,
+	0x03ed, 0x03ed,
+	0x03ef, 0x03f3,
+	0x03f5, 0x03f5,
+	0x03f8, 0x03f8,
+	0x03fb, 0x03fc,
+	0x0430, 0x045f,
+	0x0461, 0x0461,
+	0x0463, 0x0463,
+	0x0465, 0x0465,
+	0x0467, 0x0467,
+	0x0469, 0x0469,
+	0x046b, 0x046b,
+	0x046d, 0x046d,
+	0x046f, 0x046f,
+	0x0471, 0x0471,
+	0x0473, 0x0473,
+	0x0475, 0x0475,
+	0x0477, 0x0477,
+	0x0479, 0x0479,
+	0x047b, 0x047b,
+	0x047d, 0x047d,
+	0x047f, 0x047f,
+	0x0481, 0x0481,
+	0x048b, 0x048b,
+	0x048d, 0x048d,
+	0x048f, 0x048f,
+	0x0491, 0x0491,
+	0x0493, 0x0493,
+	0x0495, 0x0495,
+	0x0497, 0x0497,
+	0x0499, 0x0499,
+	0x049b, 0x049b,
+	0x049d, 0x049d,
+	0x049f, 0x049f,
+	0x04a1, 0x04a1,
+	0x04a3, 0x04a3,
+	0x04a5, 0x04a5,
+	0x04a7, 0x04a7,
+	0x04a9, 0x04a9,
+	0x04ab, 0x04ab,
+	0x04ad, 0x04ad,
+	0x04af, 0x04af,
+	0x04b1, 0x04b1,
+	0x04b3, 0x04b3,
+	0x04b5, 0x04b5,
+	0x04b7, 0x04b7,
+	0x04b9, 0x04b9,
+	0x04bb, 0x04bb,
+	0x04bd, 0x04bd,
+	0x04bf, 0x04bf,
+	0x04c2, 0x04c2,
+	0x04c4, 0x04c4,
+	0x04c6, 0x04c6,
+	0x04c8, 0x04c8,
+	0x04ca, 0x04ca,
+	0x04cc, 0x04cc,
+	0x04ce, 0x04cf,
+	0x04d1, 0x04d1,
+	0x04d3, 0x04d3,
+	0x04d5, 0x04d5,
+	0x04d7, 0x04d7,
+	0x04d9, 0x04d9,
+	0x04db, 0x04db,
+	0x04dd, 0x04dd,
+	0x04df, 0x04df,
+	0x04e1, 0x04e1,
+	0x04e3, 0x04e3,
+	0x04e5, 0x04e5,
+	0x04e7, 0x04e7,
+	0x04e9, 0x04e9,
+	0x04eb, 0x04eb,
+	0x04ed, 0x04ed,
+	0x04ef, 0x04ef,
+	0x04f1, 0x04f1,
+	0x04f3, 0x04f3,
+	0x04f5, 0x04f5,
+	0x04f7, 0x04f7,
+	0x04f9, 0x04f9,
+	0x04fb, 0x04fb,
+	0x04fd, 0x04fd,
+	0x04ff, 0x04ff,
+	0x0501, 0x0501,
+	0x0503, 0x0503,
+	0x0505, 0x0505,
+	0x0507, 0x0507,
+	0x0509, 0x0509,
+	0x050b, 0x050b,
+	0x050d, 0x050d,
+	0x050f, 0x050f,
+	0x0511, 0x0511,
+	0x0513, 0x0513,
+	0x0515, 0x0515,
+	0x0517, 0x0517,
+	0x0519, 0x0519,
+	0x051b, 0x051b,
+	0x051d, 0x051d,
+	0x051f, 0x051f,
+	0x0521, 0x0521,
+	0x0523, 0x0523,
+	0x0525, 0x0525,
+	0x0561, 0x0587,
+	0x1d00, 0x1dbf,
+	0x1e01, 0x1e01,
+	0x1e03, 0x1e03,
+	0x1e05, 0x1e05,
+	0x1e07, 0x1e07,
+	0x1e09, 0x1e09,
+	0x1e0b, 0x1e0b,
+	0x1e0d, 0x1e0d,
+	0x1e0f, 0x1e0f,
+	0x1e11, 0x1e11,
+	0x1e13, 0x1e13,
+	0x1e15, 0x1e15,
+	0x1e17, 0x1e17,
+	0x1e19, 0x1e19,
+	0x1e1b, 0x1e1b,
+	0x1e1d, 0x1e1d,
+	0x1e1f, 0x1e1f,
+	0x1e21, 0x1e21,
+	0x1e23, 0x1e23,
+	0x1e25, 0x1e25,
+	0x1e27, 0x1e27,
+	0x1e29, 0x1e29,
+	0x1e2b, 0x1e2b,
+	0x1e2d, 0x1e2d,
+	0x1e2f, 0x1e2f,
+	0x1e31, 0x1e31,
+	0x1e33, 0x1e33,
+	0x1e35, 0x1e35,
+	0x1e37, 0x1e37,
+	0x1e39, 0x1e39,
+	0x1e3b, 0x1e3b,
+	0x1e3d, 0x1e3d,
+	0x1e3f, 0x1e3f,
+	0x1e41, 0x1e41,
+	0x1e43, 0x1e43,
+	0x1e45, 0x1e45,
+	0x1e47, 0x1e47,
+	0x1e49, 0x1e49,
+	0x1e4b, 0x1e4b,
+	0x1e4d, 0x1e4d,
+	0x1e4f, 0x1e4f,
+	0x1e51, 0x1e51,
+	0x1e53, 0x1e53,
+	0x1e55, 0x1e55,
+	0x1e57, 0x1e57,
+	0x1e59, 0x1e59,
+	0x1e5b, 0x1e5b,
+	0x1e5d, 0x1e5d,
+	0x1e5f, 0x1e5f,
+	0x1e61, 0x1e61,
+	0x1e63, 0x1e63,
+	0x1e65, 0x1e65,
+	0x1e67, 0x1e67,
+	0x1e69, 0x1e69,
+	0x1e6b, 0x1e6b,
+	0x1e6d, 0x1e6d,
+	0x1e6f, 0x1e6f,
+	0x1e71, 0x1e71,
+	0x1e73, 0x1e73,
+	0x1e75, 0x1e75,
+	0x1e77, 0x1e77,
+	0x1e79, 0x1e79,
+	0x1e7b, 0x1e7b,
+	0x1e7d, 0x1e7d,
+	0x1e7f, 0x1e7f,
+	0x1e81, 0x1e81,
+	0x1e83, 0x1e83,
+	0x1e85, 0x1e85,
+	0x1e87, 0x1e87,
+	0x1e89, 0x1e89,
+	0x1e8b, 0x1e8b,
+	0x1e8d, 0x1e8d,
+	0x1e8f, 0x1e8f,
+	0x1e91, 0x1e91,
+	0x1e93, 0x1e93,
+	0x1e95, 0x1e9d,
+	0x1e9f, 0x1e9f,
+	0x1ea1, 0x1ea1,
+	0x1ea3, 0x1ea3,
+	0x1ea5, 0x1ea5,
+	0x1ea7, 0x1ea7,
+	0x1ea9, 0x1ea9,
+	0x1eab, 0x1eab,
+	0x1ead, 0x1ead,
+	0x1eaf, 0x1eaf,
+	0x1eb1, 0x1eb1,
+	0x1eb3, 0x1eb3,
+	0x1eb5, 0x1eb5,
+	0x1eb7, 0x1eb7,
+	0x1eb9, 0x1eb9,
+	0x1ebb, 0x1ebb,
+	0x1ebd, 0x1ebd,
+	0x1ebf, 0x1ebf,
+	0x1ec1, 0x1ec1,
+	0x1ec3, 0x1ec3,
+	0x1ec5, 0x1ec5,
+	0x1ec7, 0x1ec7,
+	0x1ec9, 0x1ec9,
+	0x1ecb, 0x1ecb,
+	0x1ecd, 0x1ecd,
+	0x1ecf, 0x1ecf,
+	0x1ed1, 0x1ed1,
+	0x1ed3, 0x1ed3,
+	0x1ed5, 0x1ed5,
+	0x1ed7, 0x1ed7,
+	0x1ed9, 0x1ed9,
+	0x1edb, 0x1edb,
+	0x1edd, 0x1edd,
+	0x1edf, 0x1edf,
+	0x1ee1, 0x1ee1,
+	0x1ee3, 0x1ee3,
+	0x1ee5, 0x1ee5,
+	0x1ee7, 0x1ee7,
+	0x1ee9, 0x1ee9,
+	0x1eeb, 0x1eeb,
+	0x1eed, 0x1eed,
+	0x1eef, 0x1eef,
+	0x1ef1, 0x1ef1,
+	0x1ef3, 0x1ef3,
+	0x1ef5, 0x1ef5,
+	0x1ef7, 0x1ef7,
+	0x1ef9, 0x1ef9,
+	0x1efb, 0x1efb,
+	0x1efd, 0x1efd,
+	0x1eff, 0x1f07,
+	0x1f10, 0x1f15,
+	0x1f20, 0x1f27,
+	0x1f30, 0x1f37,
+	0x1f40, 0x1f45,
+	0x1f50, 0x1f57,
+	0x1f60, 0x1f67,
+	0x1f70, 0x1f7d,
+	0x1f80, 0x1f87,
+	0x1f90, 0x1f97,
+	0x1fa0, 0x1fa7,
+	0x1fb0, 0x1fb4,
+	0x1fb6, 0x1fb7,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fc7,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fd7,
+	0x1fe0, 0x1fe7,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ff7,
+	0x2090, 0x2094,
+	0x210a, 0x210a,
+	0x210e, 0x210f,
+	0x2113, 0x2113,
+	0x212f, 0x212f,
+	0x2134, 0x2134,
+	0x2139, 0x2139,
+	0x213c, 0x213d,
+	0x2146, 0x2149,
+	0x214e, 0x214e,
+	0x2170, 0x217f,
+	0x2184, 0x2184,
+	0x24d0, 0x24e9,
+	0x2c30, 0x2c5e,
+	0x2c61, 0x2c61,
+	0x2c65, 0x2c66,
+	0x2c68, 0x2c68,
+	0x2c6a, 0x2c6a,
+	0x2c6c, 0x2c6c,
+	0x2c71, 0x2c71,
+	0x2c73, 0x2c74,
+	0x2c76, 0x2c7d,
+	0x2c81, 0x2c81,
+	0x2c83, 0x2c83,
+	0x2c85, 0x2c85,
+	0x2c87, 0x2c87,
+	0x2c89, 0x2c89,
+	0x2c8b, 0x2c8b,
+	0x2c8d, 0x2c8d,
+	0x2c8f, 0x2c8f,
+	0x2c91, 0x2c91,
+	0x2c93, 0x2c93,
+	0x2c95, 0x2c95,
+	0x2c97, 0x2c97,
+	0x2c99, 0x2c99,
+	0x2c9b, 0x2c9b,
+	0x2c9d, 0x2c9d,
+	0x2c9f, 0x2c9f,
+	0x2ca1, 0x2ca1,
+	0x2ca3, 0x2ca3,
+	0x2ca5, 0x2ca5,
+	0x2ca7, 0x2ca7,
+	0x2ca9, 0x2ca9,
+	0x2cab, 0x2cab,
+	0x2cad, 0x2cad,
+	0x2caf, 0x2caf,
+	0x2cb1, 0x2cb1,
+	0x2cb3, 0x2cb3,
+	0x2cb5, 0x2cb5,
+	0x2cb7, 0x2cb7,
+	0x2cb9, 0x2cb9,
+	0x2cbb, 0x2cbb,
+	0x2cbd, 0x2cbd,
+	0x2cbf, 0x2cbf,
+	0x2cc1, 0x2cc1,
+	0x2cc3, 0x2cc3,
+	0x2cc5, 0x2cc5,
+	0x2cc7, 0x2cc7,
+	0x2cc9, 0x2cc9,
+	0x2ccb, 0x2ccb,
+	0x2ccd, 0x2ccd,
+	0x2ccf, 0x2ccf,
+	0x2cd1, 0x2cd1,
+	0x2cd3, 0x2cd3,
+	0x2cd5, 0x2cd5,
+	0x2cd7, 0x2cd7,
+	0x2cd9, 0x2cd9,
+	0x2cdb, 0x2cdb,
+	0x2cdd, 0x2cdd,
+	0x2cdf, 0x2cdf,
+	0x2ce1, 0x2ce1,
+	0x2ce3, 0x2ce4,
+	0x2cec, 0x2cec,
+	0x2cee, 0x2cee,
+	0x2d00, 0x2d25,
+	0xa641, 0xa641,
+	0xa643, 0xa643,
+	0xa645, 0xa645,
+	0xa647, 0xa647,
+	0xa649, 0xa649,
+	0xa64b, 0xa64b,
+	0xa64d, 0xa64d,
+	0xa64f, 0xa64f,
+	0xa651, 0xa651,
+	0xa653, 0xa653,
+	0xa655, 0xa655,
+	0xa657, 0xa657,
+	0xa659, 0xa659,
+	0xa65b, 0xa65b,
+	0xa65d, 0xa65d,
+	0xa65f, 0xa65f,
+	0xa663, 0xa663,
+	0xa665, 0xa665,
+	0xa667, 0xa667,
+	0xa669, 0xa669,
+	0xa66b, 0xa66b,
+	0xa66d, 0xa66d,
+	0xa681, 0xa681,
+	0xa683, 0xa683,
+	0xa685, 0xa685,
+	0xa687, 0xa687,
+	0xa689, 0xa689,
+	0xa68b, 0xa68b,
+	0xa68d, 0xa68d,
+	0xa68f, 0xa68f,
+	0xa691, 0xa691,
+	0xa693, 0xa693,
+	0xa695, 0xa695,
+	0xa697, 0xa697,
+	0xa723, 0xa723,
+	0xa725, 0xa725,
+	0xa727, 0xa727,
+	0xa729, 0xa729,
+	0xa72b, 0xa72b,
+	0xa72d, 0xa72d,
+	0xa72f, 0xa731,
+	0xa733, 0xa733,
+	0xa735, 0xa735,
+	0xa737, 0xa737,
+	0xa739, 0xa739,
+	0xa73b, 0xa73b,
+	0xa73d, 0xa73d,
+	0xa73f, 0xa73f,
+	0xa741, 0xa741,
+	0xa743, 0xa743,
+	0xa745, 0xa745,
+	0xa747, 0xa747,
+	0xa749, 0xa749,
+	0xa74b, 0xa74b,
+	0xa74d, 0xa74d,
+	0xa74f, 0xa74f,
+	0xa751, 0xa751,
+	0xa753, 0xa753,
+	0xa755, 0xa755,
+	0xa757, 0xa757,
+	0xa759, 0xa759,
+	0xa75b, 0xa75b,
+	0xa75d, 0xa75d,
+	0xa75f, 0xa75f,
+	0xa761, 0xa761,
+	0xa763, 0xa763,
+	0xa765, 0xa765,
+	0xa767, 0xa767,
+	0xa769, 0xa769,
+	0xa76b, 0xa76b,
+	0xa76d, 0xa76d,
+	0xa76f, 0xa778,
+	0xa77a, 0xa77a,
+	0xa77c, 0xa77c,
+	0xa77f, 0xa77f,
+	0xa781, 0xa781,
+	0xa783, 0xa783,
+	0xa785, 0xa785,
+	0xa787, 0xa787,
+	0xa78c, 0xa78c,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff41, 0xff5a,
+	0x10428, 0x1044f,
+	0x1d41a, 0x1d433,
+	0x1d44e, 0x1d454,
+	0x1d456, 0x1d467,
+	0x1d482, 0x1d49b,
+	0x1d4b6, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d4cf,
+	0x1d4ea, 0x1d503,
+	0x1d51e, 0x1d537,
+	0x1d552, 0x1d56b,
+	0x1d586, 0x1d59f,
+	0x1d5ba, 0x1d5d3,
+	0x1d5ee, 0x1d607,
+	0x1d622, 0x1d63b,
+	0x1d656, 0x1d66f,
+	0x1d68a, 0x1d6a5,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6e1,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d71b,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d755,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d78f,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7c9,
+	0x1d7cb, 0x1d7cb,
+}; /* CR_Lowercase */
+
+/* 'Uppercase': Derived Property */
+static const OnigCodePoint CR_Uppercase[] = {
+	596,
+	0x0041, 0x005a,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00de,
+	0x0100, 0x0100,
+	0x0102, 0x0102,
+	0x0104, 0x0104,
+	0x0106, 0x0106,
+	0x0108, 0x0108,
+	0x010a, 0x010a,
+	0x010c, 0x010c,
+	0x010e, 0x010e,
+	0x0110, 0x0110,
+	0x0112, 0x0112,
+	0x0114, 0x0114,
+	0x0116, 0x0116,
+	0x0118, 0x0118,
+	0x011a, 0x011a,
+	0x011c, 0x011c,
+	0x011e, 0x011e,
+	0x0120, 0x0120,
+	0x0122, 0x0122,
+	0x0124, 0x0124,
+	0x0126, 0x0126,
+	0x0128, 0x0128,
+	0x012a, 0x012a,
+	0x012c, 0x012c,
+	0x012e, 0x012e,
+	0x0130, 0x0130,
+	0x0132, 0x0132,
+	0x0134, 0x0134,
+	0x0136, 0x0136,
+	0x0139, 0x0139,
+	0x013b, 0x013b,
+	0x013d, 0x013d,
+	0x013f, 0x013f,
+	0x0141, 0x0141,
+	0x0143, 0x0143,
+	0x0145, 0x0145,
+	0x0147, 0x0147,
+	0x014a, 0x014a,
+	0x014c, 0x014c,
+	0x014e, 0x014e,
+	0x0150, 0x0150,
+	0x0152, 0x0152,
+	0x0154, 0x0154,
+	0x0156, 0x0156,
+	0x0158, 0x0158,
+	0x015a, 0x015a,
+	0x015c, 0x015c,
+	0x015e, 0x015e,
+	0x0160, 0x0160,
+	0x0162, 0x0162,
+	0x0164, 0x0164,
+	0x0166, 0x0166,
+	0x0168, 0x0168,
+	0x016a, 0x016a,
+	0x016c, 0x016c,
+	0x016e, 0x016e,
+	0x0170, 0x0170,
+	0x0172, 0x0172,
+	0x0174, 0x0174,
+	0x0176, 0x0176,
+	0x0178, 0x0179,
+	0x017b, 0x017b,
+	0x017d, 0x017d,
+	0x0181, 0x0182,
+	0x0184, 0x0184,
+	0x0186, 0x0187,
+	0x0189, 0x018b,
+	0x018e, 0x0191,
+	0x0193, 0x0194,
+	0x0196, 0x0198,
+	0x019c, 0x019d,
+	0x019f, 0x01a0,
+	0x01a2, 0x01a2,
+	0x01a4, 0x01a4,
+	0x01a6, 0x01a7,
+	0x01a9, 0x01a9,
+	0x01ac, 0x01ac,
+	0x01ae, 0x01af,
+	0x01b1, 0x01b3,
+	0x01b5, 0x01b5,
+	0x01b7, 0x01b8,
+	0x01bc, 0x01bc,
+	0x01c4, 0x01c4,
+	0x01c7, 0x01c7,
+	0x01ca, 0x01ca,
+	0x01cd, 0x01cd,
+	0x01cf, 0x01cf,
+	0x01d1, 0x01d1,
+	0x01d3, 0x01d3,
+	0x01d5, 0x01d5,
+	0x01d7, 0x01d7,
+	0x01d9, 0x01d9,
+	0x01db, 0x01db,
+	0x01de, 0x01de,
+	0x01e0, 0x01e0,
+	0x01e2, 0x01e2,
+	0x01e4, 0x01e4,
+	0x01e6, 0x01e6,
+	0x01e8, 0x01e8,
+	0x01ea, 0x01ea,
+	0x01ec, 0x01ec,
+	0x01ee, 0x01ee,
+	0x01f1, 0x01f1,
+	0x01f4, 0x01f4,
+	0x01f6, 0x01f8,
+	0x01fa, 0x01fa,
+	0x01fc, 0x01fc,
+	0x01fe, 0x01fe,
+	0x0200, 0x0200,
+	0x0202, 0x0202,
+	0x0204, 0x0204,
+	0x0206, 0x0206,
+	0x0208, 0x0208,
+	0x020a, 0x020a,
+	0x020c, 0x020c,
+	0x020e, 0x020e,
+	0x0210, 0x0210,
+	0x0212, 0x0212,
+	0x0214, 0x0214,
+	0x0216, 0x0216,
+	0x0218, 0x0218,
+	0x021a, 0x021a,
+	0x021c, 0x021c,
+	0x021e, 0x021e,
+	0x0220, 0x0220,
+	0x0222, 0x0222,
+	0x0224, 0x0224,
+	0x0226, 0x0226,
+	0x0228, 0x0228,
+	0x022a, 0x022a,
+	0x022c, 0x022c,
+	0x022e, 0x022e,
+	0x0230, 0x0230,
+	0x0232, 0x0232,
+	0x023a, 0x023b,
+	0x023d, 0x023e,
+	0x0241, 0x0241,
+	0x0243, 0x0246,
+	0x0248, 0x0248,
+	0x024a, 0x024a,
+	0x024c, 0x024c,
+	0x024e, 0x024e,
+	0x0370, 0x0370,
+	0x0372, 0x0372,
+	0x0376, 0x0376,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x038f,
+	0x0391, 0x03a1,
+	0x03a3, 0x03ab,
+	0x03cf, 0x03cf,
+	0x03d2, 0x03d4,
+	0x03d8, 0x03d8,
+	0x03da, 0x03da,
+	0x03dc, 0x03dc,
+	0x03de, 0x03de,
+	0x03e0, 0x03e0,
+	0x03e2, 0x03e2,
+	0x03e4, 0x03e4,
+	0x03e6, 0x03e6,
+	0x03e8, 0x03e8,
+	0x03ea, 0x03ea,
+	0x03ec, 0x03ec,
+	0x03ee, 0x03ee,
+	0x03f4, 0x03f4,
+	0x03f7, 0x03f7,
+	0x03f9, 0x03fa,
+	0x03fd, 0x042f,
+	0x0460, 0x0460,
+	0x0462, 0x0462,
+	0x0464, 0x0464,
+	0x0466, 0x0466,
+	0x0468, 0x0468,
+	0x046a, 0x046a,
+	0x046c, 0x046c,
+	0x046e, 0x046e,
+	0x0470, 0x0470,
+	0x0472, 0x0472,
+	0x0474, 0x0474,
+	0x0476, 0x0476,
+	0x0478, 0x0478,
+	0x047a, 0x047a,
+	0x047c, 0x047c,
+	0x047e, 0x047e,
+	0x0480, 0x0480,
+	0x048a, 0x048a,
+	0x048c, 0x048c,
+	0x048e, 0x048e,
+	0x0490, 0x0490,
+	0x0492, 0x0492,
+	0x0494, 0x0494,
+	0x0496, 0x0496,
+	0x0498, 0x0498,
+	0x049a, 0x049a,
+	0x049c, 0x049c,
+	0x049e, 0x049e,
+	0x04a0, 0x04a0,
+	0x04a2, 0x04a2,
+	0x04a4, 0x04a4,
+	0x04a6, 0x04a6,
+	0x04a8, 0x04a8,
+	0x04aa, 0x04aa,
+	0x04ac, 0x04ac,
+	0x04ae, 0x04ae,
+	0x04b0, 0x04b0,
+	0x04b2, 0x04b2,
+	0x04b4, 0x04b4,
+	0x04b6, 0x04b6,
+	0x04b8, 0x04b8,
+	0x04ba, 0x04ba,
+	0x04bc, 0x04bc,
+	0x04be, 0x04be,
+	0x04c0, 0x04c1,
+	0x04c3, 0x04c3,
+	0x04c5, 0x04c5,
+	0x04c7, 0x04c7,
+	0x04c9, 0x04c9,
+	0x04cb, 0x04cb,
+	0x04cd, 0x04cd,
+	0x04d0, 0x04d0,
+	0x04d2, 0x04d2,
+	0x04d4, 0x04d4,
+	0x04d6, 0x04d6,
+	0x04d8, 0x04d8,
+	0x04da, 0x04da,
+	0x04dc, 0x04dc,
+	0x04de, 0x04de,
+	0x04e0, 0x04e0,
+	0x04e2, 0x04e2,
+	0x04e4, 0x04e4,
+	0x04e6, 0x04e6,
+	0x04e8, 0x04e8,
+	0x04ea, 0x04ea,
+	0x04ec, 0x04ec,
+	0x04ee, 0x04ee,
+	0x04f0, 0x04f0,
+	0x04f2, 0x04f2,
+	0x04f4, 0x04f4,
+	0x04f6, 0x04f6,
+	0x04f8, 0x04f8,
+	0x04fa, 0x04fa,
+	0x04fc, 0x04fc,
+	0x04fe, 0x04fe,
+	0x0500, 0x0500,
+	0x0502, 0x0502,
+	0x0504, 0x0504,
+	0x0506, 0x0506,
+	0x0508, 0x0508,
+	0x050a, 0x050a,
+	0x050c, 0x050c,
+	0x050e, 0x050e,
+	0x0510, 0x0510,
+	0x0512, 0x0512,
+	0x0514, 0x0514,
+	0x0516, 0x0516,
+	0x0518, 0x0518,
+	0x051a, 0x051a,
+	0x051c, 0x051c,
+	0x051e, 0x051e,
+	0x0520, 0x0520,
+	0x0522, 0x0522,
+	0x0524, 0x0524,
+	0x0531, 0x0556,
+	0x10a0, 0x10c5,
+	0x1e00, 0x1e00,
+	0x1e02, 0x1e02,
+	0x1e04, 0x1e04,
+	0x1e06, 0x1e06,
+	0x1e08, 0x1e08,
+	0x1e0a, 0x1e0a,
+	0x1e0c, 0x1e0c,
+	0x1e0e, 0x1e0e,
+	0x1e10, 0x1e10,
+	0x1e12, 0x1e12,
+	0x1e14, 0x1e14,
+	0x1e16, 0x1e16,
+	0x1e18, 0x1e18,
+	0x1e1a, 0x1e1a,
+	0x1e1c, 0x1e1c,
+	0x1e1e, 0x1e1e,
+	0x1e20, 0x1e20,
+	0x1e22, 0x1e22,
+	0x1e24, 0x1e24,
+	0x1e26, 0x1e26,
+	0x1e28, 0x1e28,
+	0x1e2a, 0x1e2a,
+	0x1e2c, 0x1e2c,
+	0x1e2e, 0x1e2e,
+	0x1e30, 0x1e30,
+	0x1e32, 0x1e32,
+	0x1e34, 0x1e34,
+	0x1e36, 0x1e36,
+	0x1e38, 0x1e38,
+	0x1e3a, 0x1e3a,
+	0x1e3c, 0x1e3c,
+	0x1e3e, 0x1e3e,
+	0x1e40, 0x1e40,
+	0x1e42, 0x1e42,
+	0x1e44, 0x1e44,
+	0x1e46, 0x1e46,
+	0x1e48, 0x1e48,
+	0x1e4a, 0x1e4a,
+	0x1e4c, 0x1e4c,
+	0x1e4e, 0x1e4e,
+	0x1e50, 0x1e50,
+	0x1e52, 0x1e52,
+	0x1e54, 0x1e54,
+	0x1e56, 0x1e56,
+	0x1e58, 0x1e58,
+	0x1e5a, 0x1e5a,
+	0x1e5c, 0x1e5c,
+	0x1e5e, 0x1e5e,
+	0x1e60, 0x1e60,
+	0x1e62, 0x1e62,
+	0x1e64, 0x1e64,
+	0x1e66, 0x1e66,
+	0x1e68, 0x1e68,
+	0x1e6a, 0x1e6a,
+	0x1e6c, 0x1e6c,
+	0x1e6e, 0x1e6e,
+	0x1e70, 0x1e70,
+	0x1e72, 0x1e72,
+	0x1e74, 0x1e74,
+	0x1e76, 0x1e76,
+	0x1e78, 0x1e78,
+	0x1e7a, 0x1e7a,
+	0x1e7c, 0x1e7c,
+	0x1e7e, 0x1e7e,
+	0x1e80, 0x1e80,
+	0x1e82, 0x1e82,
+	0x1e84, 0x1e84,
+	0x1e86, 0x1e86,
+	0x1e88, 0x1e88,
+	0x1e8a, 0x1e8a,
+	0x1e8c, 0x1e8c,
+	0x1e8e, 0x1e8e,
+	0x1e90, 0x1e90,
+	0x1e92, 0x1e92,
+	0x1e94, 0x1e94,
+	0x1e9e, 0x1e9e,
+	0x1ea0, 0x1ea0,
+	0x1ea2, 0x1ea2,
+	0x1ea4, 0x1ea4,
+	0x1ea6, 0x1ea6,
+	0x1ea8, 0x1ea8,
+	0x1eaa, 0x1eaa,
+	0x1eac, 0x1eac,
+	0x1eae, 0x1eae,
+	0x1eb0, 0x1eb0,
+	0x1eb2, 0x1eb2,
+	0x1eb4, 0x1eb4,
+	0x1eb6, 0x1eb6,
+	0x1eb8, 0x1eb8,
+	0x1eba, 0x1eba,
+	0x1ebc, 0x1ebc,
+	0x1ebe, 0x1ebe,
+	0x1ec0, 0x1ec0,
+	0x1ec2, 0x1ec2,
+	0x1ec4, 0x1ec4,
+	0x1ec6, 0x1ec6,
+	0x1ec8, 0x1ec8,
+	0x1eca, 0x1eca,
+	0x1ecc, 0x1ecc,
+	0x1ece, 0x1ece,
+	0x1ed0, 0x1ed0,
+	0x1ed2, 0x1ed2,
+	0x1ed4, 0x1ed4,
+	0x1ed6, 0x1ed6,
+	0x1ed8, 0x1ed8,
+	0x1eda, 0x1eda,
+	0x1edc, 0x1edc,
+	0x1ede, 0x1ede,
+	0x1ee0, 0x1ee0,
+	0x1ee2, 0x1ee2,
+	0x1ee4, 0x1ee4,
+	0x1ee6, 0x1ee6,
+	0x1ee8, 0x1ee8,
+	0x1eea, 0x1eea,
+	0x1eec, 0x1eec,
+	0x1eee, 0x1eee,
+	0x1ef0, 0x1ef0,
+	0x1ef2, 0x1ef2,
+	0x1ef4, 0x1ef4,
+	0x1ef6, 0x1ef6,
+	0x1ef8, 0x1ef8,
+	0x1efa, 0x1efa,
+	0x1efc, 0x1efc,
+	0x1efe, 0x1efe,
+	0x1f08, 0x1f0f,
+	0x1f18, 0x1f1d,
+	0x1f28, 0x1f2f,
+	0x1f38, 0x1f3f,
+	0x1f48, 0x1f4d,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f5f,
+	0x1f68, 0x1f6f,
+	0x1fb8, 0x1fbb,
+	0x1fc8, 0x1fcb,
+	0x1fd8, 0x1fdb,
+	0x1fe8, 0x1fec,
+	0x1ff8, 0x1ffb,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210b, 0x210d,
+	0x2110, 0x2112,
+	0x2115, 0x2115,
+	0x2119, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x212d,
+	0x2130, 0x2133,
+	0x213e, 0x213f,
+	0x2145, 0x2145,
+	0x2160, 0x216f,
+	0x2183, 0x2183,
+	0x24b6, 0x24cf,
+	0x2c00, 0x2c2e,
+	0x2c60, 0x2c60,
+	0x2c62, 0x2c64,
+	0x2c67, 0x2c67,
+	0x2c69, 0x2c69,
+	0x2c6b, 0x2c6b,
+	0x2c6d, 0x2c70,
+	0x2c72, 0x2c72,
+	0x2c75, 0x2c75,
+	0x2c7e, 0x2c80,
+	0x2c82, 0x2c82,
+	0x2c84, 0x2c84,
+	0x2c86, 0x2c86,
+	0x2c88, 0x2c88,
+	0x2c8a, 0x2c8a,
+	0x2c8c, 0x2c8c,
+	0x2c8e, 0x2c8e,
+	0x2c90, 0x2c90,
+	0x2c92, 0x2c92,
+	0x2c94, 0x2c94,
+	0x2c96, 0x2c96,
+	0x2c98, 0x2c98,
+	0x2c9a, 0x2c9a,
+	0x2c9c, 0x2c9c,
+	0x2c9e, 0x2c9e,
+	0x2ca0, 0x2ca0,
+	0x2ca2, 0x2ca2,
+	0x2ca4, 0x2ca4,
+	0x2ca6, 0x2ca6,
+	0x2ca8, 0x2ca8,
+	0x2caa, 0x2caa,
+	0x2cac, 0x2cac,
+	0x2cae, 0x2cae,
+	0x2cb0, 0x2cb0,
+	0x2cb2, 0x2cb2,
+	0x2cb4, 0x2cb4,
+	0x2cb6, 0x2cb6,
+	0x2cb8, 0x2cb8,
+	0x2cba, 0x2cba,
+	0x2cbc, 0x2cbc,
+	0x2cbe, 0x2cbe,
+	0x2cc0, 0x2cc0,
+	0x2cc2, 0x2cc2,
+	0x2cc4, 0x2cc4,
+	0x2cc6, 0x2cc6,
+	0x2cc8, 0x2cc8,
+	0x2cca, 0x2cca,
+	0x2ccc, 0x2ccc,
+	0x2cce, 0x2cce,
+	0x2cd0, 0x2cd0,
+	0x2cd2, 0x2cd2,
+	0x2cd4, 0x2cd4,
+	0x2cd6, 0x2cd6,
+	0x2cd8, 0x2cd8,
+	0x2cda, 0x2cda,
+	0x2cdc, 0x2cdc,
+	0x2cde, 0x2cde,
+	0x2ce0, 0x2ce0,
+	0x2ce2, 0x2ce2,
+	0x2ceb, 0x2ceb,
+	0x2ced, 0x2ced,
+	0xa640, 0xa640,
+	0xa642, 0xa642,
+	0xa644, 0xa644,
+	0xa646, 0xa646,
+	0xa648, 0xa648,
+	0xa64a, 0xa64a,
+	0xa64c, 0xa64c,
+	0xa64e, 0xa64e,
+	0xa650, 0xa650,
+	0xa652, 0xa652,
+	0xa654, 0xa654,
+	0xa656, 0xa656,
+	0xa658, 0xa658,
+	0xa65a, 0xa65a,
+	0xa65c, 0xa65c,
+	0xa65e, 0xa65e,
+	0xa662, 0xa662,
+	0xa664, 0xa664,
+	0xa666, 0xa666,
+	0xa668, 0xa668,
+	0xa66a, 0xa66a,
+	0xa66c, 0xa66c,
+	0xa680, 0xa680,
+	0xa682, 0xa682,
+	0xa684, 0xa684,
+	0xa686, 0xa686,
+	0xa688, 0xa688,
+	0xa68a, 0xa68a,
+	0xa68c, 0xa68c,
+	0xa68e, 0xa68e,
+	0xa690, 0xa690,
+	0xa692, 0xa692,
+	0xa694, 0xa694,
+	0xa696, 0xa696,
+	0xa722, 0xa722,
+	0xa724, 0xa724,
+	0xa726, 0xa726,
+	0xa728, 0xa728,
+	0xa72a, 0xa72a,
+	0xa72c, 0xa72c,
+	0xa72e, 0xa72e,
+	0xa732, 0xa732,
+	0xa734, 0xa734,
+	0xa736, 0xa736,
+	0xa738, 0xa738,
+	0xa73a, 0xa73a,
+	0xa73c, 0xa73c,
+	0xa73e, 0xa73e,
+	0xa740, 0xa740,
+	0xa742, 0xa742,
+	0xa744, 0xa744,
+	0xa746, 0xa746,
+	0xa748, 0xa748,
+	0xa74a, 0xa74a,
+	0xa74c, 0xa74c,
+	0xa74e, 0xa74e,
+	0xa750, 0xa750,
+	0xa752, 0xa752,
+	0xa754, 0xa754,
+	0xa756, 0xa756,
+	0xa758, 0xa758,
+	0xa75a, 0xa75a,
+	0xa75c, 0xa75c,
+	0xa75e, 0xa75e,
+	0xa760, 0xa760,
+	0xa762, 0xa762,
+	0xa764, 0xa764,
+	0xa766, 0xa766,
+	0xa768, 0xa768,
+	0xa76a, 0xa76a,
+	0xa76c, 0xa76c,
+	0xa76e, 0xa76e,
+	0xa779, 0xa779,
+	0xa77b, 0xa77b,
+	0xa77d, 0xa77e,
+	0xa780, 0xa780,
+	0xa782, 0xa782,
+	0xa784, 0xa784,
+	0xa786, 0xa786,
+	0xa78b, 0xa78b,
+	0xff21, 0xff3a,
+	0x10400, 0x10427,
+	0x1d400, 0x1d419,
+	0x1d434, 0x1d44d,
+	0x1d468, 0x1d481,
+	0x1d49c, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b5,
+	0x1d4d0, 0x1d4e9,
+	0x1d504, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d538, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d56c, 0x1d585,
+	0x1d5a0, 0x1d5b9,
+	0x1d5d4, 0x1d5ed,
+	0x1d608, 0x1d621,
+	0x1d63c, 0x1d655,
+	0x1d670, 0x1d689,
+	0x1d6a8, 0x1d6c0,
+	0x1d6e2, 0x1d6fa,
+	0x1d71c, 0x1d734,
+	0x1d756, 0x1d76e,
+	0x1d790, 0x1d7a8,
+	0x1d7ca, 0x1d7ca,
+}; /* CR_Uppercase */
+
+/* 'Cased': Derived Property */
+static const OnigCodePoint CR_Cased[] = {
+	110,
+	0x0041, 0x005a,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x01ba,
+	0x01bc, 0x01bf,
+	0x01c4, 0x0293,
+	0x0295, 0x02b8,
+	0x02c0, 0x02c1,
+	0x02e0, 0x02e4,
+	0x0345, 0x0345,
+	0x0370, 0x0373,
+	0x0376, 0x0377,
+	0x037a, 0x037d,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0561, 0x0587,
+	0x10a0, 0x10c5,
+	0x1d00, 0x1dbf,
+	0x1e00, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x2090, 0x2094,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2119, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x212d,
+	0x212f, 0x2134,
+	0x2139, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x217f,
+	0x2183, 0x2184,
+	0x24b6, 0x24e9,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cee,
+	0x2d00, 0x2d25,
+	0xa640, 0xa65f,
+	0xa662, 0xa66d,
+	0xa680, 0xa697,
+	0xa722, 0xa787,
+	0xa78b, 0xa78c,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff21, 0xff3a,
+	0xff41, 0xff5a,
+	0x10400, 0x1044f,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+}; /* CR_Cased */
+
+/* 'Case_Ignorable': Derived Property */
+static const OnigCodePoint CR_Case_Ignorable[] = {
+	266,
+	0x0027, 0x0027,
+	0x002e, 0x002e,
+	0x003a, 0x003a,
+	0x005e, 0x005e,
+	0x0060, 0x0060,
+	0x00a8, 0x00a8,
+	0x00ad, 0x00ad,
+	0x00af, 0x00af,
+	0x00b4, 0x00b4,
+	0x00b7, 0x00b8,
+	0x02b0, 0x036f,
+	0x0374, 0x0375,
+	0x037a, 0x037a,
+	0x0384, 0x0385,
+	0x0387, 0x0387,
+	0x0483, 0x0489,
+	0x0559, 0x0559,
+	0x0591, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x05f4, 0x05f4,
+	0x0600, 0x0603,
+	0x0610, 0x061a,
+	0x0640, 0x0640,
+	0x064b, 0x065e,
+	0x0670, 0x0670,
+	0x06d6, 0x06e8,
+	0x06ea, 0x06ed,
+	0x070f, 0x070f,
+	0x0711, 0x0711,
+	0x0730, 0x074a,
+	0x07a6, 0x07b0,
+	0x07eb, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0816, 0x082d,
+	0x0900, 0x0902,
+	0x093c, 0x093c,
+	0x0941, 0x0948,
+	0x094d, 0x094d,
+	0x0951, 0x0955,
+	0x0962, 0x0963,
+	0x0971, 0x0971,
+	0x0981, 0x0981,
+	0x09bc, 0x09bc,
+	0x09c1, 0x09c4,
+	0x09cd, 0x09cd,
+	0x09e2, 0x09e3,
+	0x0a01, 0x0a02,
+	0x0a3c, 0x0a3c,
+	0x0a41, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4d,
+	0x0a51, 0x0a51,
+	0x0a70, 0x0a71,
+	0x0a75, 0x0a75,
+	0x0a81, 0x0a82,
+	0x0abc, 0x0abc,
+	0x0ac1, 0x0ac5,
+	0x0ac7, 0x0ac8,
+	0x0acd, 0x0acd,
+	0x0ae2, 0x0ae3,
+	0x0b01, 0x0b01,
+	0x0b3c, 0x0b3c,
+	0x0b3f, 0x0b3f,
+	0x0b41, 0x0b44,
+	0x0b4d, 0x0b4d,
+	0x0b56, 0x0b56,
+	0x0b62, 0x0b63,
+	0x0b82, 0x0b82,
+	0x0bc0, 0x0bc0,
+	0x0bcd, 0x0bcd,
+	0x0c3e, 0x0c40,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4d,
+	0x0c55, 0x0c56,
+	0x0c62, 0x0c63,
+	0x0cbc, 0x0cbc,
+	0x0cbf, 0x0cbf,
+	0x0cc6, 0x0cc6,
+	0x0ccc, 0x0ccd,
+	0x0ce2, 0x0ce3,
+	0x0d41, 0x0d44,
+	0x0d4d, 0x0d4d,
+	0x0d62, 0x0d63,
+	0x0dca, 0x0dca,
+	0x0dd2, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0e31, 0x0e31,
+	0x0e34, 0x0e3a,
+	0x0e46, 0x0e4e,
+	0x0eb1, 0x0eb1,
+	0x0eb4, 0x0eb9,
+	0x0ebb, 0x0ebc,
+	0x0ec6, 0x0ec6,
+	0x0ec8, 0x0ecd,
+	0x0f18, 0x0f19,
+	0x0f35, 0x0f35,
+	0x0f37, 0x0f37,
+	0x0f39, 0x0f39,
+	0x0f71, 0x0f7e,
+	0x0f80, 0x0f84,
+	0x0f86, 0x0f87,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x0fc6, 0x0fc6,
+	0x102d, 0x1030,
+	0x1032, 0x1037,
+	0x1039, 0x103a,
+	0x103d, 0x103e,
+	0x1058, 0x1059,
+	0x105e, 0x1060,
+	0x1071, 0x1074,
+	0x1082, 0x1082,
+	0x1085, 0x1086,
+	0x108d, 0x108d,
+	0x109d, 0x109d,
+	0x10fc, 0x10fc,
+	0x135f, 0x135f,
+	0x1712, 0x1714,
+	0x1732, 0x1734,
+	0x1752, 0x1753,
+	0x1772, 0x1773,
+	0x17b4, 0x17b5,
+	0x17b7, 0x17bd,
+	0x17c6, 0x17c6,
+	0x17c9, 0x17d3,
+	0x17d7, 0x17d7,
+	0x17dd, 0x17dd,
+	0x180b, 0x180d,
+	0x1843, 0x1843,
+	0x18a9, 0x18a9,
+	0x1920, 0x1922,
+	0x1927, 0x1928,
+	0x1932, 0x1932,
+	0x1939, 0x193b,
+	0x1a17, 0x1a18,
+	0x1a56, 0x1a56,
+	0x1a58, 0x1a5e,
+	0x1a60, 0x1a60,
+	0x1a62, 0x1a62,
+	0x1a65, 0x1a6c,
+	0x1a73, 0x1a7c,
+	0x1a7f, 0x1a7f,
+	0x1aa7, 0x1aa7,
+	0x1b00, 0x1b03,
+	0x1b34, 0x1b34,
+	0x1b36, 0x1b3a,
+	0x1b3c, 0x1b3c,
+	0x1b42, 0x1b42,
+	0x1b6b, 0x1b73,
+	0x1b80, 0x1b81,
+	0x1ba2, 0x1ba5,
+	0x1ba8, 0x1ba9,
+	0x1c2c, 0x1c33,
+	0x1c36, 0x1c37,
+	0x1c78, 0x1c7d,
+	0x1cd0, 0x1cd2,
+	0x1cd4, 0x1ce0,
+	0x1ce2, 0x1ce8,
+	0x1ced, 0x1ced,
+	0x1d2c, 0x1d61,
+	0x1d78, 0x1d78,
+	0x1d9b, 0x1de6,
+	0x1dfd, 0x1dff,
+	0x1fbd, 0x1fbd,
+	0x1fbf, 0x1fc1,
+	0x1fcd, 0x1fcf,
+	0x1fdd, 0x1fdf,
+	0x1fed, 0x1fef,
+	0x1ffd, 0x1ffe,
+	0x200b, 0x200f,
+	0x2018, 0x2019,
+	0x2024, 0x2024,
+	0x2027, 0x2027,
+	0x202a, 0x202e,
+	0x2060, 0x2064,
+	0x206a, 0x206f,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x20d0, 0x20f0,
+	0x2c7d, 0x2c7d,
+	0x2cef, 0x2cf1,
+	0x2d6f, 0x2d6f,
+	0x2de0, 0x2dff,
+	0x2e2f, 0x2e2f,
+	0x3005, 0x3005,
+	0x302a, 0x302f,
+	0x3031, 0x3035,
+	0x303b, 0x303b,
+	0x3099, 0x309e,
+	0x30fc, 0x30fe,
+	0xa015, 0xa015,
+	0xa4f8, 0xa4fd,
+	0xa60c, 0xa60c,
+	0xa66f, 0xa672,
+	0xa67c, 0xa67d,
+	0xa67f, 0xa67f,
+	0xa6f0, 0xa6f1,
+	0xa700, 0xa721,
+	0xa770, 0xa770,
+	0xa788, 0xa78a,
+	0xa802, 0xa802,
+	0xa806, 0xa806,
+	0xa80b, 0xa80b,
+	0xa825, 0xa826,
+	0xa8c4, 0xa8c4,
+	0xa8e0, 0xa8f1,
+	0xa926, 0xa92d,
+	0xa947, 0xa951,
+	0xa980, 0xa982,
+	0xa9b3, 0xa9b3,
+	0xa9b6, 0xa9b9,
+	0xa9bc, 0xa9bc,
+	0xa9cf, 0xa9cf,
+	0xaa29, 0xaa2e,
+	0xaa31, 0xaa32,
+	0xaa35, 0xaa36,
+	0xaa43, 0xaa43,
+	0xaa4c, 0xaa4c,
+	0xaa70, 0xaa70,
+	0xaab0, 0xaab0,
+	0xaab2, 0xaab4,
+	0xaab7, 0xaab8,
+	0xaabe, 0xaabf,
+	0xaac1, 0xaac1,
+	0xaadd, 0xaadd,
+	0xabe5, 0xabe5,
+	0xabe8, 0xabe8,
+	0xabed, 0xabed,
+	0xfb1e, 0xfb1e,
+	0xfe00, 0xfe0f,
+	0xfe13, 0xfe13,
+	0xfe20, 0xfe26,
+	0xfe52, 0xfe52,
+	0xfe55, 0xfe55,
+	0xfeff, 0xfeff,
+	0xff07, 0xff07,
+	0xff0e, 0xff0e,
+	0xff1a, 0xff1a,
+	0xff3e, 0xff3e,
+	0xff40, 0xff40,
+	0xff70, 0xff70,
+	0xff9e, 0xff9f,
+	0xffe3, 0xffe3,
+	0xfff9, 0xfffb,
+	0x101fd, 0x101fd,
+	0x10a01, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a0f,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a3f,
+	0x11080, 0x11081,
+	0x110b3, 0x110b6,
+	0x110b9, 0x110ba,
+	0x110bd, 0x110bd,
+	0x1d167, 0x1d169,
+	0x1d173, 0x1d182,
+	0x1d185, 0x1d18b,
+	0x1d1aa, 0x1d1ad,
+	0x1d242, 0x1d244,
+	0xe0001, 0xe0001,
+	0xe0020, 0xe007f,
+	0xe0100, 0xe01ef,
+}; /* CR_Case_Ignorable */
+
+/* 'Changes_When_Lowercased': Derived Property */
+static const OnigCodePoint CR_Changes_When_Lowercased[] = {
+	557,
+	0x0041, 0x005a,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00de,
+	0x0100, 0x0100,
+	0x0102, 0x0102,
+	0x0104, 0x0104,
+	0x0106, 0x0106,
+	0x0108, 0x0108,
+	0x010a, 0x010a,
+	0x010c, 0x010c,
+	0x010e, 0x010e,
+	0x0110, 0x0110,
+	0x0112, 0x0112,
+	0x0114, 0x0114,
+	0x0116, 0x0116,
+	0x0118, 0x0118,
+	0x011a, 0x011a,
+	0x011c, 0x011c,
+	0x011e, 0x011e,
+	0x0120, 0x0120,
+	0x0122, 0x0122,
+	0x0124, 0x0124,
+	0x0126, 0x0126,
+	0x0128, 0x0128,
+	0x012a, 0x012a,
+	0x012c, 0x012c,
+	0x012e, 0x012e,
+	0x0130, 0x0130,
+	0x0132, 0x0132,
+	0x0134, 0x0134,
+	0x0136, 0x0136,
+	0x0139, 0x0139,
+	0x013b, 0x013b,
+	0x013d, 0x013d,
+	0x013f, 0x013f,
+	0x0141, 0x0141,
+	0x0143, 0x0143,
+	0x0145, 0x0145,
+	0x0147, 0x0147,
+	0x014a, 0x014a,
+	0x014c, 0x014c,
+	0x014e, 0x014e,
+	0x0150, 0x0150,
+	0x0152, 0x0152,
+	0x0154, 0x0154,
+	0x0156, 0x0156,
+	0x0158, 0x0158,
+	0x015a, 0x015a,
+	0x015c, 0x015c,
+	0x015e, 0x015e,
+	0x0160, 0x0160,
+	0x0162, 0x0162,
+	0x0164, 0x0164,
+	0x0166, 0x0166,
+	0x0168, 0x0168,
+	0x016a, 0x016a,
+	0x016c, 0x016c,
+	0x016e, 0x016e,
+	0x0170, 0x0170,
+	0x0172, 0x0172,
+	0x0174, 0x0174,
+	0x0176, 0x0176,
+	0x0178, 0x0179,
+	0x017b, 0x017b,
+	0x017d, 0x017d,
+	0x0181, 0x0182,
+	0x0184, 0x0184,
+	0x0186, 0x0187,
+	0x0189, 0x018b,
+	0x018e, 0x0191,
+	0x0193, 0x0194,
+	0x0196, 0x0198,
+	0x019c, 0x019d,
+	0x019f, 0x01a0,
+	0x01a2, 0x01a2,
+	0x01a4, 0x01a4,
+	0x01a6, 0x01a7,
+	0x01a9, 0x01a9,
+	0x01ac, 0x01ac,
+	0x01ae, 0x01af,
+	0x01b1, 0x01b3,
+	0x01b5, 0x01b5,
+	0x01b7, 0x01b8,
+	0x01bc, 0x01bc,
+	0x01c4, 0x01c5,
+	0x01c7, 0x01c8,
+	0x01ca, 0x01cb,
+	0x01cd, 0x01cd,
+	0x01cf, 0x01cf,
+	0x01d1, 0x01d1,
+	0x01d3, 0x01d3,
+	0x01d5, 0x01d5,
+	0x01d7, 0x01d7,
+	0x01d9, 0x01d9,
+	0x01db, 0x01db,
+	0x01de, 0x01de,
+	0x01e0, 0x01e0,
+	0x01e2, 0x01e2,
+	0x01e4, 0x01e4,
+	0x01e6, 0x01e6,
+	0x01e8, 0x01e8,
+	0x01ea, 0x01ea,
+	0x01ec, 0x01ec,
+	0x01ee, 0x01ee,
+	0x01f1, 0x01f2,
+	0x01f4, 0x01f4,
+	0x01f6, 0x01f8,
+	0x01fa, 0x01fa,
+	0x01fc, 0x01fc,
+	0x01fe, 0x01fe,
+	0x0200, 0x0200,
+	0x0202, 0x0202,
+	0x0204, 0x0204,
+	0x0206, 0x0206,
+	0x0208, 0x0208,
+	0x020a, 0x020a,
+	0x020c, 0x020c,
+	0x020e, 0x020e,
+	0x0210, 0x0210,
+	0x0212, 0x0212,
+	0x0214, 0x0214,
+	0x0216, 0x0216,
+	0x0218, 0x0218,
+	0x021a, 0x021a,
+	0x021c, 0x021c,
+	0x021e, 0x021e,
+	0x0220, 0x0220,
+	0x0222, 0x0222,
+	0x0224, 0x0224,
+	0x0226, 0x0226,
+	0x0228, 0x0228,
+	0x022a, 0x022a,
+	0x022c, 0x022c,
+	0x022e, 0x022e,
+	0x0230, 0x0230,
+	0x0232, 0x0232,
+	0x023a, 0x023b,
+	0x023d, 0x023e,
+	0x0241, 0x0241,
+	0x0243, 0x0246,
+	0x0248, 0x0248,
+	0x024a, 0x024a,
+	0x024c, 0x024c,
+	0x024e, 0x024e,
+	0x0370, 0x0370,
+	0x0372, 0x0372,
+	0x0376, 0x0376,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x038f,
+	0x0391, 0x03a1,
+	0x03a3, 0x03ab,
+	0x03cf, 0x03cf,
+	0x03d8, 0x03d8,
+	0x03da, 0x03da,
+	0x03dc, 0x03dc,
+	0x03de, 0x03de,
+	0x03e0, 0x03e0,
+	0x03e2, 0x03e2,
+	0x03e4, 0x03e4,
+	0x03e6, 0x03e6,
+	0x03e8, 0x03e8,
+	0x03ea, 0x03ea,
+	0x03ec, 0x03ec,
+	0x03ee, 0x03ee,
+	0x03f4, 0x03f4,
+	0x03f7, 0x03f7,
+	0x03f9, 0x03fa,
+	0x03fd, 0x042f,
+	0x0460, 0x0460,
+	0x0462, 0x0462,
+	0x0464, 0x0464,
+	0x0466, 0x0466,
+	0x0468, 0x0468,
+	0x046a, 0x046a,
+	0x046c, 0x046c,
+	0x046e, 0x046e,
+	0x0470, 0x0470,
+	0x0472, 0x0472,
+	0x0474, 0x0474,
+	0x0476, 0x0476,
+	0x0478, 0x0478,
+	0x047a, 0x047a,
+	0x047c, 0x047c,
+	0x047e, 0x047e,
+	0x0480, 0x0480,
+	0x048a, 0x048a,
+	0x048c, 0x048c,
+	0x048e, 0x048e,
+	0x0490, 0x0490,
+	0x0492, 0x0492,
+	0x0494, 0x0494,
+	0x0496, 0x0496,
+	0x0498, 0x0498,
+	0x049a, 0x049a,
+	0x049c, 0x049c,
+	0x049e, 0x049e,
+	0x04a0, 0x04a0,
+	0x04a2, 0x04a2,
+	0x04a4, 0x04a4,
+	0x04a6, 0x04a6,
+	0x04a8, 0x04a8,
+	0x04aa, 0x04aa,
+	0x04ac, 0x04ac,
+	0x04ae, 0x04ae,
+	0x04b0, 0x04b0,
+	0x04b2, 0x04b2,
+	0x04b4, 0x04b4,
+	0x04b6, 0x04b6,
+	0x04b8, 0x04b8,
+	0x04ba, 0x04ba,
+	0x04bc, 0x04bc,
+	0x04be, 0x04be,
+	0x04c0, 0x04c1,
+	0x04c3, 0x04c3,
+	0x04c5, 0x04c5,
+	0x04c7, 0x04c7,
+	0x04c9, 0x04c9,
+	0x04cb, 0x04cb,
+	0x04cd, 0x04cd,
+	0x04d0, 0x04d0,
+	0x04d2, 0x04d2,
+	0x04d4, 0x04d4,
+	0x04d6, 0x04d6,
+	0x04d8, 0x04d8,
+	0x04da, 0x04da,
+	0x04dc, 0x04dc,
+	0x04de, 0x04de,
+	0x04e0, 0x04e0,
+	0x04e2, 0x04e2,
+	0x04e4, 0x04e4,
+	0x04e6, 0x04e6,
+	0x04e8, 0x04e8,
+	0x04ea, 0x04ea,
+	0x04ec, 0x04ec,
+	0x04ee, 0x04ee,
+	0x04f0, 0x04f0,
+	0x04f2, 0x04f2,
+	0x04f4, 0x04f4,
+	0x04f6, 0x04f6,
+	0x04f8, 0x04f8,
+	0x04fa, 0x04fa,
+	0x04fc, 0x04fc,
+	0x04fe, 0x04fe,
+	0x0500, 0x0500,
+	0x0502, 0x0502,
+	0x0504, 0x0504,
+	0x0506, 0x0506,
+	0x0508, 0x0508,
+	0x050a, 0x050a,
+	0x050c, 0x050c,
+	0x050e, 0x050e,
+	0x0510, 0x0510,
+	0x0512, 0x0512,
+	0x0514, 0x0514,
+	0x0516, 0x0516,
+	0x0518, 0x0518,
+	0x051a, 0x051a,
+	0x051c, 0x051c,
+	0x051e, 0x051e,
+	0x0520, 0x0520,
+	0x0522, 0x0522,
+	0x0524, 0x0524,
+	0x0531, 0x0556,
+	0x10a0, 0x10c5,
+	0x1e00, 0x1e00,
+	0x1e02, 0x1e02,
+	0x1e04, 0x1e04,
+	0x1e06, 0x1e06,
+	0x1e08, 0x1e08,
+	0x1e0a, 0x1e0a,
+	0x1e0c, 0x1e0c,
+	0x1e0e, 0x1e0e,
+	0x1e10, 0x1e10,
+	0x1e12, 0x1e12,
+	0x1e14, 0x1e14,
+	0x1e16, 0x1e16,
+	0x1e18, 0x1e18,
+	0x1e1a, 0x1e1a,
+	0x1e1c, 0x1e1c,
+	0x1e1e, 0x1e1e,
+	0x1e20, 0x1e20,
+	0x1e22, 0x1e22,
+	0x1e24, 0x1e24,
+	0x1e26, 0x1e26,
+	0x1e28, 0x1e28,
+	0x1e2a, 0x1e2a,
+	0x1e2c, 0x1e2c,
+	0x1e2e, 0x1e2e,
+	0x1e30, 0x1e30,
+	0x1e32, 0x1e32,
+	0x1e34, 0x1e34,
+	0x1e36, 0x1e36,
+	0x1e38, 0x1e38,
+	0x1e3a, 0x1e3a,
+	0x1e3c, 0x1e3c,
+	0x1e3e, 0x1e3e,
+	0x1e40, 0x1e40,
+	0x1e42, 0x1e42,
+	0x1e44, 0x1e44,
+	0x1e46, 0x1e46,
+	0x1e48, 0x1e48,
+	0x1e4a, 0x1e4a,
+	0x1e4c, 0x1e4c,
+	0x1e4e, 0x1e4e,
+	0x1e50, 0x1e50,
+	0x1e52, 0x1e52,
+	0x1e54, 0x1e54,
+	0x1e56, 0x1e56,
+	0x1e58, 0x1e58,
+	0x1e5a, 0x1e5a,
+	0x1e5c, 0x1e5c,
+	0x1e5e, 0x1e5e,
+	0x1e60, 0x1e60,
+	0x1e62, 0x1e62,
+	0x1e64, 0x1e64,
+	0x1e66, 0x1e66,
+	0x1e68, 0x1e68,
+	0x1e6a, 0x1e6a,
+	0x1e6c, 0x1e6c,
+	0x1e6e, 0x1e6e,
+	0x1e70, 0x1e70,
+	0x1e72, 0x1e72,
+	0x1e74, 0x1e74,
+	0x1e76, 0x1e76,
+	0x1e78, 0x1e78,
+	0x1e7a, 0x1e7a,
+	0x1e7c, 0x1e7c,
+	0x1e7e, 0x1e7e,
+	0x1e80, 0x1e80,
+	0x1e82, 0x1e82,
+	0x1e84, 0x1e84,
+	0x1e86, 0x1e86,
+	0x1e88, 0x1e88,
+	0x1e8a, 0x1e8a,
+	0x1e8c, 0x1e8c,
+	0x1e8e, 0x1e8e,
+	0x1e90, 0x1e90,
+	0x1e92, 0x1e92,
+	0x1e94, 0x1e94,
+	0x1e9e, 0x1e9e,
+	0x1ea0, 0x1ea0,
+	0x1ea2, 0x1ea2,
+	0x1ea4, 0x1ea4,
+	0x1ea6, 0x1ea6,
+	0x1ea8, 0x1ea8,
+	0x1eaa, 0x1eaa,
+	0x1eac, 0x1eac,
+	0x1eae, 0x1eae,
+	0x1eb0, 0x1eb0,
+	0x1eb2, 0x1eb2,
+	0x1eb4, 0x1eb4,
+	0x1eb6, 0x1eb6,
+	0x1eb8, 0x1eb8,
+	0x1eba, 0x1eba,
+	0x1ebc, 0x1ebc,
+	0x1ebe, 0x1ebe,
+	0x1ec0, 0x1ec0,
+	0x1ec2, 0x1ec2,
+	0x1ec4, 0x1ec4,
+	0x1ec6, 0x1ec6,
+	0x1ec8, 0x1ec8,
+	0x1eca, 0x1eca,
+	0x1ecc, 0x1ecc,
+	0x1ece, 0x1ece,
+	0x1ed0, 0x1ed0,
+	0x1ed2, 0x1ed2,
+	0x1ed4, 0x1ed4,
+	0x1ed6, 0x1ed6,
+	0x1ed8, 0x1ed8,
+	0x1eda, 0x1eda,
+	0x1edc, 0x1edc,
+	0x1ede, 0x1ede,
+	0x1ee0, 0x1ee0,
+	0x1ee2, 0x1ee2,
+	0x1ee4, 0x1ee4,
+	0x1ee6, 0x1ee6,
+	0x1ee8, 0x1ee8,
+	0x1eea, 0x1eea,
+	0x1eec, 0x1eec,
+	0x1eee, 0x1eee,
+	0x1ef0, 0x1ef0,
+	0x1ef2, 0x1ef2,
+	0x1ef4, 0x1ef4,
+	0x1ef6, 0x1ef6,
+	0x1ef8, 0x1ef8,
+	0x1efa, 0x1efa,
+	0x1efc, 0x1efc,
+	0x1efe, 0x1efe,
+	0x1f08, 0x1f0f,
+	0x1f18, 0x1f1d,
+	0x1f28, 0x1f2f,
+	0x1f38, 0x1f3f,
+	0x1f48, 0x1f4d,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f5f,
+	0x1f68, 0x1f6f,
+	0x1f88, 0x1f8f,
+	0x1f98, 0x1f9f,
+	0x1fa8, 0x1faf,
+	0x1fb8, 0x1fbc,
+	0x1fc8, 0x1fcc,
+	0x1fd8, 0x1fdb,
+	0x1fe8, 0x1fec,
+	0x1ff8, 0x1ffc,
+	0x2126, 0x2126,
+	0x212a, 0x212b,
+	0x2132, 0x2132,
+	0x2160, 0x216f,
+	0x2183, 0x2183,
+	0x24b6, 0x24cf,
+	0x2c00, 0x2c2e,
+	0x2c60, 0x2c60,
+	0x2c62, 0x2c64,
+	0x2c67, 0x2c67,
+	0x2c69, 0x2c69,
+	0x2c6b, 0x2c6b,
+	0x2c6d, 0x2c70,
+	0x2c72, 0x2c72,
+	0x2c75, 0x2c75,
+	0x2c7e, 0x2c80,
+	0x2c82, 0x2c82,
+	0x2c84, 0x2c84,
+	0x2c86, 0x2c86,
+	0x2c88, 0x2c88,
+	0x2c8a, 0x2c8a,
+	0x2c8c, 0x2c8c,
+	0x2c8e, 0x2c8e,
+	0x2c90, 0x2c90,
+	0x2c92, 0x2c92,
+	0x2c94, 0x2c94,
+	0x2c96, 0x2c96,
+	0x2c98, 0x2c98,
+	0x2c9a, 0x2c9a,
+	0x2c9c, 0x2c9c,
+	0x2c9e, 0x2c9e,
+	0x2ca0, 0x2ca0,
+	0x2ca2, 0x2ca2,
+	0x2ca4, 0x2ca4,
+	0x2ca6, 0x2ca6,
+	0x2ca8, 0x2ca8,
+	0x2caa, 0x2caa,
+	0x2cac, 0x2cac,
+	0x2cae, 0x2cae,
+	0x2cb0, 0x2cb0,
+	0x2cb2, 0x2cb2,
+	0x2cb4, 0x2cb4,
+	0x2cb6, 0x2cb6,
+	0x2cb8, 0x2cb8,
+	0x2cba, 0x2cba,
+	0x2cbc, 0x2cbc,
+	0x2cbe, 0x2cbe,
+	0x2cc0, 0x2cc0,
+	0x2cc2, 0x2cc2,
+	0x2cc4, 0x2cc4,
+	0x2cc6, 0x2cc6,
+	0x2cc8, 0x2cc8,
+	0x2cca, 0x2cca,
+	0x2ccc, 0x2ccc,
+	0x2cce, 0x2cce,
+	0x2cd0, 0x2cd0,
+	0x2cd2, 0x2cd2,
+	0x2cd4, 0x2cd4,
+	0x2cd6, 0x2cd6,
+	0x2cd8, 0x2cd8,
+	0x2cda, 0x2cda,
+	0x2cdc, 0x2cdc,
+	0x2cde, 0x2cde,
+	0x2ce0, 0x2ce0,
+	0x2ce2, 0x2ce2,
+	0x2ceb, 0x2ceb,
+	0x2ced, 0x2ced,
+	0xa640, 0xa640,
+	0xa642, 0xa642,
+	0xa644, 0xa644,
+	0xa646, 0xa646,
+	0xa648, 0xa648,
+	0xa64a, 0xa64a,
+	0xa64c, 0xa64c,
+	0xa64e, 0xa64e,
+	0xa650, 0xa650,
+	0xa652, 0xa652,
+	0xa654, 0xa654,
+	0xa656, 0xa656,
+	0xa658, 0xa658,
+	0xa65a, 0xa65a,
+	0xa65c, 0xa65c,
+	0xa65e, 0xa65e,
+	0xa662, 0xa662,
+	0xa664, 0xa664,
+	0xa666, 0xa666,
+	0xa668, 0xa668,
+	0xa66a, 0xa66a,
+	0xa66c, 0xa66c,
+	0xa680, 0xa680,
+	0xa682, 0xa682,
+	0xa684, 0xa684,
+	0xa686, 0xa686,
+	0xa688, 0xa688,
+	0xa68a, 0xa68a,
+	0xa68c, 0xa68c,
+	0xa68e, 0xa68e,
+	0xa690, 0xa690,
+	0xa692, 0xa692,
+	0xa694, 0xa694,
+	0xa696, 0xa696,
+	0xa722, 0xa722,
+	0xa724, 0xa724,
+	0xa726, 0xa726,
+	0xa728, 0xa728,
+	0xa72a, 0xa72a,
+	0xa72c, 0xa72c,
+	0xa72e, 0xa72e,
+	0xa732, 0xa732,
+	0xa734, 0xa734,
+	0xa736, 0xa736,
+	0xa738, 0xa738,
+	0xa73a, 0xa73a,
+	0xa73c, 0xa73c,
+	0xa73e, 0xa73e,
+	0xa740, 0xa740,
+	0xa742, 0xa742,
+	0xa744, 0xa744,
+	0xa746, 0xa746,
+	0xa748, 0xa748,
+	0xa74a, 0xa74a,
+	0xa74c, 0xa74c,
+	0xa74e, 0xa74e,
+	0xa750, 0xa750,
+	0xa752, 0xa752,
+	0xa754, 0xa754,
+	0xa756, 0xa756,
+	0xa758, 0xa758,
+	0xa75a, 0xa75a,
+	0xa75c, 0xa75c,
+	0xa75e, 0xa75e,
+	0xa760, 0xa760,
+	0xa762, 0xa762,
+	0xa764, 0xa764,
+	0xa766, 0xa766,
+	0xa768, 0xa768,
+	0xa76a, 0xa76a,
+	0xa76c, 0xa76c,
+	0xa76e, 0xa76e,
+	0xa779, 0xa779,
+	0xa77b, 0xa77b,
+	0xa77d, 0xa77e,
+	0xa780, 0xa780,
+	0xa782, 0xa782,
+	0xa784, 0xa784,
+	0xa786, 0xa786,
+	0xa78b, 0xa78b,
+	0xff21, 0xff3a,
+	0x10400, 0x10427,
+}; /* CR_Changes_When_Lowercased */
+
+/* 'Changes_When_Uppercased': Derived Property */
+static const OnigCodePoint CR_Changes_When_Uppercased[] = {
+	573,
+	0x0061, 0x007a,
+	0x00b5, 0x00b5,
+	0x00df, 0x00f6,
+	0x00f8, 0x00ff,
+	0x0101, 0x0101,
+	0x0103, 0x0103,
+	0x0105, 0x0105,
+	0x0107, 0x0107,
+	0x0109, 0x0109,
+	0x010b, 0x010b,
+	0x010d, 0x010d,
+	0x010f, 0x010f,
+	0x0111, 0x0111,
+	0x0113, 0x0113,
+	0x0115, 0x0115,
+	0x0117, 0x0117,
+	0x0119, 0x0119,
+	0x011b, 0x011b,
+	0x011d, 0x011d,
+	0x011f, 0x011f,
+	0x0121, 0x0121,
+	0x0123, 0x0123,
+	0x0125, 0x0125,
+	0x0127, 0x0127,
+	0x0129, 0x0129,
+	0x012b, 0x012b,
+	0x012d, 0x012d,
+	0x012f, 0x012f,
+	0x0131, 0x0131,
+	0x0133, 0x0133,
+	0x0135, 0x0135,
+	0x0137, 0x0137,
+	0x013a, 0x013a,
+	0x013c, 0x013c,
+	0x013e, 0x013e,
+	0x0140, 0x0140,
+	0x0142, 0x0142,
+	0x0144, 0x0144,
+	0x0146, 0x0146,
+	0x0148, 0x0149,
+	0x014b, 0x014b,
+	0x014d, 0x014d,
+	0x014f, 0x014f,
+	0x0151, 0x0151,
+	0x0153, 0x0153,
+	0x0155, 0x0155,
+	0x0157, 0x0157,
+	0x0159, 0x0159,
+	0x015b, 0x015b,
+	0x015d, 0x015d,
+	0x015f, 0x015f,
+	0x0161, 0x0161,
+	0x0163, 0x0163,
+	0x0165, 0x0165,
+	0x0167, 0x0167,
+	0x0169, 0x0169,
+	0x016b, 0x016b,
+	0x016d, 0x016d,
+	0x016f, 0x016f,
+	0x0171, 0x0171,
+	0x0173, 0x0173,
+	0x0175, 0x0175,
+	0x0177, 0x0177,
+	0x017a, 0x017a,
+	0x017c, 0x017c,
+	0x017e, 0x0180,
+	0x0183, 0x0183,
+	0x0185, 0x0185,
+	0x0188, 0x0188,
+	0x018c, 0x018c,
+	0x0192, 0x0192,
+	0x0195, 0x0195,
+	0x0199, 0x019a,
+	0x019e, 0x019e,
+	0x01a1, 0x01a1,
+	0x01a3, 0x01a3,
+	0x01a5, 0x01a5,
+	0x01a8, 0x01a8,
+	0x01ad, 0x01ad,
+	0x01b0, 0x01b0,
+	0x01b4, 0x01b4,
+	0x01b6, 0x01b6,
+	0x01b9, 0x01b9,
+	0x01bd, 0x01bd,
+	0x01bf, 0x01bf,
+	0x01c5, 0x01c6,
+	0x01c8, 0x01c9,
+	0x01cb, 0x01cc,
+	0x01ce, 0x01ce,
+	0x01d0, 0x01d0,
+	0x01d2, 0x01d2,
+	0x01d4, 0x01d4,
+	0x01d6, 0x01d6,
+	0x01d8, 0x01d8,
+	0x01da, 0x01da,
+	0x01dc, 0x01dd,
+	0x01df, 0x01df,
+	0x01e1, 0x01e1,
+	0x01e3, 0x01e3,
+	0x01e5, 0x01e5,
+	0x01e7, 0x01e7,
+	0x01e9, 0x01e9,
+	0x01eb, 0x01eb,
+	0x01ed, 0x01ed,
+	0x01ef, 0x01f0,
+	0x01f2, 0x01f3,
+	0x01f5, 0x01f5,
+	0x01f9, 0x01f9,
+	0x01fb, 0x01fb,
+	0x01fd, 0x01fd,
+	0x01ff, 0x01ff,
+	0x0201, 0x0201,
+	0x0203, 0x0203,
+	0x0205, 0x0205,
+	0x0207, 0x0207,
+	0x0209, 0x0209,
+	0x020b, 0x020b,
+	0x020d, 0x020d,
+	0x020f, 0x020f,
+	0x0211, 0x0211,
+	0x0213, 0x0213,
+	0x0215, 0x0215,
+	0x0217, 0x0217,
+	0x0219, 0x0219,
+	0x021b, 0x021b,
+	0x021d, 0x021d,
+	0x021f, 0x021f,
+	0x0223, 0x0223,
+	0x0225, 0x0225,
+	0x0227, 0x0227,
+	0x0229, 0x0229,
+	0x022b, 0x022b,
+	0x022d, 0x022d,
+	0x022f, 0x022f,
+	0x0231, 0x0231,
+	0x0233, 0x0233,
+	0x023c, 0x023c,
+	0x023f, 0x0240,
+	0x0242, 0x0242,
+	0x0247, 0x0247,
+	0x0249, 0x0249,
+	0x024b, 0x024b,
+	0x024d, 0x024d,
+	0x024f, 0x0254,
+	0x0256, 0x0257,
+	0x0259, 0x0259,
+	0x025b, 0x025b,
+	0x0260, 0x0260,
+	0x0263, 0x0263,
+	0x0268, 0x0269,
+	0x026b, 0x026b,
+	0x026f, 0x026f,
+	0x0271, 0x0272,
+	0x0275, 0x0275,
+	0x027d, 0x027d,
+	0x0280, 0x0280,
+	0x0283, 0x0283,
+	0x0288, 0x028c,
+	0x0292, 0x0292,
+	0x0345, 0x0345,
+	0x0371, 0x0371,
+	0x0373, 0x0373,
+	0x0377, 0x0377,
+	0x037b, 0x037d,
+	0x0390, 0x0390,
+	0x03ac, 0x03ce,
+	0x03d0, 0x03d1,
+	0x03d5, 0x03d7,
+	0x03d9, 0x03d9,
+	0x03db, 0x03db,
+	0x03dd, 0x03dd,
+	0x03df, 0x03df,
+	0x03e1, 0x03e1,
+	0x03e3, 0x03e3,
+	0x03e5, 0x03e5,
+	0x03e7, 0x03e7,
+	0x03e9, 0x03e9,
+	0x03eb, 0x03eb,
+	0x03ed, 0x03ed,
+	0x03ef, 0x03f2,
+	0x03f5, 0x03f5,
+	0x03f8, 0x03f8,
+	0x03fb, 0x03fb,
+	0x0430, 0x045f,
+	0x0461, 0x0461,
+	0x0463, 0x0463,
+	0x0465, 0x0465,
+	0x0467, 0x0467,
+	0x0469, 0x0469,
+	0x046b, 0x046b,
+	0x046d, 0x046d,
+	0x046f, 0x046f,
+	0x0471, 0x0471,
+	0x0473, 0x0473,
+	0x0475, 0x0475,
+	0x0477, 0x0477,
+	0x0479, 0x0479,
+	0x047b, 0x047b,
+	0x047d, 0x047d,
+	0x047f, 0x047f,
+	0x0481, 0x0481,
+	0x048b, 0x048b,
+	0x048d, 0x048d,
+	0x048f, 0x048f,
+	0x0491, 0x0491,
+	0x0493, 0x0493,
+	0x0495, 0x0495,
+	0x0497, 0x0497,
+	0x0499, 0x0499,
+	0x049b, 0x049b,
+	0x049d, 0x049d,
+	0x049f, 0x049f,
+	0x04a1, 0x04a1,
+	0x04a3, 0x04a3,
+	0x04a5, 0x04a5,
+	0x04a7, 0x04a7,
+	0x04a9, 0x04a9,
+	0x04ab, 0x04ab,
+	0x04ad, 0x04ad,
+	0x04af, 0x04af,
+	0x04b1, 0x04b1,
+	0x04b3, 0x04b3,
+	0x04b5, 0x04b5,
+	0x04b7, 0x04b7,
+	0x04b9, 0x04b9,
+	0x04bb, 0x04bb,
+	0x04bd, 0x04bd,
+	0x04bf, 0x04bf,
+	0x04c2, 0x04c2,
+	0x04c4, 0x04c4,
+	0x04c6, 0x04c6,
+	0x04c8, 0x04c8,
+	0x04ca, 0x04ca,
+	0x04cc, 0x04cc,
+	0x04ce, 0x04cf,
+	0x04d1, 0x04d1,
+	0x04d3, 0x04d3,
+	0x04d5, 0x04d5,
+	0x04d7, 0x04d7,
+	0x04d9, 0x04d9,
+	0x04db, 0x04db,
+	0x04dd, 0x04dd,
+	0x04df, 0x04df,
+	0x04e1, 0x04e1,
+	0x04e3, 0x04e3,
+	0x04e5, 0x04e5,
+	0x04e7, 0x04e7,
+	0x04e9, 0x04e9,
+	0x04eb, 0x04eb,
+	0x04ed, 0x04ed,
+	0x04ef, 0x04ef,
+	0x04f1, 0x04f1,
+	0x04f3, 0x04f3,
+	0x04f5, 0x04f5,
+	0x04f7, 0x04f7,
+	0x04f9, 0x04f9,
+	0x04fb, 0x04fb,
+	0x04fd, 0x04fd,
+	0x04ff, 0x04ff,
+	0x0501, 0x0501,
+	0x0503, 0x0503,
+	0x0505, 0x0505,
+	0x0507, 0x0507,
+	0x0509, 0x0509,
+	0x050b, 0x050b,
+	0x050d, 0x050d,
+	0x050f, 0x050f,
+	0x0511, 0x0511,
+	0x0513, 0x0513,
+	0x0515, 0x0515,
+	0x0517, 0x0517,
+	0x0519, 0x0519,
+	0x051b, 0x051b,
+	0x051d, 0x051d,
+	0x051f, 0x051f,
+	0x0521, 0x0521,
+	0x0523, 0x0523,
+	0x0525, 0x0525,
+	0x0561, 0x0587,
+	0x1d79, 0x1d79,
+	0x1d7d, 0x1d7d,
+	0x1e01, 0x1e01,
+	0x1e03, 0x1e03,
+	0x1e05, 0x1e05,
+	0x1e07, 0x1e07,
+	0x1e09, 0x1e09,
+	0x1e0b, 0x1e0b,
+	0x1e0d, 0x1e0d,
+	0x1e0f, 0x1e0f,
+	0x1e11, 0x1e11,
+	0x1e13, 0x1e13,
+	0x1e15, 0x1e15,
+	0x1e17, 0x1e17,
+	0x1e19, 0x1e19,
+	0x1e1b, 0x1e1b,
+	0x1e1d, 0x1e1d,
+	0x1e1f, 0x1e1f,
+	0x1e21, 0x1e21,
+	0x1e23, 0x1e23,
+	0x1e25, 0x1e25,
+	0x1e27, 0x1e27,
+	0x1e29, 0x1e29,
+	0x1e2b, 0x1e2b,
+	0x1e2d, 0x1e2d,
+	0x1e2f, 0x1e2f,
+	0x1e31, 0x1e31,
+	0x1e33, 0x1e33,
+	0x1e35, 0x1e35,
+	0x1e37, 0x1e37,
+	0x1e39, 0x1e39,
+	0x1e3b, 0x1e3b,
+	0x1e3d, 0x1e3d,
+	0x1e3f, 0x1e3f,
+	0x1e41, 0x1e41,
+	0x1e43, 0x1e43,
+	0x1e45, 0x1e45,
+	0x1e47, 0x1e47,
+	0x1e49, 0x1e49,
+	0x1e4b, 0x1e4b,
+	0x1e4d, 0x1e4d,
+	0x1e4f, 0x1e4f,
+	0x1e51, 0x1e51,
+	0x1e53, 0x1e53,
+	0x1e55, 0x1e55,
+	0x1e57, 0x1e57,
+	0x1e59, 0x1e59,
+	0x1e5b, 0x1e5b,
+	0x1e5d, 0x1e5d,
+	0x1e5f, 0x1e5f,
+	0x1e61, 0x1e61,
+	0x1e63, 0x1e63,
+	0x1e65, 0x1e65,
+	0x1e67, 0x1e67,
+	0x1e69, 0x1e69,
+	0x1e6b, 0x1e6b,
+	0x1e6d, 0x1e6d,
+	0x1e6f, 0x1e6f,
+	0x1e71, 0x1e71,
+	0x1e73, 0x1e73,
+	0x1e75, 0x1e75,
+	0x1e77, 0x1e77,
+	0x1e79, 0x1e79,
+	0x1e7b, 0x1e7b,
+	0x1e7d, 0x1e7d,
+	0x1e7f, 0x1e7f,
+	0x1e81, 0x1e81,
+	0x1e83, 0x1e83,
+	0x1e85, 0x1e85,
+	0x1e87, 0x1e87,
+	0x1e89, 0x1e89,
+	0x1e8b, 0x1e8b,
+	0x1e8d, 0x1e8d,
+	0x1e8f, 0x1e8f,
+	0x1e91, 0x1e91,
+	0x1e93, 0x1e93,
+	0x1e95, 0x1e9b,
+	0x1ea1, 0x1ea1,
+	0x1ea3, 0x1ea3,
+	0x1ea5, 0x1ea5,
+	0x1ea7, 0x1ea7,
+	0x1ea9, 0x1ea9,
+	0x1eab, 0x1eab,
+	0x1ead, 0x1ead,
+	0x1eaf, 0x1eaf,
+	0x1eb1, 0x1eb1,
+	0x1eb3, 0x1eb3,
+	0x1eb5, 0x1eb5,
+	0x1eb7, 0x1eb7,
+	0x1eb9, 0x1eb9,
+	0x1ebb, 0x1ebb,
+	0x1ebd, 0x1ebd,
+	0x1ebf, 0x1ebf,
+	0x1ec1, 0x1ec1,
+	0x1ec3, 0x1ec3,
+	0x1ec5, 0x1ec5,
+	0x1ec7, 0x1ec7,
+	0x1ec9, 0x1ec9,
+	0x1ecb, 0x1ecb,
+	0x1ecd, 0x1ecd,
+	0x1ecf, 0x1ecf,
+	0x1ed1, 0x1ed1,
+	0x1ed3, 0x1ed3,
+	0x1ed5, 0x1ed5,
+	0x1ed7, 0x1ed7,
+	0x1ed9, 0x1ed9,
+	0x1edb, 0x1edb,
+	0x1edd, 0x1edd,
+	0x1edf, 0x1edf,
+	0x1ee1, 0x1ee1,
+	0x1ee3, 0x1ee3,
+	0x1ee5, 0x1ee5,
+	0x1ee7, 0x1ee7,
+	0x1ee9, 0x1ee9,
+	0x1eeb, 0x1eeb,
+	0x1eed, 0x1eed,
+	0x1eef, 0x1eef,
+	0x1ef1, 0x1ef1,
+	0x1ef3, 0x1ef3,
+	0x1ef5, 0x1ef5,
+	0x1ef7, 0x1ef7,
+	0x1ef9, 0x1ef9,
+	0x1efb, 0x1efb,
+	0x1efd, 0x1efd,
+	0x1eff, 0x1f07,
+	0x1f10, 0x1f15,
+	0x1f20, 0x1f27,
+	0x1f30, 0x1f37,
+	0x1f40, 0x1f45,
+	0x1f50, 0x1f57,
+	0x1f60, 0x1f67,
+	0x1f70, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fb7,
+	0x1fbc, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fc7,
+	0x1fcc, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fd7,
+	0x1fe0, 0x1fe7,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ff7,
+	0x1ffc, 0x1ffc,
+	0x214e, 0x214e,
+	0x2170, 0x217f,
+	0x2184, 0x2184,
+	0x24d0, 0x24e9,
+	0x2c30, 0x2c5e,
+	0x2c61, 0x2c61,
+	0x2c65, 0x2c66,
+	0x2c68, 0x2c68,
+	0x2c6a, 0x2c6a,
+	0x2c6c, 0x2c6c,
+	0x2c73, 0x2c73,
+	0x2c76, 0x2c76,
+	0x2c81, 0x2c81,
+	0x2c83, 0x2c83,
+	0x2c85, 0x2c85,
+	0x2c87, 0x2c87,
+	0x2c89, 0x2c89,
+	0x2c8b, 0x2c8b,
+	0x2c8d, 0x2c8d,
+	0x2c8f, 0x2c8f,
+	0x2c91, 0x2c91,
+	0x2c93, 0x2c93,
+	0x2c95, 0x2c95,
+	0x2c97, 0x2c97,
+	0x2c99, 0x2c99,
+	0x2c9b, 0x2c9b,
+	0x2c9d, 0x2c9d,
+	0x2c9f, 0x2c9f,
+	0x2ca1, 0x2ca1,
+	0x2ca3, 0x2ca3,
+	0x2ca5, 0x2ca5,
+	0x2ca7, 0x2ca7,
+	0x2ca9, 0x2ca9,
+	0x2cab, 0x2cab,
+	0x2cad, 0x2cad,
+	0x2caf, 0x2caf,
+	0x2cb1, 0x2cb1,
+	0x2cb3, 0x2cb3,
+	0x2cb5, 0x2cb5,
+	0x2cb7, 0x2cb7,
+	0x2cb9, 0x2cb9,
+	0x2cbb, 0x2cbb,
+	0x2cbd, 0x2cbd,
+	0x2cbf, 0x2cbf,
+	0x2cc1, 0x2cc1,
+	0x2cc3, 0x2cc3,
+	0x2cc5, 0x2cc5,
+	0x2cc7, 0x2cc7,
+	0x2cc9, 0x2cc9,
+	0x2ccb, 0x2ccb,
+	0x2ccd, 0x2ccd,
+	0x2ccf, 0x2ccf,
+	0x2cd1, 0x2cd1,
+	0x2cd3, 0x2cd3,
+	0x2cd5, 0x2cd5,
+	0x2cd7, 0x2cd7,
+	0x2cd9, 0x2cd9,
+	0x2cdb, 0x2cdb,
+	0x2cdd, 0x2cdd,
+	0x2cdf, 0x2cdf,
+	0x2ce1, 0x2ce1,
+	0x2ce3, 0x2ce3,
+	0x2cec, 0x2cec,
+	0x2cee, 0x2cee,
+	0x2d00, 0x2d25,
+	0xa641, 0xa641,
+	0xa643, 0xa643,
+	0xa645, 0xa645,
+	0xa647, 0xa647,
+	0xa649, 0xa649,
+	0xa64b, 0xa64b,
+	0xa64d, 0xa64d,
+	0xa64f, 0xa64f,
+	0xa651, 0xa651,
+	0xa653, 0xa653,
+	0xa655, 0xa655,
+	0xa657, 0xa657,
+	0xa659, 0xa659,
+	0xa65b, 0xa65b,
+	0xa65d, 0xa65d,
+	0xa65f, 0xa65f,
+	0xa663, 0xa663,
+	0xa665, 0xa665,
+	0xa667, 0xa667,
+	0xa669, 0xa669,
+	0xa66b, 0xa66b,
+	0xa66d, 0xa66d,
+	0xa681, 0xa681,
+	0xa683, 0xa683,
+	0xa685, 0xa685,
+	0xa687, 0xa687,
+	0xa689, 0xa689,
+	0xa68b, 0xa68b,
+	0xa68d, 0xa68d,
+	0xa68f, 0xa68f,
+	0xa691, 0xa691,
+	0xa693, 0xa693,
+	0xa695, 0xa695,
+	0xa697, 0xa697,
+	0xa723, 0xa723,
+	0xa725, 0xa725,
+	0xa727, 0xa727,
+	0xa729, 0xa729,
+	0xa72b, 0xa72b,
+	0xa72d, 0xa72d,
+	0xa72f, 0xa72f,
+	0xa733, 0xa733,
+	0xa735, 0xa735,
+	0xa737, 0xa737,
+	0xa739, 0xa739,
+	0xa73b, 0xa73b,
+	0xa73d, 0xa73d,
+	0xa73f, 0xa73f,
+	0xa741, 0xa741,
+	0xa743, 0xa743,
+	0xa745, 0xa745,
+	0xa747, 0xa747,
+	0xa749, 0xa749,
+	0xa74b, 0xa74b,
+	0xa74d, 0xa74d,
+	0xa74f, 0xa74f,
+	0xa751, 0xa751,
+	0xa753, 0xa753,
+	0xa755, 0xa755,
+	0xa757, 0xa757,
+	0xa759, 0xa759,
+	0xa75b, 0xa75b,
+	0xa75d, 0xa75d,
+	0xa75f, 0xa75f,
+	0xa761, 0xa761,
+	0xa763, 0xa763,
+	0xa765, 0xa765,
+	0xa767, 0xa767,
+	0xa769, 0xa769,
+	0xa76b, 0xa76b,
+	0xa76d, 0xa76d,
+	0xa76f, 0xa76f,
+	0xa77a, 0xa77a,
+	0xa77c, 0xa77c,
+	0xa77f, 0xa77f,
+	0xa781, 0xa781,
+	0xa783, 0xa783,
+	0xa785, 0xa785,
+	0xa787, 0xa787,
+	0xa78c, 0xa78c,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff41, 0xff5a,
+	0x10428, 0x1044f,
+}; /* CR_Changes_When_Uppercased */
+
+/* 'Changes_When_Titlecased': Derived Property */
+static const OnigCodePoint CR_Changes_When_Titlecased[] = {
+	574,
+	0x0061, 0x007a,
+	0x00b5, 0x00b5,
+	0x00df, 0x00f6,
+	0x00f8, 0x00ff,
+	0x0101, 0x0101,
+	0x0103, 0x0103,
+	0x0105, 0x0105,
+	0x0107, 0x0107,
+	0x0109, 0x0109,
+	0x010b, 0x010b,
+	0x010d, 0x010d,
+	0x010f, 0x010f,
+	0x0111, 0x0111,
+	0x0113, 0x0113,
+	0x0115, 0x0115,
+	0x0117, 0x0117,
+	0x0119, 0x0119,
+	0x011b, 0x011b,
+	0x011d, 0x011d,
+	0x011f, 0x011f,
+	0x0121, 0x0121,
+	0x0123, 0x0123,
+	0x0125, 0x0125,
+	0x0127, 0x0127,
+	0x0129, 0x0129,
+	0x012b, 0x012b,
+	0x012d, 0x012d,
+	0x012f, 0x012f,
+	0x0131, 0x0131,
+	0x0133, 0x0133,
+	0x0135, 0x0135,
+	0x0137, 0x0137,
+	0x013a, 0x013a,
+	0x013c, 0x013c,
+	0x013e, 0x013e,
+	0x0140, 0x0140,
+	0x0142, 0x0142,
+	0x0144, 0x0144,
+	0x0146, 0x0146,
+	0x0148, 0x0149,
+	0x014b, 0x014b,
+	0x014d, 0x014d,
+	0x014f, 0x014f,
+	0x0151, 0x0151,
+	0x0153, 0x0153,
+	0x0155, 0x0155,
+	0x0157, 0x0157,
+	0x0159, 0x0159,
+	0x015b, 0x015b,
+	0x015d, 0x015d,
+	0x015f, 0x015f,
+	0x0161, 0x0161,
+	0x0163, 0x0163,
+	0x0165, 0x0165,
+	0x0167, 0x0167,
+	0x0169, 0x0169,
+	0x016b, 0x016b,
+	0x016d, 0x016d,
+	0x016f, 0x016f,
+	0x0171, 0x0171,
+	0x0173, 0x0173,
+	0x0175, 0x0175,
+	0x0177, 0x0177,
+	0x017a, 0x017a,
+	0x017c, 0x017c,
+	0x017e, 0x0180,
+	0x0183, 0x0183,
+	0x0185, 0x0185,
+	0x0188, 0x0188,
+	0x018c, 0x018c,
+	0x0192, 0x0192,
+	0x0195, 0x0195,
+	0x0199, 0x019a,
+	0x019e, 0x019e,
+	0x01a1, 0x01a1,
+	0x01a3, 0x01a3,
+	0x01a5, 0x01a5,
+	0x01a8, 0x01a8,
+	0x01ad, 0x01ad,
+	0x01b0, 0x01b0,
+	0x01b4, 0x01b4,
+	0x01b6, 0x01b6,
+	0x01b9, 0x01b9,
+	0x01bd, 0x01bd,
+	0x01bf, 0x01bf,
+	0x01c4, 0x01c4,
+	0x01c6, 0x01c7,
+	0x01c9, 0x01ca,
+	0x01cc, 0x01cc,
+	0x01ce, 0x01ce,
+	0x01d0, 0x01d0,
+	0x01d2, 0x01d2,
+	0x01d4, 0x01d4,
+	0x01d6, 0x01d6,
+	0x01d8, 0x01d8,
+	0x01da, 0x01da,
+	0x01dc, 0x01dd,
+	0x01df, 0x01df,
+	0x01e1, 0x01e1,
+	0x01e3, 0x01e3,
+	0x01e5, 0x01e5,
+	0x01e7, 0x01e7,
+	0x01e9, 0x01e9,
+	0x01eb, 0x01eb,
+	0x01ed, 0x01ed,
+	0x01ef, 0x01f1,
+	0x01f3, 0x01f3,
+	0x01f5, 0x01f5,
+	0x01f9, 0x01f9,
+	0x01fb, 0x01fb,
+	0x01fd, 0x01fd,
+	0x01ff, 0x01ff,
+	0x0201, 0x0201,
+	0x0203, 0x0203,
+	0x0205, 0x0205,
+	0x0207, 0x0207,
+	0x0209, 0x0209,
+	0x020b, 0x020b,
+	0x020d, 0x020d,
+	0x020f, 0x020f,
+	0x0211, 0x0211,
+	0x0213, 0x0213,
+	0x0215, 0x0215,
+	0x0217, 0x0217,
+	0x0219, 0x0219,
+	0x021b, 0x021b,
+	0x021d, 0x021d,
+	0x021f, 0x021f,
+	0x0223, 0x0223,
+	0x0225, 0x0225,
+	0x0227, 0x0227,
+	0x0229, 0x0229,
+	0x022b, 0x022b,
+	0x022d, 0x022d,
+	0x022f, 0x022f,
+	0x0231, 0x0231,
+	0x0233, 0x0233,
+	0x023c, 0x023c,
+	0x023f, 0x0240,
+	0x0242, 0x0242,
+	0x0247, 0x0247,
+	0x0249, 0x0249,
+	0x024b, 0x024b,
+	0x024d, 0x024d,
+	0x024f, 0x0254,
+	0x0256, 0x0257,
+	0x0259, 0x0259,
+	0x025b, 0x025b,
+	0x0260, 0x0260,
+	0x0263, 0x0263,
+	0x0268, 0x0269,
+	0x026b, 0x026b,
+	0x026f, 0x026f,
+	0x0271, 0x0272,
+	0x0275, 0x0275,
+	0x027d, 0x027d,
+	0x0280, 0x0280,
+	0x0283, 0x0283,
+	0x0288, 0x028c,
+	0x0292, 0x0292,
+	0x0345, 0x0345,
+	0x0371, 0x0371,
+	0x0373, 0x0373,
+	0x0377, 0x0377,
+	0x037b, 0x037d,
+	0x0390, 0x0390,
+	0x03ac, 0x03ce,
+	0x03d0, 0x03d1,
+	0x03d5, 0x03d7,
+	0x03d9, 0x03d9,
+	0x03db, 0x03db,
+	0x03dd, 0x03dd,
+	0x03df, 0x03df,
+	0x03e1, 0x03e1,
+	0x03e3, 0x03e3,
+	0x03e5, 0x03e5,
+	0x03e7, 0x03e7,
+	0x03e9, 0x03e9,
+	0x03eb, 0x03eb,
+	0x03ed, 0x03ed,
+	0x03ef, 0x03f2,
+	0x03f5, 0x03f5,
+	0x03f8, 0x03f8,
+	0x03fb, 0x03fb,
+	0x0430, 0x045f,
+	0x0461, 0x0461,
+	0x0463, 0x0463,
+	0x0465, 0x0465,
+	0x0467, 0x0467,
+	0x0469, 0x0469,
+	0x046b, 0x046b,
+	0x046d, 0x046d,
+	0x046f, 0x046f,
+	0x0471, 0x0471,
+	0x0473, 0x0473,
+	0x0475, 0x0475,
+	0x0477, 0x0477,
+	0x0479, 0x0479,
+	0x047b, 0x047b,
+	0x047d, 0x047d,
+	0x047f, 0x047f,
+	0x0481, 0x0481,
+	0x048b, 0x048b,
+	0x048d, 0x048d,
+	0x048f, 0x048f,
+	0x0491, 0x0491,
+	0x0493, 0x0493,
+	0x0495, 0x0495,
+	0x0497, 0x0497,
+	0x0499, 0x0499,
+	0x049b, 0x049b,
+	0x049d, 0x049d,
+	0x049f, 0x049f,
+	0x04a1, 0x04a1,
+	0x04a3, 0x04a3,
+	0x04a5, 0x04a5,
+	0x04a7, 0x04a7,
+	0x04a9, 0x04a9,
+	0x04ab, 0x04ab,
+	0x04ad, 0x04ad,
+	0x04af, 0x04af,
+	0x04b1, 0x04b1,
+	0x04b3, 0x04b3,
+	0x04b5, 0x04b5,
+	0x04b7, 0x04b7,
+	0x04b9, 0x04b9,
+	0x04bb, 0x04bb,
+	0x04bd, 0x04bd,
+	0x04bf, 0x04bf,
+	0x04c2, 0x04c2,
+	0x04c4, 0x04c4,
+	0x04c6, 0x04c6,
+	0x04c8, 0x04c8,
+	0x04ca, 0x04ca,
+	0x04cc, 0x04cc,
+	0x04ce, 0x04cf,
+	0x04d1, 0x04d1,
+	0x04d3, 0x04d3,
+	0x04d5, 0x04d5,
+	0x04d7, 0x04d7,
+	0x04d9, 0x04d9,
+	0x04db, 0x04db,
+	0x04dd, 0x04dd,
+	0x04df, 0x04df,
+	0x04e1, 0x04e1,
+	0x04e3, 0x04e3,
+	0x04e5, 0x04e5,
+	0x04e7, 0x04e7,
+	0x04e9, 0x04e9,
+	0x04eb, 0x04eb,
+	0x04ed, 0x04ed,
+	0x04ef, 0x04ef,
+	0x04f1, 0x04f1,
+	0x04f3, 0x04f3,
+	0x04f5, 0x04f5,
+	0x04f7, 0x04f7,
+	0x04f9, 0x04f9,
+	0x04fb, 0x04fb,
+	0x04fd, 0x04fd,
+	0x04ff, 0x04ff,
+	0x0501, 0x0501,
+	0x0503, 0x0503,
+	0x0505, 0x0505,
+	0x0507, 0x0507,
+	0x0509, 0x0509,
+	0x050b, 0x050b,
+	0x050d, 0x050d,
+	0x050f, 0x050f,
+	0x0511, 0x0511,
+	0x0513, 0x0513,
+	0x0515, 0x0515,
+	0x0517, 0x0517,
+	0x0519, 0x0519,
+	0x051b, 0x051b,
+	0x051d, 0x051d,
+	0x051f, 0x051f,
+	0x0521, 0x0521,
+	0x0523, 0x0523,
+	0x0525, 0x0525,
+	0x0561, 0x0587,
+	0x1d79, 0x1d79,
+	0x1d7d, 0x1d7d,
+	0x1e01, 0x1e01,
+	0x1e03, 0x1e03,
+	0x1e05, 0x1e05,
+	0x1e07, 0x1e07,
+	0x1e09, 0x1e09,
+	0x1e0b, 0x1e0b,
+	0x1e0d, 0x1e0d,
+	0x1e0f, 0x1e0f,
+	0x1e11, 0x1e11,
+	0x1e13, 0x1e13,
+	0x1e15, 0x1e15,
+	0x1e17, 0x1e17,
+	0x1e19, 0x1e19,
+	0x1e1b, 0x1e1b,
+	0x1e1d, 0x1e1d,
+	0x1e1f, 0x1e1f,
+	0x1e21, 0x1e21,
+	0x1e23, 0x1e23,
+	0x1e25, 0x1e25,
+	0x1e27, 0x1e27,
+	0x1e29, 0x1e29,
+	0x1e2b, 0x1e2b,
+	0x1e2d, 0x1e2d,
+	0x1e2f, 0x1e2f,
+	0x1e31, 0x1e31,
+	0x1e33, 0x1e33,
+	0x1e35, 0x1e35,
+	0x1e37, 0x1e37,
+	0x1e39, 0x1e39,
+	0x1e3b, 0x1e3b,
+	0x1e3d, 0x1e3d,
+	0x1e3f, 0x1e3f,
+	0x1e41, 0x1e41,
+	0x1e43, 0x1e43,
+	0x1e45, 0x1e45,
+	0x1e47, 0x1e47,
+	0x1e49, 0x1e49,
+	0x1e4b, 0x1e4b,
+	0x1e4d, 0x1e4d,
+	0x1e4f, 0x1e4f,
+	0x1e51, 0x1e51,
+	0x1e53, 0x1e53,
+	0x1e55, 0x1e55,
+	0x1e57, 0x1e57,
+	0x1e59, 0x1e59,
+	0x1e5b, 0x1e5b,
+	0x1e5d, 0x1e5d,
+	0x1e5f, 0x1e5f,
+	0x1e61, 0x1e61,
+	0x1e63, 0x1e63,
+	0x1e65, 0x1e65,
+	0x1e67, 0x1e67,
+	0x1e69, 0x1e69,
+	0x1e6b, 0x1e6b,
+	0x1e6d, 0x1e6d,
+	0x1e6f, 0x1e6f,
+	0x1e71, 0x1e71,
+	0x1e73, 0x1e73,
+	0x1e75, 0x1e75,
+	0x1e77, 0x1e77,
+	0x1e79, 0x1e79,
+	0x1e7b, 0x1e7b,
+	0x1e7d, 0x1e7d,
+	0x1e7f, 0x1e7f,
+	0x1e81, 0x1e81,
+	0x1e83, 0x1e83,
+	0x1e85, 0x1e85,
+	0x1e87, 0x1e87,
+	0x1e89, 0x1e89,
+	0x1e8b, 0x1e8b,
+	0x1e8d, 0x1e8d,
+	0x1e8f, 0x1e8f,
+	0x1e91, 0x1e91,
+	0x1e93, 0x1e93,
+	0x1e95, 0x1e9b,
+	0x1ea1, 0x1ea1,
+	0x1ea3, 0x1ea3,
+	0x1ea5, 0x1ea5,
+	0x1ea7, 0x1ea7,
+	0x1ea9, 0x1ea9,
+	0x1eab, 0x1eab,
+	0x1ead, 0x1ead,
+	0x1eaf, 0x1eaf,
+	0x1eb1, 0x1eb1,
+	0x1eb3, 0x1eb3,
+	0x1eb5, 0x1eb5,
+	0x1eb7, 0x1eb7,
+	0x1eb9, 0x1eb9,
+	0x1ebb, 0x1ebb,
+	0x1ebd, 0x1ebd,
+	0x1ebf, 0x1ebf,
+	0x1ec1, 0x1ec1,
+	0x1ec3, 0x1ec3,
+	0x1ec5, 0x1ec5,
+	0x1ec7, 0x1ec7,
+	0x1ec9, 0x1ec9,
+	0x1ecb, 0x1ecb,
+	0x1ecd, 0x1ecd,
+	0x1ecf, 0x1ecf,
+	0x1ed1, 0x1ed1,
+	0x1ed3, 0x1ed3,
+	0x1ed5, 0x1ed5,
+	0x1ed7, 0x1ed7,
+	0x1ed9, 0x1ed9,
+	0x1edb, 0x1edb,
+	0x1edd, 0x1edd,
+	0x1edf, 0x1edf,
+	0x1ee1, 0x1ee1,
+	0x1ee3, 0x1ee3,
+	0x1ee5, 0x1ee5,
+	0x1ee7, 0x1ee7,
+	0x1ee9, 0x1ee9,
+	0x1eeb, 0x1eeb,
+	0x1eed, 0x1eed,
+	0x1eef, 0x1eef,
+	0x1ef1, 0x1ef1,
+	0x1ef3, 0x1ef3,
+	0x1ef5, 0x1ef5,
+	0x1ef7, 0x1ef7,
+	0x1ef9, 0x1ef9,
+	0x1efb, 0x1efb,
+	0x1efd, 0x1efd,
+	0x1eff, 0x1f07,
+	0x1f10, 0x1f15,
+	0x1f20, 0x1f27,
+	0x1f30, 0x1f37,
+	0x1f40, 0x1f45,
+	0x1f50, 0x1f57,
+	0x1f60, 0x1f67,
+	0x1f70, 0x1f7d,
+	0x1f80, 0x1f87,
+	0x1f90, 0x1f97,
+	0x1fa0, 0x1fa7,
+	0x1fb0, 0x1fb4,
+	0x1fb6, 0x1fb7,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fc7,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fd7,
+	0x1fe0, 0x1fe7,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ff7,
+	0x214e, 0x214e,
+	0x2170, 0x217f,
+	0x2184, 0x2184,
+	0x24d0, 0x24e9,
+	0x2c30, 0x2c5e,
+	0x2c61, 0x2c61,
+	0x2c65, 0x2c66,
+	0x2c68, 0x2c68,
+	0x2c6a, 0x2c6a,
+	0x2c6c, 0x2c6c,
+	0x2c73, 0x2c73,
+	0x2c76, 0x2c76,
+	0x2c81, 0x2c81,
+	0x2c83, 0x2c83,
+	0x2c85, 0x2c85,
+	0x2c87, 0x2c87,
+	0x2c89, 0x2c89,
+	0x2c8b, 0x2c8b,
+	0x2c8d, 0x2c8d,
+	0x2c8f, 0x2c8f,
+	0x2c91, 0x2c91,
+	0x2c93, 0x2c93,
+	0x2c95, 0x2c95,
+	0x2c97, 0x2c97,
+	0x2c99, 0x2c99,
+	0x2c9b, 0x2c9b,
+	0x2c9d, 0x2c9d,
+	0x2c9f, 0x2c9f,
+	0x2ca1, 0x2ca1,
+	0x2ca3, 0x2ca3,
+	0x2ca5, 0x2ca5,
+	0x2ca7, 0x2ca7,
+	0x2ca9, 0x2ca9,
+	0x2cab, 0x2cab,
+	0x2cad, 0x2cad,
+	0x2caf, 0x2caf,
+	0x2cb1, 0x2cb1,
+	0x2cb3, 0x2cb3,
+	0x2cb5, 0x2cb5,
+	0x2cb7, 0x2cb7,
+	0x2cb9, 0x2cb9,
+	0x2cbb, 0x2cbb,
+	0x2cbd, 0x2cbd,
+	0x2cbf, 0x2cbf,
+	0x2cc1, 0x2cc1,
+	0x2cc3, 0x2cc3,
+	0x2cc5, 0x2cc5,
+	0x2cc7, 0x2cc7,
+	0x2cc9, 0x2cc9,
+	0x2ccb, 0x2ccb,
+	0x2ccd, 0x2ccd,
+	0x2ccf, 0x2ccf,
+	0x2cd1, 0x2cd1,
+	0x2cd3, 0x2cd3,
+	0x2cd5, 0x2cd5,
+	0x2cd7, 0x2cd7,
+	0x2cd9, 0x2cd9,
+	0x2cdb, 0x2cdb,
+	0x2cdd, 0x2cdd,
+	0x2cdf, 0x2cdf,
+	0x2ce1, 0x2ce1,
+	0x2ce3, 0x2ce3,
+	0x2cec, 0x2cec,
+	0x2cee, 0x2cee,
+	0x2d00, 0x2d25,
+	0xa641, 0xa641,
+	0xa643, 0xa643,
+	0xa645, 0xa645,
+	0xa647, 0xa647,
+	0xa649, 0xa649,
+	0xa64b, 0xa64b,
+	0xa64d, 0xa64d,
+	0xa64f, 0xa64f,
+	0xa651, 0xa651,
+	0xa653, 0xa653,
+	0xa655, 0xa655,
+	0xa657, 0xa657,
+	0xa659, 0xa659,
+	0xa65b, 0xa65b,
+	0xa65d, 0xa65d,
+	0xa65f, 0xa65f,
+	0xa663, 0xa663,
+	0xa665, 0xa665,
+	0xa667, 0xa667,
+	0xa669, 0xa669,
+	0xa66b, 0xa66b,
+	0xa66d, 0xa66d,
+	0xa681, 0xa681,
+	0xa683, 0xa683,
+	0xa685, 0xa685,
+	0xa687, 0xa687,
+	0xa689, 0xa689,
+	0xa68b, 0xa68b,
+	0xa68d, 0xa68d,
+	0xa68f, 0xa68f,
+	0xa691, 0xa691,
+	0xa693, 0xa693,
+	0xa695, 0xa695,
+	0xa697, 0xa697,
+	0xa723, 0xa723,
+	0xa725, 0xa725,
+	0xa727, 0xa727,
+	0xa729, 0xa729,
+	0xa72b, 0xa72b,
+	0xa72d, 0xa72d,
+	0xa72f, 0xa72f,
+	0xa733, 0xa733,
+	0xa735, 0xa735,
+	0xa737, 0xa737,
+	0xa739, 0xa739,
+	0xa73b, 0xa73b,
+	0xa73d, 0xa73d,
+	0xa73f, 0xa73f,
+	0xa741, 0xa741,
+	0xa743, 0xa743,
+	0xa745, 0xa745,
+	0xa747, 0xa747,
+	0xa749, 0xa749,
+	0xa74b, 0xa74b,
+	0xa74d, 0xa74d,
+	0xa74f, 0xa74f,
+	0xa751, 0xa751,
+	0xa753, 0xa753,
+	0xa755, 0xa755,
+	0xa757, 0xa757,
+	0xa759, 0xa759,
+	0xa75b, 0xa75b,
+	0xa75d, 0xa75d,
+	0xa75f, 0xa75f,
+	0xa761, 0xa761,
+	0xa763, 0xa763,
+	0xa765, 0xa765,
+	0xa767, 0xa767,
+	0xa769, 0xa769,
+	0xa76b, 0xa76b,
+	0xa76d, 0xa76d,
+	0xa76f, 0xa76f,
+	0xa77a, 0xa77a,
+	0xa77c, 0xa77c,
+	0xa77f, 0xa77f,
+	0xa781, 0xa781,
+	0xa783, 0xa783,
+	0xa785, 0xa785,
+	0xa787, 0xa787,
+	0xa78c, 0xa78c,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff41, 0xff5a,
+	0x10428, 0x1044f,
+}; /* CR_Changes_When_Titlecased */
+
+/* 'Changes_When_Casefolded': Derived Property */
+static const OnigCodePoint CR_Changes_When_Casefolded[] = {
+	568,
+	0x0041, 0x005a,
+	0x00b5, 0x00b5,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00df,
+	0x0100, 0x0100,
+	0x0102, 0x0102,
+	0x0104, 0x0104,
+	0x0106, 0x0106,
+	0x0108, 0x0108,
+	0x010a, 0x010a,
+	0x010c, 0x010c,
+	0x010e, 0x010e,
+	0x0110, 0x0110,
+	0x0112, 0x0112,
+	0x0114, 0x0114,
+	0x0116, 0x0116,
+	0x0118, 0x0118,
+	0x011a, 0x011a,
+	0x011c, 0x011c,
+	0x011e, 0x011e,
+	0x0120, 0x0120,
+	0x0122, 0x0122,
+	0x0124, 0x0124,
+	0x0126, 0x0126,
+	0x0128, 0x0128,
+	0x012a, 0x012a,
+	0x012c, 0x012c,
+	0x012e, 0x012e,
+	0x0130, 0x0130,
+	0x0132, 0x0132,
+	0x0134, 0x0134,
+	0x0136, 0x0136,
+	0x0139, 0x0139,
+	0x013b, 0x013b,
+	0x013d, 0x013d,
+	0x013f, 0x013f,
+	0x0141, 0x0141,
+	0x0143, 0x0143,
+	0x0145, 0x0145,
+	0x0147, 0x0147,
+	0x0149, 0x014a,
+	0x014c, 0x014c,
+	0x014e, 0x014e,
+	0x0150, 0x0150,
+	0x0152, 0x0152,
+	0x0154, 0x0154,
+	0x0156, 0x0156,
+	0x0158, 0x0158,
+	0x015a, 0x015a,
+	0x015c, 0x015c,
+	0x015e, 0x015e,
+	0x0160, 0x0160,
+	0x0162, 0x0162,
+	0x0164, 0x0164,
+	0x0166, 0x0166,
+	0x0168, 0x0168,
+	0x016a, 0x016a,
+	0x016c, 0x016c,
+	0x016e, 0x016e,
+	0x0170, 0x0170,
+	0x0172, 0x0172,
+	0x0174, 0x0174,
+	0x0176, 0x0176,
+	0x0178, 0x0179,
+	0x017b, 0x017b,
+	0x017d, 0x017d,
+	0x017f, 0x017f,
+	0x0181, 0x0182,
+	0x0184, 0x0184,
+	0x0186, 0x0187,
+	0x0189, 0x018b,
+	0x018e, 0x0191,
+	0x0193, 0x0194,
+	0x0196, 0x0198,
+	0x019c, 0x019d,
+	0x019f, 0x01a0,
+	0x01a2, 0x01a2,
+	0x01a4, 0x01a4,
+	0x01a6, 0x01a7,
+	0x01a9, 0x01a9,
+	0x01ac, 0x01ac,
+	0x01ae, 0x01af,
+	0x01b1, 0x01b3,
+	0x01b5, 0x01b5,
+	0x01b7, 0x01b8,
+	0x01bc, 0x01bc,
+	0x01c4, 0x01c5,
+	0x01c7, 0x01c8,
+	0x01ca, 0x01cb,
+	0x01cd, 0x01cd,
+	0x01cf, 0x01cf,
+	0x01d1, 0x01d1,
+	0x01d3, 0x01d3,
+	0x01d5, 0x01d5,
+	0x01d7, 0x01d7,
+	0x01d9, 0x01d9,
+	0x01db, 0x01db,
+	0x01de, 0x01de,
+	0x01e0, 0x01e0,
+	0x01e2, 0x01e2,
+	0x01e4, 0x01e4,
+	0x01e6, 0x01e6,
+	0x01e8, 0x01e8,
+	0x01ea, 0x01ea,
+	0x01ec, 0x01ec,
+	0x01ee, 0x01ee,
+	0x01f1, 0x01f2,
+	0x01f4, 0x01f4,
+	0x01f6, 0x01f8,
+	0x01fa, 0x01fa,
+	0x01fc, 0x01fc,
+	0x01fe, 0x01fe,
+	0x0200, 0x0200,
+	0x0202, 0x0202,
+	0x0204, 0x0204,
+	0x0206, 0x0206,
+	0x0208, 0x0208,
+	0x020a, 0x020a,
+	0x020c, 0x020c,
+	0x020e, 0x020e,
+	0x0210, 0x0210,
+	0x0212, 0x0212,
+	0x0214, 0x0214,
+	0x0216, 0x0216,
+	0x0218, 0x0218,
+	0x021a, 0x021a,
+	0x021c, 0x021c,
+	0x021e, 0x021e,
+	0x0220, 0x0220,
+	0x0222, 0x0222,
+	0x0224, 0x0224,
+	0x0226, 0x0226,
+	0x0228, 0x0228,
+	0x022a, 0x022a,
+	0x022c, 0x022c,
+	0x022e, 0x022e,
+	0x0230, 0x0230,
+	0x0232, 0x0232,
+	0x023a, 0x023b,
+	0x023d, 0x023e,
+	0x0241, 0x0241,
+	0x0243, 0x0246,
+	0x0248, 0x0248,
+	0x024a, 0x024a,
+	0x024c, 0x024c,
+	0x024e, 0x024e,
+	0x0345, 0x0345,
+	0x0370, 0x0370,
+	0x0372, 0x0372,
+	0x0376, 0x0376,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x038f,
+	0x0391, 0x03a1,
+	0x03a3, 0x03ab,
+	0x03c2, 0x03c2,
+	0x03cf, 0x03d1,
+	0x03d5, 0x03d6,
+	0x03d8, 0x03d8,
+	0x03da, 0x03da,
+	0x03dc, 0x03dc,
+	0x03de, 0x03de,
+	0x03e0, 0x03e0,
+	0x03e2, 0x03e2,
+	0x03e4, 0x03e4,
+	0x03e6, 0x03e6,
+	0x03e8, 0x03e8,
+	0x03ea, 0x03ea,
+	0x03ec, 0x03ec,
+	0x03ee, 0x03ee,
+	0x03f0, 0x03f1,
+	0x03f4, 0x03f5,
+	0x03f7, 0x03f7,
+	0x03f9, 0x03fa,
+	0x03fd, 0x042f,
+	0x0460, 0x0460,
+	0x0462, 0x0462,
+	0x0464, 0x0464,
+	0x0466, 0x0466,
+	0x0468, 0x0468,
+	0x046a, 0x046a,
+	0x046c, 0x046c,
+	0x046e, 0x046e,
+	0x0470, 0x0470,
+	0x0472, 0x0472,
+	0x0474, 0x0474,
+	0x0476, 0x0476,
+	0x0478, 0x0478,
+	0x047a, 0x047a,
+	0x047c, 0x047c,
+	0x047e, 0x047e,
+	0x0480, 0x0480,
+	0x048a, 0x048a,
+	0x048c, 0x048c,
+	0x048e, 0x048e,
+	0x0490, 0x0490,
+	0x0492, 0x0492,
+	0x0494, 0x0494,
+	0x0496, 0x0496,
+	0x0498, 0x0498,
+	0x049a, 0x049a,
+	0x049c, 0x049c,
+	0x049e, 0x049e,
+	0x04a0, 0x04a0,
+	0x04a2, 0x04a2,
+	0x04a4, 0x04a4,
+	0x04a6, 0x04a6,
+	0x04a8, 0x04a8,
+	0x04aa, 0x04aa,
+	0x04ac, 0x04ac,
+	0x04ae, 0x04ae,
+	0x04b0, 0x04b0,
+	0x04b2, 0x04b2,
+	0x04b4, 0x04b4,
+	0x04b6, 0x04b6,
+	0x04b8, 0x04b8,
+	0x04ba, 0x04ba,
+	0x04bc, 0x04bc,
+	0x04be, 0x04be,
+	0x04c0, 0x04c1,
+	0x04c3, 0x04c3,
+	0x04c5, 0x04c5,
+	0x04c7, 0x04c7,
+	0x04c9, 0x04c9,
+	0x04cb, 0x04cb,
+	0x04cd, 0x04cd,
+	0x04d0, 0x04d0,
+	0x04d2, 0x04d2,
+	0x04d4, 0x04d4,
+	0x04d6, 0x04d6,
+	0x04d8, 0x04d8,
+	0x04da, 0x04da,
+	0x04dc, 0x04dc,
+	0x04de, 0x04de,
+	0x04e0, 0x04e0,
+	0x04e2, 0x04e2,
+	0x04e4, 0x04e4,
+	0x04e6, 0x04e6,
+	0x04e8, 0x04e8,
+	0x04ea, 0x04ea,
+	0x04ec, 0x04ec,
+	0x04ee, 0x04ee,
+	0x04f0, 0x04f0,
+	0x04f2, 0x04f2,
+	0x04f4, 0x04f4,
+	0x04f6, 0x04f6,
+	0x04f8, 0x04f8,
+	0x04fa, 0x04fa,
+	0x04fc, 0x04fc,
+	0x04fe, 0x04fe,
+	0x0500, 0x0500,
+	0x0502, 0x0502,
+	0x0504, 0x0504,
+	0x0506, 0x0506,
+	0x0508, 0x0508,
+	0x050a, 0x050a,
+	0x050c, 0x050c,
+	0x050e, 0x050e,
+	0x0510, 0x0510,
+	0x0512, 0x0512,
+	0x0514, 0x0514,
+	0x0516, 0x0516,
+	0x0518, 0x0518,
+	0x051a, 0x051a,
+	0x051c, 0x051c,
+	0x051e, 0x051e,
+	0x0520, 0x0520,
+	0x0522, 0x0522,
+	0x0524, 0x0524,
+	0x0531, 0x0556,
+	0x0587, 0x0587,
+	0x10a0, 0x10c5,
+	0x1e00, 0x1e00,
+	0x1e02, 0x1e02,
+	0x1e04, 0x1e04,
+	0x1e06, 0x1e06,
+	0x1e08, 0x1e08,
+	0x1e0a, 0x1e0a,
+	0x1e0c, 0x1e0c,
+	0x1e0e, 0x1e0e,
+	0x1e10, 0x1e10,
+	0x1e12, 0x1e12,
+	0x1e14, 0x1e14,
+	0x1e16, 0x1e16,
+	0x1e18, 0x1e18,
+	0x1e1a, 0x1e1a,
+	0x1e1c, 0x1e1c,
+	0x1e1e, 0x1e1e,
+	0x1e20, 0x1e20,
+	0x1e22, 0x1e22,
+	0x1e24, 0x1e24,
+	0x1e26, 0x1e26,
+	0x1e28, 0x1e28,
+	0x1e2a, 0x1e2a,
+	0x1e2c, 0x1e2c,
+	0x1e2e, 0x1e2e,
+	0x1e30, 0x1e30,
+	0x1e32, 0x1e32,
+	0x1e34, 0x1e34,
+	0x1e36, 0x1e36,
+	0x1e38, 0x1e38,
+	0x1e3a, 0x1e3a,
+	0x1e3c, 0x1e3c,
+	0x1e3e, 0x1e3e,
+	0x1e40, 0x1e40,
+	0x1e42, 0x1e42,
+	0x1e44, 0x1e44,
+	0x1e46, 0x1e46,
+	0x1e48, 0x1e48,
+	0x1e4a, 0x1e4a,
+	0x1e4c, 0x1e4c,
+	0x1e4e, 0x1e4e,
+	0x1e50, 0x1e50,
+	0x1e52, 0x1e52,
+	0x1e54, 0x1e54,
+	0x1e56, 0x1e56,
+	0x1e58, 0x1e58,
+	0x1e5a, 0x1e5a,
+	0x1e5c, 0x1e5c,
+	0x1e5e, 0x1e5e,
+	0x1e60, 0x1e60,
+	0x1e62, 0x1e62,
+	0x1e64, 0x1e64,
+	0x1e66, 0x1e66,
+	0x1e68, 0x1e68,
+	0x1e6a, 0x1e6a,
+	0x1e6c, 0x1e6c,
+	0x1e6e, 0x1e6e,
+	0x1e70, 0x1e70,
+	0x1e72, 0x1e72,
+	0x1e74, 0x1e74,
+	0x1e76, 0x1e76,
+	0x1e78, 0x1e78,
+	0x1e7a, 0x1e7a,
+	0x1e7c, 0x1e7c,
+	0x1e7e, 0x1e7e,
+	0x1e80, 0x1e80,
+	0x1e82, 0x1e82,
+	0x1e84, 0x1e84,
+	0x1e86, 0x1e86,
+	0x1e88, 0x1e88,
+	0x1e8a, 0x1e8a,
+	0x1e8c, 0x1e8c,
+	0x1e8e, 0x1e8e,
+	0x1e90, 0x1e90,
+	0x1e92, 0x1e92,
+	0x1e94, 0x1e94,
+	0x1e9a, 0x1e9b,
+	0x1e9e, 0x1e9e,
+	0x1ea0, 0x1ea0,
+	0x1ea2, 0x1ea2,
+	0x1ea4, 0x1ea4,
+	0x1ea6, 0x1ea6,
+	0x1ea8, 0x1ea8,
+	0x1eaa, 0x1eaa,
+	0x1eac, 0x1eac,
+	0x1eae, 0x1eae,
+	0x1eb0, 0x1eb0,
+	0x1eb2, 0x1eb2,
+	0x1eb4, 0x1eb4,
+	0x1eb6, 0x1eb6,
+	0x1eb8, 0x1eb8,
+	0x1eba, 0x1eba,
+	0x1ebc, 0x1ebc,
+	0x1ebe, 0x1ebe,
+	0x1ec0, 0x1ec0,
+	0x1ec2, 0x1ec2,
+	0x1ec4, 0x1ec4,
+	0x1ec6, 0x1ec6,
+	0x1ec8, 0x1ec8,
+	0x1eca, 0x1eca,
+	0x1ecc, 0x1ecc,
+	0x1ece, 0x1ece,
+	0x1ed0, 0x1ed0,
+	0x1ed2, 0x1ed2,
+	0x1ed4, 0x1ed4,
+	0x1ed6, 0x1ed6,
+	0x1ed8, 0x1ed8,
+	0x1eda, 0x1eda,
+	0x1edc, 0x1edc,
+	0x1ede, 0x1ede,
+	0x1ee0, 0x1ee0,
+	0x1ee2, 0x1ee2,
+	0x1ee4, 0x1ee4,
+	0x1ee6, 0x1ee6,
+	0x1ee8, 0x1ee8,
+	0x1eea, 0x1eea,
+	0x1eec, 0x1eec,
+	0x1eee, 0x1eee,
+	0x1ef0, 0x1ef0,
+	0x1ef2, 0x1ef2,
+	0x1ef4, 0x1ef4,
+	0x1ef6, 0x1ef6,
+	0x1ef8, 0x1ef8,
+	0x1efa, 0x1efa,
+	0x1efc, 0x1efc,
+	0x1efe, 0x1efe,
+	0x1f08, 0x1f0f,
+	0x1f18, 0x1f1d,
+	0x1f28, 0x1f2f,
+	0x1f38, 0x1f3f,
+	0x1f48, 0x1f4d,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f5f,
+	0x1f68, 0x1f6f,
+	0x1f80, 0x1faf,
+	0x1fb2, 0x1fb4,
+	0x1fb7, 0x1fbc,
+	0x1fc2, 0x1fc4,
+	0x1fc7, 0x1fcc,
+	0x1fd8, 0x1fdb,
+	0x1fe8, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff7, 0x1ffc,
+	0x2126, 0x2126,
+	0x212a, 0x212b,
+	0x2132, 0x2132,
+	0x2160, 0x216f,
+	0x2183, 0x2183,
+	0x24b6, 0x24cf,
+	0x2c00, 0x2c2e,
+	0x2c60, 0x2c60,
+	0x2c62, 0x2c64,
+	0x2c67, 0x2c67,
+	0x2c69, 0x2c69,
+	0x2c6b, 0x2c6b,
+	0x2c6d, 0x2c70,
+	0x2c72, 0x2c72,
+	0x2c75, 0x2c75,
+	0x2c7e, 0x2c80,
+	0x2c82, 0x2c82,
+	0x2c84, 0x2c84,
+	0x2c86, 0x2c86,
+	0x2c88, 0x2c88,
+	0x2c8a, 0x2c8a,
+	0x2c8c, 0x2c8c,
+	0x2c8e, 0x2c8e,
+	0x2c90, 0x2c90,
+	0x2c92, 0x2c92,
+	0x2c94, 0x2c94,
+	0x2c96, 0x2c96,
+	0x2c98, 0x2c98,
+	0x2c9a, 0x2c9a,
+	0x2c9c, 0x2c9c,
+	0x2c9e, 0x2c9e,
+	0x2ca0, 0x2ca0,
+	0x2ca2, 0x2ca2,
+	0x2ca4, 0x2ca4,
+	0x2ca6, 0x2ca6,
+	0x2ca8, 0x2ca8,
+	0x2caa, 0x2caa,
+	0x2cac, 0x2cac,
+	0x2cae, 0x2cae,
+	0x2cb0, 0x2cb0,
+	0x2cb2, 0x2cb2,
+	0x2cb4, 0x2cb4,
+	0x2cb6, 0x2cb6,
+	0x2cb8, 0x2cb8,
+	0x2cba, 0x2cba,
+	0x2cbc, 0x2cbc,
+	0x2cbe, 0x2cbe,
+	0x2cc0, 0x2cc0,
+	0x2cc2, 0x2cc2,
+	0x2cc4, 0x2cc4,
+	0x2cc6, 0x2cc6,
+	0x2cc8, 0x2cc8,
+	0x2cca, 0x2cca,
+	0x2ccc, 0x2ccc,
+	0x2cce, 0x2cce,
+	0x2cd0, 0x2cd0,
+	0x2cd2, 0x2cd2,
+	0x2cd4, 0x2cd4,
+	0x2cd6, 0x2cd6,
+	0x2cd8, 0x2cd8,
+	0x2cda, 0x2cda,
+	0x2cdc, 0x2cdc,
+	0x2cde, 0x2cde,
+	0x2ce0, 0x2ce0,
+	0x2ce2, 0x2ce2,
+	0x2ceb, 0x2ceb,
+	0x2ced, 0x2ced,
+	0xa640, 0xa640,
+	0xa642, 0xa642,
+	0xa644, 0xa644,
+	0xa646, 0xa646,
+	0xa648, 0xa648,
+	0xa64a, 0xa64a,
+	0xa64c, 0xa64c,
+	0xa64e, 0xa64e,
+	0xa650, 0xa650,
+	0xa652, 0xa652,
+	0xa654, 0xa654,
+	0xa656, 0xa656,
+	0xa658, 0xa658,
+	0xa65a, 0xa65a,
+	0xa65c, 0xa65c,
+	0xa65e, 0xa65e,
+	0xa662, 0xa662,
+	0xa664, 0xa664,
+	0xa666, 0xa666,
+	0xa668, 0xa668,
+	0xa66a, 0xa66a,
+	0xa66c, 0xa66c,
+	0xa680, 0xa680,
+	0xa682, 0xa682,
+	0xa684, 0xa684,
+	0xa686, 0xa686,
+	0xa688, 0xa688,
+	0xa68a, 0xa68a,
+	0xa68c, 0xa68c,
+	0xa68e, 0xa68e,
+	0xa690, 0xa690,
+	0xa692, 0xa692,
+	0xa694, 0xa694,
+	0xa696, 0xa696,
+	0xa722, 0xa722,
+	0xa724, 0xa724,
+	0xa726, 0xa726,
+	0xa728, 0xa728,
+	0xa72a, 0xa72a,
+	0xa72c, 0xa72c,
+	0xa72e, 0xa72e,
+	0xa732, 0xa732,
+	0xa734, 0xa734,
+	0xa736, 0xa736,
+	0xa738, 0xa738,
+	0xa73a, 0xa73a,
+	0xa73c, 0xa73c,
+	0xa73e, 0xa73e,
+	0xa740, 0xa740,
+	0xa742, 0xa742,
+	0xa744, 0xa744,
+	0xa746, 0xa746,
+	0xa748, 0xa748,
+	0xa74a, 0xa74a,
+	0xa74c, 0xa74c,
+	0xa74e, 0xa74e,
+	0xa750, 0xa750,
+	0xa752, 0xa752,
+	0xa754, 0xa754,
+	0xa756, 0xa756,
+	0xa758, 0xa758,
+	0xa75a, 0xa75a,
+	0xa75c, 0xa75c,
+	0xa75e, 0xa75e,
+	0xa760, 0xa760,
+	0xa762, 0xa762,
+	0xa764, 0xa764,
+	0xa766, 0xa766,
+	0xa768, 0xa768,
+	0xa76a, 0xa76a,
+	0xa76c, 0xa76c,
+	0xa76e, 0xa76e,
+	0xa779, 0xa779,
+	0xa77b, 0xa77b,
+	0xa77d, 0xa77e,
+	0xa780, 0xa780,
+	0xa782, 0xa782,
+	0xa784, 0xa784,
+	0xa786, 0xa786,
+	0xa78b, 0xa78b,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff21, 0xff3a,
+	0x10400, 0x10427,
+}; /* CR_Changes_When_Casefolded */
+
+/* 'Changes_When_Casemapped': Derived Property */
+static const OnigCodePoint CR_Changes_When_Casemapped[] = {
+	97,
+	0x0041, 0x005a,
+	0x0061, 0x007a,
+	0x00b5, 0x00b5,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x0137,
+	0x0139, 0x018c,
+	0x018e, 0x019a,
+	0x019c, 0x01a9,
+	0x01ac, 0x01b9,
+	0x01bc, 0x01bd,
+	0x01bf, 0x01bf,
+	0x01c4, 0x0220,
+	0x0222, 0x0233,
+	0x023a, 0x0254,
+	0x0256, 0x0257,
+	0x0259, 0x0259,
+	0x025b, 0x025b,
+	0x0260, 0x0260,
+	0x0263, 0x0263,
+	0x0268, 0x0269,
+	0x026b, 0x026b,
+	0x026f, 0x026f,
+	0x0271, 0x0272,
+	0x0275, 0x0275,
+	0x027d, 0x027d,
+	0x0280, 0x0280,
+	0x0283, 0x0283,
+	0x0288, 0x028c,
+	0x0292, 0x0292,
+	0x0345, 0x0345,
+	0x0370, 0x0373,
+	0x0376, 0x0377,
+	0x037b, 0x037d,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03d1,
+	0x03d5, 0x03f2,
+	0x03f4, 0x03f5,
+	0x03f7, 0x03fb,
+	0x03fd, 0x0481,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0561, 0x0587,
+	0x10a0, 0x10c5,
+	0x1d79, 0x1d79,
+	0x1d7d, 0x1d7d,
+	0x1e00, 0x1e9b,
+	0x1e9e, 0x1e9e,
+	0x1ea0, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x2126, 0x2126,
+	0x212a, 0x212b,
+	0x2132, 0x2132,
+	0x214e, 0x214e,
+	0x2160, 0x217f,
+	0x2183, 0x2184,
+	0x24b6, 0x24e9,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2c70,
+	0x2c72, 0x2c73,
+	0x2c75, 0x2c76,
+	0x2c7e, 0x2ce3,
+	0x2ceb, 0x2cee,
+	0x2d00, 0x2d25,
+	0xa640, 0xa65f,
+	0xa662, 0xa66d,
+	0xa680, 0xa697,
+	0xa722, 0xa72f,
+	0xa732, 0xa76f,
+	0xa779, 0xa787,
+	0xa78b, 0xa78c,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff21, 0xff3a,
+	0xff41, 0xff5a,
+	0x10400, 0x1044f,
+}; /* CR_Changes_When_Casemapped */
+
+/* 'ID_Start': Derived Property */
+static const OnigCodePoint CR_ID_Start[] = {
+	424,
+	0x0041, 0x005a,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0370, 0x0374,
+	0x0376, 0x0377,
+	0x037a, 0x037d,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x0559,
+	0x0561, 0x0587,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f2,
+	0x0621, 0x064a,
+	0x066e, 0x066f,
+	0x0671, 0x06d3,
+	0x06d5, 0x06d5,
+	0x06e5, 0x06e6,
+	0x06ee, 0x06ef,
+	0x06fa, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x0710,
+	0x0712, 0x072f,
+	0x074d, 0x07a5,
+	0x07b1, 0x07b1,
+	0x07ca, 0x07ea,
+	0x07f4, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0800, 0x0815,
+	0x081a, 0x081a,
+	0x0824, 0x0824,
+	0x0828, 0x0828,
+	0x0904, 0x0939,
+	0x093d, 0x093d,
+	0x0950, 0x0950,
+	0x0958, 0x0961,
+	0x0971, 0x0972,
+	0x0979, 0x097f,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bd, 0x09bd,
+	0x09ce, 0x09ce,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e1,
+	0x09f0, 0x09f1,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a72, 0x0a74,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abd, 0x0abd,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae1,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3d, 0x0b3d,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b61,
+	0x0b71, 0x0b71,
+	0x0b83, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bd0, 0x0bd0,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c3d,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c61,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbd, 0x0cbd,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce1,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d3d,
+	0x0d60, 0x0d61,
+	0x0d7a, 0x0d7f,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0e01, 0x0e30,
+	0x0e32, 0x0e33,
+	0x0e40, 0x0e46,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb0,
+	0x0eb2, 0x0eb3,
+	0x0ebd, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f00,
+	0x0f40, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f88, 0x0f8b,
+	0x1000, 0x102a,
+	0x103f, 0x103f,
+	0x1050, 0x1055,
+	0x105a, 0x105d,
+	0x1061, 0x1061,
+	0x1065, 0x1066,
+	0x106e, 0x1070,
+	0x1075, 0x1081,
+	0x108e, 0x108e,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x1380, 0x138f,
+	0x13a0, 0x13f4,
+	0x1401, 0x166c,
+	0x166f, 0x167f,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	0x16ee, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1711,
+	0x1720, 0x1731,
+	0x1740, 0x1751,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1780, 0x17b3,
+	0x17d7, 0x17d7,
+	0x17dc, 0x17dc,
+	0x1820, 0x1877,
+	0x1880, 0x18a8,
+	0x18aa, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1950, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19c1, 0x19c7,
+	0x1a00, 0x1a16,
+	0x1a20, 0x1a54,
+	0x1aa7, 0x1aa7,
+	0x1b05, 0x1b33,
+	0x1b45, 0x1b4b,
+	0x1b83, 0x1ba0,
+	0x1bae, 0x1baf,
+	0x1c00, 0x1c23,
+	0x1c4d, 0x1c4f,
+	0x1c5a, 0x1c7d,
+	0x1ce9, 0x1cec,
+	0x1cee, 0x1cf1,
+	0x1d00, 0x1dbf,
+	0x1e00, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2118, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x2188,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cee,
+	0x2d00, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x3005, 0x3007,
+	0x3021, 0x3029,
+	0x3031, 0x3035,
+	0x3038, 0x303c,
+	0x3041, 0x3096,
+	0x309b, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa4d0, 0xa4fd,
+	0xa500, 0xa60c,
+	0xa610, 0xa61f,
+	0xa62a, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66e,
+	0xa67f, 0xa697,
+	0xa6a0, 0xa6ef,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa801,
+	0xa803, 0xa805,
+	0xa807, 0xa80a,
+	0xa80c, 0xa822,
+	0xa840, 0xa873,
+	0xa882, 0xa8b3,
+	0xa8f2, 0xa8f7,
+	0xa8fb, 0xa8fb,
+	0xa90a, 0xa925,
+	0xa930, 0xa946,
+	0xa960, 0xa97c,
+	0xa984, 0xa9b2,
+	0xa9cf, 0xa9cf,
+	0xaa00, 0xaa28,
+	0xaa40, 0xaa42,
+	0xaa44, 0xaa4b,
+	0xaa60, 0xaa76,
+	0xaa7a, 0xaa7a,
+	0xaa80, 0xaaaf,
+	0xaab1, 0xaab1,
+	0xaab5, 0xaab6,
+	0xaab9, 0xaabd,
+	0xaac0, 0xaac0,
+	0xaac2, 0xaac2,
+	0xaadb, 0xaadd,
+	0xabc0, 0xabe2,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb1d,
+	0xfb1f, 0xfb28,
+	0xfb2a, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfd3d,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdfb,
+	0xfe70, 0xfe74,
+	0xfe76, 0xfefc,
+	0xff21, 0xff3a,
+	0xff41, 0xff5a,
+	0xff66, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10140, 0x10174,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x103d1, 0x103d5,
+	0x10400, 0x1049d,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a00,
+	0x10a10, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a60, 0x10a7c,
+	0x10b00, 0x10b35,
+	0x10b40, 0x10b55,
+	0x10b60, 0x10b72,
+	0x10c00, 0x10c48,
+	0x11083, 0x110af,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x13000, 0x1342e,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+}; /* CR_ID_Start */
+
+/* 'ID_Continue': Derived Property */
+static const OnigCodePoint CR_ID_Continue[] = {
+	506,
+	0x0030, 0x0039,
+	0x0041, 0x005a,
+	0x005f, 0x005f,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00b7, 0x00b7,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0300, 0x0374,
+	0x0376, 0x0377,
+	0x037a, 0x037d,
+	0x0386, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x0483, 0x0487,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x0559,
+	0x0561, 0x0587,
+	0x0591, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f2,
+	0x0610, 0x061a,
+	0x0621, 0x065e,
+	0x0660, 0x0669,
+	0x066e, 0x06d3,
+	0x06d5, 0x06dc,
+	0x06df, 0x06e8,
+	0x06ea, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x074a,
+	0x074d, 0x07b1,
+	0x07c0, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0800, 0x082d,
+	0x0900, 0x0939,
+	0x093c, 0x094e,
+	0x0950, 0x0955,
+	0x0958, 0x0963,
+	0x0966, 0x096f,
+	0x0971, 0x0972,
+	0x0979, 0x097f,
+	0x0981, 0x0983,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bc, 0x09c4,
+	0x09c7, 0x09c8,
+	0x09cb, 0x09ce,
+	0x09d7, 0x09d7,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e3,
+	0x09e6, 0x09f1,
+	0x0a01, 0x0a03,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a3c, 0x0a3c,
+	0x0a3e, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4d,
+	0x0a51, 0x0a51,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a66, 0x0a75,
+	0x0a81, 0x0a83,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abc, 0x0ac5,
+	0x0ac7, 0x0ac9,
+	0x0acb, 0x0acd,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae3,
+	0x0ae6, 0x0aef,
+	0x0b01, 0x0b03,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3c, 0x0b44,
+	0x0b47, 0x0b48,
+	0x0b4b, 0x0b4d,
+	0x0b56, 0x0b57,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b63,
+	0x0b66, 0x0b6f,
+	0x0b71, 0x0b71,
+	0x0b82, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bbe, 0x0bc2,
+	0x0bc6, 0x0bc8,
+	0x0bca, 0x0bcd,
+	0x0bd0, 0x0bd0,
+	0x0bd7, 0x0bd7,
+	0x0be6, 0x0bef,
+	0x0c01, 0x0c03,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c44,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4d,
+	0x0c55, 0x0c56,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c63,
+	0x0c66, 0x0c6f,
+	0x0c82, 0x0c83,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbc, 0x0cc4,
+	0x0cc6, 0x0cc8,
+	0x0cca, 0x0ccd,
+	0x0cd5, 0x0cd6,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce3,
+	0x0ce6, 0x0cef,
+	0x0d02, 0x0d03,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d44,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4d,
+	0x0d57, 0x0d57,
+	0x0d60, 0x0d63,
+	0x0d66, 0x0d6f,
+	0x0d7a, 0x0d7f,
+	0x0d82, 0x0d83,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0dca, 0x0dca,
+	0x0dcf, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0dd8, 0x0ddf,
+	0x0df2, 0x0df3,
+	0x0e01, 0x0e3a,
+	0x0e40, 0x0e4e,
+	0x0e50, 0x0e59,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb9,
+	0x0ebb, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0ec8, 0x0ecd,
+	0x0ed0, 0x0ed9,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f00,
+	0x0f18, 0x0f19,
+	0x0f20, 0x0f29,
+	0x0f35, 0x0f35,
+	0x0f37, 0x0f37,
+	0x0f39, 0x0f39,
+	0x0f3e, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f71, 0x0f84,
+	0x0f86, 0x0f8b,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x0fc6, 0x0fc6,
+	0x1000, 0x1049,
+	0x1050, 0x109d,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x135f, 0x135f,
+	0x1369, 0x1371,
+	0x1380, 0x138f,
+	0x13a0, 0x13f4,
+	0x1401, 0x166c,
+	0x166f, 0x167f,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	0x16ee, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1714,
+	0x1720, 0x1734,
+	0x1740, 0x1753,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1772, 0x1773,
+	0x1780, 0x17b3,
+	0x17b6, 0x17d3,
+	0x17d7, 0x17d7,
+	0x17dc, 0x17dd,
+	0x17e0, 0x17e9,
+	0x180b, 0x180d,
+	0x1810, 0x1819,
+	0x1820, 0x1877,
+	0x1880, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1920, 0x192b,
+	0x1930, 0x193b,
+	0x1946, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19b0, 0x19c9,
+	0x19d0, 0x19da,
+	0x1a00, 0x1a1b,
+	0x1a20, 0x1a5e,
+	0x1a60, 0x1a7c,
+	0x1a7f, 0x1a89,
+	0x1a90, 0x1a99,
+	0x1aa7, 0x1aa7,
+	0x1b00, 0x1b4b,
+	0x1b50, 0x1b59,
+	0x1b6b, 0x1b73,
+	0x1b80, 0x1baa,
+	0x1bae, 0x1bb9,
+	0x1c00, 0x1c37,
+	0x1c40, 0x1c49,
+	0x1c4d, 0x1c7d,
+	0x1cd0, 0x1cd2,
+	0x1cd4, 0x1cf2,
+	0x1d00, 0x1de6,
+	0x1dfd, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x203f, 0x2040,
+	0x2054, 0x2054,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x20d0, 0x20dc,
+	0x20e1, 0x20e1,
+	0x20e5, 0x20f0,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2118, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x2188,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cf1,
+	0x2d00, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x2de0, 0x2dff,
+	0x3005, 0x3007,
+	0x3021, 0x302f,
+	0x3031, 0x3035,
+	0x3038, 0x303c,
+	0x3041, 0x3096,
+	0x3099, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa4d0, 0xa4fd,
+	0xa500, 0xa60c,
+	0xa610, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66f,
+	0xa67c, 0xa67d,
+	0xa67f, 0xa697,
+	0xa6a0, 0xa6f1,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa827,
+	0xa840, 0xa873,
+	0xa880, 0xa8c4,
+	0xa8d0, 0xa8d9,
+	0xa8e0, 0xa8f7,
+	0xa8fb, 0xa8fb,
+	0xa900, 0xa92d,
+	0xa930, 0xa953,
+	0xa960, 0xa97c,
+	0xa980, 0xa9c0,
+	0xa9cf, 0xa9d9,
+	0xaa00, 0xaa36,
+	0xaa40, 0xaa4d,
+	0xaa50, 0xaa59,
+	0xaa60, 0xaa76,
+	0xaa7a, 0xaa7b,
+	0xaa80, 0xaac2,
+	0xaadb, 0xaadd,
+	0xabc0, 0xabea,
+	0xabec, 0xabed,
+	0xabf0, 0xabf9,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb28,
+	0xfb2a, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfd3d,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdfb,
+	0xfe00, 0xfe0f,
+	0xfe20, 0xfe26,
+	0xfe33, 0xfe34,
+	0xfe4d, 0xfe4f,
+	0xfe70, 0xfe74,
+	0xfe76, 0xfefc,
+	0xff10, 0xff19,
+	0xff21, 0xff3a,
+	0xff3f, 0xff3f,
+	0xff41, 0xff5a,
+	0xff66, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10140, 0x10174,
+	0x101fd, 0x101fd,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x103d1, 0x103d5,
+	0x10400, 0x1049d,
+	0x104a0, 0x104a9,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a3f,
+	0x10a60, 0x10a7c,
+	0x10b00, 0x10b35,
+	0x10b40, 0x10b55,
+	0x10b60, 0x10b72,
+	0x10c00, 0x10c48,
+	0x11080, 0x110ba,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x13000, 0x1342e,
+	0x1d165, 0x1d169,
+	0x1d16d, 0x1d172,
+	0x1d17b, 0x1d182,
+	0x1d185, 0x1d18b,
+	0x1d1aa, 0x1d1ad,
+	0x1d242, 0x1d244,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x1d7ce, 0x1d7ff,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+	0xe0100, 0xe01ef,
+}; /* CR_ID_Continue */
+
+/* 'XID_Start': Derived Property */
+static const OnigCodePoint CR_XID_Start[] = {
+	431,
+	0x0041, 0x005a,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0370, 0x0374,
+	0x0376, 0x0377,
+	0x037b, 0x037d,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x0559,
+	0x0561, 0x0587,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f2,
+	0x0621, 0x064a,
+	0x066e, 0x066f,
+	0x0671, 0x06d3,
+	0x06d5, 0x06d5,
+	0x06e5, 0x06e6,
+	0x06ee, 0x06ef,
+	0x06fa, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x0710,
+	0x0712, 0x072f,
+	0x074d, 0x07a5,
+	0x07b1, 0x07b1,
+	0x07ca, 0x07ea,
+	0x07f4, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0800, 0x0815,
+	0x081a, 0x081a,
+	0x0824, 0x0824,
+	0x0828, 0x0828,
+	0x0904, 0x0939,
+	0x093d, 0x093d,
+	0x0950, 0x0950,
+	0x0958, 0x0961,
+	0x0971, 0x0972,
+	0x0979, 0x097f,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bd, 0x09bd,
+	0x09ce, 0x09ce,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e1,
+	0x09f0, 0x09f1,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a72, 0x0a74,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abd, 0x0abd,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae1,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3d, 0x0b3d,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b61,
+	0x0b71, 0x0b71,
+	0x0b83, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bd0, 0x0bd0,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c3d,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c61,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbd, 0x0cbd,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce1,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d3d,
+	0x0d60, 0x0d61,
+	0x0d7a, 0x0d7f,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0e01, 0x0e30,
+	0x0e32, 0x0e32,
+	0x0e40, 0x0e46,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb0,
+	0x0eb2, 0x0eb2,
+	0x0ebd, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f00,
+	0x0f40, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f88, 0x0f8b,
+	0x1000, 0x102a,
+	0x103f, 0x103f,
+	0x1050, 0x1055,
+	0x105a, 0x105d,
+	0x1061, 0x1061,
+	0x1065, 0x1066,
+	0x106e, 0x1070,
+	0x1075, 0x1081,
+	0x108e, 0x108e,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x1380, 0x138f,
+	0x13a0, 0x13f4,
+	0x1401, 0x166c,
+	0x166f, 0x167f,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	0x16ee, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1711,
+	0x1720, 0x1731,
+	0x1740, 0x1751,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1780, 0x17b3,
+	0x17d7, 0x17d7,
+	0x17dc, 0x17dc,
+	0x1820, 0x1877,
+	0x1880, 0x18a8,
+	0x18aa, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1950, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19c1, 0x19c7,
+	0x1a00, 0x1a16,
+	0x1a20, 0x1a54,
+	0x1aa7, 0x1aa7,
+	0x1b05, 0x1b33,
+	0x1b45, 0x1b4b,
+	0x1b83, 0x1ba0,
+	0x1bae, 0x1baf,
+	0x1c00, 0x1c23,
+	0x1c4d, 0x1c4f,
+	0x1c5a, 0x1c7d,
+	0x1ce9, 0x1cec,
+	0x1cee, 0x1cf1,
+	0x1d00, 0x1dbf,
+	0x1e00, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2118, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x2188,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cee,
+	0x2d00, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x3005, 0x3007,
+	0x3021, 0x3029,
+	0x3031, 0x3035,
+	0x3038, 0x303c,
+	0x3041, 0x3096,
+	0x309d, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa4d0, 0xa4fd,
+	0xa500, 0xa60c,
+	0xa610, 0xa61f,
+	0xa62a, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66e,
+	0xa67f, 0xa697,
+	0xa6a0, 0xa6ef,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa801,
+	0xa803, 0xa805,
+	0xa807, 0xa80a,
+	0xa80c, 0xa822,
+	0xa840, 0xa873,
+	0xa882, 0xa8b3,
+	0xa8f2, 0xa8f7,
+	0xa8fb, 0xa8fb,
+	0xa90a, 0xa925,
+	0xa930, 0xa946,
+	0xa960, 0xa97c,
+	0xa984, 0xa9b2,
+	0xa9cf, 0xa9cf,
+	0xaa00, 0xaa28,
+	0xaa40, 0xaa42,
+	0xaa44, 0xaa4b,
+	0xaa60, 0xaa76,
+	0xaa7a, 0xaa7a,
+	0xaa80, 0xaaaf,
+	0xaab1, 0xaab1,
+	0xaab5, 0xaab6,
+	0xaab9, 0xaabd,
+	0xaac0, 0xaac0,
+	0xaac2, 0xaac2,
+	0xaadb, 0xaadd,
+	0xabc0, 0xabe2,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb1d,
+	0xfb1f, 0xfb28,
+	0xfb2a, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfc5d,
+	0xfc64, 0xfd3d,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdf9,
+	0xfe71, 0xfe71,
+	0xfe73, 0xfe73,
+	0xfe77, 0xfe77,
+	0xfe79, 0xfe79,
+	0xfe7b, 0xfe7b,
+	0xfe7d, 0xfe7d,
+	0xfe7f, 0xfefc,
+	0xff21, 0xff3a,
+	0xff41, 0xff5a,
+	0xff66, 0xff9d,
+	0xffa0, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10140, 0x10174,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x103d1, 0x103d5,
+	0x10400, 0x1049d,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a00,
+	0x10a10, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a60, 0x10a7c,
+	0x10b00, 0x10b35,
+	0x10b40, 0x10b55,
+	0x10b60, 0x10b72,
+	0x10c00, 0x10c48,
+	0x11083, 0x110af,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x13000, 0x1342e,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+}; /* CR_XID_Start */
+
+/* 'XID_Continue': Derived Property */
+static const OnigCodePoint CR_XID_Continue[] = {
+	513,
+	0x0030, 0x0039,
+	0x0041, 0x005a,
+	0x005f, 0x005f,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00b7, 0x00b7,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0300, 0x0374,
+	0x0376, 0x0377,
+	0x037b, 0x037d,
+	0x0386, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x0483, 0x0487,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x0559,
+	0x0561, 0x0587,
+	0x0591, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f2,
+	0x0610, 0x061a,
+	0x0621, 0x065e,
+	0x0660, 0x0669,
+	0x066e, 0x06d3,
+	0x06d5, 0x06dc,
+	0x06df, 0x06e8,
+	0x06ea, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x074a,
+	0x074d, 0x07b1,
+	0x07c0, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0800, 0x082d,
+	0x0900, 0x0939,
+	0x093c, 0x094e,
+	0x0950, 0x0955,
+	0x0958, 0x0963,
+	0x0966, 0x096f,
+	0x0971, 0x0972,
+	0x0979, 0x097f,
+	0x0981, 0x0983,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bc, 0x09c4,
+	0x09c7, 0x09c8,
+	0x09cb, 0x09ce,
+	0x09d7, 0x09d7,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e3,
+	0x09e6, 0x09f1,
+	0x0a01, 0x0a03,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a3c, 0x0a3c,
+	0x0a3e, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4d,
+	0x0a51, 0x0a51,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a66, 0x0a75,
+	0x0a81, 0x0a83,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abc, 0x0ac5,
+	0x0ac7, 0x0ac9,
+	0x0acb, 0x0acd,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae3,
+	0x0ae6, 0x0aef,
+	0x0b01, 0x0b03,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3c, 0x0b44,
+	0x0b47, 0x0b48,
+	0x0b4b, 0x0b4d,
+	0x0b56, 0x0b57,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b63,
+	0x0b66, 0x0b6f,
+	0x0b71, 0x0b71,
+	0x0b82, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bbe, 0x0bc2,
+	0x0bc6, 0x0bc8,
+	0x0bca, 0x0bcd,
+	0x0bd0, 0x0bd0,
+	0x0bd7, 0x0bd7,
+	0x0be6, 0x0bef,
+	0x0c01, 0x0c03,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c44,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4d,
+	0x0c55, 0x0c56,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c63,
+	0x0c66, 0x0c6f,
+	0x0c82, 0x0c83,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbc, 0x0cc4,
+	0x0cc6, 0x0cc8,
+	0x0cca, 0x0ccd,
+	0x0cd5, 0x0cd6,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce3,
+	0x0ce6, 0x0cef,
+	0x0d02, 0x0d03,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d44,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4d,
+	0x0d57, 0x0d57,
+	0x0d60, 0x0d63,
+	0x0d66, 0x0d6f,
+	0x0d7a, 0x0d7f,
+	0x0d82, 0x0d83,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0dca, 0x0dca,
+	0x0dcf, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0dd8, 0x0ddf,
+	0x0df2, 0x0df3,
+	0x0e01, 0x0e3a,
+	0x0e40, 0x0e4e,
+	0x0e50, 0x0e59,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb9,
+	0x0ebb, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0ec8, 0x0ecd,
+	0x0ed0, 0x0ed9,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f00,
+	0x0f18, 0x0f19,
+	0x0f20, 0x0f29,
+	0x0f35, 0x0f35,
+	0x0f37, 0x0f37,
+	0x0f39, 0x0f39,
+	0x0f3e, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f71, 0x0f84,
+	0x0f86, 0x0f8b,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x0fc6, 0x0fc6,
+	0x1000, 0x1049,
+	0x1050, 0x109d,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x135f, 0x135f,
+	0x1369, 0x1371,
+	0x1380, 0x138f,
+	0x13a0, 0x13f4,
+	0x1401, 0x166c,
+	0x166f, 0x167f,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	0x16ee, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1714,
+	0x1720, 0x1734,
+	0x1740, 0x1753,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1772, 0x1773,
+	0x1780, 0x17b3,
+	0x17b6, 0x17d3,
+	0x17d7, 0x17d7,
+	0x17dc, 0x17dd,
+	0x17e0, 0x17e9,
+	0x180b, 0x180d,
+	0x1810, 0x1819,
+	0x1820, 0x1877,
+	0x1880, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1920, 0x192b,
+	0x1930, 0x193b,
+	0x1946, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19b0, 0x19c9,
+	0x19d0, 0x19da,
+	0x1a00, 0x1a1b,
+	0x1a20, 0x1a5e,
+	0x1a60, 0x1a7c,
+	0x1a7f, 0x1a89,
+	0x1a90, 0x1a99,
+	0x1aa7, 0x1aa7,
+	0x1b00, 0x1b4b,
+	0x1b50, 0x1b59,
+	0x1b6b, 0x1b73,
+	0x1b80, 0x1baa,
+	0x1bae, 0x1bb9,
+	0x1c00, 0x1c37,
+	0x1c40, 0x1c49,
+	0x1c4d, 0x1c7d,
+	0x1cd0, 0x1cd2,
+	0x1cd4, 0x1cf2,
+	0x1d00, 0x1de6,
+	0x1dfd, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x203f, 0x2040,
+	0x2054, 0x2054,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x20d0, 0x20dc,
+	0x20e1, 0x20e1,
+	0x20e5, 0x20f0,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2118, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x2188,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cf1,
+	0x2d00, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x2de0, 0x2dff,
+	0x3005, 0x3007,
+	0x3021, 0x302f,
+	0x3031, 0x3035,
+	0x3038, 0x303c,
+	0x3041, 0x3096,
+	0x3099, 0x309a,
+	0x309d, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa4d0, 0xa4fd,
+	0xa500, 0xa60c,
+	0xa610, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66f,
+	0xa67c, 0xa67d,
+	0xa67f, 0xa697,
+	0xa6a0, 0xa6f1,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa827,
+	0xa840, 0xa873,
+	0xa880, 0xa8c4,
+	0xa8d0, 0xa8d9,
+	0xa8e0, 0xa8f7,
+	0xa8fb, 0xa8fb,
+	0xa900, 0xa92d,
+	0xa930, 0xa953,
+	0xa960, 0xa97c,
+	0xa980, 0xa9c0,
+	0xa9cf, 0xa9d9,
+	0xaa00, 0xaa36,
+	0xaa40, 0xaa4d,
+	0xaa50, 0xaa59,
+	0xaa60, 0xaa76,
+	0xaa7a, 0xaa7b,
+	0xaa80, 0xaac2,
+	0xaadb, 0xaadd,
+	0xabc0, 0xabea,
+	0xabec, 0xabed,
+	0xabf0, 0xabf9,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb28,
+	0xfb2a, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfc5d,
+	0xfc64, 0xfd3d,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdf9,
+	0xfe00, 0xfe0f,
+	0xfe20, 0xfe26,
+	0xfe33, 0xfe34,
+	0xfe4d, 0xfe4f,
+	0xfe71, 0xfe71,
+	0xfe73, 0xfe73,
+	0xfe77, 0xfe77,
+	0xfe79, 0xfe79,
+	0xfe7b, 0xfe7b,
+	0xfe7d, 0xfe7d,
+	0xfe7f, 0xfefc,
+	0xff10, 0xff19,
+	0xff21, 0xff3a,
+	0xff3f, 0xff3f,
+	0xff41, 0xff5a,
+	0xff66, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10140, 0x10174,
+	0x101fd, 0x101fd,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x103d1, 0x103d5,
+	0x10400, 0x1049d,
+	0x104a0, 0x104a9,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a3f,
+	0x10a60, 0x10a7c,
+	0x10b00, 0x10b35,
+	0x10b40, 0x10b55,
+	0x10b60, 0x10b72,
+	0x10c00, 0x10c48,
+	0x11080, 0x110ba,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x13000, 0x1342e,
+	0x1d165, 0x1d169,
+	0x1d16d, 0x1d172,
+	0x1d17b, 0x1d182,
+	0x1d185, 0x1d18b,
+	0x1d1aa, 0x1d1ad,
+	0x1d242, 0x1d244,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x1d7ce, 0x1d7ff,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+	0xe0100, 0xe01ef,
+}; /* CR_XID_Continue */
+
+/* 'Default_Ignorable_Code_Point': Derived Property */
+static const OnigCodePoint CR_Default_Ignorable_Code_Point[] = {
+	15,
+	0x00ad, 0x00ad,
+	0x034f, 0x034f,
+	0x115f, 0x1160,
+	0x17b4, 0x17b5,
+	0x180b, 0x180d,
+	0x200b, 0x200f,
+	0x202a, 0x202e,
+	0x2060, 0x206f,
+	0x3164, 0x3164,
+	0xfe00, 0xfe0f,
+	0xfeff, 0xfeff,
+	0xffa0, 0xffa0,
+	0xfff0, 0xfff8,
+	0x1d173, 0x1d17a,
+	0xe0000, 0xe0fff,
+}; /* CR_Default_Ignorable_Code_Point */
+
+/* 'Grapheme_Extend': Derived Property */
+static const OnigCodePoint CR_Grapheme_Extend[] = {
+	206,
+	0x0300, 0x036f,
+	0x0483, 0x0489,
+	0x0591, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x0610, 0x061a,
+	0x064b, 0x065e,
+	0x0670, 0x0670,
+	0x06d6, 0x06dc,
+	0x06de, 0x06e4,
+	0x06e7, 0x06e8,
+	0x06ea, 0x06ed,
+	0x0711, 0x0711,
+	0x0730, 0x074a,
+	0x07a6, 0x07b0,
+	0x07eb, 0x07f3,
+	0x0816, 0x0819,
+	0x081b, 0x0823,
+	0x0825, 0x0827,
+	0x0829, 0x082d,
+	0x0900, 0x0902,
+	0x093c, 0x093c,
+	0x0941, 0x0948,
+	0x094d, 0x094d,
+	0x0951, 0x0955,
+	0x0962, 0x0963,
+	0x0981, 0x0981,
+	0x09bc, 0x09bc,
+	0x09be, 0x09be,
+	0x09c1, 0x09c4,
+	0x09cd, 0x09cd,
+	0x09d7, 0x09d7,
+	0x09e2, 0x09e3,
+	0x0a01, 0x0a02,
+	0x0a3c, 0x0a3c,
+	0x0a41, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4d,
+	0x0a51, 0x0a51,
+	0x0a70, 0x0a71,
+	0x0a75, 0x0a75,
+	0x0a81, 0x0a82,
+	0x0abc, 0x0abc,
+	0x0ac1, 0x0ac5,
+	0x0ac7, 0x0ac8,
+	0x0acd, 0x0acd,
+	0x0ae2, 0x0ae3,
+	0x0b01, 0x0b01,
+	0x0b3c, 0x0b3c,
+	0x0b3e, 0x0b3f,
+	0x0b41, 0x0b44,
+	0x0b4d, 0x0b4d,
+	0x0b56, 0x0b57,
+	0x0b62, 0x0b63,
+	0x0b82, 0x0b82,
+	0x0bbe, 0x0bbe,
+	0x0bc0, 0x0bc0,
+	0x0bcd, 0x0bcd,
+	0x0bd7, 0x0bd7,
+	0x0c3e, 0x0c40,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4d,
+	0x0c55, 0x0c56,
+	0x0c62, 0x0c63,
+	0x0cbc, 0x0cbc,
+	0x0cbf, 0x0cbf,
+	0x0cc2, 0x0cc2,
+	0x0cc6, 0x0cc6,
+	0x0ccc, 0x0ccd,
+	0x0cd5, 0x0cd6,
+	0x0ce2, 0x0ce3,
+	0x0d3e, 0x0d3e,
+	0x0d41, 0x0d44,
+	0x0d4d, 0x0d4d,
+	0x0d57, 0x0d57,
+	0x0d62, 0x0d63,
+	0x0dca, 0x0dca,
+	0x0dcf, 0x0dcf,
+	0x0dd2, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0ddf, 0x0ddf,
+	0x0e31, 0x0e31,
+	0x0e34, 0x0e3a,
+	0x0e47, 0x0e4e,
+	0x0eb1, 0x0eb1,
+	0x0eb4, 0x0eb9,
+	0x0ebb, 0x0ebc,
+	0x0ec8, 0x0ecd,
+	0x0f18, 0x0f19,
+	0x0f35, 0x0f35,
+	0x0f37, 0x0f37,
+	0x0f39, 0x0f39,
+	0x0f71, 0x0f7e,
+	0x0f80, 0x0f84,
+	0x0f86, 0x0f87,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x0fc6, 0x0fc6,
+	0x102d, 0x1030,
+	0x1032, 0x1037,
+	0x1039, 0x103a,
+	0x103d, 0x103e,
+	0x1058, 0x1059,
+	0x105e, 0x1060,
+	0x1071, 0x1074,
+	0x1082, 0x1082,
+	0x1085, 0x1086,
+	0x108d, 0x108d,
+	0x109d, 0x109d,
+	0x135f, 0x135f,
+	0x1712, 0x1714,
+	0x1732, 0x1734,
+	0x1752, 0x1753,
+	0x1772, 0x1773,
+	0x17b7, 0x17bd,
+	0x17c6, 0x17c6,
+	0x17c9, 0x17d3,
+	0x17dd, 0x17dd,
+	0x180b, 0x180d,
+	0x18a9, 0x18a9,
+	0x1920, 0x1922,
+	0x1927, 0x1928,
+	0x1932, 0x1932,
+	0x1939, 0x193b,
+	0x1a17, 0x1a18,
+	0x1a56, 0x1a56,
+	0x1a58, 0x1a5e,
+	0x1a60, 0x1a60,
+	0x1a62, 0x1a62,
+	0x1a65, 0x1a6c,
+	0x1a73, 0x1a7c,
+	0x1a7f, 0x1a7f,
+	0x1b00, 0x1b03,
+	0x1b34, 0x1b34,
+	0x1b36, 0x1b3a,
+	0x1b3c, 0x1b3c,
+	0x1b42, 0x1b42,
+	0x1b6b, 0x1b73,
+	0x1b80, 0x1b81,
+	0x1ba2, 0x1ba5,
+	0x1ba8, 0x1ba9,
+	0x1c2c, 0x1c33,
+	0x1c36, 0x1c37,
+	0x1cd0, 0x1cd2,
+	0x1cd4, 0x1ce0,
+	0x1ce2, 0x1ce8,
+	0x1ced, 0x1ced,
+	0x1dc0, 0x1de6,
+	0x1dfd, 0x1dff,
+	0x200c, 0x200d,
+	0x20d0, 0x20f0,
+	0x2cef, 0x2cf1,
+	0x2de0, 0x2dff,
+	0x302a, 0x302f,
+	0x3099, 0x309a,
+	0xa66f, 0xa672,
+	0xa67c, 0xa67d,
+	0xa6f0, 0xa6f1,
+	0xa802, 0xa802,
+	0xa806, 0xa806,
+	0xa80b, 0xa80b,
+	0xa825, 0xa826,
+	0xa8c4, 0xa8c4,
+	0xa8e0, 0xa8f1,
+	0xa926, 0xa92d,
+	0xa947, 0xa951,
+	0xa980, 0xa982,
+	0xa9b3, 0xa9b3,
+	0xa9b6, 0xa9b9,
+	0xa9bc, 0xa9bc,
+	0xaa29, 0xaa2e,
+	0xaa31, 0xaa32,
+	0xaa35, 0xaa36,
+	0xaa43, 0xaa43,
+	0xaa4c, 0xaa4c,
+	0xaab0, 0xaab0,
+	0xaab2, 0xaab4,
+	0xaab7, 0xaab8,
+	0xaabe, 0xaabf,
+	0xaac1, 0xaac1,
+	0xabe5, 0xabe5,
+	0xabe8, 0xabe8,
+	0xabed, 0xabed,
+	0xfb1e, 0xfb1e,
+	0xfe00, 0xfe0f,
+	0xfe20, 0xfe26,
+	0xff9e, 0xff9f,
+	0x101fd, 0x101fd,
+	0x10a01, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a0f,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a3f,
+	0x11080, 0x11081,
+	0x110b3, 0x110b6,
+	0x110b9, 0x110ba,
+	0x1d165, 0x1d165,
+	0x1d167, 0x1d169,
+	0x1d16e, 0x1d172,
+	0x1d17b, 0x1d182,
+	0x1d185, 0x1d18b,
+	0x1d1aa, 0x1d1ad,
+	0x1d242, 0x1d244,
+	0xe0100, 0xe01ef,
+}; /* CR_Grapheme_Extend */
+
+/* 'Grapheme_Base': Derived Property */
+static const OnigCodePoint CR_Grapheme_Base[] = {
+	567,
+	0x0020, 0x007e,
+	0x00a0, 0x00ac,
+	0x00ae, 0x02ff,
+	0x0370, 0x0377,
+	0x037a, 0x037e,
+	0x0384, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x0482,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x055f,
+	0x0561, 0x0587,
+	0x0589, 0x058a,
+	0x05be, 0x05be,
+	0x05c0, 0x05c0,
+	0x05c3, 0x05c3,
+	0x05c6, 0x05c6,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f4,
+	0x0606, 0x060f,
+	0x061b, 0x061b,
+	0x061e, 0x061f,
+	0x0621, 0x064a,
+	0x0660, 0x066f,
+	0x0671, 0x06d5,
+	0x06e5, 0x06e6,
+	0x06e9, 0x06e9,
+	0x06ee, 0x070d,
+	0x0710, 0x0710,
+	0x0712, 0x072f,
+	0x074d, 0x07a5,
+	0x07b1, 0x07b1,
+	0x07c0, 0x07ea,
+	0x07f4, 0x07fa,
+	0x0800, 0x0815,
+	0x081a, 0x081a,
+	0x0824, 0x0824,
+	0x0828, 0x0828,
+	0x0830, 0x083e,
+	0x0903, 0x0939,
+	0x093d, 0x0940,
+	0x0949, 0x094c,
+	0x094e, 0x094e,
+	0x0950, 0x0950,
+	0x0958, 0x0961,
+	0x0964, 0x0972,
+	0x0979, 0x097f,
+	0x0982, 0x0983,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bd, 0x09bd,
+	0x09bf, 0x09c0,
+	0x09c7, 0x09c8,
+	0x09cb, 0x09cc,
+	0x09ce, 0x09ce,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e1,
+	0x09e6, 0x09fb,
+	0x0a03, 0x0a03,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a3e, 0x0a40,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a66, 0x0a6f,
+	0x0a72, 0x0a74,
+	0x0a83, 0x0a83,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abd, 0x0ac0,
+	0x0ac9, 0x0ac9,
+	0x0acb, 0x0acc,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae1,
+	0x0ae6, 0x0aef,
+	0x0af1, 0x0af1,
+	0x0b02, 0x0b03,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3d, 0x0b3d,
+	0x0b40, 0x0b40,
+	0x0b47, 0x0b48,
+	0x0b4b, 0x0b4c,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b61,
+	0x0b66, 0x0b71,
+	0x0b83, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bbf, 0x0bbf,
+	0x0bc1, 0x0bc2,
+	0x0bc6, 0x0bc8,
+	0x0bca, 0x0bcc,
+	0x0bd0, 0x0bd0,
+	0x0be6, 0x0bfa,
+	0x0c01, 0x0c03,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c3d,
+	0x0c41, 0x0c44,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c61,
+	0x0c66, 0x0c6f,
+	0x0c78, 0x0c7f,
+	0x0c82, 0x0c83,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbd, 0x0cbe,
+	0x0cc0, 0x0cc1,
+	0x0cc3, 0x0cc4,
+	0x0cc7, 0x0cc8,
+	0x0cca, 0x0ccb,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce1,
+	0x0ce6, 0x0cef,
+	0x0cf1, 0x0cf2,
+	0x0d02, 0x0d03,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d3d,
+	0x0d3f, 0x0d40,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4c,
+	0x0d60, 0x0d61,
+	0x0d66, 0x0d75,
+	0x0d79, 0x0d7f,
+	0x0d82, 0x0d83,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0dd0, 0x0dd1,
+	0x0dd8, 0x0dde,
+	0x0df2, 0x0df4,
+	0x0e01, 0x0e30,
+	0x0e32, 0x0e33,
+	0x0e3f, 0x0e46,
+	0x0e4f, 0x0e5b,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb0,
+	0x0eb2, 0x0eb3,
+	0x0ebd, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0ed0, 0x0ed9,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f17,
+	0x0f1a, 0x0f34,
+	0x0f36, 0x0f36,
+	0x0f38, 0x0f38,
+	0x0f3a, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f7f, 0x0f7f,
+	0x0f85, 0x0f85,
+	0x0f88, 0x0f8b,
+	0x0fbe, 0x0fc5,
+	0x0fc7, 0x0fcc,
+	0x0fce, 0x0fd8,
+	0x1000, 0x102c,
+	0x1031, 0x1031,
+	0x1038, 0x1038,
+	0x103b, 0x103c,
+	0x103f, 0x1057,
+	0x105a, 0x105d,
+	0x1061, 0x1070,
+	0x1075, 0x1081,
+	0x1083, 0x1084,
+	0x1087, 0x108c,
+	0x108e, 0x109c,
+	0x109e, 0x10c5,
+	0x10d0, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x1360, 0x137c,
+	0x1380, 0x1399,
+	0x13a0, 0x13f4,
+	0x1400, 0x169c,
+	0x16a0, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1711,
+	0x1720, 0x1731,
+	0x1735, 0x1736,
+	0x1740, 0x1751,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1780, 0x17b3,
+	0x17b6, 0x17b6,
+	0x17be, 0x17c5,
+	0x17c7, 0x17c8,
+	0x17d4, 0x17dc,
+	0x17e0, 0x17e9,
+	0x17f0, 0x17f9,
+	0x1800, 0x180a,
+	0x180e, 0x180e,
+	0x1810, 0x1819,
+	0x1820, 0x1877,
+	0x1880, 0x18a8,
+	0x18aa, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1923, 0x1926,
+	0x1929, 0x192b,
+	0x1930, 0x1931,
+	0x1933, 0x1938,
+	0x1940, 0x1940,
+	0x1944, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19b0, 0x19c9,
+	0x19d0, 0x19da,
+	0x19de, 0x1a16,
+	0x1a19, 0x1a1b,
+	0x1a1e, 0x1a55,
+	0x1a57, 0x1a57,
+	0x1a61, 0x1a61,
+	0x1a63, 0x1a64,
+	0x1a6d, 0x1a72,
+	0x1a80, 0x1a89,
+	0x1a90, 0x1a99,
+	0x1aa0, 0x1aad,
+	0x1b04, 0x1b33,
+	0x1b35, 0x1b35,
+	0x1b3b, 0x1b3b,
+	0x1b3d, 0x1b41,
+	0x1b43, 0x1b4b,
+	0x1b50, 0x1b6a,
+	0x1b74, 0x1b7c,
+	0x1b82, 0x1ba1,
+	0x1ba6, 0x1ba7,
+	0x1baa, 0x1baa,
+	0x1bae, 0x1bb9,
+	0x1c00, 0x1c2b,
+	0x1c34, 0x1c35,
+	0x1c3b, 0x1c49,
+	0x1c4d, 0x1c7f,
+	0x1cd3, 0x1cd3,
+	0x1ce1, 0x1ce1,
+	0x1ce9, 0x1cec,
+	0x1cee, 0x1cf2,
+	0x1d00, 0x1dbf,
+	0x1e00, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fc4,
+	0x1fc6, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fdd, 0x1fef,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffe,
+	0x2000, 0x200a,
+	0x2010, 0x2027,
+	0x202f, 0x205f,
+	0x2070, 0x2071,
+	0x2074, 0x208e,
+	0x2090, 0x2094,
+	0x20a0, 0x20b8,
+	0x2100, 0x2189,
+	0x2190, 0x23e8,
+	0x2400, 0x2426,
+	0x2440, 0x244a,
+	0x2460, 0x26cd,
+	0x26cf, 0x26e1,
+	0x26e3, 0x26e3,
+	0x26e8, 0x26ff,
+	0x2701, 0x2704,
+	0x2706, 0x2709,
+	0x270c, 0x2727,
+	0x2729, 0x274b,
+	0x274d, 0x274d,
+	0x274f, 0x2752,
+	0x2756, 0x275e,
+	0x2761, 0x2794,
+	0x2798, 0x27af,
+	0x27b1, 0x27be,
+	0x27c0, 0x27ca,
+	0x27cc, 0x27cc,
+	0x27d0, 0x2b4c,
+	0x2b50, 0x2b59,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2cee,
+	0x2cf9, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x2e00, 0x2e31,
+	0x2e80, 0x2e99,
+	0x2e9b, 0x2ef3,
+	0x2f00, 0x2fd5,
+	0x2ff0, 0x2ffb,
+	0x3000, 0x3029,
+	0x3030, 0x303f,
+	0x3041, 0x3096,
+	0x309b, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x3190, 0x31b7,
+	0x31c0, 0x31e3,
+	0x31f0, 0x321e,
+	0x3220, 0x32fe,
+	0x3300, 0x4db5,
+	0x4dc0, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa490, 0xa4c6,
+	0xa4d0, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66e,
+	0xa673, 0xa673,
+	0xa67e, 0xa697,
+	0xa6a0, 0xa6ef,
+	0xa6f2, 0xa6f7,
+	0xa700, 0xa78c,
+	0xa7fb, 0xa801,
+	0xa803, 0xa805,
+	0xa807, 0xa80a,
+	0xa80c, 0xa824,
+	0xa827, 0xa82b,
+	0xa830, 0xa839,
+	0xa840, 0xa877,
+	0xa880, 0xa8c3,
+	0xa8ce, 0xa8d9,
+	0xa8f2, 0xa8fb,
+	0xa900, 0xa925,
+	0xa92e, 0xa946,
+	0xa952, 0xa953,
+	0xa95f, 0xa97c,
+	0xa983, 0xa9b2,
+	0xa9b4, 0xa9b5,
+	0xa9ba, 0xa9bb,
+	0xa9bd, 0xa9cd,
+	0xa9cf, 0xa9d9,
+	0xa9de, 0xa9df,
+	0xaa00, 0xaa28,
+	0xaa2f, 0xaa30,
+	0xaa33, 0xaa34,
+	0xaa40, 0xaa42,
+	0xaa44, 0xaa4b,
+	0xaa4d, 0xaa4d,
+	0xaa50, 0xaa59,
+	0xaa5c, 0xaa7b,
+	0xaa80, 0xaaaf,
+	0xaab1, 0xaab1,
+	0xaab5, 0xaab6,
+	0xaab9, 0xaabd,
+	0xaac0, 0xaac0,
+	0xaac2, 0xaac2,
+	0xaadb, 0xaadf,
+	0xabc0, 0xabe4,
+	0xabe6, 0xabe7,
+	0xabe9, 0xabec,
+	0xabf0, 0xabf9,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb1d,
+	0xfb1f, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfd3f,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdfd,
+	0xfe10, 0xfe19,
+	0xfe30, 0xfe52,
+	0xfe54, 0xfe66,
+	0xfe68, 0xfe6b,
+	0xfe70, 0xfe74,
+	0xfe76, 0xfefc,
+	0xff01, 0xff9d,
+	0xffa0, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0xffe0, 0xffe6,
+	0xffe8, 0xffee,
+	0xfffc, 0xfffd,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10100, 0x10102,
+	0x10107, 0x10133,
+	0x10137, 0x1018a,
+	0x10190, 0x1019b,
+	0x101d0, 0x101fc,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10320, 0x10323,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x1039f, 0x103c3,
+	0x103c8, 0x103d5,
+	0x10400, 0x1049d,
+	0x104a0, 0x104a9,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10857, 0x1085f,
+	0x10900, 0x1091b,
+	0x1091f, 0x10939,
+	0x1093f, 0x1093f,
+	0x10a00, 0x10a00,
+	0x10a10, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a40, 0x10a47,
+	0x10a50, 0x10a58,
+	0x10a60, 0x10a7f,
+	0x10b00, 0x10b35,
+	0x10b39, 0x10b55,
+	0x10b58, 0x10b72,
+	0x10b78, 0x10b7f,
+	0x10c00, 0x10c48,
+	0x10e60, 0x10e7e,
+	0x11082, 0x110b2,
+	0x110b7, 0x110b8,
+	0x110bb, 0x110bc,
+	0x110be, 0x110c1,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x12470, 0x12473,
+	0x13000, 0x1342e,
+	0x1d000, 0x1d0f5,
+	0x1d100, 0x1d126,
+	0x1d129, 0x1d164,
+	0x1d166, 0x1d166,
+	0x1d16a, 0x1d16d,
+	0x1d183, 0x1d184,
+	0x1d18c, 0x1d1a9,
+	0x1d1ae, 0x1d1dd,
+	0x1d200, 0x1d241,
+	0x1d245, 0x1d245,
+	0x1d300, 0x1d356,
+	0x1d360, 0x1d371,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d7cb,
+	0x1d7ce, 0x1d7ff,
+	0x1f000, 0x1f02b,
+	0x1f030, 0x1f093,
+	0x1f100, 0x1f10a,
+	0x1f110, 0x1f12e,
+	0x1f131, 0x1f131,
+	0x1f13d, 0x1f13d,
+	0x1f13f, 0x1f13f,
+	0x1f142, 0x1f142,
+	0x1f146, 0x1f146,
+	0x1f14a, 0x1f14e,
+	0x1f157, 0x1f157,
+	0x1f15f, 0x1f15f,
+	0x1f179, 0x1f179,
+	0x1f17b, 0x1f17c,
+	0x1f17f, 0x1f17f,
+	0x1f18a, 0x1f18d,
+	0x1f190, 0x1f190,
+	0x1f200, 0x1f200,
+	0x1f210, 0x1f231,
+	0x1f240, 0x1f248,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+}; /* CR_Grapheme_Base */
+
+/* 'Grapheme_Link': Derived Property */
+static const OnigCodePoint CR_Grapheme_Link[] = {
+	26,
+	0x094d, 0x094d,
+	0x09cd, 0x09cd,
+	0x0a4d, 0x0a4d,
+	0x0acd, 0x0acd,
+	0x0b4d, 0x0b4d,
+	0x0bcd, 0x0bcd,
+	0x0c4d, 0x0c4d,
+	0x0ccd, 0x0ccd,
+	0x0d4d, 0x0d4d,
+	0x0dca, 0x0dca,
+	0x0e3a, 0x0e3a,
+	0x0f84, 0x0f84,
+	0x1039, 0x103a,
+	0x1714, 0x1714,
+	0x1734, 0x1734,
+	0x17d2, 0x17d2,
+	0x1a60, 0x1a60,
+	0x1b44, 0x1b44,
+	0x1baa, 0x1baa,
+	0xa806, 0xa806,
+	0xa8c4, 0xa8c4,
+	0xa953, 0xa953,
+	0xa9c0, 0xa9c0,
+	0xabed, 0xabed,
+	0x10a3f, 0x10a3f,
+	0x110b9, 0x110b9,
+}; /* CR_Grapheme_Link */
+
 /* 'Common': Script */
 static const OnigCodePoint CR_Common[] = {
 	159,
@@ -9834,10 +17139,891 @@
 	1,
 	0x11080, 0x110c1,
 }; /* CR_Kaithi */
+
+/* 'White_Space': Binary Property */
+static const OnigCodePoint CR_White_Space[] = {
+	11,
+	0x0009, 0x000d,
+	0x0020, 0x0020,
+	0x0085, 0x0085,
+	0x00a0, 0x00a0,
+	0x1680, 0x1680,
+	0x180e, 0x180e,
+	0x2000, 0x200a,
+	0x2028, 0x2029,
+	0x202f, 0x202f,
+	0x205f, 0x205f,
+	0x3000, 0x3000,
+}; /* CR_White_Space */
+
+/* 'Bidi_Control': Binary Property */
+static const OnigCodePoint CR_Bidi_Control[] = {
+	2,
+	0x200e, 0x200f,
+	0x202a, 0x202e,
+}; /* CR_Bidi_Control */
+
+/* 'Join_Control': Binary Property */
+static const OnigCodePoint CR_Join_Control[] = {
+	1,
+	0x200c, 0x200d,
+}; /* CR_Join_Control */
+
+/* 'Dash': Binary Property */
+static const OnigCodePoint CR_Dash[] = {
+	19,
+	0x002d, 0x002d,
+	0x058a, 0x058a,
+	0x05be, 0x05be,
+	0x1400, 0x1400,
+	0x1806, 0x1806,
+	0x2010, 0x2015,
+	0x2053, 0x2053,
+	0x207b, 0x207b,
+	0x208b, 0x208b,
+	0x2212, 0x2212,
+	0x2e17, 0x2e17,
+	0x2e1a, 0x2e1a,
+	0x301c, 0x301c,
+	0x3030, 0x3030,
+	0x30a0, 0x30a0,
+	0xfe31, 0xfe32,
+	0xfe58, 0xfe58,
+	0xfe63, 0xfe63,
+	0xff0d, 0xff0d,
+}; /* CR_Dash */
+
+/* 'Hyphen': Binary Property */
+static const OnigCodePoint CR_Hyphen[] = {
+	10,
+	0x002d, 0x002d,
+	0x00ad, 0x00ad,
+	0x058a, 0x058a,
+	0x1806, 0x1806,
+	0x2010, 0x2011,
+	0x2e17, 0x2e17,
+	0x30fb, 0x30fb,
+	0xfe63, 0xfe63,
+	0xff0d, 0xff0d,
+	0xff65, 0xff65,
+}; /* CR_Hyphen */
+
+/* 'Quotation_Mark': Binary Property */
+static const OnigCodePoint CR_Quotation_Mark[] = {
+	12,
+	0x0022, 0x0022,
+	0x0027, 0x0027,
+	0x00ab, 0x00ab,
+	0x00bb, 0x00bb,
+	0x2018, 0x201f,
+	0x2039, 0x203a,
+	0x300c, 0x300f,
+	0x301d, 0x301f,
+	0xfe41, 0xfe44,
+	0xff02, 0xff02,
+	0xff07, 0xff07,
+	0xff62, 0xff63,
+}; /* CR_Quotation_Mark */
+
+/* 'Terminal_Punctuation': Binary Property */
+static const OnigCodePoint CR_Terminal_Punctuation[] = {
+	65,
+	0x0021, 0x0021,
+	0x002c, 0x002c,
+	0x002e, 0x002e,
+	0x003a, 0x003b,
+	0x003f, 0x003f,
+	0x037e, 0x037e,
+	0x0387, 0x0387,
+	0x0589, 0x0589,
+	0x05c3, 0x05c3,
+	0x060c, 0x060c,
+	0x061b, 0x061b,
+	0x061f, 0x061f,
+	0x06d4, 0x06d4,
+	0x0700, 0x070a,
+	0x070c, 0x070c,
+	0x07f8, 0x07f9,
+	0x0830, 0x083e,
+	0x0964, 0x0965,
+	0x0e5a, 0x0e5b,
+	0x0f08, 0x0f08,
+	0x0f0d, 0x0f12,
+	0x104a, 0x104b,
+	0x1361, 0x1368,
+	0x166d, 0x166e,
+	0x16eb, 0x16ed,
+	0x17d4, 0x17d6,
+	0x17da, 0x17da,
+	0x1802, 0x1805,
+	0x1808, 0x1809,
+	0x1944, 0x1945,
+	0x1aa8, 0x1aab,
+	0x1b5a, 0x1b5b,
+	0x1b5d, 0x1b5f,
+	0x1c3b, 0x1c3f,
+	0x1c7e, 0x1c7f,
+	0x203c, 0x203d,
+	0x2047, 0x2049,
+	0x2e2e, 0x2e2e,
+	0x3001, 0x3002,
+	0xa4fe, 0xa4ff,
+	0xa60d, 0xa60f,
+	0xa6f3, 0xa6f7,
+	0xa876, 0xa877,
+	0xa8ce, 0xa8cf,
+	0xa92f, 0xa92f,
+	0xa9c7, 0xa9c9,
+	0xaa5d, 0xaa5f,
+	0xaadf, 0xaadf,
+	0xabeb, 0xabeb,
+	0xfe50, 0xfe52,
+	0xfe54, 0xfe57,
+	0xff01, 0xff01,
+	0xff0c, 0xff0c,
+	0xff0e, 0xff0e,
+	0xff1a, 0xff1b,
+	0xff1f, 0xff1f,
+	0xff61, 0xff61,
+	0xff64, 0xff64,
+	0x1039f, 0x1039f,
+	0x103d0, 0x103d0,
+	0x10857, 0x10857,
+	0x1091f, 0x1091f,
+	0x10b3a, 0x10b3f,
+	0x110be, 0x110c1,
+	0x12470, 0x12473,
+}; /* CR_Terminal_Punctuation */
+
+/* 'Other_Math': Binary Property */
+static const OnigCodePoint CR_Other_Math[] = {
+	99,
+	0x005e, 0x005e,
+	0x03d0, 0x03d2,
+	0x03d5, 0x03d5,
+	0x03f0, 0x03f1,
+	0x03f4, 0x03f5,
+	0x2016, 0x2016,
+	0x2032, 0x2034,
+	0x2040, 0x2040,
+	0x2061, 0x2064,
+	0x207d, 0x207e,
+	0x208d, 0x208e,
+	0x20d0, 0x20dc,
+	0x20e1, 0x20e1,
+	0x20e5, 0x20e6,
+	0x20eb, 0x20ef,
+	0x2102, 0x2102,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2119, 0x211d,
+	0x2124, 0x2124,
+	0x2128, 0x2129,
+	0x212c, 0x212d,
+	0x212f, 0x2131,
+	0x2133, 0x2138,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x2195, 0x2199,
+	0x219c, 0x219f,
+	0x21a1, 0x21a2,
+	0x21a4, 0x21a5,
+	0x21a7, 0x21a7,
+	0x21a9, 0x21ad,
+	0x21b0, 0x21b1,
+	0x21b6, 0x21b7,
+	0x21bc, 0x21cd,
+	0x21d0, 0x21d1,
+	0x21d3, 0x21d3,
+	0x21d5, 0x21db,
+	0x21dd, 0x21dd,
+	0x21e4, 0x21e5,
+	0x23b4, 0x23b5,
+	0x23b7, 0x23b7,
+	0x23d0, 0x23d0,
+	0x23e2, 0x23e2,
+	0x25a0, 0x25a1,
+	0x25ae, 0x25b6,
+	0x25bc, 0x25c0,
+	0x25c6, 0x25c7,
+	0x25ca, 0x25cb,
+	0x25cf, 0x25d3,
+	0x25e2, 0x25e2,
+	0x25e4, 0x25e4,
+	0x25e7, 0x25ec,
+	0x2605, 0x2606,
+	0x2640, 0x2640,
+	0x2642, 0x2642,
+	0x2660, 0x2663,
+	0x266d, 0x266e,
+	0x27c5, 0x27c6,
+	0x27e6, 0x27ef,
+	0x2983, 0x2998,
+	0x29d8, 0x29db,
+	0x29fc, 0x29fd,
+	0xfe61, 0xfe61,
+	0xfe63, 0xfe63,
+	0xfe68, 0xfe68,
+	0xff3c, 0xff3c,
+	0xff3e, 0xff3e,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x1d7ce, 0x1d7ff,
+}; /* CR_Other_Math */
+
+/* 'Hex_Digit': Binary Property */
+static const OnigCodePoint CR_Hex_Digit[] = {
+	6,
+	0x0030, 0x0039,
+	0x0041, 0x0046,
+	0x0061, 0x0066,
+	0xff10, 0xff19,
+	0xff21, 0xff26,
+	0xff41, 0xff46,
+}; /* CR_Hex_Digit */
+
+/* 'ASCII_Hex_Digit': Binary Property */
+static const OnigCodePoint CR_ASCII_Hex_Digit[] = {
+	3,
+	0x0030, 0x0039,
+	0x0041, 0x0046,
+	0x0061, 0x0066,
+}; /* CR_ASCII_Hex_Digit */
+
+/* 'Other_Alphabetic': Binary Property */
+static const OnigCodePoint CR_Other_Alphabetic[] = {
+	141,
+	0x0345, 0x0345,
+	0x05b0, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x0610, 0x061a,
+	0x064b, 0x0657,
+	0x0659, 0x065e,
+	0x0670, 0x0670,
+	0x06d6, 0x06dc,
+	0x06e1, 0x06e4,
+	0x06e7, 0x06e8,
+	0x06ed, 0x06ed,
+	0x0711, 0x0711,
+	0x0730, 0x073f,
+	0x07a6, 0x07b0,
+	0x0816, 0x0817,
+	0x081b, 0x0823,
+	0x0825, 0x0827,
+	0x0829, 0x082c,
+	0x0900, 0x0903,
+	0x093e, 0x094c,
+	0x094e, 0x094e,
+	0x0955, 0x0955,
+	0x0962, 0x0963,
+	0x0981, 0x0983,
+	0x09be, 0x09c4,
+	0x09c7, 0x09c8,
+	0x09cb, 0x09cc,
+	0x09d7, 0x09d7,
+	0x09e2, 0x09e3,
+	0x0a01, 0x0a03,
+	0x0a3e, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4c,
+	0x0a51, 0x0a51,
+	0x0a70, 0x0a71,
+	0x0a75, 0x0a75,
+	0x0a81, 0x0a83,
+	0x0abe, 0x0ac5,
+	0x0ac7, 0x0ac9,
+	0x0acb, 0x0acc,
+	0x0ae2, 0x0ae3,
+	0x0b01, 0x0b03,
+	0x0b3e, 0x0b44,
+	0x0b47, 0x0b48,
+	0x0b4b, 0x0b4c,
+	0x0b56, 0x0b57,
+	0x0b62, 0x0b63,
+	0x0b82, 0x0b82,
+	0x0bbe, 0x0bc2,
+	0x0bc6, 0x0bc8,
+	0x0bca, 0x0bcc,
+	0x0bd7, 0x0bd7,
+	0x0c01, 0x0c03,
+	0x0c3e, 0x0c44,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4c,
+	0x0c55, 0x0c56,
+	0x0c62, 0x0c63,
+	0x0c82, 0x0c83,
+	0x0cbe, 0x0cc4,
+	0x0cc6, 0x0cc8,
+	0x0cca, 0x0ccc,
+	0x0cd5, 0x0cd6,
+	0x0ce2, 0x0ce3,
+	0x0d02, 0x0d03,
+	0x0d3e, 0x0d44,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4c,
+	0x0d57, 0x0d57,
+	0x0d62, 0x0d63,
+	0x0d82, 0x0d83,
+	0x0dcf, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0dd8, 0x0ddf,
+	0x0df2, 0x0df3,
+	0x0e31, 0x0e31,
+	0x0e34, 0x0e3a,
+	0x0e4d, 0x0e4d,
+	0x0eb1, 0x0eb1,
+	0x0eb4, 0x0eb9,
+	0x0ebb, 0x0ebc,
+	0x0ecd, 0x0ecd,
+	0x0f71, 0x0f81,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x102b, 0x1036,
+	0x1038, 0x1038,
+	0x103b, 0x103e,
+	0x1056, 0x1059,
+	0x105e, 0x1060,
+	0x1062, 0x1062,
+	0x1067, 0x1068,
+	0x1071, 0x1074,
+	0x1082, 0x1086,
+	0x109c, 0x109d,
+	0x135f, 0x135f,
+	0x1712, 0x1713,
+	0x1732, 0x1733,
+	0x1752, 0x1753,
+	0x1772, 0x1773,
+	0x17b6, 0x17c8,
+	0x18a9, 0x18a9,
+	0x1920, 0x192b,
+	0x1930, 0x1938,
+	0x19b0, 0x19c0,
+	0x19c8, 0x19c9,
+	0x1a17, 0x1a1b,
+	0x1a55, 0x1a5e,
+	0x1a61, 0x1a74,
+	0x1b00, 0x1b04,
+	0x1b35, 0x1b43,
+	0x1b80, 0x1b82,
+	0x1ba1, 0x1ba9,
+	0x1c24, 0x1c35,
+	0x1cf2, 0x1cf2,
+	0x24b6, 0x24e9,
+	0x2de0, 0x2dff,
+	0xa823, 0xa827,
+	0xa880, 0xa881,
+	0xa8b4, 0xa8c3,
+	0xa926, 0xa92a,
+	0xa947, 0xa952,
+	0xa980, 0xa983,
+	0xa9b3, 0xa9bf,
+	0xaa29, 0xaa36,
+	0xaa43, 0xaa43,
+	0xaa4c, 0xaa4d,
+	0xaab0, 0xaab0,
+	0xaab2, 0xaab4,
+	0xaab7, 0xaab8,
+	0xaabe, 0xaabe,
+	0xabe3, 0xabea,
+	0xfb1e, 0xfb1e,
+	0x10a01, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a0f,
+	0x11082, 0x11082,
+	0x110b0, 0x110b8,
+}; /* CR_Other_Alphabetic */
+
+/* 'Ideographic': Binary Property */
+static const OnigCodePoint CR_Ideographic[] = {
+	11,
+	0x3006, 0x3007,
+	0x3021, 0x3029,
+	0x3038, 0x303a,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+}; /* CR_Ideographic */
+
+/* 'Diacritic': Binary Property */
+static const OnigCodePoint CR_Diacritic[] = {
+	117,
+	0x005e, 0x005e,
+	0x0060, 0x0060,
+	0x00a8, 0x00a8,
+	0x00af, 0x00af,
+	0x00b4, 0x00b4,
+	0x00b7, 0x00b8,
+	0x02b0, 0x034e,
+	0x0350, 0x0357,
+	0x035d, 0x0362,
+	0x0374, 0x0375,
+	0x037a, 0x037a,
+	0x0384, 0x0385,
+	0x0483, 0x0487,
+	0x0559, 0x0559,
+	0x0591, 0x05a1,
+	0x05a3, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c4,
+	0x064b, 0x0652,
+	0x0657, 0x0658,
+	0x06df, 0x06e0,
+	0x06e5, 0x06e6,
+	0x06ea, 0x06ec,
+	0x0730, 0x074a,
+	0x07a6, 0x07b0,
+	0x07eb, 0x07f5,
+	0x0818, 0x0819,
+	0x093c, 0x093c,
+	0x094d, 0x094d,
+	0x0951, 0x0954,
+	0x0971, 0x0971,
+	0x09bc, 0x09bc,
+	0x09cd, 0x09cd,
+	0x0a3c, 0x0a3c,
+	0x0a4d, 0x0a4d,
+	0x0abc, 0x0abc,
+	0x0acd, 0x0acd,
+	0x0b3c, 0x0b3c,
+	0x0b4d, 0x0b4d,
+	0x0bcd, 0x0bcd,
+	0x0c4d, 0x0c4d,
+	0x0cbc, 0x0cbc,
+	0x0ccd, 0x0ccd,
+	0x0d4d, 0x0d4d,
+	0x0dca, 0x0dca,
+	0x0e47, 0x0e4c,
+	0x0e4e, 0x0e4e,
+	0x0ec8, 0x0ecc,
+	0x0f18, 0x0f19,
+	0x0f35, 0x0f35,
+	0x0f37, 0x0f37,
+	0x0f39, 0x0f39,
+	0x0f3e, 0x0f3f,
+	0x0f82, 0x0f84,
+	0x0f86, 0x0f87,
+	0x0fc6, 0x0fc6,
+	0x1037, 0x1037,
+	0x1039, 0x103a,
+	0x1087, 0x108d,
+	0x108f, 0x108f,
+	0x109a, 0x109b,
+	0x17c9, 0x17d3,
+	0x17dd, 0x17dd,
+	0x1939, 0x193b,
+	0x1a75, 0x1a7c,
+	0x1a7f, 0x1a7f,
+	0x1b34, 0x1b34,
+	0x1b44, 0x1b44,
+	0x1b6b, 0x1b73,
+	0x1baa, 0x1baa,
+	0x1c36, 0x1c37,
+	0x1c78, 0x1c7d,
+	0x1cd0, 0x1ce8,
+	0x1ced, 0x1ced,
+	0x1d2c, 0x1d6a,
+	0x1dc4, 0x1dcf,
+	0x1dfd, 0x1dff,
+	0x1fbd, 0x1fbd,
+	0x1fbf, 0x1fc1,
+	0x1fcd, 0x1fcf,
+	0x1fdd, 0x1fdf,
+	0x1fed, 0x1fef,
+	0x1ffd, 0x1ffe,
+	0x2cef, 0x2cf1,
+	0x2e2f, 0x2e2f,
+	0x302a, 0x302f,
+	0x3099, 0x309c,
+	0x30fc, 0x30fc,
+	0xa66f, 0xa66f,
+	0xa67c, 0xa67d,
+	0xa67f, 0xa67f,
+	0xa6f0, 0xa6f1,
+	0xa717, 0xa721,
+	0xa788, 0xa788,
+	0xa8c4, 0xa8c4,
+	0xa8e0, 0xa8f1,
+	0xa92b, 0xa92e,
+	0xa953, 0xa953,
+	0xa9b3, 0xa9b3,
+	0xa9c0, 0xa9c0,
+	0xaa7b, 0xaa7b,
+	0xaabf, 0xaac2,
+	0xabec, 0xabed,
+	0xfb1e, 0xfb1e,
+	0xfe20, 0xfe26,
+	0xff3e, 0xff3e,
+	0xff40, 0xff40,
+	0xff70, 0xff70,
+	0xff9e, 0xff9f,
+	0xffe3, 0xffe3,
+	0x110b9, 0x110ba,
+	0x1d167, 0x1d169,
+	0x1d16d, 0x1d172,
+	0x1d17b, 0x1d182,
+	0x1d185, 0x1d18b,
+	0x1d1aa, 0x1d1ad,
+}; /* CR_Diacritic */
+
+/* 'Extender': Binary Property */
+static const OnigCodePoint CR_Extender[] = {
+	20,
+	0x00b7, 0x00b7,
+	0x02d0, 0x02d1,
+	0x0640, 0x0640,
+	0x07fa, 0x07fa,
+	0x0e46, 0x0e46,
+	0x0ec6, 0x0ec6,
+	0x1843, 0x1843,
+	0x1aa7, 0x1aa7,
+	0x1c36, 0x1c36,
+	0x1c7b, 0x1c7b,
+	0x3005, 0x3005,
+	0x3031, 0x3035,
+	0x309d, 0x309e,
+	0x30fc, 0x30fe,
+	0xa015, 0xa015,
+	0xa60c, 0xa60c,
+	0xa9cf, 0xa9cf,
+	0xaa70, 0xaa70,
+	0xaadd, 0xaadd,
+	0xff70, 0xff70,
+}; /* CR_Extender */
+
+/* 'Other_Lowercase': Binary Property */
+static const OnigCodePoint CR_Other_Lowercase[] = {
+	13,
+	0x02b0, 0x02b8,
+	0x02c0, 0x02c1,
+	0x02e0, 0x02e4,
+	0x0345, 0x0345,
+	0x037a, 0x037a,
+	0x1d2c, 0x1d61,
+	0x1d78, 0x1d78,
+	0x1d9b, 0x1dbf,
+	0x2090, 0x2094,
+	0x2170, 0x217f,
+	0x24d0, 0x24e9,
+	0x2c7d, 0x2c7d,
+	0xa770, 0xa770,
+}; /* CR_Other_Lowercase */
+
+/* 'Other_Uppercase': Binary Property */
+static const OnigCodePoint CR_Other_Uppercase[] = {
+	2,
+	0x2160, 0x216f,
+	0x24b6, 0x24cf,
+}; /* CR_Other_Uppercase */
+
+/* 'Noncharacter_Code_Point': Binary Property */
+static const OnigCodePoint CR_Noncharacter_Code_Point[] = {
+	18,
+	0xfdd0, 0xfdef,
+	0xfffe, 0xffff,
+	0x1fffe, 0x1ffff,
+	0x2fffe, 0x2ffff,
+	0x3fffe, 0x3ffff,
+	0x4fffe, 0x4ffff,
+	0x5fffe, 0x5ffff,
+	0x6fffe, 0x6ffff,
+	0x7fffe, 0x7ffff,
+	0x8fffe, 0x8ffff,
+	0x9fffe, 0x9ffff,
+	0xafffe, 0xaffff,
+	0xbfffe, 0xbffff,
+	0xcfffe, 0xcffff,
+	0xdfffe, 0xdffff,
+	0xefffe, 0xeffff,
+	0xffffe, 0xfffff,
+	0x10fffe, 0x10ffff,
+}; /* CR_Noncharacter_Code_Point */
+
+/* 'Other_Grapheme_Extend': Binary Property */
+static const OnigCodePoint CR_Other_Grapheme_Extend[] = {
+	16,
+	0x09be, 0x09be,
+	0x09d7, 0x09d7,
+	0x0b3e, 0x0b3e,
+	0x0b57, 0x0b57,
+	0x0bbe, 0x0bbe,
+	0x0bd7, 0x0bd7,
+	0x0cc2, 0x0cc2,
+	0x0cd5, 0x0cd6,
+	0x0d3e, 0x0d3e,
+	0x0d57, 0x0d57,
+	0x0dcf, 0x0dcf,
+	0x0ddf, 0x0ddf,
+	0x200c, 0x200d,
+	0xff9e, 0xff9f,
+	0x1d165, 0x1d165,
+	0x1d16e, 0x1d172,
+}; /* CR_Other_Grapheme_Extend */
+
+/* 'IDS_Binary_Operator': Binary Property */
+static const OnigCodePoint CR_IDS_Binary_Operator[] = {
+	2,
+	0x2ff0, 0x2ff1,
+	0x2ff4, 0x2ffb,
+}; /* CR_IDS_Binary_Operator */
+
+/* 'IDS_Trinary_Operator': Binary Property */
+static const OnigCodePoint CR_IDS_Trinary_Operator[] = {
+	1,
+	0x2ff2, 0x2ff3,
+}; /* CR_IDS_Trinary_Operator */
+
+/* 'Radical': Binary Property */
+static const OnigCodePoint CR_Radical[] = {
+	3,
+	0x2e80, 0x2e99,
+	0x2e9b, 0x2ef3,
+	0x2f00, 0x2fd5,
+}; /* CR_Radical */
+
+/* 'Unified_Ideograph': Binary Property */
+static const OnigCodePoint CR_Unified_Ideograph[] = {
+	11,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xfa0e, 0xfa0f,
+	0xfa11, 0xfa11,
+	0xfa13, 0xfa14,
+	0xfa1f, 0xfa1f,
+	0xfa21, 0xfa21,
+	0xfa23, 0xfa24,
+	0xfa27, 0xfa29,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+}; /* CR_Unified_Ideograph */
+
+/* 'Other_Default_Ignorable_Code_Point': Binary Property */
+static const OnigCodePoint CR_Other_Default_Ignorable_Code_Point[] = {
+	10,
+	0x034f, 0x034f,
+	0x115f, 0x1160,
+	0x2065, 0x2069,
+	0x3164, 0x3164,
+	0xffa0, 0xffa0,
+	0xfff0, 0xfff8,
+	0xe0000, 0xe0000,
+	0xe0002, 0xe001f,
+	0xe0080, 0xe00ff,
+	0xe01f0, 0xe0fff,
+}; /* CR_Other_Default_Ignorable_Code_Point */
+
+/* 'Deprecated': Binary Property */
+static const OnigCodePoint CR_Deprecated[] = {
+	8,
+	0x0149, 0x0149,
+	0x0f77, 0x0f77,
+	0x0f79, 0x0f79,
+	0x17a3, 0x17a4,
+	0x206a, 0x206f,
+	0x2329, 0x232a,
+	0xe0001, 0xe0001,
+	0xe0020, 0xe007f,
+}; /* CR_Deprecated */
+
+/* 'Soft_Dotted': Binary Property */
+static const OnigCodePoint CR_Soft_Dotted[] = {
+	31,
+	0x0069, 0x006a,
+	0x012f, 0x012f,
+	0x0249, 0x0249,
+	0x0268, 0x0268,
+	0x029d, 0x029d,
+	0x02b2, 0x02b2,
+	0x03f3, 0x03f3,
+	0x0456, 0x0456,
+	0x0458, 0x0458,
+	0x1d62, 0x1d62,
+	0x1d96, 0x1d96,
+	0x1da4, 0x1da4,
+	0x1da8, 0x1da8,
+	0x1e2d, 0x1e2d,
+	0x1ecb, 0x1ecb,
+	0x2071, 0x2071,
+	0x2148, 0x2149,
+	0x2c7c, 0x2c7c,
+	0x1d422, 0x1d423,
+	0x1d456, 0x1d457,
+	0x1d48a, 0x1d48b,
+	0x1d4be, 0x1d4bf,
+	0x1d4f2, 0x1d4f3,
+	0x1d526, 0x1d527,
+	0x1d55a, 0x1d55b,
+	0x1d58e, 0x1d58f,
+	0x1d5c2, 0x1d5c3,
+	0x1d5f6, 0x1d5f7,
+	0x1d62a, 0x1d62b,
+	0x1d65e, 0x1d65f,
+	0x1d692, 0x1d693,
+}; /* CR_Soft_Dotted */
+
+/* 'Logical_Order_Exception': Binary Property */
+static const OnigCodePoint CR_Logical_Order_Exception[] = {
+	5,
+	0x0e40, 0x0e44,
+	0x0ec0, 0x0ec4,
+	0xaab5, 0xaab6,
+	0xaab9, 0xaab9,
+	0xaabb, 0xaabc,
+}; /* CR_Logical_Order_Exception */
+
+/* 'Other_ID_Start': Binary Property */
+static const OnigCodePoint CR_Other_ID_Start[] = {
+	3,
+	0x2118, 0x2118,
+	0x212e, 0x212e,
+	0x309b, 0x309c,
+}; /* CR_Other_ID_Start */
+
+/* 'Other_ID_Continue': Binary Property */
+static const OnigCodePoint CR_Other_ID_Continue[] = {
+	3,
+	0x00b7, 0x00b7,
+	0x0387, 0x0387,
+	0x1369, 0x1371,
+}; /* CR_Other_ID_Continue */
+
+/* 'STerm': Binary Property */
+static const OnigCodePoint CR_STerm[] = {
+	43,
+	0x0021, 0x0021,
+	0x002e, 0x002e,
+	0x003f, 0x003f,
+	0x055c, 0x055c,
+	0x055e, 0x055e,
+	0x0589, 0x0589,
+	0x061f, 0x061f,
+	0x06d4, 0x06d4,
+	0x0700, 0x0702,
+	0x07f9, 0x07f9,
+	0x0964, 0x0965,
+	0x104a, 0x104b,
+	0x1362, 0x1362,
+	0x1367, 0x1368,
+	0x166e, 0x166e,
+	0x1803, 0x1803,
+	0x1809, 0x1809,
+	0x1944, 0x1945,
+	0x1b5a, 0x1b5b,
+	0x1b5e, 0x1b5f,
+	0x1c3b, 0x1c3c,
+	0x1c7e, 0x1c7f,
+	0x203c, 0x203d,
+	0x2047, 0x2049,
+	0x2e2e, 0x2e2e,
+	0x3002, 0x3002,
+	0xa4ff, 0xa4ff,
+	0xa60e, 0xa60f,
+	0xa6f3, 0xa6f3,
+	0xa6f7, 0xa6f7,
+	0xa876, 0xa877,
+	0xa8ce, 0xa8cf,
+	0xa92f, 0xa92f,
+	0xa9c8, 0xa9c9,
+	0xaa5d, 0xaa5f,
+	0xabeb, 0xabeb,
+	0xfe52, 0xfe52,
+	0xfe56, 0xfe57,
+	0xff01, 0xff01,
+	0xff0e, 0xff0e,
+	0xff1f, 0xff1f,
+	0xff61, 0xff61,
+	0x110be, 0x110c1,
+}; /* CR_STerm */
+
+/* 'Variation_Selector': Binary Property */
+static const OnigCodePoint CR_Variation_Selector[] = {
+	3,
+	0x180b, 0x180d,
+	0xfe00, 0xfe0f,
+	0xe0100, 0xe01ef,
+}; /* CR_Variation_Selector */
+
+/* 'Pattern_White_Space': Binary Property */
+static const OnigCodePoint CR_Pattern_White_Space[] = {
+	5,
+	0x0009, 0x000d,
+	0x0020, 0x0020,
+	0x0085, 0x0085,
+	0x200e, 0x200f,
+	0x2028, 0x2029,
+}; /* CR_Pattern_White_Space */
+
+/* 'Pattern_Syntax': Binary Property */
+static const OnigCodePoint CR_Pattern_Syntax[] = {
+	28,
+	0x0021, 0x002f,
+	0x003a, 0x0040,
+	0x005b, 0x005e,
+	0x0060, 0x0060,
+	0x007b, 0x007e,
+	0x00a1, 0x00a7,
+	0x00a9, 0x00a9,
+	0x00ab, 0x00ac,
+	0x00ae, 0x00ae,
+	0x00b0, 0x00b1,
+	0x00b6, 0x00b6,
+	0x00bb, 0x00bb,
+	0x00bf, 0x00bf,
+	0x00d7, 0x00d7,
+	0x00f7, 0x00f7,
+	0x2010, 0x2027,
+	0x2030, 0x203e,
+	0x2041, 0x2053,
+	0x2055, 0x205e,
+	0x2190, 0x245f,
+	0x2500, 0x2775,
+	0x2794, 0x2bff,
+	0x2e00, 0x2e7f,
+	0x3001, 0x3003,
+	0x3008, 0x3020,
+	0x3030, 0x3030,
+	0xfd3e, 0xfd3f,
+	0xfe45, 0xfe46,
+}; /* CR_Pattern_Syntax */
 #endif /* USE_UNICODE_PROPERTIES */
 #endif /* USE_UNICODE_PROPERTIES */
 
-
 static const OnigCodePoint* const CodeRanges[] = {
   CR_NEWLINE,
   CR_Alpha,
@@ -9895,6 +18081,25 @@
   CR_Zl,
   CR_Zp,
   CR_Zs,
+  CR_Math,
+  CR_Alphabetic,
+  CR_Lowercase,
+  CR_Uppercase,
+  CR_Cased,
+  CR_Case_Ignorable,
+  CR_Changes_When_Lowercased,
+  CR_Changes_When_Uppercased,
+  CR_Changes_When_Titlecased,
+  CR_Changes_When_Casefolded,
+  CR_Changes_When_Casemapped,
+  CR_ID_Start,
+  CR_ID_Continue,
+  CR_XID_Start,
+  CR_XID_Continue,
+  CR_Default_Ignorable_Code_Point,
+  CR_Grapheme_Extend,
+  CR_Grapheme_Base,
+  CR_Grapheme_Link,
   CR_Common,
   CR_Latin,
   CR_Greek,
@@ -9987,6 +18192,38 @@
   CR_Inscriptional_Pahlavi,
   CR_Old_Turkic,
   CR_Kaithi,
+  CR_White_Space,
+  CR_Bidi_Control,
+  CR_Join_Control,
+  CR_Dash,
+  CR_Hyphen,
+  CR_Quotation_Mark,
+  CR_Terminal_Punctuation,
+  CR_Other_Math,
+  CR_Hex_Digit,
+  CR_ASCII_Hex_Digit,
+  CR_Other_Alphabetic,
+  CR_Ideographic,
+  CR_Diacritic,
+  CR_Extender,
+  CR_Other_Lowercase,
+  CR_Other_Uppercase,
+  CR_Noncharacter_Code_Point,
+  CR_Other_Grapheme_Extend,
+  CR_IDS_Binary_Operator,
+  CR_IDS_Trinary_Operator,
+  CR_Radical,
+  CR_Unified_Ideograph,
+  CR_Other_Default_Ignorable_Code_Point,
+  CR_Deprecated,
+  CR_Soft_Dotted,
+  CR_Logical_Order_Exception,
+  CR_Other_ID_Start,
+  CR_Other_ID_Continue,
+  CR_STerm,
+  CR_Variation_Selector,
+  CR_Pattern_White_Space,
+  CR_Pattern_Syntax,
 #endif /* USE_UNICODE_PROPERTIES */
 #endif /* USE_UNICODE_PROPERTIES */
 };
@@ -10000,18 +18237,16 @@
 #define TOTAL_KEYWORDS 15
 #define MIN_WORD_LENGTH 4
 #define MAX_WORD_LENGTH 7
-#else /* USE_UNICODE_PROPERTIES */
-#define TOTAL_KEYWORDS 146
-#define MIN_WORD_LENGTH 1
-#define MAX_WORD_LENGTH 21
-#endif /* USE_UNICODE_PROPERTIES */
 #define MIN_HASH_VALUE 7
-#ifndef USE_UNICODE_PROPERTIES
 #define MAX_HASH_VALUE 21
 /* maximum key range = 15, duplicates = 0 */
 #else /* USE_UNICODE_PROPERTIES */
-#define MAX_HASH_VALUE 299
-/* maximum key range = 293, duplicates = 0 */
+#define TOTAL_KEYWORDS 367
+#define MIN_WORD_LENGTH 1
+#define MAX_WORD_LENGTH 30
+#define MIN_HASH_VALUE 3
+#define MAX_HASH_VALUE 1751
+/* maximum key range = 1749, duplicates = 0 */
 #endif /* USE_UNICODE_PROPERTIES */
 
 #ifdef __GNUC__
@@ -10047,20 +18282,19 @@
        2, 22,  1, 22, 10,  8,  4,  7, 22,  3,
        4, 22, 22, 22, 22, 22, 22, 22
 #else /* USE_UNICODE_PROPERTIES */
-      300, 300, 300, 300, 300, 300, 300, 300, 300, 300,
-      300, 300, 300, 300, 300, 300, 300, 300, 300, 300,
-      300, 300, 300, 300, 300, 300, 300, 300, 300, 300,
-      300, 300, 300, 300, 300, 300, 300, 300, 300, 300,
-      300, 300, 300, 300, 300, 300, 300, 300, 300, 300,
-      300, 300, 300, 300, 300, 300, 300, 300, 300, 300,
-      300, 300, 300, 300, 300, 300, 300, 300, 300, 300,
-      300, 300, 300, 300, 300, 300, 300, 300, 300, 300,
-      300, 300, 300, 300, 300, 300, 300, 300, 300, 300,
-      300, 300, 300, 300, 300, 300, 300,  21,  74,   8,
-       18,  35, 111,   9,  52,   6,   4,  60,  31,  43,
-        6,   1,   4, 128,  28,  57,   5,  88, 112,  42,
-       86, 111,  29,   1,   2,   6,  17, 300, 300, 300,
-      300, 300
+      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
+      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
+      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
+      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
+      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
+      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
+      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
+      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
+      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
+      1752, 1752, 1752, 1752, 1752, 1752, 1752,    7,  419,    1,
+       128,   38,  100,  186,   46,   11,  226,  463,    4,  317,
+         6,    2,  265,    5,   18,  112,   30,  289,  164,  384,
+       368,  579,   10, 1752, 1752, 1752, 1752, 1752
 #endif /* USE_UNICODE_PROPERTIES */
     };
 #ifndef USE_UNICODE_PROPERTIES
@@ -10071,14 +18305,32 @@
   switch (hval)
     {
       default:
-        hval += asso_values[(unsigned char)str[3]];
+        hval += asso_values[(unsigned char)str[15]];
       /*FALLTHROUGH*/
+      case 15:
+      case 14:
+      case 13:
+      case 12:
+        hval += asso_values[(unsigned char)str[11]];
+      /*FALLTHROUGH*/
+      case 11:
+      case 10:
+      case 9:
+      case 8:
+      case 7:
+      case 6:
+        hval += asso_values[(unsigned char)str[5]];
+      /*FALLTHROUGH*/
+      case 5:
+      case 4:
       case 3:
         hval += asso_values[(unsigned char)str[2]];
       /*FALLTHROUGH*/
       case 2:
+        hval += asso_values[(unsigned char)str[1]];
+      /*FALLTHROUGH*/
       case 1:
-        hval += asso_values[(unsigned char)str[0]+4];
+        hval += asso_values[(unsigned char)str[0]];
         break;
     }
   return hval + asso_values[(unsigned char)str[len - 1]];
@@ -10104,328 +18356,767 @@
     char uniname2ctype_pool_str20[sizeof("digit")];
     char uniname2ctype_pool_str21[sizeof("blank")];
 #else /* USE_UNICODE_PROPERTIES */
-    char uniname2ctype_pool_str7[sizeof("lo")];
-    char uniname2ctype_pool_str8[sizeof("po")];
-    char uniname2ctype_pool_str9[sizeof("lao")];
-    char uniname2ctype_pool_str10[sizeof("p")];
-    char uniname2ctype_pool_str11[sizeof("lt")];
-    char uniname2ctype_pool_str12[sizeof("co")];
-    char uniname2ctype_pool_str13[sizeof("pi")];
-    char uniname2ctype_pool_str14[sizeof("yi")];
-    char uniname2ctype_pool_str15[sizeof("pc")];
-    char uniname2ctype_pool_str17[sizeof("cn")];
-    char uniname2ctype_pool_str18[sizeof("c")];
-    char uniname2ctype_pool_str19[sizeof("cc")];
-    char uniname2ctype_pool_str23[sizeof("zp")];
-    char uniname2ctype_pool_str24[sizeof("kaithi")];
-    char uniname2ctype_pool_str25[sizeof("pd")];
-    char uniname2ctype_pool_str26[sizeof("latin")];
-    char uniname2ctype_pool_str27[sizeof("print")];
-    char uniname2ctype_pool_str28[sizeof("xdigit")];
-    char uniname2ctype_pool_str29[sizeof("punct")];
-    char uniname2ctype_pool_str30[sizeof("lycian")];
-    char uniname2ctype_pool_str31[sizeof("no")];
-    char uniname2ctype_pool_str32[sizeof("coptic")];
-    char uniname2ctype_pool_str33[sizeof("nko")];
-    char uniname2ctype_pool_str35[sizeof("n")];
-    char uniname2ctype_pool_str36[sizeof("l")];
-    char uniname2ctype_pool_str37[sizeof("ll")];
-    char uniname2ctype_pool_str40[sizeof("lydian")];
-    char uniname2ctype_pool_str41[sizeof("kannada")];
-    char uniname2ctype_pool_str42[sizeof("pe")];
-    char uniname2ctype_pool_str43[sizeof("lepcha")];
-    char uniname2ctype_pool_str44[sizeof("vai")];
-    char uniname2ctype_pool_str45[sizeof("so")];
-    char uniname2ctype_pool_str46[sizeof("han")];
-    char uniname2ctype_pool_str47[sizeof("z")];
-    char uniname2ctype_pool_str48[sizeof("nd")];
-    char uniname2ctype_pool_str49[sizeof("lm")];
-    char uniname2ctype_pool_str50[sizeof("zl")];
-    char uniname2ctype_pool_str52[sizeof("sc")];
-    char uniname2ctype_pool_str53[sizeof("cypriot")];
-    char uniname2ctype_pool_str55[sizeof("carian")];
-    char uniname2ctype_pool_str56[sizeof("katakana")];
-    char uniname2ctype_pool_str57[sizeof("phoenician")];
-    char uniname2ctype_pool_str59[sizeof("cyrillic")];
-    char uniname2ctype_pool_str60[sizeof("ascii")];
-    char uniname2ctype_pool_str61[sizeof("nl")];
-    char uniname2ctype_pool_str63[sizeof("phagspa")];
-    char uniname2ctype_pool_str64[sizeof("ps")];
-    char uniname2ctype_pool_str66[sizeof("kharoshthi")];
-    char uniname2ctype_pool_str68[sizeof("cs")];
-    char uniname2ctype_pool_str69[sizeof("word")];
-    char uniname2ctype_pool_str76[sizeof("zs")];
-    char uniname2ctype_pool_str77[sizeof("digit")];
-    char uniname2ctype_pool_str78[sizeof("cntrl")];
-    char uniname2ctype_pool_str80[sizeof("ethiopic")];
-    char uniname2ctype_pool_str83[sizeof("hangul")];
-    char uniname2ctype_pool_str85[sizeof("canadianaboriginal")];
-    char uniname2ctype_pool_str87[sizeof("sm")];
-    char uniname2ctype_pool_str90[sizeof("syriac")];
-    char uniname2ctype_pool_str91[sizeof("sylotinagri")];
-    char uniname2ctype_pool_str94[sizeof("lu")];
-    char uniname2ctype_pool_str95[sizeof("oldpersian")];
-    char uniname2ctype_pool_str97[sizeof("oldturkic")];
-    char uniname2ctype_pool_str98[sizeof("olditalic")];
-    char uniname2ctype_pool_str99[sizeof("gujarati")];
-    char uniname2ctype_pool_str100[sizeof("s")];
-    char uniname2ctype_pool_str102[sizeof("cuneiform")];
-    char uniname2ctype_pool_str103[sizeof("georgian")];
-    char uniname2ctype_pool_str104[sizeof("sk")];
-    char uniname2ctype_pool_str105[sizeof("imperialaramaic")];
-    char uniname2ctype_pool_str107[sizeof("common")];
-    char uniname2ctype_pool_str108[sizeof("glagolitic")];
-    char uniname2ctype_pool_str109[sizeof("hiragana")];
-    char uniname2ctype_pool_str110[sizeof("sundanese")];
-    char uniname2ctype_pool_str111[sizeof("space")];
-    char uniname2ctype_pool_str112[sizeof("khmer")];
-    char uniname2ctype_pool_str114[sizeof("lower")];
-    char uniname2ctype_pool_str115[sizeof("cherokee")];
-    char uniname2ctype_pool_str117[sizeof("alpha")];
-    char uniname2ctype_pool_str118[sizeof("pf")];
-    char uniname2ctype_pool_str119[sizeof("newtailue")];
-    char uniname2ctype_pool_str120[sizeof("cham")];
-    char uniname2ctype_pool_str121[sizeof("samaritan")];
-    char uniname2ctype_pool_str122[sizeof("cf")];
-    char uniname2ctype_pool_str123[sizeof("thai")];
-    char uniname2ctype_pool_str124[sizeof("assigned")];
-    char uniname2ctype_pool_str125[sizeof("bopomofo")];
-    char uniname2ctype_pool_str126[sizeof("linearb")];
-    char uniname2ctype_pool_str127[sizeof("armenian")];
-    char uniname2ctype_pool_str128[sizeof("sinhala")];
-    char uniname2ctype_pool_str130[sizeof("olchiki")];
-    char uniname2ctype_pool_str131[sizeof("gothic")];
-    char uniname2ctype_pool_str132[sizeof("tagalog")];
-    char uniname2ctype_pool_str133[sizeof("hanunoo")];
-    char uniname2ctype_pool_str134[sizeof("inscriptionalpahlavi")];
-    char uniname2ctype_pool_str135[sizeof("inscriptionalparthian")];
-    char uniname2ctype_pool_str136[sizeof("mn")];
-    char uniname2ctype_pool_str137[sizeof("runic")];
-    char uniname2ctype_pool_str138[sizeof("mc")];
-    char uniname2ctype_pool_str139[sizeof("bengali")];
-    char uniname2ctype_pool_str140[sizeof("avestan")];
-    char uniname2ctype_pool_str142[sizeof("graph")];
-    char uniname2ctype_pool_str143[sizeof("newline")];
-    char uniname2ctype_pool_str144[sizeof("arabic")];
-    char uniname2ctype_pool_str145[sizeof("gurmukhi")];
-    char uniname2ctype_pool_str146[sizeof("kayahli")];
-    char uniname2ctype_pool_str147[sizeof("taitham")];
-    char uniname2ctype_pool_str149[sizeof("osmanya")];
-    char uniname2ctype_pool_str152[sizeof("rejang")];
-    char uniname2ctype_pool_str153[sizeof("oldsoutharabian")];
-    char uniname2ctype_pool_str155[sizeof("thaana")];
-    char uniname2ctype_pool_str156[sizeof("deseret")];
-    char uniname2ctype_pool_str157[sizeof("inherited")];
-    char uniname2ctype_pool_str158[sizeof("mongolian")];
-    char uniname2ctype_pool_str163[sizeof("taile")];
-    char uniname2ctype_pool_str165[sizeof("me")];
-    char uniname2ctype_pool_str169[sizeof("buginese")];
-    char uniname2ctype_pool_str171[sizeof("tamil")];
-    char uniname2ctype_pool_str172[sizeof("m")];
-    char uniname2ctype_pool_str176[sizeof("ugaritic")];
-    char uniname2ctype_pool_str177[sizeof("alnum")];
-    char uniname2ctype_pool_str178[sizeof("ogham")];
-    char uniname2ctype_pool_str180[sizeof("braille")];
-    char uniname2ctype_pool_str181[sizeof("hebrew")];
-    char uniname2ctype_pool_str182[sizeof("javanese")];
-    char uniname2ctype_pool_str183[sizeof("upper")];
-    char uniname2ctype_pool_str188[sizeof("shavian")];
-    char uniname2ctype_pool_str189[sizeof("saurashtra")];
-    char uniname2ctype_pool_str190[sizeof("myanmar")];
-    char uniname2ctype_pool_str191[sizeof("balinese")];
-    char uniname2ctype_pool_str192[sizeof("buhid")];
-    char uniname2ctype_pool_str195[sizeof("greek")];
-    char uniname2ctype_pool_str197[sizeof("egyptianhieroglyphs")];
-    char uniname2ctype_pool_str198[sizeof("tagbanwa")];
-    char uniname2ctype_pool_str200[sizeof("oriya")];
-    char uniname2ctype_pool_str201[sizeof("devanagari")];
-    char uniname2ctype_pool_str203[sizeof("blank")];
-    char uniname2ctype_pool_str208[sizeof("tibetan")];
-    char uniname2ctype_pool_str214[sizeof("limbu")];
-    char uniname2ctype_pool_str216[sizeof("taiviet")];
-    char uniname2ctype_pool_str232[sizeof("malayalam")];
-    char uniname2ctype_pool_str239[sizeof("meeteimayek")];
-    char uniname2ctype_pool_str241[sizeof("lisu")];
-    char uniname2ctype_pool_str260[sizeof("any")];
-    char uniname2ctype_pool_str263[sizeof("tifinagh")];
-    char uniname2ctype_pool_str290[sizeof("bamum")];
-    char uniname2ctype_pool_str299[sizeof("telugu")];
+    char uniname2ctype_pool_str3[sizeof("c")];
+    char uniname2ctype_pool_str5[sizeof("cc")];
+    char uniname2ctype_pool_str7[sizeof("co")];
+    char uniname2ctype_pool_str9[sizeof("l")];
+    char uniname2ctype_pool_str10[sizeof("lo")];
+    char uniname2ctype_pool_str12[sizeof("no")];
+    char uniname2ctype_pool_str13[sizeof("n")];
+    char uniname2ctype_pool_str14[sizeof("ll")];
+    char uniname2ctype_pool_str15[sizeof("cn")];
+    char uniname2ctype_pool_str16[sizeof("nl")];
+    char uniname2ctype_pool_str18[sizeof("lao")];
+    char uniname2ctype_pool_str19[sizeof("laoo")];
+    char uniname2ctype_pool_str20[sizeof("zl")];
+    char uniname2ctype_pool_str21[sizeof("z")];
+    char uniname2ctype_pool_str22[sizeof("control")];
+    char uniname2ctype_pool_str24[sizeof("qaac")];
+    char uniname2ctype_pool_str25[sizeof("ci")];
+    char uniname2ctype_pool_str28[sizeof("lana")];
+    char uniname2ctype_pool_str33[sizeof("oalpha")];
+    char uniname2ctype_pool_str34[sizeof("qaai")];
+    char uniname2ctype_pool_str40[sizeof("arabic")];
+    char uniname2ctype_pool_str41[sizeof("cari")];
+    char uniname2ctype_pool_str43[sizeof("oriya")];
+    char uniname2ctype_pool_str44[sizeof("carian")];
+    char uniname2ctype_pool_str46[sizeof("cntrl")];
+    char uniname2ctype_pool_str49[sizeof("connectorpunctuation")];
+    char uniname2ctype_pool_str50[sizeof("olower")];
+    char uniname2ctype_pool_str51[sizeof("latn")];
+    char uniname2ctype_pool_str52[sizeof("latin")];
+    char uniname2ctype_pool_str56[sizeof("ital")];
+    char uniname2ctype_pool_str65[sizeof("hano")];
+    char uniname2ctype_pool_str66[sizeof("lt")];
+    char uniname2ctype_pool_str68[sizeof("han")];
+    char uniname2ctype_pool_str70[sizeof("hanunoo")];
+    char uniname2ctype_pool_str71[sizeof("canadianaboriginal")];
+    char uniname2ctype_pool_str73[sizeof("hangul")];
+    char uniname2ctype_pool_str74[sizeof("hani")];
+    char uniname2ctype_pool_str76[sizeof("nchar")];
+    char uniname2ctype_pool_str77[sizeof("zinh")];
+    char uniname2ctype_pool_str83[sizeof("tale")];
+    char uniname2ctype_pool_str85[sizeof("loe")];
+    char uniname2ctype_pool_str86[sizeof("hira")];
+    char uniname2ctype_pool_str91[sizeof("taile")];
+    char uniname2ctype_pool_str92[sizeof("lineseparator")];
+    char uniname2ctype_pool_str94[sizeof("thaa")];
+    char uniname2ctype_pool_str97[sizeof("hiragana")];
+    char uniname2ctype_pool_str98[sizeof("thai")];
+    char uniname2ctype_pool_str100[sizeof("initialpunctuation")];
+    char uniname2ctype_pool_str101[sizeof("other")];
+    char uniname2ctype_pool_str103[sizeof("thaana")];
+    char uniname2ctype_pool_str107[sizeof("cher")];
+    char uniname2ctype_pool_str111[sizeof("otherletter")];
+    char uniname2ctype_pool_str113[sizeof("othernumber")];
+    char uniname2ctype_pool_str114[sizeof("letter")];
+    char uniname2ctype_pool_str116[sizeof("sc")];
+    char uniname2ctype_pool_str118[sizeof("so")];
+    char uniname2ctype_pool_str123[sizeof("taiviet")];
+    char uniname2ctype_pool_str128[sizeof("noncharactercodepoint")];
+    char uniname2ctype_pool_str129[sizeof("ethi")];
+    char uniname2ctype_pool_str130[sizeof("cans")];
+    char uniname2ctype_pool_str135[sizeof("titlecaseletter")];
+    char uniname2ctype_pool_str136[sizeof("ascii")];
+    char uniname2ctype_pool_str138[sizeof("letternumber")];
+    char uniname2ctype_pool_str139[sizeof("otheralphabetic")];
+    char uniname2ctype_pool_str141[sizeof("otherlowercase")];
+    char uniname2ctype_pool_str144[sizeof("idc")];
+    char uniname2ctype_pool_str146[sizeof("oidc")];
+    char uniname2ctype_pool_str147[sizeof("sinhala")];
+    char uniname2ctype_pool_str148[sizeof("terminalpunctuation")];
+    char uniname2ctype_pool_str151[sizeof("olditalic")];
+    char uniname2ctype_pool_str152[sizeof("di")];
+    char uniname2ctype_pool_str153[sizeof("otheridcontinue")];
+    char uniname2ctype_pool_str155[sizeof("odi")];
+    char uniname2ctype_pool_str156[sizeof("dia")];
+    char uniname2ctype_pool_str161[sizeof("otheridstart")];
+    char uniname2ctype_pool_str162[sizeof("oldturkic")];
+    char uniname2ctype_pool_str167[sizeof("diacritic")];
+    char uniname2ctype_pool_str168[sizeof("oldpersian")];
+    char uniname2ctype_pool_str171[sizeof("radical")];
+    char uniname2ctype_pool_str179[sizeof("sinh")];
+    char uniname2ctype_pool_str183[sizeof("ideo")];
+    char uniname2ctype_pool_str185[sizeof("shavian")];
+    char uniname2ctype_pool_str186[sizeof("format")];
+    char uniname2ctype_pool_str192[sizeof("inscriptionalparthian")];
+    char uniname2ctype_pool_str196[sizeof("vai")];
+    char uniname2ctype_pool_str197[sizeof("vaii")];
+    char uniname2ctype_pool_str202[sizeof("tifinagh")];
+    char uniname2ctype_pool_str203[sizeof("cf")];
+    char uniname2ctype_pool_str205[sizeof("othersymbol")];
+    char uniname2ctype_pool_str207[sizeof("ideographic")];
+    char uniname2ctype_pool_str211[sizeof("inherited")];
+    char uniname2ctype_pool_str212[sizeof("glagolitic")];
+    char uniname2ctype_pool_str218[sizeof("idcontinue")];
+    char uniname2ctype_pool_str220[sizeof("asciihexdigit")];
+    char uniname2ctype_pool_str224[sizeof("inscriptionalpahlavi")];
+    char uniname2ctype_pool_str225[sizeof("s")];
+    char uniname2ctype_pool_str226[sizeof("gothic")];
+    char uniname2ctype_pool_str227[sizeof("cs")];
+    char uniname2ctype_pool_str229[sizeof("avestan")];
+    char uniname2ctype_pool_str235[sizeof("tavt")];
+    char uniname2ctype_pool_str236[sizeof("zs")];
+    char uniname2ctype_pool_str243[sizeof("decimalnumber")];
+    char uniname2ctype_pool_str244[sizeof("tagbanwa")];
+    char uniname2ctype_pool_str245[sizeof("joinc")];
+    char uniname2ctype_pool_str248[sizeof("geor")];
+    char uniname2ctype_pool_str249[sizeof("hang")];
+    char uniname2ctype_pool_str251[sizeof("georgian")];
+    char uniname2ctype_pool_str253[sizeof("cased")];
+    char uniname2ctype_pool_str256[sizeof("joincontrol")];
+    char uniname2ctype_pool_str257[sizeof("oids")];
+    char uniname2ctype_pool_str260[sizeof("variationselector")];
+    char uniname2ctype_pool_str262[sizeof("graph")];
+    char uniname2ctype_pool_str263[sizeof("changeswhenlowercased")];
+    char uniname2ctype_pool_str264[sizeof("nd")];
+    char uniname2ctype_pool_str268[sizeof("goth")];
+    char uniname2ctype_pool_str269[sizeof("pc")];
+    char uniname2ctype_pool_str271[sizeof("po")];
+    char uniname2ctype_pool_str272[sizeof("ogrext")];
+    char uniname2ctype_pool_str276[sizeof("coptic")];
+    char uniname2ctype_pool_str277[sizeof("grext")];
+    char uniname2ctype_pool_str282[sizeof("logicalorderexception")];
+    char uniname2ctype_pool_str285[sizeof("idst")];
+    char uniname2ctype_pool_str288[sizeof("alpha")];
+    char uniname2ctype_pool_str289[sizeof("pi")];
+    char uniname2ctype_pool_str292[sizeof("dsrt")];
+    char uniname2ctype_pool_str297[sizeof("dash")];
+    char uniname2ctype_pool_str298[sizeof("otherdefaultignorablecodepoint")];
+    char uniname2ctype_pool_str302[sizeof("copt")];
+    char uniname2ctype_pool_str306[sizeof("idstart")];
+    char uniname2ctype_pool_str307[sizeof("closepunctuation")];
+    char uniname2ctype_pool_str309[sizeof("changeswhentitlecased")];
+    char uniname2ctype_pool_str312[sizeof("lepc")];
+    char uniname2ctype_pool_str317[sizeof("avst")];
+    char uniname2ctype_pool_str318[sizeof("cprt")];
+    char uniname2ctype_pool_str319[sizeof("runic")];
+    char uniname2ctype_pool_str320[sizeof("patsyn")];
+    char uniname2ctype_pool_str321[sizeof("mc")];
+    char uniname2ctype_pool_str326[sizeof("tfng")];
+    char uniname2ctype_pool_str327[sizeof("lepcha")];
+    char uniname2ctype_pool_str328[sizeof("prti")];
+    char uniname2ctype_pool_str329[sizeof("print")];
+    char uniname2ctype_pool_str330[sizeof("phli")];
+    char uniname2ctype_pool_str331[sizeof("mn")];
+    char uniname2ctype_pool_str332[sizeof("idsbinaryoperator")];
+    char uniname2ctype_pool_str334[sizeof("talu")];
+    char uniname2ctype_pool_str335[sizeof("runr")];
+    char uniname2ctype_pool_str337[sizeof("graphemebase")];
+    char uniname2ctype_pool_str338[sizeof("common")];
+    char uniname2ctype_pool_str339[sizeof("alnum")];
+    char uniname2ctype_pool_str340[sizeof("phoenician")];
+    char uniname2ctype_pool_str341[sizeof("deva")];
+    char uniname2ctype_pool_str342[sizeof("changeswhencasefolded")];
+    char uniname2ctype_pool_str343[sizeof("pe")];
+    char uniname2ctype_pool_str344[sizeof("mongolian")];
+    char uniname2ctype_pool_str352[sizeof("armn")];
+    char uniname2ctype_pool_str353[sizeof("deseret")];
+    char uniname2ctype_pool_str354[sizeof("softdotted")];
+    char uniname2ctype_pool_str357[sizeof("armi")];
+    char uniname2ctype_pool_str358[sizeof("devanagari")];
+    char uniname2ctype_pool_str360[sizeof("digit")];
+    char uniname2ctype_pool_str361[sizeof("caseignorable")];
+    char uniname2ctype_pool_str362[sizeof("taml")];
+    char uniname2ctype_pool_str363[sizeof("tamil")];
+    char uniname2ctype_pool_str365[sizeof("telu")];
+    char uniname2ctype_pool_str366[sizeof("ids")];
+    char uniname2ctype_pool_str367[sizeof("armenian")];
+    char uniname2ctype_pool_str370[sizeof("sd")];
+    char uniname2ctype_pool_str372[sizeof("privateuse")];
+    char uniname2ctype_pool_str373[sizeof("assigned")];
+    char uniname2ctype_pool_str375[sizeof("cham")];
+    char uniname2ctype_pool_str377[sizeof("omath")];
+    char uniname2ctype_pool_str378[sizeof("otherpunctuation")];
+    char uniname2ctype_pool_str379[sizeof("taitham")];
+    char uniname2ctype_pool_str381[sizeof("defaultignorablecodepoint")];
+    char uniname2ctype_pool_str387[sizeof("glag")];
+    char uniname2ctype_pool_str388[sizeof("ethiopic")];
+    char uniname2ctype_pool_str390[sizeof("vs")];
+    char uniname2ctype_pool_str395[sizeof("me")];
+    char uniname2ctype_pool_str396[sizeof("cwl")];
+    char uniname2ctype_pool_str400[sizeof("mtei")];
+    char uniname2ctype_pool_str404[sizeof("math")];
+    char uniname2ctype_pool_str407[sizeof("term")];
+    char uniname2ctype_pool_str408[sizeof("java")];
+    char uniname2ctype_pool_str410[sizeof("tglg")];
+    char uniname2ctype_pool_str413[sizeof("lower")];
+    char uniname2ctype_pool_str414[sizeof("patternwhitespace")];
+    char uniname2ctype_pool_str417[sizeof("finalpunctuation")];
+    char uniname2ctype_pool_str418[sizeof("tagalog")];
+    char uniname2ctype_pool_str419[sizeof("patws")];
+    char uniname2ctype_pool_str420[sizeof("lisu")];
+    char uniname2ctype_pool_str426[sizeof("otheruppercase")];
+    char uniname2ctype_pool_str427[sizeof("space")];
+    char uniname2ctype_pool_str429[sizeof("graphemeextend")];
+    char uniname2ctype_pool_str430[sizeof("saur")];
+    char uniname2ctype_pool_str435[sizeof("uideo")];
+    char uniname2ctype_pool_str438[sizeof("lowercase")];
+    char uniname2ctype_pool_str440[sizeof("rjng")];
+    char uniname2ctype_pool_str442[sizeof("osma")];
+    char uniname2ctype_pool_str444[sizeof("linb")];
+    char uniname2ctype_pool_str445[sizeof("bali")];
+    char uniname2ctype_pool_str448[sizeof("cwt")];
+    char uniname2ctype_pool_str449[sizeof("separator")];
+    char uniname2ctype_pool_str450[sizeof("othermath")];
+    char uniname2ctype_pool_str451[sizeof("unassigned")];
+    char uniname2ctype_pool_str454[sizeof("lowercaseletter")];
+    char uniname2ctype_pool_str455[sizeof("arab")];
+    char uniname2ctype_pool_str458[sizeof("samr")];
+    char uniname2ctype_pool_str459[sizeof("brai")];
+    char uniname2ctype_pool_str460[sizeof("sundanese")];
+    char uniname2ctype_pool_str462[sizeof("samaritan")];
+    char uniname2ctype_pool_str463[sizeof("ahex")];
+    char uniname2ctype_pool_str465[sizeof("linearb")];
+    char uniname2ctype_pool_str467[sizeof("pf")];
+    char uniname2ctype_pool_str469[sizeof("ext")];
+    char uniname2ctype_pool_str474[sizeof("olck")];
+    char uniname2ctype_pool_str476[sizeof("nko")];
+    char uniname2ctype_pool_str477[sizeof("nkoo")];
+    char uniname2ctype_pool_str479[sizeof("newline")];
+    char uniname2ctype_pool_str480[sizeof("tibetan")];
+    char uniname2ctype_pool_str481[sizeof("javanese")];
+    char uniname2ctype_pool_str485[sizeof("bengali")];
+    char uniname2ctype_pool_str486[sizeof("newtailue")];
+    char uniname2ctype_pool_str487[sizeof("kana")];
+    char uniname2ctype_pool_str488[sizeof("olchiki")];
+    char uniname2ctype_pool_str489[sizeof("kali")];
+    char uniname2ctype_pool_str490[sizeof("cwcf")];
+    char uniname2ctype_pool_str491[sizeof("ps")];
+    char uniname2ctype_pool_str493[sizeof("braille")];
+    char uniname2ctype_pool_str494[sizeof("tibt")];
+    char uniname2ctype_pool_str502[sizeof("sterm")];
+    char uniname2ctype_pool_str504[sizeof("ugar")];
+    char uniname2ctype_pool_str505[sizeof("nonspacingmark")];
+    char uniname2ctype_pool_str508[sizeof("phag")];
+    char uniname2ctype_pool_str509[sizeof("kaithi")];
+    char uniname2ctype_pool_str512[sizeof("xidc")];
+    char uniname2ctype_pool_str514[sizeof("balinese")];
+    char uniname2ctype_pool_str515[sizeof("mong")];
+    char uniname2ctype_pool_str516[sizeof("ogam")];
+    char uniname2ctype_pool_str520[sizeof("modifierletter")];
+    char uniname2ctype_pool_str521[sizeof("ugaritic")];
+    char uniname2ctype_pool_str522[sizeof("katakana")];
+    char uniname2ctype_pool_str523[sizeof("pd")];
+    char uniname2ctype_pool_str525[sizeof("hebr")];
+    char uniname2ctype_pool_str531[sizeof("p")];
+    char uniname2ctype_pool_str533[sizeof("orkh")];
+    char uniname2ctype_pool_str536[sizeof("word")];
+    char uniname2ctype_pool_str537[sizeof("saurashtra")];
+    char uniname2ctype_pool_str538[sizeof("khar")];
+    char uniname2ctype_pool_str539[sizeof("sund")];
+    char uniname2ctype_pool_str542[sizeof("zp")];
+    char uniname2ctype_pool_str548[sizeof("changeswhenuppercased")];
+    char uniname2ctype_pool_str552[sizeof("xidstart")];
+    char uniname2ctype_pool_str553[sizeof("shaw")];
+    char uniname2ctype_pool_str554[sizeof("kthi")];
+    char uniname2ctype_pool_str556[sizeof("ogham")];
+    char uniname2ctype_pool_str558[sizeof("spaceseparator")];
+    char uniname2ctype_pool_str559[sizeof("changeswhencasemapped")];
+    char uniname2ctype_pool_str560[sizeof("sarb")];
+    char uniname2ctype_pool_str562[sizeof("xidcontinue")];
+    char uniname2ctype_pool_str564[sizeof("bidic")];
+    char uniname2ctype_pool_str570[sizeof("deprecated")];
+    char uniname2ctype_pool_str573[sizeof("xdigit")];
+    char uniname2ctype_pool_str575[sizeof("bidicontrol")];
+    char uniname2ctype_pool_str584[sizeof("lu")];
+    char uniname2ctype_pool_str587[sizeof("dashpunctuation")];
+    char uniname2ctype_pool_str590[sizeof("extender")];
+    char uniname2ctype_pool_str593[sizeof("idstrinaryoperator")];
+    char uniname2ctype_pool_str594[sizeof("cherokee")];
+    char uniname2ctype_pool_str595[sizeof("punct")];
+    char uniname2ctype_pool_str597[sizeof("phagspa")];
+    char uniname2ctype_pool_str598[sizeof("oupper")];
+    char uniname2ctype_pool_str599[sizeof("lyci")];
+    char uniname2ctype_pool_str601[sizeof("whitespace")];
+    char uniname2ctype_pool_str602[sizeof("lycian")];
+    char uniname2ctype_pool_str603[sizeof("yi")];
+    char uniname2ctype_pool_str606[sizeof("cyrl")];
+    char uniname2ctype_pool_str608[sizeof("knda")];
+    char uniname2ctype_pool_str610[sizeof("orya")];
+    char uniname2ctype_pool_str611[sizeof("cyrillic")];
+    char uniname2ctype_pool_str616[sizeof("yiii")];
+    char uniname2ctype_pool_str618[sizeof("kannada")];
+    char uniname2ctype_pool_str623[sizeof("xids")];
+    char uniname2ctype_pool_str626[sizeof("limbu")];
+    char uniname2ctype_pool_str635[sizeof("m")];
+    char uniname2ctype_pool_str638[sizeof("unifiedideograph")];
+    char uniname2ctype_pool_str639[sizeof("paragraphseparator")];
+    char uniname2ctype_pool_str640[sizeof("lm")];
+    char uniname2ctype_pool_str645[sizeof("openpunctuation")];
+    char uniname2ctype_pool_str646[sizeof("tagb")];
+    char uniname2ctype_pool_str649[sizeof("kharoshthi")];
+    char uniname2ctype_pool_str651[sizeof("enclosingmark")];
+    char uniname2ctype_pool_str652[sizeof("surrogate")];
+    char uniname2ctype_pool_str653[sizeof("beng")];
+    char uniname2ctype_pool_str654[sizeof("number")];
+    char uniname2ctype_pool_str656[sizeof("telugu")];
+    char uniname2ctype_pool_str660[sizeof("rejang")];
+    char uniname2ctype_pool_str661[sizeof("malayalam")];
+    char uniname2ctype_pool_str674[sizeof("idsb")];
+    char uniname2ctype_pool_str676[sizeof("hexdigit")];
+    char uniname2ctype_pool_str677[sizeof("xpeo")];
+    char uniname2ctype_pool_str689[sizeof("phnx")];
+    char uniname2ctype_pool_str692[sizeof("bopo")];
+    char uniname2ctype_pool_str698[sizeof("bopomofo")];
+    char uniname2ctype_pool_str699[sizeof("dep")];
+    char uniname2ctype_pool_str701[sizeof("sylo")];
+    char uniname2ctype_pool_str705[sizeof("grbase")];
+    char uniname2ctype_pool_str706[sizeof("alphabetic")];
+    char uniname2ctype_pool_str707[sizeof("cwcm")];
+    char uniname2ctype_pool_str708[sizeof("patternsyntax")];
+    char uniname2ctype_pool_str709[sizeof("grek")];
+    char uniname2ctype_pool_str710[sizeof("greek")];
+    char uniname2ctype_pool_str714[sizeof("syrc")];
+    char uniname2ctype_pool_str717[sizeof("syriac")];
+    char uniname2ctype_pool_str722[sizeof("cuneiform")];
+    char uniname2ctype_pool_str723[sizeof("gujr")];
+    char uniname2ctype_pool_str726[sizeof("lydi")];
+    char uniname2ctype_pool_str727[sizeof("gujarati")];
+    char uniname2ctype_pool_str728[sizeof("sylotinagri")];
+    char uniname2ctype_pool_str729[sizeof("lydian")];
+    char uniname2ctype_pool_str748[sizeof("sm")];
+    char uniname2ctype_pool_str751[sizeof("currencysymbol")];
+    char uniname2ctype_pool_str755[sizeof("limb")];
+    char uniname2ctype_pool_str758[sizeof("othergraphemeextend")];
+    char uniname2ctype_pool_str786[sizeof("guru")];
+    char uniname2ctype_pool_str797[sizeof("qmark")];
+    char uniname2ctype_pool_str809[sizeof("mark")];
+    char uniname2ctype_pool_str820[sizeof("quotationmark")];
+    char uniname2ctype_pool_str823[sizeof("hex")];
+    char uniname2ctype_pool_str842[sizeof("upper")];
+    char uniname2ctype_pool_str843[sizeof("wspace")];
+    char uniname2ctype_pool_str848[sizeof("khmr")];
+    char uniname2ctype_pool_str849[sizeof("khmer")];
+    char uniname2ctype_pool_str863[sizeof("oldsoutharabian")];
+    char uniname2ctype_pool_str864[sizeof("spacingmark")];
+    char uniname2ctype_pool_str866[sizeof("punctuation")];
+    char uniname2ctype_pool_str867[sizeof("uppercase")];
+    char uniname2ctype_pool_str878[sizeof("meeteimayek")];
+    char uniname2ctype_pool_str883[sizeof("uppercaseletter")];
+    char uniname2ctype_pool_str884[sizeof("cypriot")];
+    char uniname2ctype_pool_str886[sizeof("buhd")];
+    char uniname2ctype_pool_str887[sizeof("buhid")];
+    char uniname2ctype_pool_str895[sizeof("modifiersymbol")];
+    char uniname2ctype_pool_str898[sizeof("blank")];
+    char uniname2ctype_pool_str908[sizeof("hyphen")];
+    char uniname2ctype_pool_str909[sizeof("bugi")];
+    char uniname2ctype_pool_str935[sizeof("myanmar")];
+    char uniname2ctype_pool_str937[sizeof("imperialaramaic")];
+    char uniname2ctype_pool_str947[sizeof("mathsymbol")];
+    char uniname2ctype_pool_str966[sizeof("cwu")];
+    char uniname2ctype_pool_str975[sizeof("gurmukhi")];
+    char uniname2ctype_pool_str978[sizeof("buginese")];
+    char uniname2ctype_pool_str1022[sizeof("symbol")];
+    char uniname2ctype_pool_str1024[sizeof("osmanya")];
+    char uniname2ctype_pool_str1036[sizeof("bamu")];
+    char uniname2ctype_pool_str1040[sizeof("sk")];
+    char uniname2ctype_pool_str1065[sizeof("bamum")];
+    char uniname2ctype_pool_str1071[sizeof("kayahli")];
+    char uniname2ctype_pool_str1072[sizeof("egyp")];
+    char uniname2ctype_pool_str1140[sizeof("grlink")];
+    char uniname2ctype_pool_str1141[sizeof("xsux")];
+    char uniname2ctype_pool_str1174[sizeof("any")];
+    char uniname2ctype_pool_str1187[sizeof("graphemelink")];
+    char uniname2ctype_pool_str1221[sizeof("mlym")];
+    char uniname2ctype_pool_str1235[sizeof("mymr")];
+    char uniname2ctype_pool_str1277[sizeof("hebrew")];
+    char uniname2ctype_pool_str1542[sizeof("egyptianhieroglyphs")];
+    char uniname2ctype_pool_str1751[sizeof("zyyy")];
 #endif /* USE_UNICODE_PROPERTIES */
   };
 static const struct uniname2ctype_pool_t uniname2ctype_pool_contents =
   {
-#ifdef USE_UNICODE_PROPERTIES
-    "lo",
-    "po",
-    "lao",
-    "p",
-    "lt",
-    "co",
-    "pi",
-    "yi",
-    "pc",
-    "cn",
-    "c",
-    "cc",
-    "zp",
-    "kaithi",
-    "pd",
-    "latin",
-#endif /* USE_UNICODE_PROPERTIES */
+#ifndef USE_UNICODE_PROPERTIES
     "print",
-#ifndef USE_UNICODE_PROPERTIES
     "punct",
-    "alpha",
-    "alnum",
-#endif /* ! USE_UNICODE_PROPERTIES */
-    "xdigit",
-#ifndef USE_UNICODE_PROPERTIES
-    "newline",
-    "upper",
 #else /* USE_UNICODE_PROPERTIES */
-    "punct",
-    "lycian",
+    "c",
+    "cc",
+    "co",
+    "l",
+    "lo",
     "no",
-    "coptic",
-    "nko",
     "n",
-    "l",
     "ll",
-    "lydian",
-    "kannada",
-    "pe",
-    "lepcha",
-    "vai",
-    "so",
+    "cn",
+    "nl",
+    "lao",
+    "laoo",
+    "zl",
+    "z",
+    "control",
+    "qaac",
+    "ci",
+    "lana",
+    "oalpha",
+    "qaai",
+    "arabic",
+    "cari",
+    "oriya",
+    "carian",
+    "cntrl",
+    "connectorpunctuation",
+    "olower",
+    "latn",
+    "latin",
+    "ital",
+    "hano",
+    "lt",
     "han",
-    "z",
-    "nd",
-    "lm",
-    "zl",
+    "hanunoo",
+    "canadianaboriginal",
+    "hangul",
+    "hani",
+    "nchar",
+    "zinh",
+    "tale",
+    "loe",
+    "hira",
+    "taile",
+    "lineseparator",
+    "thaa",
+    "hiragana",
+    "thai",
+    "initialpunctuation",
+    "other",
+    "thaana",
+    "cher",
+    "otherletter",
+    "othernumber",
+    "letter",
     "sc",
-    "cypriot",
-    "carian",
-    "katakana",
-    "phoenician",
-    "cyrillic",
-#endif /* USE_UNICODE_PROPERTIES */
+    "so",
+    "taiviet",
+    "noncharactercodepoint",
+    "ethi",
+    "cans",
+    "titlecaseletter",
     "ascii",
-#ifdef USE_UNICODE_PROPERTIES
-    "nl",
-    "phagspa",
-    "ps",
-    "kharoshthi",
+    "letternumber",
+    "otheralphabetic",
+    "otherlowercase",
+    "idc",
+    "oidc",
+    "sinhala",
+    "terminalpunctuation",
+    "olditalic",
+    "di",
+    "otheridcontinue",
+    "odi",
+    "dia",
+    "otheridstart",
+    "oldturkic",
+    "diacritic",
+    "oldpersian",
+    "radical",
+    "sinh",
+    "ideo",
+    "shavian",
+    "format",
+    "inscriptionalparthian",
+    "vai",
+    "vaii",
+    "tifinagh",
+    "cf",
+    "othersymbol",
+    "ideographic",
+    "inherited",
+    "glagolitic",
+    "idcontinue",
+    "asciihexdigit",
+    "inscriptionalpahlavi",
+    "s",
+    "gothic",
     "cs",
-    "word",
+    "avestan",
+    "tavt",
     "zs",
-    "digit",
+    "decimalnumber",
+    "tagbanwa",
+    "joinc",
+    "geor",
+    "hang",
+    "georgian",
+    "cased",
+    "joincontrol",
+    "oids",
+    "variationselector",
+    "graph",
+    "changeswhenlowercased",
+    "nd",
+    "goth",
+    "pc",
+    "po",
+    "ogrext",
+    "coptic",
+    "grext",
+    "logicalorderexception",
+    "idst",
 #endif /* USE_UNICODE_PROPERTIES */
-    "cntrl",
+    "alpha",
 #ifdef USE_UNICODE_PROPERTIES
-    "ethiopic",
-    "hangul",
-    "canadianaboriginal",
-    "sm",
-    "syriac",
-    "sylotinagri",
-    "lu",
-    "oldpersian",
-    "oldturkic",
-    "olditalic",
-    "gujarati",
-    "s",
-    "cuneiform",
-    "georgian",
-    "sk",
-    "imperialaramaic",
+    "pi",
+    "dsrt",
+    "dash",
+    "otherdefaultignorablecodepoint",
+    "copt",
+    "idstart",
+    "closepunctuation",
+    "changeswhentitlecased",
+    "lepc",
+    "avst",
+    "cprt",
+    "runic",
+    "patsyn",
+    "mc",
+    "tfng",
+    "lepcha",
+    "prti",
+    "print",
+    "phli",
+    "mn",
+    "idsbinaryoperator",
+    "talu",
+    "runr",
+    "graphemebase",
     "common",
-    "glagolitic",
-    "hiragana",
-    "sundanese",
 #endif /* USE_UNICODE_PROPERTIES */
-    "space",
+    "alnum",
 #ifndef USE_UNICODE_PROPERTIES
-    "word",
+    "xdigit",
+    "newline",
+    "upper",
+    "ascii",
+    "cntrl",
 #else /* USE_UNICODE_PROPERTIES */
-    "khmer",
+    "phoenician",
+    "deva",
+    "changeswhencasefolded",
+    "pe",
+    "mongolian",
+    "armn",
+    "deseret",
+    "softdotted",
+    "armi",
+    "devanagari",
+    "digit",
+    "caseignorable",
+    "taml",
+    "tamil",
+    "telu",
+    "ids",
+    "armenian",
+    "sd",
+    "privateuse",
+    "assigned",
+    "cham",
+    "omath",
+    "otherpunctuation",
+    "taitham",
+    "defaultignorablecodepoint",
+    "glag",
+    "ethiopic",
+    "vs",
+    "me",
+    "cwl",
+    "mtei",
+    "math",
+    "term",
+    "java",
+    "tglg",
+    "lower",
+    "patternwhitespace",
+    "finalpunctuation",
+    "tagalog",
+    "patws",
+    "lisu",
+    "otheruppercase",
 #endif /* USE_UNICODE_PROPERTIES */
-    "lower",
+    "space",
 #ifdef USE_UNICODE_PROPERTIES
-    "cherokee",
-    "alpha",
+    "graphemeextend",
+    "saur",
+    "uideo",
+    "lowercase",
+    "rjng",
+    "osma",
+    "linb",
+    "bali",
+    "cwt",
+    "separator",
+    "othermath",
+    "unassigned",
+    "lowercaseletter",
+    "arab",
+    "samr",
+    "brai",
+    "sundanese",
+    "samaritan",
+    "ahex",
+    "linearb",
     "pf",
+    "ext",
+    "olck",
+    "nko",
+    "nkoo",
+    "newline",
+    "tibetan",
+    "javanese",
+    "bengali",
     "newtailue",
-    "cham",
-    "samaritan",
-    "cf",
-    "thai",
-    "assigned",
-    "bopomofo",
-    "linearb",
-    "armenian",
-    "sinhala",
+    "kana",
     "olchiki",
-    "gothic",
-    "tagalog",
-    "hanunoo",
-    "inscriptionalpahlavi",
-    "inscriptionalparthian",
-    "mn",
-    "runic",
-    "mc",
-    "bengali",
-    "avestan",
+    "kali",
+    "cwcf",
+    "ps",
+    "braille",
+    "tibt",
+    "sterm",
+    "ugar",
+    "nonspacingmark",
+    "phag",
+    "kaithi",
+    "xidc",
+    "balinese",
+    "mong",
+    "ogam",
+    "modifierletter",
+    "ugaritic",
+    "katakana",
+    "pd",
+    "hebr",
+    "p",
+    "orkh",
 #endif /* USE_UNICODE_PROPERTIES */
+    "word",
+#ifndef USE_UNICODE_PROPERTIES
+    "lower",
     "graph",
-#ifndef USE_UNICODE_PROPERTIES
     "digit",
     "blank"
 #else /* USE_UNICODE_PROPERTIES */
-    "newline",
-    "arabic",
-    "gurmukhi",
-    "kayahli",
-    "taitham",
-    "osmanya",
+    "saurashtra",
+    "khar",
+    "sund",
+    "zp",
+    "changeswhenuppercased",
+    "xidstart",
+    "shaw",
+    "kthi",
+    "ogham",
+    "spaceseparator",
+    "changeswhencasemapped",
+    "sarb",
+    "xidcontinue",
+    "bidic",
+    "deprecated",
+    "xdigit",
+    "bidicontrol",
+    "lu",
+    "dashpunctuation",
+    "extender",
+    "idstrinaryoperator",
+    "cherokee",
+    "punct",
+    "phagspa",
+    "oupper",
+    "lyci",
+    "whitespace",
+    "lycian",
+    "yi",
+    "cyrl",
+    "knda",
+    "orya",
+    "cyrillic",
+    "yiii",
+    "kannada",
+    "xids",
+    "limbu",
+    "m",
+    "unifiedideograph",
+    "paragraphseparator",
+    "lm",
+    "openpunctuation",
+    "tagb",
+    "kharoshthi",
+    "enclosingmark",
+    "surrogate",
+    "beng",
+    "number",
+    "telugu",
     "rejang",
+    "malayalam",
+    "idsb",
+    "hexdigit",
+    "xpeo",
+    "phnx",
+    "bopo",
+    "bopomofo",
+    "dep",
+    "sylo",
+    "grbase",
+    "alphabetic",
+    "cwcm",
+    "patternsyntax",
+    "grek",
+    "greek",
+    "syrc",
+    "syriac",
+    "cuneiform",
+    "gujr",
+    "lydi",
+    "gujarati",
+    "sylotinagri",
+    "lydian",
+    "sm",
+    "currencysymbol",
+    "limb",
+    "othergraphemeextend",
+    "guru",
+    "qmark",
+    "mark",
+    "quotationmark",
+    "hex",
+    "upper",
+    "wspace",
+    "khmr",
+    "khmer",
     "oldsoutharabian",
-    "thaana",
-    "deseret",
-    "inherited",
-    "mongolian",
-    "taile",
-    "me",
+    "spacingmark",
+    "punctuation",
+    "uppercase",
+    "meeteimayek",
+    "uppercaseletter",
+    "cypriot",
+    "buhd",
+    "buhid",
+    "modifiersymbol",
+    "blank",
+    "hyphen",
+    "bugi",
+    "myanmar",
+    "imperialaramaic",
+    "mathsymbol",
+    "cwu",
+    "gurmukhi",
     "buginese",
-    "tamil",
-    "m",
-    "ugaritic",
-    "alnum",
-    "ogham",
-    "braille",
+    "symbol",
+    "osmanya",
+    "bamu",
+    "sk",
+    "bamum",
+    "kayahli",
+    "egyp",
+    "grlink",
+    "xsux",
+    "any",
+    "graphemelink",
+    "mlym",
+    "mymr",
     "hebrew",
-    "javanese",
-    "upper",
-    "shavian",
-    "saurashtra",
-    "myanmar",
-    "balinese",
-    "buhid",
-    "greek",
     "egyptianhieroglyphs",
-    "tagbanwa",
-    "oriya",
-    "devanagari",
-    "blank",
-    "tibetan",
-    "limbu",
-    "taiviet",
-    "malayalam",
-    "meeteimayek",
-    "lisu",
-    "any",
-    "tifinagh",
-    "bamum",
-    "telugu"
+    "zyyy"
 #endif /* USE_UNICODE_PROPERTIES */
   };
 #define uniname2ctype_pool ((const char *) &uniname2ctype_pool_contents)
@@ -10442,223 +19133,692 @@
 {
   static const struct uniname2ctype_struct wordlist[] =
     {
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-#ifndef USE_UNICODE_PROPERTIES
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str7,                  7},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str8,                  8},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str9,                  1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str10,                 13},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str11,                11},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str12,                0},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str13,                 10},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str14,                 14},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str15,                  3},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str16,                  9},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str17,                  12},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str18,                  6},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str19,                  5},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str20,                  4},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str21,                  2}
-#else /* USE_UNICODE_PROPERTIES */
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str7,                    26},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str8,                    43},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str9,                   74},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str10,                     37},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str11,                    27},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str12,                    21},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str13,                    42},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str14,                    90},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str15,                    38},
+#ifdef USE_UNICODE_PROPERTIES
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str3,                                        17},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str17,                    20},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str18,                     17},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str19,                    18},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str5,                                       18},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str7,                                       21},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str9,                                        23},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str10,                                       26},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str12,                                       36},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str13,                                        33},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str14,                                       24},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str15,                                       20},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str16,                                       35},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str18,                                      93},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str19,                                     93},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str20,                                       51},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str21,                                        50},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str22,                                  18},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str24,                                    127},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str25,                                       59},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str28,                                    150},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str33,                                  175},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str34,                                    113},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str40,                                   79},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str41,                                    147},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str43,                                    86},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str44,                                  147},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str46,                                     3},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str49,                     38},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str50,                                  179},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str51,                                     74},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str52,                                    74},
       {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str23,                    52},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str24,               145},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str25,                    39},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str26,                 55},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str27,                  7},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str28,                11},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str29,                  8},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str30,               127},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str31,                    36},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str32,               108},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str33,                  119},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str56,                                    110},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str65,                                    115},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str66,                                       27},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str35,                     33},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str36,                     23},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str37,                    24},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str68,                                     108},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str70,                                 115},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str71,                      100},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str73,                                   97},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str74,                                    108},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str76,                                   181},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str77,                                    113},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str83,                                    119},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str85,                                     190},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str86,                                    105},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str91,                                   119},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str92,                            51},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str94,                                     81},
       {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str40,               129},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str41,               70},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str42,                    40},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str43,               121},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str44,                  123},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str45,                    49},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str46,                   89},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str47,                     50},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str48,                    34},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str49,                    25},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str50,                    51},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str97,                                105},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str98,                                     92},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str52,                    46},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str53,              105},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str100,                       42},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str101,                                    17},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str55,               128},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str56,              87},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str57,           117},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str103,                                   81},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str107,                                     99},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str111,                              26},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str59,              57},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str60,                 14},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str61,                    35},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str113,                              36},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str114,                                   23},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str63,              118},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str64,                    44},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str116,                                       46},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str66,           114},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str118,                                       49},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str123,                                 151},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str128,                   181},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str129,                                     98},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str130,                                    100},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str135,                          27},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str136,                                    14},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str68,                    22},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str69,                  12},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str138,                             35},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str139,                         175},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str141,                          179},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str144,                                      66},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str146,                                    192},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str147,                                  91},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str148,                     171},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str151,                               110},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str152,                                       69},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str153,                         192},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str155,                                     187},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str156,                                     177},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str161,                            191},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str162,                               163},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str167,                               177},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str168,                              132},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str171,                                 185},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str179,                                     91},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str183,                                    176},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str185,                                 122},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str186,                                   19},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str192,                   161},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str196,                                     142},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str197,                                    142},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str202,                                130},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str203,                                       19},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str205,                              49},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str207,                             176},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str211,                               113},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str212,                              129},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str218,                               66},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str220,                           174},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str224,                    162},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str225,                                        45},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str226,                                  111},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str227,                                       22},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str229,                                 152},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str235,                                    151},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str236,                                       53},
       {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str76,                    53},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str77,                  4},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str78,                  3},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str243,                            34},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str244,                                117},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str245,                                   167},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str248,                                     96},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str249,                                     97},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str80,              79},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str251,                                 96},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str253,                                    58},
       {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str83,                78},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str256,                             167},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str257,                                    191},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str260,                       194},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str85,    81},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str262,                                     5},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str263,                    60},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str264,                                       34},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str268,                                    111},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str269,                                       38},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str87,                    48},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str271,                                       43},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str272,                                  182},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str276,                                  127},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str277,                                    70},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str282,                   190},
       {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str90,                61},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str91,          112},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str285,                                    184},
       {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str94,                    28},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str95,           113},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str288,                                     1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str289,                                       42},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str292,                                    112},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str297,                                    168},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str298,          187},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str302,                                    127},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str306,                                  65},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str307,                         40},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str97,            144},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str98,             91},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str99,              66},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str100,                     45},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str309,                    62},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str312,                                    140},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str317,                                    152},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str318,                                    124},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str319,                                   102},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str320,                                  196},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str321,                                       30},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str326,                                    130},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str327,                                  140},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str328,                                    161},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str329,                                     7},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str330,                                    162},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str331,                                       32},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str332,                       183},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str102,            116},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str103,              77},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str104,                    47},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str105,      140},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str334,                                    128},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str335,                                    102},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str107,                54},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str108,           110},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str109,              86},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str110,            120},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str111,                  9},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str112,                 84},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str337,                             71},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str338,                                   73},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str339,                                    13},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str340,                              136},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str341,                                     82},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str342,                    63},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str343,                                       40},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str344,                               104},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str352,                                     77},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str353,                                 112},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str354,                              189},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str357,                                    159},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str358,                               82},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str114,                  6},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str115,              80},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str360,                                     4},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str361,                            59},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str362,                                     87},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str363,                                    87},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str117,                  1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str118,                    41},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str119,            109},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str120,                 130},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str121,            135},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str122,                    19},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str123,                  73},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str124,              16},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str125,              88},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str126,              101},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str127,              58},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str128,               72},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str365,                                     88},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str366,                                      65},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str367,                                 77},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str370,                                      189},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str130,              122},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str131,                92},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str132,               95},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str133,               96},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str134, 143},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str135, 142},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str136,                    32},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str137,                 83},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str138,                    30},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str139,               64},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str140,              133},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str372,                               21},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str373,                                 16},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str142,                  5},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str143,                0},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str144,                60},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str145,              65},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str146,              125},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str147,              131},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str375,                                    149},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str149,              104},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str377,                                   172},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str378,                         43},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str379,                                 150},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str381,                69},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str387,                                    129},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str388,                                 98},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str390,                                      194},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str395,                                       31},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str396,                                      60},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str400,                                    158},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str404,                                     54},
       {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str152,               126},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str153,      141},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str407,                                    171},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str408,                                    157},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str155,                62},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str156,               93},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str157,             94},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str158,             85},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str410,                                    114},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str413,                                     6},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str414,                       195},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str417,                         41},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str418,                                 114},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str419,                                   195},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str420,                                    155},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str426,                          180},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str427,                                     9},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str429,                           70},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str430,                                    143},
       {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str163,                100},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str435,                                   186},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str438,                                56},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str165,                    31},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str440,                                    145},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str442,                                    123},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str444,                                    120},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str445,                                    134},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str448,                                      62},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str449,                                50},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str450,                               172},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str451,                               20},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str454,                          24},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str455,                                     79},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str458,                                    154},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str459,                                    125},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str460,                               139},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str462,                               154},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str463,                                    174},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str465,                                 120},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str467,                                       41},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str469,                                     178},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str474,                                    141},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str476,                                     138},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str477,                                    138},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str479,                                   0},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str480,                                  94},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str481,                                157},
       {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str169,             107},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str485,                                  83},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str486,                               128},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str487,                                    106},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str488,                                 141},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str489,                                    144},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str490,                                     63},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str491,                                       44},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str171,                 68},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str172,                     29},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str493,                                 125},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str494,                                     94},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str502,                                   193},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str504,                                    121},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str505,                           32},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str508,                                    137},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str509,                                  164},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str512,                                     68},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str514,                                134},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str515,                                    104},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str516,                                    101},
       {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str176,             102},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str177,                 13},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str178,                 82},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str520,                           25},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str521,                                121},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str522,                                106},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str523,                                       39},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str180,              106},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str181,                59},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str182,             138},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str183,                 10},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str525,                                     78},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str531,                                        37},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str533,                                    163},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str536,                                     12},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str537,                              143},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str538,                                    133},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str539,                                    139},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str542,                                       52},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str548,                    61},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str552,                                 67},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str553,                                    122},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str554,                                    164},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str556,                                   101},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str558,                           53},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str559,                    64},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str560,                                    160},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str562,                              68},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str564,                                   166},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str570,                              188},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str573,                                   11},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str575,                             166},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str584,                                       28},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str587,                          39},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str590,                                178},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str593,                      184},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str594,                                 99},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str595,                                     8},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str597,                                 137},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str598,                                  180},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str599,                                    146},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str601,                              165},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str602,                                  146},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str603,                                      109},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str606,                                     76},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str608,                                     89},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str610,                                     86},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str611,                                 76},
       {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str188,              103},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str189,           124},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str190,               76},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str191,             115},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str192,                 97},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str616,                                    109},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str618,                                  89},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str623,                                     67},
       {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str195,                 56},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str626,                                   118},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str635,                                        29},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str638,                        186},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str639,                       52},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str640,                                       25},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str645,                          44},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str646,                                    117},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str649,                              133},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str197,  134},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str198,              98},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str651,                            31},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str652,                                22},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str653,                                     83},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str654,                                   33},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str200,                 67},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str201,            63},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str656,                                   88},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str660,                                  145},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str661,                                90},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str674,                                    183},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str203,                  2},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str208,               75},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str676,                                173},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str677,                                    132},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str689,                                    136},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str692,                                    107},
       {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str214,                 99},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str698,                                107},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str699,                                     188},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str216,              132},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str701,                                    131},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str705,                                   71},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str706,                               55},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str707,                                     64},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str708,                           196},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str709,                                     75},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str710,                                    75},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str714,                                     80},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str717,                                   80},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str722,                               135},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str723,                                     85},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str726,                                    148},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str727,                                 85},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str728,                             131},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str729,                                  148},
       {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str232,             71},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str239,          139},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str748,                                       48},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str751,                           46},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str755,                                    118},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str758,                     182},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str786,                                     84},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str241,                 136},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str797,                                   170},
       {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str809,                                     29},
       {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str260,                   15},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str820,                           170},
       {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str263,             111},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str823,                                     173},
       {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
       {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str842,                                    10},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str843,                                  165},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str848,                                    103},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str849,                                   103},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str863,                         160},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str864,                              30},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str866,                              37},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str867,                                57},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str878,                             158},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str883,                          28},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str884,                                 124},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str886,                                    116},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str887,                                   116},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str895,                           47},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str898,                                     2},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str908,                                  169},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str909,                                    126},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str935,                                  95},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str937,                         159},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str947,                               48},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str966,                                      61},
       {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str290,                137},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str299,                69}
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str975,                                 84},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str978,                                126},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
 #endif /* USE_UNICODE_PROPERTIES */
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#ifndef USE_UNICODE_PROPERTIES
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str7,                                     7},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str8,                                     8},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str9,                                     1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str10,                                    13},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str11,                                   11},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str12,                                   0},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str13,                                    10},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str14,                                    14},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str15,                                     3},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str16,                                     9},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str17,                                     12},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str18,                                     6},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str19,                                     5},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str20,                                     4},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str21,                                     2}
+#else /* USE_UNICODE_PROPERTIES */
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1022,                                   45},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1024,                                 123},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1036,                                    156},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1040,                                       47},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1065,                                   156},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1071,                                 144},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1072,                                    153},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1140,                                   72},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1141,                                    135},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1174,                                      15},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1187,                             72},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1221,                                     90},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1235,                                     95},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1277,                                   78},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1542,                     153},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1751,                                     73}
+#endif /* USE_UNICODE_PROPERTIES */
     };
 
   if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
Index: enc/unicode/name2ctype.h.blt
===================================================================
--- enc/unicode/name2ctype.h.blt	(revision 25323)
+++ enc/unicode/name2ctype.h.blt	(revision 25324)
@@ -3,7 +3,7 @@
 #ifndef USE_UNICODE_PROPERTIES
 /* Computed positions: -k'1,3' */
 #else /* USE_UNICODE_PROPERTIES */
-/* Computed positions: -k'1,3-4,$' */
+/* Computed positions: -k'1-3,6,12,16,$' */
 #endif /* USE_UNICODE_PROPERTIES */
 
 #if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
@@ -8719,6 +8719,7311 @@
 	0x3000, 0x3000,
 }; /* CR_Zs */
 
+/* 'Math': Derived Property */
+static const OnigCodePoint CR_Math[] = {
+	105,
+	0x002b, 0x002b,
+	0x003c, 0x003e,
+	0x005e, 0x005e,
+	0x007c, 0x007c,
+	0x007e, 0x007e,
+	0x00ac, 0x00ac,
+	0x00b1, 0x00b1,
+	0x00d7, 0x00d7,
+	0x00f7, 0x00f7,
+	0x03d0, 0x03d2,
+	0x03d5, 0x03d5,
+	0x03f0, 0x03f1,
+	0x03f4, 0x03f6,
+	0x0606, 0x0608,
+	0x2016, 0x2016,
+	0x2032, 0x2034,
+	0x2040, 0x2040,
+	0x2044, 0x2044,
+	0x2052, 0x2052,
+	0x2061, 0x2064,
+	0x207a, 0x207e,
+	0x208a, 0x208e,
+	0x20d0, 0x20dc,
+	0x20e1, 0x20e1,
+	0x20e5, 0x20e6,
+	0x20eb, 0x20ef,
+	0x2102, 0x2102,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2119, 0x211d,
+	0x2124, 0x2124,
+	0x2128, 0x2129,
+	0x212c, 0x212d,
+	0x212f, 0x2131,
+	0x2133, 0x2138,
+	0x213c, 0x2149,
+	0x214b, 0x214b,
+	0x2190, 0x21a7,
+	0x21a9, 0x21ae,
+	0x21b0, 0x21b1,
+	0x21b6, 0x21b7,
+	0x21bc, 0x21db,
+	0x21dd, 0x21dd,
+	0x21e4, 0x21e5,
+	0x21f4, 0x22ff,
+	0x2308, 0x230b,
+	0x2320, 0x2321,
+	0x237c, 0x237c,
+	0x239b, 0x23b5,
+	0x23b7, 0x23b7,
+	0x23d0, 0x23d0,
+	0x23dc, 0x23e2,
+	0x25a0, 0x25a1,
+	0x25ae, 0x25b7,
+	0x25bc, 0x25c1,
+	0x25c6, 0x25c7,
+	0x25ca, 0x25cb,
+	0x25cf, 0x25d3,
+	0x25e2, 0x25e2,
+	0x25e4, 0x25e4,
+	0x25e7, 0x25ec,
+	0x25f8, 0x25ff,
+	0x2605, 0x2606,
+	0x2640, 0x2640,
+	0x2642, 0x2642,
+	0x2660, 0x2663,
+	0x266d, 0x266f,
+	0x27c0, 0x27ca,
+	0x27cc, 0x27cc,
+	0x27d0, 0x27ff,
+	0x2900, 0x2aff,
+	0x2b30, 0x2b44,
+	0x2b47, 0x2b4c,
+	0xfb29, 0xfb29,
+	0xfe61, 0xfe66,
+	0xfe68, 0xfe68,
+	0xff0b, 0xff0b,
+	0xff1c, 0xff1e,
+	0xff3c, 0xff3c,
+	0xff3e, 0xff3e,
+	0xff5c, 0xff5c,
+	0xff5e, 0xff5e,
+	0xffe2, 0xffe2,
+	0xffe9, 0xffec,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d7cb,
+	0x1d7ce, 0x1d7ff,
+}; /* CR_Math */
+
+/* 'Alphabetic': Derived Property */
+static const OnigCodePoint CR_Alphabetic[] = {
+	474,
+	0x0041, 0x005a,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0345, 0x0345,
+	0x0370, 0x0374,
+	0x0376, 0x0377,
+	0x037a, 0x037d,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x0559,
+	0x0561, 0x0587,
+	0x05b0, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f2,
+	0x0610, 0x061a,
+	0x0621, 0x0657,
+	0x0659, 0x065e,
+	0x066e, 0x06d3,
+	0x06d5, 0x06dc,
+	0x06e1, 0x06e8,
+	0x06ed, 0x06ef,
+	0x06fa, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x073f,
+	0x074d, 0x07b1,
+	0x07ca, 0x07ea,
+	0x07f4, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0800, 0x0817,
+	0x081a, 0x082c,
+	0x0900, 0x0939,
+	0x093d, 0x094c,
+	0x094e, 0x094e,
+	0x0950, 0x0950,
+	0x0955, 0x0955,
+	0x0958, 0x0963,
+	0x0971, 0x0972,
+	0x0979, 0x097f,
+	0x0981, 0x0983,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bd, 0x09c4,
+	0x09c7, 0x09c8,
+	0x09cb, 0x09cc,
+	0x09ce, 0x09ce,
+	0x09d7, 0x09d7,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e3,
+	0x09f0, 0x09f1,
+	0x0a01, 0x0a03,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a3e, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4c,
+	0x0a51, 0x0a51,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a70, 0x0a75,
+	0x0a81, 0x0a83,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abd, 0x0ac5,
+	0x0ac7, 0x0ac9,
+	0x0acb, 0x0acc,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae3,
+	0x0b01, 0x0b03,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3d, 0x0b44,
+	0x0b47, 0x0b48,
+	0x0b4b, 0x0b4c,
+	0x0b56, 0x0b57,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b63,
+	0x0b71, 0x0b71,
+	0x0b82, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bbe, 0x0bc2,
+	0x0bc6, 0x0bc8,
+	0x0bca, 0x0bcc,
+	0x0bd0, 0x0bd0,
+	0x0bd7, 0x0bd7,
+	0x0c01, 0x0c03,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c44,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4c,
+	0x0c55, 0x0c56,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c63,
+	0x0c82, 0x0c83,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbd, 0x0cc4,
+	0x0cc6, 0x0cc8,
+	0x0cca, 0x0ccc,
+	0x0cd5, 0x0cd6,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce3,
+	0x0d02, 0x0d03,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d44,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4c,
+	0x0d57, 0x0d57,
+	0x0d60, 0x0d63,
+	0x0d7a, 0x0d7f,
+	0x0d82, 0x0d83,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0dcf, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0dd8, 0x0ddf,
+	0x0df2, 0x0df3,
+	0x0e01, 0x0e3a,
+	0x0e40, 0x0e46,
+	0x0e4d, 0x0e4d,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb9,
+	0x0ebb, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0ecd, 0x0ecd,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f00,
+	0x0f40, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f71, 0x0f81,
+	0x0f88, 0x0f8b,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x1000, 0x1036,
+	0x1038, 0x1038,
+	0x103b, 0x103f,
+	0x1050, 0x1062,
+	0x1065, 0x1068,
+	0x106e, 0x1086,
+	0x108e, 0x108e,
+	0x109c, 0x109d,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x135f, 0x135f,
+	0x1380, 0x138f,
+	0x13a0, 0x13f4,
+	0x1401, 0x166c,
+	0x166f, 0x167f,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	0x16ee, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1713,
+	0x1720, 0x1733,
+	0x1740, 0x1753,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1772, 0x1773,
+	0x1780, 0x17b3,
+	0x17b6, 0x17c8,
+	0x17d7, 0x17d7,
+	0x17dc, 0x17dc,
+	0x1820, 0x1877,
+	0x1880, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1920, 0x192b,
+	0x1930, 0x1938,
+	0x1950, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19b0, 0x19c9,
+	0x1a00, 0x1a1b,
+	0x1a20, 0x1a5e,
+	0x1a61, 0x1a74,
+	0x1aa7, 0x1aa7,
+	0x1b00, 0x1b33,
+	0x1b35, 0x1b43,
+	0x1b45, 0x1b4b,
+	0x1b80, 0x1ba9,
+	0x1bae, 0x1baf,
+	0x1c00, 0x1c35,
+	0x1c4d, 0x1c4f,
+	0x1c5a, 0x1c7d,
+	0x1ce9, 0x1cec,
+	0x1cee, 0x1cf2,
+	0x1d00, 0x1dbf,
+	0x1e00, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2119, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x212d,
+	0x212f, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x2188,
+	0x24b6, 0x24e9,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cee,
+	0x2d00, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x2de0, 0x2dff,
+	0x2e2f, 0x2e2f,
+	0x3005, 0x3007,
+	0x3021, 0x3029,
+	0x3031, 0x3035,
+	0x3038, 0x303c,
+	0x3041, 0x3096,
+	0x309d, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa4d0, 0xa4fd,
+	0xa500, 0xa60c,
+	0xa610, 0xa61f,
+	0xa62a, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66e,
+	0xa67f, 0xa697,
+	0xa6a0, 0xa6ef,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa801,
+	0xa803, 0xa805,
+	0xa807, 0xa80a,
+	0xa80c, 0xa827,
+	0xa840, 0xa873,
+	0xa880, 0xa8c3,
+	0xa8f2, 0xa8f7,
+	0xa8fb, 0xa8fb,
+	0xa90a, 0xa92a,
+	0xa930, 0xa952,
+	0xa960, 0xa97c,
+	0xa980, 0xa9bf,
+	0xa9cf, 0xa9cf,
+	0xaa00, 0xaa36,
+	0xaa40, 0xaa4d,
+	0xaa60, 0xaa76,
+	0xaa7a, 0xaa7a,
+	0xaa80, 0xaabe,
+	0xaac0, 0xaac0,
+	0xaac2, 0xaac2,
+	0xaadb, 0xaadd,
+	0xabc0, 0xabea,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb28,
+	0xfb2a, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfd3d,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdfb,
+	0xfe70, 0xfe74,
+	0xfe76, 0xfefc,
+	0xff21, 0xff3a,
+	0xff41, 0xff5a,
+	0xff66, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10140, 0x10174,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x103d1, 0x103d5,
+	0x10400, 0x1049d,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a60, 0x10a7c,
+	0x10b00, 0x10b35,
+	0x10b40, 0x10b55,
+	0x10b60, 0x10b72,
+	0x10c00, 0x10c48,
+	0x11082, 0x110b8,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x13000, 0x1342e,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+}; /* CR_Alphabetic */
+
+/* 'Lowercase': Derived Property */
+static const OnigCodePoint CR_Lowercase[] = {
+	602,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00ba, 0x00ba,
+	0x00df, 0x00f6,
+	0x00f8, 0x00ff,
+	0x0101, 0x0101,
+	0x0103, 0x0103,
+	0x0105, 0x0105,
+	0x0107, 0x0107,
+	0x0109, 0x0109,
+	0x010b, 0x010b,
+	0x010d, 0x010d,
+	0x010f, 0x010f,
+	0x0111, 0x0111,
+	0x0113, 0x0113,
+	0x0115, 0x0115,
+	0x0117, 0x0117,
+	0x0119, 0x0119,
+	0x011b, 0x011b,
+	0x011d, 0x011d,
+	0x011f, 0x011f,
+	0x0121, 0x0121,
+	0x0123, 0x0123,
+	0x0125, 0x0125,
+	0x0127, 0x0127,
+	0x0129, 0x0129,
+	0x012b, 0x012b,
+	0x012d, 0x012d,
+	0x012f, 0x012f,
+	0x0131, 0x0131,
+	0x0133, 0x0133,
+	0x0135, 0x0135,
+	0x0137, 0x0138,
+	0x013a, 0x013a,
+	0x013c, 0x013c,
+	0x013e, 0x013e,
+	0x0140, 0x0140,
+	0x0142, 0x0142,
+	0x0144, 0x0144,
+	0x0146, 0x0146,
+	0x0148, 0x0149,
+	0x014b, 0x014b,
+	0x014d, 0x014d,
+	0x014f, 0x014f,
+	0x0151, 0x0151,
+	0x0153, 0x0153,
+	0x0155, 0x0155,
+	0x0157, 0x0157,
+	0x0159, 0x0159,
+	0x015b, 0x015b,
+	0x015d, 0x015d,
+	0x015f, 0x015f,
+	0x0161, 0x0161,
+	0x0163, 0x0163,
+	0x0165, 0x0165,
+	0x0167, 0x0167,
+	0x0169, 0x0169,
+	0x016b, 0x016b,
+	0x016d, 0x016d,
+	0x016f, 0x016f,
+	0x0171, 0x0171,
+	0x0173, 0x0173,
+	0x0175, 0x0175,
+	0x0177, 0x0177,
+	0x017a, 0x017a,
+	0x017c, 0x017c,
+	0x017e, 0x0180,
+	0x0183, 0x0183,
+	0x0185, 0x0185,
+	0x0188, 0x0188,
+	0x018c, 0x018d,
+	0x0192, 0x0192,
+	0x0195, 0x0195,
+	0x0199, 0x019b,
+	0x019e, 0x019e,
+	0x01a1, 0x01a1,
+	0x01a3, 0x01a3,
+	0x01a5, 0x01a5,
+	0x01a8, 0x01a8,
+	0x01aa, 0x01ab,
+	0x01ad, 0x01ad,
+	0x01b0, 0x01b0,
+	0x01b4, 0x01b4,
+	0x01b6, 0x01b6,
+	0x01b9, 0x01ba,
+	0x01bd, 0x01bf,
+	0x01c6, 0x01c6,
+	0x01c9, 0x01c9,
+	0x01cc, 0x01cc,
+	0x01ce, 0x01ce,
+	0x01d0, 0x01d0,
+	0x01d2, 0x01d2,
+	0x01d4, 0x01d4,
+	0x01d6, 0x01d6,
+	0x01d8, 0x01d8,
+	0x01da, 0x01da,
+	0x01dc, 0x01dd,
+	0x01df, 0x01df,
+	0x01e1, 0x01e1,
+	0x01e3, 0x01e3,
+	0x01e5, 0x01e5,
+	0x01e7, 0x01e7,
+	0x01e9, 0x01e9,
+	0x01eb, 0x01eb,
+	0x01ed, 0x01ed,
+	0x01ef, 0x01f0,
+	0x01f3, 0x01f3,
+	0x01f5, 0x01f5,
+	0x01f9, 0x01f9,
+	0x01fb, 0x01fb,
+	0x01fd, 0x01fd,
+	0x01ff, 0x01ff,
+	0x0201, 0x0201,
+	0x0203, 0x0203,
+	0x0205, 0x0205,
+	0x0207, 0x0207,
+	0x0209, 0x0209,
+	0x020b, 0x020b,
+	0x020d, 0x020d,
+	0x020f, 0x020f,
+	0x0211, 0x0211,
+	0x0213, 0x0213,
+	0x0215, 0x0215,
+	0x0217, 0x0217,
+	0x0219, 0x0219,
+	0x021b, 0x021b,
+	0x021d, 0x021d,
+	0x021f, 0x021f,
+	0x0221, 0x0221,
+	0x0223, 0x0223,
+	0x0225, 0x0225,
+	0x0227, 0x0227,
+	0x0229, 0x0229,
+	0x022b, 0x022b,
+	0x022d, 0x022d,
+	0x022f, 0x022f,
+	0x0231, 0x0231,
+	0x0233, 0x0239,
+	0x023c, 0x023c,
+	0x023f, 0x0240,
+	0x0242, 0x0242,
+	0x0247, 0x0247,
+	0x0249, 0x0249,
+	0x024b, 0x024b,
+	0x024d, 0x024d,
+	0x024f, 0x0293,
+	0x0295, 0x02b8,
+	0x02c0, 0x02c1,
+	0x02e0, 0x02e4,
+	0x0345, 0x0345,
+	0x0371, 0x0371,
+	0x0373, 0x0373,
+	0x0377, 0x0377,
+	0x037a, 0x037d,
+	0x0390, 0x0390,
+	0x03ac, 0x03ce,
+	0x03d0, 0x03d1,
+	0x03d5, 0x03d7,
+	0x03d9, 0x03d9,
+	0x03db, 0x03db,
+	0x03dd, 0x03dd,
+	0x03df, 0x03df,
+	0x03e1, 0x03e1,
+	0x03e3, 0x03e3,
+	0x03e5, 0x03e5,
+	0x03e7, 0x03e7,
+	0x03e9, 0x03e9,
+	0x03eb, 0x03eb,
+	0x03ed, 0x03ed,
+	0x03ef, 0x03f3,
+	0x03f5, 0x03f5,
+	0x03f8, 0x03f8,
+	0x03fb, 0x03fc,
+	0x0430, 0x045f,
+	0x0461, 0x0461,
+	0x0463, 0x0463,
+	0x0465, 0x0465,
+	0x0467, 0x0467,
+	0x0469, 0x0469,
+	0x046b, 0x046b,
+	0x046d, 0x046d,
+	0x046f, 0x046f,
+	0x0471, 0x0471,
+	0x0473, 0x0473,
+	0x0475, 0x0475,
+	0x0477, 0x0477,
+	0x0479, 0x0479,
+	0x047b, 0x047b,
+	0x047d, 0x047d,
+	0x047f, 0x047f,
+	0x0481, 0x0481,
+	0x048b, 0x048b,
+	0x048d, 0x048d,
+	0x048f, 0x048f,
+	0x0491, 0x0491,
+	0x0493, 0x0493,
+	0x0495, 0x0495,
+	0x0497, 0x0497,
+	0x0499, 0x0499,
+	0x049b, 0x049b,
+	0x049d, 0x049d,
+	0x049f, 0x049f,
+	0x04a1, 0x04a1,
+	0x04a3, 0x04a3,
+	0x04a5, 0x04a5,
+	0x04a7, 0x04a7,
+	0x04a9, 0x04a9,
+	0x04ab, 0x04ab,
+	0x04ad, 0x04ad,
+	0x04af, 0x04af,
+	0x04b1, 0x04b1,
+	0x04b3, 0x04b3,
+	0x04b5, 0x04b5,
+	0x04b7, 0x04b7,
+	0x04b9, 0x04b9,
+	0x04bb, 0x04bb,
+	0x04bd, 0x04bd,
+	0x04bf, 0x04bf,
+	0x04c2, 0x04c2,
+	0x04c4, 0x04c4,
+	0x04c6, 0x04c6,
+	0x04c8, 0x04c8,
+	0x04ca, 0x04ca,
+	0x04cc, 0x04cc,
+	0x04ce, 0x04cf,
+	0x04d1, 0x04d1,
+	0x04d3, 0x04d3,
+	0x04d5, 0x04d5,
+	0x04d7, 0x04d7,
+	0x04d9, 0x04d9,
+	0x04db, 0x04db,
+	0x04dd, 0x04dd,
+	0x04df, 0x04df,
+	0x04e1, 0x04e1,
+	0x04e3, 0x04e3,
+	0x04e5, 0x04e5,
+	0x04e7, 0x04e7,
+	0x04e9, 0x04e9,
+	0x04eb, 0x04eb,
+	0x04ed, 0x04ed,
+	0x04ef, 0x04ef,
+	0x04f1, 0x04f1,
+	0x04f3, 0x04f3,
+	0x04f5, 0x04f5,
+	0x04f7, 0x04f7,
+	0x04f9, 0x04f9,
+	0x04fb, 0x04fb,
+	0x04fd, 0x04fd,
+	0x04ff, 0x04ff,
+	0x0501, 0x0501,
+	0x0503, 0x0503,
+	0x0505, 0x0505,
+	0x0507, 0x0507,
+	0x0509, 0x0509,
+	0x050b, 0x050b,
+	0x050d, 0x050d,
+	0x050f, 0x050f,
+	0x0511, 0x0511,
+	0x0513, 0x0513,
+	0x0515, 0x0515,
+	0x0517, 0x0517,
+	0x0519, 0x0519,
+	0x051b, 0x051b,
+	0x051d, 0x051d,
+	0x051f, 0x051f,
+	0x0521, 0x0521,
+	0x0523, 0x0523,
+	0x0525, 0x0525,
+	0x0561, 0x0587,
+	0x1d00, 0x1dbf,
+	0x1e01, 0x1e01,
+	0x1e03, 0x1e03,
+	0x1e05, 0x1e05,
+	0x1e07, 0x1e07,
+	0x1e09, 0x1e09,
+	0x1e0b, 0x1e0b,
+	0x1e0d, 0x1e0d,
+	0x1e0f, 0x1e0f,
+	0x1e11, 0x1e11,
+	0x1e13, 0x1e13,
+	0x1e15, 0x1e15,
+	0x1e17, 0x1e17,
+	0x1e19, 0x1e19,
+	0x1e1b, 0x1e1b,
+	0x1e1d, 0x1e1d,
+	0x1e1f, 0x1e1f,
+	0x1e21, 0x1e21,
+	0x1e23, 0x1e23,
+	0x1e25, 0x1e25,
+	0x1e27, 0x1e27,
+	0x1e29, 0x1e29,
+	0x1e2b, 0x1e2b,
+	0x1e2d, 0x1e2d,
+	0x1e2f, 0x1e2f,
+	0x1e31, 0x1e31,
+	0x1e33, 0x1e33,
+	0x1e35, 0x1e35,
+	0x1e37, 0x1e37,
+	0x1e39, 0x1e39,
+	0x1e3b, 0x1e3b,
+	0x1e3d, 0x1e3d,
+	0x1e3f, 0x1e3f,
+	0x1e41, 0x1e41,
+	0x1e43, 0x1e43,
+	0x1e45, 0x1e45,
+	0x1e47, 0x1e47,
+	0x1e49, 0x1e49,
+	0x1e4b, 0x1e4b,
+	0x1e4d, 0x1e4d,
+	0x1e4f, 0x1e4f,
+	0x1e51, 0x1e51,
+	0x1e53, 0x1e53,
+	0x1e55, 0x1e55,
+	0x1e57, 0x1e57,
+	0x1e59, 0x1e59,
+	0x1e5b, 0x1e5b,
+	0x1e5d, 0x1e5d,
+	0x1e5f, 0x1e5f,
+	0x1e61, 0x1e61,
+	0x1e63, 0x1e63,
+	0x1e65, 0x1e65,
+	0x1e67, 0x1e67,
+	0x1e69, 0x1e69,
+	0x1e6b, 0x1e6b,
+	0x1e6d, 0x1e6d,
+	0x1e6f, 0x1e6f,
+	0x1e71, 0x1e71,
+	0x1e73, 0x1e73,
+	0x1e75, 0x1e75,
+	0x1e77, 0x1e77,
+	0x1e79, 0x1e79,
+	0x1e7b, 0x1e7b,
+	0x1e7d, 0x1e7d,
+	0x1e7f, 0x1e7f,
+	0x1e81, 0x1e81,
+	0x1e83, 0x1e83,
+	0x1e85, 0x1e85,
+	0x1e87, 0x1e87,
+	0x1e89, 0x1e89,
+	0x1e8b, 0x1e8b,
+	0x1e8d, 0x1e8d,
+	0x1e8f, 0x1e8f,
+	0x1e91, 0x1e91,
+	0x1e93, 0x1e93,
+	0x1e95, 0x1e9d,
+	0x1e9f, 0x1e9f,
+	0x1ea1, 0x1ea1,
+	0x1ea3, 0x1ea3,
+	0x1ea5, 0x1ea5,
+	0x1ea7, 0x1ea7,
+	0x1ea9, 0x1ea9,
+	0x1eab, 0x1eab,
+	0x1ead, 0x1ead,
+	0x1eaf, 0x1eaf,
+	0x1eb1, 0x1eb1,
+	0x1eb3, 0x1eb3,
+	0x1eb5, 0x1eb5,
+	0x1eb7, 0x1eb7,
+	0x1eb9, 0x1eb9,
+	0x1ebb, 0x1ebb,
+	0x1ebd, 0x1ebd,
+	0x1ebf, 0x1ebf,
+	0x1ec1, 0x1ec1,
+	0x1ec3, 0x1ec3,
+	0x1ec5, 0x1ec5,
+	0x1ec7, 0x1ec7,
+	0x1ec9, 0x1ec9,
+	0x1ecb, 0x1ecb,
+	0x1ecd, 0x1ecd,
+	0x1ecf, 0x1ecf,
+	0x1ed1, 0x1ed1,
+	0x1ed3, 0x1ed3,
+	0x1ed5, 0x1ed5,
+	0x1ed7, 0x1ed7,
+	0x1ed9, 0x1ed9,
+	0x1edb, 0x1edb,
+	0x1edd, 0x1edd,
+	0x1edf, 0x1edf,
+	0x1ee1, 0x1ee1,
+	0x1ee3, 0x1ee3,
+	0x1ee5, 0x1ee5,
+	0x1ee7, 0x1ee7,
+	0x1ee9, 0x1ee9,
+	0x1eeb, 0x1eeb,
+	0x1eed, 0x1eed,
+	0x1eef, 0x1eef,
+	0x1ef1, 0x1ef1,
+	0x1ef3, 0x1ef3,
+	0x1ef5, 0x1ef5,
+	0x1ef7, 0x1ef7,
+	0x1ef9, 0x1ef9,
+	0x1efb, 0x1efb,
+	0x1efd, 0x1efd,
+	0x1eff, 0x1f07,
+	0x1f10, 0x1f15,
+	0x1f20, 0x1f27,
+	0x1f30, 0x1f37,
+	0x1f40, 0x1f45,
+	0x1f50, 0x1f57,
+	0x1f60, 0x1f67,
+	0x1f70, 0x1f7d,
+	0x1f80, 0x1f87,
+	0x1f90, 0x1f97,
+	0x1fa0, 0x1fa7,
+	0x1fb0, 0x1fb4,
+	0x1fb6, 0x1fb7,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fc7,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fd7,
+	0x1fe0, 0x1fe7,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ff7,
+	0x2090, 0x2094,
+	0x210a, 0x210a,
+	0x210e, 0x210f,
+	0x2113, 0x2113,
+	0x212f, 0x212f,
+	0x2134, 0x2134,
+	0x2139, 0x2139,
+	0x213c, 0x213d,
+	0x2146, 0x2149,
+	0x214e, 0x214e,
+	0x2170, 0x217f,
+	0x2184, 0x2184,
+	0x24d0, 0x24e9,
+	0x2c30, 0x2c5e,
+	0x2c61, 0x2c61,
+	0x2c65, 0x2c66,
+	0x2c68, 0x2c68,
+	0x2c6a, 0x2c6a,
+	0x2c6c, 0x2c6c,
+	0x2c71, 0x2c71,
+	0x2c73, 0x2c74,
+	0x2c76, 0x2c7d,
+	0x2c81, 0x2c81,
+	0x2c83, 0x2c83,
+	0x2c85, 0x2c85,
+	0x2c87, 0x2c87,
+	0x2c89, 0x2c89,
+	0x2c8b, 0x2c8b,
+	0x2c8d, 0x2c8d,
+	0x2c8f, 0x2c8f,
+	0x2c91, 0x2c91,
+	0x2c93, 0x2c93,
+	0x2c95, 0x2c95,
+	0x2c97, 0x2c97,
+	0x2c99, 0x2c99,
+	0x2c9b, 0x2c9b,
+	0x2c9d, 0x2c9d,
+	0x2c9f, 0x2c9f,
+	0x2ca1, 0x2ca1,
+	0x2ca3, 0x2ca3,
+	0x2ca5, 0x2ca5,
+	0x2ca7, 0x2ca7,
+	0x2ca9, 0x2ca9,
+	0x2cab, 0x2cab,
+	0x2cad, 0x2cad,
+	0x2caf, 0x2caf,
+	0x2cb1, 0x2cb1,
+	0x2cb3, 0x2cb3,
+	0x2cb5, 0x2cb5,
+	0x2cb7, 0x2cb7,
+	0x2cb9, 0x2cb9,
+	0x2cbb, 0x2cbb,
+	0x2cbd, 0x2cbd,
+	0x2cbf, 0x2cbf,
+	0x2cc1, 0x2cc1,
+	0x2cc3, 0x2cc3,
+	0x2cc5, 0x2cc5,
+	0x2cc7, 0x2cc7,
+	0x2cc9, 0x2cc9,
+	0x2ccb, 0x2ccb,
+	0x2ccd, 0x2ccd,
+	0x2ccf, 0x2ccf,
+	0x2cd1, 0x2cd1,
+	0x2cd3, 0x2cd3,
+	0x2cd5, 0x2cd5,
+	0x2cd7, 0x2cd7,
+	0x2cd9, 0x2cd9,
+	0x2cdb, 0x2cdb,
+	0x2cdd, 0x2cdd,
+	0x2cdf, 0x2cdf,
+	0x2ce1, 0x2ce1,
+	0x2ce3, 0x2ce4,
+	0x2cec, 0x2cec,
+	0x2cee, 0x2cee,
+	0x2d00, 0x2d25,
+	0xa641, 0xa641,
+	0xa643, 0xa643,
+	0xa645, 0xa645,
+	0xa647, 0xa647,
+	0xa649, 0xa649,
+	0xa64b, 0xa64b,
+	0xa64d, 0xa64d,
+	0xa64f, 0xa64f,
+	0xa651, 0xa651,
+	0xa653, 0xa653,
+	0xa655, 0xa655,
+	0xa657, 0xa657,
+	0xa659, 0xa659,
+	0xa65b, 0xa65b,
+	0xa65d, 0xa65d,
+	0xa65f, 0xa65f,
+	0xa663, 0xa663,
+	0xa665, 0xa665,
+	0xa667, 0xa667,
+	0xa669, 0xa669,
+	0xa66b, 0xa66b,
+	0xa66d, 0xa66d,
+	0xa681, 0xa681,
+	0xa683, 0xa683,
+	0xa685, 0xa685,
+	0xa687, 0xa687,
+	0xa689, 0xa689,
+	0xa68b, 0xa68b,
+	0xa68d, 0xa68d,
+	0xa68f, 0xa68f,
+	0xa691, 0xa691,
+	0xa693, 0xa693,
+	0xa695, 0xa695,
+	0xa697, 0xa697,
+	0xa723, 0xa723,
+	0xa725, 0xa725,
+	0xa727, 0xa727,
+	0xa729, 0xa729,
+	0xa72b, 0xa72b,
+	0xa72d, 0xa72d,
+	0xa72f, 0xa731,
+	0xa733, 0xa733,
+	0xa735, 0xa735,
+	0xa737, 0xa737,
+	0xa739, 0xa739,
+	0xa73b, 0xa73b,
+	0xa73d, 0xa73d,
+	0xa73f, 0xa73f,
+	0xa741, 0xa741,
+	0xa743, 0xa743,
+	0xa745, 0xa745,
+	0xa747, 0xa747,
+	0xa749, 0xa749,
+	0xa74b, 0xa74b,
+	0xa74d, 0xa74d,
+	0xa74f, 0xa74f,
+	0xa751, 0xa751,
+	0xa753, 0xa753,
+	0xa755, 0xa755,
+	0xa757, 0xa757,
+	0xa759, 0xa759,
+	0xa75b, 0xa75b,
+	0xa75d, 0xa75d,
+	0xa75f, 0xa75f,
+	0xa761, 0xa761,
+	0xa763, 0xa763,
+	0xa765, 0xa765,
+	0xa767, 0xa767,
+	0xa769, 0xa769,
+	0xa76b, 0xa76b,
+	0xa76d, 0xa76d,
+	0xa76f, 0xa778,
+	0xa77a, 0xa77a,
+	0xa77c, 0xa77c,
+	0xa77f, 0xa77f,
+	0xa781, 0xa781,
+	0xa783, 0xa783,
+	0xa785, 0xa785,
+	0xa787, 0xa787,
+	0xa78c, 0xa78c,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff41, 0xff5a,
+	0x10428, 0x1044f,
+	0x1d41a, 0x1d433,
+	0x1d44e, 0x1d454,
+	0x1d456, 0x1d467,
+	0x1d482, 0x1d49b,
+	0x1d4b6, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d4cf,
+	0x1d4ea, 0x1d503,
+	0x1d51e, 0x1d537,
+	0x1d552, 0x1d56b,
+	0x1d586, 0x1d59f,
+	0x1d5ba, 0x1d5d3,
+	0x1d5ee, 0x1d607,
+	0x1d622, 0x1d63b,
+	0x1d656, 0x1d66f,
+	0x1d68a, 0x1d6a5,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6e1,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d71b,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d755,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d78f,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7c9,
+	0x1d7cb, 0x1d7cb,
+}; /* CR_Lowercase */
+
+/* 'Uppercase': Derived Property */
+static const OnigCodePoint CR_Uppercase[] = {
+	596,
+	0x0041, 0x005a,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00de,
+	0x0100, 0x0100,
+	0x0102, 0x0102,
+	0x0104, 0x0104,
+	0x0106, 0x0106,
+	0x0108, 0x0108,
+	0x010a, 0x010a,
+	0x010c, 0x010c,
+	0x010e, 0x010e,
+	0x0110, 0x0110,
+	0x0112, 0x0112,
+	0x0114, 0x0114,
+	0x0116, 0x0116,
+	0x0118, 0x0118,
+	0x011a, 0x011a,
+	0x011c, 0x011c,
+	0x011e, 0x011e,
+	0x0120, 0x0120,
+	0x0122, 0x0122,
+	0x0124, 0x0124,
+	0x0126, 0x0126,
+	0x0128, 0x0128,
+	0x012a, 0x012a,
+	0x012c, 0x012c,
+	0x012e, 0x012e,
+	0x0130, 0x0130,
+	0x0132, 0x0132,
+	0x0134, 0x0134,
+	0x0136, 0x0136,
+	0x0139, 0x0139,
+	0x013b, 0x013b,
+	0x013d, 0x013d,
+	0x013f, 0x013f,
+	0x0141, 0x0141,
+	0x0143, 0x0143,
+	0x0145, 0x0145,
+	0x0147, 0x0147,
+	0x014a, 0x014a,
+	0x014c, 0x014c,
+	0x014e, 0x014e,
+	0x0150, 0x0150,
+	0x0152, 0x0152,
+	0x0154, 0x0154,
+	0x0156, 0x0156,
+	0x0158, 0x0158,
+	0x015a, 0x015a,
+	0x015c, 0x015c,
+	0x015e, 0x015e,
+	0x0160, 0x0160,
+	0x0162, 0x0162,
+	0x0164, 0x0164,
+	0x0166, 0x0166,
+	0x0168, 0x0168,
+	0x016a, 0x016a,
+	0x016c, 0x016c,
+	0x016e, 0x016e,
+	0x0170, 0x0170,
+	0x0172, 0x0172,
+	0x0174, 0x0174,
+	0x0176, 0x0176,
+	0x0178, 0x0179,
+	0x017b, 0x017b,
+	0x017d, 0x017d,
+	0x0181, 0x0182,
+	0x0184, 0x0184,
+	0x0186, 0x0187,
+	0x0189, 0x018b,
+	0x018e, 0x0191,
+	0x0193, 0x0194,
+	0x0196, 0x0198,
+	0x019c, 0x019d,
+	0x019f, 0x01a0,
+	0x01a2, 0x01a2,
+	0x01a4, 0x01a4,
+	0x01a6, 0x01a7,
+	0x01a9, 0x01a9,
+	0x01ac, 0x01ac,
+	0x01ae, 0x01af,
+	0x01b1, 0x01b3,
+	0x01b5, 0x01b5,
+	0x01b7, 0x01b8,
+	0x01bc, 0x01bc,
+	0x01c4, 0x01c4,
+	0x01c7, 0x01c7,
+	0x01ca, 0x01ca,
+	0x01cd, 0x01cd,
+	0x01cf, 0x01cf,
+	0x01d1, 0x01d1,
+	0x01d3, 0x01d3,
+	0x01d5, 0x01d5,
+	0x01d7, 0x01d7,
+	0x01d9, 0x01d9,
+	0x01db, 0x01db,
+	0x01de, 0x01de,
+	0x01e0, 0x01e0,
+	0x01e2, 0x01e2,
+	0x01e4, 0x01e4,
+	0x01e6, 0x01e6,
+	0x01e8, 0x01e8,
+	0x01ea, 0x01ea,
+	0x01ec, 0x01ec,
+	0x01ee, 0x01ee,
+	0x01f1, 0x01f1,
+	0x01f4, 0x01f4,
+	0x01f6, 0x01f8,
+	0x01fa, 0x01fa,
+	0x01fc, 0x01fc,
+	0x01fe, 0x01fe,
+	0x0200, 0x0200,
+	0x0202, 0x0202,
+	0x0204, 0x0204,
+	0x0206, 0x0206,
+	0x0208, 0x0208,
+	0x020a, 0x020a,
+	0x020c, 0x020c,
+	0x020e, 0x020e,
+	0x0210, 0x0210,
+	0x0212, 0x0212,
+	0x0214, 0x0214,
+	0x0216, 0x0216,
+	0x0218, 0x0218,
+	0x021a, 0x021a,
+	0x021c, 0x021c,
+	0x021e, 0x021e,
+	0x0220, 0x0220,
+	0x0222, 0x0222,
+	0x0224, 0x0224,
+	0x0226, 0x0226,
+	0x0228, 0x0228,
+	0x022a, 0x022a,
+	0x022c, 0x022c,
+	0x022e, 0x022e,
+	0x0230, 0x0230,
+	0x0232, 0x0232,
+	0x023a, 0x023b,
+	0x023d, 0x023e,
+	0x0241, 0x0241,
+	0x0243, 0x0246,
+	0x0248, 0x0248,
+	0x024a, 0x024a,
+	0x024c, 0x024c,
+	0x024e, 0x024e,
+	0x0370, 0x0370,
+	0x0372, 0x0372,
+	0x0376, 0x0376,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x038f,
+	0x0391, 0x03a1,
+	0x03a3, 0x03ab,
+	0x03cf, 0x03cf,
+	0x03d2, 0x03d4,
+	0x03d8, 0x03d8,
+	0x03da, 0x03da,
+	0x03dc, 0x03dc,
+	0x03de, 0x03de,
+	0x03e0, 0x03e0,
+	0x03e2, 0x03e2,
+	0x03e4, 0x03e4,
+	0x03e6, 0x03e6,
+	0x03e8, 0x03e8,
+	0x03ea, 0x03ea,
+	0x03ec, 0x03ec,
+	0x03ee, 0x03ee,
+	0x03f4, 0x03f4,
+	0x03f7, 0x03f7,
+	0x03f9, 0x03fa,
+	0x03fd, 0x042f,
+	0x0460, 0x0460,
+	0x0462, 0x0462,
+	0x0464, 0x0464,
+	0x0466, 0x0466,
+	0x0468, 0x0468,
+	0x046a, 0x046a,
+	0x046c, 0x046c,
+	0x046e, 0x046e,
+	0x0470, 0x0470,
+	0x0472, 0x0472,
+	0x0474, 0x0474,
+	0x0476, 0x0476,
+	0x0478, 0x0478,
+	0x047a, 0x047a,
+	0x047c, 0x047c,
+	0x047e, 0x047e,
+	0x0480, 0x0480,
+	0x048a, 0x048a,
+	0x048c, 0x048c,
+	0x048e, 0x048e,
+	0x0490, 0x0490,
+	0x0492, 0x0492,
+	0x0494, 0x0494,
+	0x0496, 0x0496,
+	0x0498, 0x0498,
+	0x049a, 0x049a,
+	0x049c, 0x049c,
+	0x049e, 0x049e,
+	0x04a0, 0x04a0,
+	0x04a2, 0x04a2,
+	0x04a4, 0x04a4,
+	0x04a6, 0x04a6,
+	0x04a8, 0x04a8,
+	0x04aa, 0x04aa,
+	0x04ac, 0x04ac,
+	0x04ae, 0x04ae,
+	0x04b0, 0x04b0,
+	0x04b2, 0x04b2,
+	0x04b4, 0x04b4,
+	0x04b6, 0x04b6,
+	0x04b8, 0x04b8,
+	0x04ba, 0x04ba,
+	0x04bc, 0x04bc,
+	0x04be, 0x04be,
+	0x04c0, 0x04c1,
+	0x04c3, 0x04c3,
+	0x04c5, 0x04c5,
+	0x04c7, 0x04c7,
+	0x04c9, 0x04c9,
+	0x04cb, 0x04cb,
+	0x04cd, 0x04cd,
+	0x04d0, 0x04d0,
+	0x04d2, 0x04d2,
+	0x04d4, 0x04d4,
+	0x04d6, 0x04d6,
+	0x04d8, 0x04d8,
+	0x04da, 0x04da,
+	0x04dc, 0x04dc,
+	0x04de, 0x04de,
+	0x04e0, 0x04e0,
+	0x04e2, 0x04e2,
+	0x04e4, 0x04e4,
+	0x04e6, 0x04e6,
+	0x04e8, 0x04e8,
+	0x04ea, 0x04ea,
+	0x04ec, 0x04ec,
+	0x04ee, 0x04ee,
+	0x04f0, 0x04f0,
+	0x04f2, 0x04f2,
+	0x04f4, 0x04f4,
+	0x04f6, 0x04f6,
+	0x04f8, 0x04f8,
+	0x04fa, 0x04fa,
+	0x04fc, 0x04fc,
+	0x04fe, 0x04fe,
+	0x0500, 0x0500,
+	0x0502, 0x0502,
+	0x0504, 0x0504,
+	0x0506, 0x0506,
+	0x0508, 0x0508,
+	0x050a, 0x050a,
+	0x050c, 0x050c,
+	0x050e, 0x050e,
+	0x0510, 0x0510,
+	0x0512, 0x0512,
+	0x0514, 0x0514,
+	0x0516, 0x0516,
+	0x0518, 0x0518,
+	0x051a, 0x051a,
+	0x051c, 0x051c,
+	0x051e, 0x051e,
+	0x0520, 0x0520,
+	0x0522, 0x0522,
+	0x0524, 0x0524,
+	0x0531, 0x0556,
+	0x10a0, 0x10c5,
+	0x1e00, 0x1e00,
+	0x1e02, 0x1e02,
+	0x1e04, 0x1e04,
+	0x1e06, 0x1e06,
+	0x1e08, 0x1e08,
+	0x1e0a, 0x1e0a,
+	0x1e0c, 0x1e0c,
+	0x1e0e, 0x1e0e,
+	0x1e10, 0x1e10,
+	0x1e12, 0x1e12,
+	0x1e14, 0x1e14,
+	0x1e16, 0x1e16,
+	0x1e18, 0x1e18,
+	0x1e1a, 0x1e1a,
+	0x1e1c, 0x1e1c,
+	0x1e1e, 0x1e1e,
+	0x1e20, 0x1e20,
+	0x1e22, 0x1e22,
+	0x1e24, 0x1e24,
+	0x1e26, 0x1e26,
+	0x1e28, 0x1e28,
+	0x1e2a, 0x1e2a,
+	0x1e2c, 0x1e2c,
+	0x1e2e, 0x1e2e,
+	0x1e30, 0x1e30,
+	0x1e32, 0x1e32,
+	0x1e34, 0x1e34,
+	0x1e36, 0x1e36,
+	0x1e38, 0x1e38,
+	0x1e3a, 0x1e3a,
+	0x1e3c, 0x1e3c,
+	0x1e3e, 0x1e3e,
+	0x1e40, 0x1e40,
+	0x1e42, 0x1e42,
+	0x1e44, 0x1e44,
+	0x1e46, 0x1e46,
+	0x1e48, 0x1e48,
+	0x1e4a, 0x1e4a,
+	0x1e4c, 0x1e4c,
+	0x1e4e, 0x1e4e,
+	0x1e50, 0x1e50,
+	0x1e52, 0x1e52,
+	0x1e54, 0x1e54,
+	0x1e56, 0x1e56,
+	0x1e58, 0x1e58,
+	0x1e5a, 0x1e5a,
+	0x1e5c, 0x1e5c,
+	0x1e5e, 0x1e5e,
+	0x1e60, 0x1e60,
+	0x1e62, 0x1e62,
+	0x1e64, 0x1e64,
+	0x1e66, 0x1e66,
+	0x1e68, 0x1e68,
+	0x1e6a, 0x1e6a,
+	0x1e6c, 0x1e6c,
+	0x1e6e, 0x1e6e,
+	0x1e70, 0x1e70,
+	0x1e72, 0x1e72,
+	0x1e74, 0x1e74,
+	0x1e76, 0x1e76,
+	0x1e78, 0x1e78,
+	0x1e7a, 0x1e7a,
+	0x1e7c, 0x1e7c,
+	0x1e7e, 0x1e7e,
+	0x1e80, 0x1e80,
+	0x1e82, 0x1e82,
+	0x1e84, 0x1e84,
+	0x1e86, 0x1e86,
+	0x1e88, 0x1e88,
+	0x1e8a, 0x1e8a,
+	0x1e8c, 0x1e8c,
+	0x1e8e, 0x1e8e,
+	0x1e90, 0x1e90,
+	0x1e92, 0x1e92,
+	0x1e94, 0x1e94,
+	0x1e9e, 0x1e9e,
+	0x1ea0, 0x1ea0,
+	0x1ea2, 0x1ea2,
+	0x1ea4, 0x1ea4,
+	0x1ea6, 0x1ea6,
+	0x1ea8, 0x1ea8,
+	0x1eaa, 0x1eaa,
+	0x1eac, 0x1eac,
+	0x1eae, 0x1eae,
+	0x1eb0, 0x1eb0,
+	0x1eb2, 0x1eb2,
+	0x1eb4, 0x1eb4,
+	0x1eb6, 0x1eb6,
+	0x1eb8, 0x1eb8,
+	0x1eba, 0x1eba,
+	0x1ebc, 0x1ebc,
+	0x1ebe, 0x1ebe,
+	0x1ec0, 0x1ec0,
+	0x1ec2, 0x1ec2,
+	0x1ec4, 0x1ec4,
+	0x1ec6, 0x1ec6,
+	0x1ec8, 0x1ec8,
+	0x1eca, 0x1eca,
+	0x1ecc, 0x1ecc,
+	0x1ece, 0x1ece,
+	0x1ed0, 0x1ed0,
+	0x1ed2, 0x1ed2,
+	0x1ed4, 0x1ed4,
+	0x1ed6, 0x1ed6,
+	0x1ed8, 0x1ed8,
+	0x1eda, 0x1eda,
+	0x1edc, 0x1edc,
+	0x1ede, 0x1ede,
+	0x1ee0, 0x1ee0,
+	0x1ee2, 0x1ee2,
+	0x1ee4, 0x1ee4,
+	0x1ee6, 0x1ee6,
+	0x1ee8, 0x1ee8,
+	0x1eea, 0x1eea,
+	0x1eec, 0x1eec,
+	0x1eee, 0x1eee,
+	0x1ef0, 0x1ef0,
+	0x1ef2, 0x1ef2,
+	0x1ef4, 0x1ef4,
+	0x1ef6, 0x1ef6,
+	0x1ef8, 0x1ef8,
+	0x1efa, 0x1efa,
+	0x1efc, 0x1efc,
+	0x1efe, 0x1efe,
+	0x1f08, 0x1f0f,
+	0x1f18, 0x1f1d,
+	0x1f28, 0x1f2f,
+	0x1f38, 0x1f3f,
+	0x1f48, 0x1f4d,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f5f,
+	0x1f68, 0x1f6f,
+	0x1fb8, 0x1fbb,
+	0x1fc8, 0x1fcb,
+	0x1fd8, 0x1fdb,
+	0x1fe8, 0x1fec,
+	0x1ff8, 0x1ffb,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210b, 0x210d,
+	0x2110, 0x2112,
+	0x2115, 0x2115,
+	0x2119, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x212d,
+	0x2130, 0x2133,
+	0x213e, 0x213f,
+	0x2145, 0x2145,
+	0x2160, 0x216f,
+	0x2183, 0x2183,
+	0x24b6, 0x24cf,
+	0x2c00, 0x2c2e,
+	0x2c60, 0x2c60,
+	0x2c62, 0x2c64,
+	0x2c67, 0x2c67,
+	0x2c69, 0x2c69,
+	0x2c6b, 0x2c6b,
+	0x2c6d, 0x2c70,
+	0x2c72, 0x2c72,
+	0x2c75, 0x2c75,
+	0x2c7e, 0x2c80,
+	0x2c82, 0x2c82,
+	0x2c84, 0x2c84,
+	0x2c86, 0x2c86,
+	0x2c88, 0x2c88,
+	0x2c8a, 0x2c8a,
+	0x2c8c, 0x2c8c,
+	0x2c8e, 0x2c8e,
+	0x2c90, 0x2c90,
+	0x2c92, 0x2c92,
+	0x2c94, 0x2c94,
+	0x2c96, 0x2c96,
+	0x2c98, 0x2c98,
+	0x2c9a, 0x2c9a,
+	0x2c9c, 0x2c9c,
+	0x2c9e, 0x2c9e,
+	0x2ca0, 0x2ca0,
+	0x2ca2, 0x2ca2,
+	0x2ca4, 0x2ca4,
+	0x2ca6, 0x2ca6,
+	0x2ca8, 0x2ca8,
+	0x2caa, 0x2caa,
+	0x2cac, 0x2cac,
+	0x2cae, 0x2cae,
+	0x2cb0, 0x2cb0,
+	0x2cb2, 0x2cb2,
+	0x2cb4, 0x2cb4,
+	0x2cb6, 0x2cb6,
+	0x2cb8, 0x2cb8,
+	0x2cba, 0x2cba,
+	0x2cbc, 0x2cbc,
+	0x2cbe, 0x2cbe,
+	0x2cc0, 0x2cc0,
+	0x2cc2, 0x2cc2,
+	0x2cc4, 0x2cc4,
+	0x2cc6, 0x2cc6,
+	0x2cc8, 0x2cc8,
+	0x2cca, 0x2cca,
+	0x2ccc, 0x2ccc,
+	0x2cce, 0x2cce,
+	0x2cd0, 0x2cd0,
+	0x2cd2, 0x2cd2,
+	0x2cd4, 0x2cd4,
+	0x2cd6, 0x2cd6,
+	0x2cd8, 0x2cd8,
+	0x2cda, 0x2cda,
+	0x2cdc, 0x2cdc,
+	0x2cde, 0x2cde,
+	0x2ce0, 0x2ce0,
+	0x2ce2, 0x2ce2,
+	0x2ceb, 0x2ceb,
+	0x2ced, 0x2ced,
+	0xa640, 0xa640,
+	0xa642, 0xa642,
+	0xa644, 0xa644,
+	0xa646, 0xa646,
+	0xa648, 0xa648,
+	0xa64a, 0xa64a,
+	0xa64c, 0xa64c,
+	0xa64e, 0xa64e,
+	0xa650, 0xa650,
+	0xa652, 0xa652,
+	0xa654, 0xa654,
+	0xa656, 0xa656,
+	0xa658, 0xa658,
+	0xa65a, 0xa65a,
+	0xa65c, 0xa65c,
+	0xa65e, 0xa65e,
+	0xa662, 0xa662,
+	0xa664, 0xa664,
+	0xa666, 0xa666,
+	0xa668, 0xa668,
+	0xa66a, 0xa66a,
+	0xa66c, 0xa66c,
+	0xa680, 0xa680,
+	0xa682, 0xa682,
+	0xa684, 0xa684,
+	0xa686, 0xa686,
+	0xa688, 0xa688,
+	0xa68a, 0xa68a,
+	0xa68c, 0xa68c,
+	0xa68e, 0xa68e,
+	0xa690, 0xa690,
+	0xa692, 0xa692,
+	0xa694, 0xa694,
+	0xa696, 0xa696,
+	0xa722, 0xa722,
+	0xa724, 0xa724,
+	0xa726, 0xa726,
+	0xa728, 0xa728,
+	0xa72a, 0xa72a,
+	0xa72c, 0xa72c,
+	0xa72e, 0xa72e,
+	0xa732, 0xa732,
+	0xa734, 0xa734,
+	0xa736, 0xa736,
+	0xa738, 0xa738,
+	0xa73a, 0xa73a,
+	0xa73c, 0xa73c,
+	0xa73e, 0xa73e,
+	0xa740, 0xa740,
+	0xa742, 0xa742,
+	0xa744, 0xa744,
+	0xa746, 0xa746,
+	0xa748, 0xa748,
+	0xa74a, 0xa74a,
+	0xa74c, 0xa74c,
+	0xa74e, 0xa74e,
+	0xa750, 0xa750,
+	0xa752, 0xa752,
+	0xa754, 0xa754,
+	0xa756, 0xa756,
+	0xa758, 0xa758,
+	0xa75a, 0xa75a,
+	0xa75c, 0xa75c,
+	0xa75e, 0xa75e,
+	0xa760, 0xa760,
+	0xa762, 0xa762,
+	0xa764, 0xa764,
+	0xa766, 0xa766,
+	0xa768, 0xa768,
+	0xa76a, 0xa76a,
+	0xa76c, 0xa76c,
+	0xa76e, 0xa76e,
+	0xa779, 0xa779,
+	0xa77b, 0xa77b,
+	0xa77d, 0xa77e,
+	0xa780, 0xa780,
+	0xa782, 0xa782,
+	0xa784, 0xa784,
+	0xa786, 0xa786,
+	0xa78b, 0xa78b,
+	0xff21, 0xff3a,
+	0x10400, 0x10427,
+	0x1d400, 0x1d419,
+	0x1d434, 0x1d44d,
+	0x1d468, 0x1d481,
+	0x1d49c, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b5,
+	0x1d4d0, 0x1d4e9,
+	0x1d504, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d538, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d56c, 0x1d585,
+	0x1d5a0, 0x1d5b9,
+	0x1d5d4, 0x1d5ed,
+	0x1d608, 0x1d621,
+	0x1d63c, 0x1d655,
+	0x1d670, 0x1d689,
+	0x1d6a8, 0x1d6c0,
+	0x1d6e2, 0x1d6fa,
+	0x1d71c, 0x1d734,
+	0x1d756, 0x1d76e,
+	0x1d790, 0x1d7a8,
+	0x1d7ca, 0x1d7ca,
+}; /* CR_Uppercase */
+
+/* 'Cased': Derived Property */
+static const OnigCodePoint CR_Cased[] = {
+	110,
+	0x0041, 0x005a,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x01ba,
+	0x01bc, 0x01bf,
+	0x01c4, 0x0293,
+	0x0295, 0x02b8,
+	0x02c0, 0x02c1,
+	0x02e0, 0x02e4,
+	0x0345, 0x0345,
+	0x0370, 0x0373,
+	0x0376, 0x0377,
+	0x037a, 0x037d,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0561, 0x0587,
+	0x10a0, 0x10c5,
+	0x1d00, 0x1dbf,
+	0x1e00, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x2090, 0x2094,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2119, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x212d,
+	0x212f, 0x2134,
+	0x2139, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x217f,
+	0x2183, 0x2184,
+	0x24b6, 0x24e9,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cee,
+	0x2d00, 0x2d25,
+	0xa640, 0xa65f,
+	0xa662, 0xa66d,
+	0xa680, 0xa697,
+	0xa722, 0xa787,
+	0xa78b, 0xa78c,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff21, 0xff3a,
+	0xff41, 0xff5a,
+	0x10400, 0x1044f,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+}; /* CR_Cased */
+
+/* 'Case_Ignorable': Derived Property */
+static const OnigCodePoint CR_Case_Ignorable[] = {
+	266,
+	0x0027, 0x0027,
+	0x002e, 0x002e,
+	0x003a, 0x003a,
+	0x005e, 0x005e,
+	0x0060, 0x0060,
+	0x00a8, 0x00a8,
+	0x00ad, 0x00ad,
+	0x00af, 0x00af,
+	0x00b4, 0x00b4,
+	0x00b7, 0x00b8,
+	0x02b0, 0x036f,
+	0x0374, 0x0375,
+	0x037a, 0x037a,
+	0x0384, 0x0385,
+	0x0387, 0x0387,
+	0x0483, 0x0489,
+	0x0559, 0x0559,
+	0x0591, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x05f4, 0x05f4,
+	0x0600, 0x0603,
+	0x0610, 0x061a,
+	0x0640, 0x0640,
+	0x064b, 0x065e,
+	0x0670, 0x0670,
+	0x06d6, 0x06e8,
+	0x06ea, 0x06ed,
+	0x070f, 0x070f,
+	0x0711, 0x0711,
+	0x0730, 0x074a,
+	0x07a6, 0x07b0,
+	0x07eb, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0816, 0x082d,
+	0x0900, 0x0902,
+	0x093c, 0x093c,
+	0x0941, 0x0948,
+	0x094d, 0x094d,
+	0x0951, 0x0955,
+	0x0962, 0x0963,
+	0x0971, 0x0971,
+	0x0981, 0x0981,
+	0x09bc, 0x09bc,
+	0x09c1, 0x09c4,
+	0x09cd, 0x09cd,
+	0x09e2, 0x09e3,
+	0x0a01, 0x0a02,
+	0x0a3c, 0x0a3c,
+	0x0a41, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4d,
+	0x0a51, 0x0a51,
+	0x0a70, 0x0a71,
+	0x0a75, 0x0a75,
+	0x0a81, 0x0a82,
+	0x0abc, 0x0abc,
+	0x0ac1, 0x0ac5,
+	0x0ac7, 0x0ac8,
+	0x0acd, 0x0acd,
+	0x0ae2, 0x0ae3,
+	0x0b01, 0x0b01,
+	0x0b3c, 0x0b3c,
+	0x0b3f, 0x0b3f,
+	0x0b41, 0x0b44,
+	0x0b4d, 0x0b4d,
+	0x0b56, 0x0b56,
+	0x0b62, 0x0b63,
+	0x0b82, 0x0b82,
+	0x0bc0, 0x0bc0,
+	0x0bcd, 0x0bcd,
+	0x0c3e, 0x0c40,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4d,
+	0x0c55, 0x0c56,
+	0x0c62, 0x0c63,
+	0x0cbc, 0x0cbc,
+	0x0cbf, 0x0cbf,
+	0x0cc6, 0x0cc6,
+	0x0ccc, 0x0ccd,
+	0x0ce2, 0x0ce3,
+	0x0d41, 0x0d44,
+	0x0d4d, 0x0d4d,
+	0x0d62, 0x0d63,
+	0x0dca, 0x0dca,
+	0x0dd2, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0e31, 0x0e31,
+	0x0e34, 0x0e3a,
+	0x0e46, 0x0e4e,
+	0x0eb1, 0x0eb1,
+	0x0eb4, 0x0eb9,
+	0x0ebb, 0x0ebc,
+	0x0ec6, 0x0ec6,
+	0x0ec8, 0x0ecd,
+	0x0f18, 0x0f19,
+	0x0f35, 0x0f35,
+	0x0f37, 0x0f37,
+	0x0f39, 0x0f39,
+	0x0f71, 0x0f7e,
+	0x0f80, 0x0f84,
+	0x0f86, 0x0f87,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x0fc6, 0x0fc6,
+	0x102d, 0x1030,
+	0x1032, 0x1037,
+	0x1039, 0x103a,
+	0x103d, 0x103e,
+	0x1058, 0x1059,
+	0x105e, 0x1060,
+	0x1071, 0x1074,
+	0x1082, 0x1082,
+	0x1085, 0x1086,
+	0x108d, 0x108d,
+	0x109d, 0x109d,
+	0x10fc, 0x10fc,
+	0x135f, 0x135f,
+	0x1712, 0x1714,
+	0x1732, 0x1734,
+	0x1752, 0x1753,
+	0x1772, 0x1773,
+	0x17b4, 0x17b5,
+	0x17b7, 0x17bd,
+	0x17c6, 0x17c6,
+	0x17c9, 0x17d3,
+	0x17d7, 0x17d7,
+	0x17dd, 0x17dd,
+	0x180b, 0x180d,
+	0x1843, 0x1843,
+	0x18a9, 0x18a9,
+	0x1920, 0x1922,
+	0x1927, 0x1928,
+	0x1932, 0x1932,
+	0x1939, 0x193b,
+	0x1a17, 0x1a18,
+	0x1a56, 0x1a56,
+	0x1a58, 0x1a5e,
+	0x1a60, 0x1a60,
+	0x1a62, 0x1a62,
+	0x1a65, 0x1a6c,
+	0x1a73, 0x1a7c,
+	0x1a7f, 0x1a7f,
+	0x1aa7, 0x1aa7,
+	0x1b00, 0x1b03,
+	0x1b34, 0x1b34,
+	0x1b36, 0x1b3a,
+	0x1b3c, 0x1b3c,
+	0x1b42, 0x1b42,
+	0x1b6b, 0x1b73,
+	0x1b80, 0x1b81,
+	0x1ba2, 0x1ba5,
+	0x1ba8, 0x1ba9,
+	0x1c2c, 0x1c33,
+	0x1c36, 0x1c37,
+	0x1c78, 0x1c7d,
+	0x1cd0, 0x1cd2,
+	0x1cd4, 0x1ce0,
+	0x1ce2, 0x1ce8,
+	0x1ced, 0x1ced,
+	0x1d2c, 0x1d61,
+	0x1d78, 0x1d78,
+	0x1d9b, 0x1de6,
+	0x1dfd, 0x1dff,
+	0x1fbd, 0x1fbd,
+	0x1fbf, 0x1fc1,
+	0x1fcd, 0x1fcf,
+	0x1fdd, 0x1fdf,
+	0x1fed, 0x1fef,
+	0x1ffd, 0x1ffe,
+	0x200b, 0x200f,
+	0x2018, 0x2019,
+	0x2024, 0x2024,
+	0x2027, 0x2027,
+	0x202a, 0x202e,
+	0x2060, 0x2064,
+	0x206a, 0x206f,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x20d0, 0x20f0,
+	0x2c7d, 0x2c7d,
+	0x2cef, 0x2cf1,
+	0x2d6f, 0x2d6f,
+	0x2de0, 0x2dff,
+	0x2e2f, 0x2e2f,
+	0x3005, 0x3005,
+	0x302a, 0x302f,
+	0x3031, 0x3035,
+	0x303b, 0x303b,
+	0x3099, 0x309e,
+	0x30fc, 0x30fe,
+	0xa015, 0xa015,
+	0xa4f8, 0xa4fd,
+	0xa60c, 0xa60c,
+	0xa66f, 0xa672,
+	0xa67c, 0xa67d,
+	0xa67f, 0xa67f,
+	0xa6f0, 0xa6f1,
+	0xa700, 0xa721,
+	0xa770, 0xa770,
+	0xa788, 0xa78a,
+	0xa802, 0xa802,
+	0xa806, 0xa806,
+	0xa80b, 0xa80b,
+	0xa825, 0xa826,
+	0xa8c4, 0xa8c4,
+	0xa8e0, 0xa8f1,
+	0xa926, 0xa92d,
+	0xa947, 0xa951,
+	0xa980, 0xa982,
+	0xa9b3, 0xa9b3,
+	0xa9b6, 0xa9b9,
+	0xa9bc, 0xa9bc,
+	0xa9cf, 0xa9cf,
+	0xaa29, 0xaa2e,
+	0xaa31, 0xaa32,
+	0xaa35, 0xaa36,
+	0xaa43, 0xaa43,
+	0xaa4c, 0xaa4c,
+	0xaa70, 0xaa70,
+	0xaab0, 0xaab0,
+	0xaab2, 0xaab4,
+	0xaab7, 0xaab8,
+	0xaabe, 0xaabf,
+	0xaac1, 0xaac1,
+	0xaadd, 0xaadd,
+	0xabe5, 0xabe5,
+	0xabe8, 0xabe8,
+	0xabed, 0xabed,
+	0xfb1e, 0xfb1e,
+	0xfe00, 0xfe0f,
+	0xfe13, 0xfe13,
+	0xfe20, 0xfe26,
+	0xfe52, 0xfe52,
+	0xfe55, 0xfe55,
+	0xfeff, 0xfeff,
+	0xff07, 0xff07,
+	0xff0e, 0xff0e,
+	0xff1a, 0xff1a,
+	0xff3e, 0xff3e,
+	0xff40, 0xff40,
+	0xff70, 0xff70,
+	0xff9e, 0xff9f,
+	0xffe3, 0xffe3,
+	0xfff9, 0xfffb,
+	0x101fd, 0x101fd,
+	0x10a01, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a0f,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a3f,
+	0x11080, 0x11081,
+	0x110b3, 0x110b6,
+	0x110b9, 0x110ba,
+	0x110bd, 0x110bd,
+	0x1d167, 0x1d169,
+	0x1d173, 0x1d182,
+	0x1d185, 0x1d18b,
+	0x1d1aa, 0x1d1ad,
+	0x1d242, 0x1d244,
+	0xe0001, 0xe0001,
+	0xe0020, 0xe007f,
+	0xe0100, 0xe01ef,
+}; /* CR_Case_Ignorable */
+
+/* 'Changes_When_Lowercased': Derived Property */
+static const OnigCodePoint CR_Changes_When_Lowercased[] = {
+	557,
+	0x0041, 0x005a,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00de,
+	0x0100, 0x0100,
+	0x0102, 0x0102,
+	0x0104, 0x0104,
+	0x0106, 0x0106,
+	0x0108, 0x0108,
+	0x010a, 0x010a,
+	0x010c, 0x010c,
+	0x010e, 0x010e,
+	0x0110, 0x0110,
+	0x0112, 0x0112,
+	0x0114, 0x0114,
+	0x0116, 0x0116,
+	0x0118, 0x0118,
+	0x011a, 0x011a,
+	0x011c, 0x011c,
+	0x011e, 0x011e,
+	0x0120, 0x0120,
+	0x0122, 0x0122,
+	0x0124, 0x0124,
+	0x0126, 0x0126,
+	0x0128, 0x0128,
+	0x012a, 0x012a,
+	0x012c, 0x012c,
+	0x012e, 0x012e,
+	0x0130, 0x0130,
+	0x0132, 0x0132,
+	0x0134, 0x0134,
+	0x0136, 0x0136,
+	0x0139, 0x0139,
+	0x013b, 0x013b,
+	0x013d, 0x013d,
+	0x013f, 0x013f,
+	0x0141, 0x0141,
+	0x0143, 0x0143,
+	0x0145, 0x0145,
+	0x0147, 0x0147,
+	0x014a, 0x014a,
+	0x014c, 0x014c,
+	0x014e, 0x014e,
+	0x0150, 0x0150,
+	0x0152, 0x0152,
+	0x0154, 0x0154,
+	0x0156, 0x0156,
+	0x0158, 0x0158,
+	0x015a, 0x015a,
+	0x015c, 0x015c,
+	0x015e, 0x015e,
+	0x0160, 0x0160,
+	0x0162, 0x0162,
+	0x0164, 0x0164,
+	0x0166, 0x0166,
+	0x0168, 0x0168,
+	0x016a, 0x016a,
+	0x016c, 0x016c,
+	0x016e, 0x016e,
+	0x0170, 0x0170,
+	0x0172, 0x0172,
+	0x0174, 0x0174,
+	0x0176, 0x0176,
+	0x0178, 0x0179,
+	0x017b, 0x017b,
+	0x017d, 0x017d,
+	0x0181, 0x0182,
+	0x0184, 0x0184,
+	0x0186, 0x0187,
+	0x0189, 0x018b,
+	0x018e, 0x0191,
+	0x0193, 0x0194,
+	0x0196, 0x0198,
+	0x019c, 0x019d,
+	0x019f, 0x01a0,
+	0x01a2, 0x01a2,
+	0x01a4, 0x01a4,
+	0x01a6, 0x01a7,
+	0x01a9, 0x01a9,
+	0x01ac, 0x01ac,
+	0x01ae, 0x01af,
+	0x01b1, 0x01b3,
+	0x01b5, 0x01b5,
+	0x01b7, 0x01b8,
+	0x01bc, 0x01bc,
+	0x01c4, 0x01c5,
+	0x01c7, 0x01c8,
+	0x01ca, 0x01cb,
+	0x01cd, 0x01cd,
+	0x01cf, 0x01cf,
+	0x01d1, 0x01d1,
+	0x01d3, 0x01d3,
+	0x01d5, 0x01d5,
+	0x01d7, 0x01d7,
+	0x01d9, 0x01d9,
+	0x01db, 0x01db,
+	0x01de, 0x01de,
+	0x01e0, 0x01e0,
+	0x01e2, 0x01e2,
+	0x01e4, 0x01e4,
+	0x01e6, 0x01e6,
+	0x01e8, 0x01e8,
+	0x01ea, 0x01ea,
+	0x01ec, 0x01ec,
+	0x01ee, 0x01ee,
+	0x01f1, 0x01f2,
+	0x01f4, 0x01f4,
+	0x01f6, 0x01f8,
+	0x01fa, 0x01fa,
+	0x01fc, 0x01fc,
+	0x01fe, 0x01fe,
+	0x0200, 0x0200,
+	0x0202, 0x0202,
+	0x0204, 0x0204,
+	0x0206, 0x0206,
+	0x0208, 0x0208,
+	0x020a, 0x020a,
+	0x020c, 0x020c,
+	0x020e, 0x020e,
+	0x0210, 0x0210,
+	0x0212, 0x0212,
+	0x0214, 0x0214,
+	0x0216, 0x0216,
+	0x0218, 0x0218,
+	0x021a, 0x021a,
+	0x021c, 0x021c,
+	0x021e, 0x021e,
+	0x0220, 0x0220,
+	0x0222, 0x0222,
+	0x0224, 0x0224,
+	0x0226, 0x0226,
+	0x0228, 0x0228,
+	0x022a, 0x022a,
+	0x022c, 0x022c,
+	0x022e, 0x022e,
+	0x0230, 0x0230,
+	0x0232, 0x0232,
+	0x023a, 0x023b,
+	0x023d, 0x023e,
+	0x0241, 0x0241,
+	0x0243, 0x0246,
+	0x0248, 0x0248,
+	0x024a, 0x024a,
+	0x024c, 0x024c,
+	0x024e, 0x024e,
+	0x0370, 0x0370,
+	0x0372, 0x0372,
+	0x0376, 0x0376,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x038f,
+	0x0391, 0x03a1,
+	0x03a3, 0x03ab,
+	0x03cf, 0x03cf,
+	0x03d8, 0x03d8,
+	0x03da, 0x03da,
+	0x03dc, 0x03dc,
+	0x03de, 0x03de,
+	0x03e0, 0x03e0,
+	0x03e2, 0x03e2,
+	0x03e4, 0x03e4,
+	0x03e6, 0x03e6,
+	0x03e8, 0x03e8,
+	0x03ea, 0x03ea,
+	0x03ec, 0x03ec,
+	0x03ee, 0x03ee,
+	0x03f4, 0x03f4,
+	0x03f7, 0x03f7,
+	0x03f9, 0x03fa,
+	0x03fd, 0x042f,
+	0x0460, 0x0460,
+	0x0462, 0x0462,
+	0x0464, 0x0464,
+	0x0466, 0x0466,
+	0x0468, 0x0468,
+	0x046a, 0x046a,
+	0x046c, 0x046c,
+	0x046e, 0x046e,
+	0x0470, 0x0470,
+	0x0472, 0x0472,
+	0x0474, 0x0474,
+	0x0476, 0x0476,
+	0x0478, 0x0478,
+	0x047a, 0x047a,
+	0x047c, 0x047c,
+	0x047e, 0x047e,
+	0x0480, 0x0480,
+	0x048a, 0x048a,
+	0x048c, 0x048c,
+	0x048e, 0x048e,
+	0x0490, 0x0490,
+	0x0492, 0x0492,
+	0x0494, 0x0494,
+	0x0496, 0x0496,
+	0x0498, 0x0498,
+	0x049a, 0x049a,
+	0x049c, 0x049c,
+	0x049e, 0x049e,
+	0x04a0, 0x04a0,
+	0x04a2, 0x04a2,
+	0x04a4, 0x04a4,
+	0x04a6, 0x04a6,
+	0x04a8, 0x04a8,
+	0x04aa, 0x04aa,
+	0x04ac, 0x04ac,
+	0x04ae, 0x04ae,
+	0x04b0, 0x04b0,
+	0x04b2, 0x04b2,
+	0x04b4, 0x04b4,
+	0x04b6, 0x04b6,
+	0x04b8, 0x04b8,
+	0x04ba, 0x04ba,
+	0x04bc, 0x04bc,
+	0x04be, 0x04be,
+	0x04c0, 0x04c1,
+	0x04c3, 0x04c3,
+	0x04c5, 0x04c5,
+	0x04c7, 0x04c7,
+	0x04c9, 0x04c9,
+	0x04cb, 0x04cb,
+	0x04cd, 0x04cd,
+	0x04d0, 0x04d0,
+	0x04d2, 0x04d2,
+	0x04d4, 0x04d4,
+	0x04d6, 0x04d6,
+	0x04d8, 0x04d8,
+	0x04da, 0x04da,
+	0x04dc, 0x04dc,
+	0x04de, 0x04de,
+	0x04e0, 0x04e0,
+	0x04e2, 0x04e2,
+	0x04e4, 0x04e4,
+	0x04e6, 0x04e6,
+	0x04e8, 0x04e8,
+	0x04ea, 0x04ea,
+	0x04ec, 0x04ec,
+	0x04ee, 0x04ee,
+	0x04f0, 0x04f0,
+	0x04f2, 0x04f2,
+	0x04f4, 0x04f4,
+	0x04f6, 0x04f6,
+	0x04f8, 0x04f8,
+	0x04fa, 0x04fa,
+	0x04fc, 0x04fc,
+	0x04fe, 0x04fe,
+	0x0500, 0x0500,
+	0x0502, 0x0502,
+	0x0504, 0x0504,
+	0x0506, 0x0506,
+	0x0508, 0x0508,
+	0x050a, 0x050a,
+	0x050c, 0x050c,
+	0x050e, 0x050e,
+	0x0510, 0x0510,
+	0x0512, 0x0512,
+	0x0514, 0x0514,
+	0x0516, 0x0516,
+	0x0518, 0x0518,
+	0x051a, 0x051a,
+	0x051c, 0x051c,
+	0x051e, 0x051e,
+	0x0520, 0x0520,
+	0x0522, 0x0522,
+	0x0524, 0x0524,
+	0x0531, 0x0556,
+	0x10a0, 0x10c5,
+	0x1e00, 0x1e00,
+	0x1e02, 0x1e02,
+	0x1e04, 0x1e04,
+	0x1e06, 0x1e06,
+	0x1e08, 0x1e08,
+	0x1e0a, 0x1e0a,
+	0x1e0c, 0x1e0c,
+	0x1e0e, 0x1e0e,
+	0x1e10, 0x1e10,
+	0x1e12, 0x1e12,
+	0x1e14, 0x1e14,
+	0x1e16, 0x1e16,
+	0x1e18, 0x1e18,
+	0x1e1a, 0x1e1a,
+	0x1e1c, 0x1e1c,
+	0x1e1e, 0x1e1e,
+	0x1e20, 0x1e20,
+	0x1e22, 0x1e22,
+	0x1e24, 0x1e24,
+	0x1e26, 0x1e26,
+	0x1e28, 0x1e28,
+	0x1e2a, 0x1e2a,
+	0x1e2c, 0x1e2c,
+	0x1e2e, 0x1e2e,
+	0x1e30, 0x1e30,
+	0x1e32, 0x1e32,
+	0x1e34, 0x1e34,
+	0x1e36, 0x1e36,
+	0x1e38, 0x1e38,
+	0x1e3a, 0x1e3a,
+	0x1e3c, 0x1e3c,
+	0x1e3e, 0x1e3e,
+	0x1e40, 0x1e40,
+	0x1e42, 0x1e42,
+	0x1e44, 0x1e44,
+	0x1e46, 0x1e46,
+	0x1e48, 0x1e48,
+	0x1e4a, 0x1e4a,
+	0x1e4c, 0x1e4c,
+	0x1e4e, 0x1e4e,
+	0x1e50, 0x1e50,
+	0x1e52, 0x1e52,
+	0x1e54, 0x1e54,
+	0x1e56, 0x1e56,
+	0x1e58, 0x1e58,
+	0x1e5a, 0x1e5a,
+	0x1e5c, 0x1e5c,
+	0x1e5e, 0x1e5e,
+	0x1e60, 0x1e60,
+	0x1e62, 0x1e62,
+	0x1e64, 0x1e64,
+	0x1e66, 0x1e66,
+	0x1e68, 0x1e68,
+	0x1e6a, 0x1e6a,
+	0x1e6c, 0x1e6c,
+	0x1e6e, 0x1e6e,
+	0x1e70, 0x1e70,
+	0x1e72, 0x1e72,
+	0x1e74, 0x1e74,
+	0x1e76, 0x1e76,
+	0x1e78, 0x1e78,
+	0x1e7a, 0x1e7a,
+	0x1e7c, 0x1e7c,
+	0x1e7e, 0x1e7e,
+	0x1e80, 0x1e80,
+	0x1e82, 0x1e82,
+	0x1e84, 0x1e84,
+	0x1e86, 0x1e86,
+	0x1e88, 0x1e88,
+	0x1e8a, 0x1e8a,
+	0x1e8c, 0x1e8c,
+	0x1e8e, 0x1e8e,
+	0x1e90, 0x1e90,
+	0x1e92, 0x1e92,
+	0x1e94, 0x1e94,
+	0x1e9e, 0x1e9e,
+	0x1ea0, 0x1ea0,
+	0x1ea2, 0x1ea2,
+	0x1ea4, 0x1ea4,
+	0x1ea6, 0x1ea6,
+	0x1ea8, 0x1ea8,
+	0x1eaa, 0x1eaa,
+	0x1eac, 0x1eac,
+	0x1eae, 0x1eae,
+	0x1eb0, 0x1eb0,
+	0x1eb2, 0x1eb2,
+	0x1eb4, 0x1eb4,
+	0x1eb6, 0x1eb6,
+	0x1eb8, 0x1eb8,
+	0x1eba, 0x1eba,
+	0x1ebc, 0x1ebc,
+	0x1ebe, 0x1ebe,
+	0x1ec0, 0x1ec0,
+	0x1ec2, 0x1ec2,
+	0x1ec4, 0x1ec4,
+	0x1ec6, 0x1ec6,
+	0x1ec8, 0x1ec8,
+	0x1eca, 0x1eca,
+	0x1ecc, 0x1ecc,
+	0x1ece, 0x1ece,
+	0x1ed0, 0x1ed0,
+	0x1ed2, 0x1ed2,
+	0x1ed4, 0x1ed4,
+	0x1ed6, 0x1ed6,
+	0x1ed8, 0x1ed8,
+	0x1eda, 0x1eda,
+	0x1edc, 0x1edc,
+	0x1ede, 0x1ede,
+	0x1ee0, 0x1ee0,
+	0x1ee2, 0x1ee2,
+	0x1ee4, 0x1ee4,
+	0x1ee6, 0x1ee6,
+	0x1ee8, 0x1ee8,
+	0x1eea, 0x1eea,
+	0x1eec, 0x1eec,
+	0x1eee, 0x1eee,
+	0x1ef0, 0x1ef0,
+	0x1ef2, 0x1ef2,
+	0x1ef4, 0x1ef4,
+	0x1ef6, 0x1ef6,
+	0x1ef8, 0x1ef8,
+	0x1efa, 0x1efa,
+	0x1efc, 0x1efc,
+	0x1efe, 0x1efe,
+	0x1f08, 0x1f0f,
+	0x1f18, 0x1f1d,
+	0x1f28, 0x1f2f,
+	0x1f38, 0x1f3f,
+	0x1f48, 0x1f4d,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f5f,
+	0x1f68, 0x1f6f,
+	0x1f88, 0x1f8f,
+	0x1f98, 0x1f9f,
+	0x1fa8, 0x1faf,
+	0x1fb8, 0x1fbc,
+	0x1fc8, 0x1fcc,
+	0x1fd8, 0x1fdb,
+	0x1fe8, 0x1fec,
+	0x1ff8, 0x1ffc,
+	0x2126, 0x2126,
+	0x212a, 0x212b,
+	0x2132, 0x2132,
+	0x2160, 0x216f,
+	0x2183, 0x2183,
+	0x24b6, 0x24cf,
+	0x2c00, 0x2c2e,
+	0x2c60, 0x2c60,
+	0x2c62, 0x2c64,
+	0x2c67, 0x2c67,
+	0x2c69, 0x2c69,
+	0x2c6b, 0x2c6b,
+	0x2c6d, 0x2c70,
+	0x2c72, 0x2c72,
+	0x2c75, 0x2c75,
+	0x2c7e, 0x2c80,
+	0x2c82, 0x2c82,
+	0x2c84, 0x2c84,
+	0x2c86, 0x2c86,
+	0x2c88, 0x2c88,
+	0x2c8a, 0x2c8a,
+	0x2c8c, 0x2c8c,
+	0x2c8e, 0x2c8e,
+	0x2c90, 0x2c90,
+	0x2c92, 0x2c92,
+	0x2c94, 0x2c94,
+	0x2c96, 0x2c96,
+	0x2c98, 0x2c98,
+	0x2c9a, 0x2c9a,
+	0x2c9c, 0x2c9c,
+	0x2c9e, 0x2c9e,
+	0x2ca0, 0x2ca0,
+	0x2ca2, 0x2ca2,
+	0x2ca4, 0x2ca4,
+	0x2ca6, 0x2ca6,
+	0x2ca8, 0x2ca8,
+	0x2caa, 0x2caa,
+	0x2cac, 0x2cac,
+	0x2cae, 0x2cae,
+	0x2cb0, 0x2cb0,
+	0x2cb2, 0x2cb2,
+	0x2cb4, 0x2cb4,
+	0x2cb6, 0x2cb6,
+	0x2cb8, 0x2cb8,
+	0x2cba, 0x2cba,
+	0x2cbc, 0x2cbc,
+	0x2cbe, 0x2cbe,
+	0x2cc0, 0x2cc0,
+	0x2cc2, 0x2cc2,
+	0x2cc4, 0x2cc4,
+	0x2cc6, 0x2cc6,
+	0x2cc8, 0x2cc8,
+	0x2cca, 0x2cca,
+	0x2ccc, 0x2ccc,
+	0x2cce, 0x2cce,
+	0x2cd0, 0x2cd0,
+	0x2cd2, 0x2cd2,
+	0x2cd4, 0x2cd4,
+	0x2cd6, 0x2cd6,
+	0x2cd8, 0x2cd8,
+	0x2cda, 0x2cda,
+	0x2cdc, 0x2cdc,
+	0x2cde, 0x2cde,
+	0x2ce0, 0x2ce0,
+	0x2ce2, 0x2ce2,
+	0x2ceb, 0x2ceb,
+	0x2ced, 0x2ced,
+	0xa640, 0xa640,
+	0xa642, 0xa642,
+	0xa644, 0xa644,
+	0xa646, 0xa646,
+	0xa648, 0xa648,
+	0xa64a, 0xa64a,
+	0xa64c, 0xa64c,
+	0xa64e, 0xa64e,
+	0xa650, 0xa650,
+	0xa652, 0xa652,
+	0xa654, 0xa654,
+	0xa656, 0xa656,
+	0xa658, 0xa658,
+	0xa65a, 0xa65a,
+	0xa65c, 0xa65c,
+	0xa65e, 0xa65e,
+	0xa662, 0xa662,
+	0xa664, 0xa664,
+	0xa666, 0xa666,
+	0xa668, 0xa668,
+	0xa66a, 0xa66a,
+	0xa66c, 0xa66c,
+	0xa680, 0xa680,
+	0xa682, 0xa682,
+	0xa684, 0xa684,
+	0xa686, 0xa686,
+	0xa688, 0xa688,
+	0xa68a, 0xa68a,
+	0xa68c, 0xa68c,
+	0xa68e, 0xa68e,
+	0xa690, 0xa690,
+	0xa692, 0xa692,
+	0xa694, 0xa694,
+	0xa696, 0xa696,
+	0xa722, 0xa722,
+	0xa724, 0xa724,
+	0xa726, 0xa726,
+	0xa728, 0xa728,
+	0xa72a, 0xa72a,
+	0xa72c, 0xa72c,
+	0xa72e, 0xa72e,
+	0xa732, 0xa732,
+	0xa734, 0xa734,
+	0xa736, 0xa736,
+	0xa738, 0xa738,
+	0xa73a, 0xa73a,
+	0xa73c, 0xa73c,
+	0xa73e, 0xa73e,
+	0xa740, 0xa740,
+	0xa742, 0xa742,
+	0xa744, 0xa744,
+	0xa746, 0xa746,
+	0xa748, 0xa748,
+	0xa74a, 0xa74a,
+	0xa74c, 0xa74c,
+	0xa74e, 0xa74e,
+	0xa750, 0xa750,
+	0xa752, 0xa752,
+	0xa754, 0xa754,
+	0xa756, 0xa756,
+	0xa758, 0xa758,
+	0xa75a, 0xa75a,
+	0xa75c, 0xa75c,
+	0xa75e, 0xa75e,
+	0xa760, 0xa760,
+	0xa762, 0xa762,
+	0xa764, 0xa764,
+	0xa766, 0xa766,
+	0xa768, 0xa768,
+	0xa76a, 0xa76a,
+	0xa76c, 0xa76c,
+	0xa76e, 0xa76e,
+	0xa779, 0xa779,
+	0xa77b, 0xa77b,
+	0xa77d, 0xa77e,
+	0xa780, 0xa780,
+	0xa782, 0xa782,
+	0xa784, 0xa784,
+	0xa786, 0xa786,
+	0xa78b, 0xa78b,
+	0xff21, 0xff3a,
+	0x10400, 0x10427,
+}; /* CR_Changes_When_Lowercased */
+
+/* 'Changes_When_Uppercased': Derived Property */
+static const OnigCodePoint CR_Changes_When_Uppercased[] = {
+	573,
+	0x0061, 0x007a,
+	0x00b5, 0x00b5,
+	0x00df, 0x00f6,
+	0x00f8, 0x00ff,
+	0x0101, 0x0101,
+	0x0103, 0x0103,
+	0x0105, 0x0105,
+	0x0107, 0x0107,
+	0x0109, 0x0109,
+	0x010b, 0x010b,
+	0x010d, 0x010d,
+	0x010f, 0x010f,
+	0x0111, 0x0111,
+	0x0113, 0x0113,
+	0x0115, 0x0115,
+	0x0117, 0x0117,
+	0x0119, 0x0119,
+	0x011b, 0x011b,
+	0x011d, 0x011d,
+	0x011f, 0x011f,
+	0x0121, 0x0121,
+	0x0123, 0x0123,
+	0x0125, 0x0125,
+	0x0127, 0x0127,
+	0x0129, 0x0129,
+	0x012b, 0x012b,
+	0x012d, 0x012d,
+	0x012f, 0x012f,
+	0x0131, 0x0131,
+	0x0133, 0x0133,
+	0x0135, 0x0135,
+	0x0137, 0x0137,
+	0x013a, 0x013a,
+	0x013c, 0x013c,
+	0x013e, 0x013e,
+	0x0140, 0x0140,
+	0x0142, 0x0142,
+	0x0144, 0x0144,
+	0x0146, 0x0146,
+	0x0148, 0x0149,
+	0x014b, 0x014b,
+	0x014d, 0x014d,
+	0x014f, 0x014f,
+	0x0151, 0x0151,
+	0x0153, 0x0153,
+	0x0155, 0x0155,
+	0x0157, 0x0157,
+	0x0159, 0x0159,
+	0x015b, 0x015b,
+	0x015d, 0x015d,
+	0x015f, 0x015f,
+	0x0161, 0x0161,
+	0x0163, 0x0163,
+	0x0165, 0x0165,
+	0x0167, 0x0167,
+	0x0169, 0x0169,
+	0x016b, 0x016b,
+	0x016d, 0x016d,
+	0x016f, 0x016f,
+	0x0171, 0x0171,
+	0x0173, 0x0173,
+	0x0175, 0x0175,
+	0x0177, 0x0177,
+	0x017a, 0x017a,
+	0x017c, 0x017c,
+	0x017e, 0x0180,
+	0x0183, 0x0183,
+	0x0185, 0x0185,
+	0x0188, 0x0188,
+	0x018c, 0x018c,
+	0x0192, 0x0192,
+	0x0195, 0x0195,
+	0x0199, 0x019a,
+	0x019e, 0x019e,
+	0x01a1, 0x01a1,
+	0x01a3, 0x01a3,
+	0x01a5, 0x01a5,
+	0x01a8, 0x01a8,
+	0x01ad, 0x01ad,
+	0x01b0, 0x01b0,
+	0x01b4, 0x01b4,
+	0x01b6, 0x01b6,
+	0x01b9, 0x01b9,
+	0x01bd, 0x01bd,
+	0x01bf, 0x01bf,
+	0x01c5, 0x01c6,
+	0x01c8, 0x01c9,
+	0x01cb, 0x01cc,
+	0x01ce, 0x01ce,
+	0x01d0, 0x01d0,
+	0x01d2, 0x01d2,
+	0x01d4, 0x01d4,
+	0x01d6, 0x01d6,
+	0x01d8, 0x01d8,
+	0x01da, 0x01da,
+	0x01dc, 0x01dd,
+	0x01df, 0x01df,
+	0x01e1, 0x01e1,
+	0x01e3, 0x01e3,
+	0x01e5, 0x01e5,
+	0x01e7, 0x01e7,
+	0x01e9, 0x01e9,
+	0x01eb, 0x01eb,
+	0x01ed, 0x01ed,
+	0x01ef, 0x01f0,
+	0x01f2, 0x01f3,
+	0x01f5, 0x01f5,
+	0x01f9, 0x01f9,
+	0x01fb, 0x01fb,
+	0x01fd, 0x01fd,
+	0x01ff, 0x01ff,
+	0x0201, 0x0201,
+	0x0203, 0x0203,
+	0x0205, 0x0205,
+	0x0207, 0x0207,
+	0x0209, 0x0209,
+	0x020b, 0x020b,
+	0x020d, 0x020d,
+	0x020f, 0x020f,
+	0x0211, 0x0211,
+	0x0213, 0x0213,
+	0x0215, 0x0215,
+	0x0217, 0x0217,
+	0x0219, 0x0219,
+	0x021b, 0x021b,
+	0x021d, 0x021d,
+	0x021f, 0x021f,
+	0x0223, 0x0223,
+	0x0225, 0x0225,
+	0x0227, 0x0227,
+	0x0229, 0x0229,
+	0x022b, 0x022b,
+	0x022d, 0x022d,
+	0x022f, 0x022f,
+	0x0231, 0x0231,
+	0x0233, 0x0233,
+	0x023c, 0x023c,
+	0x023f, 0x0240,
+	0x0242, 0x0242,
+	0x0247, 0x0247,
+	0x0249, 0x0249,
+	0x024b, 0x024b,
+	0x024d, 0x024d,
+	0x024f, 0x0254,
+	0x0256, 0x0257,
+	0x0259, 0x0259,
+	0x025b, 0x025b,
+	0x0260, 0x0260,
+	0x0263, 0x0263,
+	0x0268, 0x0269,
+	0x026b, 0x026b,
+	0x026f, 0x026f,
+	0x0271, 0x0272,
+	0x0275, 0x0275,
+	0x027d, 0x027d,
+	0x0280, 0x0280,
+	0x0283, 0x0283,
+	0x0288, 0x028c,
+	0x0292, 0x0292,
+	0x0345, 0x0345,
+	0x0371, 0x0371,
+	0x0373, 0x0373,
+	0x0377, 0x0377,
+	0x037b, 0x037d,
+	0x0390, 0x0390,
+	0x03ac, 0x03ce,
+	0x03d0, 0x03d1,
+	0x03d5, 0x03d7,
+	0x03d9, 0x03d9,
+	0x03db, 0x03db,
+	0x03dd, 0x03dd,
+	0x03df, 0x03df,
+	0x03e1, 0x03e1,
+	0x03e3, 0x03e3,
+	0x03e5, 0x03e5,
+	0x03e7, 0x03e7,
+	0x03e9, 0x03e9,
+	0x03eb, 0x03eb,
+	0x03ed, 0x03ed,
+	0x03ef, 0x03f2,
+	0x03f5, 0x03f5,
+	0x03f8, 0x03f8,
+	0x03fb, 0x03fb,
+	0x0430, 0x045f,
+	0x0461, 0x0461,
+	0x0463, 0x0463,
+	0x0465, 0x0465,
+	0x0467, 0x0467,
+	0x0469, 0x0469,
+	0x046b, 0x046b,
+	0x046d, 0x046d,
+	0x046f, 0x046f,
+	0x0471, 0x0471,
+	0x0473, 0x0473,
+	0x0475, 0x0475,
+	0x0477, 0x0477,
+	0x0479, 0x0479,
+	0x047b, 0x047b,
+	0x047d, 0x047d,
+	0x047f, 0x047f,
+	0x0481, 0x0481,
+	0x048b, 0x048b,
+	0x048d, 0x048d,
+	0x048f, 0x048f,
+	0x0491, 0x0491,
+	0x0493, 0x0493,
+	0x0495, 0x0495,
+	0x0497, 0x0497,
+	0x0499, 0x0499,
+	0x049b, 0x049b,
+	0x049d, 0x049d,
+	0x049f, 0x049f,
+	0x04a1, 0x04a1,
+	0x04a3, 0x04a3,
+	0x04a5, 0x04a5,
+	0x04a7, 0x04a7,
+	0x04a9, 0x04a9,
+	0x04ab, 0x04ab,
+	0x04ad, 0x04ad,
+	0x04af, 0x04af,
+	0x04b1, 0x04b1,
+	0x04b3, 0x04b3,
+	0x04b5, 0x04b5,
+	0x04b7, 0x04b7,
+	0x04b9, 0x04b9,
+	0x04bb, 0x04bb,
+	0x04bd, 0x04bd,
+	0x04bf, 0x04bf,
+	0x04c2, 0x04c2,
+	0x04c4, 0x04c4,
+	0x04c6, 0x04c6,
+	0x04c8, 0x04c8,
+	0x04ca, 0x04ca,
+	0x04cc, 0x04cc,
+	0x04ce, 0x04cf,
+	0x04d1, 0x04d1,
+	0x04d3, 0x04d3,
+	0x04d5, 0x04d5,
+	0x04d7, 0x04d7,
+	0x04d9, 0x04d9,
+	0x04db, 0x04db,
+	0x04dd, 0x04dd,
+	0x04df, 0x04df,
+	0x04e1, 0x04e1,
+	0x04e3, 0x04e3,
+	0x04e5, 0x04e5,
+	0x04e7, 0x04e7,
+	0x04e9, 0x04e9,
+	0x04eb, 0x04eb,
+	0x04ed, 0x04ed,
+	0x04ef, 0x04ef,
+	0x04f1, 0x04f1,
+	0x04f3, 0x04f3,
+	0x04f5, 0x04f5,
+	0x04f7, 0x04f7,
+	0x04f9, 0x04f9,
+	0x04fb, 0x04fb,
+	0x04fd, 0x04fd,
+	0x04ff, 0x04ff,
+	0x0501, 0x0501,
+	0x0503, 0x0503,
+	0x0505, 0x0505,
+	0x0507, 0x0507,
+	0x0509, 0x0509,
+	0x050b, 0x050b,
+	0x050d, 0x050d,
+	0x050f, 0x050f,
+	0x0511, 0x0511,
+	0x0513, 0x0513,
+	0x0515, 0x0515,
+	0x0517, 0x0517,
+	0x0519, 0x0519,
+	0x051b, 0x051b,
+	0x051d, 0x051d,
+	0x051f, 0x051f,
+	0x0521, 0x0521,
+	0x0523, 0x0523,
+	0x0525, 0x0525,
+	0x0561, 0x0587,
+	0x1d79, 0x1d79,
+	0x1d7d, 0x1d7d,
+	0x1e01, 0x1e01,
+	0x1e03, 0x1e03,
+	0x1e05, 0x1e05,
+	0x1e07, 0x1e07,
+	0x1e09, 0x1e09,
+	0x1e0b, 0x1e0b,
+	0x1e0d, 0x1e0d,
+	0x1e0f, 0x1e0f,
+	0x1e11, 0x1e11,
+	0x1e13, 0x1e13,
+	0x1e15, 0x1e15,
+	0x1e17, 0x1e17,
+	0x1e19, 0x1e19,
+	0x1e1b, 0x1e1b,
+	0x1e1d, 0x1e1d,
+	0x1e1f, 0x1e1f,
+	0x1e21, 0x1e21,
+	0x1e23, 0x1e23,
+	0x1e25, 0x1e25,
+	0x1e27, 0x1e27,
+	0x1e29, 0x1e29,
+	0x1e2b, 0x1e2b,
+	0x1e2d, 0x1e2d,
+	0x1e2f, 0x1e2f,
+	0x1e31, 0x1e31,
+	0x1e33, 0x1e33,
+	0x1e35, 0x1e35,
+	0x1e37, 0x1e37,
+	0x1e39, 0x1e39,
+	0x1e3b, 0x1e3b,
+	0x1e3d, 0x1e3d,
+	0x1e3f, 0x1e3f,
+	0x1e41, 0x1e41,
+	0x1e43, 0x1e43,
+	0x1e45, 0x1e45,
+	0x1e47, 0x1e47,
+	0x1e49, 0x1e49,
+	0x1e4b, 0x1e4b,
+	0x1e4d, 0x1e4d,
+	0x1e4f, 0x1e4f,
+	0x1e51, 0x1e51,
+	0x1e53, 0x1e53,
+	0x1e55, 0x1e55,
+	0x1e57, 0x1e57,
+	0x1e59, 0x1e59,
+	0x1e5b, 0x1e5b,
+	0x1e5d, 0x1e5d,
+	0x1e5f, 0x1e5f,
+	0x1e61, 0x1e61,
+	0x1e63, 0x1e63,
+	0x1e65, 0x1e65,
+	0x1e67, 0x1e67,
+	0x1e69, 0x1e69,
+	0x1e6b, 0x1e6b,
+	0x1e6d, 0x1e6d,
+	0x1e6f, 0x1e6f,
+	0x1e71, 0x1e71,
+	0x1e73, 0x1e73,
+	0x1e75, 0x1e75,
+	0x1e77, 0x1e77,
+	0x1e79, 0x1e79,
+	0x1e7b, 0x1e7b,
+	0x1e7d, 0x1e7d,
+	0x1e7f, 0x1e7f,
+	0x1e81, 0x1e81,
+	0x1e83, 0x1e83,
+	0x1e85, 0x1e85,
+	0x1e87, 0x1e87,
+	0x1e89, 0x1e89,
+	0x1e8b, 0x1e8b,
+	0x1e8d, 0x1e8d,
+	0x1e8f, 0x1e8f,
+	0x1e91, 0x1e91,
+	0x1e93, 0x1e93,
+	0x1e95, 0x1e9b,
+	0x1ea1, 0x1ea1,
+	0x1ea3, 0x1ea3,
+	0x1ea5, 0x1ea5,
+	0x1ea7, 0x1ea7,
+	0x1ea9, 0x1ea9,
+	0x1eab, 0x1eab,
+	0x1ead, 0x1ead,
+	0x1eaf, 0x1eaf,
+	0x1eb1, 0x1eb1,
+	0x1eb3, 0x1eb3,
+	0x1eb5, 0x1eb5,
+	0x1eb7, 0x1eb7,
+	0x1eb9, 0x1eb9,
+	0x1ebb, 0x1ebb,
+	0x1ebd, 0x1ebd,
+	0x1ebf, 0x1ebf,
+	0x1ec1, 0x1ec1,
+	0x1ec3, 0x1ec3,
+	0x1ec5, 0x1ec5,
+	0x1ec7, 0x1ec7,
+	0x1ec9, 0x1ec9,
+	0x1ecb, 0x1ecb,
+	0x1ecd, 0x1ecd,
+	0x1ecf, 0x1ecf,
+	0x1ed1, 0x1ed1,
+	0x1ed3, 0x1ed3,
+	0x1ed5, 0x1ed5,
+	0x1ed7, 0x1ed7,
+	0x1ed9, 0x1ed9,
+	0x1edb, 0x1edb,
+	0x1edd, 0x1edd,
+	0x1edf, 0x1edf,
+	0x1ee1, 0x1ee1,
+	0x1ee3, 0x1ee3,
+	0x1ee5, 0x1ee5,
+	0x1ee7, 0x1ee7,
+	0x1ee9, 0x1ee9,
+	0x1eeb, 0x1eeb,
+	0x1eed, 0x1eed,
+	0x1eef, 0x1eef,
+	0x1ef1, 0x1ef1,
+	0x1ef3, 0x1ef3,
+	0x1ef5, 0x1ef5,
+	0x1ef7, 0x1ef7,
+	0x1ef9, 0x1ef9,
+	0x1efb, 0x1efb,
+	0x1efd, 0x1efd,
+	0x1eff, 0x1f07,
+	0x1f10, 0x1f15,
+	0x1f20, 0x1f27,
+	0x1f30, 0x1f37,
+	0x1f40, 0x1f45,
+	0x1f50, 0x1f57,
+	0x1f60, 0x1f67,
+	0x1f70, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fb7,
+	0x1fbc, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fc7,
+	0x1fcc, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fd7,
+	0x1fe0, 0x1fe7,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ff7,
+	0x1ffc, 0x1ffc,
+	0x214e, 0x214e,
+	0x2170, 0x217f,
+	0x2184, 0x2184,
+	0x24d0, 0x24e9,
+	0x2c30, 0x2c5e,
+	0x2c61, 0x2c61,
+	0x2c65, 0x2c66,
+	0x2c68, 0x2c68,
+	0x2c6a, 0x2c6a,
+	0x2c6c, 0x2c6c,
+	0x2c73, 0x2c73,
+	0x2c76, 0x2c76,
+	0x2c81, 0x2c81,
+	0x2c83, 0x2c83,
+	0x2c85, 0x2c85,
+	0x2c87, 0x2c87,
+	0x2c89, 0x2c89,
+	0x2c8b, 0x2c8b,
+	0x2c8d, 0x2c8d,
+	0x2c8f, 0x2c8f,
+	0x2c91, 0x2c91,
+	0x2c93, 0x2c93,
+	0x2c95, 0x2c95,
+	0x2c97, 0x2c97,
+	0x2c99, 0x2c99,
+	0x2c9b, 0x2c9b,
+	0x2c9d, 0x2c9d,
+	0x2c9f, 0x2c9f,
+	0x2ca1, 0x2ca1,
+	0x2ca3, 0x2ca3,
+	0x2ca5, 0x2ca5,
+	0x2ca7, 0x2ca7,
+	0x2ca9, 0x2ca9,
+	0x2cab, 0x2cab,
+	0x2cad, 0x2cad,
+	0x2caf, 0x2caf,
+	0x2cb1, 0x2cb1,
+	0x2cb3, 0x2cb3,
+	0x2cb5, 0x2cb5,
+	0x2cb7, 0x2cb7,
+	0x2cb9, 0x2cb9,
+	0x2cbb, 0x2cbb,
+	0x2cbd, 0x2cbd,
+	0x2cbf, 0x2cbf,
+	0x2cc1, 0x2cc1,
+	0x2cc3, 0x2cc3,
+	0x2cc5, 0x2cc5,
+	0x2cc7, 0x2cc7,
+	0x2cc9, 0x2cc9,
+	0x2ccb, 0x2ccb,
+	0x2ccd, 0x2ccd,
+	0x2ccf, 0x2ccf,
+	0x2cd1, 0x2cd1,
+	0x2cd3, 0x2cd3,
+	0x2cd5, 0x2cd5,
+	0x2cd7, 0x2cd7,
+	0x2cd9, 0x2cd9,
+	0x2cdb, 0x2cdb,
+	0x2cdd, 0x2cdd,
+	0x2cdf, 0x2cdf,
+	0x2ce1, 0x2ce1,
+	0x2ce3, 0x2ce3,
+	0x2cec, 0x2cec,
+	0x2cee, 0x2cee,
+	0x2d00, 0x2d25,
+	0xa641, 0xa641,
+	0xa643, 0xa643,
+	0xa645, 0xa645,
+	0xa647, 0xa647,
+	0xa649, 0xa649,
+	0xa64b, 0xa64b,
+	0xa64d, 0xa64d,
+	0xa64f, 0xa64f,
+	0xa651, 0xa651,
+	0xa653, 0xa653,
+	0xa655, 0xa655,
+	0xa657, 0xa657,
+	0xa659, 0xa659,
+	0xa65b, 0xa65b,
+	0xa65d, 0xa65d,
+	0xa65f, 0xa65f,
+	0xa663, 0xa663,
+	0xa665, 0xa665,
+	0xa667, 0xa667,
+	0xa669, 0xa669,
+	0xa66b, 0xa66b,
+	0xa66d, 0xa66d,
+	0xa681, 0xa681,
+	0xa683, 0xa683,
+	0xa685, 0xa685,
+	0xa687, 0xa687,
+	0xa689, 0xa689,
+	0xa68b, 0xa68b,
+	0xa68d, 0xa68d,
+	0xa68f, 0xa68f,
+	0xa691, 0xa691,
+	0xa693, 0xa693,
+	0xa695, 0xa695,
+	0xa697, 0xa697,
+	0xa723, 0xa723,
+	0xa725, 0xa725,
+	0xa727, 0xa727,
+	0xa729, 0xa729,
+	0xa72b, 0xa72b,
+	0xa72d, 0xa72d,
+	0xa72f, 0xa72f,
+	0xa733, 0xa733,
+	0xa735, 0xa735,
+	0xa737, 0xa737,
+	0xa739, 0xa739,
+	0xa73b, 0xa73b,
+	0xa73d, 0xa73d,
+	0xa73f, 0xa73f,
+	0xa741, 0xa741,
+	0xa743, 0xa743,
+	0xa745, 0xa745,
+	0xa747, 0xa747,
+	0xa749, 0xa749,
+	0xa74b, 0xa74b,
+	0xa74d, 0xa74d,
+	0xa74f, 0xa74f,
+	0xa751, 0xa751,
+	0xa753, 0xa753,
+	0xa755, 0xa755,
+	0xa757, 0xa757,
+	0xa759, 0xa759,
+	0xa75b, 0xa75b,
+	0xa75d, 0xa75d,
+	0xa75f, 0xa75f,
+	0xa761, 0xa761,
+	0xa763, 0xa763,
+	0xa765, 0xa765,
+	0xa767, 0xa767,
+	0xa769, 0xa769,
+	0xa76b, 0xa76b,
+	0xa76d, 0xa76d,
+	0xa76f, 0xa76f,
+	0xa77a, 0xa77a,
+	0xa77c, 0xa77c,
+	0xa77f, 0xa77f,
+	0xa781, 0xa781,
+	0xa783, 0xa783,
+	0xa785, 0xa785,
+	0xa787, 0xa787,
+	0xa78c, 0xa78c,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff41, 0xff5a,
+	0x10428, 0x1044f,
+}; /* CR_Changes_When_Uppercased */
+
+/* 'Changes_When_Titlecased': Derived Property */
+static const OnigCodePoint CR_Changes_When_Titlecased[] = {
+	574,
+	0x0061, 0x007a,
+	0x00b5, 0x00b5,
+	0x00df, 0x00f6,
+	0x00f8, 0x00ff,
+	0x0101, 0x0101,
+	0x0103, 0x0103,
+	0x0105, 0x0105,
+	0x0107, 0x0107,
+	0x0109, 0x0109,
+	0x010b, 0x010b,
+	0x010d, 0x010d,
+	0x010f, 0x010f,
+	0x0111, 0x0111,
+	0x0113, 0x0113,
+	0x0115, 0x0115,
+	0x0117, 0x0117,
+	0x0119, 0x0119,
+	0x011b, 0x011b,
+	0x011d, 0x011d,
+	0x011f, 0x011f,
+	0x0121, 0x0121,
+	0x0123, 0x0123,
+	0x0125, 0x0125,
+	0x0127, 0x0127,
+	0x0129, 0x0129,
+	0x012b, 0x012b,
+	0x012d, 0x012d,
+	0x012f, 0x012f,
+	0x0131, 0x0131,
+	0x0133, 0x0133,
+	0x0135, 0x0135,
+	0x0137, 0x0137,
+	0x013a, 0x013a,
+	0x013c, 0x013c,
+	0x013e, 0x013e,
+	0x0140, 0x0140,
+	0x0142, 0x0142,
+	0x0144, 0x0144,
+	0x0146, 0x0146,
+	0x0148, 0x0149,
+	0x014b, 0x014b,
+	0x014d, 0x014d,
+	0x014f, 0x014f,
+	0x0151, 0x0151,
+	0x0153, 0x0153,
+	0x0155, 0x0155,
+	0x0157, 0x0157,
+	0x0159, 0x0159,
+	0x015b, 0x015b,
+	0x015d, 0x015d,
+	0x015f, 0x015f,
+	0x0161, 0x0161,
+	0x0163, 0x0163,
+	0x0165, 0x0165,
+	0x0167, 0x0167,
+	0x0169, 0x0169,
+	0x016b, 0x016b,
+	0x016d, 0x016d,
+	0x016f, 0x016f,
+	0x0171, 0x0171,
+	0x0173, 0x0173,
+	0x0175, 0x0175,
+	0x0177, 0x0177,
+	0x017a, 0x017a,
+	0x017c, 0x017c,
+	0x017e, 0x0180,
+	0x0183, 0x0183,
+	0x0185, 0x0185,
+	0x0188, 0x0188,
+	0x018c, 0x018c,
+	0x0192, 0x0192,
+	0x0195, 0x0195,
+	0x0199, 0x019a,
+	0x019e, 0x019e,
+	0x01a1, 0x01a1,
+	0x01a3, 0x01a3,
+	0x01a5, 0x01a5,
+	0x01a8, 0x01a8,
+	0x01ad, 0x01ad,
+	0x01b0, 0x01b0,
+	0x01b4, 0x01b4,
+	0x01b6, 0x01b6,
+	0x01b9, 0x01b9,
+	0x01bd, 0x01bd,
+	0x01bf, 0x01bf,
+	0x01c4, 0x01c4,
+	0x01c6, 0x01c7,
+	0x01c9, 0x01ca,
+	0x01cc, 0x01cc,
+	0x01ce, 0x01ce,
+	0x01d0, 0x01d0,
+	0x01d2, 0x01d2,
+	0x01d4, 0x01d4,
+	0x01d6, 0x01d6,
+	0x01d8, 0x01d8,
+	0x01da, 0x01da,
+	0x01dc, 0x01dd,
+	0x01df, 0x01df,
+	0x01e1, 0x01e1,
+	0x01e3, 0x01e3,
+	0x01e5, 0x01e5,
+	0x01e7, 0x01e7,
+	0x01e9, 0x01e9,
+	0x01eb, 0x01eb,
+	0x01ed, 0x01ed,
+	0x01ef, 0x01f1,
+	0x01f3, 0x01f3,
+	0x01f5, 0x01f5,
+	0x01f9, 0x01f9,
+	0x01fb, 0x01fb,
+	0x01fd, 0x01fd,
+	0x01ff, 0x01ff,
+	0x0201, 0x0201,
+	0x0203, 0x0203,
+	0x0205, 0x0205,
+	0x0207, 0x0207,
+	0x0209, 0x0209,
+	0x020b, 0x020b,
+	0x020d, 0x020d,
+	0x020f, 0x020f,
+	0x0211, 0x0211,
+	0x0213, 0x0213,
+	0x0215, 0x0215,
+	0x0217, 0x0217,
+	0x0219, 0x0219,
+	0x021b, 0x021b,
+	0x021d, 0x021d,
+	0x021f, 0x021f,
+	0x0223, 0x0223,
+	0x0225, 0x0225,
+	0x0227, 0x0227,
+	0x0229, 0x0229,
+	0x022b, 0x022b,
+	0x022d, 0x022d,
+	0x022f, 0x022f,
+	0x0231, 0x0231,
+	0x0233, 0x0233,
+	0x023c, 0x023c,
+	0x023f, 0x0240,
+	0x0242, 0x0242,
+	0x0247, 0x0247,
+	0x0249, 0x0249,
+	0x024b, 0x024b,
+	0x024d, 0x024d,
+	0x024f, 0x0254,
+	0x0256, 0x0257,
+	0x0259, 0x0259,
+	0x025b, 0x025b,
+	0x0260, 0x0260,
+	0x0263, 0x0263,
+	0x0268, 0x0269,
+	0x026b, 0x026b,
+	0x026f, 0x026f,
+	0x0271, 0x0272,
+	0x0275, 0x0275,
+	0x027d, 0x027d,
+	0x0280, 0x0280,
+	0x0283, 0x0283,
+	0x0288, 0x028c,
+	0x0292, 0x0292,
+	0x0345, 0x0345,
+	0x0371, 0x0371,
+	0x0373, 0x0373,
+	0x0377, 0x0377,
+	0x037b, 0x037d,
+	0x0390, 0x0390,
+	0x03ac, 0x03ce,
+	0x03d0, 0x03d1,
+	0x03d5, 0x03d7,
+	0x03d9, 0x03d9,
+	0x03db, 0x03db,
+	0x03dd, 0x03dd,
+	0x03df, 0x03df,
+	0x03e1, 0x03e1,
+	0x03e3, 0x03e3,
+	0x03e5, 0x03e5,
+	0x03e7, 0x03e7,
+	0x03e9, 0x03e9,
+	0x03eb, 0x03eb,
+	0x03ed, 0x03ed,
+	0x03ef, 0x03f2,
+	0x03f5, 0x03f5,
+	0x03f8, 0x03f8,
+	0x03fb, 0x03fb,
+	0x0430, 0x045f,
+	0x0461, 0x0461,
+	0x0463, 0x0463,
+	0x0465, 0x0465,
+	0x0467, 0x0467,
+	0x0469, 0x0469,
+	0x046b, 0x046b,
+	0x046d, 0x046d,
+	0x046f, 0x046f,
+	0x0471, 0x0471,
+	0x0473, 0x0473,
+	0x0475, 0x0475,
+	0x0477, 0x0477,
+	0x0479, 0x0479,
+	0x047b, 0x047b,
+	0x047d, 0x047d,
+	0x047f, 0x047f,
+	0x0481, 0x0481,
+	0x048b, 0x048b,
+	0x048d, 0x048d,
+	0x048f, 0x048f,
+	0x0491, 0x0491,
+	0x0493, 0x0493,
+	0x0495, 0x0495,
+	0x0497, 0x0497,
+	0x0499, 0x0499,
+	0x049b, 0x049b,
+	0x049d, 0x049d,
+	0x049f, 0x049f,
+	0x04a1, 0x04a1,
+	0x04a3, 0x04a3,
+	0x04a5, 0x04a5,
+	0x04a7, 0x04a7,
+	0x04a9, 0x04a9,
+	0x04ab, 0x04ab,
+	0x04ad, 0x04ad,
+	0x04af, 0x04af,
+	0x04b1, 0x04b1,
+	0x04b3, 0x04b3,
+	0x04b5, 0x04b5,
+	0x04b7, 0x04b7,
+	0x04b9, 0x04b9,
+	0x04bb, 0x04bb,
+	0x04bd, 0x04bd,
+	0x04bf, 0x04bf,
+	0x04c2, 0x04c2,
+	0x04c4, 0x04c4,
+	0x04c6, 0x04c6,
+	0x04c8, 0x04c8,
+	0x04ca, 0x04ca,
+	0x04cc, 0x04cc,
+	0x04ce, 0x04cf,
+	0x04d1, 0x04d1,
+	0x04d3, 0x04d3,
+	0x04d5, 0x04d5,
+	0x04d7, 0x04d7,
+	0x04d9, 0x04d9,
+	0x04db, 0x04db,
+	0x04dd, 0x04dd,
+	0x04df, 0x04df,
+	0x04e1, 0x04e1,
+	0x04e3, 0x04e3,
+	0x04e5, 0x04e5,
+	0x04e7, 0x04e7,
+	0x04e9, 0x04e9,
+	0x04eb, 0x04eb,
+	0x04ed, 0x04ed,
+	0x04ef, 0x04ef,
+	0x04f1, 0x04f1,
+	0x04f3, 0x04f3,
+	0x04f5, 0x04f5,
+	0x04f7, 0x04f7,
+	0x04f9, 0x04f9,
+	0x04fb, 0x04fb,
+	0x04fd, 0x04fd,
+	0x04ff, 0x04ff,
+	0x0501, 0x0501,
+	0x0503, 0x0503,
+	0x0505, 0x0505,
+	0x0507, 0x0507,
+	0x0509, 0x0509,
+	0x050b, 0x050b,
+	0x050d, 0x050d,
+	0x050f, 0x050f,
+	0x0511, 0x0511,
+	0x0513, 0x0513,
+	0x0515, 0x0515,
+	0x0517, 0x0517,
+	0x0519, 0x0519,
+	0x051b, 0x051b,
+	0x051d, 0x051d,
+	0x051f, 0x051f,
+	0x0521, 0x0521,
+	0x0523, 0x0523,
+	0x0525, 0x0525,
+	0x0561, 0x0587,
+	0x1d79, 0x1d79,
+	0x1d7d, 0x1d7d,
+	0x1e01, 0x1e01,
+	0x1e03, 0x1e03,
+	0x1e05, 0x1e05,
+	0x1e07, 0x1e07,
+	0x1e09, 0x1e09,
+	0x1e0b, 0x1e0b,
+	0x1e0d, 0x1e0d,
+	0x1e0f, 0x1e0f,
+	0x1e11, 0x1e11,
+	0x1e13, 0x1e13,
+	0x1e15, 0x1e15,
+	0x1e17, 0x1e17,
+	0x1e19, 0x1e19,
+	0x1e1b, 0x1e1b,
+	0x1e1d, 0x1e1d,
+	0x1e1f, 0x1e1f,
+	0x1e21, 0x1e21,
+	0x1e23, 0x1e23,
+	0x1e25, 0x1e25,
+	0x1e27, 0x1e27,
+	0x1e29, 0x1e29,
+	0x1e2b, 0x1e2b,
+	0x1e2d, 0x1e2d,
+	0x1e2f, 0x1e2f,
+	0x1e31, 0x1e31,
+	0x1e33, 0x1e33,
+	0x1e35, 0x1e35,
+	0x1e37, 0x1e37,
+	0x1e39, 0x1e39,
+	0x1e3b, 0x1e3b,
+	0x1e3d, 0x1e3d,
+	0x1e3f, 0x1e3f,
+	0x1e41, 0x1e41,
+	0x1e43, 0x1e43,
+	0x1e45, 0x1e45,
+	0x1e47, 0x1e47,
+	0x1e49, 0x1e49,
+	0x1e4b, 0x1e4b,
+	0x1e4d, 0x1e4d,
+	0x1e4f, 0x1e4f,
+	0x1e51, 0x1e51,
+	0x1e53, 0x1e53,
+	0x1e55, 0x1e55,
+	0x1e57, 0x1e57,
+	0x1e59, 0x1e59,
+	0x1e5b, 0x1e5b,
+	0x1e5d, 0x1e5d,
+	0x1e5f, 0x1e5f,
+	0x1e61, 0x1e61,
+	0x1e63, 0x1e63,
+	0x1e65, 0x1e65,
+	0x1e67, 0x1e67,
+	0x1e69, 0x1e69,
+	0x1e6b, 0x1e6b,
+	0x1e6d, 0x1e6d,
+	0x1e6f, 0x1e6f,
+	0x1e71, 0x1e71,
+	0x1e73, 0x1e73,
+	0x1e75, 0x1e75,
+	0x1e77, 0x1e77,
+	0x1e79, 0x1e79,
+	0x1e7b, 0x1e7b,
+	0x1e7d, 0x1e7d,
+	0x1e7f, 0x1e7f,
+	0x1e81, 0x1e81,
+	0x1e83, 0x1e83,
+	0x1e85, 0x1e85,
+	0x1e87, 0x1e87,
+	0x1e89, 0x1e89,
+	0x1e8b, 0x1e8b,
+	0x1e8d, 0x1e8d,
+	0x1e8f, 0x1e8f,
+	0x1e91, 0x1e91,
+	0x1e93, 0x1e93,
+	0x1e95, 0x1e9b,
+	0x1ea1, 0x1ea1,
+	0x1ea3, 0x1ea3,
+	0x1ea5, 0x1ea5,
+	0x1ea7, 0x1ea7,
+	0x1ea9, 0x1ea9,
+	0x1eab, 0x1eab,
+	0x1ead, 0x1ead,
+	0x1eaf, 0x1eaf,
+	0x1eb1, 0x1eb1,
+	0x1eb3, 0x1eb3,
+	0x1eb5, 0x1eb5,
+	0x1eb7, 0x1eb7,
+	0x1eb9, 0x1eb9,
+	0x1ebb, 0x1ebb,
+	0x1ebd, 0x1ebd,
+	0x1ebf, 0x1ebf,
+	0x1ec1, 0x1ec1,
+	0x1ec3, 0x1ec3,
+	0x1ec5, 0x1ec5,
+	0x1ec7, 0x1ec7,
+	0x1ec9, 0x1ec9,
+	0x1ecb, 0x1ecb,
+	0x1ecd, 0x1ecd,
+	0x1ecf, 0x1ecf,
+	0x1ed1, 0x1ed1,
+	0x1ed3, 0x1ed3,
+	0x1ed5, 0x1ed5,
+	0x1ed7, 0x1ed7,
+	0x1ed9, 0x1ed9,
+	0x1edb, 0x1edb,
+	0x1edd, 0x1edd,
+	0x1edf, 0x1edf,
+	0x1ee1, 0x1ee1,
+	0x1ee3, 0x1ee3,
+	0x1ee5, 0x1ee5,
+	0x1ee7, 0x1ee7,
+	0x1ee9, 0x1ee9,
+	0x1eeb, 0x1eeb,
+	0x1eed, 0x1eed,
+	0x1eef, 0x1eef,
+	0x1ef1, 0x1ef1,
+	0x1ef3, 0x1ef3,
+	0x1ef5, 0x1ef5,
+	0x1ef7, 0x1ef7,
+	0x1ef9, 0x1ef9,
+	0x1efb, 0x1efb,
+	0x1efd, 0x1efd,
+	0x1eff, 0x1f07,
+	0x1f10, 0x1f15,
+	0x1f20, 0x1f27,
+	0x1f30, 0x1f37,
+	0x1f40, 0x1f45,
+	0x1f50, 0x1f57,
+	0x1f60, 0x1f67,
+	0x1f70, 0x1f7d,
+	0x1f80, 0x1f87,
+	0x1f90, 0x1f97,
+	0x1fa0, 0x1fa7,
+	0x1fb0, 0x1fb4,
+	0x1fb6, 0x1fb7,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fc7,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fd7,
+	0x1fe0, 0x1fe7,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ff7,
+	0x214e, 0x214e,
+	0x2170, 0x217f,
+	0x2184, 0x2184,
+	0x24d0, 0x24e9,
+	0x2c30, 0x2c5e,
+	0x2c61, 0x2c61,
+	0x2c65, 0x2c66,
+	0x2c68, 0x2c68,
+	0x2c6a, 0x2c6a,
+	0x2c6c, 0x2c6c,
+	0x2c73, 0x2c73,
+	0x2c76, 0x2c76,
+	0x2c81, 0x2c81,
+	0x2c83, 0x2c83,
+	0x2c85, 0x2c85,
+	0x2c87, 0x2c87,
+	0x2c89, 0x2c89,
+	0x2c8b, 0x2c8b,
+	0x2c8d, 0x2c8d,
+	0x2c8f, 0x2c8f,
+	0x2c91, 0x2c91,
+	0x2c93, 0x2c93,
+	0x2c95, 0x2c95,
+	0x2c97, 0x2c97,
+	0x2c99, 0x2c99,
+	0x2c9b, 0x2c9b,
+	0x2c9d, 0x2c9d,
+	0x2c9f, 0x2c9f,
+	0x2ca1, 0x2ca1,
+	0x2ca3, 0x2ca3,
+	0x2ca5, 0x2ca5,
+	0x2ca7, 0x2ca7,
+	0x2ca9, 0x2ca9,
+	0x2cab, 0x2cab,
+	0x2cad, 0x2cad,
+	0x2caf, 0x2caf,
+	0x2cb1, 0x2cb1,
+	0x2cb3, 0x2cb3,
+	0x2cb5, 0x2cb5,
+	0x2cb7, 0x2cb7,
+	0x2cb9, 0x2cb9,
+	0x2cbb, 0x2cbb,
+	0x2cbd, 0x2cbd,
+	0x2cbf, 0x2cbf,
+	0x2cc1, 0x2cc1,
+	0x2cc3, 0x2cc3,
+	0x2cc5, 0x2cc5,
+	0x2cc7, 0x2cc7,
+	0x2cc9, 0x2cc9,
+	0x2ccb, 0x2ccb,
+	0x2ccd, 0x2ccd,
+	0x2ccf, 0x2ccf,
+	0x2cd1, 0x2cd1,
+	0x2cd3, 0x2cd3,
+	0x2cd5, 0x2cd5,
+	0x2cd7, 0x2cd7,
+	0x2cd9, 0x2cd9,
+	0x2cdb, 0x2cdb,
+	0x2cdd, 0x2cdd,
+	0x2cdf, 0x2cdf,
+	0x2ce1, 0x2ce1,
+	0x2ce3, 0x2ce3,
+	0x2cec, 0x2cec,
+	0x2cee, 0x2cee,
+	0x2d00, 0x2d25,
+	0xa641, 0xa641,
+	0xa643, 0xa643,
+	0xa645, 0xa645,
+	0xa647, 0xa647,
+	0xa649, 0xa649,
+	0xa64b, 0xa64b,
+	0xa64d, 0xa64d,
+	0xa64f, 0xa64f,
+	0xa651, 0xa651,
+	0xa653, 0xa653,
+	0xa655, 0xa655,
+	0xa657, 0xa657,
+	0xa659, 0xa659,
+	0xa65b, 0xa65b,
+	0xa65d, 0xa65d,
+	0xa65f, 0xa65f,
+	0xa663, 0xa663,
+	0xa665, 0xa665,
+	0xa667, 0xa667,
+	0xa669, 0xa669,
+	0xa66b, 0xa66b,
+	0xa66d, 0xa66d,
+	0xa681, 0xa681,
+	0xa683, 0xa683,
+	0xa685, 0xa685,
+	0xa687, 0xa687,
+	0xa689, 0xa689,
+	0xa68b, 0xa68b,
+	0xa68d, 0xa68d,
+	0xa68f, 0xa68f,
+	0xa691, 0xa691,
+	0xa693, 0xa693,
+	0xa695, 0xa695,
+	0xa697, 0xa697,
+	0xa723, 0xa723,
+	0xa725, 0xa725,
+	0xa727, 0xa727,
+	0xa729, 0xa729,
+	0xa72b, 0xa72b,
+	0xa72d, 0xa72d,
+	0xa72f, 0xa72f,
+	0xa733, 0xa733,
+	0xa735, 0xa735,
+	0xa737, 0xa737,
+	0xa739, 0xa739,
+	0xa73b, 0xa73b,
+	0xa73d, 0xa73d,
+	0xa73f, 0xa73f,
+	0xa741, 0xa741,
+	0xa743, 0xa743,
+	0xa745, 0xa745,
+	0xa747, 0xa747,
+	0xa749, 0xa749,
+	0xa74b, 0xa74b,
+	0xa74d, 0xa74d,
+	0xa74f, 0xa74f,
+	0xa751, 0xa751,
+	0xa753, 0xa753,
+	0xa755, 0xa755,
+	0xa757, 0xa757,
+	0xa759, 0xa759,
+	0xa75b, 0xa75b,
+	0xa75d, 0xa75d,
+	0xa75f, 0xa75f,
+	0xa761, 0xa761,
+	0xa763, 0xa763,
+	0xa765, 0xa765,
+	0xa767, 0xa767,
+	0xa769, 0xa769,
+	0xa76b, 0xa76b,
+	0xa76d, 0xa76d,
+	0xa76f, 0xa76f,
+	0xa77a, 0xa77a,
+	0xa77c, 0xa77c,
+	0xa77f, 0xa77f,
+	0xa781, 0xa781,
+	0xa783, 0xa783,
+	0xa785, 0xa785,
+	0xa787, 0xa787,
+	0xa78c, 0xa78c,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff41, 0xff5a,
+	0x10428, 0x1044f,
+}; /* CR_Changes_When_Titlecased */
+
+/* 'Changes_When_Casefolded': Derived Property */
+static const OnigCodePoint CR_Changes_When_Casefolded[] = {
+	568,
+	0x0041, 0x005a,
+	0x00b5, 0x00b5,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00df,
+	0x0100, 0x0100,
+	0x0102, 0x0102,
+	0x0104, 0x0104,
+	0x0106, 0x0106,
+	0x0108, 0x0108,
+	0x010a, 0x010a,
+	0x010c, 0x010c,
+	0x010e, 0x010e,
+	0x0110, 0x0110,
+	0x0112, 0x0112,
+	0x0114, 0x0114,
+	0x0116, 0x0116,
+	0x0118, 0x0118,
+	0x011a, 0x011a,
+	0x011c, 0x011c,
+	0x011e, 0x011e,
+	0x0120, 0x0120,
+	0x0122, 0x0122,
+	0x0124, 0x0124,
+	0x0126, 0x0126,
+	0x0128, 0x0128,
+	0x012a, 0x012a,
+	0x012c, 0x012c,
+	0x012e, 0x012e,
+	0x0130, 0x0130,
+	0x0132, 0x0132,
+	0x0134, 0x0134,
+	0x0136, 0x0136,
+	0x0139, 0x0139,
+	0x013b, 0x013b,
+	0x013d, 0x013d,
+	0x013f, 0x013f,
+	0x0141, 0x0141,
+	0x0143, 0x0143,
+	0x0145, 0x0145,
+	0x0147, 0x0147,
+	0x0149, 0x014a,
+	0x014c, 0x014c,
+	0x014e, 0x014e,
+	0x0150, 0x0150,
+	0x0152, 0x0152,
+	0x0154, 0x0154,
+	0x0156, 0x0156,
+	0x0158, 0x0158,
+	0x015a, 0x015a,
+	0x015c, 0x015c,
+	0x015e, 0x015e,
+	0x0160, 0x0160,
+	0x0162, 0x0162,
+	0x0164, 0x0164,
+	0x0166, 0x0166,
+	0x0168, 0x0168,
+	0x016a, 0x016a,
+	0x016c, 0x016c,
+	0x016e, 0x016e,
+	0x0170, 0x0170,
+	0x0172, 0x0172,
+	0x0174, 0x0174,
+	0x0176, 0x0176,
+	0x0178, 0x0179,
+	0x017b, 0x017b,
+	0x017d, 0x017d,
+	0x017f, 0x017f,
+	0x0181, 0x0182,
+	0x0184, 0x0184,
+	0x0186, 0x0187,
+	0x0189, 0x018b,
+	0x018e, 0x0191,
+	0x0193, 0x0194,
+	0x0196, 0x0198,
+	0x019c, 0x019d,
+	0x019f, 0x01a0,
+	0x01a2, 0x01a2,
+	0x01a4, 0x01a4,
+	0x01a6, 0x01a7,
+	0x01a9, 0x01a9,
+	0x01ac, 0x01ac,
+	0x01ae, 0x01af,
+	0x01b1, 0x01b3,
+	0x01b5, 0x01b5,
+	0x01b7, 0x01b8,
+	0x01bc, 0x01bc,
+	0x01c4, 0x01c5,
+	0x01c7, 0x01c8,
+	0x01ca, 0x01cb,
+	0x01cd, 0x01cd,
+	0x01cf, 0x01cf,
+	0x01d1, 0x01d1,
+	0x01d3, 0x01d3,
+	0x01d5, 0x01d5,
+	0x01d7, 0x01d7,
+	0x01d9, 0x01d9,
+	0x01db, 0x01db,
+	0x01de, 0x01de,
+	0x01e0, 0x01e0,
+	0x01e2, 0x01e2,
+	0x01e4, 0x01e4,
+	0x01e6, 0x01e6,
+	0x01e8, 0x01e8,
+	0x01ea, 0x01ea,
+	0x01ec, 0x01ec,
+	0x01ee, 0x01ee,
+	0x01f1, 0x01f2,
+	0x01f4, 0x01f4,
+	0x01f6, 0x01f8,
+	0x01fa, 0x01fa,
+	0x01fc, 0x01fc,
+	0x01fe, 0x01fe,
+	0x0200, 0x0200,
+	0x0202, 0x0202,
+	0x0204, 0x0204,
+	0x0206, 0x0206,
+	0x0208, 0x0208,
+	0x020a, 0x020a,
+	0x020c, 0x020c,
+	0x020e, 0x020e,
+	0x0210, 0x0210,
+	0x0212, 0x0212,
+	0x0214, 0x0214,
+	0x0216, 0x0216,
+	0x0218, 0x0218,
+	0x021a, 0x021a,
+	0x021c, 0x021c,
+	0x021e, 0x021e,
+	0x0220, 0x0220,
+	0x0222, 0x0222,
+	0x0224, 0x0224,
+	0x0226, 0x0226,
+	0x0228, 0x0228,
+	0x022a, 0x022a,
+	0x022c, 0x022c,
+	0x022e, 0x022e,
+	0x0230, 0x0230,
+	0x0232, 0x0232,
+	0x023a, 0x023b,
+	0x023d, 0x023e,
+	0x0241, 0x0241,
+	0x0243, 0x0246,
+	0x0248, 0x0248,
+	0x024a, 0x024a,
+	0x024c, 0x024c,
+	0x024e, 0x024e,
+	0x0345, 0x0345,
+	0x0370, 0x0370,
+	0x0372, 0x0372,
+	0x0376, 0x0376,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x038f,
+	0x0391, 0x03a1,
+	0x03a3, 0x03ab,
+	0x03c2, 0x03c2,
+	0x03cf, 0x03d1,
+	0x03d5, 0x03d6,
+	0x03d8, 0x03d8,
+	0x03da, 0x03da,
+	0x03dc, 0x03dc,
+	0x03de, 0x03de,
+	0x03e0, 0x03e0,
+	0x03e2, 0x03e2,
+	0x03e4, 0x03e4,
+	0x03e6, 0x03e6,
+	0x03e8, 0x03e8,
+	0x03ea, 0x03ea,
+	0x03ec, 0x03ec,
+	0x03ee, 0x03ee,
+	0x03f0, 0x03f1,
+	0x03f4, 0x03f5,
+	0x03f7, 0x03f7,
+	0x03f9, 0x03fa,
+	0x03fd, 0x042f,
+	0x0460, 0x0460,
+	0x0462, 0x0462,
+	0x0464, 0x0464,
+	0x0466, 0x0466,
+	0x0468, 0x0468,
+	0x046a, 0x046a,
+	0x046c, 0x046c,
+	0x046e, 0x046e,
+	0x0470, 0x0470,
+	0x0472, 0x0472,
+	0x0474, 0x0474,
+	0x0476, 0x0476,
+	0x0478, 0x0478,
+	0x047a, 0x047a,
+	0x047c, 0x047c,
+	0x047e, 0x047e,
+	0x0480, 0x0480,
+	0x048a, 0x048a,
+	0x048c, 0x048c,
+	0x048e, 0x048e,
+	0x0490, 0x0490,
+	0x0492, 0x0492,
+	0x0494, 0x0494,
+	0x0496, 0x0496,
+	0x0498, 0x0498,
+	0x049a, 0x049a,
+	0x049c, 0x049c,
+	0x049e, 0x049e,
+	0x04a0, 0x04a0,
+	0x04a2, 0x04a2,
+	0x04a4, 0x04a4,
+	0x04a6, 0x04a6,
+	0x04a8, 0x04a8,
+	0x04aa, 0x04aa,
+	0x04ac, 0x04ac,
+	0x04ae, 0x04ae,
+	0x04b0, 0x04b0,
+	0x04b2, 0x04b2,
+	0x04b4, 0x04b4,
+	0x04b6, 0x04b6,
+	0x04b8, 0x04b8,
+	0x04ba, 0x04ba,
+	0x04bc, 0x04bc,
+	0x04be, 0x04be,
+	0x04c0, 0x04c1,
+	0x04c3, 0x04c3,
+	0x04c5, 0x04c5,
+	0x04c7, 0x04c7,
+	0x04c9, 0x04c9,
+	0x04cb, 0x04cb,
+	0x04cd, 0x04cd,
+	0x04d0, 0x04d0,
+	0x04d2, 0x04d2,
+	0x04d4, 0x04d4,
+	0x04d6, 0x04d6,
+	0x04d8, 0x04d8,
+	0x04da, 0x04da,
+	0x04dc, 0x04dc,
+	0x04de, 0x04de,
+	0x04e0, 0x04e0,
+	0x04e2, 0x04e2,
+	0x04e4, 0x04e4,
+	0x04e6, 0x04e6,
+	0x04e8, 0x04e8,
+	0x04ea, 0x04ea,
+	0x04ec, 0x04ec,
+	0x04ee, 0x04ee,
+	0x04f0, 0x04f0,
+	0x04f2, 0x04f2,
+	0x04f4, 0x04f4,
+	0x04f6, 0x04f6,
+	0x04f8, 0x04f8,
+	0x04fa, 0x04fa,
+	0x04fc, 0x04fc,
+	0x04fe, 0x04fe,
+	0x0500, 0x0500,
+	0x0502, 0x0502,
+	0x0504, 0x0504,
+	0x0506, 0x0506,
+	0x0508, 0x0508,
+	0x050a, 0x050a,
+	0x050c, 0x050c,
+	0x050e, 0x050e,
+	0x0510, 0x0510,
+	0x0512, 0x0512,
+	0x0514, 0x0514,
+	0x0516, 0x0516,
+	0x0518, 0x0518,
+	0x051a, 0x051a,
+	0x051c, 0x051c,
+	0x051e, 0x051e,
+	0x0520, 0x0520,
+	0x0522, 0x0522,
+	0x0524, 0x0524,
+	0x0531, 0x0556,
+	0x0587, 0x0587,
+	0x10a0, 0x10c5,
+	0x1e00, 0x1e00,
+	0x1e02, 0x1e02,
+	0x1e04, 0x1e04,
+	0x1e06, 0x1e06,
+	0x1e08, 0x1e08,
+	0x1e0a, 0x1e0a,
+	0x1e0c, 0x1e0c,
+	0x1e0e, 0x1e0e,
+	0x1e10, 0x1e10,
+	0x1e12, 0x1e12,
+	0x1e14, 0x1e14,
+	0x1e16, 0x1e16,
+	0x1e18, 0x1e18,
+	0x1e1a, 0x1e1a,
+	0x1e1c, 0x1e1c,
+	0x1e1e, 0x1e1e,
+	0x1e20, 0x1e20,
+	0x1e22, 0x1e22,
+	0x1e24, 0x1e24,
+	0x1e26, 0x1e26,
+	0x1e28, 0x1e28,
+	0x1e2a, 0x1e2a,
+	0x1e2c, 0x1e2c,
+	0x1e2e, 0x1e2e,
+	0x1e30, 0x1e30,
+	0x1e32, 0x1e32,
+	0x1e34, 0x1e34,
+	0x1e36, 0x1e36,
+	0x1e38, 0x1e38,
+	0x1e3a, 0x1e3a,
+	0x1e3c, 0x1e3c,
+	0x1e3e, 0x1e3e,
+	0x1e40, 0x1e40,
+	0x1e42, 0x1e42,
+	0x1e44, 0x1e44,
+	0x1e46, 0x1e46,
+	0x1e48, 0x1e48,
+	0x1e4a, 0x1e4a,
+	0x1e4c, 0x1e4c,
+	0x1e4e, 0x1e4e,
+	0x1e50, 0x1e50,
+	0x1e52, 0x1e52,
+	0x1e54, 0x1e54,
+	0x1e56, 0x1e56,
+	0x1e58, 0x1e58,
+	0x1e5a, 0x1e5a,
+	0x1e5c, 0x1e5c,
+	0x1e5e, 0x1e5e,
+	0x1e60, 0x1e60,
+	0x1e62, 0x1e62,
+	0x1e64, 0x1e64,
+	0x1e66, 0x1e66,
+	0x1e68, 0x1e68,
+	0x1e6a, 0x1e6a,
+	0x1e6c, 0x1e6c,
+	0x1e6e, 0x1e6e,
+	0x1e70, 0x1e70,
+	0x1e72, 0x1e72,
+	0x1e74, 0x1e74,
+	0x1e76, 0x1e76,
+	0x1e78, 0x1e78,
+	0x1e7a, 0x1e7a,
+	0x1e7c, 0x1e7c,
+	0x1e7e, 0x1e7e,
+	0x1e80, 0x1e80,
+	0x1e82, 0x1e82,
+	0x1e84, 0x1e84,
+	0x1e86, 0x1e86,
+	0x1e88, 0x1e88,
+	0x1e8a, 0x1e8a,
+	0x1e8c, 0x1e8c,
+	0x1e8e, 0x1e8e,
+	0x1e90, 0x1e90,
+	0x1e92, 0x1e92,
+	0x1e94, 0x1e94,
+	0x1e9a, 0x1e9b,
+	0x1e9e, 0x1e9e,
+	0x1ea0, 0x1ea0,
+	0x1ea2, 0x1ea2,
+	0x1ea4, 0x1ea4,
+	0x1ea6, 0x1ea6,
+	0x1ea8, 0x1ea8,
+	0x1eaa, 0x1eaa,
+	0x1eac, 0x1eac,
+	0x1eae, 0x1eae,
+	0x1eb0, 0x1eb0,
+	0x1eb2, 0x1eb2,
+	0x1eb4, 0x1eb4,
+	0x1eb6, 0x1eb6,
+	0x1eb8, 0x1eb8,
+	0x1eba, 0x1eba,
+	0x1ebc, 0x1ebc,
+	0x1ebe, 0x1ebe,
+	0x1ec0, 0x1ec0,
+	0x1ec2, 0x1ec2,
+	0x1ec4, 0x1ec4,
+	0x1ec6, 0x1ec6,
+	0x1ec8, 0x1ec8,
+	0x1eca, 0x1eca,
+	0x1ecc, 0x1ecc,
+	0x1ece, 0x1ece,
+	0x1ed0, 0x1ed0,
+	0x1ed2, 0x1ed2,
+	0x1ed4, 0x1ed4,
+	0x1ed6, 0x1ed6,
+	0x1ed8, 0x1ed8,
+	0x1eda, 0x1eda,
+	0x1edc, 0x1edc,
+	0x1ede, 0x1ede,
+	0x1ee0, 0x1ee0,
+	0x1ee2, 0x1ee2,
+	0x1ee4, 0x1ee4,
+	0x1ee6, 0x1ee6,
+	0x1ee8, 0x1ee8,
+	0x1eea, 0x1eea,
+	0x1eec, 0x1eec,
+	0x1eee, 0x1eee,
+	0x1ef0, 0x1ef0,
+	0x1ef2, 0x1ef2,
+	0x1ef4, 0x1ef4,
+	0x1ef6, 0x1ef6,
+	0x1ef8, 0x1ef8,
+	0x1efa, 0x1efa,
+	0x1efc, 0x1efc,
+	0x1efe, 0x1efe,
+	0x1f08, 0x1f0f,
+	0x1f18, 0x1f1d,
+	0x1f28, 0x1f2f,
+	0x1f38, 0x1f3f,
+	0x1f48, 0x1f4d,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f5f,
+	0x1f68, 0x1f6f,
+	0x1f80, 0x1faf,
+	0x1fb2, 0x1fb4,
+	0x1fb7, 0x1fbc,
+	0x1fc2, 0x1fc4,
+	0x1fc7, 0x1fcc,
+	0x1fd8, 0x1fdb,
+	0x1fe8, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff7, 0x1ffc,
+	0x2126, 0x2126,
+	0x212a, 0x212b,
+	0x2132, 0x2132,
+	0x2160, 0x216f,
+	0x2183, 0x2183,
+	0x24b6, 0x24cf,
+	0x2c00, 0x2c2e,
+	0x2c60, 0x2c60,
+	0x2c62, 0x2c64,
+	0x2c67, 0x2c67,
+	0x2c69, 0x2c69,
+	0x2c6b, 0x2c6b,
+	0x2c6d, 0x2c70,
+	0x2c72, 0x2c72,
+	0x2c75, 0x2c75,
+	0x2c7e, 0x2c80,
+	0x2c82, 0x2c82,
+	0x2c84, 0x2c84,
+	0x2c86, 0x2c86,
+	0x2c88, 0x2c88,
+	0x2c8a, 0x2c8a,
+	0x2c8c, 0x2c8c,
+	0x2c8e, 0x2c8e,
+	0x2c90, 0x2c90,
+	0x2c92, 0x2c92,
+	0x2c94, 0x2c94,
+	0x2c96, 0x2c96,
+	0x2c98, 0x2c98,
+	0x2c9a, 0x2c9a,
+	0x2c9c, 0x2c9c,
+	0x2c9e, 0x2c9e,
+	0x2ca0, 0x2ca0,
+	0x2ca2, 0x2ca2,
+	0x2ca4, 0x2ca4,
+	0x2ca6, 0x2ca6,
+	0x2ca8, 0x2ca8,
+	0x2caa, 0x2caa,
+	0x2cac, 0x2cac,
+	0x2cae, 0x2cae,
+	0x2cb0, 0x2cb0,
+	0x2cb2, 0x2cb2,
+	0x2cb4, 0x2cb4,
+	0x2cb6, 0x2cb6,
+	0x2cb8, 0x2cb8,
+	0x2cba, 0x2cba,
+	0x2cbc, 0x2cbc,
+	0x2cbe, 0x2cbe,
+	0x2cc0, 0x2cc0,
+	0x2cc2, 0x2cc2,
+	0x2cc4, 0x2cc4,
+	0x2cc6, 0x2cc6,
+	0x2cc8, 0x2cc8,
+	0x2cca, 0x2cca,
+	0x2ccc, 0x2ccc,
+	0x2cce, 0x2cce,
+	0x2cd0, 0x2cd0,
+	0x2cd2, 0x2cd2,
+	0x2cd4, 0x2cd4,
+	0x2cd6, 0x2cd6,
+	0x2cd8, 0x2cd8,
+	0x2cda, 0x2cda,
+	0x2cdc, 0x2cdc,
+	0x2cde, 0x2cde,
+	0x2ce0, 0x2ce0,
+	0x2ce2, 0x2ce2,
+	0x2ceb, 0x2ceb,
+	0x2ced, 0x2ced,
+	0xa640, 0xa640,
+	0xa642, 0xa642,
+	0xa644, 0xa644,
+	0xa646, 0xa646,
+	0xa648, 0xa648,
+	0xa64a, 0xa64a,
+	0xa64c, 0xa64c,
+	0xa64e, 0xa64e,
+	0xa650, 0xa650,
+	0xa652, 0xa652,
+	0xa654, 0xa654,
+	0xa656, 0xa656,
+	0xa658, 0xa658,
+	0xa65a, 0xa65a,
+	0xa65c, 0xa65c,
+	0xa65e, 0xa65e,
+	0xa662, 0xa662,
+	0xa664, 0xa664,
+	0xa666, 0xa666,
+	0xa668, 0xa668,
+	0xa66a, 0xa66a,
+	0xa66c, 0xa66c,
+	0xa680, 0xa680,
+	0xa682, 0xa682,
+	0xa684, 0xa684,
+	0xa686, 0xa686,
+	0xa688, 0xa688,
+	0xa68a, 0xa68a,
+	0xa68c, 0xa68c,
+	0xa68e, 0xa68e,
+	0xa690, 0xa690,
+	0xa692, 0xa692,
+	0xa694, 0xa694,
+	0xa696, 0xa696,
+	0xa722, 0xa722,
+	0xa724, 0xa724,
+	0xa726, 0xa726,
+	0xa728, 0xa728,
+	0xa72a, 0xa72a,
+	0xa72c, 0xa72c,
+	0xa72e, 0xa72e,
+	0xa732, 0xa732,
+	0xa734, 0xa734,
+	0xa736, 0xa736,
+	0xa738, 0xa738,
+	0xa73a, 0xa73a,
+	0xa73c, 0xa73c,
+	0xa73e, 0xa73e,
+	0xa740, 0xa740,
+	0xa742, 0xa742,
+	0xa744, 0xa744,
+	0xa746, 0xa746,
+	0xa748, 0xa748,
+	0xa74a, 0xa74a,
+	0xa74c, 0xa74c,
+	0xa74e, 0xa74e,
+	0xa750, 0xa750,
+	0xa752, 0xa752,
+	0xa754, 0xa754,
+	0xa756, 0xa756,
+	0xa758, 0xa758,
+	0xa75a, 0xa75a,
+	0xa75c, 0xa75c,
+	0xa75e, 0xa75e,
+	0xa760, 0xa760,
+	0xa762, 0xa762,
+	0xa764, 0xa764,
+	0xa766, 0xa766,
+	0xa768, 0xa768,
+	0xa76a, 0xa76a,
+	0xa76c, 0xa76c,
+	0xa76e, 0xa76e,
+	0xa779, 0xa779,
+	0xa77b, 0xa77b,
+	0xa77d, 0xa77e,
+	0xa780, 0xa780,
+	0xa782, 0xa782,
+	0xa784, 0xa784,
+	0xa786, 0xa786,
+	0xa78b, 0xa78b,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff21, 0xff3a,
+	0x10400, 0x10427,
+}; /* CR_Changes_When_Casefolded */
+
+/* 'Changes_When_Casemapped': Derived Property */
+static const OnigCodePoint CR_Changes_When_Casemapped[] = {
+	97,
+	0x0041, 0x005a,
+	0x0061, 0x007a,
+	0x00b5, 0x00b5,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x0137,
+	0x0139, 0x018c,
+	0x018e, 0x019a,
+	0x019c, 0x01a9,
+	0x01ac, 0x01b9,
+	0x01bc, 0x01bd,
+	0x01bf, 0x01bf,
+	0x01c4, 0x0220,
+	0x0222, 0x0233,
+	0x023a, 0x0254,
+	0x0256, 0x0257,
+	0x0259, 0x0259,
+	0x025b, 0x025b,
+	0x0260, 0x0260,
+	0x0263, 0x0263,
+	0x0268, 0x0269,
+	0x026b, 0x026b,
+	0x026f, 0x026f,
+	0x0271, 0x0272,
+	0x0275, 0x0275,
+	0x027d, 0x027d,
+	0x0280, 0x0280,
+	0x0283, 0x0283,
+	0x0288, 0x028c,
+	0x0292, 0x0292,
+	0x0345, 0x0345,
+	0x0370, 0x0373,
+	0x0376, 0x0377,
+	0x037b, 0x037d,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03d1,
+	0x03d5, 0x03f2,
+	0x03f4, 0x03f5,
+	0x03f7, 0x03fb,
+	0x03fd, 0x0481,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0561, 0x0587,
+	0x10a0, 0x10c5,
+	0x1d79, 0x1d79,
+	0x1d7d, 0x1d7d,
+	0x1e00, 0x1e9b,
+	0x1e9e, 0x1e9e,
+	0x1ea0, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x2126, 0x2126,
+	0x212a, 0x212b,
+	0x2132, 0x2132,
+	0x214e, 0x214e,
+	0x2160, 0x217f,
+	0x2183, 0x2184,
+	0x24b6, 0x24e9,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2c70,
+	0x2c72, 0x2c73,
+	0x2c75, 0x2c76,
+	0x2c7e, 0x2ce3,
+	0x2ceb, 0x2cee,
+	0x2d00, 0x2d25,
+	0xa640, 0xa65f,
+	0xa662, 0xa66d,
+	0xa680, 0xa697,
+	0xa722, 0xa72f,
+	0xa732, 0xa76f,
+	0xa779, 0xa787,
+	0xa78b, 0xa78c,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff21, 0xff3a,
+	0xff41, 0xff5a,
+	0x10400, 0x1044f,
+}; /* CR_Changes_When_Casemapped */
+
+/* 'ID_Start': Derived Property */
+static const OnigCodePoint CR_ID_Start[] = {
+	424,
+	0x0041, 0x005a,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0370, 0x0374,
+	0x0376, 0x0377,
+	0x037a, 0x037d,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x0559,
+	0x0561, 0x0587,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f2,
+	0x0621, 0x064a,
+	0x066e, 0x066f,
+	0x0671, 0x06d3,
+	0x06d5, 0x06d5,
+	0x06e5, 0x06e6,
+	0x06ee, 0x06ef,
+	0x06fa, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x0710,
+	0x0712, 0x072f,
+	0x074d, 0x07a5,
+	0x07b1, 0x07b1,
+	0x07ca, 0x07ea,
+	0x07f4, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0800, 0x0815,
+	0x081a, 0x081a,
+	0x0824, 0x0824,
+	0x0828, 0x0828,
+	0x0904, 0x0939,
+	0x093d, 0x093d,
+	0x0950, 0x0950,
+	0x0958, 0x0961,
+	0x0971, 0x0972,
+	0x0979, 0x097f,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bd, 0x09bd,
+	0x09ce, 0x09ce,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e1,
+	0x09f0, 0x09f1,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a72, 0x0a74,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abd, 0x0abd,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae1,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3d, 0x0b3d,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b61,
+	0x0b71, 0x0b71,
+	0x0b83, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bd0, 0x0bd0,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c3d,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c61,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbd, 0x0cbd,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce1,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d3d,
+	0x0d60, 0x0d61,
+	0x0d7a, 0x0d7f,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0e01, 0x0e30,
+	0x0e32, 0x0e33,
+	0x0e40, 0x0e46,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb0,
+	0x0eb2, 0x0eb3,
+	0x0ebd, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f00,
+	0x0f40, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f88, 0x0f8b,
+	0x1000, 0x102a,
+	0x103f, 0x103f,
+	0x1050, 0x1055,
+	0x105a, 0x105d,
+	0x1061, 0x1061,
+	0x1065, 0x1066,
+	0x106e, 0x1070,
+	0x1075, 0x1081,
+	0x108e, 0x108e,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x1380, 0x138f,
+	0x13a0, 0x13f4,
+	0x1401, 0x166c,
+	0x166f, 0x167f,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	0x16ee, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1711,
+	0x1720, 0x1731,
+	0x1740, 0x1751,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1780, 0x17b3,
+	0x17d7, 0x17d7,
+	0x17dc, 0x17dc,
+	0x1820, 0x1877,
+	0x1880, 0x18a8,
+	0x18aa, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1950, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19c1, 0x19c7,
+	0x1a00, 0x1a16,
+	0x1a20, 0x1a54,
+	0x1aa7, 0x1aa7,
+	0x1b05, 0x1b33,
+	0x1b45, 0x1b4b,
+	0x1b83, 0x1ba0,
+	0x1bae, 0x1baf,
+	0x1c00, 0x1c23,
+	0x1c4d, 0x1c4f,
+	0x1c5a, 0x1c7d,
+	0x1ce9, 0x1cec,
+	0x1cee, 0x1cf1,
+	0x1d00, 0x1dbf,
+	0x1e00, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2118, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x2188,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cee,
+	0x2d00, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x3005, 0x3007,
+	0x3021, 0x3029,
+	0x3031, 0x3035,
+	0x3038, 0x303c,
+	0x3041, 0x3096,
+	0x309b, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa4d0, 0xa4fd,
+	0xa500, 0xa60c,
+	0xa610, 0xa61f,
+	0xa62a, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66e,
+	0xa67f, 0xa697,
+	0xa6a0, 0xa6ef,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa801,
+	0xa803, 0xa805,
+	0xa807, 0xa80a,
+	0xa80c, 0xa822,
+	0xa840, 0xa873,
+	0xa882, 0xa8b3,
+	0xa8f2, 0xa8f7,
+	0xa8fb, 0xa8fb,
+	0xa90a, 0xa925,
+	0xa930, 0xa946,
+	0xa960, 0xa97c,
+	0xa984, 0xa9b2,
+	0xa9cf, 0xa9cf,
+	0xaa00, 0xaa28,
+	0xaa40, 0xaa42,
+	0xaa44, 0xaa4b,
+	0xaa60, 0xaa76,
+	0xaa7a, 0xaa7a,
+	0xaa80, 0xaaaf,
+	0xaab1, 0xaab1,
+	0xaab5, 0xaab6,
+	0xaab9, 0xaabd,
+	0xaac0, 0xaac0,
+	0xaac2, 0xaac2,
+	0xaadb, 0xaadd,
+	0xabc0, 0xabe2,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb1d,
+	0xfb1f, 0xfb28,
+	0xfb2a, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfd3d,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdfb,
+	0xfe70, 0xfe74,
+	0xfe76, 0xfefc,
+	0xff21, 0xff3a,
+	0xff41, 0xff5a,
+	0xff66, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10140, 0x10174,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x103d1, 0x103d5,
+	0x10400, 0x1049d,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a00,
+	0x10a10, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a60, 0x10a7c,
+	0x10b00, 0x10b35,
+	0x10b40, 0x10b55,
+	0x10b60, 0x10b72,
+	0x10c00, 0x10c48,
+	0x11083, 0x110af,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x13000, 0x1342e,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+}; /* CR_ID_Start */
+
+/* 'ID_Continue': Derived Property */
+static const OnigCodePoint CR_ID_Continue[] = {
+	506,
+	0x0030, 0x0039,
+	0x0041, 0x005a,
+	0x005f, 0x005f,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00b7, 0x00b7,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0300, 0x0374,
+	0x0376, 0x0377,
+	0x037a, 0x037d,
+	0x0386, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x0483, 0x0487,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x0559,
+	0x0561, 0x0587,
+	0x0591, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f2,
+	0x0610, 0x061a,
+	0x0621, 0x065e,
+	0x0660, 0x0669,
+	0x066e, 0x06d3,
+	0x06d5, 0x06dc,
+	0x06df, 0x06e8,
+	0x06ea, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x074a,
+	0x074d, 0x07b1,
+	0x07c0, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0800, 0x082d,
+	0x0900, 0x0939,
+	0x093c, 0x094e,
+	0x0950, 0x0955,
+	0x0958, 0x0963,
+	0x0966, 0x096f,
+	0x0971, 0x0972,
+	0x0979, 0x097f,
+	0x0981, 0x0983,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bc, 0x09c4,
+	0x09c7, 0x09c8,
+	0x09cb, 0x09ce,
+	0x09d7, 0x09d7,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e3,
+	0x09e6, 0x09f1,
+	0x0a01, 0x0a03,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a3c, 0x0a3c,
+	0x0a3e, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4d,
+	0x0a51, 0x0a51,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a66, 0x0a75,
+	0x0a81, 0x0a83,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abc, 0x0ac5,
+	0x0ac7, 0x0ac9,
+	0x0acb, 0x0acd,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae3,
+	0x0ae6, 0x0aef,
+	0x0b01, 0x0b03,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3c, 0x0b44,
+	0x0b47, 0x0b48,
+	0x0b4b, 0x0b4d,
+	0x0b56, 0x0b57,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b63,
+	0x0b66, 0x0b6f,
+	0x0b71, 0x0b71,
+	0x0b82, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bbe, 0x0bc2,
+	0x0bc6, 0x0bc8,
+	0x0bca, 0x0bcd,
+	0x0bd0, 0x0bd0,
+	0x0bd7, 0x0bd7,
+	0x0be6, 0x0bef,
+	0x0c01, 0x0c03,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c44,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4d,
+	0x0c55, 0x0c56,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c63,
+	0x0c66, 0x0c6f,
+	0x0c82, 0x0c83,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbc, 0x0cc4,
+	0x0cc6, 0x0cc8,
+	0x0cca, 0x0ccd,
+	0x0cd5, 0x0cd6,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce3,
+	0x0ce6, 0x0cef,
+	0x0d02, 0x0d03,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d44,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4d,
+	0x0d57, 0x0d57,
+	0x0d60, 0x0d63,
+	0x0d66, 0x0d6f,
+	0x0d7a, 0x0d7f,
+	0x0d82, 0x0d83,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0dca, 0x0dca,
+	0x0dcf, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0dd8, 0x0ddf,
+	0x0df2, 0x0df3,
+	0x0e01, 0x0e3a,
+	0x0e40, 0x0e4e,
+	0x0e50, 0x0e59,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb9,
+	0x0ebb, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0ec8, 0x0ecd,
+	0x0ed0, 0x0ed9,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f00,
+	0x0f18, 0x0f19,
+	0x0f20, 0x0f29,
+	0x0f35, 0x0f35,
+	0x0f37, 0x0f37,
+	0x0f39, 0x0f39,
+	0x0f3e, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f71, 0x0f84,
+	0x0f86, 0x0f8b,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x0fc6, 0x0fc6,
+	0x1000, 0x1049,
+	0x1050, 0x109d,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x135f, 0x135f,
+	0x1369, 0x1371,
+	0x1380, 0x138f,
+	0x13a0, 0x13f4,
+	0x1401, 0x166c,
+	0x166f, 0x167f,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	0x16ee, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1714,
+	0x1720, 0x1734,
+	0x1740, 0x1753,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1772, 0x1773,
+	0x1780, 0x17b3,
+	0x17b6, 0x17d3,
+	0x17d7, 0x17d7,
+	0x17dc, 0x17dd,
+	0x17e0, 0x17e9,
+	0x180b, 0x180d,
+	0x1810, 0x1819,
+	0x1820, 0x1877,
+	0x1880, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1920, 0x192b,
+	0x1930, 0x193b,
+	0x1946, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19b0, 0x19c9,
+	0x19d0, 0x19da,
+	0x1a00, 0x1a1b,
+	0x1a20, 0x1a5e,
+	0x1a60, 0x1a7c,
+	0x1a7f, 0x1a89,
+	0x1a90, 0x1a99,
+	0x1aa7, 0x1aa7,
+	0x1b00, 0x1b4b,
+	0x1b50, 0x1b59,
+	0x1b6b, 0x1b73,
+	0x1b80, 0x1baa,
+	0x1bae, 0x1bb9,
+	0x1c00, 0x1c37,
+	0x1c40, 0x1c49,
+	0x1c4d, 0x1c7d,
+	0x1cd0, 0x1cd2,
+	0x1cd4, 0x1cf2,
+	0x1d00, 0x1de6,
+	0x1dfd, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x203f, 0x2040,
+	0x2054, 0x2054,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x20d0, 0x20dc,
+	0x20e1, 0x20e1,
+	0x20e5, 0x20f0,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2118, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x2188,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cf1,
+	0x2d00, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x2de0, 0x2dff,
+	0x3005, 0x3007,
+	0x3021, 0x302f,
+	0x3031, 0x3035,
+	0x3038, 0x303c,
+	0x3041, 0x3096,
+	0x3099, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa4d0, 0xa4fd,
+	0xa500, 0xa60c,
+	0xa610, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66f,
+	0xa67c, 0xa67d,
+	0xa67f, 0xa697,
+	0xa6a0, 0xa6f1,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa827,
+	0xa840, 0xa873,
+	0xa880, 0xa8c4,
+	0xa8d0, 0xa8d9,
+	0xa8e0, 0xa8f7,
+	0xa8fb, 0xa8fb,
+	0xa900, 0xa92d,
+	0xa930, 0xa953,
+	0xa960, 0xa97c,
+	0xa980, 0xa9c0,
+	0xa9cf, 0xa9d9,
+	0xaa00, 0xaa36,
+	0xaa40, 0xaa4d,
+	0xaa50, 0xaa59,
+	0xaa60, 0xaa76,
+	0xaa7a, 0xaa7b,
+	0xaa80, 0xaac2,
+	0xaadb, 0xaadd,
+	0xabc0, 0xabea,
+	0xabec, 0xabed,
+	0xabf0, 0xabf9,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb28,
+	0xfb2a, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfd3d,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdfb,
+	0xfe00, 0xfe0f,
+	0xfe20, 0xfe26,
+	0xfe33, 0xfe34,
+	0xfe4d, 0xfe4f,
+	0xfe70, 0xfe74,
+	0xfe76, 0xfefc,
+	0xff10, 0xff19,
+	0xff21, 0xff3a,
+	0xff3f, 0xff3f,
+	0xff41, 0xff5a,
+	0xff66, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10140, 0x10174,
+	0x101fd, 0x101fd,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x103d1, 0x103d5,
+	0x10400, 0x1049d,
+	0x104a0, 0x104a9,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a3f,
+	0x10a60, 0x10a7c,
+	0x10b00, 0x10b35,
+	0x10b40, 0x10b55,
+	0x10b60, 0x10b72,
+	0x10c00, 0x10c48,
+	0x11080, 0x110ba,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x13000, 0x1342e,
+	0x1d165, 0x1d169,
+	0x1d16d, 0x1d172,
+	0x1d17b, 0x1d182,
+	0x1d185, 0x1d18b,
+	0x1d1aa, 0x1d1ad,
+	0x1d242, 0x1d244,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x1d7ce, 0x1d7ff,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+	0xe0100, 0xe01ef,
+}; /* CR_ID_Continue */
+
+/* 'XID_Start': Derived Property */
+static const OnigCodePoint CR_XID_Start[] = {
+	431,
+	0x0041, 0x005a,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0370, 0x0374,
+	0x0376, 0x0377,
+	0x037b, 0x037d,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x0559,
+	0x0561, 0x0587,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f2,
+	0x0621, 0x064a,
+	0x066e, 0x066f,
+	0x0671, 0x06d3,
+	0x06d5, 0x06d5,
+	0x06e5, 0x06e6,
+	0x06ee, 0x06ef,
+	0x06fa, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x0710,
+	0x0712, 0x072f,
+	0x074d, 0x07a5,
+	0x07b1, 0x07b1,
+	0x07ca, 0x07ea,
+	0x07f4, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0800, 0x0815,
+	0x081a, 0x081a,
+	0x0824, 0x0824,
+	0x0828, 0x0828,
+	0x0904, 0x0939,
+	0x093d, 0x093d,
+	0x0950, 0x0950,
+	0x0958, 0x0961,
+	0x0971, 0x0972,
+	0x0979, 0x097f,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bd, 0x09bd,
+	0x09ce, 0x09ce,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e1,
+	0x09f0, 0x09f1,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a72, 0x0a74,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abd, 0x0abd,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae1,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3d, 0x0b3d,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b61,
+	0x0b71, 0x0b71,
+	0x0b83, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bd0, 0x0bd0,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c3d,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c61,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbd, 0x0cbd,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce1,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d3d,
+	0x0d60, 0x0d61,
+	0x0d7a, 0x0d7f,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0e01, 0x0e30,
+	0x0e32, 0x0e32,
+	0x0e40, 0x0e46,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb0,
+	0x0eb2, 0x0eb2,
+	0x0ebd, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f00,
+	0x0f40, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f88, 0x0f8b,
+	0x1000, 0x102a,
+	0x103f, 0x103f,
+	0x1050, 0x1055,
+	0x105a, 0x105d,
+	0x1061, 0x1061,
+	0x1065, 0x1066,
+	0x106e, 0x1070,
+	0x1075, 0x1081,
+	0x108e, 0x108e,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x1380, 0x138f,
+	0x13a0, 0x13f4,
+	0x1401, 0x166c,
+	0x166f, 0x167f,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	0x16ee, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1711,
+	0x1720, 0x1731,
+	0x1740, 0x1751,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1780, 0x17b3,
+	0x17d7, 0x17d7,
+	0x17dc, 0x17dc,
+	0x1820, 0x1877,
+	0x1880, 0x18a8,
+	0x18aa, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1950, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19c1, 0x19c7,
+	0x1a00, 0x1a16,
+	0x1a20, 0x1a54,
+	0x1aa7, 0x1aa7,
+	0x1b05, 0x1b33,
+	0x1b45, 0x1b4b,
+	0x1b83, 0x1ba0,
+	0x1bae, 0x1baf,
+	0x1c00, 0x1c23,
+	0x1c4d, 0x1c4f,
+	0x1c5a, 0x1c7d,
+	0x1ce9, 0x1cec,
+	0x1cee, 0x1cf1,
+	0x1d00, 0x1dbf,
+	0x1e00, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2118, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x2188,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cee,
+	0x2d00, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x3005, 0x3007,
+	0x3021, 0x3029,
+	0x3031, 0x3035,
+	0x3038, 0x303c,
+	0x3041, 0x3096,
+	0x309d, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa4d0, 0xa4fd,
+	0xa500, 0xa60c,
+	0xa610, 0xa61f,
+	0xa62a, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66e,
+	0xa67f, 0xa697,
+	0xa6a0, 0xa6ef,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa801,
+	0xa803, 0xa805,
+	0xa807, 0xa80a,
+	0xa80c, 0xa822,
+	0xa840, 0xa873,
+	0xa882, 0xa8b3,
+	0xa8f2, 0xa8f7,
+	0xa8fb, 0xa8fb,
+	0xa90a, 0xa925,
+	0xa930, 0xa946,
+	0xa960, 0xa97c,
+	0xa984, 0xa9b2,
+	0xa9cf, 0xa9cf,
+	0xaa00, 0xaa28,
+	0xaa40, 0xaa42,
+	0xaa44, 0xaa4b,
+	0xaa60, 0xaa76,
+	0xaa7a, 0xaa7a,
+	0xaa80, 0xaaaf,
+	0xaab1, 0xaab1,
+	0xaab5, 0xaab6,
+	0xaab9, 0xaabd,
+	0xaac0, 0xaac0,
+	0xaac2, 0xaac2,
+	0xaadb, 0xaadd,
+	0xabc0, 0xabe2,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb1d,
+	0xfb1f, 0xfb28,
+	0xfb2a, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfc5d,
+	0xfc64, 0xfd3d,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdf9,
+	0xfe71, 0xfe71,
+	0xfe73, 0xfe73,
+	0xfe77, 0xfe77,
+	0xfe79, 0xfe79,
+	0xfe7b, 0xfe7b,
+	0xfe7d, 0xfe7d,
+	0xfe7f, 0xfefc,
+	0xff21, 0xff3a,
+	0xff41, 0xff5a,
+	0xff66, 0xff9d,
+	0xffa0, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10140, 0x10174,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x103d1, 0x103d5,
+	0x10400, 0x1049d,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a00,
+	0x10a10, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a60, 0x10a7c,
+	0x10b00, 0x10b35,
+	0x10b40, 0x10b55,
+	0x10b60, 0x10b72,
+	0x10c00, 0x10c48,
+	0x11083, 0x110af,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x13000, 0x1342e,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+}; /* CR_XID_Start */
+
+/* 'XID_Continue': Derived Property */
+static const OnigCodePoint CR_XID_Continue[] = {
+	513,
+	0x0030, 0x0039,
+	0x0041, 0x005a,
+	0x005f, 0x005f,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00b7, 0x00b7,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0300, 0x0374,
+	0x0376, 0x0377,
+	0x037b, 0x037d,
+	0x0386, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x0483, 0x0487,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x0559,
+	0x0561, 0x0587,
+	0x0591, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f2,
+	0x0610, 0x061a,
+	0x0621, 0x065e,
+	0x0660, 0x0669,
+	0x066e, 0x06d3,
+	0x06d5, 0x06dc,
+	0x06df, 0x06e8,
+	0x06ea, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x074a,
+	0x074d, 0x07b1,
+	0x07c0, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0800, 0x082d,
+	0x0900, 0x0939,
+	0x093c, 0x094e,
+	0x0950, 0x0955,
+	0x0958, 0x0963,
+	0x0966, 0x096f,
+	0x0971, 0x0972,
+	0x0979, 0x097f,
+	0x0981, 0x0983,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bc, 0x09c4,
+	0x09c7, 0x09c8,
+	0x09cb, 0x09ce,
+	0x09d7, 0x09d7,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e3,
+	0x09e6, 0x09f1,
+	0x0a01, 0x0a03,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a3c, 0x0a3c,
+	0x0a3e, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4d,
+	0x0a51, 0x0a51,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a66, 0x0a75,
+	0x0a81, 0x0a83,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abc, 0x0ac5,
+	0x0ac7, 0x0ac9,
+	0x0acb, 0x0acd,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae3,
+	0x0ae6, 0x0aef,
+	0x0b01, 0x0b03,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3c, 0x0b44,
+	0x0b47, 0x0b48,
+	0x0b4b, 0x0b4d,
+	0x0b56, 0x0b57,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b63,
+	0x0b66, 0x0b6f,
+	0x0b71, 0x0b71,
+	0x0b82, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bbe, 0x0bc2,
+	0x0bc6, 0x0bc8,
+	0x0bca, 0x0bcd,
+	0x0bd0, 0x0bd0,
+	0x0bd7, 0x0bd7,
+	0x0be6, 0x0bef,
+	0x0c01, 0x0c03,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c44,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4d,
+	0x0c55, 0x0c56,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c63,
+	0x0c66, 0x0c6f,
+	0x0c82, 0x0c83,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbc, 0x0cc4,
+	0x0cc6, 0x0cc8,
+	0x0cca, 0x0ccd,
+	0x0cd5, 0x0cd6,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce3,
+	0x0ce6, 0x0cef,
+	0x0d02, 0x0d03,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d44,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4d,
+	0x0d57, 0x0d57,
+	0x0d60, 0x0d63,
+	0x0d66, 0x0d6f,
+	0x0d7a, 0x0d7f,
+	0x0d82, 0x0d83,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0dca, 0x0dca,
+	0x0dcf, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0dd8, 0x0ddf,
+	0x0df2, 0x0df3,
+	0x0e01, 0x0e3a,
+	0x0e40, 0x0e4e,
+	0x0e50, 0x0e59,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb9,
+	0x0ebb, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0ec8, 0x0ecd,
+	0x0ed0, 0x0ed9,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f00,
+	0x0f18, 0x0f19,
+	0x0f20, 0x0f29,
+	0x0f35, 0x0f35,
+	0x0f37, 0x0f37,
+	0x0f39, 0x0f39,
+	0x0f3e, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f71, 0x0f84,
+	0x0f86, 0x0f8b,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x0fc6, 0x0fc6,
+	0x1000, 0x1049,
+	0x1050, 0x109d,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x135f, 0x135f,
+	0x1369, 0x1371,
+	0x1380, 0x138f,
+	0x13a0, 0x13f4,
+	0x1401, 0x166c,
+	0x166f, 0x167f,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	0x16ee, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1714,
+	0x1720, 0x1734,
+	0x1740, 0x1753,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1772, 0x1773,
+	0x1780, 0x17b3,
+	0x17b6, 0x17d3,
+	0x17d7, 0x17d7,
+	0x17dc, 0x17dd,
+	0x17e0, 0x17e9,
+	0x180b, 0x180d,
+	0x1810, 0x1819,
+	0x1820, 0x1877,
+	0x1880, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1920, 0x192b,
+	0x1930, 0x193b,
+	0x1946, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19b0, 0x19c9,
+	0x19d0, 0x19da,
+	0x1a00, 0x1a1b,
+	0x1a20, 0x1a5e,
+	0x1a60, 0x1a7c,
+	0x1a7f, 0x1a89,
+	0x1a90, 0x1a99,
+	0x1aa7, 0x1aa7,
+	0x1b00, 0x1b4b,
+	0x1b50, 0x1b59,
+	0x1b6b, 0x1b73,
+	0x1b80, 0x1baa,
+	0x1bae, 0x1bb9,
+	0x1c00, 0x1c37,
+	0x1c40, 0x1c49,
+	0x1c4d, 0x1c7d,
+	0x1cd0, 0x1cd2,
+	0x1cd4, 0x1cf2,
+	0x1d00, 0x1de6,
+	0x1dfd, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x203f, 0x2040,
+	0x2054, 0x2054,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x20d0, 0x20dc,
+	0x20e1, 0x20e1,
+	0x20e5, 0x20f0,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2118, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x2188,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cf1,
+	0x2d00, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x2de0, 0x2dff,
+	0x3005, 0x3007,
+	0x3021, 0x302f,
+	0x3031, 0x3035,
+	0x3038, 0x303c,
+	0x3041, 0x3096,
+	0x3099, 0x309a,
+	0x309d, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa4d0, 0xa4fd,
+	0xa500, 0xa60c,
+	0xa610, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66f,
+	0xa67c, 0xa67d,
+	0xa67f, 0xa697,
+	0xa6a0, 0xa6f1,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa827,
+	0xa840, 0xa873,
+	0xa880, 0xa8c4,
+	0xa8d0, 0xa8d9,
+	0xa8e0, 0xa8f7,
+	0xa8fb, 0xa8fb,
+	0xa900, 0xa92d,
+	0xa930, 0xa953,
+	0xa960, 0xa97c,
+	0xa980, 0xa9c0,
+	0xa9cf, 0xa9d9,
+	0xaa00, 0xaa36,
+	0xaa40, 0xaa4d,
+	0xaa50, 0xaa59,
+	0xaa60, 0xaa76,
+	0xaa7a, 0xaa7b,
+	0xaa80, 0xaac2,
+	0xaadb, 0xaadd,
+	0xabc0, 0xabea,
+	0xabec, 0xabed,
+	0xabf0, 0xabf9,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb28,
+	0xfb2a, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfc5d,
+	0xfc64, 0xfd3d,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdf9,
+	0xfe00, 0xfe0f,
+	0xfe20, 0xfe26,
+	0xfe33, 0xfe34,
+	0xfe4d, 0xfe4f,
+	0xfe71, 0xfe71,
+	0xfe73, 0xfe73,
+	0xfe77, 0xfe77,
+	0xfe79, 0xfe79,
+	0xfe7b, 0xfe7b,
+	0xfe7d, 0xfe7d,
+	0xfe7f, 0xfefc,
+	0xff10, 0xff19,
+	0xff21, 0xff3a,
+	0xff3f, 0xff3f,
+	0xff41, 0xff5a,
+	0xff66, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10140, 0x10174,
+	0x101fd, 0x101fd,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x103d1, 0x103d5,
+	0x10400, 0x1049d,
+	0x104a0, 0x104a9,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a3f,
+	0x10a60, 0x10a7c,
+	0x10b00, 0x10b35,
+	0x10b40, 0x10b55,
+	0x10b60, 0x10b72,
+	0x10c00, 0x10c48,
+	0x11080, 0x110ba,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x13000, 0x1342e,
+	0x1d165, 0x1d169,
+	0x1d16d, 0x1d172,
+	0x1d17b, 0x1d182,
+	0x1d185, 0x1d18b,
+	0x1d1aa, 0x1d1ad,
+	0x1d242, 0x1d244,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x1d7ce, 0x1d7ff,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+	0xe0100, 0xe01ef,
+}; /* CR_XID_Continue */
+
+/* 'Default_Ignorable_Code_Point': Derived Property */
+static const OnigCodePoint CR_Default_Ignorable_Code_Point[] = {
+	15,
+	0x00ad, 0x00ad,
+	0x034f, 0x034f,
+	0x115f, 0x1160,
+	0x17b4, 0x17b5,
+	0x180b, 0x180d,
+	0x200b, 0x200f,
+	0x202a, 0x202e,
+	0x2060, 0x206f,
+	0x3164, 0x3164,
+	0xfe00, 0xfe0f,
+	0xfeff, 0xfeff,
+	0xffa0, 0xffa0,
+	0xfff0, 0xfff8,
+	0x1d173, 0x1d17a,
+	0xe0000, 0xe0fff,
+}; /* CR_Default_Ignorable_Code_Point */
+
+/* 'Grapheme_Extend': Derived Property */
+static const OnigCodePoint CR_Grapheme_Extend[] = {
+	206,
+	0x0300, 0x036f,
+	0x0483, 0x0489,
+	0x0591, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x0610, 0x061a,
+	0x064b, 0x065e,
+	0x0670, 0x0670,
+	0x06d6, 0x06dc,
+	0x06de, 0x06e4,
+	0x06e7, 0x06e8,
+	0x06ea, 0x06ed,
+	0x0711, 0x0711,
+	0x0730, 0x074a,
+	0x07a6, 0x07b0,
+	0x07eb, 0x07f3,
+	0x0816, 0x0819,
+	0x081b, 0x0823,
+	0x0825, 0x0827,
+	0x0829, 0x082d,
+	0x0900, 0x0902,
+	0x093c, 0x093c,
+	0x0941, 0x0948,
+	0x094d, 0x094d,
+	0x0951, 0x0955,
+	0x0962, 0x0963,
+	0x0981, 0x0981,
+	0x09bc, 0x09bc,
+	0x09be, 0x09be,
+	0x09c1, 0x09c4,
+	0x09cd, 0x09cd,
+	0x09d7, 0x09d7,
+	0x09e2, 0x09e3,
+	0x0a01, 0x0a02,
+	0x0a3c, 0x0a3c,
+	0x0a41, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4d,
+	0x0a51, 0x0a51,
+	0x0a70, 0x0a71,
+	0x0a75, 0x0a75,
+	0x0a81, 0x0a82,
+	0x0abc, 0x0abc,
+	0x0ac1, 0x0ac5,
+	0x0ac7, 0x0ac8,
+	0x0acd, 0x0acd,
+	0x0ae2, 0x0ae3,
+	0x0b01, 0x0b01,
+	0x0b3c, 0x0b3c,
+	0x0b3e, 0x0b3f,
+	0x0b41, 0x0b44,
+	0x0b4d, 0x0b4d,
+	0x0b56, 0x0b57,
+	0x0b62, 0x0b63,
+	0x0b82, 0x0b82,
+	0x0bbe, 0x0bbe,
+	0x0bc0, 0x0bc0,
+	0x0bcd, 0x0bcd,
+	0x0bd7, 0x0bd7,
+	0x0c3e, 0x0c40,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4d,
+	0x0c55, 0x0c56,
+	0x0c62, 0x0c63,
+	0x0cbc, 0x0cbc,
+	0x0cbf, 0x0cbf,
+	0x0cc2, 0x0cc2,
+	0x0cc6, 0x0cc6,
+	0x0ccc, 0x0ccd,
+	0x0cd5, 0x0cd6,
+	0x0ce2, 0x0ce3,
+	0x0d3e, 0x0d3e,
+	0x0d41, 0x0d44,
+	0x0d4d, 0x0d4d,
+	0x0d57, 0x0d57,
+	0x0d62, 0x0d63,
+	0x0dca, 0x0dca,
+	0x0dcf, 0x0dcf,
+	0x0dd2, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0ddf, 0x0ddf,
+	0x0e31, 0x0e31,
+	0x0e34, 0x0e3a,
+	0x0e47, 0x0e4e,
+	0x0eb1, 0x0eb1,
+	0x0eb4, 0x0eb9,
+	0x0ebb, 0x0ebc,
+	0x0ec8, 0x0ecd,
+	0x0f18, 0x0f19,
+	0x0f35, 0x0f35,
+	0x0f37, 0x0f37,
+	0x0f39, 0x0f39,
+	0x0f71, 0x0f7e,
+	0x0f80, 0x0f84,
+	0x0f86, 0x0f87,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x0fc6, 0x0fc6,
+	0x102d, 0x1030,
+	0x1032, 0x1037,
+	0x1039, 0x103a,
+	0x103d, 0x103e,
+	0x1058, 0x1059,
+	0x105e, 0x1060,
+	0x1071, 0x1074,
+	0x1082, 0x1082,
+	0x1085, 0x1086,
+	0x108d, 0x108d,
+	0x109d, 0x109d,
+	0x135f, 0x135f,
+	0x1712, 0x1714,
+	0x1732, 0x1734,
+	0x1752, 0x1753,
+	0x1772, 0x1773,
+	0x17b7, 0x17bd,
+	0x17c6, 0x17c6,
+	0x17c9, 0x17d3,
+	0x17dd, 0x17dd,
+	0x180b, 0x180d,
+	0x18a9, 0x18a9,
+	0x1920, 0x1922,
+	0x1927, 0x1928,
+	0x1932, 0x1932,
+	0x1939, 0x193b,
+	0x1a17, 0x1a18,
+	0x1a56, 0x1a56,
+	0x1a58, 0x1a5e,
+	0x1a60, 0x1a60,
+	0x1a62, 0x1a62,
+	0x1a65, 0x1a6c,
+	0x1a73, 0x1a7c,
+	0x1a7f, 0x1a7f,
+	0x1b00, 0x1b03,
+	0x1b34, 0x1b34,
+	0x1b36, 0x1b3a,
+	0x1b3c, 0x1b3c,
+	0x1b42, 0x1b42,
+	0x1b6b, 0x1b73,
+	0x1b80, 0x1b81,
+	0x1ba2, 0x1ba5,
+	0x1ba8, 0x1ba9,
+	0x1c2c, 0x1c33,
+	0x1c36, 0x1c37,
+	0x1cd0, 0x1cd2,
+	0x1cd4, 0x1ce0,
+	0x1ce2, 0x1ce8,
+	0x1ced, 0x1ced,
+	0x1dc0, 0x1de6,
+	0x1dfd, 0x1dff,
+	0x200c, 0x200d,
+	0x20d0, 0x20f0,
+	0x2cef, 0x2cf1,
+	0x2de0, 0x2dff,
+	0x302a, 0x302f,
+	0x3099, 0x309a,
+	0xa66f, 0xa672,
+	0xa67c, 0xa67d,
+	0xa6f0, 0xa6f1,
+	0xa802, 0xa802,
+	0xa806, 0xa806,
+	0xa80b, 0xa80b,
+	0xa825, 0xa826,
+	0xa8c4, 0xa8c4,
+	0xa8e0, 0xa8f1,
+	0xa926, 0xa92d,
+	0xa947, 0xa951,
+	0xa980, 0xa982,
+	0xa9b3, 0xa9b3,
+	0xa9b6, 0xa9b9,
+	0xa9bc, 0xa9bc,
+	0xaa29, 0xaa2e,
+	0xaa31, 0xaa32,
+	0xaa35, 0xaa36,
+	0xaa43, 0xaa43,
+	0xaa4c, 0xaa4c,
+	0xaab0, 0xaab0,
+	0xaab2, 0xaab4,
+	0xaab7, 0xaab8,
+	0xaabe, 0xaabf,
+	0xaac1, 0xaac1,
+	0xabe5, 0xabe5,
+	0xabe8, 0xabe8,
+	0xabed, 0xabed,
+	0xfb1e, 0xfb1e,
+	0xfe00, 0xfe0f,
+	0xfe20, 0xfe26,
+	0xff9e, 0xff9f,
+	0x101fd, 0x101fd,
+	0x10a01, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a0f,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a3f,
+	0x11080, 0x11081,
+	0x110b3, 0x110b6,
+	0x110b9, 0x110ba,
+	0x1d165, 0x1d165,
+	0x1d167, 0x1d169,
+	0x1d16e, 0x1d172,
+	0x1d17b, 0x1d182,
+	0x1d185, 0x1d18b,
+	0x1d1aa, 0x1d1ad,
+	0x1d242, 0x1d244,
+	0xe0100, 0xe01ef,
+}; /* CR_Grapheme_Extend */
+
+/* 'Grapheme_Base': Derived Property */
+static const OnigCodePoint CR_Grapheme_Base[] = {
+	567,
+	0x0020, 0x007e,
+	0x00a0, 0x00ac,
+	0x00ae, 0x02ff,
+	0x0370, 0x0377,
+	0x037a, 0x037e,
+	0x0384, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x0482,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x055f,
+	0x0561, 0x0587,
+	0x0589, 0x058a,
+	0x05be, 0x05be,
+	0x05c0, 0x05c0,
+	0x05c3, 0x05c3,
+	0x05c6, 0x05c6,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f4,
+	0x0606, 0x060f,
+	0x061b, 0x061b,
+	0x061e, 0x061f,
+	0x0621, 0x064a,
+	0x0660, 0x066f,
+	0x0671, 0x06d5,
+	0x06e5, 0x06e6,
+	0x06e9, 0x06e9,
+	0x06ee, 0x070d,
+	0x0710, 0x0710,
+	0x0712, 0x072f,
+	0x074d, 0x07a5,
+	0x07b1, 0x07b1,
+	0x07c0, 0x07ea,
+	0x07f4, 0x07fa,
+	0x0800, 0x0815,
+	0x081a, 0x081a,
+	0x0824, 0x0824,
+	0x0828, 0x0828,
+	0x0830, 0x083e,
+	0x0903, 0x0939,
+	0x093d, 0x0940,
+	0x0949, 0x094c,
+	0x094e, 0x094e,
+	0x0950, 0x0950,
+	0x0958, 0x0961,
+	0x0964, 0x0972,
+	0x0979, 0x097f,
+	0x0982, 0x0983,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bd, 0x09bd,
+	0x09bf, 0x09c0,
+	0x09c7, 0x09c8,
+	0x09cb, 0x09cc,
+	0x09ce, 0x09ce,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e1,
+	0x09e6, 0x09fb,
+	0x0a03, 0x0a03,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a3e, 0x0a40,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a66, 0x0a6f,
+	0x0a72, 0x0a74,
+	0x0a83, 0x0a83,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abd, 0x0ac0,
+	0x0ac9, 0x0ac9,
+	0x0acb, 0x0acc,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae1,
+	0x0ae6, 0x0aef,
+	0x0af1, 0x0af1,
+	0x0b02, 0x0b03,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3d, 0x0b3d,
+	0x0b40, 0x0b40,
+	0x0b47, 0x0b48,
+	0x0b4b, 0x0b4c,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b61,
+	0x0b66, 0x0b71,
+	0x0b83, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bbf, 0x0bbf,
+	0x0bc1, 0x0bc2,
+	0x0bc6, 0x0bc8,
+	0x0bca, 0x0bcc,
+	0x0bd0, 0x0bd0,
+	0x0be6, 0x0bfa,
+	0x0c01, 0x0c03,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c3d,
+	0x0c41, 0x0c44,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c61,
+	0x0c66, 0x0c6f,
+	0x0c78, 0x0c7f,
+	0x0c82, 0x0c83,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbd, 0x0cbe,
+	0x0cc0, 0x0cc1,
+	0x0cc3, 0x0cc4,
+	0x0cc7, 0x0cc8,
+	0x0cca, 0x0ccb,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce1,
+	0x0ce6, 0x0cef,
+	0x0cf1, 0x0cf2,
+	0x0d02, 0x0d03,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d3d,
+	0x0d3f, 0x0d40,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4c,
+	0x0d60, 0x0d61,
+	0x0d66, 0x0d75,
+	0x0d79, 0x0d7f,
+	0x0d82, 0x0d83,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0dd0, 0x0dd1,
+	0x0dd8, 0x0dde,
+	0x0df2, 0x0df4,
+	0x0e01, 0x0e30,
+	0x0e32, 0x0e33,
+	0x0e3f, 0x0e46,
+	0x0e4f, 0x0e5b,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb0,
+	0x0eb2, 0x0eb3,
+	0x0ebd, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0ed0, 0x0ed9,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f17,
+	0x0f1a, 0x0f34,
+	0x0f36, 0x0f36,
+	0x0f38, 0x0f38,
+	0x0f3a, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f7f, 0x0f7f,
+	0x0f85, 0x0f85,
+	0x0f88, 0x0f8b,
+	0x0fbe, 0x0fc5,
+	0x0fc7, 0x0fcc,
+	0x0fce, 0x0fd8,
+	0x1000, 0x102c,
+	0x1031, 0x1031,
+	0x1038, 0x1038,
+	0x103b, 0x103c,
+	0x103f, 0x1057,
+	0x105a, 0x105d,
+	0x1061, 0x1070,
+	0x1075, 0x1081,
+	0x1083, 0x1084,
+	0x1087, 0x108c,
+	0x108e, 0x109c,
+	0x109e, 0x10c5,
+	0x10d0, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x1360, 0x137c,
+	0x1380, 0x1399,
+	0x13a0, 0x13f4,
+	0x1400, 0x169c,
+	0x16a0, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1711,
+	0x1720, 0x1731,
+	0x1735, 0x1736,
+	0x1740, 0x1751,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1780, 0x17b3,
+	0x17b6, 0x17b6,
+	0x17be, 0x17c5,
+	0x17c7, 0x17c8,
+	0x17d4, 0x17dc,
+	0x17e0, 0x17e9,
+	0x17f0, 0x17f9,
+	0x1800, 0x180a,
+	0x180e, 0x180e,
+	0x1810, 0x1819,
+	0x1820, 0x1877,
+	0x1880, 0x18a8,
+	0x18aa, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1923, 0x1926,
+	0x1929, 0x192b,
+	0x1930, 0x1931,
+	0x1933, 0x1938,
+	0x1940, 0x1940,
+	0x1944, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19b0, 0x19c9,
+	0x19d0, 0x19da,
+	0x19de, 0x1a16,
+	0x1a19, 0x1a1b,
+	0x1a1e, 0x1a55,
+	0x1a57, 0x1a57,
+	0x1a61, 0x1a61,
+	0x1a63, 0x1a64,
+	0x1a6d, 0x1a72,
+	0x1a80, 0x1a89,
+	0x1a90, 0x1a99,
+	0x1aa0, 0x1aad,
+	0x1b04, 0x1b33,
+	0x1b35, 0x1b35,
+	0x1b3b, 0x1b3b,
+	0x1b3d, 0x1b41,
+	0x1b43, 0x1b4b,
+	0x1b50, 0x1b6a,
+	0x1b74, 0x1b7c,
+	0x1b82, 0x1ba1,
+	0x1ba6, 0x1ba7,
+	0x1baa, 0x1baa,
+	0x1bae, 0x1bb9,
+	0x1c00, 0x1c2b,
+	0x1c34, 0x1c35,
+	0x1c3b, 0x1c49,
+	0x1c4d, 0x1c7f,
+	0x1cd3, 0x1cd3,
+	0x1ce1, 0x1ce1,
+	0x1ce9, 0x1cec,
+	0x1cee, 0x1cf2,
+	0x1d00, 0x1dbf,
+	0x1e00, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fc4,
+	0x1fc6, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fdd, 0x1fef,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffe,
+	0x2000, 0x200a,
+	0x2010, 0x2027,
+	0x202f, 0x205f,
+	0x2070, 0x2071,
+	0x2074, 0x208e,
+	0x2090, 0x2094,
+	0x20a0, 0x20b8,
+	0x2100, 0x2189,
+	0x2190, 0x23e8,
+	0x2400, 0x2426,
+	0x2440, 0x244a,
+	0x2460, 0x26cd,
+	0x26cf, 0x26e1,
+	0x26e3, 0x26e3,
+	0x26e8, 0x26ff,
+	0x2701, 0x2704,
+	0x2706, 0x2709,
+	0x270c, 0x2727,
+	0x2729, 0x274b,
+	0x274d, 0x274d,
+	0x274f, 0x2752,
+	0x2756, 0x275e,
+	0x2761, 0x2794,
+	0x2798, 0x27af,
+	0x27b1, 0x27be,
+	0x27c0, 0x27ca,
+	0x27cc, 0x27cc,
+	0x27d0, 0x2b4c,
+	0x2b50, 0x2b59,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2cee,
+	0x2cf9, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x2e00, 0x2e31,
+	0x2e80, 0x2e99,
+	0x2e9b, 0x2ef3,
+	0x2f00, 0x2fd5,
+	0x2ff0, 0x2ffb,
+	0x3000, 0x3029,
+	0x3030, 0x303f,
+	0x3041, 0x3096,
+	0x309b, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x3190, 0x31b7,
+	0x31c0, 0x31e3,
+	0x31f0, 0x321e,
+	0x3220, 0x32fe,
+	0x3300, 0x4db5,
+	0x4dc0, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa490, 0xa4c6,
+	0xa4d0, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66e,
+	0xa673, 0xa673,
+	0xa67e, 0xa697,
+	0xa6a0, 0xa6ef,
+	0xa6f2, 0xa6f7,
+	0xa700, 0xa78c,
+	0xa7fb, 0xa801,
+	0xa803, 0xa805,
+	0xa807, 0xa80a,
+	0xa80c, 0xa824,
+	0xa827, 0xa82b,
+	0xa830, 0xa839,
+	0xa840, 0xa877,
+	0xa880, 0xa8c3,
+	0xa8ce, 0xa8d9,
+	0xa8f2, 0xa8fb,
+	0xa900, 0xa925,
+	0xa92e, 0xa946,
+	0xa952, 0xa953,
+	0xa95f, 0xa97c,
+	0xa983, 0xa9b2,
+	0xa9b4, 0xa9b5,
+	0xa9ba, 0xa9bb,
+	0xa9bd, 0xa9cd,
+	0xa9cf, 0xa9d9,
+	0xa9de, 0xa9df,
+	0xaa00, 0xaa28,
+	0xaa2f, 0xaa30,
+	0xaa33, 0xaa34,
+	0xaa40, 0xaa42,
+	0xaa44, 0xaa4b,
+	0xaa4d, 0xaa4d,
+	0xaa50, 0xaa59,
+	0xaa5c, 0xaa7b,
+	0xaa80, 0xaaaf,
+	0xaab1, 0xaab1,
+	0xaab5, 0xaab6,
+	0xaab9, 0xaabd,
+	0xaac0, 0xaac0,
+	0xaac2, 0xaac2,
+	0xaadb, 0xaadf,
+	0xabc0, 0xabe4,
+	0xabe6, 0xabe7,
+	0xabe9, 0xabec,
+	0xabf0, 0xabf9,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb1d,
+	0xfb1f, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfd3f,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdfd,
+	0xfe10, 0xfe19,
+	0xfe30, 0xfe52,
+	0xfe54, 0xfe66,
+	0xfe68, 0xfe6b,
+	0xfe70, 0xfe74,
+	0xfe76, 0xfefc,
+	0xff01, 0xff9d,
+	0xffa0, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0xffe0, 0xffe6,
+	0xffe8, 0xffee,
+	0xfffc, 0xfffd,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10100, 0x10102,
+	0x10107, 0x10133,
+	0x10137, 0x1018a,
+	0x10190, 0x1019b,
+	0x101d0, 0x101fc,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10320, 0x10323,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x1039f, 0x103c3,
+	0x103c8, 0x103d5,
+	0x10400, 0x1049d,
+	0x104a0, 0x104a9,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10857, 0x1085f,
+	0x10900, 0x1091b,
+	0x1091f, 0x10939,
+	0x1093f, 0x1093f,
+	0x10a00, 0x10a00,
+	0x10a10, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a40, 0x10a47,
+	0x10a50, 0x10a58,
+	0x10a60, 0x10a7f,
+	0x10b00, 0x10b35,
+	0x10b39, 0x10b55,
+	0x10b58, 0x10b72,
+	0x10b78, 0x10b7f,
+	0x10c00, 0x10c48,
+	0x10e60, 0x10e7e,
+	0x11082, 0x110b2,
+	0x110b7, 0x110b8,
+	0x110bb, 0x110bc,
+	0x110be, 0x110c1,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x12470, 0x12473,
+	0x13000, 0x1342e,
+	0x1d000, 0x1d0f5,
+	0x1d100, 0x1d126,
+	0x1d129, 0x1d164,
+	0x1d166, 0x1d166,
+	0x1d16a, 0x1d16d,
+	0x1d183, 0x1d184,
+	0x1d18c, 0x1d1a9,
+	0x1d1ae, 0x1d1dd,
+	0x1d200, 0x1d241,
+	0x1d245, 0x1d245,
+	0x1d300, 0x1d356,
+	0x1d360, 0x1d371,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d7cb,
+	0x1d7ce, 0x1d7ff,
+	0x1f000, 0x1f02b,
+	0x1f030, 0x1f093,
+	0x1f100, 0x1f10a,
+	0x1f110, 0x1f12e,
+	0x1f131, 0x1f131,
+	0x1f13d, 0x1f13d,
+	0x1f13f, 0x1f13f,
+	0x1f142, 0x1f142,
+	0x1f146, 0x1f146,
+	0x1f14a, 0x1f14e,
+	0x1f157, 0x1f157,
+	0x1f15f, 0x1f15f,
+	0x1f179, 0x1f179,
+	0x1f17b, 0x1f17c,
+	0x1f17f, 0x1f17f,
+	0x1f18a, 0x1f18d,
+	0x1f190, 0x1f190,
+	0x1f200, 0x1f200,
+	0x1f210, 0x1f231,
+	0x1f240, 0x1f248,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+}; /* CR_Grapheme_Base */
+
+/* 'Grapheme_Link': Derived Property */
+static const OnigCodePoint CR_Grapheme_Link[] = {
+	26,
+	0x094d, 0x094d,
+	0x09cd, 0x09cd,
+	0x0a4d, 0x0a4d,
+	0x0acd, 0x0acd,
+	0x0b4d, 0x0b4d,
+	0x0bcd, 0x0bcd,
+	0x0c4d, 0x0c4d,
+	0x0ccd, 0x0ccd,
+	0x0d4d, 0x0d4d,
+	0x0dca, 0x0dca,
+	0x0e3a, 0x0e3a,
+	0x0f84, 0x0f84,
+	0x1039, 0x103a,
+	0x1714, 0x1714,
+	0x1734, 0x1734,
+	0x17d2, 0x17d2,
+	0x1a60, 0x1a60,
+	0x1b44, 0x1b44,
+	0x1baa, 0x1baa,
+	0xa806, 0xa806,
+	0xa8c4, 0xa8c4,
+	0xa953, 0xa953,
+	0xa9c0, 0xa9c0,
+	0xabed, 0xabed,
+	0x10a3f, 0x10a3f,
+	0x110b9, 0x110b9,
+}; /* CR_Grapheme_Link */
+
 /* 'Common': Script */
 static const OnigCodePoint CR_Common[] = {
 	159,
@@ -9834,10 +17139,891 @@
 	1,
 	0x11080, 0x110c1,
 }; /* CR_Kaithi */
+
+/* 'White_Space': Binary Property */
+static const OnigCodePoint CR_White_Space[] = {
+	11,
+	0x0009, 0x000d,
+	0x0020, 0x0020,
+	0x0085, 0x0085,
+	0x00a0, 0x00a0,
+	0x1680, 0x1680,
+	0x180e, 0x180e,
+	0x2000, 0x200a,
+	0x2028, 0x2029,
+	0x202f, 0x202f,
+	0x205f, 0x205f,
+	0x3000, 0x3000,
+}; /* CR_White_Space */
+
+/* 'Bidi_Control': Binary Property */
+static const OnigCodePoint CR_Bidi_Control[] = {
+	2,
+	0x200e, 0x200f,
+	0x202a, 0x202e,
+}; /* CR_Bidi_Control */
+
+/* 'Join_Control': Binary Property */
+static const OnigCodePoint CR_Join_Control[] = {
+	1,
+	0x200c, 0x200d,
+}; /* CR_Join_Control */
+
+/* 'Dash': Binary Property */
+static const OnigCodePoint CR_Dash[] = {
+	19,
+	0x002d, 0x002d,
+	0x058a, 0x058a,
+	0x05be, 0x05be,
+	0x1400, 0x1400,
+	0x1806, 0x1806,
+	0x2010, 0x2015,
+	0x2053, 0x2053,
+	0x207b, 0x207b,
+	0x208b, 0x208b,
+	0x2212, 0x2212,
+	0x2e17, 0x2e17,
+	0x2e1a, 0x2e1a,
+	0x301c, 0x301c,
+	0x3030, 0x3030,
+	0x30a0, 0x30a0,
+	0xfe31, 0xfe32,
+	0xfe58, 0xfe58,
+	0xfe63, 0xfe63,
+	0xff0d, 0xff0d,
+}; /* CR_Dash */
+
+/* 'Hyphen': Binary Property */
+static const OnigCodePoint CR_Hyphen[] = {
+	10,
+	0x002d, 0x002d,
+	0x00ad, 0x00ad,
+	0x058a, 0x058a,
+	0x1806, 0x1806,
+	0x2010, 0x2011,
+	0x2e17, 0x2e17,
+	0x30fb, 0x30fb,
+	0xfe63, 0xfe63,
+	0xff0d, 0xff0d,
+	0xff65, 0xff65,
+}; /* CR_Hyphen */
+
+/* 'Quotation_Mark': Binary Property */
+static const OnigCodePoint CR_Quotation_Mark[] = {
+	12,
+	0x0022, 0x0022,
+	0x0027, 0x0027,
+	0x00ab, 0x00ab,
+	0x00bb, 0x00bb,
+	0x2018, 0x201f,
+	0x2039, 0x203a,
+	0x300c, 0x300f,
+	0x301d, 0x301f,
+	0xfe41, 0xfe44,
+	0xff02, 0xff02,
+	0xff07, 0xff07,
+	0xff62, 0xff63,
+}; /* CR_Quotation_Mark */
+
+/* 'Terminal_Punctuation': Binary Property */
+static const OnigCodePoint CR_Terminal_Punctuation[] = {
+	65,
+	0x0021, 0x0021,
+	0x002c, 0x002c,
+	0x002e, 0x002e,
+	0x003a, 0x003b,
+	0x003f, 0x003f,
+	0x037e, 0x037e,
+	0x0387, 0x0387,
+	0x0589, 0x0589,
+	0x05c3, 0x05c3,
+	0x060c, 0x060c,
+	0x061b, 0x061b,
+	0x061f, 0x061f,
+	0x06d4, 0x06d4,
+	0x0700, 0x070a,
+	0x070c, 0x070c,
+	0x07f8, 0x07f9,
+	0x0830, 0x083e,
+	0x0964, 0x0965,
+	0x0e5a, 0x0e5b,
+	0x0f08, 0x0f08,
+	0x0f0d, 0x0f12,
+	0x104a, 0x104b,
+	0x1361, 0x1368,
+	0x166d, 0x166e,
+	0x16eb, 0x16ed,
+	0x17d4, 0x17d6,
+	0x17da, 0x17da,
+	0x1802, 0x1805,
+	0x1808, 0x1809,
+	0x1944, 0x1945,
+	0x1aa8, 0x1aab,
+	0x1b5a, 0x1b5b,
+	0x1b5d, 0x1b5f,
+	0x1c3b, 0x1c3f,
+	0x1c7e, 0x1c7f,
+	0x203c, 0x203d,
+	0x2047, 0x2049,
+	0x2e2e, 0x2e2e,
+	0x3001, 0x3002,
+	0xa4fe, 0xa4ff,
+	0xa60d, 0xa60f,
+	0xa6f3, 0xa6f7,
+	0xa876, 0xa877,
+	0xa8ce, 0xa8cf,
+	0xa92f, 0xa92f,
+	0xa9c7, 0xa9c9,
+	0xaa5d, 0xaa5f,
+	0xaadf, 0xaadf,
+	0xabeb, 0xabeb,
+	0xfe50, 0xfe52,
+	0xfe54, 0xfe57,
+	0xff01, 0xff01,
+	0xff0c, 0xff0c,
+	0xff0e, 0xff0e,
+	0xff1a, 0xff1b,
+	0xff1f, 0xff1f,
+	0xff61, 0xff61,
+	0xff64, 0xff64,
+	0x1039f, 0x1039f,
+	0x103d0, 0x103d0,
+	0x10857, 0x10857,
+	0x1091f, 0x1091f,
+	0x10b3a, 0x10b3f,
+	0x110be, 0x110c1,
+	0x12470, 0x12473,
+}; /* CR_Terminal_Punctuation */
+
+/* 'Other_Math': Binary Property */
+static const OnigCodePoint CR_Other_Math[] = {
+	99,
+	0x005e, 0x005e,
+	0x03d0, 0x03d2,
+	0x03d5, 0x03d5,
+	0x03f0, 0x03f1,
+	0x03f4, 0x03f5,
+	0x2016, 0x2016,
+	0x2032, 0x2034,
+	0x2040, 0x2040,
+	0x2061, 0x2064,
+	0x207d, 0x207e,
+	0x208d, 0x208e,
+	0x20d0, 0x20dc,
+	0x20e1, 0x20e1,
+	0x20e5, 0x20e6,
+	0x20eb, 0x20ef,
+	0x2102, 0x2102,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2119, 0x211d,
+	0x2124, 0x2124,
+	0x2128, 0x2129,
+	0x212c, 0x212d,
+	0x212f, 0x2131,
+	0x2133, 0x2138,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x2195, 0x2199,
+	0x219c, 0x219f,
+	0x21a1, 0x21a2,
+	0x21a4, 0x21a5,
+	0x21a7, 0x21a7,
+	0x21a9, 0x21ad,
+	0x21b0, 0x21b1,
+	0x21b6, 0x21b7,
+	0x21bc, 0x21cd,
+	0x21d0, 0x21d1,
+	0x21d3, 0x21d3,
+	0x21d5, 0x21db,
+	0x21dd, 0x21dd,
+	0x21e4, 0x21e5,
+	0x23b4, 0x23b5,
+	0x23b7, 0x23b7,
+	0x23d0, 0x23d0,
+	0x23e2, 0x23e2,
+	0x25a0, 0x25a1,
+	0x25ae, 0x25b6,
+	0x25bc, 0x25c0,
+	0x25c6, 0x25c7,
+	0x25ca, 0x25cb,
+	0x25cf, 0x25d3,
+	0x25e2, 0x25e2,
+	0x25e4, 0x25e4,
+	0x25e7, 0x25ec,
+	0x2605, 0x2606,
+	0x2640, 0x2640,
+	0x2642, 0x2642,
+	0x2660, 0x2663,
+	0x266d, 0x266e,
+	0x27c5, 0x27c6,
+	0x27e6, 0x27ef,
+	0x2983, 0x2998,
+	0x29d8, 0x29db,
+	0x29fc, 0x29fd,
+	0xfe61, 0xfe61,
+	0xfe63, 0xfe63,
+	0xfe68, 0xfe68,
+	0xff3c, 0xff3c,
+	0xff3e, 0xff3e,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x1d7ce, 0x1d7ff,
+}; /* CR_Other_Math */
+
+/* 'Hex_Digit': Binary Property */
+static const OnigCodePoint CR_Hex_Digit[] = {
+	6,
+	0x0030, 0x0039,
+	0x0041, 0x0046,
+	0x0061, 0x0066,
+	0xff10, 0xff19,
+	0xff21, 0xff26,
+	0xff41, 0xff46,
+}; /* CR_Hex_Digit */
+
+/* 'ASCII_Hex_Digit': Binary Property */
+static const OnigCodePoint CR_ASCII_Hex_Digit[] = {
+	3,
+	0x0030, 0x0039,
+	0x0041, 0x0046,
+	0x0061, 0x0066,
+}; /* CR_ASCII_Hex_Digit */
+
+/* 'Other_Alphabetic': Binary Property */
+static const OnigCodePoint CR_Other_Alphabetic[] = {
+	141,
+	0x0345, 0x0345,
+	0x05b0, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x0610, 0x061a,
+	0x064b, 0x0657,
+	0x0659, 0x065e,
+	0x0670, 0x0670,
+	0x06d6, 0x06dc,
+	0x06e1, 0x06e4,
+	0x06e7, 0x06e8,
+	0x06ed, 0x06ed,
+	0x0711, 0x0711,
+	0x0730, 0x073f,
+	0x07a6, 0x07b0,
+	0x0816, 0x0817,
+	0x081b, 0x0823,
+	0x0825, 0x0827,
+	0x0829, 0x082c,
+	0x0900, 0x0903,
+	0x093e, 0x094c,
+	0x094e, 0x094e,
+	0x0955, 0x0955,
+	0x0962, 0x0963,
+	0x0981, 0x0983,
+	0x09be, 0x09c4,
+	0x09c7, 0x09c8,
+	0x09cb, 0x09cc,
+	0x09d7, 0x09d7,
+	0x09e2, 0x09e3,
+	0x0a01, 0x0a03,
+	0x0a3e, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4c,
+	0x0a51, 0x0a51,
+	0x0a70, 0x0a71,
+	0x0a75, 0x0a75,
+	0x0a81, 0x0a83,
+	0x0abe, 0x0ac5,
+	0x0ac7, 0x0ac9,
+	0x0acb, 0x0acc,
+	0x0ae2, 0x0ae3,
+	0x0b01, 0x0b03,
+	0x0b3e, 0x0b44,
+	0x0b47, 0x0b48,
+	0x0b4b, 0x0b4c,
+	0x0b56, 0x0b57,
+	0x0b62, 0x0b63,
+	0x0b82, 0x0b82,
+	0x0bbe, 0x0bc2,
+	0x0bc6, 0x0bc8,
+	0x0bca, 0x0bcc,
+	0x0bd7, 0x0bd7,
+	0x0c01, 0x0c03,
+	0x0c3e, 0x0c44,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4c,
+	0x0c55, 0x0c56,
+	0x0c62, 0x0c63,
+	0x0c82, 0x0c83,
+	0x0cbe, 0x0cc4,
+	0x0cc6, 0x0cc8,
+	0x0cca, 0x0ccc,
+	0x0cd5, 0x0cd6,
+	0x0ce2, 0x0ce3,
+	0x0d02, 0x0d03,
+	0x0d3e, 0x0d44,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4c,
+	0x0d57, 0x0d57,
+	0x0d62, 0x0d63,
+	0x0d82, 0x0d83,
+	0x0dcf, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0dd8, 0x0ddf,
+	0x0df2, 0x0df3,
+	0x0e31, 0x0e31,
+	0x0e34, 0x0e3a,
+	0x0e4d, 0x0e4d,
+	0x0eb1, 0x0eb1,
+	0x0eb4, 0x0eb9,
+	0x0ebb, 0x0ebc,
+	0x0ecd, 0x0ecd,
+	0x0f71, 0x0f81,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x102b, 0x1036,
+	0x1038, 0x1038,
+	0x103b, 0x103e,
+	0x1056, 0x1059,
+	0x105e, 0x1060,
+	0x1062, 0x1062,
+	0x1067, 0x1068,
+	0x1071, 0x1074,
+	0x1082, 0x1086,
+	0x109c, 0x109d,
+	0x135f, 0x135f,
+	0x1712, 0x1713,
+	0x1732, 0x1733,
+	0x1752, 0x1753,
+	0x1772, 0x1773,
+	0x17b6, 0x17c8,
+	0x18a9, 0x18a9,
+	0x1920, 0x192b,
+	0x1930, 0x1938,
+	0x19b0, 0x19c0,
+	0x19c8, 0x19c9,
+	0x1a17, 0x1a1b,
+	0x1a55, 0x1a5e,
+	0x1a61, 0x1a74,
+	0x1b00, 0x1b04,
+	0x1b35, 0x1b43,
+	0x1b80, 0x1b82,
+	0x1ba1, 0x1ba9,
+	0x1c24, 0x1c35,
+	0x1cf2, 0x1cf2,
+	0x24b6, 0x24e9,
+	0x2de0, 0x2dff,
+	0xa823, 0xa827,
+	0xa880, 0xa881,
+	0xa8b4, 0xa8c3,
+	0xa926, 0xa92a,
+	0xa947, 0xa952,
+	0xa980, 0xa983,
+	0xa9b3, 0xa9bf,
+	0xaa29, 0xaa36,
+	0xaa43, 0xaa43,
+	0xaa4c, 0xaa4d,
+	0xaab0, 0xaab0,
+	0xaab2, 0xaab4,
+	0xaab7, 0xaab8,
+	0xaabe, 0xaabe,
+	0xabe3, 0xabea,
+	0xfb1e, 0xfb1e,
+	0x10a01, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a0f,
+	0x11082, 0x11082,
+	0x110b0, 0x110b8,
+}; /* CR_Other_Alphabetic */
+
+/* 'Ideographic': Binary Property */
+static const OnigCodePoint CR_Ideographic[] = {
+	11,
+	0x3006, 0x3007,
+	0x3021, 0x3029,
+	0x3038, 0x303a,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+}; /* CR_Ideographic */
+
+/* 'Diacritic': Binary Property */
+static const OnigCodePoint CR_Diacritic[] = {
+	117,
+	0x005e, 0x005e,
+	0x0060, 0x0060,
+	0x00a8, 0x00a8,
+	0x00af, 0x00af,
+	0x00b4, 0x00b4,
+	0x00b7, 0x00b8,
+	0x02b0, 0x034e,
+	0x0350, 0x0357,
+	0x035d, 0x0362,
+	0x0374, 0x0375,
+	0x037a, 0x037a,
+	0x0384, 0x0385,
+	0x0483, 0x0487,
+	0x0559, 0x0559,
+	0x0591, 0x05a1,
+	0x05a3, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c4,
+	0x064b, 0x0652,
+	0x0657, 0x0658,
+	0x06df, 0x06e0,
+	0x06e5, 0x06e6,
+	0x06ea, 0x06ec,
+	0x0730, 0x074a,
+	0x07a6, 0x07b0,
+	0x07eb, 0x07f5,
+	0x0818, 0x0819,
+	0x093c, 0x093c,
+	0x094d, 0x094d,
+	0x0951, 0x0954,
+	0x0971, 0x0971,
+	0x09bc, 0x09bc,
+	0x09cd, 0x09cd,
+	0x0a3c, 0x0a3c,
+	0x0a4d, 0x0a4d,
+	0x0abc, 0x0abc,
+	0x0acd, 0x0acd,
+	0x0b3c, 0x0b3c,
+	0x0b4d, 0x0b4d,
+	0x0bcd, 0x0bcd,
+	0x0c4d, 0x0c4d,
+	0x0cbc, 0x0cbc,
+	0x0ccd, 0x0ccd,
+	0x0d4d, 0x0d4d,
+	0x0dca, 0x0dca,
+	0x0e47, 0x0e4c,
+	0x0e4e, 0x0e4e,
+	0x0ec8, 0x0ecc,
+	0x0f18, 0x0f19,
+	0x0f35, 0x0f35,
+	0x0f37, 0x0f37,
+	0x0f39, 0x0f39,
+	0x0f3e, 0x0f3f,
+	0x0f82, 0x0f84,
+	0x0f86, 0x0f87,
+	0x0fc6, 0x0fc6,
+	0x1037, 0x1037,
+	0x1039, 0x103a,
+	0x1087, 0x108d,
+	0x108f, 0x108f,
+	0x109a, 0x109b,
+	0x17c9, 0x17d3,
+	0x17dd, 0x17dd,
+	0x1939, 0x193b,
+	0x1a75, 0x1a7c,
+	0x1a7f, 0x1a7f,
+	0x1b34, 0x1b34,
+	0x1b44, 0x1b44,
+	0x1b6b, 0x1b73,
+	0x1baa, 0x1baa,
+	0x1c36, 0x1c37,
+	0x1c78, 0x1c7d,
+	0x1cd0, 0x1ce8,
+	0x1ced, 0x1ced,
+	0x1d2c, 0x1d6a,
+	0x1dc4, 0x1dcf,
+	0x1dfd, 0x1dff,
+	0x1fbd, 0x1fbd,
+	0x1fbf, 0x1fc1,
+	0x1fcd, 0x1fcf,
+	0x1fdd, 0x1fdf,
+	0x1fed, 0x1fef,
+	0x1ffd, 0x1ffe,
+	0x2cef, 0x2cf1,
+	0x2e2f, 0x2e2f,
+	0x302a, 0x302f,
+	0x3099, 0x309c,
+	0x30fc, 0x30fc,
+	0xa66f, 0xa66f,
+	0xa67c, 0xa67d,
+	0xa67f, 0xa67f,
+	0xa6f0, 0xa6f1,
+	0xa717, 0xa721,
+	0xa788, 0xa788,
+	0xa8c4, 0xa8c4,
+	0xa8e0, 0xa8f1,
+	0xa92b, 0xa92e,
+	0xa953, 0xa953,
+	0xa9b3, 0xa9b3,
+	0xa9c0, 0xa9c0,
+	0xaa7b, 0xaa7b,
+	0xaabf, 0xaac2,
+	0xabec, 0xabed,
+	0xfb1e, 0xfb1e,
+	0xfe20, 0xfe26,
+	0xff3e, 0xff3e,
+	0xff40, 0xff40,
+	0xff70, 0xff70,
+	0xff9e, 0xff9f,
+	0xffe3, 0xffe3,
+	0x110b9, 0x110ba,
+	0x1d167, 0x1d169,
+	0x1d16d, 0x1d172,
+	0x1d17b, 0x1d182,
+	0x1d185, 0x1d18b,
+	0x1d1aa, 0x1d1ad,
+}; /* CR_Diacritic */
+
+/* 'Extender': Binary Property */
+static const OnigCodePoint CR_Extender[] = {
+	20,
+	0x00b7, 0x00b7,
+	0x02d0, 0x02d1,
+	0x0640, 0x0640,
+	0x07fa, 0x07fa,
+	0x0e46, 0x0e46,
+	0x0ec6, 0x0ec6,
+	0x1843, 0x1843,
+	0x1aa7, 0x1aa7,
+	0x1c36, 0x1c36,
+	0x1c7b, 0x1c7b,
+	0x3005, 0x3005,
+	0x3031, 0x3035,
+	0x309d, 0x309e,
+	0x30fc, 0x30fe,
+	0xa015, 0xa015,
+	0xa60c, 0xa60c,
+	0xa9cf, 0xa9cf,
+	0xaa70, 0xaa70,
+	0xaadd, 0xaadd,
+	0xff70, 0xff70,
+}; /* CR_Extender */
+
+/* 'Other_Lowercase': Binary Property */
+static const OnigCodePoint CR_Other_Lowercase[] = {
+	13,
+	0x02b0, 0x02b8,
+	0x02c0, 0x02c1,
+	0x02e0, 0x02e4,
+	0x0345, 0x0345,
+	0x037a, 0x037a,
+	0x1d2c, 0x1d61,
+	0x1d78, 0x1d78,
+	0x1d9b, 0x1dbf,
+	0x2090, 0x2094,
+	0x2170, 0x217f,
+	0x24d0, 0x24e9,
+	0x2c7d, 0x2c7d,
+	0xa770, 0xa770,
+}; /* CR_Other_Lowercase */
+
+/* 'Other_Uppercase': Binary Property */
+static const OnigCodePoint CR_Other_Uppercase[] = {
+	2,
+	0x2160, 0x216f,
+	0x24b6, 0x24cf,
+}; /* CR_Other_Uppercase */
+
+/* 'Noncharacter_Code_Point': Binary Property */
+static const OnigCodePoint CR_Noncharacter_Code_Point[] = {
+	18,
+	0xfdd0, 0xfdef,
+	0xfffe, 0xffff,
+	0x1fffe, 0x1ffff,
+	0x2fffe, 0x2ffff,
+	0x3fffe, 0x3ffff,
+	0x4fffe, 0x4ffff,
+	0x5fffe, 0x5ffff,
+	0x6fffe, 0x6ffff,
+	0x7fffe, 0x7ffff,
+	0x8fffe, 0x8ffff,
+	0x9fffe, 0x9ffff,
+	0xafffe, 0xaffff,
+	0xbfffe, 0xbffff,
+	0xcfffe, 0xcffff,
+	0xdfffe, 0xdffff,
+	0xefffe, 0xeffff,
+	0xffffe, 0xfffff,
+	0x10fffe, 0x10ffff,
+}; /* CR_Noncharacter_Code_Point */
+
+/* 'Other_Grapheme_Extend': Binary Property */
+static const OnigCodePoint CR_Other_Grapheme_Extend[] = {
+	16,
+	0x09be, 0x09be,
+	0x09d7, 0x09d7,
+	0x0b3e, 0x0b3e,
+	0x0b57, 0x0b57,
+	0x0bbe, 0x0bbe,
+	0x0bd7, 0x0bd7,
+	0x0cc2, 0x0cc2,
+	0x0cd5, 0x0cd6,
+	0x0d3e, 0x0d3e,
+	0x0d57, 0x0d57,
+	0x0dcf, 0x0dcf,
+	0x0ddf, 0x0ddf,
+	0x200c, 0x200d,
+	0xff9e, 0xff9f,
+	0x1d165, 0x1d165,
+	0x1d16e, 0x1d172,
+}; /* CR_Other_Grapheme_Extend */
+
+/* 'IDS_Binary_Operator': Binary Property */
+static const OnigCodePoint CR_IDS_Binary_Operator[] = {
+	2,
+	0x2ff0, 0x2ff1,
+	0x2ff4, 0x2ffb,
+}; /* CR_IDS_Binary_Operator */
+
+/* 'IDS_Trinary_Operator': Binary Property */
+static const OnigCodePoint CR_IDS_Trinary_Operator[] = {
+	1,
+	0x2ff2, 0x2ff3,
+}; /* CR_IDS_Trinary_Operator */
+
+/* 'Radical': Binary Property */
+static const OnigCodePoint CR_Radical[] = {
+	3,
+	0x2e80, 0x2e99,
+	0x2e9b, 0x2ef3,
+	0x2f00, 0x2fd5,
+}; /* CR_Radical */
+
+/* 'Unified_Ideograph': Binary Property */
+static const OnigCodePoint CR_Unified_Ideograph[] = {
+	11,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xfa0e, 0xfa0f,
+	0xfa11, 0xfa11,
+	0xfa13, 0xfa14,
+	0xfa1f, 0xfa1f,
+	0xfa21, 0xfa21,
+	0xfa23, 0xfa24,
+	0xfa27, 0xfa29,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+}; /* CR_Unified_Ideograph */
+
+/* 'Other_Default_Ignorable_Code_Point': Binary Property */
+static const OnigCodePoint CR_Other_Default_Ignorable_Code_Point[] = {
+	10,
+	0x034f, 0x034f,
+	0x115f, 0x1160,
+	0x2065, 0x2069,
+	0x3164, 0x3164,
+	0xffa0, 0xffa0,
+	0xfff0, 0xfff8,
+	0xe0000, 0xe0000,
+	0xe0002, 0xe001f,
+	0xe0080, 0xe00ff,
+	0xe01f0, 0xe0fff,
+}; /* CR_Other_Default_Ignorable_Code_Point */
+
+/* 'Deprecated': Binary Property */
+static const OnigCodePoint CR_Deprecated[] = {
+	8,
+	0x0149, 0x0149,
+	0x0f77, 0x0f77,
+	0x0f79, 0x0f79,
+	0x17a3, 0x17a4,
+	0x206a, 0x206f,
+	0x2329, 0x232a,
+	0xe0001, 0xe0001,
+	0xe0020, 0xe007f,
+}; /* CR_Deprecated */
+
+/* 'Soft_Dotted': Binary Property */
+static const OnigCodePoint CR_Soft_Dotted[] = {
+	31,
+	0x0069, 0x006a,
+	0x012f, 0x012f,
+	0x0249, 0x0249,
+	0x0268, 0x0268,
+	0x029d, 0x029d,
+	0x02b2, 0x02b2,
+	0x03f3, 0x03f3,
+	0x0456, 0x0456,
+	0x0458, 0x0458,
+	0x1d62, 0x1d62,
+	0x1d96, 0x1d96,
+	0x1da4, 0x1da4,
+	0x1da8, 0x1da8,
+	0x1e2d, 0x1e2d,
+	0x1ecb, 0x1ecb,
+	0x2071, 0x2071,
+	0x2148, 0x2149,
+	0x2c7c, 0x2c7c,
+	0x1d422, 0x1d423,
+	0x1d456, 0x1d457,
+	0x1d48a, 0x1d48b,
+	0x1d4be, 0x1d4bf,
+	0x1d4f2, 0x1d4f3,
+	0x1d526, 0x1d527,
+	0x1d55a, 0x1d55b,
+	0x1d58e, 0x1d58f,
+	0x1d5c2, 0x1d5c3,
+	0x1d5f6, 0x1d5f7,
+	0x1d62a, 0x1d62b,
+	0x1d65e, 0x1d65f,
+	0x1d692, 0x1d693,
+}; /* CR_Soft_Dotted */
+
+/* 'Logical_Order_Exception': Binary Property */
+static const OnigCodePoint CR_Logical_Order_Exception[] = {
+	5,
+	0x0e40, 0x0e44,
+	0x0ec0, 0x0ec4,
+	0xaab5, 0xaab6,
+	0xaab9, 0xaab9,
+	0xaabb, 0xaabc,
+}; /* CR_Logical_Order_Exception */
+
+/* 'Other_ID_Start': Binary Property */
+static const OnigCodePoint CR_Other_ID_Start[] = {
+	3,
+	0x2118, 0x2118,
+	0x212e, 0x212e,
+	0x309b, 0x309c,
+}; /* CR_Other_ID_Start */
+
+/* 'Other_ID_Continue': Binary Property */
+static const OnigCodePoint CR_Other_ID_Continue[] = {
+	3,
+	0x00b7, 0x00b7,
+	0x0387, 0x0387,
+	0x1369, 0x1371,
+}; /* CR_Other_ID_Continue */
+
+/* 'STerm': Binary Property */
+static const OnigCodePoint CR_STerm[] = {
+	43,
+	0x0021, 0x0021,
+	0x002e, 0x002e,
+	0x003f, 0x003f,
+	0x055c, 0x055c,
+	0x055e, 0x055e,
+	0x0589, 0x0589,
+	0x061f, 0x061f,
+	0x06d4, 0x06d4,
+	0x0700, 0x0702,
+	0x07f9, 0x07f9,
+	0x0964, 0x0965,
+	0x104a, 0x104b,
+	0x1362, 0x1362,
+	0x1367, 0x1368,
+	0x166e, 0x166e,
+	0x1803, 0x1803,
+	0x1809, 0x1809,
+	0x1944, 0x1945,
+	0x1b5a, 0x1b5b,
+	0x1b5e, 0x1b5f,
+	0x1c3b, 0x1c3c,
+	0x1c7e, 0x1c7f,
+	0x203c, 0x203d,
+	0x2047, 0x2049,
+	0x2e2e, 0x2e2e,
+	0x3002, 0x3002,
+	0xa4ff, 0xa4ff,
+	0xa60e, 0xa60f,
+	0xa6f3, 0xa6f3,
+	0xa6f7, 0xa6f7,
+	0xa876, 0xa877,
+	0xa8ce, 0xa8cf,
+	0xa92f, 0xa92f,
+	0xa9c8, 0xa9c9,
+	0xaa5d, 0xaa5f,
+	0xabeb, 0xabeb,
+	0xfe52, 0xfe52,
+	0xfe56, 0xfe57,
+	0xff01, 0xff01,
+	0xff0e, 0xff0e,
+	0xff1f, 0xff1f,
+	0xff61, 0xff61,
+	0x110be, 0x110c1,
+}; /* CR_STerm */
+
+/* 'Variation_Selector': Binary Property */
+static const OnigCodePoint CR_Variation_Selector[] = {
+	3,
+	0x180b, 0x180d,
+	0xfe00, 0xfe0f,
+	0xe0100, 0xe01ef,
+}; /* CR_Variation_Selector */
+
+/* 'Pattern_White_Space': Binary Property */
+static const OnigCodePoint CR_Pattern_White_Space[] = {
+	5,
+	0x0009, 0x000d,
+	0x0020, 0x0020,
+	0x0085, 0x0085,
+	0x200e, 0x200f,
+	0x2028, 0x2029,
+}; /* CR_Pattern_White_Space */
+
+/* 'Pattern_Syntax': Binary Property */
+static const OnigCodePoint CR_Pattern_Syntax[] = {
+	28,
+	0x0021, 0x002f,
+	0x003a, 0x0040,
+	0x005b, 0x005e,
+	0x0060, 0x0060,
+	0x007b, 0x007e,
+	0x00a1, 0x00a7,
+	0x00a9, 0x00a9,
+	0x00ab, 0x00ac,
+	0x00ae, 0x00ae,
+	0x00b0, 0x00b1,
+	0x00b6, 0x00b6,
+	0x00bb, 0x00bb,
+	0x00bf, 0x00bf,
+	0x00d7, 0x00d7,
+	0x00f7, 0x00f7,
+	0x2010, 0x2027,
+	0x2030, 0x203e,
+	0x2041, 0x2053,
+	0x2055, 0x205e,
+	0x2190, 0x245f,
+	0x2500, 0x2775,
+	0x2794, 0x2bff,
+	0x2e00, 0x2e7f,
+	0x3001, 0x3003,
+	0x3008, 0x3020,
+	0x3030, 0x3030,
+	0xfd3e, 0xfd3f,
+	0xfe45, 0xfe46,
+}; /* CR_Pattern_Syntax */
 #endif /* USE_UNICODE_PROPERTIES */
 #endif /* USE_UNICODE_PROPERTIES */
 
-
 static const OnigCodePoint* const CodeRanges[] = {
   CR_NEWLINE,
   CR_Alpha,
@@ -9895,6 +18081,25 @@
   CR_Zl,
   CR_Zp,
   CR_Zs,
+  CR_Math,
+  CR_Alphabetic,
+  CR_Lowercase,
+  CR_Uppercase,
+  CR_Cased,
+  CR_Case_Ignorable,
+  CR_Changes_When_Lowercased,
+  CR_Changes_When_Uppercased,
+  CR_Changes_When_Titlecased,
+  CR_Changes_When_Casefolded,
+  CR_Changes_When_Casemapped,
+  CR_ID_Start,
+  CR_ID_Continue,
+  CR_XID_Start,
+  CR_XID_Continue,
+  CR_Default_Ignorable_Code_Point,
+  CR_Grapheme_Extend,
+  CR_Grapheme_Base,
+  CR_Grapheme_Link,
   CR_Common,
   CR_Latin,
   CR_Greek,
@@ -9987,6 +18192,38 @@
   CR_Inscriptional_Pahlavi,
   CR_Old_Turkic,
   CR_Kaithi,
+  CR_White_Space,
+  CR_Bidi_Control,
+  CR_Join_Control,
+  CR_Dash,
+  CR_Hyphen,
+  CR_Quotation_Mark,
+  CR_Terminal_Punctuation,
+  CR_Other_Math,
+  CR_Hex_Digit,
+  CR_ASCII_Hex_Digit,
+  CR_Other_Alphabetic,
+  CR_Ideographic,
+  CR_Diacritic,
+  CR_Extender,
+  CR_Other_Lowercase,
+  CR_Other_Uppercase,
+  CR_Noncharacter_Code_Point,
+  CR_Other_Grapheme_Extend,
+  CR_IDS_Binary_Operator,
+  CR_IDS_Trinary_Operator,
+  CR_Radical,
+  CR_Unified_Ideograph,
+  CR_Other_Default_Ignorable_Code_Point,
+  CR_Deprecated,
+  CR_Soft_Dotted,
+  CR_Logical_Order_Exception,
+  CR_Other_ID_Start,
+  CR_Other_ID_Continue,
+  CR_STerm,
+  CR_Variation_Selector,
+  CR_Pattern_White_Space,
+  CR_Pattern_Syntax,
 #endif /* USE_UNICODE_PROPERTIES */
 #endif /* USE_UNICODE_PROPERTIES */
 };
@@ -10000,18 +18237,16 @@
 #define TOTAL_KEYWORDS 15
 #define MIN_WORD_LENGTH 4
 #define MAX_WORD_LENGTH 7
-#else /* USE_UNICODE_PROPERTIES */
-#define TOTAL_KEYWORDS 146
-#define MIN_WORD_LENGTH 1
-#define MAX_WORD_LENGTH 21
-#endif /* USE_UNICODE_PROPERTIES */
 #define MIN_HASH_VALUE 7
-#ifndef USE_UNICODE_PROPERTIES
 #define MAX_HASH_VALUE 21
 /* maximum key range = 15, duplicates = 0 */
 #else /* USE_UNICODE_PROPERTIES */
-#define MAX_HASH_VALUE 299
-/* maximum key range = 293, duplicates = 0 */
+#define TOTAL_KEYWORDS 367
+#define MIN_WORD_LENGTH 1
+#define MAX_WORD_LENGTH 30
+#define MIN_HASH_VALUE 3
+#define MAX_HASH_VALUE 1751
+/* maximum key range = 1749, duplicates = 0 */
 #endif /* USE_UNICODE_PROPERTIES */
 
 #ifdef __GNUC__
@@ -10047,20 +18282,19 @@
        2, 22,  1, 22, 10,  8,  4,  7, 22,  3,
        4, 22, 22, 22, 22, 22, 22, 22
 #else /* USE_UNICODE_PROPERTIES */
-      300, 300, 300, 300, 300, 300, 300, 300, 300, 300,
-      300, 300, 300, 300, 300, 300, 300, 300, 300, 300,
-      300, 300, 300, 300, 300, 300, 300, 300, 300, 300,
-      300, 300, 300, 300, 300, 300, 300, 300, 300, 300,
-      300, 300, 300, 300, 300, 300, 300, 300, 300, 300,
-      300, 300, 300, 300, 300, 300, 300, 300, 300, 300,
-      300, 300, 300, 300, 300, 300, 300, 300, 300, 300,
-      300, 300, 300, 300, 300, 300, 300, 300, 300, 300,
-      300, 300, 300, 300, 300, 300, 300, 300, 300, 300,
-      300, 300, 300, 300, 300, 300, 300,  21,  74,   8,
-       18,  35, 111,   9,  52,   6,   4,  60,  31,  43,
-        6,   1,   4, 128,  28,  57,   5,  88, 112,  42,
-       86, 111,  29,   1,   2,   6,  17, 300, 300, 300,
-      300, 300
+      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
+      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
+      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
+      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
+      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
+      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
+      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
+      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
+      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
+      1752, 1752, 1752, 1752, 1752, 1752, 1752,    7,  419,    1,
+       128,   38,  100,  186,   46,   11,  226,  463,    4,  317,
+         6,    2,  265,    5,   18,  112,   30,  289,  164,  384,
+       368,  579,   10, 1752, 1752, 1752, 1752, 1752
 #endif /* USE_UNICODE_PROPERTIES */
     };
 #ifndef USE_UNICODE_PROPERTIES
@@ -10071,14 +18305,32 @@
   switch (hval)
     {
       default:
-        hval += asso_values[(unsigned char)str[3]];
+        hval += asso_values[(unsigned char)str[15]];
       /*FALLTHROUGH*/
+      case 15:
+      case 14:
+      case 13:
+      case 12:
+        hval += asso_values[(unsigned char)str[11]];
+      /*FALLTHROUGH*/
+      case 11:
+      case 10:
+      case 9:
+      case 8:
+      case 7:
+      case 6:
+        hval += asso_values[(unsigned char)str[5]];
+      /*FALLTHROUGH*/
+      case 5:
+      case 4:
       case 3:
         hval += asso_values[(unsigned char)str[2]];
       /*FALLTHROUGH*/
       case 2:
+        hval += asso_values[(unsigned char)str[1]];
+      /*FALLTHROUGH*/
       case 1:
-        hval += asso_values[(unsigned char)str[0]+4];
+        hval += asso_values[(unsigned char)str[0]];
         break;
     }
   return hval + asso_values[(unsigned char)str[len - 1]];
@@ -10104,328 +18356,767 @@
     char uniname2ctype_pool_str20[sizeof("digit")];
     char uniname2ctype_pool_str21[sizeof("blank")];
 #else /* USE_UNICODE_PROPERTIES */
-    char uniname2ctype_pool_str7[sizeof("lo")];
-    char uniname2ctype_pool_str8[sizeof("po")];
-    char uniname2ctype_pool_str9[sizeof("lao")];
-    char uniname2ctype_pool_str10[sizeof("p")];
-    char uniname2ctype_pool_str11[sizeof("lt")];
-    char uniname2ctype_pool_str12[sizeof("co")];
-    char uniname2ctype_pool_str13[sizeof("pi")];
-    char uniname2ctype_pool_str14[sizeof("yi")];
-    char uniname2ctype_pool_str15[sizeof("pc")];
-    char uniname2ctype_pool_str17[sizeof("cn")];
-    char uniname2ctype_pool_str18[sizeof("c")];
-    char uniname2ctype_pool_str19[sizeof("cc")];
-    char uniname2ctype_pool_str23[sizeof("zp")];
-    char uniname2ctype_pool_str24[sizeof("kaithi")];
-    char uniname2ctype_pool_str25[sizeof("pd")];
-    char uniname2ctype_pool_str26[sizeof("latin")];
-    char uniname2ctype_pool_str27[sizeof("print")];
-    char uniname2ctype_pool_str28[sizeof("xdigit")];
-    char uniname2ctype_pool_str29[sizeof("punct")];
-    char uniname2ctype_pool_str30[sizeof("lycian")];
-    char uniname2ctype_pool_str31[sizeof("no")];
-    char uniname2ctype_pool_str32[sizeof("coptic")];
-    char uniname2ctype_pool_str33[sizeof("nko")];
-    char uniname2ctype_pool_str35[sizeof("n")];
-    char uniname2ctype_pool_str36[sizeof("l")];
-    char uniname2ctype_pool_str37[sizeof("ll")];
-    char uniname2ctype_pool_str40[sizeof("lydian")];
-    char uniname2ctype_pool_str41[sizeof("kannada")];
-    char uniname2ctype_pool_str42[sizeof("pe")];
-    char uniname2ctype_pool_str43[sizeof("lepcha")];
-    char uniname2ctype_pool_str44[sizeof("vai")];
-    char uniname2ctype_pool_str45[sizeof("so")];
-    char uniname2ctype_pool_str46[sizeof("han")];
-    char uniname2ctype_pool_str47[sizeof("z")];
-    char uniname2ctype_pool_str48[sizeof("nd")];
-    char uniname2ctype_pool_str49[sizeof("lm")];
-    char uniname2ctype_pool_str50[sizeof("zl")];
-    char uniname2ctype_pool_str52[sizeof("sc")];
-    char uniname2ctype_pool_str53[sizeof("cypriot")];
-    char uniname2ctype_pool_str55[sizeof("carian")];
-    char uniname2ctype_pool_str56[sizeof("katakana")];
-    char uniname2ctype_pool_str57[sizeof("phoenician")];
-    char uniname2ctype_pool_str59[sizeof("cyrillic")];
-    char uniname2ctype_pool_str60[sizeof("ascii")];
-    char uniname2ctype_pool_str61[sizeof("nl")];
-    char uniname2ctype_pool_str63[sizeof("phagspa")];
-    char uniname2ctype_pool_str64[sizeof("ps")];
-    char uniname2ctype_pool_str66[sizeof("kharoshthi")];
-    char uniname2ctype_pool_str68[sizeof("cs")];
-    char uniname2ctype_pool_str69[sizeof("word")];
-    char uniname2ctype_pool_str76[sizeof("zs")];
-    char uniname2ctype_pool_str77[sizeof("digit")];
-    char uniname2ctype_pool_str78[sizeof("cntrl")];
-    char uniname2ctype_pool_str80[sizeof("ethiopic")];
-    char uniname2ctype_pool_str83[sizeof("hangul")];
-    char uniname2ctype_pool_str85[sizeof("canadianaboriginal")];
-    char uniname2ctype_pool_str87[sizeof("sm")];
-    char uniname2ctype_pool_str90[sizeof("syriac")];
-    char uniname2ctype_pool_str91[sizeof("sylotinagri")];
-    char uniname2ctype_pool_str94[sizeof("lu")];
-    char uniname2ctype_pool_str95[sizeof("oldpersian")];
-    char uniname2ctype_pool_str97[sizeof("oldturkic")];
-    char uniname2ctype_pool_str98[sizeof("olditalic")];
-    char uniname2ctype_pool_str99[sizeof("gujarati")];
-    char uniname2ctype_pool_str100[sizeof("s")];
-    char uniname2ctype_pool_str102[sizeof("cuneiform")];
-    char uniname2ctype_pool_str103[sizeof("georgian")];
-    char uniname2ctype_pool_str104[sizeof("sk")];
-    char uniname2ctype_pool_str105[sizeof("imperialaramaic")];
-    char uniname2ctype_pool_str107[sizeof("common")];
-    char uniname2ctype_pool_str108[sizeof("glagolitic")];
-    char uniname2ctype_pool_str109[sizeof("hiragana")];
-    char uniname2ctype_pool_str110[sizeof("sundanese")];
-    char uniname2ctype_pool_str111[sizeof("space")];
-    char uniname2ctype_pool_str112[sizeof("khmer")];
-    char uniname2ctype_pool_str114[sizeof("lower")];
-    char uniname2ctype_pool_str115[sizeof("cherokee")];
-    char uniname2ctype_pool_str117[sizeof("alpha")];
-    char uniname2ctype_pool_str118[sizeof("pf")];
-    char uniname2ctype_pool_str119[sizeof("newtailue")];
-    char uniname2ctype_pool_str120[sizeof("cham")];
-    char uniname2ctype_pool_str121[sizeof("samaritan")];
-    char uniname2ctype_pool_str122[sizeof("cf")];
-    char uniname2ctype_pool_str123[sizeof("thai")];
-    char uniname2ctype_pool_str124[sizeof("assigned")];
-    char uniname2ctype_pool_str125[sizeof("bopomofo")];
-    char uniname2ctype_pool_str126[sizeof("linearb")];
-    char uniname2ctype_pool_str127[sizeof("armenian")];
-    char uniname2ctype_pool_str128[sizeof("sinhala")];
-    char uniname2ctype_pool_str130[sizeof("olchiki")];
-    char uniname2ctype_pool_str131[sizeof("gothic")];
-    char uniname2ctype_pool_str132[sizeof("tagalog")];
-    char uniname2ctype_pool_str133[sizeof("hanunoo")];
-    char uniname2ctype_pool_str134[sizeof("inscriptionalpahlavi")];
-    char uniname2ctype_pool_str135[sizeof("inscriptionalparthian")];
-    char uniname2ctype_pool_str136[sizeof("mn")];
-    char uniname2ctype_pool_str137[sizeof("runic")];
-    char uniname2ctype_pool_str138[sizeof("mc")];
-    char uniname2ctype_pool_str139[sizeof("bengali")];
-    char uniname2ctype_pool_str140[sizeof("avestan")];
-    char uniname2ctype_pool_str142[sizeof("graph")];
-    char uniname2ctype_pool_str143[sizeof("newline")];
-    char uniname2ctype_pool_str144[sizeof("arabic")];
-    char uniname2ctype_pool_str145[sizeof("gurmukhi")];
-    char uniname2ctype_pool_str146[sizeof("kayahli")];
-    char uniname2ctype_pool_str147[sizeof("taitham")];
-    char uniname2ctype_pool_str149[sizeof("osmanya")];
-    char uniname2ctype_pool_str152[sizeof("rejang")];
-    char uniname2ctype_pool_str153[sizeof("oldsoutharabian")];
-    char uniname2ctype_pool_str155[sizeof("thaana")];
-    char uniname2ctype_pool_str156[sizeof("deseret")];
-    char uniname2ctype_pool_str157[sizeof("inherited")];
-    char uniname2ctype_pool_str158[sizeof("mongolian")];
-    char uniname2ctype_pool_str163[sizeof("taile")];
-    char uniname2ctype_pool_str165[sizeof("me")];
-    char uniname2ctype_pool_str169[sizeof("buginese")];
-    char uniname2ctype_pool_str171[sizeof("tamil")];
-    char uniname2ctype_pool_str172[sizeof("m")];
-    char uniname2ctype_pool_str176[sizeof("ugaritic")];
-    char uniname2ctype_pool_str177[sizeof("alnum")];
-    char uniname2ctype_pool_str178[sizeof("ogham")];
-    char uniname2ctype_pool_str180[sizeof("braille")];
-    char uniname2ctype_pool_str181[sizeof("hebrew")];
-    char uniname2ctype_pool_str182[sizeof("javanese")];
-    char uniname2ctype_pool_str183[sizeof("upper")];
-    char uniname2ctype_pool_str188[sizeof("shavian")];
-    char uniname2ctype_pool_str189[sizeof("saurashtra")];
-    char uniname2ctype_pool_str190[sizeof("myanmar")];
-    char uniname2ctype_pool_str191[sizeof("balinese")];
-    char uniname2ctype_pool_str192[sizeof("buhid")];
-    char uniname2ctype_pool_str195[sizeof("greek")];
-    char uniname2ctype_pool_str197[sizeof("egyptianhieroglyphs")];
-    char uniname2ctype_pool_str198[sizeof("tagbanwa")];
-    char uniname2ctype_pool_str200[sizeof("oriya")];
-    char uniname2ctype_pool_str201[sizeof("devanagari")];
-    char uniname2ctype_pool_str203[sizeof("blank")];
-    char uniname2ctype_pool_str208[sizeof("tibetan")];
-    char uniname2ctype_pool_str214[sizeof("limbu")];
-    char uniname2ctype_pool_str216[sizeof("taiviet")];
-    char uniname2ctype_pool_str232[sizeof("malayalam")];
-    char uniname2ctype_pool_str239[sizeof("meeteimayek")];
-    char uniname2ctype_pool_str241[sizeof("lisu")];
-    char uniname2ctype_pool_str260[sizeof("any")];
-    char uniname2ctype_pool_str263[sizeof("tifinagh")];
-    char uniname2ctype_pool_str290[sizeof("bamum")];
-    char uniname2ctype_pool_str299[sizeof("telugu")];
+    char uniname2ctype_pool_str3[sizeof("c")];
+    char uniname2ctype_pool_str5[sizeof("cc")];
+    char uniname2ctype_pool_str7[sizeof("co")];
+    char uniname2ctype_pool_str9[sizeof("l")];
+    char uniname2ctype_pool_str10[sizeof("lo")];
+    char uniname2ctype_pool_str12[sizeof("no")];
+    char uniname2ctype_pool_str13[sizeof("n")];
+    char uniname2ctype_pool_str14[sizeof("ll")];
+    char uniname2ctype_pool_str15[sizeof("cn")];
+    char uniname2ctype_pool_str16[sizeof("nl")];
+    char uniname2ctype_pool_str18[sizeof("lao")];
+    char uniname2ctype_pool_str19[sizeof("laoo")];
+    char uniname2ctype_pool_str20[sizeof("zl")];
+    char uniname2ctype_pool_str21[sizeof("z")];
+    char uniname2ctype_pool_str22[sizeof("control")];
+    char uniname2ctype_pool_str24[sizeof("qaac")];
+    char uniname2ctype_pool_str25[sizeof("ci")];
+    char uniname2ctype_pool_str28[sizeof("lana")];
+    char uniname2ctype_pool_str33[sizeof("oalpha")];
+    char uniname2ctype_pool_str34[sizeof("qaai")];
+    char uniname2ctype_pool_str40[sizeof("arabic")];
+    char uniname2ctype_pool_str41[sizeof("cari")];
+    char uniname2ctype_pool_str43[sizeof("oriya")];
+    char uniname2ctype_pool_str44[sizeof("carian")];
+    char uniname2ctype_pool_str46[sizeof("cntrl")];
+    char uniname2ctype_pool_str49[sizeof("connectorpunctuation")];
+    char uniname2ctype_pool_str50[sizeof("olower")];
+    char uniname2ctype_pool_str51[sizeof("latn")];
+    char uniname2ctype_pool_str52[sizeof("latin")];
+    char uniname2ctype_pool_str56[sizeof("ital")];
+    char uniname2ctype_pool_str65[sizeof("hano")];
+    char uniname2ctype_pool_str66[sizeof("lt")];
+    char uniname2ctype_pool_str68[sizeof("han")];
+    char uniname2ctype_pool_str70[sizeof("hanunoo")];
+    char uniname2ctype_pool_str71[sizeof("canadianaboriginal")];
+    char uniname2ctype_pool_str73[sizeof("hangul")];
+    char uniname2ctype_pool_str74[sizeof("hani")];
+    char uniname2ctype_pool_str76[sizeof("nchar")];
+    char uniname2ctype_pool_str77[sizeof("zinh")];
+    char uniname2ctype_pool_str83[sizeof("tale")];
+    char uniname2ctype_pool_str85[sizeof("loe")];
+    char uniname2ctype_pool_str86[sizeof("hira")];
+    char uniname2ctype_pool_str91[sizeof("taile")];
+    char uniname2ctype_pool_str92[sizeof("lineseparator")];
+    char uniname2ctype_pool_str94[sizeof("thaa")];
+    char uniname2ctype_pool_str97[sizeof("hiragana")];
+    char uniname2ctype_pool_str98[sizeof("thai")];
+    char uniname2ctype_pool_str100[sizeof("initialpunctuation")];
+    char uniname2ctype_pool_str101[sizeof("other")];
+    char uniname2ctype_pool_str103[sizeof("thaana")];
+    char uniname2ctype_pool_str107[sizeof("cher")];
+    char uniname2ctype_pool_str111[sizeof("otherletter")];
+    char uniname2ctype_pool_str113[sizeof("othernumber")];
+    char uniname2ctype_pool_str114[sizeof("letter")];
+    char uniname2ctype_pool_str116[sizeof("sc")];
+    char uniname2ctype_pool_str118[sizeof("so")];
+    char uniname2ctype_pool_str123[sizeof("taiviet")];
+    char uniname2ctype_pool_str128[sizeof("noncharactercodepoint")];
+    char uniname2ctype_pool_str129[sizeof("ethi")];
+    char uniname2ctype_pool_str130[sizeof("cans")];
+    char uniname2ctype_pool_str135[sizeof("titlecaseletter")];
+    char uniname2ctype_pool_str136[sizeof("ascii")];
+    char uniname2ctype_pool_str138[sizeof("letternumber")];
+    char uniname2ctype_pool_str139[sizeof("otheralphabetic")];
+    char uniname2ctype_pool_str141[sizeof("otherlowercase")];
+    char uniname2ctype_pool_str144[sizeof("idc")];
+    char uniname2ctype_pool_str146[sizeof("oidc")];
+    char uniname2ctype_pool_str147[sizeof("sinhala")];
+    char uniname2ctype_pool_str148[sizeof("terminalpunctuation")];
+    char uniname2ctype_pool_str151[sizeof("olditalic")];
+    char uniname2ctype_pool_str152[sizeof("di")];
+    char uniname2ctype_pool_str153[sizeof("otheridcontinue")];
+    char uniname2ctype_pool_str155[sizeof("odi")];
+    char uniname2ctype_pool_str156[sizeof("dia")];
+    char uniname2ctype_pool_str161[sizeof("otheridstart")];
+    char uniname2ctype_pool_str162[sizeof("oldturkic")];
+    char uniname2ctype_pool_str167[sizeof("diacritic")];
+    char uniname2ctype_pool_str168[sizeof("oldpersian")];
+    char uniname2ctype_pool_str171[sizeof("radical")];
+    char uniname2ctype_pool_str179[sizeof("sinh")];
+    char uniname2ctype_pool_str183[sizeof("ideo")];
+    char uniname2ctype_pool_str185[sizeof("shavian")];
+    char uniname2ctype_pool_str186[sizeof("format")];
+    char uniname2ctype_pool_str192[sizeof("inscriptionalparthian")];
+    char uniname2ctype_pool_str196[sizeof("vai")];
+    char uniname2ctype_pool_str197[sizeof("vaii")];
+    char uniname2ctype_pool_str202[sizeof("tifinagh")];
+    char uniname2ctype_pool_str203[sizeof("cf")];
+    char uniname2ctype_pool_str205[sizeof("othersymbol")];
+    char uniname2ctype_pool_str207[sizeof("ideographic")];
+    char uniname2ctype_pool_str211[sizeof("inherited")];
+    char uniname2ctype_pool_str212[sizeof("glagolitic")];
+    char uniname2ctype_pool_str218[sizeof("idcontinue")];
+    char uniname2ctype_pool_str220[sizeof("asciihexdigit")];
+    char uniname2ctype_pool_str224[sizeof("inscriptionalpahlavi")];
+    char uniname2ctype_pool_str225[sizeof("s")];
+    char uniname2ctype_pool_str226[sizeof("gothic")];
+    char uniname2ctype_pool_str227[sizeof("cs")];
+    char uniname2ctype_pool_str229[sizeof("avestan")];
+    char uniname2ctype_pool_str235[sizeof("tavt")];
+    char uniname2ctype_pool_str236[sizeof("zs")];
+    char uniname2ctype_pool_str243[sizeof("decimalnumber")];
+    char uniname2ctype_pool_str244[sizeof("tagbanwa")];
+    char uniname2ctype_pool_str245[sizeof("joinc")];
+    char uniname2ctype_pool_str248[sizeof("geor")];
+    char uniname2ctype_pool_str249[sizeof("hang")];
+    char uniname2ctype_pool_str251[sizeof("georgian")];
+    char uniname2ctype_pool_str253[sizeof("cased")];
+    char uniname2ctype_pool_str256[sizeof("joincontrol")];
+    char uniname2ctype_pool_str257[sizeof("oids")];
+    char uniname2ctype_pool_str260[sizeof("variationselector")];
+    char uniname2ctype_pool_str262[sizeof("graph")];
+    char uniname2ctype_pool_str263[sizeof("changeswhenlowercased")];
+    char uniname2ctype_pool_str264[sizeof("nd")];
+    char uniname2ctype_pool_str268[sizeof("goth")];
+    char uniname2ctype_pool_str269[sizeof("pc")];
+    char uniname2ctype_pool_str271[sizeof("po")];
+    char uniname2ctype_pool_str272[sizeof("ogrext")];
+    char uniname2ctype_pool_str276[sizeof("coptic")];
+    char uniname2ctype_pool_str277[sizeof("grext")];
+    char uniname2ctype_pool_str282[sizeof("logicalorderexception")];
+    char uniname2ctype_pool_str285[sizeof("idst")];
+    char uniname2ctype_pool_str288[sizeof("alpha")];
+    char uniname2ctype_pool_str289[sizeof("pi")];
+    char uniname2ctype_pool_str292[sizeof("dsrt")];
+    char uniname2ctype_pool_str297[sizeof("dash")];
+    char uniname2ctype_pool_str298[sizeof("otherdefaultignorablecodepoint")];
+    char uniname2ctype_pool_str302[sizeof("copt")];
+    char uniname2ctype_pool_str306[sizeof("idstart")];
+    char uniname2ctype_pool_str307[sizeof("closepunctuation")];
+    char uniname2ctype_pool_str309[sizeof("changeswhentitlecased")];
+    char uniname2ctype_pool_str312[sizeof("lepc")];
+    char uniname2ctype_pool_str317[sizeof("avst")];
+    char uniname2ctype_pool_str318[sizeof("cprt")];
+    char uniname2ctype_pool_str319[sizeof("runic")];
+    char uniname2ctype_pool_str320[sizeof("patsyn")];
+    char uniname2ctype_pool_str321[sizeof("mc")];
+    char uniname2ctype_pool_str326[sizeof("tfng")];
+    char uniname2ctype_pool_str327[sizeof("lepcha")];
+    char uniname2ctype_pool_str328[sizeof("prti")];
+    char uniname2ctype_pool_str329[sizeof("print")];
+    char uniname2ctype_pool_str330[sizeof("phli")];
+    char uniname2ctype_pool_str331[sizeof("mn")];
+    char uniname2ctype_pool_str332[sizeof("idsbinaryoperator")];
+    char uniname2ctype_pool_str334[sizeof("talu")];
+    char uniname2ctype_pool_str335[sizeof("runr")];
+    char uniname2ctype_pool_str337[sizeof("graphemebase")];
+    char uniname2ctype_pool_str338[sizeof("common")];
+    char uniname2ctype_pool_str339[sizeof("alnum")];
+    char uniname2ctype_pool_str340[sizeof("phoenician")];
+    char uniname2ctype_pool_str341[sizeof("deva")];
+    char uniname2ctype_pool_str342[sizeof("changeswhencasefolded")];
+    char uniname2ctype_pool_str343[sizeof("pe")];
+    char uniname2ctype_pool_str344[sizeof("mongolian")];
+    char uniname2ctype_pool_str352[sizeof("armn")];
+    char uniname2ctype_pool_str353[sizeof("deseret")];
+    char uniname2ctype_pool_str354[sizeof("softdotted")];
+    char uniname2ctype_pool_str357[sizeof("armi")];
+    char uniname2ctype_pool_str358[sizeof("devanagari")];
+    char uniname2ctype_pool_str360[sizeof("digit")];
+    char uniname2ctype_pool_str361[sizeof("caseignorable")];
+    char uniname2ctype_pool_str362[sizeof("taml")];
+    char uniname2ctype_pool_str363[sizeof("tamil")];
+    char uniname2ctype_pool_str365[sizeof("telu")];
+    char uniname2ctype_pool_str366[sizeof("ids")];
+    char uniname2ctype_pool_str367[sizeof("armenian")];
+    char uniname2ctype_pool_str370[sizeof("sd")];
+    char uniname2ctype_pool_str372[sizeof("privateuse")];
+    char uniname2ctype_pool_str373[sizeof("assigned")];
+    char uniname2ctype_pool_str375[sizeof("cham")];
+    char uniname2ctype_pool_str377[sizeof("omath")];
+    char uniname2ctype_pool_str378[sizeof("otherpunctuation")];
+    char uniname2ctype_pool_str379[sizeof("taitham")];
+    char uniname2ctype_pool_str381[sizeof("defaultignorablecodepoint")];
+    char uniname2ctype_pool_str387[sizeof("glag")];
+    char uniname2ctype_pool_str388[sizeof("ethiopic")];
+    char uniname2ctype_pool_str390[sizeof("vs")];
+    char uniname2ctype_pool_str395[sizeof("me")];
+    char uniname2ctype_pool_str396[sizeof("cwl")];
+    char uniname2ctype_pool_str400[sizeof("mtei")];
+    char uniname2ctype_pool_str404[sizeof("math")];
+    char uniname2ctype_pool_str407[sizeof("term")];
+    char uniname2ctype_pool_str408[sizeof("java")];
+    char uniname2ctype_pool_str410[sizeof("tglg")];
+    char uniname2ctype_pool_str413[sizeof("lower")];
+    char uniname2ctype_pool_str414[sizeof("patternwhitespace")];
+    char uniname2ctype_pool_str417[sizeof("finalpunctuation")];
+    char uniname2ctype_pool_str418[sizeof("tagalog")];
+    char uniname2ctype_pool_str419[sizeof("patws")];
+    char uniname2ctype_pool_str420[sizeof("lisu")];
+    char uniname2ctype_pool_str426[sizeof("otheruppercase")];
+    char uniname2ctype_pool_str427[sizeof("space")];
+    char uniname2ctype_pool_str429[sizeof("graphemeextend")];
+    char uniname2ctype_pool_str430[sizeof("saur")];
+    char uniname2ctype_pool_str435[sizeof("uideo")];
+    char uniname2ctype_pool_str438[sizeof("lowercase")];
+    char uniname2ctype_pool_str440[sizeof("rjng")];
+    char uniname2ctype_pool_str442[sizeof("osma")];
+    char uniname2ctype_pool_str444[sizeof("linb")];
+    char uniname2ctype_pool_str445[sizeof("bali")];
+    char uniname2ctype_pool_str448[sizeof("cwt")];
+    char uniname2ctype_pool_str449[sizeof("separator")];
+    char uniname2ctype_pool_str450[sizeof("othermath")];
+    char uniname2ctype_pool_str451[sizeof("unassigned")];
+    char uniname2ctype_pool_str454[sizeof("lowercaseletter")];
+    char uniname2ctype_pool_str455[sizeof("arab")];
+    char uniname2ctype_pool_str458[sizeof("samr")];
+    char uniname2ctype_pool_str459[sizeof("brai")];
+    char uniname2ctype_pool_str460[sizeof("sundanese")];
+    char uniname2ctype_pool_str462[sizeof("samaritan")];
+    char uniname2ctype_pool_str463[sizeof("ahex")];
+    char uniname2ctype_pool_str465[sizeof("linearb")];
+    char uniname2ctype_pool_str467[sizeof("pf")];
+    char uniname2ctype_pool_str469[sizeof("ext")];
+    char uniname2ctype_pool_str474[sizeof("olck")];
+    char uniname2ctype_pool_str476[sizeof("nko")];
+    char uniname2ctype_pool_str477[sizeof("nkoo")];
+    char uniname2ctype_pool_str479[sizeof("newline")];
+    char uniname2ctype_pool_str480[sizeof("tibetan")];
+    char uniname2ctype_pool_str481[sizeof("javanese")];
+    char uniname2ctype_pool_str485[sizeof("bengali")];
+    char uniname2ctype_pool_str486[sizeof("newtailue")];
+    char uniname2ctype_pool_str487[sizeof("kana")];
+    char uniname2ctype_pool_str488[sizeof("olchiki")];
+    char uniname2ctype_pool_str489[sizeof("kali")];
+    char uniname2ctype_pool_str490[sizeof("cwcf")];
+    char uniname2ctype_pool_str491[sizeof("ps")];
+    char uniname2ctype_pool_str493[sizeof("braille")];
+    char uniname2ctype_pool_str494[sizeof("tibt")];
+    char uniname2ctype_pool_str502[sizeof("sterm")];
+    char uniname2ctype_pool_str504[sizeof("ugar")];
+    char uniname2ctype_pool_str505[sizeof("nonspacingmark")];
+    char uniname2ctype_pool_str508[sizeof("phag")];
+    char uniname2ctype_pool_str509[sizeof("kaithi")];
+    char uniname2ctype_pool_str512[sizeof("xidc")];
+    char uniname2ctype_pool_str514[sizeof("balinese")];
+    char uniname2ctype_pool_str515[sizeof("mong")];
+    char uniname2ctype_pool_str516[sizeof("ogam")];
+    char uniname2ctype_pool_str520[sizeof("modifierletter")];
+    char uniname2ctype_pool_str521[sizeof("ugaritic")];
+    char uniname2ctype_pool_str522[sizeof("katakana")];
+    char uniname2ctype_pool_str523[sizeof("pd")];
+    char uniname2ctype_pool_str525[sizeof("hebr")];
+    char uniname2ctype_pool_str531[sizeof("p")];
+    char uniname2ctype_pool_str533[sizeof("orkh")];
+    char uniname2ctype_pool_str536[sizeof("word")];
+    char uniname2ctype_pool_str537[sizeof("saurashtra")];
+    char uniname2ctype_pool_str538[sizeof("khar")];
+    char uniname2ctype_pool_str539[sizeof("sund")];
+    char uniname2ctype_pool_str542[sizeof("zp")];
+    char uniname2ctype_pool_str548[sizeof("changeswhenuppercased")];
+    char uniname2ctype_pool_str552[sizeof("xidstart")];
+    char uniname2ctype_pool_str553[sizeof("shaw")];
+    char uniname2ctype_pool_str554[sizeof("kthi")];
+    char uniname2ctype_pool_str556[sizeof("ogham")];
+    char uniname2ctype_pool_str558[sizeof("spaceseparator")];
+    char uniname2ctype_pool_str559[sizeof("changeswhencasemapped")];
+    char uniname2ctype_pool_str560[sizeof("sarb")];
+    char uniname2ctype_pool_str562[sizeof("xidcontinue")];
+    char uniname2ctype_pool_str564[sizeof("bidic")];
+    char uniname2ctype_pool_str570[sizeof("deprecated")];
+    char uniname2ctype_pool_str573[sizeof("xdigit")];
+    char uniname2ctype_pool_str575[sizeof("bidicontrol")];
+    char uniname2ctype_pool_str584[sizeof("lu")];
+    char uniname2ctype_pool_str587[sizeof("dashpunctuation")];
+    char uniname2ctype_pool_str590[sizeof("extender")];
+    char uniname2ctype_pool_str593[sizeof("idstrinaryoperator")];
+    char uniname2ctype_pool_str594[sizeof("cherokee")];
+    char uniname2ctype_pool_str595[sizeof("punct")];
+    char uniname2ctype_pool_str597[sizeof("phagspa")];
+    char uniname2ctype_pool_str598[sizeof("oupper")];
+    char uniname2ctype_pool_str599[sizeof("lyci")];
+    char uniname2ctype_pool_str601[sizeof("whitespace")];
+    char uniname2ctype_pool_str602[sizeof("lycian")];
+    char uniname2ctype_pool_str603[sizeof("yi")];
+    char uniname2ctype_pool_str606[sizeof("cyrl")];
+    char uniname2ctype_pool_str608[sizeof("knda")];
+    char uniname2ctype_pool_str610[sizeof("orya")];
+    char uniname2ctype_pool_str611[sizeof("cyrillic")];
+    char uniname2ctype_pool_str616[sizeof("yiii")];
+    char uniname2ctype_pool_str618[sizeof("kannada")];
+    char uniname2ctype_pool_str623[sizeof("xids")];
+    char uniname2ctype_pool_str626[sizeof("limbu")];
+    char uniname2ctype_pool_str635[sizeof("m")];
+    char uniname2ctype_pool_str638[sizeof("unifiedideograph")];
+    char uniname2ctype_pool_str639[sizeof("paragraphseparator")];
+    char uniname2ctype_pool_str640[sizeof("lm")];
+    char uniname2ctype_pool_str645[sizeof("openpunctuation")];
+    char uniname2ctype_pool_str646[sizeof("tagb")];
+    char uniname2ctype_pool_str649[sizeof("kharoshthi")];
+    char uniname2ctype_pool_str651[sizeof("enclosingmark")];
+    char uniname2ctype_pool_str652[sizeof("surrogate")];
+    char uniname2ctype_pool_str653[sizeof("beng")];
+    char uniname2ctype_pool_str654[sizeof("number")];
+    char uniname2ctype_pool_str656[sizeof("telugu")];
+    char uniname2ctype_pool_str660[sizeof("rejang")];
+    char uniname2ctype_pool_str661[sizeof("malayalam")];
+    char uniname2ctype_pool_str674[sizeof("idsb")];
+    char uniname2ctype_pool_str676[sizeof("hexdigit")];
+    char uniname2ctype_pool_str677[sizeof("xpeo")];
+    char uniname2ctype_pool_str689[sizeof("phnx")];
+    char uniname2ctype_pool_str692[sizeof("bopo")];
+    char uniname2ctype_pool_str698[sizeof("bopomofo")];
+    char uniname2ctype_pool_str699[sizeof("dep")];
+    char uniname2ctype_pool_str701[sizeof("sylo")];
+    char uniname2ctype_pool_str705[sizeof("grbase")];
+    char uniname2ctype_pool_str706[sizeof("alphabetic")];
+    char uniname2ctype_pool_str707[sizeof("cwcm")];
+    char uniname2ctype_pool_str708[sizeof("patternsyntax")];
+    char uniname2ctype_pool_str709[sizeof("grek")];
+    char uniname2ctype_pool_str710[sizeof("greek")];
+    char uniname2ctype_pool_str714[sizeof("syrc")];
+    char uniname2ctype_pool_str717[sizeof("syriac")];
+    char uniname2ctype_pool_str722[sizeof("cuneiform")];
+    char uniname2ctype_pool_str723[sizeof("gujr")];
+    char uniname2ctype_pool_str726[sizeof("lydi")];
+    char uniname2ctype_pool_str727[sizeof("gujarati")];
+    char uniname2ctype_pool_str728[sizeof("sylotinagri")];
+    char uniname2ctype_pool_str729[sizeof("lydian")];
+    char uniname2ctype_pool_str748[sizeof("sm")];
+    char uniname2ctype_pool_str751[sizeof("currencysymbol")];
+    char uniname2ctype_pool_str755[sizeof("limb")];
+    char uniname2ctype_pool_str758[sizeof("othergraphemeextend")];
+    char uniname2ctype_pool_str786[sizeof("guru")];
+    char uniname2ctype_pool_str797[sizeof("qmark")];
+    char uniname2ctype_pool_str809[sizeof("mark")];
+    char uniname2ctype_pool_str820[sizeof("quotationmark")];
+    char uniname2ctype_pool_str823[sizeof("hex")];
+    char uniname2ctype_pool_str842[sizeof("upper")];
+    char uniname2ctype_pool_str843[sizeof("wspace")];
+    char uniname2ctype_pool_str848[sizeof("khmr")];
+    char uniname2ctype_pool_str849[sizeof("khmer")];
+    char uniname2ctype_pool_str863[sizeof("oldsoutharabian")];
+    char uniname2ctype_pool_str864[sizeof("spacingmark")];
+    char uniname2ctype_pool_str866[sizeof("punctuation")];
+    char uniname2ctype_pool_str867[sizeof("uppercase")];
+    char uniname2ctype_pool_str878[sizeof("meeteimayek")];
+    char uniname2ctype_pool_str883[sizeof("uppercaseletter")];
+    char uniname2ctype_pool_str884[sizeof("cypriot")];
+    char uniname2ctype_pool_str886[sizeof("buhd")];
+    char uniname2ctype_pool_str887[sizeof("buhid")];
+    char uniname2ctype_pool_str895[sizeof("modifiersymbol")];
+    char uniname2ctype_pool_str898[sizeof("blank")];
+    char uniname2ctype_pool_str908[sizeof("hyphen")];
+    char uniname2ctype_pool_str909[sizeof("bugi")];
+    char uniname2ctype_pool_str935[sizeof("myanmar")];
+    char uniname2ctype_pool_str937[sizeof("imperialaramaic")];
+    char uniname2ctype_pool_str947[sizeof("mathsymbol")];
+    char uniname2ctype_pool_str966[sizeof("cwu")];
+    char uniname2ctype_pool_str975[sizeof("gurmukhi")];
+    char uniname2ctype_pool_str978[sizeof("buginese")];
+    char uniname2ctype_pool_str1022[sizeof("symbol")];
+    char uniname2ctype_pool_str1024[sizeof("osmanya")];
+    char uniname2ctype_pool_str1036[sizeof("bamu")];
+    char uniname2ctype_pool_str1040[sizeof("sk")];
+    char uniname2ctype_pool_str1065[sizeof("bamum")];
+    char uniname2ctype_pool_str1071[sizeof("kayahli")];
+    char uniname2ctype_pool_str1072[sizeof("egyp")];
+    char uniname2ctype_pool_str1140[sizeof("grlink")];
+    char uniname2ctype_pool_str1141[sizeof("xsux")];
+    char uniname2ctype_pool_str1174[sizeof("any")];
+    char uniname2ctype_pool_str1187[sizeof("graphemelink")];
+    char uniname2ctype_pool_str1221[sizeof("mlym")];
+    char uniname2ctype_pool_str1235[sizeof("mymr")];
+    char uniname2ctype_pool_str1277[sizeof("hebrew")];
+    char uniname2ctype_pool_str1542[sizeof("egyptianhieroglyphs")];
+    char uniname2ctype_pool_str1751[sizeof("zyyy")];
 #endif /* USE_UNICODE_PROPERTIES */
   };
 static const struct uniname2ctype_pool_t uniname2ctype_pool_contents =
   {
-#ifdef USE_UNICODE_PROPERTIES
-    "lo",
-    "po",
-    "lao",
-    "p",
-    "lt",
-    "co",
-    "pi",
-    "yi",
-    "pc",
-    "cn",
-    "c",
-    "cc",
-    "zp",
-    "kaithi",
-    "pd",
-    "latin",
-#endif /* USE_UNICODE_PROPERTIES */
+#ifndef USE_UNICODE_PROPERTIES
     "print",
-#ifndef USE_UNICODE_PROPERTIES
     "punct",
-    "alpha",
-    "alnum",
-#endif /* ! USE_UNICODE_PROPERTIES */
-    "xdigit",
-#ifndef USE_UNICODE_PROPERTIES
-    "newline",
-    "upper",
 #else /* USE_UNICODE_PROPERTIES */
-    "punct",
-    "lycian",
+    "c",
+    "cc",
+    "co",
+    "l",
+    "lo",
     "no",
-    "coptic",
-    "nko",
     "n",
-    "l",
     "ll",
-    "lydian",
-    "kannada",
-    "pe",
-    "lepcha",
-    "vai",
-    "so",
+    "cn",
+    "nl",
+    "lao",
+    "laoo",
+    "zl",
+    "z",
+    "control",
+    "qaac",
+    "ci",
+    "lana",
+    "oalpha",
+    "qaai",
+    "arabic",
+    "cari",
+    "oriya",
+    "carian",
+    "cntrl",
+    "connectorpunctuation",
+    "olower",
+    "latn",
+    "latin",
+    "ital",
+    "hano",
+    "lt",
     "han",
-    "z",
-    "nd",
-    "lm",
-    "zl",
+    "hanunoo",
+    "canadianaboriginal",
+    "hangul",
+    "hani",
+    "nchar",
+    "zinh",
+    "tale",
+    "loe",
+    "hira",
+    "taile",
+    "lineseparator",
+    "thaa",
+    "hiragana",
+    "thai",
+    "initialpunctuation",
+    "other",
+    "thaana",
+    "cher",
+    "otherletter",
+    "othernumber",
+    "letter",
     "sc",
-    "cypriot",
-    "carian",
-    "katakana",
-    "phoenician",
-    "cyrillic",
-#endif /* USE_UNICODE_PROPERTIES */
+    "so",
+    "taiviet",
+    "noncharactercodepoint",
+    "ethi",
+    "cans",
+    "titlecaseletter",
     "ascii",
-#ifdef USE_UNICODE_PROPERTIES
-    "nl",
-    "phagspa",
-    "ps",
-    "kharoshthi",
+    "letternumber",
+    "otheralphabetic",
+    "otherlowercase",
+    "idc",
+    "oidc",
+    "sinhala",
+    "terminalpunctuation",
+    "olditalic",
+    "di",
+    "otheridcontinue",
+    "odi",
+    "dia",
+    "otheridstart",
+    "oldturkic",
+    "diacritic",
+    "oldpersian",
+    "radical",
+    "sinh",
+    "ideo",
+    "shavian",
+    "format",
+    "inscriptionalparthian",
+    "vai",
+    "vaii",
+    "tifinagh",
+    "cf",
+    "othersymbol",
+    "ideographic",
+    "inherited",
+    "glagolitic",
+    "idcontinue",
+    "asciihexdigit",
+    "inscriptionalpahlavi",
+    "s",
+    "gothic",
     "cs",
-    "word",
+    "avestan",
+    "tavt",
     "zs",
-    "digit",
+    "decimalnumber",
+    "tagbanwa",
+    "joinc",
+    "geor",
+    "hang",
+    "georgian",
+    "cased",
+    "joincontrol",
+    "oids",
+    "variationselector",
+    "graph",
+    "changeswhenlowercased",
+    "nd",
+    "goth",
+    "pc",
+    "po",
+    "ogrext",
+    "coptic",
+    "grext",
+    "logicalorderexception",
+    "idst",
 #endif /* USE_UNICODE_PROPERTIES */
-    "cntrl",
+    "alpha",
 #ifdef USE_UNICODE_PROPERTIES
-    "ethiopic",
-    "hangul",
-    "canadianaboriginal",
-    "sm",
-    "syriac",
-    "sylotinagri",
-    "lu",
-    "oldpersian",
-    "oldturkic",
-    "olditalic",
-    "gujarati",
-    "s",
-    "cuneiform",
-    "georgian",
-    "sk",
-    "imperialaramaic",
+    "pi",
+    "dsrt",
+    "dash",
+    "otherdefaultignorablecodepoint",
+    "copt",
+    "idstart",
+    "closepunctuation",
+    "changeswhentitlecased",
+    "lepc",
+    "avst",
+    "cprt",
+    "runic",
+    "patsyn",
+    "mc",
+    "tfng",
+    "lepcha",
+    "prti",
+    "print",
+    "phli",
+    "mn",
+    "idsbinaryoperator",
+    "talu",
+    "runr",
+    "graphemebase",
     "common",
-    "glagolitic",
-    "hiragana",
-    "sundanese",
 #endif /* USE_UNICODE_PROPERTIES */
-    "space",
+    "alnum",
 #ifndef USE_UNICODE_PROPERTIES
-    "word",
+    "xdigit",
+    "newline",
+    "upper",
+    "ascii",
+    "cntrl",
 #else /* USE_UNICODE_PROPERTIES */
-    "khmer",
+    "phoenician",
+    "deva",
+    "changeswhencasefolded",
+    "pe",
+    "mongolian",
+    "armn",
+    "deseret",
+    "softdotted",
+    "armi",
+    "devanagari",
+    "digit",
+    "caseignorable",
+    "taml",
+    "tamil",
+    "telu",
+    "ids",
+    "armenian",
+    "sd",
+    "privateuse",
+    "assigned",
+    "cham",
+    "omath",
+    "otherpunctuation",
+    "taitham",
+    "defaultignorablecodepoint",
+    "glag",
+    "ethiopic",
+    "vs",
+    "me",
+    "cwl",
+    "mtei",
+    "math",
+    "term",
+    "java",
+    "tglg",
+    "lower",
+    "patternwhitespace",
+    "finalpunctuation",
+    "tagalog",
+    "patws",
+    "lisu",
+    "otheruppercase",
 #endif /* USE_UNICODE_PROPERTIES */
-    "lower",
+    "space",
 #ifdef USE_UNICODE_PROPERTIES
-    "cherokee",
-    "alpha",
+    "graphemeextend",
+    "saur",
+    "uideo",
+    "lowercase",
+    "rjng",
+    "osma",
+    "linb",
+    "bali",
+    "cwt",
+    "separator",
+    "othermath",
+    "unassigned",
+    "lowercaseletter",
+    "arab",
+    "samr",
+    "brai",
+    "sundanese",
+    "samaritan",
+    "ahex",
+    "linearb",
     "pf",
+    "ext",
+    "olck",
+    "nko",
+    "nkoo",
+    "newline",
+    "tibetan",
+    "javanese",
+    "bengali",
     "newtailue",
-    "cham",
-    "samaritan",
-    "cf",
-    "thai",
-    "assigned",
-    "bopomofo",
-    "linearb",
-    "armenian",
-    "sinhala",
+    "kana",
     "olchiki",
-    "gothic",
-    "tagalog",
-    "hanunoo",
-    "inscriptionalpahlavi",
-    "inscriptionalparthian",
-    "mn",
-    "runic",
-    "mc",
-    "bengali",
-    "avestan",
+    "kali",
+    "cwcf",
+    "ps",
+    "braille",
+    "tibt",
+    "sterm",
+    "ugar",
+    "nonspacingmark",
+    "phag",
+    "kaithi",
+    "xidc",
+    "balinese",
+    "mong",
+    "ogam",
+    "modifierletter",
+    "ugaritic",
+    "katakana",
+    "pd",
+    "hebr",
+    "p",
+    "orkh",
 #endif /* USE_UNICODE_PROPERTIES */
+    "word",
+#ifndef USE_UNICODE_PROPERTIES
+    "lower",
     "graph",
-#ifndef USE_UNICODE_PROPERTIES
     "digit",
     "blank"
 #else /* USE_UNICODE_PROPERTIES */
-    "newline",
-    "arabic",
-    "gurmukhi",
-    "kayahli",
-    "taitham",
-    "osmanya",
+    "saurashtra",
+    "khar",
+    "sund",
+    "zp",
+    "changeswhenuppercased",
+    "xidstart",
+    "shaw",
+    "kthi",
+    "ogham",
+    "spaceseparator",
+    "changeswhencasemapped",
+    "sarb",
+    "xidcontinue",
+    "bidic",
+    "deprecated",
+    "xdigit",
+    "bidicontrol",
+    "lu",
+    "dashpunctuation",
+    "extender",
+    "idstrinaryoperator",
+    "cherokee",
+    "punct",
+    "phagspa",
+    "oupper",
+    "lyci",
+    "whitespace",
+    "lycian",
+    "yi",
+    "cyrl",
+    "knda",
+    "orya",
+    "cyrillic",
+    "yiii",
+    "kannada",
+    "xids",
+    "limbu",
+    "m",
+    "unifiedideograph",
+    "paragraphseparator",
+    "lm",
+    "openpunctuation",
+    "tagb",
+    "kharoshthi",
+    "enclosingmark",
+    "surrogate",
+    "beng",
+    "number",
+    "telugu",
     "rejang",
+    "malayalam",
+    "idsb",
+    "hexdigit",
+    "xpeo",
+    "phnx",
+    "bopo",
+    "bopomofo",
+    "dep",
+    "sylo",
+    "grbase",
+    "alphabetic",
+    "cwcm",
+    "patternsyntax",
+    "grek",
+    "greek",
+    "syrc",
+    "syriac",
+    "cuneiform",
+    "gujr",
+    "lydi",
+    "gujarati",
+    "sylotinagri",
+    "lydian",
+    "sm",
+    "currencysymbol",
+    "limb",
+    "othergraphemeextend",
+    "guru",
+    "qmark",
+    "mark",
+    "quotationmark",
+    "hex",
+    "upper",
+    "wspace",
+    "khmr",
+    "khmer",
     "oldsoutharabian",
-    "thaana",
-    "deseret",
-    "inherited",
-    "mongolian",
-    "taile",
-    "me",
+    "spacingmark",
+    "punctuation",
+    "uppercase",
+    "meeteimayek",
+    "uppercaseletter",
+    "cypriot",
+    "buhd",
+    "buhid",
+    "modifiersymbol",
+    "blank",
+    "hyphen",
+    "bugi",
+    "myanmar",
+    "imperialaramaic",
+    "mathsymbol",
+    "cwu",
+    "gurmukhi",
     "buginese",
-    "tamil",
-    "m",
-    "ugaritic",
-    "alnum",
-    "ogham",
-    "braille",
+    "symbol",
+    "osmanya",
+    "bamu",
+    "sk",
+    "bamum",
+    "kayahli",
+    "egyp",
+    "grlink",
+    "xsux",
+    "any",
+    "graphemelink",
+    "mlym",
+    "mymr",
     "hebrew",
-    "javanese",
-    "upper",
-    "shavian",
-    "saurashtra",
-    "myanmar",
-    "balinese",
-    "buhid",
-    "greek",
     "egyptianhieroglyphs",
-    "tagbanwa",
-    "oriya",
-    "devanagari",
-    "blank",
-    "tibetan",
-    "limbu",
-    "taiviet",
-    "malayalam",
-    "meeteimayek",
-    "lisu",
-    "any",
-    "tifinagh",
-    "bamum",
-    "telugu"
+    "zyyy"
 #endif /* USE_UNICODE_PROPERTIES */
   };
 #define uniname2ctype_pool ((const char *) &uniname2ctype_pool_contents)
@@ -10442,223 +19133,692 @@
 {
   static const struct uniname2ctype_struct wordlist[] =
     {
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-#ifndef USE_UNICODE_PROPERTIES
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str7,                  7},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str8,                  8},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str9,                  1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str10,                 13},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str11,                11},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str12,                0},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str13,                 10},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str14,                 14},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str15,                  3},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str16,                  9},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str17,                  12},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str18,                  6},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str19,                  5},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str20,                  4},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str21,                  2}
-#else /* USE_UNICODE_PROPERTIES */
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str7,                    26},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str8,                    43},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str9,                   74},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str10,                     37},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str11,                    27},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str12,                    21},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str13,                    42},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str14,                    90},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str15,                    38},
+#ifdef USE_UNICODE_PROPERTIES
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str3,                                        17},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str17,                    20},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str18,                     17},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str19,                    18},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str5,                                       18},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str7,                                       21},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str9,                                        23},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str10,                                       26},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str12,                                       36},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str13,                                        33},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str14,                                       24},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str15,                                       20},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str16,                                       35},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str18,                                      93},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str19,                                     93},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str20,                                       51},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str21,                                        50},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str22,                                  18},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str24,                                    127},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str25,                                       59},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str28,                                    150},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str33,                                  175},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str34,                                    113},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str40,                                   79},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str41,                                    147},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str43,                                    86},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str44,                                  147},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str46,                                     3},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str49,                     38},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str50,                                  179},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str51,                                     74},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str52,                                    74},
       {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str23,                    52},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str24,               145},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str25,                    39},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str26,                 55},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str27,                  7},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str28,                11},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str29,                  8},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str30,               127},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str31,                    36},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str32,               108},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str33,                  119},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str56,                                    110},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str65,                                    115},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str66,                                       27},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str35,                     33},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str36,                     23},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str37,                    24},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str68,                                     108},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str70,                                 115},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str71,                      100},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str73,                                   97},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str74,                                    108},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str76,                                   181},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str77,                                    113},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str83,                                    119},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str85,                                     190},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str86,                                    105},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str91,                                   119},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str92,                            51},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str94,                                     81},
       {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str40,               129},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str41,               70},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str42,                    40},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str43,               121},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str44,                  123},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str45,                    49},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str46,                   89},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str47,                     50},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str48,                    34},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str49,                    25},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str50,                    51},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str97,                                105},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str98,                                     92},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str52,                    46},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str53,              105},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str100,                       42},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str101,                                    17},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str55,               128},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str56,              87},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str57,           117},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str103,                                   81},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str107,                                     99},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str111,                              26},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str59,              57},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str60,                 14},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str61,                    35},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str113,                              36},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str114,                                   23},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str63,              118},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str64,                    44},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str116,                                       46},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str66,           114},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str118,                                       49},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str123,                                 151},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str128,                   181},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str129,                                     98},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str130,                                    100},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str135,                          27},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str136,                                    14},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str68,                    22},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str69,                  12},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str138,                             35},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str139,                         175},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str141,                          179},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str144,                                      66},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str146,                                    192},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str147,                                  91},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str148,                     171},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str151,                               110},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str152,                                       69},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str153,                         192},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str155,                                     187},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str156,                                     177},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str161,                            191},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str162,                               163},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str167,                               177},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str168,                              132},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str171,                                 185},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str179,                                     91},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str183,                                    176},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str185,                                 122},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str186,                                   19},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str192,                   161},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str196,                                     142},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str197,                                    142},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str202,                                130},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str203,                                       19},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str205,                              49},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str207,                             176},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str211,                               113},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str212,                              129},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str218,                               66},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str220,                           174},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str224,                    162},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str225,                                        45},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str226,                                  111},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str227,                                       22},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str229,                                 152},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str235,                                    151},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str236,                                       53},
       {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str76,                    53},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str77,                  4},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str78,                  3},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str243,                            34},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str244,                                117},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str245,                                   167},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str248,                                     96},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str249,                                     97},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str80,              79},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str251,                                 96},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str253,                                    58},
       {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str83,                78},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str256,                             167},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str257,                                    191},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str260,                       194},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str85,    81},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str262,                                     5},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str263,                    60},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str264,                                       34},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str268,                                    111},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str269,                                       38},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str87,                    48},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str271,                                       43},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str272,                                  182},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str276,                                  127},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str277,                                    70},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str282,                   190},
       {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str90,                61},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str91,          112},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str285,                                    184},
       {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str94,                    28},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str95,           113},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str288,                                     1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str289,                                       42},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str292,                                    112},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str297,                                    168},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str298,          187},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str302,                                    127},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str306,                                  65},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str307,                         40},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str97,            144},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str98,             91},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str99,              66},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str100,                     45},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str309,                    62},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str312,                                    140},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str317,                                    152},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str318,                                    124},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str319,                                   102},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str320,                                  196},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str321,                                       30},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str326,                                    130},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str327,                                  140},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str328,                                    161},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str329,                                     7},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str330,                                    162},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str331,                                       32},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str332,                       183},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str102,            116},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str103,              77},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str104,                    47},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str105,      140},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str334,                                    128},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str335,                                    102},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str107,                54},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str108,           110},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str109,              86},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str110,            120},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str111,                  9},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str112,                 84},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str337,                             71},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str338,                                   73},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str339,                                    13},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str340,                              136},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str341,                                     82},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str342,                    63},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str343,                                       40},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str344,                               104},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str352,                                     77},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str353,                                 112},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str354,                              189},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str357,                                    159},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str358,                               82},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str114,                  6},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str115,              80},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str360,                                     4},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str361,                            59},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str362,                                     87},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str363,                                    87},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str117,                  1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str118,                    41},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str119,            109},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str120,                 130},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str121,            135},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str122,                    19},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str123,                  73},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str124,              16},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str125,              88},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str126,              101},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str127,              58},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str128,               72},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str365,                                     88},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str366,                                      65},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str367,                                 77},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str370,                                      189},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str130,              122},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str131,                92},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str132,               95},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str133,               96},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str134, 143},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str135, 142},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str136,                    32},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str137,                 83},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str138,                    30},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str139,               64},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str140,              133},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str372,                               21},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str373,                                 16},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str142,                  5},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str143,                0},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str144,                60},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str145,              65},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str146,              125},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str147,              131},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str375,                                    149},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str149,              104},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str377,                                   172},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str378,                         43},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str379,                                 150},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str381,                69},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str387,                                    129},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str388,                                 98},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str390,                                      194},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str395,                                       31},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str396,                                      60},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str400,                                    158},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str404,                                     54},
       {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str152,               126},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str153,      141},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str407,                                    171},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str408,                                    157},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str155,                62},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str156,               93},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str157,             94},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str158,             85},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str410,                                    114},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str413,                                     6},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str414,                       195},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str417,                         41},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str418,                                 114},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str419,                                   195},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str420,                                    155},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str426,                          180},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str427,                                     9},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str429,                           70},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str430,                                    143},
       {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str163,                100},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str435,                                   186},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str438,                                56},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str165,                    31},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str440,                                    145},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str442,                                    123},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str444,                                    120},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str445,                                    134},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str448,                                      62},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str449,                                50},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str450,                               172},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str451,                               20},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str454,                          24},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str455,                                     79},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str458,                                    154},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str459,                                    125},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str460,                               139},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str462,                               154},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str463,                                    174},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str465,                                 120},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str467,                                       41},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str469,                                     178},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str474,                                    141},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str476,                                     138},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str477,                                    138},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str479,                                   0},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str480,                                  94},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str481,                                157},
       {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str169,             107},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str485,                                  83},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str486,                               128},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str487,                                    106},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str488,                                 141},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str489,                                    144},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str490,                                     63},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str491,                                       44},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str171,                 68},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str172,                     29},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str493,                                 125},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str494,                                     94},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str502,                                   193},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str504,                                    121},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str505,                           32},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str508,                                    137},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str509,                                  164},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str512,                                     68},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str514,                                134},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str515,                                    104},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str516,                                    101},
       {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str176,             102},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str177,                 13},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str178,                 82},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str520,                           25},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str521,                                121},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str522,                                106},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str523,                                       39},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str180,              106},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str181,                59},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str182,             138},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str183,                 10},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str525,                                     78},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str531,                                        37},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str533,                                    163},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str536,                                     12},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str537,                              143},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str538,                                    133},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str539,                                    139},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str542,                                       52},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str548,                    61},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str552,                                 67},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str553,                                    122},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str554,                                    164},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str556,                                   101},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str558,                           53},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str559,                    64},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str560,                                    160},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str562,                              68},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str564,                                   166},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str570,                              188},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str573,                                   11},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str575,                             166},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str584,                                       28},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str587,                          39},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str590,                                178},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str593,                      184},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str594,                                 99},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str595,                                     8},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str597,                                 137},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str598,                                  180},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str599,                                    146},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str601,                              165},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str602,                                  146},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str603,                                      109},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str606,                                     76},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str608,                                     89},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str610,                                     86},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str611,                                 76},
       {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str188,              103},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str189,           124},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str190,               76},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str191,             115},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str192,                 97},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str616,                                    109},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str618,                                  89},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str623,                                     67},
       {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str195,                 56},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str626,                                   118},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str635,                                        29},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str638,                        186},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str639,                       52},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str640,                                       25},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str645,                          44},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str646,                                    117},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str649,                              133},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str197,  134},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str198,              98},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str651,                            31},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str652,                                22},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str653,                                     83},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str654,                                   33},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str200,                 67},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str201,            63},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str656,                                   88},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str660,                                  145},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str661,                                90},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str674,                                    183},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str203,                  2},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str208,               75},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str676,                                173},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str677,                                    132},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str689,                                    136},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str692,                                    107},
       {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str214,                 99},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str698,                                107},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str699,                                     188},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str216,              132},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str701,                                    131},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str705,                                   71},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str706,                               55},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str707,                                     64},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str708,                           196},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str709,                                     75},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str710,                                    75},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str714,                                     80},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str717,                                   80},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str722,                               135},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str723,                                     85},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str726,                                    148},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str727,                                 85},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str728,                             131},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str729,                                  148},
       {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str232,             71},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str239,          139},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str748,                                       48},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str751,                           46},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str755,                                    118},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str758,                     182},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str786,                                     84},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
       {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str241,                 136},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str797,                                   170},
       {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str809,                                     29},
       {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str260,                   15},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str820,                           170},
       {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str263,             111},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str823,                                     173},
       {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
       {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str842,                                    10},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str843,                                  165},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str848,                                    103},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str849,                                   103},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str863,                         160},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str864,                              30},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str866,                              37},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str867,                                57},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str878,                             158},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str883,                          28},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str884,                                 124},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str886,                                    116},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str887,                                   116},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str895,                           47},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str898,                                     2},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str908,                                  169},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str909,                                    126},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str935,                                  95},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str937,                         159},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str947,                               48},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str966,                                      61},
       {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str290,                137},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str299,                69}
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str975,                                 84},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str978,                                126},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
 #endif /* USE_UNICODE_PROPERTIES */
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#ifndef USE_UNICODE_PROPERTIES
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str7,                                     7},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str8,                                     8},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str9,                                     1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str10,                                    13},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str11,                                   11},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str12,                                   0},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str13,                                    10},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str14,                                    14},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str15,                                     3},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str16,                                     9},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str17,                                     12},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str18,                                     6},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str19,                                     5},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str20,                                     4},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str21,                                     2}
+#else /* USE_UNICODE_PROPERTIES */
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1022,                                   45},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1024,                                 123},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1036,                                    156},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1040,                                       47},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1065,                                   156},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1071,                                 144},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1072,                                    153},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1140,                                   72},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1141,                                    135},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1174,                                      15},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1187,                             72},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1221,                                     90},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1235,                                     95},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1277,                                   78},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1542,                     153},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1751,                                     73}
+#endif /* USE_UNICODE_PROPERTIES */
     };
 
   if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
Index: enc/unicode/name2ctype.src
===================================================================
--- enc/unicode/name2ctype.src	(revision 25323)
+++ enc/unicode/name2ctype.src	(revision 25324)
@@ -8683,6 +8683,7311 @@
 	0x3000, 0x3000,
 }; /* CR_Zs */
 
+/* 'Math': Derived Property */
+static const OnigCodePoint CR_Math[] = {
+	105,
+	0x002b, 0x002b,
+	0x003c, 0x003e,
+	0x005e, 0x005e,
+	0x007c, 0x007c,
+	0x007e, 0x007e,
+	0x00ac, 0x00ac,
+	0x00b1, 0x00b1,
+	0x00d7, 0x00d7,
+	0x00f7, 0x00f7,
+	0x03d0, 0x03d2,
+	0x03d5, 0x03d5,
+	0x03f0, 0x03f1,
+	0x03f4, 0x03f6,
+	0x0606, 0x0608,
+	0x2016, 0x2016,
+	0x2032, 0x2034,
+	0x2040, 0x2040,
+	0x2044, 0x2044,
+	0x2052, 0x2052,
+	0x2061, 0x2064,
+	0x207a, 0x207e,
+	0x208a, 0x208e,
+	0x20d0, 0x20dc,
+	0x20e1, 0x20e1,
+	0x20e5, 0x20e6,
+	0x20eb, 0x20ef,
+	0x2102, 0x2102,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2119, 0x211d,
+	0x2124, 0x2124,
+	0x2128, 0x2129,
+	0x212c, 0x212d,
+	0x212f, 0x2131,
+	0x2133, 0x2138,
+	0x213c, 0x2149,
+	0x214b, 0x214b,
+	0x2190, 0x21a7,
+	0x21a9, 0x21ae,
+	0x21b0, 0x21b1,
+	0x21b6, 0x21b7,
+	0x21bc, 0x21db,
+	0x21dd, 0x21dd,
+	0x21e4, 0x21e5,
+	0x21f4, 0x22ff,
+	0x2308, 0x230b,
+	0x2320, 0x2321,
+	0x237c, 0x237c,
+	0x239b, 0x23b5,
+	0x23b7, 0x23b7,
+	0x23d0, 0x23d0,
+	0x23dc, 0x23e2,
+	0x25a0, 0x25a1,
+	0x25ae, 0x25b7,
+	0x25bc, 0x25c1,
+	0x25c6, 0x25c7,
+	0x25ca, 0x25cb,
+	0x25cf, 0x25d3,
+	0x25e2, 0x25e2,
+	0x25e4, 0x25e4,
+	0x25e7, 0x25ec,
+	0x25f8, 0x25ff,
+	0x2605, 0x2606,
+	0x2640, 0x2640,
+	0x2642, 0x2642,
+	0x2660, 0x2663,
+	0x266d, 0x266f,
+	0x27c0, 0x27ca,
+	0x27cc, 0x27cc,
+	0x27d0, 0x27ff,
+	0x2900, 0x2aff,
+	0x2b30, 0x2b44,
+	0x2b47, 0x2b4c,
+	0xfb29, 0xfb29,
+	0xfe61, 0xfe66,
+	0xfe68, 0xfe68,
+	0xff0b, 0xff0b,
+	0xff1c, 0xff1e,
+	0xff3c, 0xff3c,
+	0xff3e, 0xff3e,
+	0xff5c, 0xff5c,
+	0xff5e, 0xff5e,
+	0xffe2, 0xffe2,
+	0xffe9, 0xffec,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d7cb,
+	0x1d7ce, 0x1d7ff,
+}; /* CR_Math */
+
+/* 'Alphabetic': Derived Property */
+static const OnigCodePoint CR_Alphabetic[] = {
+	474,
+	0x0041, 0x005a,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0345, 0x0345,
+	0x0370, 0x0374,
+	0x0376, 0x0377,
+	0x037a, 0x037d,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x0559,
+	0x0561, 0x0587,
+	0x05b0, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f2,
+	0x0610, 0x061a,
+	0x0621, 0x0657,
+	0x0659, 0x065e,
+	0x066e, 0x06d3,
+	0x06d5, 0x06dc,
+	0x06e1, 0x06e8,
+	0x06ed, 0x06ef,
+	0x06fa, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x073f,
+	0x074d, 0x07b1,
+	0x07ca, 0x07ea,
+	0x07f4, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0800, 0x0817,
+	0x081a, 0x082c,
+	0x0900, 0x0939,
+	0x093d, 0x094c,
+	0x094e, 0x094e,
+	0x0950, 0x0950,
+	0x0955, 0x0955,
+	0x0958, 0x0963,
+	0x0971, 0x0972,
+	0x0979, 0x097f,
+	0x0981, 0x0983,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bd, 0x09c4,
+	0x09c7, 0x09c8,
+	0x09cb, 0x09cc,
+	0x09ce, 0x09ce,
+	0x09d7, 0x09d7,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e3,
+	0x09f0, 0x09f1,
+	0x0a01, 0x0a03,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a3e, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4c,
+	0x0a51, 0x0a51,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a70, 0x0a75,
+	0x0a81, 0x0a83,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abd, 0x0ac5,
+	0x0ac7, 0x0ac9,
+	0x0acb, 0x0acc,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae3,
+	0x0b01, 0x0b03,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3d, 0x0b44,
+	0x0b47, 0x0b48,
+	0x0b4b, 0x0b4c,
+	0x0b56, 0x0b57,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b63,
+	0x0b71, 0x0b71,
+	0x0b82, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bbe, 0x0bc2,
+	0x0bc6, 0x0bc8,
+	0x0bca, 0x0bcc,
+	0x0bd0, 0x0bd0,
+	0x0bd7, 0x0bd7,
+	0x0c01, 0x0c03,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c44,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4c,
+	0x0c55, 0x0c56,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c63,
+	0x0c82, 0x0c83,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbd, 0x0cc4,
+	0x0cc6, 0x0cc8,
+	0x0cca, 0x0ccc,
+	0x0cd5, 0x0cd6,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce3,
+	0x0d02, 0x0d03,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d44,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4c,
+	0x0d57, 0x0d57,
+	0x0d60, 0x0d63,
+	0x0d7a, 0x0d7f,
+	0x0d82, 0x0d83,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0dcf, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0dd8, 0x0ddf,
+	0x0df2, 0x0df3,
+	0x0e01, 0x0e3a,
+	0x0e40, 0x0e46,
+	0x0e4d, 0x0e4d,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb9,
+	0x0ebb, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0ecd, 0x0ecd,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f00,
+	0x0f40, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f71, 0x0f81,
+	0x0f88, 0x0f8b,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x1000, 0x1036,
+	0x1038, 0x1038,
+	0x103b, 0x103f,
+	0x1050, 0x1062,
+	0x1065, 0x1068,
+	0x106e, 0x1086,
+	0x108e, 0x108e,
+	0x109c, 0x109d,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x135f, 0x135f,
+	0x1380, 0x138f,
+	0x13a0, 0x13f4,
+	0x1401, 0x166c,
+	0x166f, 0x167f,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	0x16ee, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1713,
+	0x1720, 0x1733,
+	0x1740, 0x1753,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1772, 0x1773,
+	0x1780, 0x17b3,
+	0x17b6, 0x17c8,
+	0x17d7, 0x17d7,
+	0x17dc, 0x17dc,
+	0x1820, 0x1877,
+	0x1880, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1920, 0x192b,
+	0x1930, 0x1938,
+	0x1950, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19b0, 0x19c9,
+	0x1a00, 0x1a1b,
+	0x1a20, 0x1a5e,
+	0x1a61, 0x1a74,
+	0x1aa7, 0x1aa7,
+	0x1b00, 0x1b33,
+	0x1b35, 0x1b43,
+	0x1b45, 0x1b4b,
+	0x1b80, 0x1ba9,
+	0x1bae, 0x1baf,
+	0x1c00, 0x1c35,
+	0x1c4d, 0x1c4f,
+	0x1c5a, 0x1c7d,
+	0x1ce9, 0x1cec,
+	0x1cee, 0x1cf2,
+	0x1d00, 0x1dbf,
+	0x1e00, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2119, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x212d,
+	0x212f, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x2188,
+	0x24b6, 0x24e9,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cee,
+	0x2d00, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x2de0, 0x2dff,
+	0x2e2f, 0x2e2f,
+	0x3005, 0x3007,
+	0x3021, 0x3029,
+	0x3031, 0x3035,
+	0x3038, 0x303c,
+	0x3041, 0x3096,
+	0x309d, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa4d0, 0xa4fd,
+	0xa500, 0xa60c,
+	0xa610, 0xa61f,
+	0xa62a, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66e,
+	0xa67f, 0xa697,
+	0xa6a0, 0xa6ef,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa801,
+	0xa803, 0xa805,
+	0xa807, 0xa80a,
+	0xa80c, 0xa827,
+	0xa840, 0xa873,
+	0xa880, 0xa8c3,
+	0xa8f2, 0xa8f7,
+	0xa8fb, 0xa8fb,
+	0xa90a, 0xa92a,
+	0xa930, 0xa952,
+	0xa960, 0xa97c,
+	0xa980, 0xa9bf,
+	0xa9cf, 0xa9cf,
+	0xaa00, 0xaa36,
+	0xaa40, 0xaa4d,
+	0xaa60, 0xaa76,
+	0xaa7a, 0xaa7a,
+	0xaa80, 0xaabe,
+	0xaac0, 0xaac0,
+	0xaac2, 0xaac2,
+	0xaadb, 0xaadd,
+	0xabc0, 0xabea,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb28,
+	0xfb2a, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfd3d,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdfb,
+	0xfe70, 0xfe74,
+	0xfe76, 0xfefc,
+	0xff21, 0xff3a,
+	0xff41, 0xff5a,
+	0xff66, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10140, 0x10174,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x103d1, 0x103d5,
+	0x10400, 0x1049d,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a60, 0x10a7c,
+	0x10b00, 0x10b35,
+	0x10b40, 0x10b55,
+	0x10b60, 0x10b72,
+	0x10c00, 0x10c48,
+	0x11082, 0x110b8,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x13000, 0x1342e,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+}; /* CR_Alphabetic */
+
+/* 'Lowercase': Derived Property */
+static const OnigCodePoint CR_Lowercase[] = {
+	602,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00ba, 0x00ba,
+	0x00df, 0x00f6,
+	0x00f8, 0x00ff,
+	0x0101, 0x0101,
+	0x0103, 0x0103,
+	0x0105, 0x0105,
+	0x0107, 0x0107,
+	0x0109, 0x0109,
+	0x010b, 0x010b,
+	0x010d, 0x010d,
+	0x010f, 0x010f,
+	0x0111, 0x0111,
+	0x0113, 0x0113,
+	0x0115, 0x0115,
+	0x0117, 0x0117,
+	0x0119, 0x0119,
+	0x011b, 0x011b,
+	0x011d, 0x011d,
+	0x011f, 0x011f,
+	0x0121, 0x0121,
+	0x0123, 0x0123,
+	0x0125, 0x0125,
+	0x0127, 0x0127,
+	0x0129, 0x0129,
+	0x012b, 0x012b,
+	0x012d, 0x012d,
+	0x012f, 0x012f,
+	0x0131, 0x0131,
+	0x0133, 0x0133,
+	0x0135, 0x0135,
+	0x0137, 0x0138,
+	0x013a, 0x013a,
+	0x013c, 0x013c,
+	0x013e, 0x013e,
+	0x0140, 0x0140,
+	0x0142, 0x0142,
+	0x0144, 0x0144,
+	0x0146, 0x0146,
+	0x0148, 0x0149,
+	0x014b, 0x014b,
+	0x014d, 0x014d,
+	0x014f, 0x014f,
+	0x0151, 0x0151,
+	0x0153, 0x0153,
+	0x0155, 0x0155,
+	0x0157, 0x0157,
+	0x0159, 0x0159,
+	0x015b, 0x015b,
+	0x015d, 0x015d,
+	0x015f, 0x015f,
+	0x0161, 0x0161,
+	0x0163, 0x0163,
+	0x0165, 0x0165,
+	0x0167, 0x0167,
+	0x0169, 0x0169,
+	0x016b, 0x016b,
+	0x016d, 0x016d,
+	0x016f, 0x016f,
+	0x0171, 0x0171,
+	0x0173, 0x0173,
+	0x0175, 0x0175,
+	0x0177, 0x0177,
+	0x017a, 0x017a,
+	0x017c, 0x017c,
+	0x017e, 0x0180,
+	0x0183, 0x0183,
+	0x0185, 0x0185,
+	0x0188, 0x0188,
+	0x018c, 0x018d,
+	0x0192, 0x0192,
+	0x0195, 0x0195,
+	0x0199, 0x019b,
+	0x019e, 0x019e,
+	0x01a1, 0x01a1,
+	0x01a3, 0x01a3,
+	0x01a5, 0x01a5,
+	0x01a8, 0x01a8,
+	0x01aa, 0x01ab,
+	0x01ad, 0x01ad,
+	0x01b0, 0x01b0,
+	0x01b4, 0x01b4,
+	0x01b6, 0x01b6,
+	0x01b9, 0x01ba,
+	0x01bd, 0x01bf,
+	0x01c6, 0x01c6,
+	0x01c9, 0x01c9,
+	0x01cc, 0x01cc,
+	0x01ce, 0x01ce,
+	0x01d0, 0x01d0,
+	0x01d2, 0x01d2,
+	0x01d4, 0x01d4,
+	0x01d6, 0x01d6,
+	0x01d8, 0x01d8,
+	0x01da, 0x01da,
+	0x01dc, 0x01dd,
+	0x01df, 0x01df,
+	0x01e1, 0x01e1,
+	0x01e3, 0x01e3,
+	0x01e5, 0x01e5,
+	0x01e7, 0x01e7,
+	0x01e9, 0x01e9,
+	0x01eb, 0x01eb,
+	0x01ed, 0x01ed,
+	0x01ef, 0x01f0,
+	0x01f3, 0x01f3,
+	0x01f5, 0x01f5,
+	0x01f9, 0x01f9,
+	0x01fb, 0x01fb,
+	0x01fd, 0x01fd,
+	0x01ff, 0x01ff,
+	0x0201, 0x0201,
+	0x0203, 0x0203,
+	0x0205, 0x0205,
+	0x0207, 0x0207,
+	0x0209, 0x0209,
+	0x020b, 0x020b,
+	0x020d, 0x020d,
+	0x020f, 0x020f,
+	0x0211, 0x0211,
+	0x0213, 0x0213,
+	0x0215, 0x0215,
+	0x0217, 0x0217,
+	0x0219, 0x0219,
+	0x021b, 0x021b,
+	0x021d, 0x021d,
+	0x021f, 0x021f,
+	0x0221, 0x0221,
+	0x0223, 0x0223,
+	0x0225, 0x0225,
+	0x0227, 0x0227,
+	0x0229, 0x0229,
+	0x022b, 0x022b,
+	0x022d, 0x022d,
+	0x022f, 0x022f,
+	0x0231, 0x0231,
+	0x0233, 0x0239,
+	0x023c, 0x023c,
+	0x023f, 0x0240,
+	0x0242, 0x0242,
+	0x0247, 0x0247,
+	0x0249, 0x0249,
+	0x024b, 0x024b,
+	0x024d, 0x024d,
+	0x024f, 0x0293,
+	0x0295, 0x02b8,
+	0x02c0, 0x02c1,
+	0x02e0, 0x02e4,
+	0x0345, 0x0345,
+	0x0371, 0x0371,
+	0x0373, 0x0373,
+	0x0377, 0x0377,
+	0x037a, 0x037d,
+	0x0390, 0x0390,
+	0x03ac, 0x03ce,
+	0x03d0, 0x03d1,
+	0x03d5, 0x03d7,
+	0x03d9, 0x03d9,
+	0x03db, 0x03db,
+	0x03dd, 0x03dd,
+	0x03df, 0x03df,
+	0x03e1, 0x03e1,
+	0x03e3, 0x03e3,
+	0x03e5, 0x03e5,
+	0x03e7, 0x03e7,
+	0x03e9, 0x03e9,
+	0x03eb, 0x03eb,
+	0x03ed, 0x03ed,
+	0x03ef, 0x03f3,
+	0x03f5, 0x03f5,
+	0x03f8, 0x03f8,
+	0x03fb, 0x03fc,
+	0x0430, 0x045f,
+	0x0461, 0x0461,
+	0x0463, 0x0463,
+	0x0465, 0x0465,
+	0x0467, 0x0467,
+	0x0469, 0x0469,
+	0x046b, 0x046b,
+	0x046d, 0x046d,
+	0x046f, 0x046f,
+	0x0471, 0x0471,
+	0x0473, 0x0473,
+	0x0475, 0x0475,
+	0x0477, 0x0477,
+	0x0479, 0x0479,
+	0x047b, 0x047b,
+	0x047d, 0x047d,
+	0x047f, 0x047f,
+	0x0481, 0x0481,
+	0x048b, 0x048b,
+	0x048d, 0x048d,
+	0x048f, 0x048f,
+	0x0491, 0x0491,
+	0x0493, 0x0493,
+	0x0495, 0x0495,
+	0x0497, 0x0497,
+	0x0499, 0x0499,
+	0x049b, 0x049b,
+	0x049d, 0x049d,
+	0x049f, 0x049f,
+	0x04a1, 0x04a1,
+	0x04a3, 0x04a3,
+	0x04a5, 0x04a5,
+	0x04a7, 0x04a7,
+	0x04a9, 0x04a9,
+	0x04ab, 0x04ab,
+	0x04ad, 0x04ad,
+	0x04af, 0x04af,
+	0x04b1, 0x04b1,
+	0x04b3, 0x04b3,
+	0x04b5, 0x04b5,
+	0x04b7, 0x04b7,
+	0x04b9, 0x04b9,
+	0x04bb, 0x04bb,
+	0x04bd, 0x04bd,
+	0x04bf, 0x04bf,
+	0x04c2, 0x04c2,
+	0x04c4, 0x04c4,
+	0x04c6, 0x04c6,
+	0x04c8, 0x04c8,
+	0x04ca, 0x04ca,
+	0x04cc, 0x04cc,
+	0x04ce, 0x04cf,
+	0x04d1, 0x04d1,
+	0x04d3, 0x04d3,
+	0x04d5, 0x04d5,
+	0x04d7, 0x04d7,
+	0x04d9, 0x04d9,
+	0x04db, 0x04db,
+	0x04dd, 0x04dd,
+	0x04df, 0x04df,
+	0x04e1, 0x04e1,
+	0x04e3, 0x04e3,
+	0x04e5, 0x04e5,
+	0x04e7, 0x04e7,
+	0x04e9, 0x04e9,
+	0x04eb, 0x04eb,
+	0x04ed, 0x04ed,
+	0x04ef, 0x04ef,
+	0x04f1, 0x04f1,
+	0x04f3, 0x04f3,
+	0x04f5, 0x04f5,
+	0x04f7, 0x04f7,
+	0x04f9, 0x04f9,
+	0x04fb, 0x04fb,
+	0x04fd, 0x04fd,
+	0x04ff, 0x04ff,
+	0x0501, 0x0501,
+	0x0503, 0x0503,
+	0x0505, 0x0505,
+	0x0507, 0x0507,
+	0x0509, 0x0509,
+	0x050b, 0x050b,
+	0x050d, 0x050d,
+	0x050f, 0x050f,
+	0x0511, 0x0511,
+	0x0513, 0x0513,
+	0x0515, 0x0515,
+	0x0517, 0x0517,
+	0x0519, 0x0519,
+	0x051b, 0x051b,
+	0x051d, 0x051d,
+	0x051f, 0x051f,
+	0x0521, 0x0521,
+	0x0523, 0x0523,
+	0x0525, 0x0525,
+	0x0561, 0x0587,
+	0x1d00, 0x1dbf,
+	0x1e01, 0x1e01,
+	0x1e03, 0x1e03,
+	0x1e05, 0x1e05,
+	0x1e07, 0x1e07,
+	0x1e09, 0x1e09,
+	0x1e0b, 0x1e0b,
+	0x1e0d, 0x1e0d,
+	0x1e0f, 0x1e0f,
+	0x1e11, 0x1e11,
+	0x1e13, 0x1e13,
+	0x1e15, 0x1e15,
+	0x1e17, 0x1e17,
+	0x1e19, 0x1e19,
+	0x1e1b, 0x1e1b,
+	0x1e1d, 0x1e1d,
+	0x1e1f, 0x1e1f,
+	0x1e21, 0x1e21,
+	0x1e23, 0x1e23,
+	0x1e25, 0x1e25,
+	0x1e27, 0x1e27,
+	0x1e29, 0x1e29,
+	0x1e2b, 0x1e2b,
+	0x1e2d, 0x1e2d,
+	0x1e2f, 0x1e2f,
+	0x1e31, 0x1e31,
+	0x1e33, 0x1e33,
+	0x1e35, 0x1e35,
+	0x1e37, 0x1e37,
+	0x1e39, 0x1e39,
+	0x1e3b, 0x1e3b,
+	0x1e3d, 0x1e3d,
+	0x1e3f, 0x1e3f,
+	0x1e41, 0x1e41,
+	0x1e43, 0x1e43,
+	0x1e45, 0x1e45,
+	0x1e47, 0x1e47,
+	0x1e49, 0x1e49,
+	0x1e4b, 0x1e4b,
+	0x1e4d, 0x1e4d,
+	0x1e4f, 0x1e4f,
+	0x1e51, 0x1e51,
+	0x1e53, 0x1e53,
+	0x1e55, 0x1e55,
+	0x1e57, 0x1e57,
+	0x1e59, 0x1e59,
+	0x1e5b, 0x1e5b,
+	0x1e5d, 0x1e5d,
+	0x1e5f, 0x1e5f,
+	0x1e61, 0x1e61,
+	0x1e63, 0x1e63,
+	0x1e65, 0x1e65,
+	0x1e67, 0x1e67,
+	0x1e69, 0x1e69,
+	0x1e6b, 0x1e6b,
+	0x1e6d, 0x1e6d,
+	0x1e6f, 0x1e6f,
+	0x1e71, 0x1e71,
+	0x1e73, 0x1e73,
+	0x1e75, 0x1e75,
+	0x1e77, 0x1e77,
+	0x1e79, 0x1e79,
+	0x1e7b, 0x1e7b,
+	0x1e7d, 0x1e7d,
+	0x1e7f, 0x1e7f,
+	0x1e81, 0x1e81,
+	0x1e83, 0x1e83,
+	0x1e85, 0x1e85,
+	0x1e87, 0x1e87,
+	0x1e89, 0x1e89,
+	0x1e8b, 0x1e8b,
+	0x1e8d, 0x1e8d,
+	0x1e8f, 0x1e8f,
+	0x1e91, 0x1e91,
+	0x1e93, 0x1e93,
+	0x1e95, 0x1e9d,
+	0x1e9f, 0x1e9f,
+	0x1ea1, 0x1ea1,
+	0x1ea3, 0x1ea3,
+	0x1ea5, 0x1ea5,
+	0x1ea7, 0x1ea7,
+	0x1ea9, 0x1ea9,
+	0x1eab, 0x1eab,
+	0x1ead, 0x1ead,
+	0x1eaf, 0x1eaf,
+	0x1eb1, 0x1eb1,
+	0x1eb3, 0x1eb3,
+	0x1eb5, 0x1eb5,
+	0x1eb7, 0x1eb7,
+	0x1eb9, 0x1eb9,
+	0x1ebb, 0x1ebb,
+	0x1ebd, 0x1ebd,
+	0x1ebf, 0x1ebf,
+	0x1ec1, 0x1ec1,
+	0x1ec3, 0x1ec3,
+	0x1ec5, 0x1ec5,
+	0x1ec7, 0x1ec7,
+	0x1ec9, 0x1ec9,
+	0x1ecb, 0x1ecb,
+	0x1ecd, 0x1ecd,
+	0x1ecf, 0x1ecf,
+	0x1ed1, 0x1ed1,
+	0x1ed3, 0x1ed3,
+	0x1ed5, 0x1ed5,
+	0x1ed7, 0x1ed7,
+	0x1ed9, 0x1ed9,
+	0x1edb, 0x1edb,
+	0x1edd, 0x1edd,
+	0x1edf, 0x1edf,
+	0x1ee1, 0x1ee1,
+	0x1ee3, 0x1ee3,
+	0x1ee5, 0x1ee5,
+	0x1ee7, 0x1ee7,
+	0x1ee9, 0x1ee9,
+	0x1eeb, 0x1eeb,
+	0x1eed, 0x1eed,
+	0x1eef, 0x1eef,
+	0x1ef1, 0x1ef1,
+	0x1ef3, 0x1ef3,
+	0x1ef5, 0x1ef5,
+	0x1ef7, 0x1ef7,
+	0x1ef9, 0x1ef9,
+	0x1efb, 0x1efb,
+	0x1efd, 0x1efd,
+	0x1eff, 0x1f07,
+	0x1f10, 0x1f15,
+	0x1f20, 0x1f27,
+	0x1f30, 0x1f37,
+	0x1f40, 0x1f45,
+	0x1f50, 0x1f57,
+	0x1f60, 0x1f67,
+	0x1f70, 0x1f7d,
+	0x1f80, 0x1f87,
+	0x1f90, 0x1f97,
+	0x1fa0, 0x1fa7,
+	0x1fb0, 0x1fb4,
+	0x1fb6, 0x1fb7,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fc7,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fd7,
+	0x1fe0, 0x1fe7,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ff7,
+	0x2090, 0x2094,
+	0x210a, 0x210a,
+	0x210e, 0x210f,
+	0x2113, 0x2113,
+	0x212f, 0x212f,
+	0x2134, 0x2134,
+	0x2139, 0x2139,
+	0x213c, 0x213d,
+	0x2146, 0x2149,
+	0x214e, 0x214e,
+	0x2170, 0x217f,
+	0x2184, 0x2184,
+	0x24d0, 0x24e9,
+	0x2c30, 0x2c5e,
+	0x2c61, 0x2c61,
+	0x2c65, 0x2c66,
+	0x2c68, 0x2c68,
+	0x2c6a, 0x2c6a,
+	0x2c6c, 0x2c6c,
+	0x2c71, 0x2c71,
+	0x2c73, 0x2c74,
+	0x2c76, 0x2c7d,
+	0x2c81, 0x2c81,
+	0x2c83, 0x2c83,
+	0x2c85, 0x2c85,
+	0x2c87, 0x2c87,
+	0x2c89, 0x2c89,
+	0x2c8b, 0x2c8b,
+	0x2c8d, 0x2c8d,
+	0x2c8f, 0x2c8f,
+	0x2c91, 0x2c91,
+	0x2c93, 0x2c93,
+	0x2c95, 0x2c95,
+	0x2c97, 0x2c97,
+	0x2c99, 0x2c99,
+	0x2c9b, 0x2c9b,
+	0x2c9d, 0x2c9d,
+	0x2c9f, 0x2c9f,
+	0x2ca1, 0x2ca1,
+	0x2ca3, 0x2ca3,
+	0x2ca5, 0x2ca5,
+	0x2ca7, 0x2ca7,
+	0x2ca9, 0x2ca9,
+	0x2cab, 0x2cab,
+	0x2cad, 0x2cad,
+	0x2caf, 0x2caf,
+	0x2cb1, 0x2cb1,
+	0x2cb3, 0x2cb3,
+	0x2cb5, 0x2cb5,
+	0x2cb7, 0x2cb7,
+	0x2cb9, 0x2cb9,
+	0x2cbb, 0x2cbb,
+	0x2cbd, 0x2cbd,
+	0x2cbf, 0x2cbf,
+	0x2cc1, 0x2cc1,
+	0x2cc3, 0x2cc3,
+	0x2cc5, 0x2cc5,
+	0x2cc7, 0x2cc7,
+	0x2cc9, 0x2cc9,
+	0x2ccb, 0x2ccb,
+	0x2ccd, 0x2ccd,
+	0x2ccf, 0x2ccf,
+	0x2cd1, 0x2cd1,
+	0x2cd3, 0x2cd3,
+	0x2cd5, 0x2cd5,
+	0x2cd7, 0x2cd7,
+	0x2cd9, 0x2cd9,
+	0x2cdb, 0x2cdb,
+	0x2cdd, 0x2cdd,
+	0x2cdf, 0x2cdf,
+	0x2ce1, 0x2ce1,
+	0x2ce3, 0x2ce4,
+	0x2cec, 0x2cec,
+	0x2cee, 0x2cee,
+	0x2d00, 0x2d25,
+	0xa641, 0xa641,
+	0xa643, 0xa643,
+	0xa645, 0xa645,
+	0xa647, 0xa647,
+	0xa649, 0xa649,
+	0xa64b, 0xa64b,
+	0xa64d, 0xa64d,
+	0xa64f, 0xa64f,
+	0xa651, 0xa651,
+	0xa653, 0xa653,
+	0xa655, 0xa655,
+	0xa657, 0xa657,
+	0xa659, 0xa659,
+	0xa65b, 0xa65b,
+	0xa65d, 0xa65d,
+	0xa65f, 0xa65f,
+	0xa663, 0xa663,
+	0xa665, 0xa665,
+	0xa667, 0xa667,
+	0xa669, 0xa669,
+	0xa66b, 0xa66b,
+	0xa66d, 0xa66d,
+	0xa681, 0xa681,
+	0xa683, 0xa683,
+	0xa685, 0xa685,
+	0xa687, 0xa687,
+	0xa689, 0xa689,
+	0xa68b, 0xa68b,
+	0xa68d, 0xa68d,
+	0xa68f, 0xa68f,
+	0xa691, 0xa691,
+	0xa693, 0xa693,
+	0xa695, 0xa695,
+	0xa697, 0xa697,
+	0xa723, 0xa723,
+	0xa725, 0xa725,
+	0xa727, 0xa727,
+	0xa729, 0xa729,
+	0xa72b, 0xa72b,
+	0xa72d, 0xa72d,
+	0xa72f, 0xa731,
+	0xa733, 0xa733,
+	0xa735, 0xa735,
+	0xa737, 0xa737,
+	0xa739, 0xa739,
+	0xa73b, 0xa73b,
+	0xa73d, 0xa73d,
+	0xa73f, 0xa73f,
+	0xa741, 0xa741,
+	0xa743, 0xa743,
+	0xa745, 0xa745,
+	0xa747, 0xa747,
+	0xa749, 0xa749,
+	0xa74b, 0xa74b,
+	0xa74d, 0xa74d,
+	0xa74f, 0xa74f,
+	0xa751, 0xa751,
+	0xa753, 0xa753,
+	0xa755, 0xa755,
+	0xa757, 0xa757,
+	0xa759, 0xa759,
+	0xa75b, 0xa75b,
+	0xa75d, 0xa75d,
+	0xa75f, 0xa75f,
+	0xa761, 0xa761,
+	0xa763, 0xa763,
+	0xa765, 0xa765,
+	0xa767, 0xa767,
+	0xa769, 0xa769,
+	0xa76b, 0xa76b,
+	0xa76d, 0xa76d,
+	0xa76f, 0xa778,
+	0xa77a, 0xa77a,
+	0xa77c, 0xa77c,
+	0xa77f, 0xa77f,
+	0xa781, 0xa781,
+	0xa783, 0xa783,
+	0xa785, 0xa785,
+	0xa787, 0xa787,
+	0xa78c, 0xa78c,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff41, 0xff5a,
+	0x10428, 0x1044f,
+	0x1d41a, 0x1d433,
+	0x1d44e, 0x1d454,
+	0x1d456, 0x1d467,
+	0x1d482, 0x1d49b,
+	0x1d4b6, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d4cf,
+	0x1d4ea, 0x1d503,
+	0x1d51e, 0x1d537,
+	0x1d552, 0x1d56b,
+	0x1d586, 0x1d59f,
+	0x1d5ba, 0x1d5d3,
+	0x1d5ee, 0x1d607,
+	0x1d622, 0x1d63b,
+	0x1d656, 0x1d66f,
+	0x1d68a, 0x1d6a5,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6e1,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d71b,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d755,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d78f,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7c9,
+	0x1d7cb, 0x1d7cb,
+}; /* CR_Lowercase */
+
+/* 'Uppercase': Derived Property */
+static const OnigCodePoint CR_Uppercase[] = {
+	596,
+	0x0041, 0x005a,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00de,
+	0x0100, 0x0100,
+	0x0102, 0x0102,
+	0x0104, 0x0104,
+	0x0106, 0x0106,
+	0x0108, 0x0108,
+	0x010a, 0x010a,
+	0x010c, 0x010c,
+	0x010e, 0x010e,
+	0x0110, 0x0110,
+	0x0112, 0x0112,
+	0x0114, 0x0114,
+	0x0116, 0x0116,
+	0x0118, 0x0118,
+	0x011a, 0x011a,
+	0x011c, 0x011c,
+	0x011e, 0x011e,
+	0x0120, 0x0120,
+	0x0122, 0x0122,
+	0x0124, 0x0124,
+	0x0126, 0x0126,
+	0x0128, 0x0128,
+	0x012a, 0x012a,
+	0x012c, 0x012c,
+	0x012e, 0x012e,
+	0x0130, 0x0130,
+	0x0132, 0x0132,
+	0x0134, 0x0134,
+	0x0136, 0x0136,
+	0x0139, 0x0139,
+	0x013b, 0x013b,
+	0x013d, 0x013d,
+	0x013f, 0x013f,
+	0x0141, 0x0141,
+	0x0143, 0x0143,
+	0x0145, 0x0145,
+	0x0147, 0x0147,
+	0x014a, 0x014a,
+	0x014c, 0x014c,
+	0x014e, 0x014e,
+	0x0150, 0x0150,
+	0x0152, 0x0152,
+	0x0154, 0x0154,
+	0x0156, 0x0156,
+	0x0158, 0x0158,
+	0x015a, 0x015a,
+	0x015c, 0x015c,
+	0x015e, 0x015e,
+	0x0160, 0x0160,
+	0x0162, 0x0162,
+	0x0164, 0x0164,
+	0x0166, 0x0166,
+	0x0168, 0x0168,
+	0x016a, 0x016a,
+	0x016c, 0x016c,
+	0x016e, 0x016e,
+	0x0170, 0x0170,
+	0x0172, 0x0172,
+	0x0174, 0x0174,
+	0x0176, 0x0176,
+	0x0178, 0x0179,
+	0x017b, 0x017b,
+	0x017d, 0x017d,
+	0x0181, 0x0182,
+	0x0184, 0x0184,
+	0x0186, 0x0187,
+	0x0189, 0x018b,
+	0x018e, 0x0191,
+	0x0193, 0x0194,
+	0x0196, 0x0198,
+	0x019c, 0x019d,
+	0x019f, 0x01a0,
+	0x01a2, 0x01a2,
+	0x01a4, 0x01a4,
+	0x01a6, 0x01a7,
+	0x01a9, 0x01a9,
+	0x01ac, 0x01ac,
+	0x01ae, 0x01af,
+	0x01b1, 0x01b3,
+	0x01b5, 0x01b5,
+	0x01b7, 0x01b8,
+	0x01bc, 0x01bc,
+	0x01c4, 0x01c4,
+	0x01c7, 0x01c7,
+	0x01ca, 0x01ca,
+	0x01cd, 0x01cd,
+	0x01cf, 0x01cf,
+	0x01d1, 0x01d1,
+	0x01d3, 0x01d3,
+	0x01d5, 0x01d5,
+	0x01d7, 0x01d7,
+	0x01d9, 0x01d9,
+	0x01db, 0x01db,
+	0x01de, 0x01de,
+	0x01e0, 0x01e0,
+	0x01e2, 0x01e2,
+	0x01e4, 0x01e4,
+	0x01e6, 0x01e6,
+	0x01e8, 0x01e8,
+	0x01ea, 0x01ea,
+	0x01ec, 0x01ec,
+	0x01ee, 0x01ee,
+	0x01f1, 0x01f1,
+	0x01f4, 0x01f4,
+	0x01f6, 0x01f8,
+	0x01fa, 0x01fa,
+	0x01fc, 0x01fc,
+	0x01fe, 0x01fe,
+	0x0200, 0x0200,
+	0x0202, 0x0202,
+	0x0204, 0x0204,
+	0x0206, 0x0206,
+	0x0208, 0x0208,
+	0x020a, 0x020a,
+	0x020c, 0x020c,
+	0x020e, 0x020e,
+	0x0210, 0x0210,
+	0x0212, 0x0212,
+	0x0214, 0x0214,
+	0x0216, 0x0216,
+	0x0218, 0x0218,
+	0x021a, 0x021a,
+	0x021c, 0x021c,
+	0x021e, 0x021e,
+	0x0220, 0x0220,
+	0x0222, 0x0222,
+	0x0224, 0x0224,
+	0x0226, 0x0226,
+	0x0228, 0x0228,
+	0x022a, 0x022a,
+	0x022c, 0x022c,
+	0x022e, 0x022e,
+	0x0230, 0x0230,
+	0x0232, 0x0232,
+	0x023a, 0x023b,
+	0x023d, 0x023e,
+	0x0241, 0x0241,
+	0x0243, 0x0246,
+	0x0248, 0x0248,
+	0x024a, 0x024a,
+	0x024c, 0x024c,
+	0x024e, 0x024e,
+	0x0370, 0x0370,
+	0x0372, 0x0372,
+	0x0376, 0x0376,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x038f,
+	0x0391, 0x03a1,
+	0x03a3, 0x03ab,
+	0x03cf, 0x03cf,
+	0x03d2, 0x03d4,
+	0x03d8, 0x03d8,
+	0x03da, 0x03da,
+	0x03dc, 0x03dc,
+	0x03de, 0x03de,
+	0x03e0, 0x03e0,
+	0x03e2, 0x03e2,
+	0x03e4, 0x03e4,
+	0x03e6, 0x03e6,
+	0x03e8, 0x03e8,
+	0x03ea, 0x03ea,
+	0x03ec, 0x03ec,
+	0x03ee, 0x03ee,
+	0x03f4, 0x03f4,
+	0x03f7, 0x03f7,
+	0x03f9, 0x03fa,
+	0x03fd, 0x042f,
+	0x0460, 0x0460,
+	0x0462, 0x0462,
+	0x0464, 0x0464,
+	0x0466, 0x0466,
+	0x0468, 0x0468,
+	0x046a, 0x046a,
+	0x046c, 0x046c,
+	0x046e, 0x046e,
+	0x0470, 0x0470,
+	0x0472, 0x0472,
+	0x0474, 0x0474,
+	0x0476, 0x0476,
+	0x0478, 0x0478,
+	0x047a, 0x047a,
+	0x047c, 0x047c,
+	0x047e, 0x047e,
+	0x0480, 0x0480,
+	0x048a, 0x048a,
+	0x048c, 0x048c,
+	0x048e, 0x048e,
+	0x0490, 0x0490,
+	0x0492, 0x0492,
+	0x0494, 0x0494,
+	0x0496, 0x0496,
+	0x0498, 0x0498,
+	0x049a, 0x049a,
+	0x049c, 0x049c,
+	0x049e, 0x049e,
+	0x04a0, 0x04a0,
+	0x04a2, 0x04a2,
+	0x04a4, 0x04a4,
+	0x04a6, 0x04a6,
+	0x04a8, 0x04a8,
+	0x04aa, 0x04aa,
+	0x04ac, 0x04ac,
+	0x04ae, 0x04ae,
+	0x04b0, 0x04b0,
+	0x04b2, 0x04b2,
+	0x04b4, 0x04b4,
+	0x04b6, 0x04b6,
+	0x04b8, 0x04b8,
+	0x04ba, 0x04ba,
+	0x04bc, 0x04bc,
+	0x04be, 0x04be,
+	0x04c0, 0x04c1,
+	0x04c3, 0x04c3,
+	0x04c5, 0x04c5,
+	0x04c7, 0x04c7,
+	0x04c9, 0x04c9,
+	0x04cb, 0x04cb,
+	0x04cd, 0x04cd,
+	0x04d0, 0x04d0,
+	0x04d2, 0x04d2,
+	0x04d4, 0x04d4,
+	0x04d6, 0x04d6,
+	0x04d8, 0x04d8,
+	0x04da, 0x04da,
+	0x04dc, 0x04dc,
+	0x04de, 0x04de,
+	0x04e0, 0x04e0,
+	0x04e2, 0x04e2,
+	0x04e4, 0x04e4,
+	0x04e6, 0x04e6,
+	0x04e8, 0x04e8,
+	0x04ea, 0x04ea,
+	0x04ec, 0x04ec,
+	0x04ee, 0x04ee,
+	0x04f0, 0x04f0,
+	0x04f2, 0x04f2,
+	0x04f4, 0x04f4,
+	0x04f6, 0x04f6,
+	0x04f8, 0x04f8,
+	0x04fa, 0x04fa,
+	0x04fc, 0x04fc,
+	0x04fe, 0x04fe,
+	0x0500, 0x0500,
+	0x0502, 0x0502,
+	0x0504, 0x0504,
+	0x0506, 0x0506,
+	0x0508, 0x0508,
+	0x050a, 0x050a,
+	0x050c, 0x050c,
+	0x050e, 0x050e,
+	0x0510, 0x0510,
+	0x0512, 0x0512,
+	0x0514, 0x0514,
+	0x0516, 0x0516,
+	0x0518, 0x0518,
+	0x051a, 0x051a,
+	0x051c, 0x051c,
+	0x051e, 0x051e,
+	0x0520, 0x0520,
+	0x0522, 0x0522,
+	0x0524, 0x0524,
+	0x0531, 0x0556,
+	0x10a0, 0x10c5,
+	0x1e00, 0x1e00,
+	0x1e02, 0x1e02,
+	0x1e04, 0x1e04,
+	0x1e06, 0x1e06,
+	0x1e08, 0x1e08,
+	0x1e0a, 0x1e0a,
+	0x1e0c, 0x1e0c,
+	0x1e0e, 0x1e0e,
+	0x1e10, 0x1e10,
+	0x1e12, 0x1e12,
+	0x1e14, 0x1e14,
+	0x1e16, 0x1e16,
+	0x1e18, 0x1e18,
+	0x1e1a, 0x1e1a,
+	0x1e1c, 0x1e1c,
+	0x1e1e, 0x1e1e,
+	0x1e20, 0x1e20,
+	0x1e22, 0x1e22,
+	0x1e24, 0x1e24,
+	0x1e26, 0x1e26,
+	0x1e28, 0x1e28,
+	0x1e2a, 0x1e2a,
+	0x1e2c, 0x1e2c,
+	0x1e2e, 0x1e2e,
+	0x1e30, 0x1e30,
+	0x1e32, 0x1e32,
+	0x1e34, 0x1e34,
+	0x1e36, 0x1e36,
+	0x1e38, 0x1e38,
+	0x1e3a, 0x1e3a,
+	0x1e3c, 0x1e3c,
+	0x1e3e, 0x1e3e,
+	0x1e40, 0x1e40,
+	0x1e42, 0x1e42,
+	0x1e44, 0x1e44,
+	0x1e46, 0x1e46,
+	0x1e48, 0x1e48,
+	0x1e4a, 0x1e4a,
+	0x1e4c, 0x1e4c,
+	0x1e4e, 0x1e4e,
+	0x1e50, 0x1e50,
+	0x1e52, 0x1e52,
+	0x1e54, 0x1e54,
+	0x1e56, 0x1e56,
+	0x1e58, 0x1e58,
+	0x1e5a, 0x1e5a,
+	0x1e5c, 0x1e5c,
+	0x1e5e, 0x1e5e,
+	0x1e60, 0x1e60,
+	0x1e62, 0x1e62,
+	0x1e64, 0x1e64,
+	0x1e66, 0x1e66,
+	0x1e68, 0x1e68,
+	0x1e6a, 0x1e6a,
+	0x1e6c, 0x1e6c,
+	0x1e6e, 0x1e6e,
+	0x1e70, 0x1e70,
+	0x1e72, 0x1e72,
+	0x1e74, 0x1e74,
+	0x1e76, 0x1e76,
+	0x1e78, 0x1e78,
+	0x1e7a, 0x1e7a,
+	0x1e7c, 0x1e7c,
+	0x1e7e, 0x1e7e,
+	0x1e80, 0x1e80,
+	0x1e82, 0x1e82,
+	0x1e84, 0x1e84,
+	0x1e86, 0x1e86,
+	0x1e88, 0x1e88,
+	0x1e8a, 0x1e8a,
+	0x1e8c, 0x1e8c,
+	0x1e8e, 0x1e8e,
+	0x1e90, 0x1e90,
+	0x1e92, 0x1e92,
+	0x1e94, 0x1e94,
+	0x1e9e, 0x1e9e,
+	0x1ea0, 0x1ea0,
+	0x1ea2, 0x1ea2,
+	0x1ea4, 0x1ea4,
+	0x1ea6, 0x1ea6,
+	0x1ea8, 0x1ea8,
+	0x1eaa, 0x1eaa,
+	0x1eac, 0x1eac,
+	0x1eae, 0x1eae,
+	0x1eb0, 0x1eb0,
+	0x1eb2, 0x1eb2,
+	0x1eb4, 0x1eb4,
+	0x1eb6, 0x1eb6,
+	0x1eb8, 0x1eb8,
+	0x1eba, 0x1eba,
+	0x1ebc, 0x1ebc,
+	0x1ebe, 0x1ebe,
+	0x1ec0, 0x1ec0,
+	0x1ec2, 0x1ec2,
+	0x1ec4, 0x1ec4,
+	0x1ec6, 0x1ec6,
+	0x1ec8, 0x1ec8,
+	0x1eca, 0x1eca,
+	0x1ecc, 0x1ecc,
+	0x1ece, 0x1ece,
+	0x1ed0, 0x1ed0,
+	0x1ed2, 0x1ed2,
+	0x1ed4, 0x1ed4,
+	0x1ed6, 0x1ed6,
+	0x1ed8, 0x1ed8,
+	0x1eda, 0x1eda,
+	0x1edc, 0x1edc,
+	0x1ede, 0x1ede,
+	0x1ee0, 0x1ee0,
+	0x1ee2, 0x1ee2,
+	0x1ee4, 0x1ee4,
+	0x1ee6, 0x1ee6,
+	0x1ee8, 0x1ee8,
+	0x1eea, 0x1eea,
+	0x1eec, 0x1eec,
+	0x1eee, 0x1eee,
+	0x1ef0, 0x1ef0,
+	0x1ef2, 0x1ef2,
+	0x1ef4, 0x1ef4,
+	0x1ef6, 0x1ef6,
+	0x1ef8, 0x1ef8,
+	0x1efa, 0x1efa,
+	0x1efc, 0x1efc,
+	0x1efe, 0x1efe,
+	0x1f08, 0x1f0f,
+	0x1f18, 0x1f1d,
+	0x1f28, 0x1f2f,
+	0x1f38, 0x1f3f,
+	0x1f48, 0x1f4d,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f5f,
+	0x1f68, 0x1f6f,
+	0x1fb8, 0x1fbb,
+	0x1fc8, 0x1fcb,
+	0x1fd8, 0x1fdb,
+	0x1fe8, 0x1fec,
+	0x1ff8, 0x1ffb,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210b, 0x210d,
+	0x2110, 0x2112,
+	0x2115, 0x2115,
+	0x2119, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x212d,
+	0x2130, 0x2133,
+	0x213e, 0x213f,
+	0x2145, 0x2145,
+	0x2160, 0x216f,
+	0x2183, 0x2183,
+	0x24b6, 0x24cf,
+	0x2c00, 0x2c2e,
+	0x2c60, 0x2c60,
+	0x2c62, 0x2c64,
+	0x2c67, 0x2c67,
+	0x2c69, 0x2c69,
+	0x2c6b, 0x2c6b,
+	0x2c6d, 0x2c70,
+	0x2c72, 0x2c72,
+	0x2c75, 0x2c75,
+	0x2c7e, 0x2c80,
+	0x2c82, 0x2c82,
+	0x2c84, 0x2c84,
+	0x2c86, 0x2c86,
+	0x2c88, 0x2c88,
+	0x2c8a, 0x2c8a,
+	0x2c8c, 0x2c8c,
+	0x2c8e, 0x2c8e,
+	0x2c90, 0x2c90,
+	0x2c92, 0x2c92,
+	0x2c94, 0x2c94,
+	0x2c96, 0x2c96,
+	0x2c98, 0x2c98,
+	0x2c9a, 0x2c9a,
+	0x2c9c, 0x2c9c,
+	0x2c9e, 0x2c9e,
+	0x2ca0, 0x2ca0,
+	0x2ca2, 0x2ca2,
+	0x2ca4, 0x2ca4,
+	0x2ca6, 0x2ca6,
+	0x2ca8, 0x2ca8,
+	0x2caa, 0x2caa,
+	0x2cac, 0x2cac,
+	0x2cae, 0x2cae,
+	0x2cb0, 0x2cb0,
+	0x2cb2, 0x2cb2,
+	0x2cb4, 0x2cb4,
+	0x2cb6, 0x2cb6,
+	0x2cb8, 0x2cb8,
+	0x2cba, 0x2cba,
+	0x2cbc, 0x2cbc,
+	0x2cbe, 0x2cbe,
+	0x2cc0, 0x2cc0,
+	0x2cc2, 0x2cc2,
+	0x2cc4, 0x2cc4,
+	0x2cc6, 0x2cc6,
+	0x2cc8, 0x2cc8,
+	0x2cca, 0x2cca,
+	0x2ccc, 0x2ccc,
+	0x2cce, 0x2cce,
+	0x2cd0, 0x2cd0,
+	0x2cd2, 0x2cd2,
+	0x2cd4, 0x2cd4,
+	0x2cd6, 0x2cd6,
+	0x2cd8, 0x2cd8,
+	0x2cda, 0x2cda,
+	0x2cdc, 0x2cdc,
+	0x2cde, 0x2cde,
+	0x2ce0, 0x2ce0,
+	0x2ce2, 0x2ce2,
+	0x2ceb, 0x2ceb,
+	0x2ced, 0x2ced,
+	0xa640, 0xa640,
+	0xa642, 0xa642,
+	0xa644, 0xa644,
+	0xa646, 0xa646,
+	0xa648, 0xa648,
+	0xa64a, 0xa64a,
+	0xa64c, 0xa64c,
+	0xa64e, 0xa64e,
+	0xa650, 0xa650,
+	0xa652, 0xa652,
+	0xa654, 0xa654,
+	0xa656, 0xa656,
+	0xa658, 0xa658,
+	0xa65a, 0xa65a,
+	0xa65c, 0xa65c,
+	0xa65e, 0xa65e,
+	0xa662, 0xa662,
+	0xa664, 0xa664,
+	0xa666, 0xa666,
+	0xa668, 0xa668,
+	0xa66a, 0xa66a,
+	0xa66c, 0xa66c,
+	0xa680, 0xa680,
+	0xa682, 0xa682,
+	0xa684, 0xa684,
+	0xa686, 0xa686,
+	0xa688, 0xa688,
+	0xa68a, 0xa68a,
+	0xa68c, 0xa68c,
+	0xa68e, 0xa68e,
+	0xa690, 0xa690,
+	0xa692, 0xa692,
+	0xa694, 0xa694,
+	0xa696, 0xa696,
+	0xa722, 0xa722,
+	0xa724, 0xa724,
+	0xa726, 0xa726,
+	0xa728, 0xa728,
+	0xa72a, 0xa72a,
+	0xa72c, 0xa72c,
+	0xa72e, 0xa72e,
+	0xa732, 0xa732,
+	0xa734, 0xa734,
+	0xa736, 0xa736,
+	0xa738, 0xa738,
+	0xa73a, 0xa73a,
+	0xa73c, 0xa73c,
+	0xa73e, 0xa73e,
+	0xa740, 0xa740,
+	0xa742, 0xa742,
+	0xa744, 0xa744,
+	0xa746, 0xa746,
+	0xa748, 0xa748,
+	0xa74a, 0xa74a,
+	0xa74c, 0xa74c,
+	0xa74e, 0xa74e,
+	0xa750, 0xa750,
+	0xa752, 0xa752,
+	0xa754, 0xa754,
+	0xa756, 0xa756,
+	0xa758, 0xa758,
+	0xa75a, 0xa75a,
+	0xa75c, 0xa75c,
+	0xa75e, 0xa75e,
+	0xa760, 0xa760,
+	0xa762, 0xa762,
+	0xa764, 0xa764,
+	0xa766, 0xa766,
+	0xa768, 0xa768,
+	0xa76a, 0xa76a,
+	0xa76c, 0xa76c,
+	0xa76e, 0xa76e,
+	0xa779, 0xa779,
+	0xa77b, 0xa77b,
+	0xa77d, 0xa77e,
+	0xa780, 0xa780,
+	0xa782, 0xa782,
+	0xa784, 0xa784,
+	0xa786, 0xa786,
+	0xa78b, 0xa78b,
+	0xff21, 0xff3a,
+	0x10400, 0x10427,
+	0x1d400, 0x1d419,
+	0x1d434, 0x1d44d,
+	0x1d468, 0x1d481,
+	0x1d49c, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b5,
+	0x1d4d0, 0x1d4e9,
+	0x1d504, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d538, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d56c, 0x1d585,
+	0x1d5a0, 0x1d5b9,
+	0x1d5d4, 0x1d5ed,
+	0x1d608, 0x1d621,
+	0x1d63c, 0x1d655,
+	0x1d670, 0x1d689,
+	0x1d6a8, 0x1d6c0,
+	0x1d6e2, 0x1d6fa,
+	0x1d71c, 0x1d734,
+	0x1d756, 0x1d76e,
+	0x1d790, 0x1d7a8,
+	0x1d7ca, 0x1d7ca,
+}; /* CR_Uppercase */
+
+/* 'Cased': Derived Property */
+static const OnigCodePoint CR_Cased[] = {
+	110,
+	0x0041, 0x005a,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x01ba,
+	0x01bc, 0x01bf,
+	0x01c4, 0x0293,
+	0x0295, 0x02b8,
+	0x02c0, 0x02c1,
+	0x02e0, 0x02e4,
+	0x0345, 0x0345,
+	0x0370, 0x0373,
+	0x0376, 0x0377,
+	0x037a, 0x037d,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0561, 0x0587,
+	0x10a0, 0x10c5,
+	0x1d00, 0x1dbf,
+	0x1e00, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x2090, 0x2094,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2119, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x212d,
+	0x212f, 0x2134,
+	0x2139, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x217f,
+	0x2183, 0x2184,
+	0x24b6, 0x24e9,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cee,
+	0x2d00, 0x2d25,
+	0xa640, 0xa65f,
+	0xa662, 0xa66d,
+	0xa680, 0xa697,
+	0xa722, 0xa787,
+	0xa78b, 0xa78c,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff21, 0xff3a,
+	0xff41, 0xff5a,
+	0x10400, 0x1044f,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+}; /* CR_Cased */
+
+/* 'Case_Ignorable': Derived Property */
+static const OnigCodePoint CR_Case_Ignorable[] = {
+	266,
+	0x0027, 0x0027,
+	0x002e, 0x002e,
+	0x003a, 0x003a,
+	0x005e, 0x005e,
+	0x0060, 0x0060,
+	0x00a8, 0x00a8,
+	0x00ad, 0x00ad,
+	0x00af, 0x00af,
+	0x00b4, 0x00b4,
+	0x00b7, 0x00b8,
+	0x02b0, 0x036f,
+	0x0374, 0x0375,
+	0x037a, 0x037a,
+	0x0384, 0x0385,
+	0x0387, 0x0387,
+	0x0483, 0x0489,
+	0x0559, 0x0559,
+	0x0591, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x05f4, 0x05f4,
+	0x0600, 0x0603,
+	0x0610, 0x061a,
+	0x0640, 0x0640,
+	0x064b, 0x065e,
+	0x0670, 0x0670,
+	0x06d6, 0x06e8,
+	0x06ea, 0x06ed,
+	0x070f, 0x070f,
+	0x0711, 0x0711,
+	0x0730, 0x074a,
+	0x07a6, 0x07b0,
+	0x07eb, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0816, 0x082d,
+	0x0900, 0x0902,
+	0x093c, 0x093c,
+	0x0941, 0x0948,
+	0x094d, 0x094d,
+	0x0951, 0x0955,
+	0x0962, 0x0963,
+	0x0971, 0x0971,
+	0x0981, 0x0981,
+	0x09bc, 0x09bc,
+	0x09c1, 0x09c4,
+	0x09cd, 0x09cd,
+	0x09e2, 0x09e3,
+	0x0a01, 0x0a02,
+	0x0a3c, 0x0a3c,
+	0x0a41, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4d,
+	0x0a51, 0x0a51,
+	0x0a70, 0x0a71,
+	0x0a75, 0x0a75,
+	0x0a81, 0x0a82,
+	0x0abc, 0x0abc,
+	0x0ac1, 0x0ac5,
+	0x0ac7, 0x0ac8,
+	0x0acd, 0x0acd,
+	0x0ae2, 0x0ae3,
+	0x0b01, 0x0b01,
+	0x0b3c, 0x0b3c,
+	0x0b3f, 0x0b3f,
+	0x0b41, 0x0b44,
+	0x0b4d, 0x0b4d,
+	0x0b56, 0x0b56,
+	0x0b62, 0x0b63,
+	0x0b82, 0x0b82,
+	0x0bc0, 0x0bc0,
+	0x0bcd, 0x0bcd,
+	0x0c3e, 0x0c40,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4d,
+	0x0c55, 0x0c56,
+	0x0c62, 0x0c63,
+	0x0cbc, 0x0cbc,
+	0x0cbf, 0x0cbf,
+	0x0cc6, 0x0cc6,
+	0x0ccc, 0x0ccd,
+	0x0ce2, 0x0ce3,
+	0x0d41, 0x0d44,
+	0x0d4d, 0x0d4d,
+	0x0d62, 0x0d63,
+	0x0dca, 0x0dca,
+	0x0dd2, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0e31, 0x0e31,
+	0x0e34, 0x0e3a,
+	0x0e46, 0x0e4e,
+	0x0eb1, 0x0eb1,
+	0x0eb4, 0x0eb9,
+	0x0ebb, 0x0ebc,
+	0x0ec6, 0x0ec6,
+	0x0ec8, 0x0ecd,
+	0x0f18, 0x0f19,
+	0x0f35, 0x0f35,
+	0x0f37, 0x0f37,
+	0x0f39, 0x0f39,
+	0x0f71, 0x0f7e,
+	0x0f80, 0x0f84,
+	0x0f86, 0x0f87,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x0fc6, 0x0fc6,
+	0x102d, 0x1030,
+	0x1032, 0x1037,
+	0x1039, 0x103a,
+	0x103d, 0x103e,
+	0x1058, 0x1059,
+	0x105e, 0x1060,
+	0x1071, 0x1074,
+	0x1082, 0x1082,
+	0x1085, 0x1086,
+	0x108d, 0x108d,
+	0x109d, 0x109d,
+	0x10fc, 0x10fc,
+	0x135f, 0x135f,
+	0x1712, 0x1714,
+	0x1732, 0x1734,
+	0x1752, 0x1753,
+	0x1772, 0x1773,
+	0x17b4, 0x17b5,
+	0x17b7, 0x17bd,
+	0x17c6, 0x17c6,
+	0x17c9, 0x17d3,
+	0x17d7, 0x17d7,
+	0x17dd, 0x17dd,
+	0x180b, 0x180d,
+	0x1843, 0x1843,
+	0x18a9, 0x18a9,
+	0x1920, 0x1922,
+	0x1927, 0x1928,
+	0x1932, 0x1932,
+	0x1939, 0x193b,
+	0x1a17, 0x1a18,
+	0x1a56, 0x1a56,
+	0x1a58, 0x1a5e,
+	0x1a60, 0x1a60,
+	0x1a62, 0x1a62,
+	0x1a65, 0x1a6c,
+	0x1a73, 0x1a7c,
+	0x1a7f, 0x1a7f,
+	0x1aa7, 0x1aa7,
+	0x1b00, 0x1b03,
+	0x1b34, 0x1b34,
+	0x1b36, 0x1b3a,
+	0x1b3c, 0x1b3c,
+	0x1b42, 0x1b42,
+	0x1b6b, 0x1b73,
+	0x1b80, 0x1b81,
+	0x1ba2, 0x1ba5,
+	0x1ba8, 0x1ba9,
+	0x1c2c, 0x1c33,
+	0x1c36, 0x1c37,
+	0x1c78, 0x1c7d,
+	0x1cd0, 0x1cd2,
+	0x1cd4, 0x1ce0,
+	0x1ce2, 0x1ce8,
+	0x1ced, 0x1ced,
+	0x1d2c, 0x1d61,
+	0x1d78, 0x1d78,
+	0x1d9b, 0x1de6,
+	0x1dfd, 0x1dff,
+	0x1fbd, 0x1fbd,
+	0x1fbf, 0x1fc1,
+	0x1fcd, 0x1fcf,
+	0x1fdd, 0x1fdf,
+	0x1fed, 0x1fef,
+	0x1ffd, 0x1ffe,
+	0x200b, 0x200f,
+	0x2018, 0x2019,
+	0x2024, 0x2024,
+	0x2027, 0x2027,
+	0x202a, 0x202e,
+	0x2060, 0x2064,
+	0x206a, 0x206f,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x20d0, 0x20f0,
+	0x2c7d, 0x2c7d,
+	0x2cef, 0x2cf1,
+	0x2d6f, 0x2d6f,
+	0x2de0, 0x2dff,
+	0x2e2f, 0x2e2f,
+	0x3005, 0x3005,
+	0x302a, 0x302f,
+	0x3031, 0x3035,
+	0x303b, 0x303b,
+	0x3099, 0x309e,
+	0x30fc, 0x30fe,
+	0xa015, 0xa015,
+	0xa4f8, 0xa4fd,
+	0xa60c, 0xa60c,
+	0xa66f, 0xa672,
+	0xa67c, 0xa67d,
+	0xa67f, 0xa67f,
+	0xa6f0, 0xa6f1,
+	0xa700, 0xa721,
+	0xa770, 0xa770,
+	0xa788, 0xa78a,
+	0xa802, 0xa802,
+	0xa806, 0xa806,
+	0xa80b, 0xa80b,
+	0xa825, 0xa826,
+	0xa8c4, 0xa8c4,
+	0xa8e0, 0xa8f1,
+	0xa926, 0xa92d,
+	0xa947, 0xa951,
+	0xa980, 0xa982,
+	0xa9b3, 0xa9b3,
+	0xa9b6, 0xa9b9,
+	0xa9bc, 0xa9bc,
+	0xa9cf, 0xa9cf,
+	0xaa29, 0xaa2e,
+	0xaa31, 0xaa32,
+	0xaa35, 0xaa36,
+	0xaa43, 0xaa43,
+	0xaa4c, 0xaa4c,
+	0xaa70, 0xaa70,
+	0xaab0, 0xaab0,
+	0xaab2, 0xaab4,
+	0xaab7, 0xaab8,
+	0xaabe, 0xaabf,
+	0xaac1, 0xaac1,
+	0xaadd, 0xaadd,
+	0xabe5, 0xabe5,
+	0xabe8, 0xabe8,
+	0xabed, 0xabed,
+	0xfb1e, 0xfb1e,
+	0xfe00, 0xfe0f,
+	0xfe13, 0xfe13,
+	0xfe20, 0xfe26,
+	0xfe52, 0xfe52,
+	0xfe55, 0xfe55,
+	0xfeff, 0xfeff,
+	0xff07, 0xff07,
+	0xff0e, 0xff0e,
+	0xff1a, 0xff1a,
+	0xff3e, 0xff3e,
+	0xff40, 0xff40,
+	0xff70, 0xff70,
+	0xff9e, 0xff9f,
+	0xffe3, 0xffe3,
+	0xfff9, 0xfffb,
+	0x101fd, 0x101fd,
+	0x10a01, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a0f,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a3f,
+	0x11080, 0x11081,
+	0x110b3, 0x110b6,
+	0x110b9, 0x110ba,
+	0x110bd, 0x110bd,
+	0x1d167, 0x1d169,
+	0x1d173, 0x1d182,
+	0x1d185, 0x1d18b,
+	0x1d1aa, 0x1d1ad,
+	0x1d242, 0x1d244,
+	0xe0001, 0xe0001,
+	0xe0020, 0xe007f,
+	0xe0100, 0xe01ef,
+}; /* CR_Case_Ignorable */
+
+/* 'Changes_When_Lowercased': Derived Property */
+static const OnigCodePoint CR_Changes_When_Lowercased[] = {
+	557,
+	0x0041, 0x005a,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00de,
+	0x0100, 0x0100,
+	0x0102, 0x0102,
+	0x0104, 0x0104,
+	0x0106, 0x0106,
+	0x0108, 0x0108,
+	0x010a, 0x010a,
+	0x010c, 0x010c,
+	0x010e, 0x010e,
+	0x0110, 0x0110,
+	0x0112, 0x0112,
+	0x0114, 0x0114,
+	0x0116, 0x0116,
+	0x0118, 0x0118,
+	0x011a, 0x011a,
+	0x011c, 0x011c,
+	0x011e, 0x011e,
+	0x0120, 0x0120,
+	0x0122, 0x0122,
+	0x0124, 0x0124,
+	0x0126, 0x0126,
+	0x0128, 0x0128,
+	0x012a, 0x012a,
+	0x012c, 0x012c,
+	0x012e, 0x012e,
+	0x0130, 0x0130,
+	0x0132, 0x0132,
+	0x0134, 0x0134,
+	0x0136, 0x0136,
+	0x0139, 0x0139,
+	0x013b, 0x013b,
+	0x013d, 0x013d,
+	0x013f, 0x013f,
+	0x0141, 0x0141,
+	0x0143, 0x0143,
+	0x0145, 0x0145,
+	0x0147, 0x0147,
+	0x014a, 0x014a,
+	0x014c, 0x014c,
+	0x014e, 0x014e,
+	0x0150, 0x0150,
+	0x0152, 0x0152,
+	0x0154, 0x0154,
+	0x0156, 0x0156,
+	0x0158, 0x0158,
+	0x015a, 0x015a,
+	0x015c, 0x015c,
+	0x015e, 0x015e,
+	0x0160, 0x0160,
+	0x0162, 0x0162,
+	0x0164, 0x0164,
+	0x0166, 0x0166,
+	0x0168, 0x0168,
+	0x016a, 0x016a,
+	0x016c, 0x016c,
+	0x016e, 0x016e,
+	0x0170, 0x0170,
+	0x0172, 0x0172,
+	0x0174, 0x0174,
+	0x0176, 0x0176,
+	0x0178, 0x0179,
+	0x017b, 0x017b,
+	0x017d, 0x017d,
+	0x0181, 0x0182,
+	0x0184, 0x0184,
+	0x0186, 0x0187,
+	0x0189, 0x018b,
+	0x018e, 0x0191,
+	0x0193, 0x0194,
+	0x0196, 0x0198,
+	0x019c, 0x019d,
+	0x019f, 0x01a0,
+	0x01a2, 0x01a2,
+	0x01a4, 0x01a4,
+	0x01a6, 0x01a7,
+	0x01a9, 0x01a9,
+	0x01ac, 0x01ac,
+	0x01ae, 0x01af,
+	0x01b1, 0x01b3,
+	0x01b5, 0x01b5,
+	0x01b7, 0x01b8,
+	0x01bc, 0x01bc,
+	0x01c4, 0x01c5,
+	0x01c7, 0x01c8,
+	0x01ca, 0x01cb,
+	0x01cd, 0x01cd,
+	0x01cf, 0x01cf,
+	0x01d1, 0x01d1,
+	0x01d3, 0x01d3,
+	0x01d5, 0x01d5,
+	0x01d7, 0x01d7,
+	0x01d9, 0x01d9,
+	0x01db, 0x01db,
+	0x01de, 0x01de,
+	0x01e0, 0x01e0,
+	0x01e2, 0x01e2,
+	0x01e4, 0x01e4,
+	0x01e6, 0x01e6,
+	0x01e8, 0x01e8,
+	0x01ea, 0x01ea,
+	0x01ec, 0x01ec,
+	0x01ee, 0x01ee,
+	0x01f1, 0x01f2,
+	0x01f4, 0x01f4,
+	0x01f6, 0x01f8,
+	0x01fa, 0x01fa,
+	0x01fc, 0x01fc,
+	0x01fe, 0x01fe,
+	0x0200, 0x0200,
+	0x0202, 0x0202,
+	0x0204, 0x0204,
+	0x0206, 0x0206,
+	0x0208, 0x0208,
+	0x020a, 0x020a,
+	0x020c, 0x020c,
+	0x020e, 0x020e,
+	0x0210, 0x0210,
+	0x0212, 0x0212,
+	0x0214, 0x0214,
+	0x0216, 0x0216,
+	0x0218, 0x0218,
+	0x021a, 0x021a,
+	0x021c, 0x021c,
+	0x021e, 0x021e,
+	0x0220, 0x0220,
+	0x0222, 0x0222,
+	0x0224, 0x0224,
+	0x0226, 0x0226,
+	0x0228, 0x0228,
+	0x022a, 0x022a,
+	0x022c, 0x022c,
+	0x022e, 0x022e,
+	0x0230, 0x0230,
+	0x0232, 0x0232,
+	0x023a, 0x023b,
+	0x023d, 0x023e,
+	0x0241, 0x0241,
+	0x0243, 0x0246,
+	0x0248, 0x0248,
+	0x024a, 0x024a,
+	0x024c, 0x024c,
+	0x024e, 0x024e,
+	0x0370, 0x0370,
+	0x0372, 0x0372,
+	0x0376, 0x0376,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x038f,
+	0x0391, 0x03a1,
+	0x03a3, 0x03ab,
+	0x03cf, 0x03cf,
+	0x03d8, 0x03d8,
+	0x03da, 0x03da,
+	0x03dc, 0x03dc,
+	0x03de, 0x03de,
+	0x03e0, 0x03e0,
+	0x03e2, 0x03e2,
+	0x03e4, 0x03e4,
+	0x03e6, 0x03e6,
+	0x03e8, 0x03e8,
+	0x03ea, 0x03ea,
+	0x03ec, 0x03ec,
+	0x03ee, 0x03ee,
+	0x03f4, 0x03f4,
+	0x03f7, 0x03f7,
+	0x03f9, 0x03fa,
+	0x03fd, 0x042f,
+	0x0460, 0x0460,
+	0x0462, 0x0462,
+	0x0464, 0x0464,
+	0x0466, 0x0466,
+	0x0468, 0x0468,
+	0x046a, 0x046a,
+	0x046c, 0x046c,
+	0x046e, 0x046e,
+	0x0470, 0x0470,
+	0x0472, 0x0472,
+	0x0474, 0x0474,
+	0x0476, 0x0476,
+	0x0478, 0x0478,
+	0x047a, 0x047a,
+	0x047c, 0x047c,
+	0x047e, 0x047e,
+	0x0480, 0x0480,
+	0x048a, 0x048a,
+	0x048c, 0x048c,
+	0x048e, 0x048e,
+	0x0490, 0x0490,
+	0x0492, 0x0492,
+	0x0494, 0x0494,
+	0x0496, 0x0496,
+	0x0498, 0x0498,
+	0x049a, 0x049a,
+	0x049c, 0x049c,
+	0x049e, 0x049e,
+	0x04a0, 0x04a0,
+	0x04a2, 0x04a2,
+	0x04a4, 0x04a4,
+	0x04a6, 0x04a6,
+	0x04a8, 0x04a8,
+	0x04aa, 0x04aa,
+	0x04ac, 0x04ac,
+	0x04ae, 0x04ae,
+	0x04b0, 0x04b0,
+	0x04b2, 0x04b2,
+	0x04b4, 0x04b4,
+	0x04b6, 0x04b6,
+	0x04b8, 0x04b8,
+	0x04ba, 0x04ba,
+	0x04bc, 0x04bc,
+	0x04be, 0x04be,
+	0x04c0, 0x04c1,
+	0x04c3, 0x04c3,
+	0x04c5, 0x04c5,
+	0x04c7, 0x04c7,
+	0x04c9, 0x04c9,
+	0x04cb, 0x04cb,
+	0x04cd, 0x04cd,
+	0x04d0, 0x04d0,
+	0x04d2, 0x04d2,
+	0x04d4, 0x04d4,
+	0x04d6, 0x04d6,
+	0x04d8, 0x04d8,
+	0x04da, 0x04da,
+	0x04dc, 0x04dc,
+	0x04de, 0x04de,
+	0x04e0, 0x04e0,
+	0x04e2, 0x04e2,
+	0x04e4, 0x04e4,
+	0x04e6, 0x04e6,
+	0x04e8, 0x04e8,
+	0x04ea, 0x04ea,
+	0x04ec, 0x04ec,
+	0x04ee, 0x04ee,
+	0x04f0, 0x04f0,
+	0x04f2, 0x04f2,
+	0x04f4, 0x04f4,
+	0x04f6, 0x04f6,
+	0x04f8, 0x04f8,
+	0x04fa, 0x04fa,
+	0x04fc, 0x04fc,
+	0x04fe, 0x04fe,
+	0x0500, 0x0500,
+	0x0502, 0x0502,
+	0x0504, 0x0504,
+	0x0506, 0x0506,
+	0x0508, 0x0508,
+	0x050a, 0x050a,
+	0x050c, 0x050c,
+	0x050e, 0x050e,
+	0x0510, 0x0510,
+	0x0512, 0x0512,
+	0x0514, 0x0514,
+	0x0516, 0x0516,
+	0x0518, 0x0518,
+	0x051a, 0x051a,
+	0x051c, 0x051c,
+	0x051e, 0x051e,
+	0x0520, 0x0520,
+	0x0522, 0x0522,
+	0x0524, 0x0524,
+	0x0531, 0x0556,
+	0x10a0, 0x10c5,
+	0x1e00, 0x1e00,
+	0x1e02, 0x1e02,
+	0x1e04, 0x1e04,
+	0x1e06, 0x1e06,
+	0x1e08, 0x1e08,
+	0x1e0a, 0x1e0a,
+	0x1e0c, 0x1e0c,
+	0x1e0e, 0x1e0e,
+	0x1e10, 0x1e10,
+	0x1e12, 0x1e12,
+	0x1e14, 0x1e14,
+	0x1e16, 0x1e16,
+	0x1e18, 0x1e18,
+	0x1e1a, 0x1e1a,
+	0x1e1c, 0x1e1c,
+	0x1e1e, 0x1e1e,
+	0x1e20, 0x1e20,
+	0x1e22, 0x1e22,
+	0x1e24, 0x1e24,
+	0x1e26, 0x1e26,
+	0x1e28, 0x1e28,
+	0x1e2a, 0x1e2a,
+	0x1e2c, 0x1e2c,
+	0x1e2e, 0x1e2e,
+	0x1e30, 0x1e30,
+	0x1e32, 0x1e32,
+	0x1e34, 0x1e34,
+	0x1e36, 0x1e36,
+	0x1e38, 0x1e38,
+	0x1e3a, 0x1e3a,
+	0x1e3c, 0x1e3c,
+	0x1e3e, 0x1e3e,
+	0x1e40, 0x1e40,
+	0x1e42, 0x1e42,
+	0x1e44, 0x1e44,
+	0x1e46, 0x1e46,
+	0x1e48, 0x1e48,
+	0x1e4a, 0x1e4a,
+	0x1e4c, 0x1e4c,
+	0x1e4e, 0x1e4e,
+	0x1e50, 0x1e50,
+	0x1e52, 0x1e52,
+	0x1e54, 0x1e54,
+	0x1e56, 0x1e56,
+	0x1e58, 0x1e58,
+	0x1e5a, 0x1e5a,
+	0x1e5c, 0x1e5c,
+	0x1e5e, 0x1e5e,
+	0x1e60, 0x1e60,
+	0x1e62, 0x1e62,
+	0x1e64, 0x1e64,
+	0x1e66, 0x1e66,
+	0x1e68, 0x1e68,
+	0x1e6a, 0x1e6a,
+	0x1e6c, 0x1e6c,
+	0x1e6e, 0x1e6e,
+	0x1e70, 0x1e70,
+	0x1e72, 0x1e72,
+	0x1e74, 0x1e74,
+	0x1e76, 0x1e76,
+	0x1e78, 0x1e78,
+	0x1e7a, 0x1e7a,
+	0x1e7c, 0x1e7c,
+	0x1e7e, 0x1e7e,
+	0x1e80, 0x1e80,
+	0x1e82, 0x1e82,
+	0x1e84, 0x1e84,
+	0x1e86, 0x1e86,
+	0x1e88, 0x1e88,
+	0x1e8a, 0x1e8a,
+	0x1e8c, 0x1e8c,
+	0x1e8e, 0x1e8e,
+	0x1e90, 0x1e90,
+	0x1e92, 0x1e92,
+	0x1e94, 0x1e94,
+	0x1e9e, 0x1e9e,
+	0x1ea0, 0x1ea0,
+	0x1ea2, 0x1ea2,
+	0x1ea4, 0x1ea4,
+	0x1ea6, 0x1ea6,
+	0x1ea8, 0x1ea8,
+	0x1eaa, 0x1eaa,
+	0x1eac, 0x1eac,
+	0x1eae, 0x1eae,
+	0x1eb0, 0x1eb0,
+	0x1eb2, 0x1eb2,
+	0x1eb4, 0x1eb4,
+	0x1eb6, 0x1eb6,
+	0x1eb8, 0x1eb8,
+	0x1eba, 0x1eba,
+	0x1ebc, 0x1ebc,
+	0x1ebe, 0x1ebe,
+	0x1ec0, 0x1ec0,
+	0x1ec2, 0x1ec2,
+	0x1ec4, 0x1ec4,
+	0x1ec6, 0x1ec6,
+	0x1ec8, 0x1ec8,
+	0x1eca, 0x1eca,
+	0x1ecc, 0x1ecc,
+	0x1ece, 0x1ece,
+	0x1ed0, 0x1ed0,
+	0x1ed2, 0x1ed2,
+	0x1ed4, 0x1ed4,
+	0x1ed6, 0x1ed6,
+	0x1ed8, 0x1ed8,
+	0x1eda, 0x1eda,
+	0x1edc, 0x1edc,
+	0x1ede, 0x1ede,
+	0x1ee0, 0x1ee0,
+	0x1ee2, 0x1ee2,
+	0x1ee4, 0x1ee4,
+	0x1ee6, 0x1ee6,
+	0x1ee8, 0x1ee8,
+	0x1eea, 0x1eea,
+	0x1eec, 0x1eec,
+	0x1eee, 0x1eee,
+	0x1ef0, 0x1ef0,
+	0x1ef2, 0x1ef2,
+	0x1ef4, 0x1ef4,
+	0x1ef6, 0x1ef6,
+	0x1ef8, 0x1ef8,
+	0x1efa, 0x1efa,
+	0x1efc, 0x1efc,
+	0x1efe, 0x1efe,
+	0x1f08, 0x1f0f,
+	0x1f18, 0x1f1d,
+	0x1f28, 0x1f2f,
+	0x1f38, 0x1f3f,
+	0x1f48, 0x1f4d,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f5f,
+	0x1f68, 0x1f6f,
+	0x1f88, 0x1f8f,
+	0x1f98, 0x1f9f,
+	0x1fa8, 0x1faf,
+	0x1fb8, 0x1fbc,
+	0x1fc8, 0x1fcc,
+	0x1fd8, 0x1fdb,
+	0x1fe8, 0x1fec,
+	0x1ff8, 0x1ffc,
+	0x2126, 0x2126,
+	0x212a, 0x212b,
+	0x2132, 0x2132,
+	0x2160, 0x216f,
+	0x2183, 0x2183,
+	0x24b6, 0x24cf,
+	0x2c00, 0x2c2e,
+	0x2c60, 0x2c60,
+	0x2c62, 0x2c64,
+	0x2c67, 0x2c67,
+	0x2c69, 0x2c69,
+	0x2c6b, 0x2c6b,
+	0x2c6d, 0x2c70,
+	0x2c72, 0x2c72,
+	0x2c75, 0x2c75,
+	0x2c7e, 0x2c80,
+	0x2c82, 0x2c82,
+	0x2c84, 0x2c84,
+	0x2c86, 0x2c86,
+	0x2c88, 0x2c88,
+	0x2c8a, 0x2c8a,
+	0x2c8c, 0x2c8c,
+	0x2c8e, 0x2c8e,
+	0x2c90, 0x2c90,
+	0x2c92, 0x2c92,
+	0x2c94, 0x2c94,
+	0x2c96, 0x2c96,
+	0x2c98, 0x2c98,
+	0x2c9a, 0x2c9a,
+	0x2c9c, 0x2c9c,
+	0x2c9e, 0x2c9e,
+	0x2ca0, 0x2ca0,
+	0x2ca2, 0x2ca2,
+	0x2ca4, 0x2ca4,
+	0x2ca6, 0x2ca6,
+	0x2ca8, 0x2ca8,
+	0x2caa, 0x2caa,
+	0x2cac, 0x2cac,
+	0x2cae, 0x2cae,
+	0x2cb0, 0x2cb0,
+	0x2cb2, 0x2cb2,
+	0x2cb4, 0x2cb4,
+	0x2cb6, 0x2cb6,
+	0x2cb8, 0x2cb8,
+	0x2cba, 0x2cba,
+	0x2cbc, 0x2cbc,
+	0x2cbe, 0x2cbe,
+	0x2cc0, 0x2cc0,
+	0x2cc2, 0x2cc2,
+	0x2cc4, 0x2cc4,
+	0x2cc6, 0x2cc6,
+	0x2cc8, 0x2cc8,
+	0x2cca, 0x2cca,
+	0x2ccc, 0x2ccc,
+	0x2cce, 0x2cce,
+	0x2cd0, 0x2cd0,
+	0x2cd2, 0x2cd2,
+	0x2cd4, 0x2cd4,
+	0x2cd6, 0x2cd6,
+	0x2cd8, 0x2cd8,
+	0x2cda, 0x2cda,
+	0x2cdc, 0x2cdc,
+	0x2cde, 0x2cde,
+	0x2ce0, 0x2ce0,
+	0x2ce2, 0x2ce2,
+	0x2ceb, 0x2ceb,
+	0x2ced, 0x2ced,
+	0xa640, 0xa640,
+	0xa642, 0xa642,
+	0xa644, 0xa644,
+	0xa646, 0xa646,
+	0xa648, 0xa648,
+	0xa64a, 0xa64a,
+	0xa64c, 0xa64c,
+	0xa64e, 0xa64e,
+	0xa650, 0xa650,
+	0xa652, 0xa652,
+	0xa654, 0xa654,
+	0xa656, 0xa656,
+	0xa658, 0xa658,
+	0xa65a, 0xa65a,
+	0xa65c, 0xa65c,
+	0xa65e, 0xa65e,
+	0xa662, 0xa662,
+	0xa664, 0xa664,
+	0xa666, 0xa666,
+	0xa668, 0xa668,
+	0xa66a, 0xa66a,
+	0xa66c, 0xa66c,
+	0xa680, 0xa680,
+	0xa682, 0xa682,
+	0xa684, 0xa684,
+	0xa686, 0xa686,
+	0xa688, 0xa688,
+	0xa68a, 0xa68a,
+	0xa68c, 0xa68c,
+	0xa68e, 0xa68e,
+	0xa690, 0xa690,
+	0xa692, 0xa692,
+	0xa694, 0xa694,
+	0xa696, 0xa696,
+	0xa722, 0xa722,
+	0xa724, 0xa724,
+	0xa726, 0xa726,
+	0xa728, 0xa728,
+	0xa72a, 0xa72a,
+	0xa72c, 0xa72c,
+	0xa72e, 0xa72e,
+	0xa732, 0xa732,
+	0xa734, 0xa734,
+	0xa736, 0xa736,
+	0xa738, 0xa738,
+	0xa73a, 0xa73a,
+	0xa73c, 0xa73c,
+	0xa73e, 0xa73e,
+	0xa740, 0xa740,
+	0xa742, 0xa742,
+	0xa744, 0xa744,
+	0xa746, 0xa746,
+	0xa748, 0xa748,
+	0xa74a, 0xa74a,
+	0xa74c, 0xa74c,
+	0xa74e, 0xa74e,
+	0xa750, 0xa750,
+	0xa752, 0xa752,
+	0xa754, 0xa754,
+	0xa756, 0xa756,
+	0xa758, 0xa758,
+	0xa75a, 0xa75a,
+	0xa75c, 0xa75c,
+	0xa75e, 0xa75e,
+	0xa760, 0xa760,
+	0xa762, 0xa762,
+	0xa764, 0xa764,
+	0xa766, 0xa766,
+	0xa768, 0xa768,
+	0xa76a, 0xa76a,
+	0xa76c, 0xa76c,
+	0xa76e, 0xa76e,
+	0xa779, 0xa779,
+	0xa77b, 0xa77b,
+	0xa77d, 0xa77e,
+	0xa780, 0xa780,
+	0xa782, 0xa782,
+	0xa784, 0xa784,
+	0xa786, 0xa786,
+	0xa78b, 0xa78b,
+	0xff21, 0xff3a,
+	0x10400, 0x10427,
+}; /* CR_Changes_When_Lowercased */
+
+/* 'Changes_When_Uppercased': Derived Property */
+static const OnigCodePoint CR_Changes_When_Uppercased[] = {
+	573,
+	0x0061, 0x007a,
+	0x00b5, 0x00b5,
+	0x00df, 0x00f6,
+	0x00f8, 0x00ff,
+	0x0101, 0x0101,
+	0x0103, 0x0103,
+	0x0105, 0x0105,
+	0x0107, 0x0107,
+	0x0109, 0x0109,
+	0x010b, 0x010b,
+	0x010d, 0x010d,
+	0x010f, 0x010f,
+	0x0111, 0x0111,
+	0x0113, 0x0113,
+	0x0115, 0x0115,
+	0x0117, 0x0117,
+	0x0119, 0x0119,
+	0x011b, 0x011b,
+	0x011d, 0x011d,
+	0x011f, 0x011f,
+	0x0121, 0x0121,
+	0x0123, 0x0123,
+	0x0125, 0x0125,
+	0x0127, 0x0127,
+	0x0129, 0x0129,
+	0x012b, 0x012b,
+	0x012d, 0x012d,
+	0x012f, 0x012f,
+	0x0131, 0x0131,
+	0x0133, 0x0133,
+	0x0135, 0x0135,
+	0x0137, 0x0137,
+	0x013a, 0x013a,
+	0x013c, 0x013c,
+	0x013e, 0x013e,
+	0x0140, 0x0140,
+	0x0142, 0x0142,
+	0x0144, 0x0144,
+	0x0146, 0x0146,
+	0x0148, 0x0149,
+	0x014b, 0x014b,
+	0x014d, 0x014d,
+	0x014f, 0x014f,
+	0x0151, 0x0151,
+	0x0153, 0x0153,
+	0x0155, 0x0155,
+	0x0157, 0x0157,
+	0x0159, 0x0159,
+	0x015b, 0x015b,
+	0x015d, 0x015d,
+	0x015f, 0x015f,
+	0x0161, 0x0161,
+	0x0163, 0x0163,
+	0x0165, 0x0165,
+	0x0167, 0x0167,
+	0x0169, 0x0169,
+	0x016b, 0x016b,
+	0x016d, 0x016d,
+	0x016f, 0x016f,
+	0x0171, 0x0171,
+	0x0173, 0x0173,
+	0x0175, 0x0175,
+	0x0177, 0x0177,
+	0x017a, 0x017a,
+	0x017c, 0x017c,
+	0x017e, 0x0180,
+	0x0183, 0x0183,
+	0x0185, 0x0185,
+	0x0188, 0x0188,
+	0x018c, 0x018c,
+	0x0192, 0x0192,
+	0x0195, 0x0195,
+	0x0199, 0x019a,
+	0x019e, 0x019e,
+	0x01a1, 0x01a1,
+	0x01a3, 0x01a3,
+	0x01a5, 0x01a5,
+	0x01a8, 0x01a8,
+	0x01ad, 0x01ad,
+	0x01b0, 0x01b0,
+	0x01b4, 0x01b4,
+	0x01b6, 0x01b6,
+	0x01b9, 0x01b9,
+	0x01bd, 0x01bd,
+	0x01bf, 0x01bf,
+	0x01c5, 0x01c6,
+	0x01c8, 0x01c9,
+	0x01cb, 0x01cc,
+	0x01ce, 0x01ce,
+	0x01d0, 0x01d0,
+	0x01d2, 0x01d2,
+	0x01d4, 0x01d4,
+	0x01d6, 0x01d6,
+	0x01d8, 0x01d8,
+	0x01da, 0x01da,
+	0x01dc, 0x01dd,
+	0x01df, 0x01df,
+	0x01e1, 0x01e1,
+	0x01e3, 0x01e3,
+	0x01e5, 0x01e5,
+	0x01e7, 0x01e7,
+	0x01e9, 0x01e9,
+	0x01eb, 0x01eb,
+	0x01ed, 0x01ed,
+	0x01ef, 0x01f0,
+	0x01f2, 0x01f3,
+	0x01f5, 0x01f5,
+	0x01f9, 0x01f9,
+	0x01fb, 0x01fb,
+	0x01fd, 0x01fd,
+	0x01ff, 0x01ff,
+	0x0201, 0x0201,
+	0x0203, 0x0203,
+	0x0205, 0x0205,
+	0x0207, 0x0207,
+	0x0209, 0x0209,
+	0x020b, 0x020b,
+	0x020d, 0x020d,
+	0x020f, 0x020f,
+	0x0211, 0x0211,
+	0x0213, 0x0213,
+	0x0215, 0x0215,
+	0x0217, 0x0217,
+	0x0219, 0x0219,
+	0x021b, 0x021b,
+	0x021d, 0x021d,
+	0x021f, 0x021f,
+	0x0223, 0x0223,
+	0x0225, 0x0225,
+	0x0227, 0x0227,
+	0x0229, 0x0229,
+	0x022b, 0x022b,
+	0x022d, 0x022d,
+	0x022f, 0x022f,
+	0x0231, 0x0231,
+	0x0233, 0x0233,
+	0x023c, 0x023c,
+	0x023f, 0x0240,
+	0x0242, 0x0242,
+	0x0247, 0x0247,
+	0x0249, 0x0249,
+	0x024b, 0x024b,
+	0x024d, 0x024d,
+	0x024f, 0x0254,
+	0x0256, 0x0257,
+	0x0259, 0x0259,
+	0x025b, 0x025b,
+	0x0260, 0x0260,
+	0x0263, 0x0263,
+	0x0268, 0x0269,
+	0x026b, 0x026b,
+	0x026f, 0x026f,
+	0x0271, 0x0272,
+	0x0275, 0x0275,
+	0x027d, 0x027d,
+	0x0280, 0x0280,
+	0x0283, 0x0283,
+	0x0288, 0x028c,
+	0x0292, 0x0292,
+	0x0345, 0x0345,
+	0x0371, 0x0371,
+	0x0373, 0x0373,
+	0x0377, 0x0377,
+	0x037b, 0x037d,
+	0x0390, 0x0390,
+	0x03ac, 0x03ce,
+	0x03d0, 0x03d1,
+	0x03d5, 0x03d7,
+	0x03d9, 0x03d9,
+	0x03db, 0x03db,
+	0x03dd, 0x03dd,
+	0x03df, 0x03df,
+	0x03e1, 0x03e1,
+	0x03e3, 0x03e3,
+	0x03e5, 0x03e5,
+	0x03e7, 0x03e7,
+	0x03e9, 0x03e9,
+	0x03eb, 0x03eb,
+	0x03ed, 0x03ed,
+	0x03ef, 0x03f2,
+	0x03f5, 0x03f5,
+	0x03f8, 0x03f8,
+	0x03fb, 0x03fb,
+	0x0430, 0x045f,
+	0x0461, 0x0461,
+	0x0463, 0x0463,
+	0x0465, 0x0465,
+	0x0467, 0x0467,
+	0x0469, 0x0469,
+	0x046b, 0x046b,
+	0x046d, 0x046d,
+	0x046f, 0x046f,
+	0x0471, 0x0471,
+	0x0473, 0x0473,
+	0x0475, 0x0475,
+	0x0477, 0x0477,
+	0x0479, 0x0479,
+	0x047b, 0x047b,
+	0x047d, 0x047d,
+	0x047f, 0x047f,
+	0x0481, 0x0481,
+	0x048b, 0x048b,
+	0x048d, 0x048d,
+	0x048f, 0x048f,
+	0x0491, 0x0491,
+	0x0493, 0x0493,
+	0x0495, 0x0495,
+	0x0497, 0x0497,
+	0x0499, 0x0499,
+	0x049b, 0x049b,
+	0x049d, 0x049d,
+	0x049f, 0x049f,
+	0x04a1, 0x04a1,
+	0x04a3, 0x04a3,
+	0x04a5, 0x04a5,
+	0x04a7, 0x04a7,
+	0x04a9, 0x04a9,
+	0x04ab, 0x04ab,
+	0x04ad, 0x04ad,
+	0x04af, 0x04af,
+	0x04b1, 0x04b1,
+	0x04b3, 0x04b3,
+	0x04b5, 0x04b5,
+	0x04b7, 0x04b7,
+	0x04b9, 0x04b9,
+	0x04bb, 0x04bb,
+	0x04bd, 0x04bd,
+	0x04bf, 0x04bf,
+	0x04c2, 0x04c2,
+	0x04c4, 0x04c4,
+	0x04c6, 0x04c6,
+	0x04c8, 0x04c8,
+	0x04ca, 0x04ca,
+	0x04cc, 0x04cc,
+	0x04ce, 0x04cf,
+	0x04d1, 0x04d1,
+	0x04d3, 0x04d3,
+	0x04d5, 0x04d5,
+	0x04d7, 0x04d7,
+	0x04d9, 0x04d9,
+	0x04db, 0x04db,
+	0x04dd, 0x04dd,
+	0x04df, 0x04df,
+	0x04e1, 0x04e1,
+	0x04e3, 0x04e3,
+	0x04e5, 0x04e5,
+	0x04e7, 0x04e7,
+	0x04e9, 0x04e9,
+	0x04eb, 0x04eb,
+	0x04ed, 0x04ed,
+	0x04ef, 0x04ef,
+	0x04f1, 0x04f1,
+	0x04f3, 0x04f3,
+	0x04f5, 0x04f5,
+	0x04f7, 0x04f7,
+	0x04f9, 0x04f9,
+	0x04fb, 0x04fb,
+	0x04fd, 0x04fd,
+	0x04ff, 0x04ff,
+	0x0501, 0x0501,
+	0x0503, 0x0503,
+	0x0505, 0x0505,
+	0x0507, 0x0507,
+	0x0509, 0x0509,
+	0x050b, 0x050b,
+	0x050d, 0x050d,
+	0x050f, 0x050f,
+	0x0511, 0x0511,
+	0x0513, 0x0513,
+	0x0515, 0x0515,
+	0x0517, 0x0517,
+	0x0519, 0x0519,
+	0x051b, 0x051b,
+	0x051d, 0x051d,
+	0x051f, 0x051f,
+	0x0521, 0x0521,
+	0x0523, 0x0523,
+	0x0525, 0x0525,
+	0x0561, 0x0587,
+	0x1d79, 0x1d79,
+	0x1d7d, 0x1d7d,
+	0x1e01, 0x1e01,
+	0x1e03, 0x1e03,
+	0x1e05, 0x1e05,
+	0x1e07, 0x1e07,
+	0x1e09, 0x1e09,
+	0x1e0b, 0x1e0b,
+	0x1e0d, 0x1e0d,
+	0x1e0f, 0x1e0f,
+	0x1e11, 0x1e11,
+	0x1e13, 0x1e13,
+	0x1e15, 0x1e15,
+	0x1e17, 0x1e17,
+	0x1e19, 0x1e19,
+	0x1e1b, 0x1e1b,
+	0x1e1d, 0x1e1d,
+	0x1e1f, 0x1e1f,
+	0x1e21, 0x1e21,
+	0x1e23, 0x1e23,
+	0x1e25, 0x1e25,
+	0x1e27, 0x1e27,
+	0x1e29, 0x1e29,
+	0x1e2b, 0x1e2b,
+	0x1e2d, 0x1e2d,
+	0x1e2f, 0x1e2f,
+	0x1e31, 0x1e31,
+	0x1e33, 0x1e33,
+	0x1e35, 0x1e35,
+	0x1e37, 0x1e37,
+	0x1e39, 0x1e39,
+	0x1e3b, 0x1e3b,
+	0x1e3d, 0x1e3d,
+	0x1e3f, 0x1e3f,
+	0x1e41, 0x1e41,
+	0x1e43, 0x1e43,
+	0x1e45, 0x1e45,
+	0x1e47, 0x1e47,
+	0x1e49, 0x1e49,
+	0x1e4b, 0x1e4b,
+	0x1e4d, 0x1e4d,
+	0x1e4f, 0x1e4f,
+	0x1e51, 0x1e51,
+	0x1e53, 0x1e53,
+	0x1e55, 0x1e55,
+	0x1e57, 0x1e57,
+	0x1e59, 0x1e59,
+	0x1e5b, 0x1e5b,
+	0x1e5d, 0x1e5d,
+	0x1e5f, 0x1e5f,
+	0x1e61, 0x1e61,
+	0x1e63, 0x1e63,
+	0x1e65, 0x1e65,
+	0x1e67, 0x1e67,
+	0x1e69, 0x1e69,
+	0x1e6b, 0x1e6b,
+	0x1e6d, 0x1e6d,
+	0x1e6f, 0x1e6f,
+	0x1e71, 0x1e71,
+	0x1e73, 0x1e73,
+	0x1e75, 0x1e75,
+	0x1e77, 0x1e77,
+	0x1e79, 0x1e79,
+	0x1e7b, 0x1e7b,
+	0x1e7d, 0x1e7d,
+	0x1e7f, 0x1e7f,
+	0x1e81, 0x1e81,
+	0x1e83, 0x1e83,
+	0x1e85, 0x1e85,
+	0x1e87, 0x1e87,
+	0x1e89, 0x1e89,
+	0x1e8b, 0x1e8b,
+	0x1e8d, 0x1e8d,
+	0x1e8f, 0x1e8f,
+	0x1e91, 0x1e91,
+	0x1e93, 0x1e93,
+	0x1e95, 0x1e9b,
+	0x1ea1, 0x1ea1,
+	0x1ea3, 0x1ea3,
+	0x1ea5, 0x1ea5,
+	0x1ea7, 0x1ea7,
+	0x1ea9, 0x1ea9,
+	0x1eab, 0x1eab,
+	0x1ead, 0x1ead,
+	0x1eaf, 0x1eaf,
+	0x1eb1, 0x1eb1,
+	0x1eb3, 0x1eb3,
+	0x1eb5, 0x1eb5,
+	0x1eb7, 0x1eb7,
+	0x1eb9, 0x1eb9,
+	0x1ebb, 0x1ebb,
+	0x1ebd, 0x1ebd,
+	0x1ebf, 0x1ebf,
+	0x1ec1, 0x1ec1,
+	0x1ec3, 0x1ec3,
+	0x1ec5, 0x1ec5,
+	0x1ec7, 0x1ec7,
+	0x1ec9, 0x1ec9,
+	0x1ecb, 0x1ecb,
+	0x1ecd, 0x1ecd,
+	0x1ecf, 0x1ecf,
+	0x1ed1, 0x1ed1,
+	0x1ed3, 0x1ed3,
+	0x1ed5, 0x1ed5,
+	0x1ed7, 0x1ed7,
+	0x1ed9, 0x1ed9,
+	0x1edb, 0x1edb,
+	0x1edd, 0x1edd,
+	0x1edf, 0x1edf,
+	0x1ee1, 0x1ee1,
+	0x1ee3, 0x1ee3,
+	0x1ee5, 0x1ee5,
+	0x1ee7, 0x1ee7,
+	0x1ee9, 0x1ee9,
+	0x1eeb, 0x1eeb,
+	0x1eed, 0x1eed,
+	0x1eef, 0x1eef,
+	0x1ef1, 0x1ef1,
+	0x1ef3, 0x1ef3,
+	0x1ef5, 0x1ef5,
+	0x1ef7, 0x1ef7,
+	0x1ef9, 0x1ef9,
+	0x1efb, 0x1efb,
+	0x1efd, 0x1efd,
+	0x1eff, 0x1f07,
+	0x1f10, 0x1f15,
+	0x1f20, 0x1f27,
+	0x1f30, 0x1f37,
+	0x1f40, 0x1f45,
+	0x1f50, 0x1f57,
+	0x1f60, 0x1f67,
+	0x1f70, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fb7,
+	0x1fbc, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fc7,
+	0x1fcc, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fd7,
+	0x1fe0, 0x1fe7,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ff7,
+	0x1ffc, 0x1ffc,
+	0x214e, 0x214e,
+	0x2170, 0x217f,
+	0x2184, 0x2184,
+	0x24d0, 0x24e9,
+	0x2c30, 0x2c5e,
+	0x2c61, 0x2c61,
+	0x2c65, 0x2c66,
+	0x2c68, 0x2c68,
+	0x2c6a, 0x2c6a,
+	0x2c6c, 0x2c6c,
+	0x2c73, 0x2c73,
+	0x2c76, 0x2c76,
+	0x2c81, 0x2c81,
+	0x2c83, 0x2c83,
+	0x2c85, 0x2c85,
+	0x2c87, 0x2c87,
+	0x2c89, 0x2c89,
+	0x2c8b, 0x2c8b,
+	0x2c8d, 0x2c8d,
+	0x2c8f, 0x2c8f,
+	0x2c91, 0x2c91,
+	0x2c93, 0x2c93,
+	0x2c95, 0x2c95,
+	0x2c97, 0x2c97,
+	0x2c99, 0x2c99,
+	0x2c9b, 0x2c9b,
+	0x2c9d, 0x2c9d,
+	0x2c9f, 0x2c9f,
+	0x2ca1, 0x2ca1,
+	0x2ca3, 0x2ca3,
+	0x2ca5, 0x2ca5,
+	0x2ca7, 0x2ca7,
+	0x2ca9, 0x2ca9,
+	0x2cab, 0x2cab,
+	0x2cad, 0x2cad,
+	0x2caf, 0x2caf,
+	0x2cb1, 0x2cb1,
+	0x2cb3, 0x2cb3,
+	0x2cb5, 0x2cb5,
+	0x2cb7, 0x2cb7,
+	0x2cb9, 0x2cb9,
+	0x2cbb, 0x2cbb,
+	0x2cbd, 0x2cbd,
+	0x2cbf, 0x2cbf,
+	0x2cc1, 0x2cc1,
+	0x2cc3, 0x2cc3,
+	0x2cc5, 0x2cc5,
+	0x2cc7, 0x2cc7,
+	0x2cc9, 0x2cc9,
+	0x2ccb, 0x2ccb,
+	0x2ccd, 0x2ccd,
+	0x2ccf, 0x2ccf,
+	0x2cd1, 0x2cd1,
+	0x2cd3, 0x2cd3,
+	0x2cd5, 0x2cd5,
+	0x2cd7, 0x2cd7,
+	0x2cd9, 0x2cd9,
+	0x2cdb, 0x2cdb,
+	0x2cdd, 0x2cdd,
+	0x2cdf, 0x2cdf,
+	0x2ce1, 0x2ce1,
+	0x2ce3, 0x2ce3,
+	0x2cec, 0x2cec,
+	0x2cee, 0x2cee,
+	0x2d00, 0x2d25,
+	0xa641, 0xa641,
+	0xa643, 0xa643,
+	0xa645, 0xa645,
+	0xa647, 0xa647,
+	0xa649, 0xa649,
+	0xa64b, 0xa64b,
+	0xa64d, 0xa64d,
+	0xa64f, 0xa64f,
+	0xa651, 0xa651,
+	0xa653, 0xa653,
+	0xa655, 0xa655,
+	0xa657, 0xa657,
+	0xa659, 0xa659,
+	0xa65b, 0xa65b,
+	0xa65d, 0xa65d,
+	0xa65f, 0xa65f,
+	0xa663, 0xa663,
+	0xa665, 0xa665,
+	0xa667, 0xa667,
+	0xa669, 0xa669,
+	0xa66b, 0xa66b,
+	0xa66d, 0xa66d,
+	0xa681, 0xa681,
+	0xa683, 0xa683,
+	0xa685, 0xa685,
+	0xa687, 0xa687,
+	0xa689, 0xa689,
+	0xa68b, 0xa68b,
+	0xa68d, 0xa68d,
+	0xa68f, 0xa68f,
+	0xa691, 0xa691,
+	0xa693, 0xa693,
+	0xa695, 0xa695,
+	0xa697, 0xa697,
+	0xa723, 0xa723,
+	0xa725, 0xa725,
+	0xa727, 0xa727,
+	0xa729, 0xa729,
+	0xa72b, 0xa72b,
+	0xa72d, 0xa72d,
+	0xa72f, 0xa72f,
+	0xa733, 0xa733,
+	0xa735, 0xa735,
+	0xa737, 0xa737,
+	0xa739, 0xa739,
+	0xa73b, 0xa73b,
+	0xa73d, 0xa73d,
+	0xa73f, 0xa73f,
+	0xa741, 0xa741,
+	0xa743, 0xa743,
+	0xa745, 0xa745,
+	0xa747, 0xa747,
+	0xa749, 0xa749,
+	0xa74b, 0xa74b,
+	0xa74d, 0xa74d,
+	0xa74f, 0xa74f,
+	0xa751, 0xa751,
+	0xa753, 0xa753,
+	0xa755, 0xa755,
+	0xa757, 0xa757,
+	0xa759, 0xa759,
+	0xa75b, 0xa75b,
+	0xa75d, 0xa75d,
+	0xa75f, 0xa75f,
+	0xa761, 0xa761,
+	0xa763, 0xa763,
+	0xa765, 0xa765,
+	0xa767, 0xa767,
+	0xa769, 0xa769,
+	0xa76b, 0xa76b,
+	0xa76d, 0xa76d,
+	0xa76f, 0xa76f,
+	0xa77a, 0xa77a,
+	0xa77c, 0xa77c,
+	0xa77f, 0xa77f,
+	0xa781, 0xa781,
+	0xa783, 0xa783,
+	0xa785, 0xa785,
+	0xa787, 0xa787,
+	0xa78c, 0xa78c,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff41, 0xff5a,
+	0x10428, 0x1044f,
+}; /* CR_Changes_When_Uppercased */
+
+/* 'Changes_When_Titlecased': Derived Property */
+static const OnigCodePoint CR_Changes_When_Titlecased[] = {
+	574,
+	0x0061, 0x007a,
+	0x00b5, 0x00b5,
+	0x00df, 0x00f6,
+	0x00f8, 0x00ff,
+	0x0101, 0x0101,
+	0x0103, 0x0103,
+	0x0105, 0x0105,
+	0x0107, 0x0107,
+	0x0109, 0x0109,
+	0x010b, 0x010b,
+	0x010d, 0x010d,
+	0x010f, 0x010f,
+	0x0111, 0x0111,
+	0x0113, 0x0113,
+	0x0115, 0x0115,
+	0x0117, 0x0117,
+	0x0119, 0x0119,
+	0x011b, 0x011b,
+	0x011d, 0x011d,
+	0x011f, 0x011f,
+	0x0121, 0x0121,
+	0x0123, 0x0123,
+	0x0125, 0x0125,
+	0x0127, 0x0127,
+	0x0129, 0x0129,
+	0x012b, 0x012b,
+	0x012d, 0x012d,
+	0x012f, 0x012f,
+	0x0131, 0x0131,
+	0x0133, 0x0133,
+	0x0135, 0x0135,
+	0x0137, 0x0137,
+	0x013a, 0x013a,
+	0x013c, 0x013c,
+	0x013e, 0x013e,
+	0x0140, 0x0140,
+	0x0142, 0x0142,
+	0x0144, 0x0144,
+	0x0146, 0x0146,
+	0x0148, 0x0149,
+	0x014b, 0x014b,
+	0x014d, 0x014d,
+	0x014f, 0x014f,
+	0x0151, 0x0151,
+	0x0153, 0x0153,
+	0x0155, 0x0155,
+	0x0157, 0x0157,
+	0x0159, 0x0159,
+	0x015b, 0x015b,
+	0x015d, 0x015d,
+	0x015f, 0x015f,
+	0x0161, 0x0161,
+	0x0163, 0x0163,
+	0x0165, 0x0165,
+	0x0167, 0x0167,
+	0x0169, 0x0169,
+	0x016b, 0x016b,
+	0x016d, 0x016d,
+	0x016f, 0x016f,
+	0x0171, 0x0171,
+	0x0173, 0x0173,
+	0x0175, 0x0175,
+	0x0177, 0x0177,
+	0x017a, 0x017a,
+	0x017c, 0x017c,
+	0x017e, 0x0180,
+	0x0183, 0x0183,
+	0x0185, 0x0185,
+	0x0188, 0x0188,
+	0x018c, 0x018c,
+	0x0192, 0x0192,
+	0x0195, 0x0195,
+	0x0199, 0x019a,
+	0x019e, 0x019e,
+	0x01a1, 0x01a1,
+	0x01a3, 0x01a3,
+	0x01a5, 0x01a5,
+	0x01a8, 0x01a8,
+	0x01ad, 0x01ad,
+	0x01b0, 0x01b0,
+	0x01b4, 0x01b4,
+	0x01b6, 0x01b6,
+	0x01b9, 0x01b9,
+	0x01bd, 0x01bd,
+	0x01bf, 0x01bf,
+	0x01c4, 0x01c4,
+	0x01c6, 0x01c7,
+	0x01c9, 0x01ca,
+	0x01cc, 0x01cc,
+	0x01ce, 0x01ce,
+	0x01d0, 0x01d0,
+	0x01d2, 0x01d2,
+	0x01d4, 0x01d4,
+	0x01d6, 0x01d6,
+	0x01d8, 0x01d8,
+	0x01da, 0x01da,
+	0x01dc, 0x01dd,
+	0x01df, 0x01df,
+	0x01e1, 0x01e1,
+	0x01e3, 0x01e3,
+	0x01e5, 0x01e5,
+	0x01e7, 0x01e7,
+	0x01e9, 0x01e9,
+	0x01eb, 0x01eb,
+	0x01ed, 0x01ed,
+	0x01ef, 0x01f1,
+	0x01f3, 0x01f3,
+	0x01f5, 0x01f5,
+	0x01f9, 0x01f9,
+	0x01fb, 0x01fb,
+	0x01fd, 0x01fd,
+	0x01ff, 0x01ff,
+	0x0201, 0x0201,
+	0x0203, 0x0203,
+	0x0205, 0x0205,
+	0x0207, 0x0207,
+	0x0209, 0x0209,
+	0x020b, 0x020b,
+	0x020d, 0x020d,
+	0x020f, 0x020f,
+	0x0211, 0x0211,
+	0x0213, 0x0213,
+	0x0215, 0x0215,
+	0x0217, 0x0217,
+	0x0219, 0x0219,
+	0x021b, 0x021b,
+	0x021d, 0x021d,
+	0x021f, 0x021f,
+	0x0223, 0x0223,
+	0x0225, 0x0225,
+	0x0227, 0x0227,
+	0x0229, 0x0229,
+	0x022b, 0x022b,
+	0x022d, 0x022d,
+	0x022f, 0x022f,
+	0x0231, 0x0231,
+	0x0233, 0x0233,
+	0x023c, 0x023c,
+	0x023f, 0x0240,
+	0x0242, 0x0242,
+	0x0247, 0x0247,
+	0x0249, 0x0249,
+	0x024b, 0x024b,
+	0x024d, 0x024d,
+	0x024f, 0x0254,
+	0x0256, 0x0257,
+	0x0259, 0x0259,
+	0x025b, 0x025b,
+	0x0260, 0x0260,
+	0x0263, 0x0263,
+	0x0268, 0x0269,
+	0x026b, 0x026b,
+	0x026f, 0x026f,
+	0x0271, 0x0272,
+	0x0275, 0x0275,
+	0x027d, 0x027d,
+	0x0280, 0x0280,
+	0x0283, 0x0283,
+	0x0288, 0x028c,
+	0x0292, 0x0292,
+	0x0345, 0x0345,
+	0x0371, 0x0371,
+	0x0373, 0x0373,
+	0x0377, 0x0377,
+	0x037b, 0x037d,
+	0x0390, 0x0390,
+	0x03ac, 0x03ce,
+	0x03d0, 0x03d1,
+	0x03d5, 0x03d7,
+	0x03d9, 0x03d9,
+	0x03db, 0x03db,
+	0x03dd, 0x03dd,
+	0x03df, 0x03df,
+	0x03e1, 0x03e1,
+	0x03e3, 0x03e3,
+	0x03e5, 0x03e5,
+	0x03e7, 0x03e7,
+	0x03e9, 0x03e9,
+	0x03eb, 0x03eb,
+	0x03ed, 0x03ed,
+	0x03ef, 0x03f2,
+	0x03f5, 0x03f5,
+	0x03f8, 0x03f8,
+	0x03fb, 0x03fb,
+	0x0430, 0x045f,
+	0x0461, 0x0461,
+	0x0463, 0x0463,
+	0x0465, 0x0465,
+	0x0467, 0x0467,
+	0x0469, 0x0469,
+	0x046b, 0x046b,
+	0x046d, 0x046d,
+	0x046f, 0x046f,
+	0x0471, 0x0471,
+	0x0473, 0x0473,
+	0x0475, 0x0475,
+	0x0477, 0x0477,
+	0x0479, 0x0479,
+	0x047b, 0x047b,
+	0x047d, 0x047d,
+	0x047f, 0x047f,
+	0x0481, 0x0481,
+	0x048b, 0x048b,
+	0x048d, 0x048d,
+	0x048f, 0x048f,
+	0x0491, 0x0491,
+	0x0493, 0x0493,
+	0x0495, 0x0495,
+	0x0497, 0x0497,
+	0x0499, 0x0499,
+	0x049b, 0x049b,
+	0x049d, 0x049d,
+	0x049f, 0x049f,
+	0x04a1, 0x04a1,
+	0x04a3, 0x04a3,
+	0x04a5, 0x04a5,
+	0x04a7, 0x04a7,
+	0x04a9, 0x04a9,
+	0x04ab, 0x04ab,
+	0x04ad, 0x04ad,
+	0x04af, 0x04af,
+	0x04b1, 0x04b1,
+	0x04b3, 0x04b3,
+	0x04b5, 0x04b5,
+	0x04b7, 0x04b7,
+	0x04b9, 0x04b9,
+	0x04bb, 0x04bb,
+	0x04bd, 0x04bd,
+	0x04bf, 0x04bf,
+	0x04c2, 0x04c2,
+	0x04c4, 0x04c4,
+	0x04c6, 0x04c6,
+	0x04c8, 0x04c8,
+	0x04ca, 0x04ca,
+	0x04cc, 0x04cc,
+	0x04ce, 0x04cf,
+	0x04d1, 0x04d1,
+	0x04d3, 0x04d3,
+	0x04d5, 0x04d5,
+	0x04d7, 0x04d7,
+	0x04d9, 0x04d9,
+	0x04db, 0x04db,
+	0x04dd, 0x04dd,
+	0x04df, 0x04df,
+	0x04e1, 0x04e1,
+	0x04e3, 0x04e3,
+	0x04e5, 0x04e5,
+	0x04e7, 0x04e7,
+	0x04e9, 0x04e9,
+	0x04eb, 0x04eb,
+	0x04ed, 0x04ed,
+	0x04ef, 0x04ef,
+	0x04f1, 0x04f1,
+	0x04f3, 0x04f3,
+	0x04f5, 0x04f5,
+	0x04f7, 0x04f7,
+	0x04f9, 0x04f9,
+	0x04fb, 0x04fb,
+	0x04fd, 0x04fd,
+	0x04ff, 0x04ff,
+	0x0501, 0x0501,
+	0x0503, 0x0503,
+	0x0505, 0x0505,
+	0x0507, 0x0507,
+	0x0509, 0x0509,
+	0x050b, 0x050b,
+	0x050d, 0x050d,
+	0x050f, 0x050f,
+	0x0511, 0x0511,
+	0x0513, 0x0513,
+	0x0515, 0x0515,
+	0x0517, 0x0517,
+	0x0519, 0x0519,
+	0x051b, 0x051b,
+	0x051d, 0x051d,
+	0x051f, 0x051f,
+	0x0521, 0x0521,
+	0x0523, 0x0523,
+	0x0525, 0x0525,
+	0x0561, 0x0587,
+	0x1d79, 0x1d79,
+	0x1d7d, 0x1d7d,
+	0x1e01, 0x1e01,
+	0x1e03, 0x1e03,
+	0x1e05, 0x1e05,
+	0x1e07, 0x1e07,
+	0x1e09, 0x1e09,
+	0x1e0b, 0x1e0b,
+	0x1e0d, 0x1e0d,
+	0x1e0f, 0x1e0f,
+	0x1e11, 0x1e11,
+	0x1e13, 0x1e13,
+	0x1e15, 0x1e15,
+	0x1e17, 0x1e17,
+	0x1e19, 0x1e19,
+	0x1e1b, 0x1e1b,
+	0x1e1d, 0x1e1d,
+	0x1e1f, 0x1e1f,
+	0x1e21, 0x1e21,
+	0x1e23, 0x1e23,
+	0x1e25, 0x1e25,
+	0x1e27, 0x1e27,
+	0x1e29, 0x1e29,
+	0x1e2b, 0x1e2b,
+	0x1e2d, 0x1e2d,
+	0x1e2f, 0x1e2f,
+	0x1e31, 0x1e31,
+	0x1e33, 0x1e33,
+	0x1e35, 0x1e35,
+	0x1e37, 0x1e37,
+	0x1e39, 0x1e39,
+	0x1e3b, 0x1e3b,
+	0x1e3d, 0x1e3d,
+	0x1e3f, 0x1e3f,
+	0x1e41, 0x1e41,
+	0x1e43, 0x1e43,
+	0x1e45, 0x1e45,
+	0x1e47, 0x1e47,
+	0x1e49, 0x1e49,
+	0x1e4b, 0x1e4b,
+	0x1e4d, 0x1e4d,
+	0x1e4f, 0x1e4f,
+	0x1e51, 0x1e51,
+	0x1e53, 0x1e53,
+	0x1e55, 0x1e55,
+	0x1e57, 0x1e57,
+	0x1e59, 0x1e59,
+	0x1e5b, 0x1e5b,
+	0x1e5d, 0x1e5d,
+	0x1e5f, 0x1e5f,
+	0x1e61, 0x1e61,
+	0x1e63, 0x1e63,
+	0x1e65, 0x1e65,
+	0x1e67, 0x1e67,
+	0x1e69, 0x1e69,
+	0x1e6b, 0x1e6b,
+	0x1e6d, 0x1e6d,
+	0x1e6f, 0x1e6f,
+	0x1e71, 0x1e71,
+	0x1e73, 0x1e73,
+	0x1e75, 0x1e75,
+	0x1e77, 0x1e77,
+	0x1e79, 0x1e79,
+	0x1e7b, 0x1e7b,
+	0x1e7d, 0x1e7d,
+	0x1e7f, 0x1e7f,
+	0x1e81, 0x1e81,
+	0x1e83, 0x1e83,
+	0x1e85, 0x1e85,
+	0x1e87, 0x1e87,
+	0x1e89, 0x1e89,
+	0x1e8b, 0x1e8b,
+	0x1e8d, 0x1e8d,
+	0x1e8f, 0x1e8f,
+	0x1e91, 0x1e91,
+	0x1e93, 0x1e93,
+	0x1e95, 0x1e9b,
+	0x1ea1, 0x1ea1,
+	0x1ea3, 0x1ea3,
+	0x1ea5, 0x1ea5,
+	0x1ea7, 0x1ea7,
+	0x1ea9, 0x1ea9,
+	0x1eab, 0x1eab,
+	0x1ead, 0x1ead,
+	0x1eaf, 0x1eaf,
+	0x1eb1, 0x1eb1,
+	0x1eb3, 0x1eb3,
+	0x1eb5, 0x1eb5,
+	0x1eb7, 0x1eb7,
+	0x1eb9, 0x1eb9,
+	0x1ebb, 0x1ebb,
+	0x1ebd, 0x1ebd,
+	0x1ebf, 0x1ebf,
+	0x1ec1, 0x1ec1,
+	0x1ec3, 0x1ec3,
+	0x1ec5, 0x1ec5,
+	0x1ec7, 0x1ec7,
+	0x1ec9, 0x1ec9,
+	0x1ecb, 0x1ecb,
+	0x1ecd, 0x1ecd,
+	0x1ecf, 0x1ecf,
+	0x1ed1, 0x1ed1,
+	0x1ed3, 0x1ed3,
+	0x1ed5, 0x1ed5,
+	0x1ed7, 0x1ed7,
+	0x1ed9, 0x1ed9,
+	0x1edb, 0x1edb,
+	0x1edd, 0x1edd,
+	0x1edf, 0x1edf,
+	0x1ee1, 0x1ee1,
+	0x1ee3, 0x1ee3,
+	0x1ee5, 0x1ee5,
+	0x1ee7, 0x1ee7,
+	0x1ee9, 0x1ee9,
+	0x1eeb, 0x1eeb,
+	0x1eed, 0x1eed,
+	0x1eef, 0x1eef,
+	0x1ef1, 0x1ef1,
+	0x1ef3, 0x1ef3,
+	0x1ef5, 0x1ef5,
+	0x1ef7, 0x1ef7,
+	0x1ef9, 0x1ef9,
+	0x1efb, 0x1efb,
+	0x1efd, 0x1efd,
+	0x1eff, 0x1f07,
+	0x1f10, 0x1f15,
+	0x1f20, 0x1f27,
+	0x1f30, 0x1f37,
+	0x1f40, 0x1f45,
+	0x1f50, 0x1f57,
+	0x1f60, 0x1f67,
+	0x1f70, 0x1f7d,
+	0x1f80, 0x1f87,
+	0x1f90, 0x1f97,
+	0x1fa0, 0x1fa7,
+	0x1fb0, 0x1fb4,
+	0x1fb6, 0x1fb7,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fc7,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fd7,
+	0x1fe0, 0x1fe7,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ff7,
+	0x214e, 0x214e,
+	0x2170, 0x217f,
+	0x2184, 0x2184,
+	0x24d0, 0x24e9,
+	0x2c30, 0x2c5e,
+	0x2c61, 0x2c61,
+	0x2c65, 0x2c66,
+	0x2c68, 0x2c68,
+	0x2c6a, 0x2c6a,
+	0x2c6c, 0x2c6c,
+	0x2c73, 0x2c73,
+	0x2c76, 0x2c76,
+	0x2c81, 0x2c81,
+	0x2c83, 0x2c83,
+	0x2c85, 0x2c85,
+	0x2c87, 0x2c87,
+	0x2c89, 0x2c89,
+	0x2c8b, 0x2c8b,
+	0x2c8d, 0x2c8d,
+	0x2c8f, 0x2c8f,
+	0x2c91, 0x2c91,
+	0x2c93, 0x2c93,
+	0x2c95, 0x2c95,
+	0x2c97, 0x2c97,
+	0x2c99, 0x2c99,
+	0x2c9b, 0x2c9b,
+	0x2c9d, 0x2c9d,
+	0x2c9f, 0x2c9f,
+	0x2ca1, 0x2ca1,
+	0x2ca3, 0x2ca3,
+	0x2ca5, 0x2ca5,
+	0x2ca7, 0x2ca7,
+	0x2ca9, 0x2ca9,
+	0x2cab, 0x2cab,
+	0x2cad, 0x2cad,
+	0x2caf, 0x2caf,
+	0x2cb1, 0x2cb1,
+	0x2cb3, 0x2cb3,
+	0x2cb5, 0x2cb5,
+	0x2cb7, 0x2cb7,
+	0x2cb9, 0x2cb9,
+	0x2cbb, 0x2cbb,
+	0x2cbd, 0x2cbd,
+	0x2cbf, 0x2cbf,
+	0x2cc1, 0x2cc1,
+	0x2cc3, 0x2cc3,
+	0x2cc5, 0x2cc5,
+	0x2cc7, 0x2cc7,
+	0x2cc9, 0x2cc9,
+	0x2ccb, 0x2ccb,
+	0x2ccd, 0x2ccd,
+	0x2ccf, 0x2ccf,
+	0x2cd1, 0x2cd1,
+	0x2cd3, 0x2cd3,
+	0x2cd5, 0x2cd5,
+	0x2cd7, 0x2cd7,
+	0x2cd9, 0x2cd9,
+	0x2cdb, 0x2cdb,
+	0x2cdd, 0x2cdd,
+	0x2cdf, 0x2cdf,
+	0x2ce1, 0x2ce1,
+	0x2ce3, 0x2ce3,
+	0x2cec, 0x2cec,
+	0x2cee, 0x2cee,
+	0x2d00, 0x2d25,
+	0xa641, 0xa641,
+	0xa643, 0xa643,
+	0xa645, 0xa645,
+	0xa647, 0xa647,
+	0xa649, 0xa649,
+	0xa64b, 0xa64b,
+	0xa64d, 0xa64d,
+	0xa64f, 0xa64f,
+	0xa651, 0xa651,
+	0xa653, 0xa653,
+	0xa655, 0xa655,
+	0xa657, 0xa657,
+	0xa659, 0xa659,
+	0xa65b, 0xa65b,
+	0xa65d, 0xa65d,
+	0xa65f, 0xa65f,
+	0xa663, 0xa663,
+	0xa665, 0xa665,
+	0xa667, 0xa667,
+	0xa669, 0xa669,
+	0xa66b, 0xa66b,
+	0xa66d, 0xa66d,
+	0xa681, 0xa681,
+	0xa683, 0xa683,
+	0xa685, 0xa685,
+	0xa687, 0xa687,
+	0xa689, 0xa689,
+	0xa68b, 0xa68b,
+	0xa68d, 0xa68d,
+	0xa68f, 0xa68f,
+	0xa691, 0xa691,
+	0xa693, 0xa693,
+	0xa695, 0xa695,
+	0xa697, 0xa697,
+	0xa723, 0xa723,
+	0xa725, 0xa725,
+	0xa727, 0xa727,
+	0xa729, 0xa729,
+	0xa72b, 0xa72b,
+	0xa72d, 0xa72d,
+	0xa72f, 0xa72f,
+	0xa733, 0xa733,
+	0xa735, 0xa735,
+	0xa737, 0xa737,
+	0xa739, 0xa739,
+	0xa73b, 0xa73b,
+	0xa73d, 0xa73d,
+	0xa73f, 0xa73f,
+	0xa741, 0xa741,
+	0xa743, 0xa743,
+	0xa745, 0xa745,
+	0xa747, 0xa747,
+	0xa749, 0xa749,
+	0xa74b, 0xa74b,
+	0xa74d, 0xa74d,
+	0xa74f, 0xa74f,
+	0xa751, 0xa751,
+	0xa753, 0xa753,
+	0xa755, 0xa755,
+	0xa757, 0xa757,
+	0xa759, 0xa759,
+	0xa75b, 0xa75b,
+	0xa75d, 0xa75d,
+	0xa75f, 0xa75f,
+	0xa761, 0xa761,
+	0xa763, 0xa763,
+	0xa765, 0xa765,
+	0xa767, 0xa767,
+	0xa769, 0xa769,
+	0xa76b, 0xa76b,
+	0xa76d, 0xa76d,
+	0xa76f, 0xa76f,
+	0xa77a, 0xa77a,
+	0xa77c, 0xa77c,
+	0xa77f, 0xa77f,
+	0xa781, 0xa781,
+	0xa783, 0xa783,
+	0xa785, 0xa785,
+	0xa787, 0xa787,
+	0xa78c, 0xa78c,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff41, 0xff5a,
+	0x10428, 0x1044f,
+}; /* CR_Changes_When_Titlecased */
+
+/* 'Changes_When_Casefolded': Derived Property */
+static const OnigCodePoint CR_Changes_When_Casefolded[] = {
+	568,
+	0x0041, 0x005a,
+	0x00b5, 0x00b5,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00df,
+	0x0100, 0x0100,
+	0x0102, 0x0102,
+	0x0104, 0x0104,
+	0x0106, 0x0106,
+	0x0108, 0x0108,
+	0x010a, 0x010a,
+	0x010c, 0x010c,
+	0x010e, 0x010e,
+	0x0110, 0x0110,
+	0x0112, 0x0112,
+	0x0114, 0x0114,
+	0x0116, 0x0116,
+	0x0118, 0x0118,
+	0x011a, 0x011a,
+	0x011c, 0x011c,
+	0x011e, 0x011e,
+	0x0120, 0x0120,
+	0x0122, 0x0122,
+	0x0124, 0x0124,
+	0x0126, 0x0126,
+	0x0128, 0x0128,
+	0x012a, 0x012a,
+	0x012c, 0x012c,
+	0x012e, 0x012e,
+	0x0130, 0x0130,
+	0x0132, 0x0132,
+	0x0134, 0x0134,
+	0x0136, 0x0136,
+	0x0139, 0x0139,
+	0x013b, 0x013b,
+	0x013d, 0x013d,
+	0x013f, 0x013f,
+	0x0141, 0x0141,
+	0x0143, 0x0143,
+	0x0145, 0x0145,
+	0x0147, 0x0147,
+	0x0149, 0x014a,
+	0x014c, 0x014c,
+	0x014e, 0x014e,
+	0x0150, 0x0150,
+	0x0152, 0x0152,
+	0x0154, 0x0154,
+	0x0156, 0x0156,
+	0x0158, 0x0158,
+	0x015a, 0x015a,
+	0x015c, 0x015c,
+	0x015e, 0x015e,
+	0x0160, 0x0160,
+	0x0162, 0x0162,
+	0x0164, 0x0164,
+	0x0166, 0x0166,
+	0x0168, 0x0168,
+	0x016a, 0x016a,
+	0x016c, 0x016c,
+	0x016e, 0x016e,
+	0x0170, 0x0170,
+	0x0172, 0x0172,
+	0x0174, 0x0174,
+	0x0176, 0x0176,
+	0x0178, 0x0179,
+	0x017b, 0x017b,
+	0x017d, 0x017d,
+	0x017f, 0x017f,
+	0x0181, 0x0182,
+	0x0184, 0x0184,
+	0x0186, 0x0187,
+	0x0189, 0x018b,
+	0x018e, 0x0191,
+	0x0193, 0x0194,
+	0x0196, 0x0198,
+	0x019c, 0x019d,
+	0x019f, 0x01a0,
+	0x01a2, 0x01a2,
+	0x01a4, 0x01a4,
+	0x01a6, 0x01a7,
+	0x01a9, 0x01a9,
+	0x01ac, 0x01ac,
+	0x01ae, 0x01af,
+	0x01b1, 0x01b3,
+	0x01b5, 0x01b5,
+	0x01b7, 0x01b8,
+	0x01bc, 0x01bc,
+	0x01c4, 0x01c5,
+	0x01c7, 0x01c8,
+	0x01ca, 0x01cb,
+	0x01cd, 0x01cd,
+	0x01cf, 0x01cf,
+	0x01d1, 0x01d1,
+	0x01d3, 0x01d3,
+	0x01d5, 0x01d5,
+	0x01d7, 0x01d7,
+	0x01d9, 0x01d9,
+	0x01db, 0x01db,
+	0x01de, 0x01de,
+	0x01e0, 0x01e0,
+	0x01e2, 0x01e2,
+	0x01e4, 0x01e4,
+	0x01e6, 0x01e6,
+	0x01e8, 0x01e8,
+	0x01ea, 0x01ea,
+	0x01ec, 0x01ec,
+	0x01ee, 0x01ee,
+	0x01f1, 0x01f2,
+	0x01f4, 0x01f4,
+	0x01f6, 0x01f8,
+	0x01fa, 0x01fa,
+	0x01fc, 0x01fc,
+	0x01fe, 0x01fe,
+	0x0200, 0x0200,
+	0x0202, 0x0202,
+	0x0204, 0x0204,
+	0x0206, 0x0206,
+	0x0208, 0x0208,
+	0x020a, 0x020a,
+	0x020c, 0x020c,
+	0x020e, 0x020e,
+	0x0210, 0x0210,
+	0x0212, 0x0212,
+	0x0214, 0x0214,
+	0x0216, 0x0216,
+	0x0218, 0x0218,
+	0x021a, 0x021a,
+	0x021c, 0x021c,
+	0x021e, 0x021e,
+	0x0220, 0x0220,
+	0x0222, 0x0222,
+	0x0224, 0x0224,
+	0x0226, 0x0226,
+	0x0228, 0x0228,
+	0x022a, 0x022a,
+	0x022c, 0x022c,
+	0x022e, 0x022e,
+	0x0230, 0x0230,
+	0x0232, 0x0232,
+	0x023a, 0x023b,
+	0x023d, 0x023e,
+	0x0241, 0x0241,
+	0x0243, 0x0246,
+	0x0248, 0x0248,
+	0x024a, 0x024a,
+	0x024c, 0x024c,
+	0x024e, 0x024e,
+	0x0345, 0x0345,
+	0x0370, 0x0370,
+	0x0372, 0x0372,
+	0x0376, 0x0376,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x038f,
+	0x0391, 0x03a1,
+	0x03a3, 0x03ab,
+	0x03c2, 0x03c2,
+	0x03cf, 0x03d1,
+	0x03d5, 0x03d6,
+	0x03d8, 0x03d8,
+	0x03da, 0x03da,
+	0x03dc, 0x03dc,
+	0x03de, 0x03de,
+	0x03e0, 0x03e0,
+	0x03e2, 0x03e2,
+	0x03e4, 0x03e4,
+	0x03e6, 0x03e6,
+	0x03e8, 0x03e8,
+	0x03ea, 0x03ea,
+	0x03ec, 0x03ec,
+	0x03ee, 0x03ee,
+	0x03f0, 0x03f1,
+	0x03f4, 0x03f5,
+	0x03f7, 0x03f7,
+	0x03f9, 0x03fa,
+	0x03fd, 0x042f,
+	0x0460, 0x0460,
+	0x0462, 0x0462,
+	0x0464, 0x0464,
+	0x0466, 0x0466,
+	0x0468, 0x0468,
+	0x046a, 0x046a,
+	0x046c, 0x046c,
+	0x046e, 0x046e,
+	0x0470, 0x0470,
+	0x0472, 0x0472,
+	0x0474, 0x0474,
+	0x0476, 0x0476,
+	0x0478, 0x0478,
+	0x047a, 0x047a,
+	0x047c, 0x047c,
+	0x047e, 0x047e,
+	0x0480, 0x0480,
+	0x048a, 0x048a,
+	0x048c, 0x048c,
+	0x048e, 0x048e,
+	0x0490, 0x0490,
+	0x0492, 0x0492,
+	0x0494, 0x0494,
+	0x0496, 0x0496,
+	0x0498, 0x0498,
+	0x049a, 0x049a,
+	0x049c, 0x049c,
+	0x049e, 0x049e,
+	0x04a0, 0x04a0,
+	0x04a2, 0x04a2,
+	0x04a4, 0x04a4,
+	0x04a6, 0x04a6,
+	0x04a8, 0x04a8,
+	0x04aa, 0x04aa,
+	0x04ac, 0x04ac,
+	0x04ae, 0x04ae,
+	0x04b0, 0x04b0,
+	0x04b2, 0x04b2,
+	0x04b4, 0x04b4,
+	0x04b6, 0x04b6,
+	0x04b8, 0x04b8,
+	0x04ba, 0x04ba,
+	0x04bc, 0x04bc,
+	0x04be, 0x04be,
+	0x04c0, 0x04c1,
+	0x04c3, 0x04c3,
+	0x04c5, 0x04c5,
+	0x04c7, 0x04c7,
+	0x04c9, 0x04c9,
+	0x04cb, 0x04cb,
+	0x04cd, 0x04cd,
+	0x04d0, 0x04d0,
+	0x04d2, 0x04d2,
+	0x04d4, 0x04d4,
+	0x04d6, 0x04d6,
+	0x04d8, 0x04d8,
+	0x04da, 0x04da,
+	0x04dc, 0x04dc,
+	0x04de, 0x04de,
+	0x04e0, 0x04e0,
+	0x04e2, 0x04e2,
+	0x04e4, 0x04e4,
+	0x04e6, 0x04e6,
+	0x04e8, 0x04e8,
+	0x04ea, 0x04ea,
+	0x04ec, 0x04ec,
+	0x04ee, 0x04ee,
+	0x04f0, 0x04f0,
+	0x04f2, 0x04f2,
+	0x04f4, 0x04f4,
+	0x04f6, 0x04f6,
+	0x04f8, 0x04f8,
+	0x04fa, 0x04fa,
+	0x04fc, 0x04fc,
+	0x04fe, 0x04fe,
+	0x0500, 0x0500,
+	0x0502, 0x0502,
+	0x0504, 0x0504,
+	0x0506, 0x0506,
+	0x0508, 0x0508,
+	0x050a, 0x050a,
+	0x050c, 0x050c,
+	0x050e, 0x050e,
+	0x0510, 0x0510,
+	0x0512, 0x0512,
+	0x0514, 0x0514,
+	0x0516, 0x0516,
+	0x0518, 0x0518,
+	0x051a, 0x051a,
+	0x051c, 0x051c,
+	0x051e, 0x051e,
+	0x0520, 0x0520,
+	0x0522, 0x0522,
+	0x0524, 0x0524,
+	0x0531, 0x0556,
+	0x0587, 0x0587,
+	0x10a0, 0x10c5,
+	0x1e00, 0x1e00,
+	0x1e02, 0x1e02,
+	0x1e04, 0x1e04,
+	0x1e06, 0x1e06,
+	0x1e08, 0x1e08,
+	0x1e0a, 0x1e0a,
+	0x1e0c, 0x1e0c,
+	0x1e0e, 0x1e0e,
+	0x1e10, 0x1e10,
+	0x1e12, 0x1e12,
+	0x1e14, 0x1e14,
+	0x1e16, 0x1e16,
+	0x1e18, 0x1e18,
+	0x1e1a, 0x1e1a,
+	0x1e1c, 0x1e1c,
+	0x1e1e, 0x1e1e,
+	0x1e20, 0x1e20,
+	0x1e22, 0x1e22,
+	0x1e24, 0x1e24,
+	0x1e26, 0x1e26,
+	0x1e28, 0x1e28,
+	0x1e2a, 0x1e2a,
+	0x1e2c, 0x1e2c,
+	0x1e2e, 0x1e2e,
+	0x1e30, 0x1e30,
+	0x1e32, 0x1e32,
+	0x1e34, 0x1e34,
+	0x1e36, 0x1e36,
+	0x1e38, 0x1e38,
+	0x1e3a, 0x1e3a,
+	0x1e3c, 0x1e3c,
+	0x1e3e, 0x1e3e,
+	0x1e40, 0x1e40,
+	0x1e42, 0x1e42,
+	0x1e44, 0x1e44,
+	0x1e46, 0x1e46,
+	0x1e48, 0x1e48,
+	0x1e4a, 0x1e4a,
+	0x1e4c, 0x1e4c,
+	0x1e4e, 0x1e4e,
+	0x1e50, 0x1e50,
+	0x1e52, 0x1e52,
+	0x1e54, 0x1e54,
+	0x1e56, 0x1e56,
+	0x1e58, 0x1e58,
+	0x1e5a, 0x1e5a,
+	0x1e5c, 0x1e5c,
+	0x1e5e, 0x1e5e,
+	0x1e60, 0x1e60,
+	0x1e62, 0x1e62,
+	0x1e64, 0x1e64,
+	0x1e66, 0x1e66,
+	0x1e68, 0x1e68,
+	0x1e6a, 0x1e6a,
+	0x1e6c, 0x1e6c,
+	0x1e6e, 0x1e6e,
+	0x1e70, 0x1e70,
+	0x1e72, 0x1e72,
+	0x1e74, 0x1e74,
+	0x1e76, 0x1e76,
+	0x1e78, 0x1e78,
+	0x1e7a, 0x1e7a,
+	0x1e7c, 0x1e7c,
+	0x1e7e, 0x1e7e,
+	0x1e80, 0x1e80,
+	0x1e82, 0x1e82,
+	0x1e84, 0x1e84,
+	0x1e86, 0x1e86,
+	0x1e88, 0x1e88,
+	0x1e8a, 0x1e8a,
+	0x1e8c, 0x1e8c,
+	0x1e8e, 0x1e8e,
+	0x1e90, 0x1e90,
+	0x1e92, 0x1e92,
+	0x1e94, 0x1e94,
+	0x1e9a, 0x1e9b,
+	0x1e9e, 0x1e9e,
+	0x1ea0, 0x1ea0,
+	0x1ea2, 0x1ea2,
+	0x1ea4, 0x1ea4,
+	0x1ea6, 0x1ea6,
+	0x1ea8, 0x1ea8,
+	0x1eaa, 0x1eaa,
+	0x1eac, 0x1eac,
+	0x1eae, 0x1eae,
+	0x1eb0, 0x1eb0,
+	0x1eb2, 0x1eb2,
+	0x1eb4, 0x1eb4,
+	0x1eb6, 0x1eb6,
+	0x1eb8, 0x1eb8,
+	0x1eba, 0x1eba,
+	0x1ebc, 0x1ebc,
+	0x1ebe, 0x1ebe,
+	0x1ec0, 0x1ec0,
+	0x1ec2, 0x1ec2,
+	0x1ec4, 0x1ec4,
+	0x1ec6, 0x1ec6,
+	0x1ec8, 0x1ec8,
+	0x1eca, 0x1eca,
+	0x1ecc, 0x1ecc,
+	0x1ece, 0x1ece,
+	0x1ed0, 0x1ed0,
+	0x1ed2, 0x1ed2,
+	0x1ed4, 0x1ed4,
+	0x1ed6, 0x1ed6,
+	0x1ed8, 0x1ed8,
+	0x1eda, 0x1eda,
+	0x1edc, 0x1edc,
+	0x1ede, 0x1ede,
+	0x1ee0, 0x1ee0,
+	0x1ee2, 0x1ee2,
+	0x1ee4, 0x1ee4,
+	0x1ee6, 0x1ee6,
+	0x1ee8, 0x1ee8,
+	0x1eea, 0x1eea,
+	0x1eec, 0x1eec,
+	0x1eee, 0x1eee,
+	0x1ef0, 0x1ef0,
+	0x1ef2, 0x1ef2,
+	0x1ef4, 0x1ef4,
+	0x1ef6, 0x1ef6,
+	0x1ef8, 0x1ef8,
+	0x1efa, 0x1efa,
+	0x1efc, 0x1efc,
+	0x1efe, 0x1efe,
+	0x1f08, 0x1f0f,
+	0x1f18, 0x1f1d,
+	0x1f28, 0x1f2f,
+	0x1f38, 0x1f3f,
+	0x1f48, 0x1f4d,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f5f,
+	0x1f68, 0x1f6f,
+	0x1f80, 0x1faf,
+	0x1fb2, 0x1fb4,
+	0x1fb7, 0x1fbc,
+	0x1fc2, 0x1fc4,
+	0x1fc7, 0x1fcc,
+	0x1fd8, 0x1fdb,
+	0x1fe8, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff7, 0x1ffc,
+	0x2126, 0x2126,
+	0x212a, 0x212b,
+	0x2132, 0x2132,
+	0x2160, 0x216f,
+	0x2183, 0x2183,
+	0x24b6, 0x24cf,
+	0x2c00, 0x2c2e,
+	0x2c60, 0x2c60,
+	0x2c62, 0x2c64,
+	0x2c67, 0x2c67,
+	0x2c69, 0x2c69,
+	0x2c6b, 0x2c6b,
+	0x2c6d, 0x2c70,
+	0x2c72, 0x2c72,
+	0x2c75, 0x2c75,
+	0x2c7e, 0x2c80,
+	0x2c82, 0x2c82,
+	0x2c84, 0x2c84,
+	0x2c86, 0x2c86,
+	0x2c88, 0x2c88,
+	0x2c8a, 0x2c8a,
+	0x2c8c, 0x2c8c,
+	0x2c8e, 0x2c8e,
+	0x2c90, 0x2c90,
+	0x2c92, 0x2c92,
+	0x2c94, 0x2c94,
+	0x2c96, 0x2c96,
+	0x2c98, 0x2c98,
+	0x2c9a, 0x2c9a,
+	0x2c9c, 0x2c9c,
+	0x2c9e, 0x2c9e,
+	0x2ca0, 0x2ca0,
+	0x2ca2, 0x2ca2,
+	0x2ca4, 0x2ca4,
+	0x2ca6, 0x2ca6,
+	0x2ca8, 0x2ca8,
+	0x2caa, 0x2caa,
+	0x2cac, 0x2cac,
+	0x2cae, 0x2cae,
+	0x2cb0, 0x2cb0,
+	0x2cb2, 0x2cb2,
+	0x2cb4, 0x2cb4,
+	0x2cb6, 0x2cb6,
+	0x2cb8, 0x2cb8,
+	0x2cba, 0x2cba,
+	0x2cbc, 0x2cbc,
+	0x2cbe, 0x2cbe,
+	0x2cc0, 0x2cc0,
+	0x2cc2, 0x2cc2,
+	0x2cc4, 0x2cc4,
+	0x2cc6, 0x2cc6,
+	0x2cc8, 0x2cc8,
+	0x2cca, 0x2cca,
+	0x2ccc, 0x2ccc,
+	0x2cce, 0x2cce,
+	0x2cd0, 0x2cd0,
+	0x2cd2, 0x2cd2,
+	0x2cd4, 0x2cd4,
+	0x2cd6, 0x2cd6,
+	0x2cd8, 0x2cd8,
+	0x2cda, 0x2cda,
+	0x2cdc, 0x2cdc,
+	0x2cde, 0x2cde,
+	0x2ce0, 0x2ce0,
+	0x2ce2, 0x2ce2,
+	0x2ceb, 0x2ceb,
+	0x2ced, 0x2ced,
+	0xa640, 0xa640,
+	0xa642, 0xa642,
+	0xa644, 0xa644,
+	0xa646, 0xa646,
+	0xa648, 0xa648,
+	0xa64a, 0xa64a,
+	0xa64c, 0xa64c,
+	0xa64e, 0xa64e,
+	0xa650, 0xa650,
+	0xa652, 0xa652,
+	0xa654, 0xa654,
+	0xa656, 0xa656,
+	0xa658, 0xa658,
+	0xa65a, 0xa65a,
+	0xa65c, 0xa65c,
+	0xa65e, 0xa65e,
+	0xa662, 0xa662,
+	0xa664, 0xa664,
+	0xa666, 0xa666,
+	0xa668, 0xa668,
+	0xa66a, 0xa66a,
+	0xa66c, 0xa66c,
+	0xa680, 0xa680,
+	0xa682, 0xa682,
+	0xa684, 0xa684,
+	0xa686, 0xa686,
+	0xa688, 0xa688,
+	0xa68a, 0xa68a,
+	0xa68c, 0xa68c,
+	0xa68e, 0xa68e,
+	0xa690, 0xa690,
+	0xa692, 0xa692,
+	0xa694, 0xa694,
+	0xa696, 0xa696,
+	0xa722, 0xa722,
+	0xa724, 0xa724,
+	0xa726, 0xa726,
+	0xa728, 0xa728,
+	0xa72a, 0xa72a,
+	0xa72c, 0xa72c,
+	0xa72e, 0xa72e,
+	0xa732, 0xa732,
+	0xa734, 0xa734,
+	0xa736, 0xa736,
+	0xa738, 0xa738,
+	0xa73a, 0xa73a,
+	0xa73c, 0xa73c,
+	0xa73e, 0xa73e,
+	0xa740, 0xa740,
+	0xa742, 0xa742,
+	0xa744, 0xa744,
+	0xa746, 0xa746,
+	0xa748, 0xa748,
+	0xa74a, 0xa74a,
+	0xa74c, 0xa74c,
+	0xa74e, 0xa74e,
+	0xa750, 0xa750,
+	0xa752, 0xa752,
+	0xa754, 0xa754,
+	0xa756, 0xa756,
+	0xa758, 0xa758,
+	0xa75a, 0xa75a,
+	0xa75c, 0xa75c,
+	0xa75e, 0xa75e,
+	0xa760, 0xa760,
+	0xa762, 0xa762,
+	0xa764, 0xa764,
+	0xa766, 0xa766,
+	0xa768, 0xa768,
+	0xa76a, 0xa76a,
+	0xa76c, 0xa76c,
+	0xa76e, 0xa76e,
+	0xa779, 0xa779,
+	0xa77b, 0xa77b,
+	0xa77d, 0xa77e,
+	0xa780, 0xa780,
+	0xa782, 0xa782,
+	0xa784, 0xa784,
+	0xa786, 0xa786,
+	0xa78b, 0xa78b,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff21, 0xff3a,
+	0x10400, 0x10427,
+}; /* CR_Changes_When_Casefolded */
+
+/* 'Changes_When_Casemapped': Derived Property */
+static const OnigCodePoint CR_Changes_When_Casemapped[] = {
+	97,
+	0x0041, 0x005a,
+	0x0061, 0x007a,
+	0x00b5, 0x00b5,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x0137,
+	0x0139, 0x018c,
+	0x018e, 0x019a,
+	0x019c, 0x01a9,
+	0x01ac, 0x01b9,
+	0x01bc, 0x01bd,
+	0x01bf, 0x01bf,
+	0x01c4, 0x0220,
+	0x0222, 0x0233,
+	0x023a, 0x0254,
+	0x0256, 0x0257,
+	0x0259, 0x0259,
+	0x025b, 0x025b,
+	0x0260, 0x0260,
+	0x0263, 0x0263,
+	0x0268, 0x0269,
+	0x026b, 0x026b,
+	0x026f, 0x026f,
+	0x0271, 0x0272,
+	0x0275, 0x0275,
+	0x027d, 0x027d,
+	0x0280, 0x0280,
+	0x0283, 0x0283,
+	0x0288, 0x028c,
+	0x0292, 0x0292,
+	0x0345, 0x0345,
+	0x0370, 0x0373,
+	0x0376, 0x0377,
+	0x037b, 0x037d,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03d1,
+	0x03d5, 0x03f2,
+	0x03f4, 0x03f5,
+	0x03f7, 0x03fb,
+	0x03fd, 0x0481,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0561, 0x0587,
+	0x10a0, 0x10c5,
+	0x1d79, 0x1d79,
+	0x1d7d, 0x1d7d,
+	0x1e00, 0x1e9b,
+	0x1e9e, 0x1e9e,
+	0x1ea0, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x2126, 0x2126,
+	0x212a, 0x212b,
+	0x2132, 0x2132,
+	0x214e, 0x214e,
+	0x2160, 0x217f,
+	0x2183, 0x2184,
+	0x24b6, 0x24e9,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2c70,
+	0x2c72, 0x2c73,
+	0x2c75, 0x2c76,
+	0x2c7e, 0x2ce3,
+	0x2ceb, 0x2cee,
+	0x2d00, 0x2d25,
+	0xa640, 0xa65f,
+	0xa662, 0xa66d,
+	0xa680, 0xa697,
+	0xa722, 0xa72f,
+	0xa732, 0xa76f,
+	0xa779, 0xa787,
+	0xa78b, 0xa78c,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xff21, 0xff3a,
+	0xff41, 0xff5a,
+	0x10400, 0x1044f,
+}; /* CR_Changes_When_Casemapped */
+
+/* 'ID_Start': Derived Property */
+static const OnigCodePoint CR_ID_Start[] = {
+	424,
+	0x0041, 0x005a,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0370, 0x0374,
+	0x0376, 0x0377,
+	0x037a, 0x037d,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x0559,
+	0x0561, 0x0587,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f2,
+	0x0621, 0x064a,
+	0x066e, 0x066f,
+	0x0671, 0x06d3,
+	0x06d5, 0x06d5,
+	0x06e5, 0x06e6,
+	0x06ee, 0x06ef,
+	0x06fa, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x0710,
+	0x0712, 0x072f,
+	0x074d, 0x07a5,
+	0x07b1, 0x07b1,
+	0x07ca, 0x07ea,
+	0x07f4, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0800, 0x0815,
+	0x081a, 0x081a,
+	0x0824, 0x0824,
+	0x0828, 0x0828,
+	0x0904, 0x0939,
+	0x093d, 0x093d,
+	0x0950, 0x0950,
+	0x0958, 0x0961,
+	0x0971, 0x0972,
+	0x0979, 0x097f,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bd, 0x09bd,
+	0x09ce, 0x09ce,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e1,
+	0x09f0, 0x09f1,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a72, 0x0a74,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abd, 0x0abd,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae1,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3d, 0x0b3d,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b61,
+	0x0b71, 0x0b71,
+	0x0b83, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bd0, 0x0bd0,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c3d,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c61,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbd, 0x0cbd,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce1,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d3d,
+	0x0d60, 0x0d61,
+	0x0d7a, 0x0d7f,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0e01, 0x0e30,
+	0x0e32, 0x0e33,
+	0x0e40, 0x0e46,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb0,
+	0x0eb2, 0x0eb3,
+	0x0ebd, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f00,
+	0x0f40, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f88, 0x0f8b,
+	0x1000, 0x102a,
+	0x103f, 0x103f,
+	0x1050, 0x1055,
+	0x105a, 0x105d,
+	0x1061, 0x1061,
+	0x1065, 0x1066,
+	0x106e, 0x1070,
+	0x1075, 0x1081,
+	0x108e, 0x108e,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x1380, 0x138f,
+	0x13a0, 0x13f4,
+	0x1401, 0x166c,
+	0x166f, 0x167f,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	0x16ee, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1711,
+	0x1720, 0x1731,
+	0x1740, 0x1751,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1780, 0x17b3,
+	0x17d7, 0x17d7,
+	0x17dc, 0x17dc,
+	0x1820, 0x1877,
+	0x1880, 0x18a8,
+	0x18aa, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1950, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19c1, 0x19c7,
+	0x1a00, 0x1a16,
+	0x1a20, 0x1a54,
+	0x1aa7, 0x1aa7,
+	0x1b05, 0x1b33,
+	0x1b45, 0x1b4b,
+	0x1b83, 0x1ba0,
+	0x1bae, 0x1baf,
+	0x1c00, 0x1c23,
+	0x1c4d, 0x1c4f,
+	0x1c5a, 0x1c7d,
+	0x1ce9, 0x1cec,
+	0x1cee, 0x1cf1,
+	0x1d00, 0x1dbf,
+	0x1e00, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2118, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x2188,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cee,
+	0x2d00, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x3005, 0x3007,
+	0x3021, 0x3029,
+	0x3031, 0x3035,
+	0x3038, 0x303c,
+	0x3041, 0x3096,
+	0x309b, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa4d0, 0xa4fd,
+	0xa500, 0xa60c,
+	0xa610, 0xa61f,
+	0xa62a, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66e,
+	0xa67f, 0xa697,
+	0xa6a0, 0xa6ef,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa801,
+	0xa803, 0xa805,
+	0xa807, 0xa80a,
+	0xa80c, 0xa822,
+	0xa840, 0xa873,
+	0xa882, 0xa8b3,
+	0xa8f2, 0xa8f7,
+	0xa8fb, 0xa8fb,
+	0xa90a, 0xa925,
+	0xa930, 0xa946,
+	0xa960, 0xa97c,
+	0xa984, 0xa9b2,
+	0xa9cf, 0xa9cf,
+	0xaa00, 0xaa28,
+	0xaa40, 0xaa42,
+	0xaa44, 0xaa4b,
+	0xaa60, 0xaa76,
+	0xaa7a, 0xaa7a,
+	0xaa80, 0xaaaf,
+	0xaab1, 0xaab1,
+	0xaab5, 0xaab6,
+	0xaab9, 0xaabd,
+	0xaac0, 0xaac0,
+	0xaac2, 0xaac2,
+	0xaadb, 0xaadd,
+	0xabc0, 0xabe2,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb1d,
+	0xfb1f, 0xfb28,
+	0xfb2a, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfd3d,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdfb,
+	0xfe70, 0xfe74,
+	0xfe76, 0xfefc,
+	0xff21, 0xff3a,
+	0xff41, 0xff5a,
+	0xff66, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10140, 0x10174,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x103d1, 0x103d5,
+	0x10400, 0x1049d,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a00,
+	0x10a10, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a60, 0x10a7c,
+	0x10b00, 0x10b35,
+	0x10b40, 0x10b55,
+	0x10b60, 0x10b72,
+	0x10c00, 0x10c48,
+	0x11083, 0x110af,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x13000, 0x1342e,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+}; /* CR_ID_Start */
+
+/* 'ID_Continue': Derived Property */
+static const OnigCodePoint CR_ID_Continue[] = {
+	506,
+	0x0030, 0x0039,
+	0x0041, 0x005a,
+	0x005f, 0x005f,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00b7, 0x00b7,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0300, 0x0374,
+	0x0376, 0x0377,
+	0x037a, 0x037d,
+	0x0386, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x0483, 0x0487,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x0559,
+	0x0561, 0x0587,
+	0x0591, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f2,
+	0x0610, 0x061a,
+	0x0621, 0x065e,
+	0x0660, 0x0669,
+	0x066e, 0x06d3,
+	0x06d5, 0x06dc,
+	0x06df, 0x06e8,
+	0x06ea, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x074a,
+	0x074d, 0x07b1,
+	0x07c0, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0800, 0x082d,
+	0x0900, 0x0939,
+	0x093c, 0x094e,
+	0x0950, 0x0955,
+	0x0958, 0x0963,
+	0x0966, 0x096f,
+	0x0971, 0x0972,
+	0x0979, 0x097f,
+	0x0981, 0x0983,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bc, 0x09c4,
+	0x09c7, 0x09c8,
+	0x09cb, 0x09ce,
+	0x09d7, 0x09d7,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e3,
+	0x09e6, 0x09f1,
+	0x0a01, 0x0a03,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a3c, 0x0a3c,
+	0x0a3e, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4d,
+	0x0a51, 0x0a51,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a66, 0x0a75,
+	0x0a81, 0x0a83,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abc, 0x0ac5,
+	0x0ac7, 0x0ac9,
+	0x0acb, 0x0acd,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae3,
+	0x0ae6, 0x0aef,
+	0x0b01, 0x0b03,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3c, 0x0b44,
+	0x0b47, 0x0b48,
+	0x0b4b, 0x0b4d,
+	0x0b56, 0x0b57,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b63,
+	0x0b66, 0x0b6f,
+	0x0b71, 0x0b71,
+	0x0b82, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bbe, 0x0bc2,
+	0x0bc6, 0x0bc8,
+	0x0bca, 0x0bcd,
+	0x0bd0, 0x0bd0,
+	0x0bd7, 0x0bd7,
+	0x0be6, 0x0bef,
+	0x0c01, 0x0c03,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c44,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4d,
+	0x0c55, 0x0c56,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c63,
+	0x0c66, 0x0c6f,
+	0x0c82, 0x0c83,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbc, 0x0cc4,
+	0x0cc6, 0x0cc8,
+	0x0cca, 0x0ccd,
+	0x0cd5, 0x0cd6,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce3,
+	0x0ce6, 0x0cef,
+	0x0d02, 0x0d03,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d44,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4d,
+	0x0d57, 0x0d57,
+	0x0d60, 0x0d63,
+	0x0d66, 0x0d6f,
+	0x0d7a, 0x0d7f,
+	0x0d82, 0x0d83,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0dca, 0x0dca,
+	0x0dcf, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0dd8, 0x0ddf,
+	0x0df2, 0x0df3,
+	0x0e01, 0x0e3a,
+	0x0e40, 0x0e4e,
+	0x0e50, 0x0e59,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb9,
+	0x0ebb, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0ec8, 0x0ecd,
+	0x0ed0, 0x0ed9,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f00,
+	0x0f18, 0x0f19,
+	0x0f20, 0x0f29,
+	0x0f35, 0x0f35,
+	0x0f37, 0x0f37,
+	0x0f39, 0x0f39,
+	0x0f3e, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f71, 0x0f84,
+	0x0f86, 0x0f8b,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x0fc6, 0x0fc6,
+	0x1000, 0x1049,
+	0x1050, 0x109d,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x135f, 0x135f,
+	0x1369, 0x1371,
+	0x1380, 0x138f,
+	0x13a0, 0x13f4,
+	0x1401, 0x166c,
+	0x166f, 0x167f,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	0x16ee, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1714,
+	0x1720, 0x1734,
+	0x1740, 0x1753,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1772, 0x1773,
+	0x1780, 0x17b3,
+	0x17b6, 0x17d3,
+	0x17d7, 0x17d7,
+	0x17dc, 0x17dd,
+	0x17e0, 0x17e9,
+	0x180b, 0x180d,
+	0x1810, 0x1819,
+	0x1820, 0x1877,
+	0x1880, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1920, 0x192b,
+	0x1930, 0x193b,
+	0x1946, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19b0, 0x19c9,
+	0x19d0, 0x19da,
+	0x1a00, 0x1a1b,
+	0x1a20, 0x1a5e,
+	0x1a60, 0x1a7c,
+	0x1a7f, 0x1a89,
+	0x1a90, 0x1a99,
+	0x1aa7, 0x1aa7,
+	0x1b00, 0x1b4b,
+	0x1b50, 0x1b59,
+	0x1b6b, 0x1b73,
+	0x1b80, 0x1baa,
+	0x1bae, 0x1bb9,
+	0x1c00, 0x1c37,
+	0x1c40, 0x1c49,
+	0x1c4d, 0x1c7d,
+	0x1cd0, 0x1cd2,
+	0x1cd4, 0x1cf2,
+	0x1d00, 0x1de6,
+	0x1dfd, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x203f, 0x2040,
+	0x2054, 0x2054,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x20d0, 0x20dc,
+	0x20e1, 0x20e1,
+	0x20e5, 0x20f0,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2118, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x2188,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cf1,
+	0x2d00, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x2de0, 0x2dff,
+	0x3005, 0x3007,
+	0x3021, 0x302f,
+	0x3031, 0x3035,
+	0x3038, 0x303c,
+	0x3041, 0x3096,
+	0x3099, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa4d0, 0xa4fd,
+	0xa500, 0xa60c,
+	0xa610, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66f,
+	0xa67c, 0xa67d,
+	0xa67f, 0xa697,
+	0xa6a0, 0xa6f1,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa827,
+	0xa840, 0xa873,
+	0xa880, 0xa8c4,
+	0xa8d0, 0xa8d9,
+	0xa8e0, 0xa8f7,
+	0xa8fb, 0xa8fb,
+	0xa900, 0xa92d,
+	0xa930, 0xa953,
+	0xa960, 0xa97c,
+	0xa980, 0xa9c0,
+	0xa9cf, 0xa9d9,
+	0xaa00, 0xaa36,
+	0xaa40, 0xaa4d,
+	0xaa50, 0xaa59,
+	0xaa60, 0xaa76,
+	0xaa7a, 0xaa7b,
+	0xaa80, 0xaac2,
+	0xaadb, 0xaadd,
+	0xabc0, 0xabea,
+	0xabec, 0xabed,
+	0xabf0, 0xabf9,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb28,
+	0xfb2a, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfd3d,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdfb,
+	0xfe00, 0xfe0f,
+	0xfe20, 0xfe26,
+	0xfe33, 0xfe34,
+	0xfe4d, 0xfe4f,
+	0xfe70, 0xfe74,
+	0xfe76, 0xfefc,
+	0xff10, 0xff19,
+	0xff21, 0xff3a,
+	0xff3f, 0xff3f,
+	0xff41, 0xff5a,
+	0xff66, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10140, 0x10174,
+	0x101fd, 0x101fd,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x103d1, 0x103d5,
+	0x10400, 0x1049d,
+	0x104a0, 0x104a9,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a3f,
+	0x10a60, 0x10a7c,
+	0x10b00, 0x10b35,
+	0x10b40, 0x10b55,
+	0x10b60, 0x10b72,
+	0x10c00, 0x10c48,
+	0x11080, 0x110ba,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x13000, 0x1342e,
+	0x1d165, 0x1d169,
+	0x1d16d, 0x1d172,
+	0x1d17b, 0x1d182,
+	0x1d185, 0x1d18b,
+	0x1d1aa, 0x1d1ad,
+	0x1d242, 0x1d244,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x1d7ce, 0x1d7ff,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+	0xe0100, 0xe01ef,
+}; /* CR_ID_Continue */
+
+/* 'XID_Start': Derived Property */
+static const OnigCodePoint CR_XID_Start[] = {
+	431,
+	0x0041, 0x005a,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0370, 0x0374,
+	0x0376, 0x0377,
+	0x037b, 0x037d,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x0559,
+	0x0561, 0x0587,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f2,
+	0x0621, 0x064a,
+	0x066e, 0x066f,
+	0x0671, 0x06d3,
+	0x06d5, 0x06d5,
+	0x06e5, 0x06e6,
+	0x06ee, 0x06ef,
+	0x06fa, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x0710,
+	0x0712, 0x072f,
+	0x074d, 0x07a5,
+	0x07b1, 0x07b1,
+	0x07ca, 0x07ea,
+	0x07f4, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0800, 0x0815,
+	0x081a, 0x081a,
+	0x0824, 0x0824,
+	0x0828, 0x0828,
+	0x0904, 0x0939,
+	0x093d, 0x093d,
+	0x0950, 0x0950,
+	0x0958, 0x0961,
+	0x0971, 0x0972,
+	0x0979, 0x097f,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bd, 0x09bd,
+	0x09ce, 0x09ce,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e1,
+	0x09f0, 0x09f1,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a72, 0x0a74,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abd, 0x0abd,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae1,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3d, 0x0b3d,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b61,
+	0x0b71, 0x0b71,
+	0x0b83, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bd0, 0x0bd0,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c3d,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c61,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbd, 0x0cbd,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce1,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d3d,
+	0x0d60, 0x0d61,
+	0x0d7a, 0x0d7f,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0e01, 0x0e30,
+	0x0e32, 0x0e32,
+	0x0e40, 0x0e46,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb0,
+	0x0eb2, 0x0eb2,
+	0x0ebd, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f00,
+	0x0f40, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f88, 0x0f8b,
+	0x1000, 0x102a,
+	0x103f, 0x103f,
+	0x1050, 0x1055,
+	0x105a, 0x105d,
+	0x1061, 0x1061,
+	0x1065, 0x1066,
+	0x106e, 0x1070,
+	0x1075, 0x1081,
+	0x108e, 0x108e,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x1380, 0x138f,
+	0x13a0, 0x13f4,
+	0x1401, 0x166c,
+	0x166f, 0x167f,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	0x16ee, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1711,
+	0x1720, 0x1731,
+	0x1740, 0x1751,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1780, 0x17b3,
+	0x17d7, 0x17d7,
+	0x17dc, 0x17dc,
+	0x1820, 0x1877,
+	0x1880, 0x18a8,
+	0x18aa, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1950, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19c1, 0x19c7,
+	0x1a00, 0x1a16,
+	0x1a20, 0x1a54,
+	0x1aa7, 0x1aa7,
+	0x1b05, 0x1b33,
+	0x1b45, 0x1b4b,
+	0x1b83, 0x1ba0,
+	0x1bae, 0x1baf,
+	0x1c00, 0x1c23,
+	0x1c4d, 0x1c4f,
+	0x1c5a, 0x1c7d,
+	0x1ce9, 0x1cec,
+	0x1cee, 0x1cf1,
+	0x1d00, 0x1dbf,
+	0x1e00, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2118, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x2188,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cee,
+	0x2d00, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x3005, 0x3007,
+	0x3021, 0x3029,
+	0x3031, 0x3035,
+	0x3038, 0x303c,
+	0x3041, 0x3096,
+	0x309d, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa4d0, 0xa4fd,
+	0xa500, 0xa60c,
+	0xa610, 0xa61f,
+	0xa62a, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66e,
+	0xa67f, 0xa697,
+	0xa6a0, 0xa6ef,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa801,
+	0xa803, 0xa805,
+	0xa807, 0xa80a,
+	0xa80c, 0xa822,
+	0xa840, 0xa873,
+	0xa882, 0xa8b3,
+	0xa8f2, 0xa8f7,
+	0xa8fb, 0xa8fb,
+	0xa90a, 0xa925,
+	0xa930, 0xa946,
+	0xa960, 0xa97c,
+	0xa984, 0xa9b2,
+	0xa9cf, 0xa9cf,
+	0xaa00, 0xaa28,
+	0xaa40, 0xaa42,
+	0xaa44, 0xaa4b,
+	0xaa60, 0xaa76,
+	0xaa7a, 0xaa7a,
+	0xaa80, 0xaaaf,
+	0xaab1, 0xaab1,
+	0xaab5, 0xaab6,
+	0xaab9, 0xaabd,
+	0xaac0, 0xaac0,
+	0xaac2, 0xaac2,
+	0xaadb, 0xaadd,
+	0xabc0, 0xabe2,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb1d,
+	0xfb1f, 0xfb28,
+	0xfb2a, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfc5d,
+	0xfc64, 0xfd3d,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdf9,
+	0xfe71, 0xfe71,
+	0xfe73, 0xfe73,
+	0xfe77, 0xfe77,
+	0xfe79, 0xfe79,
+	0xfe7b, 0xfe7b,
+	0xfe7d, 0xfe7d,
+	0xfe7f, 0xfefc,
+	0xff21, 0xff3a,
+	0xff41, 0xff5a,
+	0xff66, 0xff9d,
+	0xffa0, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10140, 0x10174,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x103d1, 0x103d5,
+	0x10400, 0x1049d,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a00,
+	0x10a10, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a60, 0x10a7c,
+	0x10b00, 0x10b35,
+	0x10b40, 0x10b55,
+	0x10b60, 0x10b72,
+	0x10c00, 0x10c48,
+	0x11083, 0x110af,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x13000, 0x1342e,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+}; /* CR_XID_Start */
+
+/* 'XID_Continue': Derived Property */
+static const OnigCodePoint CR_XID_Continue[] = {
+	513,
+	0x0030, 0x0039,
+	0x0041, 0x005a,
+	0x005f, 0x005f,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00b7, 0x00b7,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0300, 0x0374,
+	0x0376, 0x0377,
+	0x037b, 0x037d,
+	0x0386, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x0483, 0x0487,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x0559,
+	0x0561, 0x0587,
+	0x0591, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f2,
+	0x0610, 0x061a,
+	0x0621, 0x065e,
+	0x0660, 0x0669,
+	0x066e, 0x06d3,
+	0x06d5, 0x06dc,
+	0x06df, 0x06e8,
+	0x06ea, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x074a,
+	0x074d, 0x07b1,
+	0x07c0, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0800, 0x082d,
+	0x0900, 0x0939,
+	0x093c, 0x094e,
+	0x0950, 0x0955,
+	0x0958, 0x0963,
+	0x0966, 0x096f,
+	0x0971, 0x0972,
+	0x0979, 0x097f,
+	0x0981, 0x0983,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bc, 0x09c4,
+	0x09c7, 0x09c8,
+	0x09cb, 0x09ce,
+	0x09d7, 0x09d7,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e3,
+	0x09e6, 0x09f1,
+	0x0a01, 0x0a03,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a3c, 0x0a3c,
+	0x0a3e, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4d,
+	0x0a51, 0x0a51,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a66, 0x0a75,
+	0x0a81, 0x0a83,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abc, 0x0ac5,
+	0x0ac7, 0x0ac9,
+	0x0acb, 0x0acd,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae3,
+	0x0ae6, 0x0aef,
+	0x0b01, 0x0b03,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3c, 0x0b44,
+	0x0b47, 0x0b48,
+	0x0b4b, 0x0b4d,
+	0x0b56, 0x0b57,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b63,
+	0x0b66, 0x0b6f,
+	0x0b71, 0x0b71,
+	0x0b82, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bbe, 0x0bc2,
+	0x0bc6, 0x0bc8,
+	0x0bca, 0x0bcd,
+	0x0bd0, 0x0bd0,
+	0x0bd7, 0x0bd7,
+	0x0be6, 0x0bef,
+	0x0c01, 0x0c03,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c44,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4d,
+	0x0c55, 0x0c56,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c63,
+	0x0c66, 0x0c6f,
+	0x0c82, 0x0c83,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbc, 0x0cc4,
+	0x0cc6, 0x0cc8,
+	0x0cca, 0x0ccd,
+	0x0cd5, 0x0cd6,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce3,
+	0x0ce6, 0x0cef,
+	0x0d02, 0x0d03,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d44,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4d,
+	0x0d57, 0x0d57,
+	0x0d60, 0x0d63,
+	0x0d66, 0x0d6f,
+	0x0d7a, 0x0d7f,
+	0x0d82, 0x0d83,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0dca, 0x0dca,
+	0x0dcf, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0dd8, 0x0ddf,
+	0x0df2, 0x0df3,
+	0x0e01, 0x0e3a,
+	0x0e40, 0x0e4e,
+	0x0e50, 0x0e59,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb9,
+	0x0ebb, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0ec8, 0x0ecd,
+	0x0ed0, 0x0ed9,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f00,
+	0x0f18, 0x0f19,
+	0x0f20, 0x0f29,
+	0x0f35, 0x0f35,
+	0x0f37, 0x0f37,
+	0x0f39, 0x0f39,
+	0x0f3e, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f71, 0x0f84,
+	0x0f86, 0x0f8b,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x0fc6, 0x0fc6,
+	0x1000, 0x1049,
+	0x1050, 0x109d,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x135f, 0x135f,
+	0x1369, 0x1371,
+	0x1380, 0x138f,
+	0x13a0, 0x13f4,
+	0x1401, 0x166c,
+	0x166f, 0x167f,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	0x16ee, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1714,
+	0x1720, 0x1734,
+	0x1740, 0x1753,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1772, 0x1773,
+	0x1780, 0x17b3,
+	0x17b6, 0x17d3,
+	0x17d7, 0x17d7,
+	0x17dc, 0x17dd,
+	0x17e0, 0x17e9,
+	0x180b, 0x180d,
+	0x1810, 0x1819,
+	0x1820, 0x1877,
+	0x1880, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1920, 0x192b,
+	0x1930, 0x193b,
+	0x1946, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19b0, 0x19c9,
+	0x19d0, 0x19da,
+	0x1a00, 0x1a1b,
+	0x1a20, 0x1a5e,
+	0x1a60, 0x1a7c,
+	0x1a7f, 0x1a89,
+	0x1a90, 0x1a99,
+	0x1aa7, 0x1aa7,
+	0x1b00, 0x1b4b,
+	0x1b50, 0x1b59,
+	0x1b6b, 0x1b73,
+	0x1b80, 0x1baa,
+	0x1bae, 0x1bb9,
+	0x1c00, 0x1c37,
+	0x1c40, 0x1c49,
+	0x1c4d, 0x1c7d,
+	0x1cd0, 0x1cd2,
+	0x1cd4, 0x1cf2,
+	0x1d00, 0x1de6,
+	0x1dfd, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fbc,
+	0x1fbe, 0x1fbe,
+	0x1fc2, 0x1fc4,
+	0x1fc6, 0x1fcc,
+	0x1fd0, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fe0, 0x1fec,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffc,
+	0x203f, 0x2040,
+	0x2054, 0x2054,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x20d0, 0x20dc,
+	0x20e1, 0x20e1,
+	0x20e5, 0x20f0,
+	0x2102, 0x2102,
+	0x2107, 0x2107,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2118, 0x211d,
+	0x2124, 0x2124,
+	0x2126, 0x2126,
+	0x2128, 0x2128,
+	0x212a, 0x2139,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x214e, 0x214e,
+	0x2160, 0x2188,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2ce4,
+	0x2ceb, 0x2cf1,
+	0x2d00, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x2de0, 0x2dff,
+	0x3005, 0x3007,
+	0x3021, 0x302f,
+	0x3031, 0x3035,
+	0x3038, 0x303c,
+	0x3041, 0x3096,
+	0x3099, 0x309a,
+	0x309d, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa4d0, 0xa4fd,
+	0xa500, 0xa60c,
+	0xa610, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66f,
+	0xa67c, 0xa67d,
+	0xa67f, 0xa697,
+	0xa6a0, 0xa6f1,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa827,
+	0xa840, 0xa873,
+	0xa880, 0xa8c4,
+	0xa8d0, 0xa8d9,
+	0xa8e0, 0xa8f7,
+	0xa8fb, 0xa8fb,
+	0xa900, 0xa92d,
+	0xa930, 0xa953,
+	0xa960, 0xa97c,
+	0xa980, 0xa9c0,
+	0xa9cf, 0xa9d9,
+	0xaa00, 0xaa36,
+	0xaa40, 0xaa4d,
+	0xaa50, 0xaa59,
+	0xaa60, 0xaa76,
+	0xaa7a, 0xaa7b,
+	0xaa80, 0xaac2,
+	0xaadb, 0xaadd,
+	0xabc0, 0xabea,
+	0xabec, 0xabed,
+	0xabf0, 0xabf9,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb28,
+	0xfb2a, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfc5d,
+	0xfc64, 0xfd3d,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdf9,
+	0xfe00, 0xfe0f,
+	0xfe20, 0xfe26,
+	0xfe33, 0xfe34,
+	0xfe4d, 0xfe4f,
+	0xfe71, 0xfe71,
+	0xfe73, 0xfe73,
+	0xfe77, 0xfe77,
+	0xfe79, 0xfe79,
+	0xfe7b, 0xfe7b,
+	0xfe7d, 0xfe7d,
+	0xfe7f, 0xfefc,
+	0xff10, 0xff19,
+	0xff21, 0xff3a,
+	0xff3f, 0xff3f,
+	0xff41, 0xff5a,
+	0xff66, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10140, 0x10174,
+	0x101fd, 0x101fd,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x103d1, 0x103d5,
+	0x10400, 0x1049d,
+	0x104a0, 0x104a9,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a3f,
+	0x10a60, 0x10a7c,
+	0x10b00, 0x10b35,
+	0x10b40, 0x10b55,
+	0x10b60, 0x10b72,
+	0x10c00, 0x10c48,
+	0x11080, 0x110ba,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x13000, 0x1342e,
+	0x1d165, 0x1d169,
+	0x1d16d, 0x1d172,
+	0x1d17b, 0x1d182,
+	0x1d185, 0x1d18b,
+	0x1d1aa, 0x1d1ad,
+	0x1d242, 0x1d244,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x1d7ce, 0x1d7ff,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+	0xe0100, 0xe01ef,
+}; /* CR_XID_Continue */
+
+/* 'Default_Ignorable_Code_Point': Derived Property */
+static const OnigCodePoint CR_Default_Ignorable_Code_Point[] = {
+	15,
+	0x00ad, 0x00ad,
+	0x034f, 0x034f,
+	0x115f, 0x1160,
+	0x17b4, 0x17b5,
+	0x180b, 0x180d,
+	0x200b, 0x200f,
+	0x202a, 0x202e,
+	0x2060, 0x206f,
+	0x3164, 0x3164,
+	0xfe00, 0xfe0f,
+	0xfeff, 0xfeff,
+	0xffa0, 0xffa0,
+	0xfff0, 0xfff8,
+	0x1d173, 0x1d17a,
+	0xe0000, 0xe0fff,
+}; /* CR_Default_Ignorable_Code_Point */
+
+/* 'Grapheme_Extend': Derived Property */
+static const OnigCodePoint CR_Grapheme_Extend[] = {
+	206,
+	0x0300, 0x036f,
+	0x0483, 0x0489,
+	0x0591, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x0610, 0x061a,
+	0x064b, 0x065e,
+	0x0670, 0x0670,
+	0x06d6, 0x06dc,
+	0x06de, 0x06e4,
+	0x06e7, 0x06e8,
+	0x06ea, 0x06ed,
+	0x0711, 0x0711,
+	0x0730, 0x074a,
+	0x07a6, 0x07b0,
+	0x07eb, 0x07f3,
+	0x0816, 0x0819,
+	0x081b, 0x0823,
+	0x0825, 0x0827,
+	0x0829, 0x082d,
+	0x0900, 0x0902,
+	0x093c, 0x093c,
+	0x0941, 0x0948,
+	0x094d, 0x094d,
+	0x0951, 0x0955,
+	0x0962, 0x0963,
+	0x0981, 0x0981,
+	0x09bc, 0x09bc,
+	0x09be, 0x09be,
+	0x09c1, 0x09c4,
+	0x09cd, 0x09cd,
+	0x09d7, 0x09d7,
+	0x09e2, 0x09e3,
+	0x0a01, 0x0a02,
+	0x0a3c, 0x0a3c,
+	0x0a41, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4d,
+	0x0a51, 0x0a51,
+	0x0a70, 0x0a71,
+	0x0a75, 0x0a75,
+	0x0a81, 0x0a82,
+	0x0abc, 0x0abc,
+	0x0ac1, 0x0ac5,
+	0x0ac7, 0x0ac8,
+	0x0acd, 0x0acd,
+	0x0ae2, 0x0ae3,
+	0x0b01, 0x0b01,
+	0x0b3c, 0x0b3c,
+	0x0b3e, 0x0b3f,
+	0x0b41, 0x0b44,
+	0x0b4d, 0x0b4d,
+	0x0b56, 0x0b57,
+	0x0b62, 0x0b63,
+	0x0b82, 0x0b82,
+	0x0bbe, 0x0bbe,
+	0x0bc0, 0x0bc0,
+	0x0bcd, 0x0bcd,
+	0x0bd7, 0x0bd7,
+	0x0c3e, 0x0c40,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4d,
+	0x0c55, 0x0c56,
+	0x0c62, 0x0c63,
+	0x0cbc, 0x0cbc,
+	0x0cbf, 0x0cbf,
+	0x0cc2, 0x0cc2,
+	0x0cc6, 0x0cc6,
+	0x0ccc, 0x0ccd,
+	0x0cd5, 0x0cd6,
+	0x0ce2, 0x0ce3,
+	0x0d3e, 0x0d3e,
+	0x0d41, 0x0d44,
+	0x0d4d, 0x0d4d,
+	0x0d57, 0x0d57,
+	0x0d62, 0x0d63,
+	0x0dca, 0x0dca,
+	0x0dcf, 0x0dcf,
+	0x0dd2, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0ddf, 0x0ddf,
+	0x0e31, 0x0e31,
+	0x0e34, 0x0e3a,
+	0x0e47, 0x0e4e,
+	0x0eb1, 0x0eb1,
+	0x0eb4, 0x0eb9,
+	0x0ebb, 0x0ebc,
+	0x0ec8, 0x0ecd,
+	0x0f18, 0x0f19,
+	0x0f35, 0x0f35,
+	0x0f37, 0x0f37,
+	0x0f39, 0x0f39,
+	0x0f71, 0x0f7e,
+	0x0f80, 0x0f84,
+	0x0f86, 0x0f87,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x0fc6, 0x0fc6,
+	0x102d, 0x1030,
+	0x1032, 0x1037,
+	0x1039, 0x103a,
+	0x103d, 0x103e,
+	0x1058, 0x1059,
+	0x105e, 0x1060,
+	0x1071, 0x1074,
+	0x1082, 0x1082,
+	0x1085, 0x1086,
+	0x108d, 0x108d,
+	0x109d, 0x109d,
+	0x135f, 0x135f,
+	0x1712, 0x1714,
+	0x1732, 0x1734,
+	0x1752, 0x1753,
+	0x1772, 0x1773,
+	0x17b7, 0x17bd,
+	0x17c6, 0x17c6,
+	0x17c9, 0x17d3,
+	0x17dd, 0x17dd,
+	0x180b, 0x180d,
+	0x18a9, 0x18a9,
+	0x1920, 0x1922,
+	0x1927, 0x1928,
+	0x1932, 0x1932,
+	0x1939, 0x193b,
+	0x1a17, 0x1a18,
+	0x1a56, 0x1a56,
+	0x1a58, 0x1a5e,
+	0x1a60, 0x1a60,
+	0x1a62, 0x1a62,
+	0x1a65, 0x1a6c,
+	0x1a73, 0x1a7c,
+	0x1a7f, 0x1a7f,
+	0x1b00, 0x1b03,
+	0x1b34, 0x1b34,
+	0x1b36, 0x1b3a,
+	0x1b3c, 0x1b3c,
+	0x1b42, 0x1b42,
+	0x1b6b, 0x1b73,
+	0x1b80, 0x1b81,
+	0x1ba2, 0x1ba5,
+	0x1ba8, 0x1ba9,
+	0x1c2c, 0x1c33,
+	0x1c36, 0x1c37,
+	0x1cd0, 0x1cd2,
+	0x1cd4, 0x1ce0,
+	0x1ce2, 0x1ce8,
+	0x1ced, 0x1ced,
+	0x1dc0, 0x1de6,
+	0x1dfd, 0x1dff,
+	0x200c, 0x200d,
+	0x20d0, 0x20f0,
+	0x2cef, 0x2cf1,
+	0x2de0, 0x2dff,
+	0x302a, 0x302f,
+	0x3099, 0x309a,
+	0xa66f, 0xa672,
+	0xa67c, 0xa67d,
+	0xa6f0, 0xa6f1,
+	0xa802, 0xa802,
+	0xa806, 0xa806,
+	0xa80b, 0xa80b,
+	0xa825, 0xa826,
+	0xa8c4, 0xa8c4,
+	0xa8e0, 0xa8f1,
+	0xa926, 0xa92d,
+	0xa947, 0xa951,
+	0xa980, 0xa982,
+	0xa9b3, 0xa9b3,
+	0xa9b6, 0xa9b9,
+	0xa9bc, 0xa9bc,
+	0xaa29, 0xaa2e,
+	0xaa31, 0xaa32,
+	0xaa35, 0xaa36,
+	0xaa43, 0xaa43,
+	0xaa4c, 0xaa4c,
+	0xaab0, 0xaab0,
+	0xaab2, 0xaab4,
+	0xaab7, 0xaab8,
+	0xaabe, 0xaabf,
+	0xaac1, 0xaac1,
+	0xabe5, 0xabe5,
+	0xabe8, 0xabe8,
+	0xabed, 0xabed,
+	0xfb1e, 0xfb1e,
+	0xfe00, 0xfe0f,
+	0xfe20, 0xfe26,
+	0xff9e, 0xff9f,
+	0x101fd, 0x101fd,
+	0x10a01, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a0f,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a3f,
+	0x11080, 0x11081,
+	0x110b3, 0x110b6,
+	0x110b9, 0x110ba,
+	0x1d165, 0x1d165,
+	0x1d167, 0x1d169,
+	0x1d16e, 0x1d172,
+	0x1d17b, 0x1d182,
+	0x1d185, 0x1d18b,
+	0x1d1aa, 0x1d1ad,
+	0x1d242, 0x1d244,
+	0xe0100, 0xe01ef,
+}; /* CR_Grapheme_Extend */
+
+/* 'Grapheme_Base': Derived Property */
+static const OnigCodePoint CR_Grapheme_Base[] = {
+	567,
+	0x0020, 0x007e,
+	0x00a0, 0x00ac,
+	0x00ae, 0x02ff,
+	0x0370, 0x0377,
+	0x037a, 0x037e,
+	0x0384, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x0482,
+	0x048a, 0x0525,
+	0x0531, 0x0556,
+	0x0559, 0x055f,
+	0x0561, 0x0587,
+	0x0589, 0x058a,
+	0x05be, 0x05be,
+	0x05c0, 0x05c0,
+	0x05c3, 0x05c3,
+	0x05c6, 0x05c6,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f4,
+	0x0606, 0x060f,
+	0x061b, 0x061b,
+	0x061e, 0x061f,
+	0x0621, 0x064a,
+	0x0660, 0x066f,
+	0x0671, 0x06d5,
+	0x06e5, 0x06e6,
+	0x06e9, 0x06e9,
+	0x06ee, 0x070d,
+	0x0710, 0x0710,
+	0x0712, 0x072f,
+	0x074d, 0x07a5,
+	0x07b1, 0x07b1,
+	0x07c0, 0x07ea,
+	0x07f4, 0x07fa,
+	0x0800, 0x0815,
+	0x081a, 0x081a,
+	0x0824, 0x0824,
+	0x0828, 0x0828,
+	0x0830, 0x083e,
+	0x0903, 0x0939,
+	0x093d, 0x0940,
+	0x0949, 0x094c,
+	0x094e, 0x094e,
+	0x0950, 0x0950,
+	0x0958, 0x0961,
+	0x0964, 0x0972,
+	0x0979, 0x097f,
+	0x0982, 0x0983,
+	0x0985, 0x098c,
+	0x098f, 0x0990,
+	0x0993, 0x09a8,
+	0x09aa, 0x09b0,
+	0x09b2, 0x09b2,
+	0x09b6, 0x09b9,
+	0x09bd, 0x09bd,
+	0x09bf, 0x09c0,
+	0x09c7, 0x09c8,
+	0x09cb, 0x09cc,
+	0x09ce, 0x09ce,
+	0x09dc, 0x09dd,
+	0x09df, 0x09e1,
+	0x09e6, 0x09fb,
+	0x0a03, 0x0a03,
+	0x0a05, 0x0a0a,
+	0x0a0f, 0x0a10,
+	0x0a13, 0x0a28,
+	0x0a2a, 0x0a30,
+	0x0a32, 0x0a33,
+	0x0a35, 0x0a36,
+	0x0a38, 0x0a39,
+	0x0a3e, 0x0a40,
+	0x0a59, 0x0a5c,
+	0x0a5e, 0x0a5e,
+	0x0a66, 0x0a6f,
+	0x0a72, 0x0a74,
+	0x0a83, 0x0a83,
+	0x0a85, 0x0a8d,
+	0x0a8f, 0x0a91,
+	0x0a93, 0x0aa8,
+	0x0aaa, 0x0ab0,
+	0x0ab2, 0x0ab3,
+	0x0ab5, 0x0ab9,
+	0x0abd, 0x0ac0,
+	0x0ac9, 0x0ac9,
+	0x0acb, 0x0acc,
+	0x0ad0, 0x0ad0,
+	0x0ae0, 0x0ae1,
+	0x0ae6, 0x0aef,
+	0x0af1, 0x0af1,
+	0x0b02, 0x0b03,
+	0x0b05, 0x0b0c,
+	0x0b0f, 0x0b10,
+	0x0b13, 0x0b28,
+	0x0b2a, 0x0b30,
+	0x0b32, 0x0b33,
+	0x0b35, 0x0b39,
+	0x0b3d, 0x0b3d,
+	0x0b40, 0x0b40,
+	0x0b47, 0x0b48,
+	0x0b4b, 0x0b4c,
+	0x0b5c, 0x0b5d,
+	0x0b5f, 0x0b61,
+	0x0b66, 0x0b71,
+	0x0b83, 0x0b83,
+	0x0b85, 0x0b8a,
+	0x0b8e, 0x0b90,
+	0x0b92, 0x0b95,
+	0x0b99, 0x0b9a,
+	0x0b9c, 0x0b9c,
+	0x0b9e, 0x0b9f,
+	0x0ba3, 0x0ba4,
+	0x0ba8, 0x0baa,
+	0x0bae, 0x0bb9,
+	0x0bbf, 0x0bbf,
+	0x0bc1, 0x0bc2,
+	0x0bc6, 0x0bc8,
+	0x0bca, 0x0bcc,
+	0x0bd0, 0x0bd0,
+	0x0be6, 0x0bfa,
+	0x0c01, 0x0c03,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c3d,
+	0x0c41, 0x0c44,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c61,
+	0x0c66, 0x0c6f,
+	0x0c78, 0x0c7f,
+	0x0c82, 0x0c83,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbd, 0x0cbe,
+	0x0cc0, 0x0cc1,
+	0x0cc3, 0x0cc4,
+	0x0cc7, 0x0cc8,
+	0x0cca, 0x0ccb,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce1,
+	0x0ce6, 0x0cef,
+	0x0cf1, 0x0cf2,
+	0x0d02, 0x0d03,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d3d,
+	0x0d3f, 0x0d40,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4c,
+	0x0d60, 0x0d61,
+	0x0d66, 0x0d75,
+	0x0d79, 0x0d7f,
+	0x0d82, 0x0d83,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0dd0, 0x0dd1,
+	0x0dd8, 0x0dde,
+	0x0df2, 0x0df4,
+	0x0e01, 0x0e30,
+	0x0e32, 0x0e33,
+	0x0e3f, 0x0e46,
+	0x0e4f, 0x0e5b,
+	0x0e81, 0x0e82,
+	0x0e84, 0x0e84,
+	0x0e87, 0x0e88,
+	0x0e8a, 0x0e8a,
+	0x0e8d, 0x0e8d,
+	0x0e94, 0x0e97,
+	0x0e99, 0x0e9f,
+	0x0ea1, 0x0ea3,
+	0x0ea5, 0x0ea5,
+	0x0ea7, 0x0ea7,
+	0x0eaa, 0x0eab,
+	0x0ead, 0x0eb0,
+	0x0eb2, 0x0eb3,
+	0x0ebd, 0x0ebd,
+	0x0ec0, 0x0ec4,
+	0x0ec6, 0x0ec6,
+	0x0ed0, 0x0ed9,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f17,
+	0x0f1a, 0x0f34,
+	0x0f36, 0x0f36,
+	0x0f38, 0x0f38,
+	0x0f3a, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f7f, 0x0f7f,
+	0x0f85, 0x0f85,
+	0x0f88, 0x0f8b,
+	0x0fbe, 0x0fc5,
+	0x0fc7, 0x0fcc,
+	0x0fce, 0x0fd8,
+	0x1000, 0x102c,
+	0x1031, 0x1031,
+	0x1038, 0x1038,
+	0x103b, 0x103c,
+	0x103f, 0x1057,
+	0x105a, 0x105d,
+	0x1061, 0x1070,
+	0x1075, 0x1081,
+	0x1083, 0x1084,
+	0x1087, 0x108c,
+	0x108e, 0x109c,
+	0x109e, 0x10c5,
+	0x10d0, 0x10fc,
+	0x1100, 0x1248,
+	0x124a, 0x124d,
+	0x1250, 0x1256,
+	0x1258, 0x1258,
+	0x125a, 0x125d,
+	0x1260, 0x1288,
+	0x128a, 0x128d,
+	0x1290, 0x12b0,
+	0x12b2, 0x12b5,
+	0x12b8, 0x12be,
+	0x12c0, 0x12c0,
+	0x12c2, 0x12c5,
+	0x12c8, 0x12d6,
+	0x12d8, 0x1310,
+	0x1312, 0x1315,
+	0x1318, 0x135a,
+	0x1360, 0x137c,
+	0x1380, 0x1399,
+	0x13a0, 0x13f4,
+	0x1400, 0x169c,
+	0x16a0, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1711,
+	0x1720, 0x1731,
+	0x1735, 0x1736,
+	0x1740, 0x1751,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1780, 0x17b3,
+	0x17b6, 0x17b6,
+	0x17be, 0x17c5,
+	0x17c7, 0x17c8,
+	0x17d4, 0x17dc,
+	0x17e0, 0x17e9,
+	0x17f0, 0x17f9,
+	0x1800, 0x180a,
+	0x180e, 0x180e,
+	0x1810, 0x1819,
+	0x1820, 0x1877,
+	0x1880, 0x18a8,
+	0x18aa, 0x18aa,
+	0x18b0, 0x18f5,
+	0x1900, 0x191c,
+	0x1923, 0x1926,
+	0x1929, 0x192b,
+	0x1930, 0x1931,
+	0x1933, 0x1938,
+	0x1940, 0x1940,
+	0x1944, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19ab,
+	0x19b0, 0x19c9,
+	0x19d0, 0x19da,
+	0x19de, 0x1a16,
+	0x1a19, 0x1a1b,
+	0x1a1e, 0x1a55,
+	0x1a57, 0x1a57,
+	0x1a61, 0x1a61,
+	0x1a63, 0x1a64,
+	0x1a6d, 0x1a72,
+	0x1a80, 0x1a89,
+	0x1a90, 0x1a99,
+	0x1aa0, 0x1aad,
+	0x1b04, 0x1b33,
+	0x1b35, 0x1b35,
+	0x1b3b, 0x1b3b,
+	0x1b3d, 0x1b41,
+	0x1b43, 0x1b4b,
+	0x1b50, 0x1b6a,
+	0x1b74, 0x1b7c,
+	0x1b82, 0x1ba1,
+	0x1ba6, 0x1ba7,
+	0x1baa, 0x1baa,
+	0x1bae, 0x1bb9,
+	0x1c00, 0x1c2b,
+	0x1c34, 0x1c35,
+	0x1c3b, 0x1c49,
+	0x1c4d, 0x1c7f,
+	0x1cd3, 0x1cd3,
+	0x1ce1, 0x1ce1,
+	0x1ce9, 0x1cec,
+	0x1cee, 0x1cf2,
+	0x1d00, 0x1dbf,
+	0x1e00, 0x1f15,
+	0x1f18, 0x1f1d,
+	0x1f20, 0x1f45,
+	0x1f48, 0x1f4d,
+	0x1f50, 0x1f57,
+	0x1f59, 0x1f59,
+	0x1f5b, 0x1f5b,
+	0x1f5d, 0x1f5d,
+	0x1f5f, 0x1f7d,
+	0x1f80, 0x1fb4,
+	0x1fb6, 0x1fc4,
+	0x1fc6, 0x1fd3,
+	0x1fd6, 0x1fdb,
+	0x1fdd, 0x1fef,
+	0x1ff2, 0x1ff4,
+	0x1ff6, 0x1ffe,
+	0x2000, 0x200a,
+	0x2010, 0x2027,
+	0x202f, 0x205f,
+	0x2070, 0x2071,
+	0x2074, 0x208e,
+	0x2090, 0x2094,
+	0x20a0, 0x20b8,
+	0x2100, 0x2189,
+	0x2190, 0x23e8,
+	0x2400, 0x2426,
+	0x2440, 0x244a,
+	0x2460, 0x26cd,
+	0x26cf, 0x26e1,
+	0x26e3, 0x26e3,
+	0x26e8, 0x26ff,
+	0x2701, 0x2704,
+	0x2706, 0x2709,
+	0x270c, 0x2727,
+	0x2729, 0x274b,
+	0x274d, 0x274d,
+	0x274f, 0x2752,
+	0x2756, 0x275e,
+	0x2761, 0x2794,
+	0x2798, 0x27af,
+	0x27b1, 0x27be,
+	0x27c0, 0x27ca,
+	0x27cc, 0x27cc,
+	0x27d0, 0x2b4c,
+	0x2b50, 0x2b59,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2cee,
+	0x2cf9, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x2e00, 0x2e31,
+	0x2e80, 0x2e99,
+	0x2e9b, 0x2ef3,
+	0x2f00, 0x2fd5,
+	0x2ff0, 0x2ffb,
+	0x3000, 0x3029,
+	0x3030, 0x303f,
+	0x3041, 0x3096,
+	0x309b, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x3190, 0x31b7,
+	0x31c0, 0x31e3,
+	0x31f0, 0x321e,
+	0x3220, 0x32fe,
+	0x3300, 0x4db5,
+	0x4dc0, 0x9fcb,
+	0xa000, 0xa48c,
+	0xa490, 0xa4c6,
+	0xa4d0, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66e,
+	0xa673, 0xa673,
+	0xa67e, 0xa697,
+	0xa6a0, 0xa6ef,
+	0xa6f2, 0xa6f7,
+	0xa700, 0xa78c,
+	0xa7fb, 0xa801,
+	0xa803, 0xa805,
+	0xa807, 0xa80a,
+	0xa80c, 0xa824,
+	0xa827, 0xa82b,
+	0xa830, 0xa839,
+	0xa840, 0xa877,
+	0xa880, 0xa8c3,
+	0xa8ce, 0xa8d9,
+	0xa8f2, 0xa8fb,
+	0xa900, 0xa925,
+	0xa92e, 0xa946,
+	0xa952, 0xa953,
+	0xa95f, 0xa97c,
+	0xa983, 0xa9b2,
+	0xa9b4, 0xa9b5,
+	0xa9ba, 0xa9bb,
+	0xa9bd, 0xa9cd,
+	0xa9cf, 0xa9d9,
+	0xa9de, 0xa9df,
+	0xaa00, 0xaa28,
+	0xaa2f, 0xaa30,
+	0xaa33, 0xaa34,
+	0xaa40, 0xaa42,
+	0xaa44, 0xaa4b,
+	0xaa4d, 0xaa4d,
+	0xaa50, 0xaa59,
+	0xaa5c, 0xaa7b,
+	0xaa80, 0xaaaf,
+	0xaab1, 0xaab1,
+	0xaab5, 0xaab6,
+	0xaab9, 0xaabd,
+	0xaac0, 0xaac0,
+	0xaac2, 0xaac2,
+	0xaadb, 0xaadf,
+	0xabc0, 0xabe4,
+	0xabe6, 0xabe7,
+	0xabe9, 0xabec,
+	0xabf0, 0xabf9,
+	0xac00, 0xd7a3,
+	0xd7b0, 0xd7c6,
+	0xd7cb, 0xd7fb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb1d,
+	0xfb1f, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfd3f,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdfd,
+	0xfe10, 0xfe19,
+	0xfe30, 0xfe52,
+	0xfe54, 0xfe66,
+	0xfe68, 0xfe6b,
+	0xfe70, 0xfe74,
+	0xfe76, 0xfefc,
+	0xff01, 0xff9d,
+	0xffa0, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0xffe0, 0xffe6,
+	0xffe8, 0xffee,
+	0xfffc, 0xfffd,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10100, 0x10102,
+	0x10107, 0x10133,
+	0x10137, 0x1018a,
+	0x10190, 0x1019b,
+	0x101d0, 0x101fc,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10320, 0x10323,
+	0x10330, 0x1034a,
+	0x10380, 0x1039d,
+	0x1039f, 0x103c3,
+	0x103c8, 0x103d5,
+	0x10400, 0x1049d,
+	0x104a0, 0x104a9,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x10855,
+	0x10857, 0x1085f,
+	0x10900, 0x1091b,
+	0x1091f, 0x10939,
+	0x1093f, 0x1093f,
+	0x10a00, 0x10a00,
+	0x10a10, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a40, 0x10a47,
+	0x10a50, 0x10a58,
+	0x10a60, 0x10a7f,
+	0x10b00, 0x10b35,
+	0x10b39, 0x10b55,
+	0x10b58, 0x10b72,
+	0x10b78, 0x10b7f,
+	0x10c00, 0x10c48,
+	0x10e60, 0x10e7e,
+	0x11082, 0x110b2,
+	0x110b7, 0x110b8,
+	0x110bb, 0x110bc,
+	0x110be, 0x110c1,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x12470, 0x12473,
+	0x13000, 0x1342e,
+	0x1d000, 0x1d0f5,
+	0x1d100, 0x1d126,
+	0x1d129, 0x1d164,
+	0x1d166, 0x1d166,
+	0x1d16a, 0x1d16d,
+	0x1d183, 0x1d184,
+	0x1d18c, 0x1d1a9,
+	0x1d1ae, 0x1d1dd,
+	0x1d200, 0x1d241,
+	0x1d245, 0x1d245,
+	0x1d300, 0x1d356,
+	0x1d360, 0x1d371,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d7cb,
+	0x1d7ce, 0x1d7ff,
+	0x1f000, 0x1f02b,
+	0x1f030, 0x1f093,
+	0x1f100, 0x1f10a,
+	0x1f110, 0x1f12e,
+	0x1f131, 0x1f131,
+	0x1f13d, 0x1f13d,
+	0x1f13f, 0x1f13f,
+	0x1f142, 0x1f142,
+	0x1f146, 0x1f146,
+	0x1f14a, 0x1f14e,
+	0x1f157, 0x1f157,
+	0x1f15f, 0x1f15f,
+	0x1f179, 0x1f179,
+	0x1f17b, 0x1f17c,
+	0x1f17f, 0x1f17f,
+	0x1f18a, 0x1f18d,
+	0x1f190, 0x1f190,
+	0x1f200, 0x1f200,
+	0x1f210, 0x1f231,
+	0x1f240, 0x1f248,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+}; /* CR_Grapheme_Base */
+
+/* 'Grapheme_Link': Derived Property */
+static const OnigCodePoint CR_Grapheme_Link[] = {
+	26,
+	0x094d, 0x094d,
+	0x09cd, 0x09cd,
+	0x0a4d, 0x0a4d,
+	0x0acd, 0x0acd,
+	0x0b4d, 0x0b4d,
+	0x0bcd, 0x0bcd,
+	0x0c4d, 0x0c4d,
+	0x0ccd, 0x0ccd,
+	0x0d4d, 0x0d4d,
+	0x0dca, 0x0dca,
+	0x0e3a, 0x0e3a,
+	0x0f84, 0x0f84,
+	0x1039, 0x103a,
+	0x1714, 0x1714,
+	0x1734, 0x1734,
+	0x17d2, 0x17d2,
+	0x1a60, 0x1a60,
+	0x1b44, 0x1b44,
+	0x1baa, 0x1baa,
+	0xa806, 0xa806,
+	0xa8c4, 0xa8c4,
+	0xa953, 0xa953,
+	0xa9c0, 0xa9c0,
+	0xabed, 0xabed,
+	0x10a3f, 0x10a3f,
+	0x110b9, 0x110b9,
+}; /* CR_Grapheme_Link */
+
 /* 'Common': Script */
 static const OnigCodePoint CR_Common[] = {
 	159,
@@ -9798,9 +17103,890 @@
 	1,
 	0x11080, 0x110c1,
 }; /* CR_Kaithi */
+
+/* 'White_Space': Binary Property */
+static const OnigCodePoint CR_White_Space[] = {
+	11,
+	0x0009, 0x000d,
+	0x0020, 0x0020,
+	0x0085, 0x0085,
+	0x00a0, 0x00a0,
+	0x1680, 0x1680,
+	0x180e, 0x180e,
+	0x2000, 0x200a,
+	0x2028, 0x2029,
+	0x202f, 0x202f,
+	0x205f, 0x205f,
+	0x3000, 0x3000,
+}; /* CR_White_Space */
+
+/* 'Bidi_Control': Binary Property */
+static const OnigCodePoint CR_Bidi_Control[] = {
+	2,
+	0x200e, 0x200f,
+	0x202a, 0x202e,
+}; /* CR_Bidi_Control */
+
+/* 'Join_Control': Binary Property */
+static const OnigCodePoint CR_Join_Control[] = {
+	1,
+	0x200c, 0x200d,
+}; /* CR_Join_Control */
+
+/* 'Dash': Binary Property */
+static const OnigCodePoint CR_Dash[] = {
+	19,
+	0x002d, 0x002d,
+	0x058a, 0x058a,
+	0x05be, 0x05be,
+	0x1400, 0x1400,
+	0x1806, 0x1806,
+	0x2010, 0x2015,
+	0x2053, 0x2053,
+	0x207b, 0x207b,
+	0x208b, 0x208b,
+	0x2212, 0x2212,
+	0x2e17, 0x2e17,
+	0x2e1a, 0x2e1a,
+	0x301c, 0x301c,
+	0x3030, 0x3030,
+	0x30a0, 0x30a0,
+	0xfe31, 0xfe32,
+	0xfe58, 0xfe58,
+	0xfe63, 0xfe63,
+	0xff0d, 0xff0d,
+}; /* CR_Dash */
+
+/* 'Hyphen': Binary Property */
+static const OnigCodePoint CR_Hyphen[] = {
+	10,
+	0x002d, 0x002d,
+	0x00ad, 0x00ad,
+	0x058a, 0x058a,
+	0x1806, 0x1806,
+	0x2010, 0x2011,
+	0x2e17, 0x2e17,
+	0x30fb, 0x30fb,
+	0xfe63, 0xfe63,
+	0xff0d, 0xff0d,
+	0xff65, 0xff65,
+}; /* CR_Hyphen */
+
+/* 'Quotation_Mark': Binary Property */
+static const OnigCodePoint CR_Quotation_Mark[] = {
+	12,
+	0x0022, 0x0022,
+	0x0027, 0x0027,
+	0x00ab, 0x00ab,
+	0x00bb, 0x00bb,
+	0x2018, 0x201f,
+	0x2039, 0x203a,
+	0x300c, 0x300f,
+	0x301d, 0x301f,
+	0xfe41, 0xfe44,
+	0xff02, 0xff02,
+	0xff07, 0xff07,
+	0xff62, 0xff63,
+}; /* CR_Quotation_Mark */
+
+/* 'Terminal_Punctuation': Binary Property */
+static const OnigCodePoint CR_Terminal_Punctuation[] = {
+	65,
+	0x0021, 0x0021,
+	0x002c, 0x002c,
+	0x002e, 0x002e,
+	0x003a, 0x003b,
+	0x003f, 0x003f,
+	0x037e, 0x037e,
+	0x0387, 0x0387,
+	0x0589, 0x0589,
+	0x05c3, 0x05c3,
+	0x060c, 0x060c,
+	0x061b, 0x061b,
+	0x061f, 0x061f,
+	0x06d4, 0x06d4,
+	0x0700, 0x070a,
+	0x070c, 0x070c,
+	0x07f8, 0x07f9,
+	0x0830, 0x083e,
+	0x0964, 0x0965,
+	0x0e5a, 0x0e5b,
+	0x0f08, 0x0f08,
+	0x0f0d, 0x0f12,
+	0x104a, 0x104b,
+	0x1361, 0x1368,
+	0x166d, 0x166e,
+	0x16eb, 0x16ed,
+	0x17d4, 0x17d6,
+	0x17da, 0x17da,
+	0x1802, 0x1805,
+	0x1808, 0x1809,
+	0x1944, 0x1945,
+	0x1aa8, 0x1aab,
+	0x1b5a, 0x1b5b,
+	0x1b5d, 0x1b5f,
+	0x1c3b, 0x1c3f,
+	0x1c7e, 0x1c7f,
+	0x203c, 0x203d,
+	0x2047, 0x2049,
+	0x2e2e, 0x2e2e,
+	0x3001, 0x3002,
+	0xa4fe, 0xa4ff,
+	0xa60d, 0xa60f,
+	0xa6f3, 0xa6f7,
+	0xa876, 0xa877,
+	0xa8ce, 0xa8cf,
+	0xa92f, 0xa92f,
+	0xa9c7, 0xa9c9,
+	0xaa5d, 0xaa5f,
+	0xaadf, 0xaadf,
+	0xabeb, 0xabeb,
+	0xfe50, 0xfe52,
+	0xfe54, 0xfe57,
+	0xff01, 0xff01,
+	0xff0c, 0xff0c,
+	0xff0e, 0xff0e,
+	0xff1a, 0xff1b,
+	0xff1f, 0xff1f,
+	0xff61, 0xff61,
+	0xff64, 0xff64,
+	0x1039f, 0x1039f,
+	0x103d0, 0x103d0,
+	0x10857, 0x10857,
+	0x1091f, 0x1091f,
+	0x10b3a, 0x10b3f,
+	0x110be, 0x110c1,
+	0x12470, 0x12473,
+}; /* CR_Terminal_Punctuation */
+
+/* 'Other_Math': Binary Property */
+static const OnigCodePoint CR_Other_Math[] = {
+	99,
+	0x005e, 0x005e,
+	0x03d0, 0x03d2,
+	0x03d5, 0x03d5,
+	0x03f0, 0x03f1,
+	0x03f4, 0x03f5,
+	0x2016, 0x2016,
+	0x2032, 0x2034,
+	0x2040, 0x2040,
+	0x2061, 0x2064,
+	0x207d, 0x207e,
+	0x208d, 0x208e,
+	0x20d0, 0x20dc,
+	0x20e1, 0x20e1,
+	0x20e5, 0x20e6,
+	0x20eb, 0x20ef,
+	0x2102, 0x2102,
+	0x210a, 0x2113,
+	0x2115, 0x2115,
+	0x2119, 0x211d,
+	0x2124, 0x2124,
+	0x2128, 0x2129,
+	0x212c, 0x212d,
+	0x212f, 0x2131,
+	0x2133, 0x2138,
+	0x213c, 0x213f,
+	0x2145, 0x2149,
+	0x2195, 0x2199,
+	0x219c, 0x219f,
+	0x21a1, 0x21a2,
+	0x21a4, 0x21a5,
+	0x21a7, 0x21a7,
+	0x21a9, 0x21ad,
+	0x21b0, 0x21b1,
+	0x21b6, 0x21b7,
+	0x21bc, 0x21cd,
+	0x21d0, 0x21d1,
+	0x21d3, 0x21d3,
+	0x21d5, 0x21db,
+	0x21dd, 0x21dd,
+	0x21e4, 0x21e5,
+	0x23b4, 0x23b5,
+	0x23b7, 0x23b7,
+	0x23d0, 0x23d0,
+	0x23e2, 0x23e2,
+	0x25a0, 0x25a1,
+	0x25ae, 0x25b6,
+	0x25bc, 0x25c0,
+	0x25c6, 0x25c7,
+	0x25ca, 0x25cb,
+	0x25cf, 0x25d3,
+	0x25e2, 0x25e2,
+	0x25e4, 0x25e4,
+	0x25e7, 0x25ec,
+	0x2605, 0x2606,
+	0x2640, 0x2640,
+	0x2642, 0x2642,
+	0x2660, 0x2663,
+	0x266d, 0x266e,
+	0x27c5, 0x27c6,
+	0x27e6, 0x27ef,
+	0x2983, 0x2998,
+	0x29d8, 0x29db,
+	0x29fc, 0x29fd,
+	0xfe61, 0xfe61,
+	0xfe63, 0xfe63,
+	0xfe68, 0xfe68,
+	0xff3c, 0xff3c,
+	0xff3e, 0xff3e,
+	0x1d400, 0x1d454,
+	0x1d456, 0x1d49c,
+	0x1d49e, 0x1d49f,
+	0x1d4a2, 0x1d4a2,
+	0x1d4a5, 0x1d4a6,
+	0x1d4a9, 0x1d4ac,
+	0x1d4ae, 0x1d4b9,
+	0x1d4bb, 0x1d4bb,
+	0x1d4bd, 0x1d4c3,
+	0x1d4c5, 0x1d505,
+	0x1d507, 0x1d50a,
+	0x1d50d, 0x1d514,
+	0x1d516, 0x1d51c,
+	0x1d51e, 0x1d539,
+	0x1d53b, 0x1d53e,
+	0x1d540, 0x1d544,
+	0x1d546, 0x1d546,
+	0x1d54a, 0x1d550,
+	0x1d552, 0x1d6a5,
+	0x1d6a8, 0x1d6c0,
+	0x1d6c2, 0x1d6da,
+	0x1d6dc, 0x1d6fa,
+	0x1d6fc, 0x1d714,
+	0x1d716, 0x1d734,
+	0x1d736, 0x1d74e,
+	0x1d750, 0x1d76e,
+	0x1d770, 0x1d788,
+	0x1d78a, 0x1d7a8,
+	0x1d7aa, 0x1d7c2,
+	0x1d7c4, 0x1d7cb,
+	0x1d7ce, 0x1d7ff,
+}; /* CR_Other_Math */
+
+/* 'Hex_Digit': Binary Property */
+static const OnigCodePoint CR_Hex_Digit[] = {
+	6,
+	0x0030, 0x0039,
+	0x0041, 0x0046,
+	0x0061, 0x0066,
+	0xff10, 0xff19,
+	0xff21, 0xff26,
+	0xff41, 0xff46,
+}; /* CR_Hex_Digit */
+
+/* 'ASCII_Hex_Digit': Binary Property */
+static const OnigCodePoint CR_ASCII_Hex_Digit[] = {
+	3,
+	0x0030, 0x0039,
+	0x0041, 0x0046,
+	0x0061, 0x0066,
+}; /* CR_ASCII_Hex_Digit */
+
+/* 'Other_Alphabetic': Binary Property */
+static const OnigCodePoint CR_Other_Alphabetic[] = {
+	141,
+	0x0345, 0x0345,
+	0x05b0, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x0610, 0x061a,
+	0x064b, 0x0657,
+	0x0659, 0x065e,
+	0x0670, 0x0670,
+	0x06d6, 0x06dc,
+	0x06e1, 0x06e4,
+	0x06e7, 0x06e8,
+	0x06ed, 0x06ed,
+	0x0711, 0x0711,
+	0x0730, 0x073f,
+	0x07a6, 0x07b0,
+	0x0816, 0x0817,
+	0x081b, 0x0823,
+	0x0825, 0x0827,
+	0x0829, 0x082c,
+	0x0900, 0x0903,
+	0x093e, 0x094c,
+	0x094e, 0x094e,
+	0x0955, 0x0955,
+	0x0962, 0x0963,
+	0x0981, 0x0983,
+	0x09be, 0x09c4,
+	0x09c7, 0x09c8,
+	0x09cb, 0x09cc,
+	0x09d7, 0x09d7,
+	0x09e2, 0x09e3,
+	0x0a01, 0x0a03,
+	0x0a3e, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4c,
+	0x0a51, 0x0a51,
+	0x0a70, 0x0a71,
+	0x0a75, 0x0a75,
+	0x0a81, 0x0a83,
+	0x0abe, 0x0ac5,
+	0x0ac7, 0x0ac9,
+	0x0acb, 0x0acc,
+	0x0ae2, 0x0ae3,
+	0x0b01, 0x0b03,
+	0x0b3e, 0x0b44,
+	0x0b47, 0x0b48,
+	0x0b4b, 0x0b4c,
+	0x0b56, 0x0b57,
+	0x0b62, 0x0b63,
+	0x0b82, 0x0b82,
+	0x0bbe, 0x0bc2,
+	0x0bc6, 0x0bc8,
+	0x0bca, 0x0bcc,
+	0x0bd7, 0x0bd7,
+	0x0c01, 0x0c03,
+	0x0c3e, 0x0c44,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4c,
+	0x0c55, 0x0c56,
+	0x0c62, 0x0c63,
+	0x0c82, 0x0c83,
+	0x0cbe, 0x0cc4,
+	0x0cc6, 0x0cc8,
+	0x0cca, 0x0ccc,
+	0x0cd5, 0x0cd6,
+	0x0ce2, 0x0ce3,
+	0x0d02, 0x0d03,
+	0x0d3e, 0x0d44,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4c,
+	0x0d57, 0x0d57,
+	0x0d62, 0x0d63,
+	0x0d82, 0x0d83,
+	0x0dcf, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0dd8, 0x0ddf,
+	0x0df2, 0x0df3,
+	0x0e31, 0x0e31,
+	0x0e34, 0x0e3a,
+	0x0e4d, 0x0e4d,
+	0x0eb1, 0x0eb1,
+	0x0eb4, 0x0eb9,
+	0x0ebb, 0x0ebc,
+	0x0ecd, 0x0ecd,
+	0x0f71, 0x0f81,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x102b, 0x1036,
+	0x1038, 0x1038,
+	0x103b, 0x103e,
+	0x1056, 0x1059,
+	0x105e, 0x1060,
+	0x1062, 0x1062,
+	0x1067, 0x1068,
+	0x1071, 0x1074,
+	0x1082, 0x1086,
+	0x109c, 0x109d,
+	0x135f, 0x135f,
+	0x1712, 0x1713,
+	0x1732, 0x1733,
+	0x1752, 0x1753,
+	0x1772, 0x1773,
+	0x17b6, 0x17c8,
+	0x18a9, 0x18a9,
+	0x1920, 0x192b,
+	0x1930, 0x1938,
+	0x19b0, 0x19c0,
+	0x19c8, 0x19c9,
+	0x1a17, 0x1a1b,
+	0x1a55, 0x1a5e,
+	0x1a61, 0x1a74,
+	0x1b00, 0x1b04,
+	0x1b35, 0x1b43,
+	0x1b80, 0x1b82,
+	0x1ba1, 0x1ba9,
+	0x1c24, 0x1c35,
+	0x1cf2, 0x1cf2,
+	0x24b6, 0x24e9,
+	0x2de0, 0x2dff,
+	0xa823, 0xa827,
+	0xa880, 0xa881,
+	0xa8b4, 0xa8c3,
+	0xa926, 0xa92a,
+	0xa947, 0xa952,
+	0xa980, 0xa983,
+	0xa9b3, 0xa9bf,
+	0xaa29, 0xaa36,
+	0xaa43, 0xaa43,
+	0xaa4c, 0xaa4d,
+	0xaab0, 0xaab0,
+	0xaab2, 0xaab4,
+	0xaab7, 0xaab8,
+	0xaabe, 0xaabe,
+	0xabe3, 0xabea,
+	0xfb1e, 0xfb1e,
+	0x10a01, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a0f,
+	0x11082, 0x11082,
+	0x110b0, 0x110b8,
+}; /* CR_Other_Alphabetic */
+
+/* 'Ideographic': Binary Property */
+static const OnigCodePoint CR_Ideographic[] = {
+	11,
+	0x3006, 0x3007,
+	0x3021, 0x3029,
+	0x3038, 0x303a,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6d,
+	0xfa70, 0xfad9,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+	0x2f800, 0x2fa1d,
+}; /* CR_Ideographic */
+
+/* 'Diacritic': Binary Property */
+static const OnigCodePoint CR_Diacritic[] = {
+	117,
+	0x005e, 0x005e,
+	0x0060, 0x0060,
+	0x00a8, 0x00a8,
+	0x00af, 0x00af,
+	0x00b4, 0x00b4,
+	0x00b7, 0x00b8,
+	0x02b0, 0x034e,
+	0x0350, 0x0357,
+	0x035d, 0x0362,
+	0x0374, 0x0375,
+	0x037a, 0x037a,
+	0x0384, 0x0385,
+	0x0483, 0x0487,
+	0x0559, 0x0559,
+	0x0591, 0x05a1,
+	0x05a3, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c4,
+	0x064b, 0x0652,
+	0x0657, 0x0658,
+	0x06df, 0x06e0,
+	0x06e5, 0x06e6,
+	0x06ea, 0x06ec,
+	0x0730, 0x074a,
+	0x07a6, 0x07b0,
+	0x07eb, 0x07f5,
+	0x0818, 0x0819,
+	0x093c, 0x093c,
+	0x094d, 0x094d,
+	0x0951, 0x0954,
+	0x0971, 0x0971,
+	0x09bc, 0x09bc,
+	0x09cd, 0x09cd,
+	0x0a3c, 0x0a3c,
+	0x0a4d, 0x0a4d,
+	0x0abc, 0x0abc,
+	0x0acd, 0x0acd,
+	0x0b3c, 0x0b3c,
+	0x0b4d, 0x0b4d,
+	0x0bcd, 0x0bcd,
+	0x0c4d, 0x0c4d,
+	0x0cbc, 0x0cbc,
+	0x0ccd, 0x0ccd,
+	0x0d4d, 0x0d4d,
+	0x0dca, 0x0dca,
+	0x0e47, 0x0e4c,
+	0x0e4e, 0x0e4e,
+	0x0ec8, 0x0ecc,
+	0x0f18, 0x0f19,
+	0x0f35, 0x0f35,
+	0x0f37, 0x0f37,
+	0x0f39, 0x0f39,
+	0x0f3e, 0x0f3f,
+	0x0f82, 0x0f84,
+	0x0f86, 0x0f87,
+	0x0fc6, 0x0fc6,
+	0x1037, 0x1037,
+	0x1039, 0x103a,
+	0x1087, 0x108d,
+	0x108f, 0x108f,
+	0x109a, 0x109b,
+	0x17c9, 0x17d3,
+	0x17dd, 0x17dd,
+	0x1939, 0x193b,
+	0x1a75, 0x1a7c,
+	0x1a7f, 0x1a7f,
+	0x1b34, 0x1b34,
+	0x1b44, 0x1b44,
+	0x1b6b, 0x1b73,
+	0x1baa, 0x1baa,
+	0x1c36, 0x1c37,
+	0x1c78, 0x1c7d,
+	0x1cd0, 0x1ce8,
+	0x1ced, 0x1ced,
+	0x1d2c, 0x1d6a,
+	0x1dc4, 0x1dcf,
+	0x1dfd, 0x1dff,
+	0x1fbd, 0x1fbd,
+	0x1fbf, 0x1fc1,
+	0x1fcd, 0x1fcf,
+	0x1fdd, 0x1fdf,
+	0x1fed, 0x1fef,
+	0x1ffd, 0x1ffe,
+	0x2cef, 0x2cf1,
+	0x2e2f, 0x2e2f,
+	0x302a, 0x302f,
+	0x3099, 0x309c,
+	0x30fc, 0x30fc,
+	0xa66f, 0xa66f,
+	0xa67c, 0xa67d,
+	0xa67f, 0xa67f,
+	0xa6f0, 0xa6f1,
+	0xa717, 0xa721,
+	0xa788, 0xa788,
+	0xa8c4, 0xa8c4,
+	0xa8e0, 0xa8f1,
+	0xa92b, 0xa92e,
+	0xa953, 0xa953,
+	0xa9b3, 0xa9b3,
+	0xa9c0, 0xa9c0,
+	0xaa7b, 0xaa7b,
+	0xaabf, 0xaac2,
+	0xabec, 0xabed,
+	0xfb1e, 0xfb1e,
+	0xfe20, 0xfe26,
+	0xff3e, 0xff3e,
+	0xff40, 0xff40,
+	0xff70, 0xff70,
+	0xff9e, 0xff9f,
+	0xffe3, 0xffe3,
+	0x110b9, 0x110ba,
+	0x1d167, 0x1d169,
+	0x1d16d, 0x1d172,
+	0x1d17b, 0x1d182,
+	0x1d185, 0x1d18b,
+	0x1d1aa, 0x1d1ad,
+}; /* CR_Diacritic */
+
+/* 'Extender': Binary Property */
+static const OnigCodePoint CR_Extender[] = {
+	20,
+	0x00b7, 0x00b7,
+	0x02d0, 0x02d1,
+	0x0640, 0x0640,
+	0x07fa, 0x07fa,
+	0x0e46, 0x0e46,
+	0x0ec6, 0x0ec6,
+	0x1843, 0x1843,
+	0x1aa7, 0x1aa7,
+	0x1c36, 0x1c36,
+	0x1c7b, 0x1c7b,
+	0x3005, 0x3005,
+	0x3031, 0x3035,
+	0x309d, 0x309e,
+	0x30fc, 0x30fe,
+	0xa015, 0xa015,
+	0xa60c, 0xa60c,
+	0xa9cf, 0xa9cf,
+	0xaa70, 0xaa70,
+	0xaadd, 0xaadd,
+	0xff70, 0xff70,
+}; /* CR_Extender */
+
+/* 'Other_Lowercase': Binary Property */
+static const OnigCodePoint CR_Other_Lowercase[] = {
+	13,
+	0x02b0, 0x02b8,
+	0x02c0, 0x02c1,
+	0x02e0, 0x02e4,
+	0x0345, 0x0345,
+	0x037a, 0x037a,
+	0x1d2c, 0x1d61,
+	0x1d78, 0x1d78,
+	0x1d9b, 0x1dbf,
+	0x2090, 0x2094,
+	0x2170, 0x217f,
+	0x24d0, 0x24e9,
+	0x2c7d, 0x2c7d,
+	0xa770, 0xa770,
+}; /* CR_Other_Lowercase */
+
+/* 'Other_Uppercase': Binary Property */
+static const OnigCodePoint CR_Other_Uppercase[] = {
+	2,
+	0x2160, 0x216f,
+	0x24b6, 0x24cf,
+}; /* CR_Other_Uppercase */
+
+/* 'Noncharacter_Code_Point': Binary Property */
+static const OnigCodePoint CR_Noncharacter_Code_Point[] = {
+	18,
+	0xfdd0, 0xfdef,
+	0xfffe, 0xffff,
+	0x1fffe, 0x1ffff,
+	0x2fffe, 0x2ffff,
+	0x3fffe, 0x3ffff,
+	0x4fffe, 0x4ffff,
+	0x5fffe, 0x5ffff,
+	0x6fffe, 0x6ffff,
+	0x7fffe, 0x7ffff,
+	0x8fffe, 0x8ffff,
+	0x9fffe, 0x9ffff,
+	0xafffe, 0xaffff,
+	0xbfffe, 0xbffff,
+	0xcfffe, 0xcffff,
+	0xdfffe, 0xdffff,
+	0xefffe, 0xeffff,
+	0xffffe, 0xfffff,
+	0x10fffe, 0x10ffff,
+}; /* CR_Noncharacter_Code_Point */
+
+/* 'Other_Grapheme_Extend': Binary Property */
+static const OnigCodePoint CR_Other_Grapheme_Extend[] = {
+	16,
+	0x09be, 0x09be,
+	0x09d7, 0x09d7,
+	0x0b3e, 0x0b3e,
+	0x0b57, 0x0b57,
+	0x0bbe, 0x0bbe,
+	0x0bd7, 0x0bd7,
+	0x0cc2, 0x0cc2,
+	0x0cd5, 0x0cd6,
+	0x0d3e, 0x0d3e,
+	0x0d57, 0x0d57,
+	0x0dcf, 0x0dcf,
+	0x0ddf, 0x0ddf,
+	0x200c, 0x200d,
+	0xff9e, 0xff9f,
+	0x1d165, 0x1d165,
+	0x1d16e, 0x1d172,
+}; /* CR_Other_Grapheme_Extend */
+
+/* 'IDS_Binary_Operator': Binary Property */
+static const OnigCodePoint CR_IDS_Binary_Operator[] = {
+	2,
+	0x2ff0, 0x2ff1,
+	0x2ff4, 0x2ffb,
+}; /* CR_IDS_Binary_Operator */
+
+/* 'IDS_Trinary_Operator': Binary Property */
+static const OnigCodePoint CR_IDS_Trinary_Operator[] = {
+	1,
+	0x2ff2, 0x2ff3,
+}; /* CR_IDS_Trinary_Operator */
+
+/* 'Radical': Binary Property */
+static const OnigCodePoint CR_Radical[] = {
+	3,
+	0x2e80, 0x2e99,
+	0x2e9b, 0x2ef3,
+	0x2f00, 0x2fd5,
+}; /* CR_Radical */
+
+/* 'Unified_Ideograph': Binary Property */
+static const OnigCodePoint CR_Unified_Ideograph[] = {
+	11,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fcb,
+	0xfa0e, 0xfa0f,
+	0xfa11, 0xfa11,
+	0xfa13, 0xfa14,
+	0xfa1f, 0xfa1f,
+	0xfa21, 0xfa21,
+	0xfa23, 0xfa24,
+	0xfa27, 0xfa29,
+	0x20000, 0x2a6d6,
+	0x2a700, 0x2b734,
+}; /* CR_Unified_Ideograph */
+
+/* 'Other_Default_Ignorable_Code_Point': Binary Property */
+static const OnigCodePoint CR_Other_Default_Ignorable_Code_Point[] = {
+	10,
+	0x034f, 0x034f,
+	0x115f, 0x1160,
+	0x2065, 0x2069,
+	0x3164, 0x3164,
+	0xffa0, 0xffa0,
+	0xfff0, 0xfff8,
+	0xe0000, 0xe0000,
+	0xe0002, 0xe001f,
+	0xe0080, 0xe00ff,
+	0xe01f0, 0xe0fff,
+}; /* CR_Other_Default_Ignorable_Code_Point */
+
+/* 'Deprecated': Binary Property */
+static const OnigCodePoint CR_Deprecated[] = {
+	8,
+	0x0149, 0x0149,
+	0x0f77, 0x0f77,
+	0x0f79, 0x0f79,
+	0x17a3, 0x17a4,
+	0x206a, 0x206f,
+	0x2329, 0x232a,
+	0xe0001, 0xe0001,
+	0xe0020, 0xe007f,
+}; /* CR_Deprecated */
+
+/* 'Soft_Dotted': Binary Property */
+static const OnigCodePoint CR_Soft_Dotted[] = {
+	31,
+	0x0069, 0x006a,
+	0x012f, 0x012f,
+	0x0249, 0x0249,
+	0x0268, 0x0268,
+	0x029d, 0x029d,
+	0x02b2, 0x02b2,
+	0x03f3, 0x03f3,
+	0x0456, 0x0456,
+	0x0458, 0x0458,
+	0x1d62, 0x1d62,
+	0x1d96, 0x1d96,
+	0x1da4, 0x1da4,
+	0x1da8, 0x1da8,
+	0x1e2d, 0x1e2d,
+	0x1ecb, 0x1ecb,
+	0x2071, 0x2071,
+	0x2148, 0x2149,
+	0x2c7c, 0x2c7c,
+	0x1d422, 0x1d423,
+	0x1d456, 0x1d457,
+	0x1d48a, 0x1d48b,
+	0x1d4be, 0x1d4bf,
+	0x1d4f2, 0x1d4f3,
+	0x1d526, 0x1d527,
+	0x1d55a, 0x1d55b,
+	0x1d58e, 0x1d58f,
+	0x1d5c2, 0x1d5c3,
+	0x1d5f6, 0x1d5f7,
+	0x1d62a, 0x1d62b,
+	0x1d65e, 0x1d65f,
+	0x1d692, 0x1d693,
+}; /* CR_Soft_Dotted */
+
+/* 'Logical_Order_Exception': Binary Property */
+static const OnigCodePoint CR_Logical_Order_Exception[] = {
+	5,
+	0x0e40, 0x0e44,
+	0x0ec0, 0x0ec4,
+	0xaab5, 0xaab6,
+	0xaab9, 0xaab9,
+	0xaabb, 0xaabc,
+}; /* CR_Logical_Order_Exception */
+
+/* 'Other_ID_Start': Binary Property */
+static const OnigCodePoint CR_Other_ID_Start[] = {
+	3,
+	0x2118, 0x2118,
+	0x212e, 0x212e,
+	0x309b, 0x309c,
+}; /* CR_Other_ID_Start */
+
+/* 'Other_ID_Continue': Binary Property */
+static const OnigCodePoint CR_Other_ID_Continue[] = {
+	3,
+	0x00b7, 0x00b7,
+	0x0387, 0x0387,
+	0x1369, 0x1371,
+}; /* CR_Other_ID_Continue */
+
+/* 'STerm': Binary Property */
+static const OnigCodePoint CR_STerm[] = {
+	43,
+	0x0021, 0x0021,
+	0x002e, 0x002e,
+	0x003f, 0x003f,
+	0x055c, 0x055c,
+	0x055e, 0x055e,
+	0x0589, 0x0589,
+	0x061f, 0x061f,
+	0x06d4, 0x06d4,
+	0x0700, 0x0702,
+	0x07f9, 0x07f9,
+	0x0964, 0x0965,
+	0x104a, 0x104b,
+	0x1362, 0x1362,
+	0x1367, 0x1368,
+	0x166e, 0x166e,
+	0x1803, 0x1803,
+	0x1809, 0x1809,
+	0x1944, 0x1945,
+	0x1b5a, 0x1b5b,
+	0x1b5e, 0x1b5f,
+	0x1c3b, 0x1c3c,
+	0x1c7e, 0x1c7f,
+	0x203c, 0x203d,
+	0x2047, 0x2049,
+	0x2e2e, 0x2e2e,
+	0x3002, 0x3002,
+	0xa4ff, 0xa4ff,
+	0xa60e, 0xa60f,
+	0xa6f3, 0xa6f3,
+	0xa6f7, 0xa6f7,
+	0xa876, 0xa877,
+	0xa8ce, 0xa8cf,
+	0xa92f, 0xa92f,
+	0xa9c8, 0xa9c9,
+	0xaa5d, 0xaa5f,
+	0xabeb, 0xabeb,
+	0xfe52, 0xfe52,
+	0xfe56, 0xfe57,
+	0xff01, 0xff01,
+	0xff0e, 0xff0e,
+	0xff1f, 0xff1f,
+	0xff61, 0xff61,
+	0x110be, 0x110c1,
+}; /* CR_STerm */
+
+/* 'Variation_Selector': Binary Property */
+static const OnigCodePoint CR_Variation_Selector[] = {
+	3,
+	0x180b, 0x180d,
+	0xfe00, 0xfe0f,
+	0xe0100, 0xe01ef,
+}; /* CR_Variation_Selector */
+
+/* 'Pattern_White_Space': Binary Property */
+static const OnigCodePoint CR_Pattern_White_Space[] = {
+	5,
+	0x0009, 0x000d,
+	0x0020, 0x0020,
+	0x0085, 0x0085,
+	0x200e, 0x200f,
+	0x2028, 0x2029,
+}; /* CR_Pattern_White_Space */
+
+/* 'Pattern_Syntax': Binary Property */
+static const OnigCodePoint CR_Pattern_Syntax[] = {
+	28,
+	0x0021, 0x002f,
+	0x003a, 0x0040,
+	0x005b, 0x005e,
+	0x0060, 0x0060,
+	0x007b, 0x007e,
+	0x00a1, 0x00a7,
+	0x00a9, 0x00a9,
+	0x00ab, 0x00ac,
+	0x00ae, 0x00ae,
+	0x00b0, 0x00b1,
+	0x00b6, 0x00b6,
+	0x00bb, 0x00bb,
+	0x00bf, 0x00bf,
+	0x00d7, 0x00d7,
+	0x00f7, 0x00f7,
+	0x2010, 0x2027,
+	0x2030, 0x203e,
+	0x2041, 0x2053,
+	0x2055, 0x205e,
+	0x2190, 0x245f,
+	0x2500, 0x2775,
+	0x2794, 0x2bff,
+	0x2e00, 0x2e7f,
+	0x3001, 0x3003,
+	0x3008, 0x3020,
+	0x3030, 0x3030,
+	0xfd3e, 0xfd3f,
+	0xfe45, 0xfe46,
+}; /* CR_Pattern_Syntax */
 #endif /* USE_UNICODE_PROPERTIES */
 
-
 static const OnigCodePoint* const CodeRanges[] = {
   CR_NEWLINE,
   CR_Alpha,
@@ -9857,6 +18043,25 @@
   CR_Zl,
   CR_Zp,
   CR_Zs,
+  CR_Math,
+  CR_Alphabetic,
+  CR_Lowercase,
+  CR_Uppercase,
+  CR_Cased,
+  CR_Case_Ignorable,
+  CR_Changes_When_Lowercased,
+  CR_Changes_When_Uppercased,
+  CR_Changes_When_Titlecased,
+  CR_Changes_When_Casefolded,
+  CR_Changes_When_Casemapped,
+  CR_ID_Start,
+  CR_ID_Continue,
+  CR_XID_Start,
+  CR_XID_Continue,
+  CR_Default_Ignorable_Code_Point,
+  CR_Grapheme_Extend,
+  CR_Grapheme_Base,
+  CR_Grapheme_Link,
   CR_Common,
   CR_Latin,
   CR_Greek,
@@ -9949,6 +18154,38 @@
   CR_Inscriptional_Pahlavi,
   CR_Old_Turkic,
   CR_Kaithi,
+  CR_White_Space,
+  CR_Bidi_Control,
+  CR_Join_Control,
+  CR_Dash,
+  CR_Hyphen,
+  CR_Quotation_Mark,
+  CR_Terminal_Punctuation,
+  CR_Other_Math,
+  CR_Hex_Digit,
+  CR_ASCII_Hex_Digit,
+  CR_Other_Alphabetic,
+  CR_Ideographic,
+  CR_Diacritic,
+  CR_Extender,
+  CR_Other_Lowercase,
+  CR_Other_Uppercase,
+  CR_Noncharacter_Code_Point,
+  CR_Other_Grapheme_Extend,
+  CR_IDS_Binary_Operator,
+  CR_IDS_Trinary_Operator,
+  CR_Radical,
+  CR_Unified_Ideograph,
+  CR_Other_Default_Ignorable_Code_Point,
+  CR_Deprecated,
+  CR_Soft_Dotted,
+  CR_Logical_Order_Exception,
+  CR_Other_ID_Start,
+  CR_Other_ID_Continue,
+  CR_STerm,
+  CR_Variation_Selector,
+  CR_Pattern_White_Space,
+  CR_Pattern_Syntax,
 #endif /* USE_UNICODE_PROPERTIES */
 };
 struct uniname2ctype_struct {
@@ -9959,153 +18196,374 @@
 %}
 struct uniname2ctype_struct;
 %%
-newline,                0
-alpha,                  1
-blank,                  2
-cntrl,                  3
-digit,                  4
-graph,                  5
-lower,                  6
-print,                  7
-punct,                  8
-space,                  9
-upper,                 10
-xdigit,                11
-word,                  12
-alnum,                 13
-ascii,                 14
+newline,                                   0
+alpha,                                     1
+blank,                                     2
+cntrl,                                     3
+digit,                                     4
+graph,                                     5
+lower,                                     6
+print,                                     7
+punct,                                     8
+space,                                     9
+upper,                                    10
+xdigit,                                   11
+word,                                     12
+alnum,                                    13
+ascii,                                    14
 #ifdef USE_UNICODE_PROPERTIES
-any,                   15
-assigned,              16
-c,                     17
-cc,                    18
-cf,                    19
-cn,                    20
-co,                    21
-cs,                    22
-l,                     23
-ll,                    24
-lm,                    25
-lo,                    26
-lt,                    27
-lu,                    28
-m,                     29
-mc,                    30
-me,                    31
-mn,                    32
-n,                     33
-nd,                    34
-nl,                    35
-no,                    36
-p,                     37
-pc,                    38
-pd,                    39
-pe,                    40
-pf,                    41
-pi,                    42
-po,                    43
-ps,                    44
-s,                     45
-sc,                    46
-sk,                    47
-sm,                    48
-so,                    49
-z,                     50
-zl,                    51
-zp,                    52
-zs,                    53
-common,                54
-latin,                 55
-greek,                 56
-cyrillic,              57
-armenian,              58
-hebrew,                59
-arabic,                60
-syriac,                61
-thaana,                62
-devanagari,            63
-bengali,               64
-gurmukhi,              65
-gujarati,              66
-oriya,                 67
-tamil,                 68
-telugu,                69
-kannada,               70
-malayalam,             71
-sinhala,               72
-thai,                  73
-lao,                   74
-tibetan,               75
-myanmar,               76
-georgian,              77
-hangul,                78
-ethiopic,              79
-cherokee,              80
-canadianaboriginal,    81
-ogham,                 82
-runic,                 83
-khmer,                 84
-mongolian,             85
-hiragana,              86
-katakana,              87
-bopomofo,              88
-han,                   89
-yi,                    90
-olditalic,             91
-gothic,                92
-deseret,               93
-inherited,             94
-tagalog,               95
-hanunoo,               96
-buhid,                 97
-tagbanwa,              98
-limbu,                 99
-taile,                100
-linearb,              101
-ugaritic,             102
-shavian,              103
-osmanya,              104
-cypriot,              105
-braille,              106
-buginese,             107
-coptic,               108
-newtailue,            109
-glagolitic,           110
-tifinagh,             111
-sylotinagri,          112
-oldpersian,           113
-kharoshthi,           114
-balinese,             115
-cuneiform,            116
-phoenician,           117
-phagspa,              118
-nko,                  119
-sundanese,            120
-lepcha,               121
-olchiki,              122
-vai,                  123
-saurashtra,           124
-kayahli,              125
-rejang,               126
-lycian,               127
-carian,               128
-lydian,               129
-cham,                 130
-taitham,              131
-taiviet,              132
-avestan,              133
-egyptianhieroglyphs,  134
-samaritan,            135
-lisu,                 136
-bamum,                137
-javanese,             138
-meeteimayek,          139
-imperialaramaic,      140
-oldsoutharabian,      141
-inscriptionalparthian, 142
-inscriptionalpahlavi, 143
-oldturkic,            144
-kaithi,               145
+any,                                      15
+assigned,                                 16
+c,                                        17
+cc,                                       18
+cf,                                       19
+cn,                                       20
+co,                                       21
+cs,                                       22
+l,                                        23
+ll,                                       24
+lm,                                       25
+lo,                                       26
+lt,                                       27
+lu,                                       28
+m,                                        29
+mc,                                       30
+me,                                       31
+mn,                                       32
+n,                                        33
+nd,                                       34
+nl,                                       35
+no,                                       36
+p,                                        37
+pc,                                       38
+pd,                                       39
+pe,                                       40
+pf,                                       41
+pi,                                       42
+po,                                       43
+ps,                                       44
+s,                                        45
+sc,                                       46
+sk,                                       47
+sm,                                       48
+so,                                       49
+z,                                        50
+zl,                                       51
+zp,                                       52
+zs,                                       53
+math,                                     54
+alphabetic,                               55
+lowercase,                                56
+uppercase,                                57
+cased,                                    58
+caseignorable,                            59
+changeswhenlowercased,                    60
+changeswhenuppercased,                    61
+changeswhentitlecased,                    62
+changeswhencasefolded,                    63
+changeswhencasemapped,                    64
+idstart,                                  65
+idcontinue,                               66
+xidstart,                                 67
+xidcontinue,                              68
+defaultignorablecodepoint,                69
+graphemeextend,                           70
+graphemebase,                             71
+graphemelink,                             72
+common,                                   73
+latin,                                    74
+greek,                                    75
+cyrillic,                                 76
+armenian,                                 77
+hebrew,                                   78
+arabic,                                   79
+syriac,                                   80
+thaana,                                   81
+devanagari,                               82
+bengali,                                  83
+gurmukhi,                                 84
+gujarati,                                 85
+oriya,                                    86
+tamil,                                    87
+telugu,                                   88
+kannada,                                  89
+malayalam,                                90
+sinhala,                                  91
+thai,                                     92
+lao,                                      93
+tibetan,                                  94
+myanmar,                                  95
+georgian,                                 96
+hangul,                                   97
+ethiopic,                                 98
+cherokee,                                 99
+canadianaboriginal,                      100
+ogham,                                   101
+runic,                                   102
+khmer,                                   103
+mongolian,                               104
+hiragana,                                105
+katakana,                                106
+bopomofo,                                107
+han,                                     108
+yi,                                      109
+olditalic,                               110
+gothic,                                  111
+deseret,                                 112
+inherited,                               113
+tagalog,                                 114
+hanunoo,                                 115
+buhid,                                   116
+tagbanwa,                                117
+limbu,                                   118
+taile,                                   119
+linearb,                                 120
+ugaritic,                                121
+shavian,                                 122
+osmanya,                                 123
+cypriot,                                 124
+braille,                                 125
+buginese,                                126
+coptic,                                  127
+newtailue,                               128
+glagolitic,                              129
+tifinagh,                                130
+sylotinagri,                             131
+oldpersian,                              132
+kharoshthi,                              133
+balinese,                                134
+cuneiform,                               135
+phoenician,                              136
+phagspa,                                 137
+nko,                                     138
+sundanese,                               139
+lepcha,                                  140
+olchiki,                                 141
+vai,                                     142
+saurashtra,                              143
+kayahli,                                 144
+rejang,                                  145
+lycian,                                  146
+carian,                                  147
+lydian,                                  148
+cham,                                    149
+taitham,                                 150
+taiviet,                                 151
+avestan,                                 152
+egyptianhieroglyphs,                     153
+samaritan,                               154
+lisu,                                    155
+bamum,                                   156
+javanese,                                157
+meeteimayek,                             158
+imperialaramaic,                         159
+oldsoutharabian,                         160
+inscriptionalparthian,                   161
+inscriptionalpahlavi,                    162
+oldturkic,                               163
+kaithi,                                  164
+whitespace,                              165
+bidicontrol,                             166
+joincontrol,                             167
+dash,                                    168
+hyphen,                                  169
+quotationmark,                           170
+terminalpunctuation,                     171
+othermath,                               172
+hexdigit,                                173
+asciihexdigit,                           174
+otheralphabetic,                         175
+ideographic,                             176
+diacritic,                               177
+extender,                                178
+otherlowercase,                          179
+otheruppercase,                          180
+noncharactercodepoint,                   181
+othergraphemeextend,                     182
+idsbinaryoperator,                       183
+idstrinaryoperator,                      184
+radical,                                 185
+unifiedideograph,                        186
+otherdefaultignorablecodepoint,          187
+deprecated,                              188
+softdotted,                              189
+logicalorderexception,                   190
+otheridstart,                            191
+otheridcontinue,                         192
+sterm,                                   193
+variationselector,                       194
+patternwhitespace,                       195
+patternsyntax,                           196
+ahex,                                    174
+bidic,                                   166
+ci,                                       59
+cwcf,                                     63
+cwcm,                                     64
+cwl,                                      60
+cwt,                                      62
+cwu,                                      61
+dep,                                     188
+di,                                       69
+dia,                                     177
+ext,                                     178
+grbase,                                   71
+grext,                                    70
+grlink,                                   72
+hex,                                     173
+idc,                                      66
+ideo,                                    176
+ids,                                      65
+idsb,                                    183
+idst,                                    184
+joinc,                                   167
+loe,                                     190
+nchar,                                   181
+oalpha,                                  175
+odi,                                     187
+ogrext,                                  182
+oidc,                                    192
+oids,                                    191
+olower,                                  179
+omath,                                   172
+oupper,                                  180
+patsyn,                                  196
+patws,                                   195
+qmark,                                   170
+sd,                                      189
+term,                                    171
+uideo,                                   186
+vs,                                      194
+wspace,                                  165
+xidc,                                     68
+xids,                                     67
+other,                                    17
+control,                                  18
+format,                                   19
+unassigned,                               20
+privateuse,                               21
+surrogate,                                22
+letter,                                   23
+lowercaseletter,                          24
+modifierletter,                           25
+otherletter,                              26
+titlecaseletter,                          27
+uppercaseletter,                          28
+mark,                                     29
+spacingmark,                              30
+enclosingmark,                            31
+nonspacingmark,                           32
+number,                                   33
+decimalnumber,                            34
+letternumber,                             35
+othernumber,                              36
+punctuation,                              37
+connectorpunctuation,                     38
+dashpunctuation,                          39
+closepunctuation,                         40
+finalpunctuation,                         41
+initialpunctuation,                       42
+otherpunctuation,                         43
+openpunctuation,                          44
+symbol,                                   45
+currencysymbol,                           46
+modifiersymbol,                           47
+mathsymbol,                               48
+othersymbol,                              49
+separator,                                50
+lineseparator,                            51
+paragraphseparator,                       52
+spaceseparator,                           53
+arab,                                     79
+armi,                                    159
+armn,                                     77
+avst,                                    152
+bali,                                    134
+bamu,                                    156
+beng,                                     83
+bopo,                                    107
+brai,                                    125
+bugi,                                    126
+buhd,                                    116
+cans,                                    100
+cari,                                    147
+cher,                                     99
+copt,                                    127
+qaac,                                    127
+cprt,                                    124
+cyrl,                                     76
+deva,                                     82
+dsrt,                                    112
+egyp,                                    153
+ethi,                                     98
+geor,                                     96
+glag,                                    129
+goth,                                    111
+grek,                                     75
+gujr,                                     85
+guru,                                     84
+hang,                                     97
+hani,                                    108
+hano,                                    115
+hebr,                                     78
+hira,                                    105
+ital,                                    110
+java,                                    157
+kali,                                    144
+kana,                                    106
+khar,                                    133
+khmr,                                    103
+knda,                                     89
+kthi,                                    164
+lana,                                    150
+laoo,                                     93
+latn,                                     74
+lepc,                                    140
+limb,                                    118
+linb,                                    120
+lyci,                                    146
+lydi,                                    148
+mlym,                                     90
+mong,                                    104
+mtei,                                    158
+mymr,                                     95
+nkoo,                                    138
+ogam,                                    101
+olck,                                    141
+orkh,                                    163
+orya,                                     86
+osma,                                    123
+phag,                                    137
+phli,                                    162
+phnx,                                    136
+prti,                                    161
+rjng,                                    145
+runr,                                    102
+samr,                                    154
+sarb,                                    160
+saur,                                    143
+shaw,                                    122
+sinh,                                     91
+sund,                                    139
+sylo,                                    131
+syrc,                                     80
+tagb,                                    117
+tale,                                    119
+talu,                                    128
+taml,                                     87
+tavt,                                    151
+telu,                                     88
+tfng,                                    130
+tglg,                                    114
+thaa,                                     81
+tibt,                                     94
+ugar,                                    121
+vaii,                                    142
+xpeo,                                    132
+xsux,                                    135
+yiii,                                    109
+zinh,                                    113
+qaai,                                    113
+zyyy,                                     73
 #endif /* USE_UNICODE_PROPERTIES */
 %%
 static int
Index: tool/enc-unicode.rb
===================================================================
--- tool/enc-unicode.rb	(revision 25323)
+++ tool/enc-unicode.rb	(revision 25324)
@@ -3,15 +3,15 @@
 # Creates the data structures needed by Onigurma to map Unicode codepoints to
 # property names and POSIX character classes
 #
-# To use this, get UnicodeData.txt and Scripts.txt from unicode.org.
+# To use this, get UnicodeData.txt, Scripts.txt, PropList.txt from unicode.org.
 # (http://unicode.org/Public/UNIDATA/)
 # And run following command.
-#   ruby1.9 tool/enc-unicode.rb UnicodeData.txt Scripts.txt > enc/unicode/name2ctype.kwd
+#   ruby1.9 tool/enc-unicode.rb data_dir > enc/unicode/name2ctype.kwd
 # You can get source file for gperf.
 # After this, simply make ruby.
 
-unless ARGV.size == 2
-  $stderr.puts "Usage: #{$0} UnicodeData.txt Scripts.txt"
+unless ARGV.size == 1
+  $stderr.puts "Usage: #{$0} data_directory"
   exit(1)
 end
 
@@ -161,23 +161,49 @@
 end
 
 
-def parse_scripts(file)
-  script = nil
+def parse_scripts
+  files = [
+    {fn: 'DerivedCoreProperties.txt', title: 'Derived Property'},
+    {fn: 'Scripts.txt', title: 'Script'},
+    {fn: 'PropList.txt', title: 'Binary Property'}
+  ]
+  current = nil
   data = []
   names = []
-  IO.foreach(file) do |line|
-    if /^# Total code points: / =~ line
-      make_const(script, pair_codepoints(data), 'Script')
-      names << script
-      data = []
-    elsif /^([[:xdigit:]]+)(?:..([[:xdigit:]]+))?\s*;\s*(\w+)/ =~ line
-      script = $3
-      $2 ? data.concat(($1.to_i(16)..$2.to_i(16)).to_a) : data.push($1.to_i(16))
+  files.each do |file|
+    IO.foreach(get_file(file[:fn])) do |line|
+      if /^# Total code points: / =~ line
+        make_const(current, pair_codepoints(data), file[:title])
+        names << current
+        data = []
+      elsif /^(\h+)(?:..(\h+))?\s*;\s*(\w+)/ =~ line
+        current = $3
+        $2 ? data.concat(($1.to_i(16)..$2.to_i(16)).to_a) : data.push($1.to_i(16))
+      end
     end
   end
   names
 end
 
+def parse_aliases
+  kv = {}
+  IO.foreach(get_file('PropertyAliases.txt')) do |line|
+    next unless /^(\w+)\s*; (\w+)/ =~ line
+    kv[normalize_propname($1)] = normalize_propname($2)
+  end
+  IO.foreach(get_file('PropertyValueAliases.txt')) do |line|
+    next unless /^(sc|gc)\s*; (\w+)\s*; (\w+)(?:\s*; (\w+))?/ =~ line
+    if $1 == 'gc'
+      kv[normalize_propname($3)] = normalize_propname($2)
+      kv[normalize_propname($4)] = normalize_propname($2) if $4
+    else
+      kv[normalize_propname($2)] = normalize_propname($3)
+      kv[normalize_propname($4)] = normalize_propname($3) if $4
+    end
+  end
+  kv
+end
+
 # make_const(property, pairs, name): Prints a 'static const' structure for a
 # given property, group of paired codepoints, and a human-friendly name for
 # the group
@@ -195,17 +221,23 @@
 
 def normalize_propname(name)
   name = name.downcase
-  name.gsub!(/[- _]/, '')
+  name.delete!('- _')
   name
 end
 
+def get_file(name)
+  File.join(ARGV[0], name)
+end
+
+
+# Write Data
 puts '%{'
-gcps, data = parse_unicode_data(ARGV[0])
+props, data = parse_unicode_data(get_file('UnicodeData.txt'))
 POSIX_NAMES.each do |name|
   make_const(name, pair_codepoints(data[name]), "[[:#{name}:]]")
 end
 print "\n#ifdef USE_UNICODE_PROPERTIES"
-gcps.each do |name|
+props.each do |name|
   category =
     case name.size
     when 1 then 'Major Category'
@@ -214,18 +246,19 @@
     end
   make_const(name, pair_codepoints(data[name]), category)
 end
-scripts = parse_scripts(ARGV[1])
-puts "#endif /* USE_UNICODE_PROPERTIES */"
+props.concat parse_scripts
+puts(<<'__HEREDOC')
+#endif /* USE_UNICODE_PROPERTIES */
 
-puts "\n\nstatic const OnigCodePoint* const CodeRanges[] = {"
+static const OnigCodePoint* const CodeRanges[] = {
+__HEREDOC
 POSIX_NAMES.each{|name|puts"  CR_#{name},"}
 puts "#ifdef USE_UNICODE_PROPERTIES"
-gcps.each{|name|puts"  CR_#{name},"}
-scripts.each{|name|puts"  CR_#{name},"}
-puts "#endif /* USE_UNICODE_PROPERTIES */"
-puts "};"
+props.each{|name|puts"  CR_#{name},"}
 
 puts(<<'__HEREDOC')
+#endif /* USE_UNICODE_PROPERTIES */
+};
 struct uniname2ctype_struct {
   int name, ctype;
 };
@@ -236,12 +269,27 @@
 %%
 __HEREDOC
 i = -1
-POSIX_NAMES.each  {|name|puts"%-21s %3d" % [normalize_propname(name)+',', i+=1]}
+name_to_index = {}
+POSIX_NAMES.each do |name|
+  i += 1
+  name = normalize_propname(name)
+  name_to_index[name] = i
+  puts"%-40s %3d" % [name + ',', i]
+end
 puts "#ifdef USE_UNICODE_PROPERTIES"
-gcps.each{|name|puts"%-21s %3d" % [normalize_propname(name)+',', i+=1]}
-scripts.each{|name|puts"%-21s %3d" % [normalize_propname(name)+',', i+=1]}
-puts "#endif /* USE_UNICODE_PROPERTIES */\n"
+props.each do |name|
+  i += 1
+  name = normalize_propname(name)
+  name_to_index[name] = i
+  puts "%-40s %3d" % [name + ',', i]
+end
+parse_aliases.each_pair do |k, v|
+  next if name_to_index[k]
+  next unless v = name_to_index[v]
+  puts "%-40s %3d" % [k + ',', v]
+end
 puts(<<'__HEREDOC')
+#endif /* USE_UNICODE_PROPERTIES */
 %%
 static int
 uniname2ctype(const UChar *name, unsigned int len)

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]