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

ruby-changes:12920

From: nobu <ko1@a...>
Date: Wed, 26 Aug 2009 06:54:51 +0900 (JST)
Subject: [ruby-changes:12920] Ruby:r24657 (trunk): * enc/unicode/name2ctype.h: updated.

nobu	2009-08-26 06:54:03 +0900 (Wed, 26 Aug 2009)

  New Revision: 24657

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

  Log:
    * enc/unicode/name2ctype.h: updated.

  Modified files:
    trunk/enc/unicode/name2ctype.h

Index: enc/unicode/name2ctype.h
===================================================================
--- enc/unicode/name2ctype.h	(revision 24656)
+++ enc/unicode/name2ctype.h	(revision 24657)
@@ -1,9 +1,9 @@
-/* C code produced by gperf version 3.0.4 */
+/* C code produced by gperf version 3.0.3 */
 /* Command-line: gperf -7 -c -j1 -i1 -t -C -P -T -H uniname2ctype_hash -Q uniname2ctype_pool -N uniname2ctype_p  */
 #ifndef USE_UNICODE_PROPERTIES
 /* Computed positions: -k'1,3' */
 #else /* USE_UNICODE_PROPERTIES */
-/* Computed positions: -k'1,3,$' */
+/* Computed positions: -k'1-3' */
 #endif /* USE_UNICODE_PROPERTIES */
 
 #if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
@@ -34,6 +34,9333 @@
 #endif
 
 
+
+/* 'NEWLINE': [[:NEWLINE:]] */
+static const OnigCodePoint CR_NEWLINE[] = {
+	1,
+	0x000a, 0x000a,
+}; /* CR_NEWLINE */
+
+/* 'Alpha': [[:Alpha:]] */
+static const OnigCodePoint CR_Alpha[] = {
+	452,
+	0x0041, 0x005a,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0300, 0x0374,
+	0x0376, 0x0377,
+	0x037a, 0x037d,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x0483, 0x0523,
+	0x0531, 0x0556,
+	0x0559, 0x0559,
+	0x0561, 0x0587,
+	0x0591, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f2,
+	0x0610, 0x061a,
+	0x0621, 0x065e,
+	0x066e, 0x06d3,
+	0x06d5, 0x06dc,
+	0x06de, 0x06e8,
+	0x06ea, 0x06ef,
+	0x06fa, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x074a,
+	0x074d, 0x07b1,
+	0x07ca, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0901, 0x0939,
+	0x093c, 0x094d,
+	0x0950, 0x0954,
+	0x0958, 0x0963,
+	0x0971, 0x0972,
+	0x097b, 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,
+	0x09f0, 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,
+	0x0a70, 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,
+	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,
+	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,
+	0x0c01, 0x0c03,
+	0x0c05, 0x0c0c,
+	0x0c0e, 0x0c10,
+	0x0c12, 0x0c28,
+	0x0c2a, 0x0c33,
+	0x0c35, 0x0c39,
+	0x0c3d, 0x0c44,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4d,
+	0x0c55, 0x0c56,
+	0x0c58, 0x0c59,
+	0x0c60, 0x0c63,
+	0x0c82, 0x0c83,
+	0x0c85, 0x0c8c,
+	0x0c8e, 0x0c90,
+	0x0c92, 0x0ca8,
+	0x0caa, 0x0cb3,
+	0x0cb5, 0x0cb9,
+	0x0cbc, 0x0cc4,
+	0x0cc6, 0x0cc8,
+	0x0cca, 0x0ccd,
+	0x0cd5, 0x0cd6,
+	0x0cde, 0x0cde,
+	0x0ce0, 0x0ce3,
+	0x0d02, 0x0d03,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d44,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4d,
+	0x0d57, 0x0d57,
+	0x0d60, 0x0d63,
+	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,
+	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,
+	0x0edc, 0x0edd,
+	0x0f00, 0x0f00,
+	0x0f18, 0x0f19,
+	0x0f35, 0x0f35,
+	0x0f37, 0x0f37,
+	0x0f39, 0x0f39,
+	0x0f3e, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f71, 0x0f84,
+	0x0f86, 0x0f8b,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x0fc6, 0x0fc6,
+	0x1000, 0x103f,
+	0x1050, 0x108f,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x1100, 0x1159,
+	0x115f, 0x11a2,
+	0x11a8, 0x11f9,
+	0x1200, 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, 0x1676,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	0x1700, 0x170c,
+	0x170e, 0x1714,
+	0x1720, 0x1734,
+	0x1740, 0x1753,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1772, 0x1773,
+	0x1780, 0x17b3,
+	0x17b6, 0x17d3,
+	0x17d7, 0x17d7,
+	0x17dc, 0x17dd,
+	0x180b, 0x180d,
+	0x1820, 0x1877,
+	0x1880, 0x18aa,
+	0x1900, 0x191c,
+	0x1920, 0x192b,
+	0x1930, 0x193b,
+	0x1950, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19a9,
+	0x19b0, 0x19c9,
+	0x1a00, 0x1a1b,
+	0x1b00, 0x1b4b,
+	0x1b6b, 0x1b73,
+	0x1b80, 0x1baa,
+	0x1bae, 0x1baf,
+	0x1c00, 0x1c37,
+	0x1c4d, 0x1c4f,
+	0x1c5a, 0x1c7d,
+	0x1d00, 0x1de6,
+	0x1dfe, 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,
+	0x20d0, 0x20f0,
+	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,
+	0x2183, 0x2184,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2c6f,
+	0x2c71, 0x2c7d,
+	0x2c80, 0x2ce4,
+	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, 0x3006,
+	0x302a, 0x302f,
+	0x3031, 0x3035,
+	0x303b, 0x303c,
+	0x3041, 0x3096,
+	0x3099, 0x309a,
+	0x309d, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x3400,
+	0x4db5, 0x4db5,
+	0x4e00, 0x4e00,
+	0x9fc3, 0x9fc3,
+	0xa000, 0xa48c,
+	0xa500, 0xa60c,
+	0xa610, 0xa61f,
+	0xa62a, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa672,
+	0xa67c, 0xa67d,
+	0xa67f, 0xa697,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa827,
+	0xa840, 0xa873,
+	0xa880, 0xa8c4,
+	0xa90a, 0xa92d,
+	0xa930, 0xa953,
+	0xaa00, 0xaa36,
+	0xaa40, 0xaa4d,
+	0xac00, 0xac00,
+	0xd7a3, 0xd7a3,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6a,
+	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,
+	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,
+	0x101fd, 0x101fd,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x10340,
+	0x10342, 0x10349,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x10400, 0x1049d,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x1083f,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a3f,
+	0x12000, 0x1236e,
+	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,
+	0x20000, 0x20000,
+	0x2a6d6, 0x2a6d6,
+	0x2f800, 0x2fa1d,
+	0xe0100, 0xe01ef,
+}; /* CR_Alpha */
+
+/* 'Blank': [[:Blank:]] */
+static const OnigCodePoint CR_Blank[] = {
+	9,
+	0x0009, 0x0009,
+	0x0020, 0x0020,
+	0x00a0, 0x00a0,
+	0x1680, 0x1680,
+	0x180e, 0x180e,
+	0x2000, 0x200a,
+	0x202f, 0x202f,
+	0x205f, 0x205f,
+	0x3000, 0x3000,
+}; /* CR_Blank */
+
+/* 'Cntrl': [[:Cntrl:]] */
+static const OnigCodePoint CR_Cntrl[] = {
+	2,
+	0x0000, 0x001f,
+	0x007f, 0x009f,
+}; /* CR_Cntrl */
+
+/* 'Digit': [[:Digit:]] */
+static const OnigCodePoint CR_Digit[] = {
+	33,
+	0x0030, 0x0039,
+	0x0660, 0x0669,
+	0x06f0, 0x06f9,
+	0x07c0, 0x07c9,
+	0x0966, 0x096f,
+	0x09e6, 0x09ef,
+	0x0a66, 0x0a6f,
+	0x0ae6, 0x0aef,
+	0x0b66, 0x0b6f,
+	0x0be6, 0x0bef,
+	0x0c66, 0x0c6f,
+	0x0ce6, 0x0cef,
+	0x0d66, 0x0d6f,
+	0x0e50, 0x0e59,
+	0x0ed0, 0x0ed9,
+	0x0f20, 0x0f29,
+	0x1040, 0x1049,
+	0x1090, 0x1099,
+	0x17e0, 0x17e9,
+	0x1810, 0x1819,
+	0x1946, 0x194f,
+	0x19d0, 0x19d9,
+	0x1b50, 0x1b59,
+	0x1bb0, 0x1bb9,
+	0x1c40, 0x1c49,
+	0x1c50, 0x1c59,
+	0xa620, 0xa629,
+	0xa8d0, 0xa8d9,
+	0xa900, 0xa909,
+	0xaa50, 0xaa59,
+	0xff10, 0xff19,
+	0x104a0, 0x104a9,
+	0x1d7ce, 0x1d7ff,
+}; /* CR_Digit */
+
+/* 'Graph': [[:Graph:]] */
+static const OnigCodePoint CR_Graph[] = {
+	449,
+	0x0021, 0x007e,
+	0x00a1, 0x00ac,
+	0x00ae, 0x0377,
+	0x037a, 0x037e,
+	0x0384, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x0523,
+	0x0531, 0x0556,
+	0x0559, 0x055f,
+	0x0561, 0x0587,
+	0x0589, 0x058a,
+	0x0591, 0x05c7,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f4,
+	0x0606, 0x061b,
+	0x061e, 0x061f,
+	0x0621, 0x065e,
+	0x0660, 0x06dc,
+	0x06de, 0x070d,
+	0x0710, 0x074a,
+	0x074d, 0x07b1,
+	0x07c0, 0x07fa,
+	0x0901, 0x0939,
+	0x093c, 0x094d,
+	0x0950, 0x0954,
+	0x0958, 0x0972,
+	0x097b, 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, 0x09fa,
+	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,
+	0x0af1, 0x0af1,
+	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, 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, 0x0bfa,
+	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,
+	0x0c78, 0x0c7f,
+	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,
+	0x0cf1, 0x0cf2,
+	0x0d02, 0x0d03,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d44,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4d,
+	0x0d57, 0x0d57,
+	0x0d60, 0x0d63,
+	0x0d66, 0x0d75,
+	0x0d79, 0x0d7f,
+	0x0d82, 0x0d83,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0dca, 0x0dca,
+	0x0dcf, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0dd8, 0x0ddf,
+	0x0df2, 0x0df4,
+	0x0e01, 0x0e3a,
+	0x0e3f, 0x0e5b,
+	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, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f71, 0x0f8b,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x0fbe, 0x0fcc,
+	0x0fce, 0x0fd4,
+	0x1000, 0x1099,
+	0x109e, 0x10c5,
+	0x10d0, 0x10fc,
+	0x1100, 0x1159,
+	0x115f, 0x11a2,
+	0x11a8, 0x11f9,
+	0x1200, 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, 0x137c,
+	0x1380, 0x1399,
+	0x13a0, 0x13f4,
+	0x1401, 0x1676,
+	0x1681, 0x169c,
+	0x16a0, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1714,
+	0x1720, 0x1736,
+	0x1740, 0x1753,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1772, 0x1773,
+	0x1780, 0x17b3,
+	0x17b6, 0x17dd,
+	0x17e0, 0x17e9,
+	0x17f0, 0x17f9,
+	0x1800, 0x180d,
+	0x1810, 0x1819,
+	0x1820, 0x1877,
+	0x1880, 0x18aa,
+	0x1900, 0x191c,
+	0x1920, 0x192b,
+	0x1930, 0x193b,
+	0x1940, 0x1940,
+	0x1944, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19a9,
+	0x19b0, 0x19c9,
+	0x19d0, 0x19d9,
+	0x19de, 0x1a1b,
+	0x1a1e, 0x1a1f,
+	0x1b00, 0x1b4b,
+	0x1b50, 0x1b7c,
+	0x1b80, 0x1baa,
+	0x1bae, 0x1bb9,
+	0x1c00, 0x1c37,
+	0x1c3b, 0x1c49,
+	0x1c4d, 0x1c7f,
+	0x1d00, 0x1de6,
+	0x1dfe, 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,
+	0x2010, 0x2027,
+	0x2030, 0x205e,
+	0x2070, 0x2071,
+	0x2074, 0x208e,
+	0x2090, 0x2094,
+	0x20a0, 0x20b5,
+	0x20d0, 0x20f0,
+	0x2100, 0x214f,
+	0x2153, 0x2188,
+	0x2190, 0x23e7,
+	0x2400, 0x2426,
+	0x2440, 0x244a,
+	0x2460, 0x269d,
+	0x26a0, 0x26bc,
+	0x26c0, 0x26c3,
+	0x2701, 0x2704,
+	0x2706, 0x2709,
+	0x270c, 0x2727,
+	0x2729, 0x274b,
+	0x274d, 0x274d,
+	0x274f, 0x2752,
+	0x2756, 0x2756,
+	0x2758, 0x275e,
+	0x2761, 0x2794,
+	0x2798, 0x27af,
+	0x27b1, 0x27be,
+	0x27c0, 0x27ca,
+	0x27cc, 0x27cc,
+	0x27d0, 0x2b4c,
+	0x2b50, 0x2b54,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2c6f,
+	0x2c71, 0x2c7d,
+	0x2c80, 0x2cea,
+	0x2cf9, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x2de0, 0x2e30,
+	0x2e80, 0x2e99,
+	0x2e9b, 0x2ef3,
+	0x2f00, 0x2fd5,
+	0x2ff0, 0x2ffb,
+	0x3001, 0x303f,
+	0x3041, 0x3096,
+	0x3099, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x3190, 0x31b7,
+	0x31c0, 0x31e3,
+	0x31f0, 0x321e,
+	0x3220, 0x3243,
+	0x3250, 0x32fe,
+	0x3300, 0x3400,
+	0x4db5, 0x4db5,
+	0x4dc0, 0x4e00,
+	0x9fc3, 0x9fc3,
+	0xa000, 0xa48c,
+	0xa490, 0xa4c6,
+	0xa500, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa673,
+	0xa67c, 0xa697,
+	0xa700, 0xa78c,
+	0xa7fb, 0xa82b,
+	0xa840, 0xa877,
+	0xa880, 0xa8c4,
+	0xa8ce, 0xa8d9,
+	0xa900, 0xa953,
+	0xa95f, 0xa95f,
+	0xaa00, 0xaa36,
+	0xaa40, 0xaa4d,
+	0xaa50, 0xaa59,
+	0xaa5c, 0xaa5f,
+	0xac00, 0xac00,
+	0xd7a3, 0xd7a3,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6a,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfd3f,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdfd,
+	0xfe00, 0xfe19,
+	0xfe20, 0xfe26,
+	0xfe30, 0xfe52,
+	0xfe54, 0xfe66,
+	0xfe68, 0xfe6b,
+	0xfe70, 0xfe74,
+	0xfe76, 0xfefc,
+	0xff01, 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, 0x101fd,
+	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, 0x1083f,
+	0x10900, 0x10919,
+	0x1091f, 0x10939,
+	0x1093f, 0x1093f,
+	0x10a00, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a47,
+	0x10a50, 0x10a58,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x12470, 0x12473,
+	0x1d000, 0x1d0f5,
+	0x1d100, 0x1d126,
+	0x1d129, 0x1d172,
+	0x1d17b, 0x1d1dd,
+	0x1d200, 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,
+	0x20000, 0x20000,
+	0x2a6d6, 0x2a6d6,
+	0x2f800, 0x2fa1d,
+	0xe0100, 0xe01ef,
+}; /* CR_Graph */
+
+/* 'Lower': [[:Lower:]] */
+static const OnigCodePoint CR_Lower[] = {
+	598,
+	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, 0x02af,
+	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, 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,
+	0x0561, 0x0587,
+	0x1d00, 0x1d2b,
+	0x1d62, 0x1d77,
+	0x1d79, 0x1d9a,
+	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,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x210a, 0x210a,
+	0x210e, 0x210f,
+	0x2113, 0x2113,
+	0x212f, 0x212f,
+	0x2134, 0x2134,
+	0x2139, 0x2139,
+	0x213c, 0x213d,
+	0x2146, 0x2149,
+	0x214e, 0x214e,
+	0x2184, 0x2184,
+	0x2c30, 0x2c5e,
+	0x2c61, 0x2c61,
+	0x2c65, 0x2c66,
+	0x2c68, 0x2c68,
+	0x2c6a, 0x2c6a,
+	0x2c6c, 0x2c6c,
+	0x2c71, 0x2c71,
+	0x2c73, 0x2c74,
+	0x2c76, 0x2c7c,
+	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,
+	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, 0xa76f,
+	0xa771, 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_Lower */
+
+/* 'Print': [[:Print:]] */
+static const OnigCodePoint CR_Print[] = {
+	452,
+	0x0009, 0x000d,
+	0x0020, 0x007e,
+	0x0085, 0x0085,
+	0x00a0, 0x00ac,
+	0x00ae, 0x0377,
+	0x037a, 0x037e,
+	0x0384, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x0523,
+	0x0531, 0x0556,
+	0x0559, 0x055f,
+	0x0561, 0x0587,
+	0x0589, 0x058a,
+	0x0591, 0x05c7,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f4,
+	0x0606, 0x061b,
+	0x061e, 0x061f,
+	0x0621, 0x065e,
+	0x0660, 0x06dc,
+	0x06de, 0x070d,
+	0x0710, 0x074a,
+	0x074d, 0x07b1,
+	0x07c0, 0x07fa,
+	0x0901, 0x0939,
+	0x093c, 0x094d,
+	0x0950, 0x0954,
+	0x0958, 0x0972,
+	0x097b, 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, 0x09fa,
+	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,
+	0x0af1, 0x0af1,
+	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, 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, 0x0bfa,
+	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,
+	0x0c78, 0x0c7f,
+	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,
+	0x0cf1, 0x0cf2,
+	0x0d02, 0x0d03,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d44,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4d,
+	0x0d57, 0x0d57,
+	0x0d60, 0x0d63,
+	0x0d66, 0x0d75,
+	0x0d79, 0x0d7f,
+	0x0d82, 0x0d83,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0dca, 0x0dca,
+	0x0dcf, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0dd8, 0x0ddf,
+	0x0df2, 0x0df4,
+	0x0e01, 0x0e3a,
+	0x0e3f, 0x0e5b,
+	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, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f71, 0x0f8b,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x0fbe, 0x0fcc,
+	0x0fce, 0x0fd4,
+	0x1000, 0x1099,
+	0x109e, 0x10c5,
+	0x10d0, 0x10fc,
+	0x1100, 0x1159,
+	0x115f, 0x11a2,
+	0x11a8, 0x11f9,
+	0x1200, 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, 0x137c,
+	0x1380, 0x1399,
+	0x13a0, 0x13f4,
+	0x1401, 0x1676,
+	0x1680, 0x169c,
+	0x16a0, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1714,
+	0x1720, 0x1736,
+	0x1740, 0x1753,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1772, 0x1773,
+	0x1780, 0x17b3,
+	0x17b6, 0x17dd,
+	0x17e0, 0x17e9,
+	0x17f0, 0x17f9,
+	0x1800, 0x180e,
+	0x1810, 0x1819,
+	0x1820, 0x1877,
+	0x1880, 0x18aa,
+	0x1900, 0x191c,
+	0x1920, 0x192b,
+	0x1930, 0x193b,
+	0x1940, 0x1940,
+	0x1944, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19a9,
+	0x19b0, 0x19c9,
+	0x19d0, 0x19d9,
+	0x19de, 0x1a1b,
+	0x1a1e, 0x1a1f,
+	0x1b00, 0x1b4b,
+	0x1b50, 0x1b7c,
+	0x1b80, 0x1baa,
+	0x1bae, 0x1bb9,
+	0x1c00, 0x1c37,
+	0x1c3b, 0x1c49,
+	0x1c4d, 0x1c7f,
+	0x1d00, 0x1de6,
+	0x1dfe, 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, 0x2029,
+	0x202f, 0x205f,
+	0x2070, 0x2071,
+	0x2074, 0x208e,
+	0x2090, 0x2094,
+	0x20a0, 0x20b5,
+	0x20d0, 0x20f0,
+	0x2100, 0x214f,
+	0x2153, 0x2188,
+	0x2190, 0x23e7,
+	0x2400, 0x2426,
+	0x2440, 0x244a,
+	0x2460, 0x269d,
+	0x26a0, 0x26bc,
+	0x26c0, 0x26c3,
+	0x2701, 0x2704,
+	0x2706, 0x2709,
+	0x270c, 0x2727,
+	0x2729, 0x274b,
+	0x274d, 0x274d,
+	0x274f, 0x2752,
+	0x2756, 0x2756,
+	0x2758, 0x275e,
+	0x2761, 0x2794,
+	0x2798, 0x27af,
+	0x27b1, 0x27be,
+	0x27c0, 0x27ca,
+	0x27cc, 0x27cc,
+	0x27d0, 0x2b4c,
+	0x2b50, 0x2b54,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2c6f,
+	0x2c71, 0x2c7d,
+	0x2c80, 0x2cea,
+	0x2cf9, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x2de0, 0x2e30,
+	0x2e80, 0x2e99,
+	0x2e9b, 0x2ef3,
+	0x2f00, 0x2fd5,
+	0x2ff0, 0x2ffb,
+	0x3000, 0x303f,
+	0x3041, 0x3096,
+	0x3099, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x3190, 0x31b7,
+	0x31c0, 0x31e3,
+	0x31f0, 0x321e,
+	0x3220, 0x3243,
+	0x3250, 0x32fe,
+	0x3300, 0x3400,
+	0x4db5, 0x4db5,
+	0x4dc0, 0x4e00,
+	0x9fc3, 0x9fc3,
+	0xa000, 0xa48c,
+	0xa490, 0xa4c6,
+	0xa500, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa673,
+	0xa67c, 0xa697,
+	0xa700, 0xa78c,
+	0xa7fb, 0xa82b,
+	0xa840, 0xa877,
+	0xa880, 0xa8c4,
+	0xa8ce, 0xa8d9,
+	0xa900, 0xa953,
+	0xa95f, 0xa95f,
+	0xaa00, 0xaa36,
+	0xaa40, 0xaa4d,
+	0xaa50, 0xaa59,
+	0xaa5c, 0xaa5f,
+	0xac00, 0xac00,
+	0xd7a3, 0xd7a3,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6a,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfd3f,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdfd,
+	0xfe00, 0xfe19,
+	0xfe20, 0xfe26,
+	0xfe30, 0xfe52,
+	0xfe54, 0xfe66,
+	0xfe68, 0xfe6b,
+	0xfe70, 0xfe74,
+	0xfe76, 0xfefc,
+	0xff01, 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, 0x101fd,
+	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, 0x1083f,
+	0x10900, 0x10919,
+	0x1091f, 0x10939,
+	0x1093f, 0x1093f,
+	0x10a00, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a47,
+	0x10a50, 0x10a58,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x12470, 0x12473,
+	0x1d000, 0x1d0f5,
+	0x1d100, 0x1d126,
+	0x1d129, 0x1d172,
+	0x1d17b, 0x1d1dd,
+	0x1d200, 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,
+	0x20000, 0x20000,
+	0x2a6d6, 0x2a6d6,
+	0x2f800, 0x2fa1d,
+	0xe0100, 0xe01ef,
+}; /* CR_Print */
+
+/* 'Punct': [[:Punct:]] */
+static const OnigCodePoint CR_Punct[] = {
+	112,
+	0x0021, 0x0023,
+	0x0025, 0x002a,
+	0x002c, 0x002f,
+	0x003a, 0x003b,
+	0x003f, 0x0040,
+	0x005b, 0x005d,
+	0x005f, 0x005f,
+	0x007b, 0x007b,
+	0x007d, 0x007d,
+	0x00a1, 0x00a1,
+	0x00ab, 0x00ab,
+	0x00b7, 0x00b7,
+	0x00bb, 0x00bb,
+	0x00bf, 0x00bf,
+	0x037e, 0x037e,
+	0x0387, 0x0387,
+	0x055a, 0x055f,
+	0x0589, 0x058a,
+	0x05be, 0x05be,
+	0x05c0, 0x05c0,
+	0x05c3, 0x05c3,
+	0x05c6, 0x05c6,
+	0x05f3, 0x05f4,
+	0x0609, 0x060a,
+	0x060c, 0x060d,
+	0x061b, 0x061b,
+	0x061e, 0x061f,
+	0x066a, 0x066d,
+	0x06d4, 0x06d4,
+	0x0700, 0x070d,
+	0x07f7, 0x07f9,
+	0x0964, 0x0965,
+	0x0970, 0x0970,
+	0x0df4, 0x0df4,
+	0x0e4f, 0x0e4f,
+	0x0e5a, 0x0e5b,
+	0x0f04, 0x0f12,
+	0x0f3a, 0x0f3d,
+	0x0f85, 0x0f85,
+	0x0fd0, 0x0fd4,
+	0x104a, 0x104f,
+	0x10fb, 0x10fb,
+	0x1361, 0x1368,
+	0x166d, 0x166e,
+	0x169b, 0x169c,
+	0x16eb, 0x16ed,
+	0x1735, 0x1736,
+	0x17d4, 0x17d6,
+	0x17d8, 0x17da,
+	0x1800, 0x180a,
+	0x1944, 0x1945,
+	0x19de, 0x19df,
+	0x1a1e, 0x1a1f,
+	0x1b5a, 0x1b60,
+	0x1c3b, 0x1c3f,
+	0x1c7e, 0x1c7f,
+	0x2010, 0x2027,
+	0x2030, 0x2043,
+	0x2045, 0x2051,
+	0x2053, 0x205e,
+	0x207d, 0x207e,
+	0x208d, 0x208e,
+	0x2329, 0x232a,
+	0x2768, 0x2775,
+	0x27c5, 0x27c6,
+	0x27e6, 0x27ef,
+	0x2983, 0x2998,
+	0x29d8, 0x29db,
+	0x29fc, 0x29fd,
+	0x2cf9, 0x2cfc,
+	0x2cfe, 0x2cff,
+	0x2e00, 0x2e2e,
+	0x2e30, 0x2e30,
+	0x3001, 0x3003,
+	0x3008, 0x3011,
+	0x3014, 0x301f,
+	0x3030, 0x3030,
+	0x303d, 0x303d,
+	0x30a0, 0x30a0,
+	0x30fb, 0x30fb,
+	0xa60d, 0xa60f,
+	0xa673, 0xa673,
+	0xa67e, 0xa67e,
+	0xa874, 0xa877,
+	0xa8ce, 0xa8cf,
+	0xa92e, 0xa92f,
+	0xa95f, 0xa95f,
+	0xaa5c, 0xaa5f,
+	0xfd3e, 0xfd3f,
+	0xfe10, 0xfe19,
+	0xfe30, 0xfe52,
+	0xfe54, 0xfe61,
+	0xfe63, 0xfe63,
+	0xfe68, 0xfe68,
+	0xfe6a, 0xfe6b,
+	0xff01, 0xff03,
+	0xff05, 0xff0a,
+	0xff0c, 0xff0f,
+	0xff1a, 0xff1b,
+	0xff1f, 0xff20,
+	0xff3b, 0xff3d,
+	0xff3f, 0xff3f,
+	0xff5b, 0xff5b,
+	0xff5d, 0xff5d,
+	0xff5f, 0xff65,
+	0x10100, 0x10101,
+	0x1039f, 0x1039f,
+	0x103d0, 0x103d0,
+	0x1091f, 0x1091f,
+	0x1093f, 0x1093f,
+	0x10a50, 0x10a58,
+	0x12470, 0x12473,
+}; /* CR_Punct */
+
+/* 'Space': [[:Space:]] */
+static const OnigCodePoint CR_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_Space */
+
+/* 'Upper': [[:Upper:]] */
+static const OnigCodePoint CR_Upper[] = {
+	591,
+	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,
+	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,
+	0x2183, 0x2183,
+	0x2c00, 0x2c2e,
+	0x2c60, 0x2c60,
+	0x2c62, 0x2c64,
+	0x2c67, 0x2c67,
+	0x2c69, 0x2c69,
+	0x2c6b, 0x2c6b,
+	0x2c6d, 0x2c6f,
+	0x2c72, 0x2c72,
+	0x2c75, 0x2c75,
+	0x2c80, 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,
+	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_Upper */
+
+/* 'XDigit': [[:XDigit:]] */
+static const OnigCodePoint CR_XDigit[] = {
+	3,
+	0x0030, 0x0039,
+	0x0041, 0x0046,
+	0x0061, 0x0066,
+}; /* CR_XDigit */
+
+/* 'Word': [[:Word:]] */
+static const OnigCodePoint CR_Word[] = {
+	477,
+	0x0030, 0x0039,
+	0x0041, 0x005a,
+	0x005f, 0x005f,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0300, 0x0374,
+	0x0376, 0x0377,
+	0x037a, 0x037d,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x0483, 0x0523,
+	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,
+	0x06de, 0x06e8,
+	0x06ea, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x074a,
+	0x074d, 0x07b1,
+	0x07c0, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0901, 0x0939,
+	0x093c, 0x094d,
+	0x0950, 0x0954,
+	0x0958, 0x0963,
+	0x0966, 0x096f,
+	0x0971, 0x0972,
+	0x097b, 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, 0x1099,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x1100, 0x1159,
+	0x115f, 0x11a2,
+	0x11a8, 0x11f9,
+	0x1200, 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, 0x1676,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	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,
+	0x1900, 0x191c,
+	0x1920, 0x192b,
+	0x1930, 0x193b,
+	0x1946, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19a9,
+	0x19b0, 0x19c9,
+	0x19d0, 0x19d9,
+	0x1a00, 0x1a1b,
+	0x1b00, 0x1b4b,
+	0x1b50, 0x1b59,
+	0x1b6b, 0x1b73,
+	0x1b80, 0x1baa,
+	0x1bae, 0x1bb9,
+	0x1c00, 0x1c37,
+	0x1c40, 0x1c49,
+	0x1c4d, 0x1c7d,
+	0x1d00, 0x1de6,
+	0x1dfe, 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, 0x20f0,
+	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,
+	0x2183, 0x2184,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2c6f,
+	0x2c71, 0x2c7d,
+	0x2c80, 0x2ce4,
+	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, 0x3006,
+	0x302a, 0x302f,
+	0x3031, 0x3035,
+	0x303b, 0x303c,
+	0x3041, 0x3096,
+	0x3099, 0x309a,
+	0x309d, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x3400,
+	0x4db5, 0x4db5,
+	0x4e00, 0x4e00,
+	0x9fc3, 0x9fc3,
+	0xa000, 0xa48c,
+	0xa500, 0xa60c,
+	0xa610, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa672,
+	0xa67c, 0xa67d,
+	0xa67f, 0xa697,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa827,
+	0xa840, 0xa873,
+	0xa880, 0xa8c4,
+	0xa8d0, 0xa8d9,
+	0xa900, 0xa92d,
+	0xa930, 0xa953,
+	0xaa00, 0xaa36,
+	0xaa40, 0xaa4d,
+	0xaa50, 0xaa59,
+	0xac00, 0xac00,
+	0xd7a3, 0xd7a3,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6a,
+	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,
+	0x101fd, 0x101fd,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x10340,
+	0x10342, 0x10349,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x10400, 0x1049d,
+	0x104a0, 0x104a9,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x1083f,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a3f,
+	0x12000, 0x1236e,
+	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, 0x20000,
+	0x2a6d6, 0x2a6d6,
+	0x2f800, 0x2fa1d,
+	0xe0100, 0xe01ef,
+}; /* CR_Word */
+
+/* 'Alnum': [[:Alnum:]] */
+static const OnigCodePoint CR_Alnum[] = {
+	471,
+	0x0030, 0x0039,
+	0x0041, 0x005a,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00b5, 0x00b5,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0300, 0x0374,
+	0x0376, 0x0377,
+	0x037a, 0x037d,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03f5,
+	0x03f7, 0x0481,
+	0x0483, 0x0523,
+	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,
+	0x06de, 0x06e8,
+	0x06ea, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x074a,
+	0x074d, 0x07b1,
+	0x07c0, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0901, 0x0939,
+	0x093c, 0x094d,
+	0x0950, 0x0954,
+	0x0958, 0x0963,
+	0x0966, 0x096f,
+	0x0971, 0x0972,
+	0x097b, 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, 0x1099,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x1100, 0x1159,
+	0x115f, 0x11a2,
+	0x11a8, 0x11f9,
+	0x1200, 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, 0x1676,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	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,
+	0x1900, 0x191c,
+	0x1920, 0x192b,
+	0x1930, 0x193b,
+	0x1946, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19a9,
+	0x19b0, 0x19c9,
+	0x19d0, 0x19d9,
+	0x1a00, 0x1a1b,
+	0x1b00, 0x1b4b,
+	0x1b50, 0x1b59,
+	0x1b6b, 0x1b73,
+	0x1b80, 0x1baa,
+	0x1bae, 0x1bb9,
+	0x1c00, 0x1c37,
+	0x1c40, 0x1c49,
+	0x1c4d, 0x1c7d,
+	0x1d00, 0x1de6,
+	0x1dfe, 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,
+	0x20d0, 0x20f0,
+	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,
+	0x2183, 0x2184,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2c6f,
+	0x2c71, 0x2c7d,
+	0x2c80, 0x2ce4,
+	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, 0x3006,
+	0x302a, 0x302f,
+	0x3031, 0x3035,
+	0x303b, 0x303c,
+	0x3041, 0x3096,
+	0x3099, 0x309a,
+	0x309d, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x3400,
+	0x4db5, 0x4db5,
+	0x4e00, 0x4e00,
+	0x9fc3, 0x9fc3,
+	0xa000, 0xa48c,
+	0xa500, 0xa60c,
+	0xa610, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa672,
+	0xa67c, 0xa67d,
+	0xa67f, 0xa697,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa827,
+	0xa840, 0xa873,
+	0xa880, 0xa8c4,
+	0xa8d0, 0xa8d9,
+	0xa900, 0xa92d,
+	0xa930, 0xa953,
+	0xaa00, 0xaa36,
+	0xaa40, 0xaa4d,
+	0xaa50, 0xaa59,
+	0xac00, 0xac00,
+	0xd7a3, 0xd7a3,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6a,
+	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,
+	0xfe70, 0xfe74,
+	0xfe76, 0xfefc,
+	0xff10, 0xff19,
+	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,
+	0x101fd, 0x101fd,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x10340,
+	0x10342, 0x10349,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x10400, 0x1049d,
+	0x104a0, 0x104a9,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x1083f,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a3f,
+	0x12000, 0x1236e,
+	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, 0x20000,
+	0x2a6d6, 0x2a6d6,
+	0x2f800, 0x2fa1d,
+	0xe0100, 0xe01ef,
+}; /* CR_Alnum */
+
+/* 'ASCII': [[:ASCII:]] */
+static const OnigCodePoint CR_ASCII[] = {
+	1,
+	0x0000, 0x007f,
+}; /* CR_ASCII */
+
+#ifdef USE_UNICODE_PROPERTIES
+#ifdef USE_UNICODE_PROPERTIES
+/* 'Any': - */
+static const OnigCodePoint CR_Any[] = {
+	1,
+	0x0000, 0x10ffff,
+}; /* CR_Any */
+
+/* 'Assigned': - */
+static const OnigCodePoint CR_Assigned[] = {
+	454,
+	0x0000, 0x0377,
+	0x037a, 0x037e,
+	0x0384, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x0523,
+	0x0531, 0x0556,
+	0x0559, 0x055f,
+	0x0561, 0x0587,
+	0x0589, 0x058a,
+	0x0591, 0x05c7,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f4,
+	0x0600, 0x0603,
+	0x0606, 0x061b,
+	0x061e, 0x061f,
+	0x0621, 0x065e,
+	0x0660, 0x070d,
+	0x070f, 0x074a,
+	0x074d, 0x07b1,
+	0x07c0, 0x07fa,
+	0x0901, 0x0939,
+	0x093c, 0x094d,
+	0x0950, 0x0954,
+	0x0958, 0x0972,
+	0x097b, 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, 0x09fa,
+	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,
+	0x0af1, 0x0af1,
+	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, 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, 0x0bfa,
+	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,
+	0x0c78, 0x0c7f,
+	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,
+	0x0cf1, 0x0cf2,
+	0x0d02, 0x0d03,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d44,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4d,
+	0x0d57, 0x0d57,
+	0x0d60, 0x0d63,
+	0x0d66, 0x0d75,
+	0x0d79, 0x0d7f,
+	0x0d82, 0x0d83,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0dca, 0x0dca,
+	0x0dcf, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0dd8, 0x0ddf,
+	0x0df2, 0x0df4,
+	0x0e01, 0x0e3a,
+	0x0e3f, 0x0e5b,
+	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, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f71, 0x0f8b,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x0fbe, 0x0fcc,
+	0x0fce, 0x0fd4,
+	0x1000, 0x1099,
+	0x109e, 0x10c5,
+	0x10d0, 0x10fc,
+	0x1100, 0x1159,
+	0x115f, 0x11a2,
+	0x11a8, 0x11f9,
+	0x1200, 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, 0x137c,
+	0x1380, 0x1399,
+	0x13a0, 0x13f4,
+	0x1401, 0x1676,
+	0x1680, 0x169c,
+	0x16a0, 0x16f0,
+	0x1700, 0x170c,
+	0x170e, 0x1714,
+	0x1720, 0x1736,
+	0x1740, 0x1753,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1772, 0x1773,
+	0x1780, 0x17dd,
+	0x17e0, 0x17e9,
+	0x17f0, 0x17f9,
+	0x1800, 0x180e,
+	0x1810, 0x1819,
+	0x1820, 0x1877,
+	0x1880, 0x18aa,
+	0x1900, 0x191c,
+	0x1920, 0x192b,
+	0x1930, 0x193b,
+	0x1940, 0x1940,
+	0x1944, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19a9,
+	0x19b0, 0x19c9,
+	0x19d0, 0x19d9,
+	0x19de, 0x1a1b,
+	0x1a1e, 0x1a1f,
+	0x1b00, 0x1b4b,
+	0x1b50, 0x1b7c,
+	0x1b80, 0x1baa,
+	0x1bae, 0x1bb9,
+	0x1c00, 0x1c37,
+	0x1c3b, 0x1c49,
+	0x1c4d, 0x1c7f,
+	0x1d00, 0x1de6,
+	0x1dfe, 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, 0x2064,
+	0x206a, 0x2071,
+	0x2074, 0x208e,
+	0x2090, 0x2094,
+	0x20a0, 0x20b5,
+	0x20d0, 0x20f0,
+	0x2100, 0x214f,
+	0x2153, 0x2188,
+	0x2190, 0x23e7,
+	0x2400, 0x2426,
+	0x2440, 0x244a,
+	0x2460, 0x269d,
+	0x26a0, 0x26bc,
+	0x26c0, 0x26c3,
+	0x2701, 0x2704,
+	0x2706, 0x2709,
+	0x270c, 0x2727,
+	0x2729, 0x274b,
+	0x274d, 0x274d,
+	0x274f, 0x2752,
+	0x2756, 0x2756,
+	0x2758, 0x275e,
+	0x2761, 0x2794,
+	0x2798, 0x27af,
+	0x27b1, 0x27be,
+	0x27c0, 0x27ca,
+	0x27cc, 0x27cc,
+	0x27d0, 0x2b4c,
+	0x2b50, 0x2b54,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2c6f,
+	0x2c71, 0x2c7d,
+	0x2c80, 0x2cea,
+	0x2cf9, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x2de0, 0x2e30,
+	0x2e80, 0x2e99,
+	0x2e9b, 0x2ef3,
+	0x2f00, 0x2fd5,
+	0x2ff0, 0x2ffb,
+	0x3000, 0x303f,
+	0x3041, 0x3096,
+	0x3099, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x3190, 0x31b7,
+	0x31c0, 0x31e3,
+	0x31f0, 0x321e,
+	0x3220, 0x3243,
+	0x3250, 0x32fe,
+	0x3300, 0x3400,
+	0x4db5, 0x4db5,
+	0x4dc0, 0x4e00,
+	0x9fc3, 0x9fc3,
+	0xa000, 0xa48c,
+	0xa490, 0xa4c6,
+	0xa500, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa673,
+	0xa67c, 0xa697,
+	0xa700, 0xa78c,
+	0xa7fb, 0xa82b,
+	0xa840, 0xa877,
+	0xa880, 0xa8c4,
+	0xa8ce, 0xa8d9,
+	0xa900, 0xa953,
+	0xa95f, 0xa95f,
+	0xaa00, 0xaa36,
+	0xaa40, 0xaa4d,
+	0xaa50, 0xaa59,
+	0xaa5c, 0xaa5f,
+	0xac00, 0xac00,
+	0xd7a3, 0xd7a3,
+	0xd800, 0xd800,
+	0xdb7f, 0xdb80,
+	0xdbff, 0xdc00,
+	0xdfff, 0xe000,
+	0xf8ff, 0xfa2d,
+	0xfa30, 0xfa6a,
+	0xfa70, 0xfad9,
+	0xfb00, 0xfb06,
+	0xfb13, 0xfb17,
+	0xfb1d, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfbb1,
+	0xfbd3, 0xfd3f,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdfd,
+	0xfe00, 0xfe19,
+	0xfe20, 0xfe26,
+	0xfe30, 0xfe52,
+	0xfe54, 0xfe66,
+	0xfe68, 0xfe6b,
+	0xfe70, 0xfe74,
+	0xfe76, 0xfefc,
+	0xfeff, 0xfeff,
+	0xff01, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+	0xffe0, 0xffe6,
+	0xffe8, 0xffee,
+	0xfff9, 0xfffd,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+	0x10100, 0x10102,
+	0x10107, 0x10133,
+	0x10137, 0x1018a,
+	0x10190, 0x1019b,
+	0x101d0, 0x101fd,
+	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, 0x1083f,
+	0x10900, 0x10919,
+	0x1091f, 0x10939,
+	0x1093f, 0x1093f,
+	0x10a00, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a47,
+	0x10a50, 0x10a58,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x12470, 0x12473,
+	0x1d000, 0x1d0f5,
+	0x1d100, 0x1d126,
+	0x1d129, 0x1d1dd,
+	0x1d200, 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,
+	0x20000, 0x20000,
+	0x2a6d6, 0x2a6d6,
+	0x2f800, 0x2fa1d,
+	0xe0001, 0xe0001,
+	0xe0020, 0xe007f,
+	0xe0100, 0xe01ef,
+	0xf0000, 0xf0000,
+	0xffffd, 0xffffd,
+	0x100000, 0x100000,
+}; /* CR_Assigned */
+
+/* 'C': Major Category */
+static const OnigCodePoint CR_C[] = {
+	25,
+	0x0000, 0x001f,
+	0x007f, 0x009f,
+	0x00ad, 0x00ad,
+	0x0600, 0x0603,
+	0x06dd, 0x06dd,
+	0x070f, 0x070f,
+	0x17b4, 0x17b5,
+	0x200b, 0x200f,
+	0x202a, 0x202e,
+	0x2060, 0x2064,
+	0x206a, 0x206f,
+	0xd800, 0xd800,
+	0xdb7f, 0xdb80,
+	0xdbff, 0xdc00,
+	0xdfff, 0xe000,
+	0xf8ff, 0xf8ff,
+	0xfeff, 0xfeff,
+	0xfff9, 0xfffb,
+	0x1d173, 0x1d17a,
+	0xe0001, 0xe0001,
+	0xe0020, 0xe007f,
+	0xf0000, 0xf0000,
+	0xffffd, 0xffffd,
+	0x100000, 0x100000,
+	0x10fffd, 0x10ffff,
+}; /* CR_C */
+
+/* 'Cc': General Category */
+static const OnigCodePoint CR_Cc[] = {
+	2,
+	0x0000, 0x001f,
+	0x007f, 0x009f,
+}; /* CR_Cc */
+
+/* 'Cf': General Category */
+static const OnigCodePoint CR_Cf[] = {
+	14,
+	0x00ad, 0x00ad,
+	0x0600, 0x0603,
+	0x06dd, 0x06dd,
+	0x070f, 0x070f,
+	0x17b4, 0x17b5,
+	0x200b, 0x200f,
+	0x202a, 0x202e,
+	0x2060, 0x2064,
+	0x206a, 0x206f,
+	0xfeff, 0xfeff,
+	0xfff9, 0xfffb,
+	0x1d173, 0x1d17a,
+	0xe0001, 0xe0001,
+	0xe0020, 0xe007f,
+}; /* CR_Cf */
+
+/* 'Cn': General Category */
+static const OnigCodePoint CR_Cn[] = {
+	454,
+	0x0378, 0x0379,
+	0x037f, 0x0383,
+	0x038b, 0x038b,
+	0x038d, 0x038d,
+	0x03a2, 0x03a2,
+	0x0524, 0x0530,
+	0x0557, 0x0558,
+	0x0560, 0x0560,
+	0x0588, 0x0588,
+	0x058b, 0x0590,
+	0x05c8, 0x05cf,
+	0x05eb, 0x05ef,
+	0x05f5, 0x05ff,
+	0x0604, 0x0605,
+	0x061c, 0x061d,
+	0x0620, 0x0620,
+	0x065f, 0x065f,
+	0x070e, 0x070e,
+	0x074b, 0x074c,
+	0x07b2, 0x07bf,
+	0x07fb, 0x0900,
+	0x093a, 0x093b,
+	0x094e, 0x094f,
+	0x0955, 0x0957,
+	0x0973, 0x097a,
+	0x0980, 0x0980,
+	0x0984, 0x0984,
+	0x098d, 0x098e,
+	0x0991, 0x0992,
+	0x09a9, 0x09a9,
+	0x09b1, 0x09b1,
+	0x09b3, 0x09b5,
+	0x09ba, 0x09bb,
+	0x09c5, 0x09c6,
+	0x09c9, 0x09ca,
+	0x09cf, 0x09d6,
+	0x09d8, 0x09db,
+	0x09de, 0x09de,
+	0x09e4, 0x09e5,
+	0x09fb, 0x0a00,
+	0x0a04, 0x0a04,
+	0x0a0b, 0x0a0e,
+	0x0a11, 0x0a12,
+	0x0a29, 0x0a29,
+	0x0a31, 0x0a31,
+	0x0a34, 0x0a34,
+	0x0a37, 0x0a37,
+	0x0a3a, 0x0a3b,
+	0x0a3d, 0x0a3d,
+	0x0a43, 0x0a46,
+	0x0a49, 0x0a4a,
+	0x0a4e, 0x0a50,
+	0x0a52, 0x0a58,
+	0x0a5d, 0x0a5d,
+	0x0a5f, 0x0a65,
+	0x0a76, 0x0a80,
+	0x0a84, 0x0a84,
+	0x0a8e, 0x0a8e,
+	0x0a92, 0x0a92,
+	0x0aa9, 0x0aa9,
+	0x0ab1, 0x0ab1,
+	0x0ab4, 0x0ab4,
+	0x0aba, 0x0abb,
+	0x0ac6, 0x0ac6,
+	0x0aca, 0x0aca,
+	0x0ace, 0x0acf,
+	0x0ad1, 0x0adf,
+	0x0ae4, 0x0ae5,
+	0x0af0, 0x0af0,
+	0x0af2, 0x0b00,
+	0x0b04, 0x0b04,
+	0x0b0d, 0x0b0e,
+	0x0b11, 0x0b12,
+	0x0b29, 0x0b29,
+	0x0b31, 0x0b31,
+	0x0b34, 0x0b34,
+	0x0b3a, 0x0b3b,
+	0x0b45, 0x0b46,
+	0x0b49, 0x0b4a,
+	0x0b4e, 0x0b55,
+	0x0b58, 0x0b5b,
+	0x0b5e, 0x0b5e,
+	0x0b64, 0x0b65,
+	0x0b72, 0x0b81,
+	0x0b84, 0x0b84,
+	0x0b8b, 0x0b8d,
+	0x0b91, 0x0b91,
+	0x0b96, 0x0b98,
+	0x0b9b, 0x0b9b,
+	0x0b9d, 0x0b9d,
+	0x0ba0, 0x0ba2,
+	0x0ba5, 0x0ba7,
+	0x0bab, 0x0bad,
+	0x0bba, 0x0bbd,
+	0x0bc3, 0x0bc5,
+	0x0bc9, 0x0bc9,
+	0x0bce, 0x0bcf,
+	0x0bd1, 0x0bd6,
+	0x0bd8, 0x0be5,
+	0x0bfb, 0x0c00,
+	0x0c04, 0x0c04,
+	0x0c0d, 0x0c0d,
+	0x0c11, 0x0c11,
+	0x0c29, 0x0c29,
+	0x0c34, 0x0c34,
+	0x0c3a, 0x0c3c,
+	0x0c45, 0x0c45,
+	0x0c49, 0x0c49,
+	0x0c4e, 0x0c54,
+	0x0c57, 0x0c57,
+	0x0c5a, 0x0c5f,
+	0x0c64, 0x0c65,
+	0x0c70, 0x0c77,
+	0x0c80, 0x0c81,
+	0x0c84, 0x0c84,
+	0x0c8d, 0x0c8d,
+	0x0c91, 0x0c91,
+	0x0ca9, 0x0ca9,
+	0x0cb4, 0x0cb4,
+	0x0cba, 0x0cbb,
+	0x0cc5, 0x0cc5,
+	0x0cc9, 0x0cc9,
+	0x0cce, 0x0cd4,
+	0x0cd7, 0x0cdd,
+	0x0cdf, 0x0cdf,
+	0x0ce4, 0x0ce5,
+	0x0cf0, 0x0cf0,
+	0x0cf3, 0x0d01,
+	0x0d04, 0x0d04,
+	0x0d0d, 0x0d0d,
+	0x0d11, 0x0d11,
+	0x0d29, 0x0d29,
+	0x0d3a, 0x0d3c,
+	0x0d45, 0x0d45,
+	0x0d49, 0x0d49,
+	0x0d4e, 0x0d56,
+	0x0d58, 0x0d5f,
+	0x0d64, 0x0d65,
+	0x0d76, 0x0d78,
+	0x0d80, 0x0d81,
+	0x0d84, 0x0d84,
+	0x0d97, 0x0d99,
+	0x0db2, 0x0db2,
+	0x0dbc, 0x0dbc,
+	0x0dbe, 0x0dbf,
+	0x0dc7, 0x0dc9,
+	0x0dcb, 0x0dce,
+	0x0dd5, 0x0dd5,
+	0x0dd7, 0x0dd7,
+	0x0de0, 0x0df1,
+	0x0df5, 0x0e00,
+	0x0e3b, 0x0e3e,
+	0x0e5c, 0x0e80,
+	0x0e83, 0x0e83,
+	0x0e85, 0x0e86,
+	0x0e89, 0x0e89,
+	0x0e8b, 0x0e8c,
+	0x0e8e, 0x0e93,
+	0x0e98, 0x0e98,
+	0x0ea0, 0x0ea0,
+	0x0ea4, 0x0ea4,
+	0x0ea6, 0x0ea6,
+	0x0ea8, 0x0ea9,
+	0x0eac, 0x0eac,
+	0x0eba, 0x0eba,
+	0x0ebe, 0x0ebf,
+	0x0ec5, 0x0ec5,
+	0x0ec7, 0x0ec7,
+	0x0ece, 0x0ecf,
+	0x0eda, 0x0edb,
+	0x0ede, 0x0eff,
+	0x0f48, 0x0f48,
+	0x0f6d, 0x0f70,
+	0x0f8c, 0x0f8f,
+	0x0f98, 0x0f98,
+	0x0fbd, 0x0fbd,
+	0x0fcd, 0x0fcd,
+	0x0fd5, 0x0fff,
+	0x109a, 0x109d,
+	0x10c6, 0x10cf,
+	0x10fd, 0x10ff,
+	0x115a, 0x115e,
+	0x11a3, 0x11a7,
+	0x11fa, 0x11ff,
+	0x1249, 0x1249,
+	0x124e, 0x124f,
+	0x1257, 0x1257,
+	0x1259, 0x1259,
+	0x125e, 0x125f,
+	0x1289, 0x1289,
+	0x128e, 0x128f,
+	0x12b1, 0x12b1,
+	0x12b6, 0x12b7,
+	0x12bf, 0x12bf,
+	0x12c1, 0x12c1,
+	0x12c6, 0x12c7,
+	0x12d7, 0x12d7,
+	0x1311, 0x1311,
+	0x1316, 0x1317,
+	0x135b, 0x135e,
+	0x137d, 0x137f,
+	0x139a, 0x139f,
+	0x13f5, 0x1400,
+	0x1677, 0x167f,
+	0x169d, 0x169f,
+	0x16f1, 0x16ff,
+	0x170d, 0x170d,
+	0x1715, 0x171f,
+	0x1737, 0x173f,
+	0x1754, 0x175f,
+	0x176d, 0x176d,
+	0x1771, 0x1771,
+	0x1774, 0x177f,
+	0x17de, 0x17df,
+	0x17ea, 0x17ef,
+	0x17fa, 0x17ff,
+	0x180f, 0x180f,
+	0x181a, 0x181f,
+	0x1878, 0x187f,
+	0x18ab, 0x18ff,
+	0x191d, 0x191f,
+	0x192c, 0x192f,
+	0x193c, 0x193f,
+	0x1941, 0x1943,
+	0x196e, 0x196f,
+	0x1975, 0x197f,
+	0x19aa, 0x19af,
+	0x19ca, 0x19cf,
+	0x19da, 0x19dd,
+	0x1a1c, 0x1a1d,
+	0x1a20, 0x1aff,
+	0x1b4c, 0x1b4f,
+	0x1b7d, 0x1b7f,
+	0x1bab, 0x1bad,
+	0x1bba, 0x1bff,
+	0x1c38, 0x1c3a,
+	0x1c4a, 0x1c4c,
+	0x1c80, 0x1cff,
+	0x1de7, 0x1dfd,
+	0x1f16, 0x1f17,
+	0x1f1e, 0x1f1f,
+	0x1f46, 0x1f47,
+	0x1f4e, 0x1f4f,
+	0x1f58, 0x1f58,
+	0x1f5a, 0x1f5a,
+	0x1f5c, 0x1f5c,
+	0x1f5e, 0x1f5e,
+	0x1f7e, 0x1f7f,
+	0x1fb5, 0x1fb5,
+	0x1fc5, 0x1fc5,
+	0x1fd4, 0x1fd5,
+	0x1fdc, 0x1fdc,
+	0x1ff0, 0x1ff1,
+	0x1ff5, 0x1ff5,
+	0x1fff, 0x1fff,
+	0x2065, 0x2069,
+	0x2072, 0x2073,
+	0x208f, 0x208f,
+	0x2095, 0x209f,
+	0x20b6, 0x20cf,
+	0x20f1, 0x20ff,
+	0x2150, 0x2152,
+	0x2189, 0x218f,
+	0x23e8, 0x23ff,
+	0x2427, 0x243f,
+	0x244b, 0x245f,
+	0x269e, 0x269f,
+	0x26bd, 0x26bf,
+	0x26c4, 0x2700,
+	0x2705, 0x2705,
+	0x270a, 0x270b,
+	0x2728, 0x2728,
+	0x274c, 0x274c,
+	0x274e, 0x274e,
+	0x2753, 0x2755,
+	0x2757, 0x2757,
+	0x275f, 0x2760,
+	0x2795, 0x2797,
+	0x27b0, 0x27b0,
+	0x27bf, 0x27bf,
+	0x27cb, 0x27cb,
+	0x27cd, 0x27cf,
+	0x2b4d, 0x2b4f,
+	0x2b55, 0x2bff,
+	0x2c2f, 0x2c2f,
+	0x2c5f, 0x2c5f,
+	0x2c70, 0x2c70,
+	0x2c7e, 0x2c7f,
+	0x2ceb, 0x2cf8,
+	0x2d26, 0x2d2f,
+	0x2d66, 0x2d6e,
+	0x2d70, 0x2d7f,
+	0x2d97, 0x2d9f,
+	0x2da7, 0x2da7,
+	0x2daf, 0x2daf,
+	0x2db7, 0x2db7,
+	0x2dbf, 0x2dbf,
+	0x2dc7, 0x2dc7,
+	0x2dcf, 0x2dcf,
+	0x2dd7, 0x2dd7,
+	0x2ddf, 0x2ddf,
+	0x2e31, 0x2e7f,
+	0x2e9a, 0x2e9a,
+	0x2ef4, 0x2eff,
+	0x2fd6, 0x2fef,
+	0x2ffc, 0x2fff,
+	0x3040, 0x3040,
+	0x3097, 0x3098,
+	0x3100, 0x3104,
+	0x312e, 0x3130,
+	0x318f, 0x318f,
+	0x31b8, 0x31bf,
+	0x31e4, 0x31ef,
+	0x321f, 0x321f,
+	0x3244, 0x324f,
+	0x32ff, 0x32ff,
+	0x3401, 0x4db4,
+	0x4db6, 0x4dbf,
+	0x4e01, 0x9fc2,
+	0x9fc4, 0x9fff,
+	0xa48d, 0xa48f,
+	0xa4c7, 0xa4ff,
+	0xa62c, 0xa63f,
+	0xa660, 0xa661,
+	0xa674, 0xa67b,
+	0xa698, 0xa6ff,
+	0xa78d, 0xa7fa,
+	0xa82c, 0xa83f,
+	0xa878, 0xa87f,
+	0xa8c5, 0xa8cd,
+	0xa8da, 0xa8ff,
+	0xa954, 0xa95e,
+	0xa960, 0xa9ff,
+	0xaa37, 0xaa3f,
+	0xaa4e, 0xaa4f,
+	0xaa5a, 0xaa5b,
+	0xaa60, 0xabff,
+	0xac01, 0xd7a2,
+	0xd7a4, 0xd7ff,
+	0xd801, 0xdb7e,
+	0xdb81, 0xdbfe,
+	0xdc01, 0xdffe,
+	0xe001, 0xf8fe,
+	0xfa2e, 0xfa2f,
+	0xfa6b, 0xfa6f,
+	0xfada, 0xfaff,
+	0xfb07, 0xfb12,
+	0xfb18, 0xfb1c,
+	0xfb37, 0xfb37,
+	0xfb3d, 0xfb3d,
+	0xfb3f, 0xfb3f,
+	0xfb42, 0xfb42,
+	0xfb45, 0xfb45,
+	0xfbb2, 0xfbd2,
+	0xfd40, 0xfd4f,
+	0xfd90, 0xfd91,
+	0xfdc8, 0xfdef,
+	0xfdfe, 0xfdff,
+	0xfe1a, 0xfe1f,
+	0xfe27, 0xfe2f,
+	0xfe53, 0xfe53,
+	0xfe67, 0xfe67,
+	0xfe6c, 0xfe6f,
+	0xfe75, 0xfe75,
+	0xfefd, 0xfefe,
+	0xff00, 0xff00,
+	0xffbf, 0xffc1,
+	0xffc8, 0xffc9,
+	0xffd0, 0xffd1,
+	0xffd8, 0xffd9,
+	0xffdd, 0xffdf,
+	0xffe7, 0xffe7,
+	0xffef, 0xfff8,
+	0xfffe, 0xffff,
+	0x1000c, 0x1000c,
+	0x10027, 0x10027,
+	0x1003b, 0x1003b,
+	0x1003e, 0x1003e,
+	0x1004e, 0x1004f,
+	0x1005e, 0x1007f,
+	0x100fb, 0x100ff,
+	0x10103, 0x10106,
+	0x10134, 0x10136,
+	0x1018b, 0x1018f,
+	0x1019c, 0x101cf,
+	0x101fe, 0x1027f,
+	0x1029d, 0x1029f,
+	0x102d1, 0x102ff,
+	0x1031f, 0x1031f,
+	0x10324, 0x1032f,
+	0x1034b, 0x1037f,
+	0x1039e, 0x1039e,
+	0x103c4, 0x103c7,
+	0x103d6, 0x103ff,
+	0x1049e, 0x1049f,
+	0x104aa, 0x107ff,
+	0x10806, 0x10807,
+	0x10809, 0x10809,
+	0x10836, 0x10836,
+	0x10839, 0x1083b,
+	0x1083d, 0x1083e,
+	0x10840, 0x108ff,
+	0x1091a, 0x1091e,
+	0x1093a, 0x1093e,
+	0x10940, 0x109ff,
+	0x10a04, 0x10a04,
+	0x10a07, 0x10a0b,
+	0x10a14, 0x10a14,
+	0x10a18, 0x10a18,
+	0x10a34, 0x10a37,
+	0x10a3b, 0x10a3e,
+	0x10a48, 0x10a4f,
+	0x10a59, 0x11fff,
+	0x1236f, 0x123ff,
+	0x12463, 0x1246f,
+	0x12474, 0x1cfff,
+	0x1d0f6, 0x1d0ff,
+	0x1d127, 0x1d128,
+	0x1d1de, 0x1d1ff,
+	0x1d246, 0x1d2ff,
+	0x1d357, 0x1d35f,
+	0x1d372, 0x1d3ff,
+	0x1d455, 0x1d455,
+	0x1d49d, 0x1d49d,
+	0x1d4a0, 0x1d4a1,
+	0x1d4a3, 0x1d4a4,
+	0x1d4a7, 0x1d4a8,
+	0x1d4ad, 0x1d4ad,
+	0x1d4ba, 0x1d4ba,
+	0x1d4bc, 0x1d4bc,
+	0x1d4c4, 0x1d4c4,
+	0x1d506, 0x1d506,
+	0x1d50b, 0x1d50c,
+	0x1d515, 0x1d515,
+	0x1d51d, 0x1d51d,
+	0x1d53a, 0x1d53a,
+	0x1d53f, 0x1d53f,
+	0x1d545, 0x1d545,
+	0x1d547, 0x1d549,
+	0x1d551, 0x1d551,
+	0x1d6a6, 0x1d6a7,
+	0x1d7cc, 0x1d7cd,
+	0x1d800, 0x1efff,
+	0x1f02c, 0x1f02f,
+	0x1f094, 0x1ffff,
+	0x20001, 0x2a6d5,
+	0x2a6d7, 0x2f7ff,
+	0x2fa1e, 0xe0000,
+	0xe0002, 0xe001f,
+	0xe0080, 0xe00ff,
+	0xe01f0, 0xeffff,
+	0xf0001, 0xffffc,
+	0xffffe, 0xfffff,
+	0x100001, 0x10ffff,
+}; /* CR_Cn */
+
+/* 'Co': General Category */
+static const OnigCodePoint CR_Co[] = {
+	6,
+	0xe000, 0xe000,
+	0xf8ff, 0xf8ff,
+	0xf0000, 0xf0000,
+	0xffffd, 0xffffd,
+	0x100000, 0x100000,
+	0x10fffd, 0x10fffd,
+}; /* CR_Co */
+
+/* 'Cs': General Category */
+static const OnigCodePoint CR_Cs[] = {
+	4,
+	0xd800, 0xd800,
+	0xdb7f, 0xdb80,
+	0xdbff, 0xdc00,
+	0xdfff, 0xdfff,
+}; /* CR_Cs */
+
+/* 'L': Major Category */
+static const OnigCodePoint CR_L[] = {
+	394,
+	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, 0x0523,
+	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,
+	0x0904, 0x0939,
+	0x093d, 0x093d,
+	0x0950, 0x0950,
+	0x0958, 0x0961,
+	0x0971, 0x0972,
+	0x097b, 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, 0x1159,
+	0x115f, 0x11a2,
+	0x11a8, 0x11f9,
+	0x1200, 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, 0x1676,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	0x1700, 0x170c,
+	0x170e, 0x1711,
+	0x1720, 0x1731,
+	0x1740, 0x1751,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1780, 0x17b3,
+	0x17d7, 0x17d7,
+	0x17dc, 0x17dc,
+	0x1820, 0x1877,
+	0x1880, 0x18a8,
+	0x18aa, 0x18aa,
+	0x1900, 0x191c,
+	0x1950, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19a9,
+	0x19c1, 0x19c7,
+	0x1a00, 0x1a16,
+	0x1b05, 0x1b33,
+	0x1b45, 0x1b4b,
+	0x1b83, 0x1ba0,
+	0x1bae, 0x1baf,
+	0x1c00, 0x1c23,
+	0x1c4d, 0x1c4f,
+	0x1c5a, 0x1c7d,
+	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,
+	0x2183, 0x2184,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+	0x2c60, 0x2c6f,
+	0x2c71, 0x2c7d,
+	0x2c80, 0x2ce4,
+	0x2d00, 0x2d25,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x2e2f, 0x2e2f,
+	0x3005, 0x3006,
+	0x3031, 0x3035,
+	0x303b, 0x303c,
+	0x3041, 0x3096,
+	0x309d, 0x309f,
+	0x30a1, 0x30fa,
+	0x30fc, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x3400,
+	0x4db5, 0x4db5,
+	0x4e00, 0x4e00,
+	0x9fc3, 0x9fc3,
+	0xa000, 0xa48c,
+	0xa500, 0xa60c,
+	0xa610, 0xa61f,
+	0xa62a, 0xa62b,
+	0xa640, 0xa65f,
+	0xa662, 0xa66e,
+	0xa67f, 0xa697,
+	0xa717, 0xa71f,
+	0xa722, 0xa788,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa801,
+	0xa803, 0xa805,
+	0xa807, 0xa80a,
+	0xa80c, 0xa822,
+	0xa840, 0xa873,
+	0xa882, 0xa8b3,
+	0xa90a, 0xa925,
+	0xa930, 0xa946,
+	0xaa00, 0xaa28,
+	0xaa40, 0xaa42,
+	0xaa44, 0xaa4b,
+	0xac00, 0xac00,
+	0xd7a3, 0xd7a3,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6a,
+	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,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x10340,
+	0x10342, 0x10349,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x10400, 0x1049d,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x1083f,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a00,
+	0x10a10, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x12000, 0x1236e,
+	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, 0x20000,
+	0x2a6d6, 0x2a6d6,
+	0x2f800, 0x2fa1d,
+}; /* CR_L */
+
+/* 'Ll': General Category */
+static const OnigCodePoint CR_Ll[] = {
+	598,
+	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, 0x02af,
+	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, 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,
+	0x0561, 0x0587,
+	0x1d00, 0x1d2b,
+	0x1d62, 0x1d77,
+	0x1d79, 0x1d9a,
+	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,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x210a, 0x210a,
+	0x210e, 0x210f,
+	0x2113, 0x2113,
+	0x212f, 0x212f,
+	0x2134, 0x2134,
+	0x2139, 0x2139,
+	0x213c, 0x213d,
+	0x2146, 0x2149,
+	0x214e, 0x214e,
+	0x2184, 0x2184,
+	0x2c30, 0x2c5e,
+	0x2c61, 0x2c61,
+	0x2c65, 0x2c66,
+	0x2c68, 0x2c68,
+	0x2c6a, 0x2c6a,
+	0x2c6c, 0x2c6c,
+	0x2c71, 0x2c71,
+	0x2c73, 0x2c74,
+	0x2c76, 0x2c7c,
+	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,
+	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, 0xa76f,
+	0xa771, 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_Ll */
+
+/* 'Lm': General Category */
+static const OnigCodePoint CR_Lm[] = {
+	39,
+	0x02b0, 0x02c1,
+	0x02c6, 0x02d1,
+	0x02e0, 0x02e4,
+	0x02ec, 0x02ec,
+	0x02ee, 0x02ee,
+	0x0374, 0x0374,
+	0x037a, 0x037a,
+	0x0559, 0x0559,
+	0x0640, 0x0640,
+	0x06e5, 0x06e6,
+	0x07f4, 0x07f5,
+	0x07fa, 0x07fa,
+	0x0971, 0x0971,
+	0x0e46, 0x0e46,
+	0x0ec6, 0x0ec6,
+	0x10fc, 0x10fc,
+	0x17d7, 0x17d7,
+	0x1843, 0x1843,
+	0x1c78, 0x1c7d,
+	0x1d2c, 0x1d61,
+	0x1d78, 0x1d78,
+	0x1d9b, 0x1dbf,
+	0x2090, 0x2094,
+	0x2c7d, 0x2c7d,
+	0x2d6f, 0x2d6f,
+	0x2e2f, 0x2e2f,
+	0x3005, 0x3005,
+	0x3031, 0x3035,
+	0x303b, 0x303b,
+	0x309d, 0x309e,
+	0x30fc, 0x30fe,
+	0xa015, 0xa015,
+	0xa60c, 0xa60c,
+	0xa67f, 0xa67f,
+	0xa717, 0xa71f,
+	0xa770, 0xa770,
+	0xa788, 0xa788,
+	0xff70, 0xff70,
+	0xff9e, 0xff9f,
+}; /* CR_Lm */
+
+/* 'Lo': General Category */
+static const OnigCodePoint CR_Lo[] = {
+	286,
+	0x01bb, 0x01bb,
+	0x01c0, 0x01c3,
+	0x0294, 0x0294,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f2,
+	0x0621, 0x063f,
+	0x0641, 0x064a,
+	0x066e, 0x066f,
+	0x0671, 0x06d3,
+	0x06d5, 0x06d5,
+	0x06ee, 0x06ef,
+	0x06fa, 0x06fc,
+	0x06ff, 0x06ff,
+	0x0710, 0x0710,
+	0x0712, 0x072f,
+	0x074d, 0x07a5,
+	0x07b1, 0x07b1,
+	0x07ca, 0x07ea,
+	0x0904, 0x0939,
+	0x093d, 0x093d,
+	0x0950, 0x0950,
+	0x0958, 0x0961,
+	0x0972, 0x0972,
+	0x097b, 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, 0x0e45,
+	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,
+	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,
+	0x10d0, 0x10fa,
+	0x1100, 0x1159,
+	0x115f, 0x11a2,
+	0x11a8, 0x11f9,
+	0x1200, 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, 0x1676,
+	0x1681, 0x169a,
+	0x16a0, 0x16ea,
+	0x1700, 0x170c,
+	0x170e, 0x1711,
+	0x1720, 0x1731,
+	0x1740, 0x1751,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1780, 0x17b3,
+	0x17dc, 0x17dc,
+	0x1820, 0x1842,
+	0x1844, 0x1877,
+	0x1880, 0x18a8,
+	0x18aa, 0x18aa,
+	0x1900, 0x191c,
+	0x1950, 0x196d,
+	0x1970, 0x1974,
+	0x1980, 0x19a9,
+	0x19c1, 0x19c7,
+	0x1a00, 0x1a16,
+	0x1b05, 0x1b33,
+	0x1b45, 0x1b4b,
+	0x1b83, 0x1ba0,
+	0x1bae, 0x1baf,
+	0x1c00, 0x1c23,
+	0x1c4d, 0x1c4f,
+	0x1c5a, 0x1c77,
+	0x2135, 0x2138,
+	0x2d30, 0x2d65,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+	0x3006, 0x3006,
+	0x303c, 0x303c,
+	0x3041, 0x3096,
+	0x309f, 0x309f,
+	0x30a1, 0x30fa,
+	0x30ff, 0x30ff,
+	0x3105, 0x312d,
+	0x3131, 0x318e,
+	0x31a0, 0x31b7,
+	0x31f0, 0x31ff,
+	0x3400, 0x3400,
+	0x4db5, 0x4db5,
+	0x4e00, 0x4e00,
+	0x9fc3, 0x9fc3,
+	0xa000, 0xa014,
+	0xa016, 0xa48c,
+	0xa500, 0xa60b,
+	0xa610, 0xa61f,
+	0xa62a, 0xa62b,
+	0xa66e, 0xa66e,
+	0xa7fb, 0xa801,
+	0xa803, 0xa805,
+	0xa807, 0xa80a,
+	0xa80c, 0xa822,
+	0xa840, 0xa873,
+	0xa882, 0xa8b3,
+	0xa90a, 0xa925,
+	0xa930, 0xa946,
+	0xaa00, 0xaa28,
+	0xaa40, 0xaa42,
+	0xaa44, 0xaa4b,
+	0xac00, 0xac00,
+	0xd7a3, 0xd7a3,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6a,
+	0xfa70, 0xfad9,
+	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,
+	0xff66, 0xff6f,
+	0xff71, 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,
+	0x10280, 0x1029c,
+	0x102a0, 0x102d0,
+	0x10300, 0x1031e,
+	0x10330, 0x10340,
+	0x10342, 0x10349,
+	0x10380, 0x1039d,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103cf,
+	0x10450, 0x1049d,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x1083f,
+	0x10900, 0x10915,
+	0x10920, 0x10939,
+	0x10a00, 0x10a00,
+	0x10a10, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x12000, 0x1236e,
+	0x20000, 0x20000,
+	0x2a6d6, 0x2a6d6,
+	0x2f800, 0x2fa1d,
+}; /* CR_Lo */
+
+/* 'Lt': General Category */
+static const OnigCodePoint CR_Lt[] = {
+	10,
+	0x01c5, 0x01c5,
+	0x01c8, 0x01c8,
+	0x01cb, 0x01cb,
+	0x01f2, 0x01f2,
+	0x1f88, 0x1f8f,
+	0x1f98, 0x1f9f,
+	0x1fa8, 0x1faf,
+	0x1fbc, 0x1fbc,
+	0x1fcc, 0x1fcc,
+	0x1ffc, 0x1ffc,
+}; /* CR_Lt */
+
+/* 'Lu': General Category */
+static const OnigCodePoint CR_Lu[] = {
+	591,
+	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,
+	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,
+	0x2183, 0x2183,
+	0x2c00, 0x2c2e,
+	0x2c60, 0x2c60,
+	0x2c62, 0x2c64,
+	0x2c67, 0x2c67,
+	0x2c69, 0x2c69,
+	0x2c6b, 0x2c6b,
+	0x2c6d, 0x2c6f,
+	0x2c72, 0x2c72,
+	0x2c75, 0x2c75,
+	0x2c80, 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,
+	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_Lu */
+
+/* 'M': Major Category */
+static const OnigCodePoint CR_M[] = {
+	161,
+	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,
+	0x0901, 0x0903,
+	0x093c, 0x093c,
+	0x093e, 0x094d,
+	0x0951, 0x0954,
+	0x0962, 0x0963,
+	0x0981, 0x0983,
+	0x09bc, 0x09bc,
+	0x09be, 0x09c4,
+	0x09c7, 0x09c8,
+	0x09cb, 0x09cd,
+	0x09d7, 0x09d7,
+	0x09e2, 0x09e3,
+	0x0a01, 0x0a03,
+	0x0a3c, 0x0a3c,
+	0x0a3e, 0x0a42,
+	0x0a47, 0x0a48,
+	0x0a4b, 0x0a4d,
+	0x0a51, 0x0a51,
+	0x0a70, 0x0a71,
+	0x0a75, 0x0a75,
+	0x0a81, 0x0a83,
+	0x0abc, 0x0abc,
+	0x0abe, 0x0ac5,
+	0x0ac7, 0x0ac9,
+	0x0acb, 0x0acd,
+	0x0ae2, 0x0ae3,
+	0x0b01, 0x0b03,
+	0x0b3c, 0x0b3c,
+	0x0b3e, 0x0b44,
+	0x0b47, 0x0b48,
+	0x0b4b, 0x0b4d,
+	0x0b56, 0x0b57,
+	0x0b62, 0x0b63,
+	0x0b82, 0x0b82,
+	0x0bbe, 0x0bc2,
+	0x0bc6, 0x0bc8,
+	0x0bca, 0x0bcd,
+	0x0bd7, 0x0bd7,
+	0x0c01, 0x0c03,
+	0x0c3e, 0x0c44,
+	0x0c46, 0x0c48,
+	0x0c4a, 0x0c4d,
+	0x0c55, 0x0c56,
+	0x0c62, 0x0c63,
+	0x0c82, 0x0c83,
+	0x0cbc, 0x0cbc,
+	0x0cbe, 0x0cc4,
+	0x0cc6, 0x0cc8,
+	0x0cca, 0x0ccd,
+	0x0cd5, 0x0cd6,
+	0x0ce2, 0x0ce3,
+	0x0d02, 0x0d03,
+	0x0d3e, 0x0d44,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4d,
+	0x0d57, 0x0d57,
+	0x0d62, 0x0d63,
+	0x0d82, 0x0d83,
+	0x0dca, 0x0dca,
+	0x0dcf, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0dd8, 0x0ddf,
+	0x0df2, 0x0df3,
+	0x0e31, 0x0e31,
+	0x0e34, 0x0e3a,
+	0x0e47, 0x0e4e,
+	0x0eb1, 0x0eb1,
+	0x0eb4, 0x0eb9,
+	0x0ebb, 0x0ebc,
+	0x0ec8, 0x0ecd,
+	0x0f18, 0x0f19,
+	0x0f35, 0x0f35,
+	0x0f37, 0x0f37,
+	0x0f39, 0x0f39,
+	0x0f3e, 0x0f3f,
+	0x0f71, 0x0f84,
+	0x0f86, 0x0f87,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x0fc6, 0x0fc6,
+	0x102b, 0x103e,
+	0x1056, 0x1059,
+	0x105e, 0x1060,
+	0x1062, 0x1064,
+	0x1067, 0x106d,
+	0x1071, 0x1074,
+	0x1082, 0x108d,
+	0x108f, 0x108f,
+	0x135f, 0x135f,
+	0x1712, 0x1714,
+	0x1732, 0x1734,
+	0x1752, 0x1753,
+	0x1772, 0x1773,
+	0x17b6, 0x17d3,
+	0x17dd, 0x17dd,
+	0x180b, 0x180d,
+	0x18a9, 0x18a9,
+	0x1920, 0x192b,
+	0x1930, 0x193b,
+	0x19b0, 0x19c0,
+	0x19c8, 0x19c9,
+	0x1a17, 0x1a1b,
+	0x1b00, 0x1b04,
+	0x1b34, 0x1b44,
+	0x1b6b, 0x1b73,
+	0x1b80, 0x1b82,
+	0x1ba1, 0x1baa,
+	0x1c24, 0x1c37,
+	0x1dc0, 0x1de6,
+	0x1dfe, 0x1dff,
+	0x20d0, 0x20f0,
+	0x2de0, 0x2dff,
+	0x302a, 0x302f,
+	0x3099, 0x309a,
+	0xa66f, 0xa672,
+	0xa67c, 0xa67d,
+	0xa802, 0xa802,
+	0xa806, 0xa806,
+	0xa80b, 0xa80b,
+	0xa823, 0xa827,
+	0xa880, 0xa881,
+	0xa8b4, 0xa8c4,
+	0xa926, 0xa92d,
+	0xa947, 0xa953,
+	0xaa29, 0xaa36,
+	0xaa43, 0xaa43,
+	0xaa4c, 0xaa4d,
+	0xfb1e, 0xfb1e,
+	0xfe00, 0xfe0f,
+	0xfe20, 0xfe26,
+	0x101fd, 0x101fd,
+	0x10a01, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a0f,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a3f,
+	0x1d165, 0x1d169,
+	0x1d16d, 0x1d172,
+	0x1d17b, 0x1d182,
+	0x1d185, 0x1d18b,
+	0x1d1aa, 0x1d1ad,
+	0x1d242, 0x1d244,
+	0xe0100, 0xe01ef,
+}; /* CR_M */
+
+/* 'Mc': General Category */
+static const OnigCodePoint CR_Mc[] = {
+	85,
+	0x0903, 0x0903,
+	0x093e, 0x0940,
+	0x0949, 0x094c,
+	0x0982, 0x0983,
+	0x09be, 0x09c0,
+	0x09c7, 0x09c8,
+	0x09cb, 0x09cc,
+	0x09d7, 0x09d7,
+	0x0a03, 0x0a03,
+	0x0a3e, 0x0a40,
+	0x0a83, 0x0a83,
+	0x0abe, 0x0ac0,
+	0x0ac9, 0x0ac9,
+	0x0acb, 0x0acc,
+	0x0b02, 0x0b03,
+	0x0b3e, 0x0b3e,
+	0x0b40, 0x0b40,
+	0x0b47, 0x0b48,
+	0x0b4b, 0x0b4c,
+	0x0b57, 0x0b57,
+	0x0bbe, 0x0bbf,
+	0x0bc1, 0x0bc2,
+	0x0bc6, 0x0bc8,
+	0x0bca, 0x0bcc,
+	0x0bd7, 0x0bd7,
+	0x0c01, 0x0c03,
+	0x0c41, 0x0c44,
+	0x0c82, 0x0c83,
+	0x0cbe, 0x0cbe,
+	0x0cc0, 0x0cc4,
+	0x0cc7, 0x0cc8,
+	0x0cca, 0x0ccb,
+	0x0cd5, 0x0cd6,
+	0x0d02, 0x0d03,
+	0x0d3e, 0x0d40,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4c,
+	0x0d57, 0x0d57,
+	0x0d82, 0x0d83,
+	0x0dcf, 0x0dd1,
+	0x0dd8, 0x0ddf,
+	0x0df2, 0x0df3,
+	0x0f3e, 0x0f3f,
+	0x0f7f, 0x0f7f,
+	0x102b, 0x102c,
+	0x1031, 0x1031,
+	0x1038, 0x1038,
+	0x103b, 0x103c,
+	0x1056, 0x1057,
+	0x1062, 0x1064,
+	0x1067, 0x106d,
+	0x1083, 0x1084,
+	0x1087, 0x108c,
+	0x108f, 0x108f,
+	0x17b6, 0x17b6,
+	0x17be, 0x17c5,
+	0x17c7, 0x17c8,
+	0x1923, 0x1926,
+	0x1929, 0x192b,
+	0x1930, 0x1931,
+	0x1933, 0x1938,
+	0x19b0, 0x19c0,
+	0x19c8, 0x19c9,
+	0x1a19, 0x1a1b,
+	0x1b04, 0x1b04,
+	0x1b35, 0x1b35,
+	0x1b3b, 0x1b3b,
+	0x1b3d, 0x1b41,
+	0x1b43, 0x1b44,
+	0x1b82, 0x1b82,
+	0x1ba1, 0x1ba1,
+	0x1ba6, 0x1ba7,
+	0x1baa, 0x1baa,
+	0x1c24, 0x1c2b,
+	0x1c34, 0x1c35,
+	0xa823, 0xa824,
+	0xa827, 0xa827,
+	0xa880, 0xa881,
+	0xa8b4, 0xa8c3,
+	0xa952, 0xa953,
+	0xaa2f, 0xaa30,
+	0xaa33, 0xaa34,
+	0xaa4d, 0xaa4d,
+	0x1d165, 0x1d166,
+	0x1d16d, 0x1d172,
+}; /* CR_Mc */
+
+/* 'Me': General Category */
+static const OnigCodePoint CR_Me[] = {
+	5,
+	0x0488, 0x0489,
+	0x06de, 0x06de,
+	0x20dd, 0x20e0,
+	0x20e2, 0x20e4,
+	0xa670, 0xa672,
+}; /* CR_Me */
+
+/* 'Mn': General Category */
+static const OnigCodePoint CR_Mn[] = {
+	160,
+	0x0300, 0x036f,
+	0x0483, 0x0487,
+	0x0591, 0x05bd,
+	0x05bf, 0x05bf,
+	0x05c1, 0x05c2,
+	0x05c4, 0x05c5,
+	0x05c7, 0x05c7,
+	0x0610, 0x061a,
+	0x064b, 0x065e,
+	0x0670, 0x0670,
+	0x06d6, 0x06dc,
+	0x06df, 0x06e4,
+	0x06e7, 0x06e8,
+	0x06ea, 0x06ed,
+	0x0711, 0x0711,
+	0x0730, 0x074a,
+	0x07a6, 0x07b0,
+	0x07eb, 0x07f3,
+	0x0901, 0x0902,
+	0x093c, 0x093c,
+	0x0941, 0x0948,
+	0x094d, 0x094d,
+	0x0951, 0x0954,
+	0x0962, 0x0963,
+	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,
+	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,
+	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,
+	0x1b00, 0x1b03,
+	0x1b34, 0x1b34,
+	0x1b36, 0x1b3a,
+	0x1b3c, 0x1b3c,
+	0x1b42, 0x1b42,
+	0x1b6b, 0x1b73,
+	0x1b80, 0x1b81,
+	0x1ba2, 0x1ba5,
+	0x1ba8, 0x1ba9,
+	0x1c2c, 0x1c33,
+	0x1c36, 0x1c37,
+	0x1dc0, 0x1de6,
+	0x1dfe, 0x1dff,
+	0x20d0, 0x20dc,
+	0x20e1, 0x20e1,
+	0x20e5, 0x20f0,
+	0x2de0, 0x2dff,
+	0x302a, 0x302f,
+	0x3099, 0x309a,
+	0xa66f, 0xa66f,
+	0xa67c, 0xa67d,
+	0xa802, 0xa802,
+	0xa806, 0xa806,
+	0xa80b, 0xa80b,
+	0xa825, 0xa826,
+	0xa8c4, 0xa8c4,
+	0xa926, 0xa92d,
+	0xa947, 0xa951,
+	0xaa29, 0xaa2e,
+	0xaa31, 0xaa32,
+	0xaa35, 0xaa36,
+	0xaa43, 0xaa43,
+	0xaa4c, 0xaa4c,
+	0xfb1e, 0xfb1e,
+	0xfe00, 0xfe0f,
+	0xfe20, 0xfe26,
+	0x101fd, 0x101fd,
+	0x10a01, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a0f,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a3f,
+	0x1d167, 0x1d169,
+	0x1d17b, 0x1d182,
+	0x1d185, 0x1d18b,
+	0x1d1aa, 0x1d1ad,
+	0x1d242, 0x1d244,
+	0xe0100, 0xe01ef,
+}; /* CR_Mn */
+
+/* 'N': Major Category */
+static const OnigCodePoint CR_N[] = {
+	69,
+	0x0030, 0x0039,
+	0x00b2, 0x00b3,
+	0x00b9, 0x00b9,
+	0x00bc, 0x00be,
+	0x0660, 0x0669,
+	0x06f0, 0x06f9,
+	0x07c0, 0x07c9,
+	0x0966, 0x096f,
+	0x09e6, 0x09ef,
+	0x09f4, 0x09f9,
+	0x0a66, 0x0a6f,
+	0x0ae6, 0x0aef,
+	0x0b66, 0x0b6f,
+	0x0be6, 0x0bf2,
+	0x0c66, 0x0c6f,
+	0x0c78, 0x0c7e,
+	0x0ce6, 0x0cef,
+	0x0d66, 0x0d75,
+	0x0e50, 0x0e59,
+	0x0ed0, 0x0ed9,
+	0x0f20, 0x0f33,
+	0x1040, 0x1049,
+	0x1090, 0x1099,
+	0x1369, 0x137c,
+	0x16ee, 0x16f0,
+	0x17e0, 0x17e9,
+	0x17f0, 0x17f9,
+	0x1810, 0x1819,
+	0x1946, 0x194f,
+	0x19d0, 0x19d9,
+	0x1b50, 0x1b59,
+	0x1bb0, 0x1bb9,
+	0x1c40, 0x1c49,
+	0x1c50, 0x1c59,
+	0x2070, 0x2070,
+	0x2074, 0x2079,
+	0x2080, 0x2089,
+	0x2153, 0x2182,
+	0x2185, 0x2188,
+	0x2460, 0x249b,
+	0x24ea, 0x24ff,
+	0x2776, 0x2793,
+	0x2cfd, 0x2cfd,
+	0x3007, 0x3007,
+	0x3021, 0x3029,
+	0x3038, 0x303a,
+	0x3192, 0x3195,
+	0x3220, 0x3229,
+	0x3251, 0x325f,
+	0x3280, 0x3289,
+	0x32b1, 0x32bf,
+	0xa620, 0xa629,
+	0xa8d0, 0xa8d9,
+	0xa900, 0xa909,
+	0xaa50, 0xaa59,
+	0xff10, 0xff19,
+	0x10107, 0x10133,
+	0x10140, 0x10178,
+	0x1018a, 0x1018a,
+	0x10320, 0x10323,
+	0x10341, 0x10341,
+	0x1034a, 0x1034a,
+	0x103d1, 0x103d5,
+	0x104a0, 0x104a9,
+	0x10916, 0x10919,
+	0x10a40, 0x10a47,
+	0x12400, 0x12462,
+	0x1d360, 0x1d371,
+	0x1d7ce, 0x1d7ff,
+}; /* CR_N */
+
+/* 'Nd': General Category */
+static const OnigCodePoint CR_Nd[] = {
+	33,
+	0x0030, 0x0039,
+	0x0660, 0x0669,
+	0x06f0, 0x06f9,
+	0x07c0, 0x07c9,
+	0x0966, 0x096f,
+	0x09e6, 0x09ef,
+	0x0a66, 0x0a6f,
+	0x0ae6, 0x0aef,
+	0x0b66, 0x0b6f,
+	0x0be6, 0x0bef,
+	0x0c66, 0x0c6f,
+	0x0ce6, 0x0cef,
+	0x0d66, 0x0d6f,
+	0x0e50, 0x0e59,
+	0x0ed0, 0x0ed9,
+	0x0f20, 0x0f29,
+	0x1040, 0x1049,
+	0x1090, 0x1099,
+	0x17e0, 0x17e9,
+	0x1810, 0x1819,
+	0x1946, 0x194f,
+	0x19d0, 0x19d9,
+	0x1b50, 0x1b59,
+	0x1bb0, 0x1bb9,
+	0x1c40, 0x1c49,
+	0x1c50, 0x1c59,
+	0xa620, 0xa629,
+	0xa8d0, 0xa8d9,
+	0xa900, 0xa909,
+	0xaa50, 0xaa59,
+	0xff10, 0xff19,
+	0x104a0, 0x104a9,
+	0x1d7ce, 0x1d7ff,
+}; /* CR_Nd */
+
+/* 'Nl': General Category */
+static const OnigCodePoint CR_Nl[] = {
+	11,
+	0x16ee, 0x16f0,
+	0x2160, 0x2182,
+	0x2185, 0x2188,
+	0x3007, 0x3007,
+	0x3021, 0x3029,
+	0x3038, 0x303a,
+	0x10140, 0x10174,
+	0x10341, 0x10341,
+	0x1034a, 0x1034a,
+	0x103d1, 0x103d5,
+	0x12400, 0x12462,
+}; /* CR_Nl */
+
+/* 'No': General Category */
+static const OnigCodePoint CR_No[] = {
+	30,
+	0x00b2, 0x00b3,
+	0x00b9, 0x00b9,
+	0x00bc, 0x00be,
+	0x09f4, 0x09f9,
+	0x0bf0, 0x0bf2,
+	0x0c78, 0x0c7e,
+	0x0d70, 0x0d75,
+	0x0f2a, 0x0f33,
+	0x1369, 0x137c,
+	0x17f0, 0x17f9,
+	0x2070, 0x2070,
+	0x2074, 0x2079,
+	0x2080, 0x2089,
+	0x2153, 0x215f,
+	0x2460, 0x249b,
+	0x24ea, 0x24ff,
+	0x2776, 0x2793,
+	0x2cfd, 0x2cfd,
+	0x3192, 0x3195,
+	0x3220, 0x3229,
+	0x3251, 0x325f,
+	0x3280, 0x3289,
+	0x32b1, 0x32bf,
+	0x10107, 0x10133,
+	0x10175, 0x10178,
+	0x1018a, 0x1018a,
+	0x10320, 0x10323,
+	0x10916, 0x10919,
+	0x10a40, 0x10a47,
+	0x1d360, 0x1d371,
+}; /* CR_No */
+
+/* 'P': Major Category */
+static const OnigCodePoint CR_P[] = {
+	112,
+	0x0021, 0x0023,
+	0x0025, 0x002a,
+	0x002c, 0x002f,
+	0x003a, 0x003b,
+	0x003f, 0x0040,
+	0x005b, 0x005d,
+	0x005f, 0x005f,
+	0x007b, 0x007b,
+	0x007d, 0x007d,
+	0x00a1, 0x00a1,
+	0x00ab, 0x00ab,
+	0x00b7, 0x00b7,
+	0x00bb, 0x00bb,
+	0x00bf, 0x00bf,
+	0x037e, 0x037e,
+	0x0387, 0x0387,
+	0x055a, 0x055f,
+	0x0589, 0x058a,
+	0x05be, 0x05be,
+	0x05c0, 0x05c0,
+	0x05c3, 0x05c3,
+	0x05c6, 0x05c6,
+	0x05f3, 0x05f4,
+	0x0609, 0x060a,
+	0x060c, 0x060d,
+	0x061b, 0x061b,
+	0x061e, 0x061f,
+	0x066a, 0x066d,
+	0x06d4, 0x06d4,
+	0x0700, 0x070d,
+	0x07f7, 0x07f9,
+	0x0964, 0x0965,
+	0x0970, 0x0970,
+	0x0df4, 0x0df4,
+	0x0e4f, 0x0e4f,
+	0x0e5a, 0x0e5b,
+	0x0f04, 0x0f12,
+	0x0f3a, 0x0f3d,
+	0x0f85, 0x0f85,
+	0x0fd0, 0x0fd4,
+	0x104a, 0x104f,
+	0x10fb, 0x10fb,
+	0x1361, 0x1368,
+	0x166d, 0x166e,
+	0x169b, 0x169c,
+	0x16eb, 0x16ed,
+	0x1735, 0x1736,
+	0x17d4, 0x17d6,
+	0x17d8, 0x17da,
+	0x1800, 0x180a,
+	0x1944, 0x1945,
+	0x19de, 0x19df,
+	0x1a1e, 0x1a1f,
+	0x1b5a, 0x1b60,
+	0x1c3b, 0x1c3f,
+	0x1c7e, 0x1c7f,
+	0x2010, 0x2027,
+	0x2030, 0x2043,
+	0x2045, 0x2051,
+	0x2053, 0x205e,
+	0x207d, 0x207e,
+	0x208d, 0x208e,
+	0x2329, 0x232a,
+	0x2768, 0x2775,
+	0x27c5, 0x27c6,
+	0x27e6, 0x27ef,
+	0x2983, 0x2998,
+	0x29d8, 0x29db,
+	0x29fc, 0x29fd,
+	0x2cf9, 0x2cfc,
+	0x2cfe, 0x2cff,
+	0x2e00, 0x2e2e,
+	0x2e30, 0x2e30,
+	0x3001, 0x3003,
+	0x3008, 0x3011,
+	0x3014, 0x301f,
+	0x3030, 0x3030,
+	0x303d, 0x303d,
+	0x30a0, 0x30a0,
+	0x30fb, 0x30fb,
+	0xa60d, 0xa60f,
+	0xa673, 0xa673,
+	0xa67e, 0xa67e,
+	0xa874, 0xa877,
+	0xa8ce, 0xa8cf,
+	0xa92e, 0xa92f,
+	0xa95f, 0xa95f,
+	0xaa5c, 0xaa5f,
+	0xfd3e, 0xfd3f,
+	0xfe10, 0xfe19,
+	0xfe30, 0xfe52,
+	0xfe54, 0xfe61,
+	0xfe63, 0xfe63,
+	0xfe68, 0xfe68,
+	0xfe6a, 0xfe6b,
+	0xff01, 0xff03,
+	0xff05, 0xff0a,
+	0xff0c, 0xff0f,
+	0xff1a, 0xff1b,
+	0xff1f, 0xff20,
+	0xff3b, 0xff3d,
+	0xff3f, 0xff3f,
+	0xff5b, 0xff5b,
+	0xff5d, 0xff5d,
+	0xff5f, 0xff65,
+	0x10100, 0x10101,
+	0x1039f, 0x1039f,
+	0x103d0, 0x103d0,
+	0x1091f, 0x1091f,
+	0x1093f, 0x1093f,
+	0x10a50, 0x10a58,
+	0x12470, 0x12473,
+}; /* CR_P */
+
+/* 'Pc': General Category */
+static const OnigCodePoint CR_Pc[] = {
+	6,
+	0x005f, 0x005f,
+	0x203f, 0x2040,
+	0x2054, 0x2054,
+	0xfe33, 0xfe34,
+	0xfe4d, 0xfe4f,
+	0xff3f, 0xff3f,
+}; /* CR_Pc */
+
+/* 'Pd': General Category */
+static const OnigCodePoint CR_Pd[] = {
+	14,
+	0x002d, 0x002d,
+	0x058a, 0x058a,
+	0x05be, 0x05be,
+	0x1806, 0x1806,
+	0x2010, 0x2015,
+	0x2e17, 0x2e17,
+	0x2e1a, 0x2e1a,
+	0x301c, 0x301c,
+	0x3030, 0x3030,
+	0x30a0, 0x30a0,
+	0xfe31, 0xfe32,
+	0xfe58, 0xfe58,
+	0xfe63, 0xfe63,
+	0xff0d, 0xff0d,
+}; /* CR_Pd */
+
+/* 'Pe': General Category */
+static const OnigCodePoint CR_Pe[] = {
+	70,
+	0x0029, 0x0029,
+	0x005d, 0x005d,
+	0x007d, 0x007d,
+	0x0f3b, 0x0f3b,
+	0x0f3d, 0x0f3d,
+	0x169c, 0x169c,
+	0x2046, 0x2046,
+	0x207e, 0x207e,
+	0x208e, 0x208e,
+	0x232a, 0x232a,
+	0x2769, 0x2769,
+	0x276b, 0x276b,
+	0x276d, 0x276d,
+	0x276f, 0x276f,
+	0x2771, 0x2771,
+	0x2773, 0x2773,
+	0x2775, 0x2775,
+	0x27c6, 0x27c6,
+	0x27e7, 0x27e7,
+	0x27e9, 0x27e9,
+	0x27eb, 0x27eb,
+	0x27ed, 0x27ed,
+	0x27ef, 0x27ef,
+	0x2984, 0x2984,
+	0x2986, 0x2986,
+	0x2988, 0x2988,
+	0x298a, 0x298a,
+	0x298c, 0x298c,
+	0x298e, 0x298e,
+	0x2990, 0x2990,
+	0x2992, 0x2992,
+	0x2994, 0x2994,
+	0x2996, 0x2996,
+	0x2998, 0x2998,
+	0x29d9, 0x29d9,
+	0x29db, 0x29db,
+	0x29fd, 0x29fd,
+	0x2e23, 0x2e23,
+	0x2e25, 0x2e25,
+	0x2e27, 0x2e27,
+	0x2e29, 0x2e29,
+	0x3009, 0x3009,
+	0x300b, 0x300b,
+	0x300d, 0x300d,
+	0x300f, 0x300f,
+	0x3011, 0x3011,
+	0x3015, 0x3015,
+	0x3017, 0x3017,
+	0x3019, 0x3019,
+	0x301b, 0x301b,
+	0x301e, 0x301f,
+	0xfd3f, 0xfd3f,
+	0xfe18, 0xfe18,
+	0xfe36, 0xfe36,
+	0xfe38, 0xfe38,
+	0xfe3a, 0xfe3a,
+	0xfe3c, 0xfe3c,
+	0xfe3e, 0xfe3e,
+	0xfe40, 0xfe40,
+	0xfe42, 0xfe42,
+	0xfe44, 0xfe44,
+	0xfe48, 0xfe48,
+	0xfe5a, 0xfe5a,
+	0xfe5c, 0xfe5c,
+	0xfe5e, 0xfe5e,
+	0xff09, 0xff09,
+	0xff3d, 0xff3d,
+	0xff5d, 0xff5d,
+	0xff60, 0xff60,
+	0xff63, 0xff63,
+}; /* CR_Pe */
+
+/* 'Pf': General Category */
+static const OnigCodePoint CR_Pf[] = {
+	10,
+	0x00bb, 0x00bb,
+	0x2019, 0x2019,
+	0x201d, 0x201d,
+	0x203a, 0x203a,
+	0x2e03, 0x2e03,
+	0x2e05, 0x2e05,
+	0x2e0a, 0x2e0a,
+	0x2e0d, 0x2e0d,
+	0x2e1d, 0x2e1d,
+	0x2e21, 0x2e21,
+}; /* CR_Pf */
+
+/* 'Pi': General Category */
+static const OnigCodePoint CR_Pi[] = {
+	11,
+	0x00ab, 0x00ab,
+	0x2018, 0x2018,
+	0x201b, 0x201c,
+	0x201f, 0x201f,
+	0x2039, 0x2039,
+	0x2e02, 0x2e02,
+	0x2e04, 0x2e04,
+	0x2e09, 0x2e09,
+	0x2e0c, 0x2e0c,
+	0x2e1c, 0x2e1c,
+	0x2e20, 0x2e20,
+}; /* CR_Pi */
+
+/* 'Po': General Category */
+static const OnigCodePoint CR_Po[] = {
+	108,
+	0x0021, 0x0023,
+	0x0025, 0x0027,
+	0x002a, 0x002a,
+	0x002c, 0x002c,
+	0x002e, 0x002f,
+	0x003a, 0x003b,
+	0x003f, 0x0040,
+	0x005c, 0x005c,
+	0x00a1, 0x00a1,
+	0x00b7, 0x00b7,
+	0x00bf, 0x00bf,
+	0x037e, 0x037e,
+	0x0387, 0x0387,
+	0x055a, 0x055f,
+	0x0589, 0x0589,
+	0x05c0, 0x05c0,
+	0x05c3, 0x05c3,
+	0x05c6, 0x05c6,
+	0x05f3, 0x05f4,
+	0x0609, 0x060a,
+	0x060c, 0x060d,
+	0x061b, 0x061b,
+	0x061e, 0x061f,
+	0x066a, 0x066d,
+	0x06d4, 0x06d4,
+	0x0700, 0x070d,
+	0x07f7, 0x07f9,
+	0x0964, 0x0965,
+	0x0970, 0x0970,
+	0x0df4, 0x0df4,
+	0x0e4f, 0x0e4f,
+	0x0e5a, 0x0e5b,
+	0x0f04, 0x0f12,
+	0x0f85, 0x0f85,
+	0x0fd0, 0x0fd4,
+	0x104a, 0x104f,
+	0x10fb, 0x10fb,
+	0x1361, 0x1368,
+	0x166d, 0x166e,
+	0x16eb, 0x16ed,
+	0x1735, 0x1736,
+	0x17d4, 0x17d6,
+	0x17d8, 0x17da,
+	0x1800, 0x1805,
+	0x1807, 0x180a,
+	0x1944, 0x1945,
+	0x19de, 0x19df,
+	0x1a1e, 0x1a1f,
+	0x1b5a, 0x1b60,
+	0x1c3b, 0x1c3f,
+	0x1c7e, 0x1c7f,
+	0x2016, 0x2017,
+	0x2020, 0x2027,
+	0x2030, 0x2038,
+	0x203b, 0x203e,
+	0x2041, 0x2043,
+	0x2047, 0x2051,
+	0x2053, 0x2053,
+	0x2055, 0x205e,
+	0x2cf9, 0x2cfc,
+	0x2cfe, 0x2cff,
+	0x2e00, 0x2e01,
+	0x2e06, 0x2e08,
+	0x2e0b, 0x2e0b,
+	0x2e0e, 0x2e16,
+	0x2e18, 0x2e19,
+	0x2e1b, 0x2e1b,
+	0x2e1e, 0x2e1f,
+	0x2e2a, 0x2e2e,
+	0x2e30, 0x2e30,
+	0x3001, 0x3003,
+	0x303d, 0x303d,
+	0x30fb, 0x30fb,
+	0xa60d, 0xa60f,
+	0xa673, 0xa673,
+	0xa67e, 0xa67e,
+	0xa874, 0xa877,
+	0xa8ce, 0xa8cf,
+	0xa92e, 0xa92f,
+	0xa95f, 0xa95f,
+	0xaa5c, 0xaa5f,
+	0xfe10, 0xfe16,
+	0xfe19, 0xfe19,
+	0xfe30, 0xfe30,
+	0xfe45, 0xfe46,
+	0xfe49, 0xfe4c,
+	0xfe50, 0xfe52,
+	0xfe54, 0xfe57,
+	0xfe5f, 0xfe61,
+	0xfe68, 0xfe68,
+	0xfe6a, 0xfe6b,
+	0xff01, 0xff03,
+	0xff05, 0xff07,
+	0xff0a, 0xff0a,
+	0xff0c, 0xff0c,
+	0xff0e, 0xff0f,
+	0xff1a, 0xff1b,
+	0xff1f, 0xff20,
+	0xff3c, 0xff3c,
+	0xff61, 0xff61,
+	0xff64, 0xff65,
+	0x10100, 0x10101,
+	0x1039f, 0x1039f,
+	0x103d0, 0x103d0,
+	0x1091f, 0x1091f,
+	0x1093f, 0x1093f,
+	0x10a50, 0x10a58,
+	0x12470, 0x12473,
+}; /* CR_Po */
+
+/* 'Ps': General Category */
+static const OnigCodePoint CR_Ps[] = {
+	72,
+	0x0028, 0x0028,
+	0x005b, 0x005b,
+	0x007b, 0x007b,
+	0x0f3a, 0x0f3a,
+	0x0f3c, 0x0f3c,
+	0x169b, 0x169b,
+	0x201a, 0x201a,
+	0x201e, 0x201e,
+	0x2045, 0x2045,
+	0x207d, 0x207d,
+	0x208d, 0x208d,
+	0x2329, 0x2329,
+	0x2768, 0x2768,
+	0x276a, 0x276a,
+	0x276c, 0x276c,
+	0x276e, 0x276e,
+	0x2770, 0x2770,
+	0x2772, 0x2772,
+	0x2774, 0x2774,
+	0x27c5, 0x27c5,
+	0x27e6, 0x27e6,
+	0x27e8, 0x27e8,
+	0x27ea, 0x27ea,
+	0x27ec, 0x27ec,
+	0x27ee, 0x27ee,
+	0x2983, 0x2983,
+	0x2985, 0x2985,
+	0x2987, 0x2987,
+	0x2989, 0x2989,
+	0x298b, 0x298b,
+	0x298d, 0x298d,
+	0x298f, 0x298f,
+	0x2991, 0x2991,
+	0x2993, 0x2993,
+	0x2995, 0x2995,
+	0x2997, 0x2997,
+	0x29d8, 0x29d8,
+	0x29da, 0x29da,
+	0x29fc, 0x29fc,
+	0x2e22, 0x2e22,
+	0x2e24, 0x2e24,
+	0x2e26, 0x2e26,
+	0x2e28, 0x2e28,
+	0x3008, 0x3008,
+	0x300a, 0x300a,
+	0x300c, 0x300c,
+	0x300e, 0x300e,
+	0x3010, 0x3010,
+	0x3014, 0x3014,
+	0x3016, 0x3016,
+	0x3018, 0x3018,
+	0x301a, 0x301a,
+	0x301d, 0x301d,
+	0xfd3e, 0xfd3e,
+	0xfe17, 0xfe17,
+	0xfe35, 0xfe35,
+	0xfe37, 0xfe37,
+	0xfe39, 0xfe39,
+	0xfe3b, 0xfe3b,
+	0xfe3d, 0xfe3d,
+	0xfe3f, 0xfe3f,
+	0xfe41, 0xfe41,
+	0xfe43, 0xfe43,
+	0xfe47, 0xfe47,
+	0xfe59, 0xfe59,
+	0xfe5b, 0xfe5b,
+	0xfe5d, 0xfe5d,
+	0xff08, 0xff08,
+	0xff3b, 0xff3b,
+	0xff5b, 0xff5b,
+	0xff5f, 0xff5f,
+	0xff62, 0xff62,
+}; /* CR_Ps */
+
+/* 'S': Major Category */
+static const OnigCodePoint CR_S[] = {
+	179,
+	0x0024, 0x0024,
+	0x002b, 0x002b,
+	0x003c, 0x003e,
+	0x005e, 0x005e,
+	0x0060, 0x0060,
+	0x007c, 0x007c,
+	0x007e, 0x007e,
+	0x00a2, 0x00a9,
+	0x00ac, 0x00ac,
+	0x00ae, 0x00b1,
+	0x00b4, 0x00b4,
+	0x00b6, 0x00b6,
+	0x00b8, 0x00b8,
+	0x00d7, 0x00d7,
+	0x00f7, 0x00f7,
+	0x02c2, 0x02c5,
+	0x02d2, 0x02df,
+	0x02e5, 0x02eb,
+	0x02ed, 0x02ed,
+	0x02ef, 0x02ff,
+	0x0375, 0x0375,
+	0x0384, 0x0385,
+	0x03f6, 0x03f6,
+	0x0482, 0x0482,
+	0x0606, 0x0608,
+	0x060b, 0x060b,
+	0x060e, 0x060f,
+	0x06e9, 0x06e9,
+	0x06fd, 0x06fe,
+	0x07f6, 0x07f6,
+	0x09f2, 0x09f3,
+	0x09fa, 0x09fa,
+	0x0af1, 0x0af1,
+	0x0b70, 0x0b70,
+	0x0bf3, 0x0bfa,
+	0x0c7f, 0x0c7f,
+	0x0cf1, 0x0cf2,
+	0x0d79, 0x0d79,
+	0x0e3f, 0x0e3f,
+	0x0f01, 0x0f03,
+	0x0f13, 0x0f17,
+	0x0f1a, 0x0f1f,
+	0x0f34, 0x0f34,
+	0x0f36, 0x0f36,
+	0x0f38, 0x0f38,
+	0x0fbe, 0x0fc5,
+	0x0fc7, 0x0fcc,
+	0x0fce, 0x0fcf,
+	0x109e, 0x109f,
+	0x1360, 0x1360,
+	0x1390, 0x1399,
+	0x17db, 0x17db,
+	0x1940, 0x1940,
+	0x19e0, 0x19ff,
+	0x1b61, 0x1b6a,
+	0x1b74, 0x1b7c,
+	0x1fbd, 0x1fbd,
+	0x1fbf, 0x1fc1,
+	0x1fcd, 0x1fcf,
+	0x1fdd, 0x1fdf,
+	0x1fed, 0x1fef,
+	0x1ffd, 0x1ffe,
+	0x2044, 0x2044,
+	0x2052, 0x2052,
+	0x207a, 0x207c,
+	0x208a, 0x208c,
+	0x20a0, 0x20b5,
+	0x2100, 0x2101,
+	0x2103, 0x2106,
+	0x2108, 0x2109,
+	0x2114, 0x2114,
+	0x2116, 0x2118,
+	0x211e, 0x2123,
+	0x2125, 0x2125,
+	0x2127, 0x2127,
+	0x2129, 0x2129,
+	0x212e, 0x212e,
+	0x213a, 0x213b,
+	0x2140, 0x2144,
+	0x214a, 0x214d,
+	0x214f, 0x214f,
+	0x2190, 0x2328,
+	0x232b, 0x23e7,
+	0x2400, 0x2426,
+	0x2440, 0x244a,
+	0x249c, 0x24e9,
+	0x2500, 0x269d,
+	0x26a0, 0x26bc,
+	0x26c0, 0x26c3,
+	0x2701, 0x2704,
+	0x2706, 0x2709,
+	0x270c, 0x2727,
+	0x2729, 0x274b,
+	0x274d, 0x274d,
+	0x274f, 0x2752,
+	0x2756, 0x2756,
+	0x2758, 0x275e,
+	0x2761, 0x2767,
+	0x2794, 0x2794,
+	0x2798, 0x27af,
+	0x27b1, 0x27be,
+	0x27c0, 0x27c4,
+	0x27c7, 0x27ca,
+	0x27cc, 0x27cc,
+	0x27d0, 0x27e5,
+	0x27f0, 0x2982,
+	0x2999, 0x29d7,
+	0x29dc, 0x29fb,
+	0x29fe, 0x2b4c,
+	0x2b50, 0x2b54,
+	0x2ce5, 0x2cea,
+	0x2e80, 0x2e99,
+	0x2e9b, 0x2ef3,
+	0x2f00, 0x2fd5,
+	0x2ff0, 0x2ffb,
+	0x3004, 0x3004,
+	0x3012, 0x3013,
+	0x3020, 0x3020,
+	0x3036, 0x3037,
+	0x303e, 0x303f,
+	0x309b, 0x309c,
+	0x3190, 0x3191,
+	0x3196, 0x319f,
+	0x31c0, 0x31e3,
+	0x3200, 0x321e,
+	0x322a, 0x3243,
+	0x3250, 0x3250,
+	0x3260, 0x327f,
+	0x328a, 0x32b0,
+	0x32c0, 0x32fe,
+	0x3300, 0x33ff,
+	0x4dc0, 0x4dff,
+	0xa490, 0xa4c6,
+	0xa700, 0xa716,
+	0xa720, 0xa721,
+	0xa789, 0xa78a,
+	0xa828, 0xa82b,
+	0xfb29, 0xfb29,
+	0xfdfc, 0xfdfd,
+	0xfe62, 0xfe62,
+	0xfe64, 0xfe66,
+	0xfe69, 0xfe69,
+	0xff04, 0xff04,
+	0xff0b, 0xff0b,
+	0xff1c, 0xff1e,
+	0xff3e, 0xff3e,
+	0xff40, 0xff40,
+	0xff5c, 0xff5c,
+	0xff5e, 0xff5e,
+	0xffe0, 0xffe6,
+	0xffe8, 0xffee,
+	0xfffc, 0xfffd,
+	0x10102, 0x10102,
+	0x10137, 0x1013f,
+	0x10179, 0x10189,
+	0x10190, 0x1019b,
+	0x101d0, 0x101fc,
+	0x1d000, 0x1d0f5,
+	0x1d100, 0x1d126,
+	0x1d129, 0x1d164,
+	0x1d16a, 0x1d16c,
+	0x1d183, 0x1d184,
+	0x1d18c, 0x1d1a9,
+	0x1d1ae, 0x1d1dd,
+	0x1d200, 0x1d241,
+	0x1d245, 0x1d245,
+	0x1d300, 0x1d356,
+	0x1d6c1, 0x1d6c1,
+	0x1d6db, 0x1d6db,
+	0x1d6fb, 0x1d6fb,
+	0x1d715, 0x1d715,
+	0x1d735, 0x1d735,
+	0x1d74f, 0x1d74f,
+	0x1d76f, 0x1d76f,
+	0x1d789, 0x1d789,
+	0x1d7a9, 0x1d7a9,
+	0x1d7c3, 0x1d7c3,
+	0x1f000, 0x1f02b,
+	0x1f030, 0x1f093,
+}; /* CR_S */
+
+/* 'Sc': General Category */
+static const OnigCodePoint CR_Sc[] = {
+	14,
+	0x0024, 0x0024,
+	0x00a2, 0x00a5,
+	0x060b, 0x060b,
+	0x09f2, 0x09f3,
+	0x0af1, 0x0af1,
+	0x0bf9, 0x0bf9,
+	0x0e3f, 0x0e3f,
+	0x17db, 0x17db,
+	0x20a0, 0x20b5,
+	0xfdfc, 0xfdfc,
+	0xfe69, 0xfe69,
+	0xff04, 0xff04,
+	0xffe0, 0xffe1,
+	0xffe5, 0xffe6,
+}; /* CR_Sc */
+
+/* 'Sk': General Category */
+static const OnigCodePoint CR_Sk[] = {
+	26,
+	0x005e, 0x005e,
+	0x0060, 0x0060,
+	0x00a8, 0x00a8,
+	0x00af, 0x00af,
+	0x00b4, 0x00b4,
+	0x00b8, 0x00b8,
+	0x02c2, 0x02c5,
+	0x02d2, 0x02df,
+	0x02e5, 0x02eb,
+	0x02ed, 0x02ed,
+	0x02ef, 0x02ff,
+	0x0375, 0x0375,
+	0x0384, 0x0385,
+	0x1fbd, 0x1fbd,
+	0x1fbf, 0x1fc1,
+	0x1fcd, 0x1fcf,
+	0x1fdd, 0x1fdf,
+	0x1fed, 0x1fef,
+	0x1ffd, 0x1ffe,
+	0x309b, 0x309c,
+	0xa700, 0xa716,
+	0xa720, 0xa721,
+	0xa789, 0xa78a,
+	0xff3e, 0xff3e,
+	0xff40, 0xff40,
+	0xffe3, 0xffe3,
+}; /* CR_Sk */
+
+/* 'Sm': General Category */
+static const OnigCodePoint CR_Sm[] = {
+	65,
+	0x002b, 0x002b,
+	0x003c, 0x003e,
+	0x007c, 0x007c,
+	0x007e, 0x007e,
+	0x00ac, 0x00ac,
+	0x00b1, 0x00b1,
+	0x00d7, 0x00d7,
+	0x00f7, 0x00f7,
+	0x03f6, 0x03f6,
+	0x0606, 0x0608,
+	0x2044, 0x2044,
+	0x2052, 0x2052,
+	0x207a, 0x207c,
+	0x208a, 0x208c,
+	0x2140, 0x2144,
+	0x214b, 0x214b,
+	0x2190, 0x2194,
+	0x219a, 0x219b,
+	0x21a0, 0x21a0,
+	0x21a3, 0x21a3,
+	0x21a6, 0x21a6,
+	0x21ae, 0x21ae,
+	0x21ce, 0x21cf,
+	0x21d2, 0x21d2,
+	0x21d4, 0x21d4,
+	0x21f4, 0x22ff,
+	0x2308, 0x230b,
+	0x2320, 0x2321,
+	0x237c, 0x237c,
+	0x239b, 0x23b3,
+	0x23dc, 0x23e1,
+	0x25b7, 0x25b7,
+	0x25c1, 0x25c1,
+	0x25f8, 0x25ff,
+	0x266f, 0x266f,
+	0x27c0, 0x27c4,
+	0x27c7, 0x27ca,
+	0x27cc, 0x27cc,
+	0x27d0, 0x27e5,
+	0x27f0, 0x27ff,
+	0x2900, 0x2982,
+	0x2999, 0x29d7,
+	0x29dc, 0x29fb,
+	0x29fe, 0x2aff,
+	0x2b30, 0x2b44,
+	0x2b47, 0x2b4c,
+	0xfb29, 0xfb29,
+	0xfe62, 0xfe62,
+	0xfe64, 0xfe66,
+	0xff0b, 0xff0b,
+	0xff1c, 0xff1e,
+	0xff5c, 0xff5c,
+	0xff5e, 0xff5e,
+	0xffe2, 0xffe2,
+	0xffe9, 0xffec,
+	0x1d6c1, 0x1d6c1,
+	0x1d6db, 0x1d6db,
+	0x1d6fb, 0x1d6fb,
+	0x1d715, 0x1d715,
+	0x1d735, 0x1d735,
+	0x1d74f, 0x1d74f,
+	0x1d76f, 0x1d76f,
+	0x1d789, 0x1d789,
+	0x1d7a9, 0x1d7a9,
+	0x1d7c3, 0x1d7c3,
+}; /* CR_Sm */
+
+/* 'So': General Category */
+static const OnigCodePoint CR_So[] = {
+	134,
+	0x00a6, 0x00a7,
+	0x00a9, 0x00a9,
+	0x00ae, 0x00ae,
+	0x00b0, 0x00b0,
+	0x00b6, 0x00b6,
+	0x0482, 0x0482,
+	0x060e, 0x060f,
+	0x06e9, 0x06e9,
+	0x06fd, 0x06fe,
+	0x07f6, 0x07f6,
+	0x09fa, 0x09fa,
+	0x0b70, 0x0b70,
+	0x0bf3, 0x0bf8,
+	0x0bfa, 0x0bfa,
+	0x0c7f, 0x0c7f,
+	0x0cf1, 0x0cf2,
+	0x0d79, 0x0d79,
+	0x0f01, 0x0f03,
+	0x0f13, 0x0f17,
+	0x0f1a, 0x0f1f,
+	0x0f34, 0x0f34,
+	0x0f36, 0x0f36,
+	0x0f38, 0x0f38,
+	0x0fbe, 0x0fc5,
+	0x0fc7, 0x0fcc,
+	0x0fce, 0x0fcf,
+	0x109e, 0x109f,
+	0x1360, 0x1360,
+	0x1390, 0x1399,
+	0x1940, 0x1940,
+	0x19e0, 0x19ff,
+	0x1b61, 0x1b6a,
+	0x1b74, 0x1b7c,
+	0x2100, 0x2101,
+	0x2103, 0x2106,
+	0x2108, 0x2109,
+	0x2114, 0x2114,
+	0x2116, 0x2118,
+	0x211e, 0x2123,
+	0x2125, 0x2125,
+	0x2127, 0x2127,
+	0x2129, 0x2129,
+	0x212e, 0x212e,
+	0x213a, 0x213b,
+	0x214a, 0x214a,
+	0x214c, 0x214d,
+	0x214f, 0x214f,
+	0x2195, 0x2199,
+	0x219c, 0x219f,
+	0x21a1, 0x21a2,
+	0x21a4, 0x21a5,
+	0x21a7, 0x21ad,
+	0x21af, 0x21cd,
+	0x21d0, 0x21d1,
+	0x21d3, 0x21d3,
+	0x21d5, 0x21f3,
+	0x2300, 0x2307,
+	0x230c, 0x231f,
+	0x2322, 0x2328,
+	0x232b, 0x237b,
+	0x237d, 0x239a,
+	0x23b4, 0x23db,
+	0x23e2, 0x23e7,
+	0x2400, 0x2426,
+	0x2440, 0x244a,
+	0x249c, 0x24e9,
+	0x2500, 0x25b6,
+	0x25b8, 0x25c0,
+	0x25c2, 0x25f7,
+	0x2600, 0x266e,
+	0x2670, 0x269d,
+	0x26a0, 0x26bc,
+	0x26c0, 0x26c3,
+	0x2701, 0x2704,
+	0x2706, 0x2709,
+	0x270c, 0x2727,
+	0x2729, 0x274b,
+	0x274d, 0x274d,
+	0x274f, 0x2752,
+	0x2756, 0x2756,
+	0x2758, 0x275e,
+	0x2761, 0x2767,
+	0x2794, 0x2794,
+	0x2798, 0x27af,
+	0x27b1, 0x27be,
+	0x2800, 0x28ff,
+	0x2b00, 0x2b2f,
+	0x2b45, 0x2b46,
+	0x2b50, 0x2b54,
+	0x2ce5, 0x2cea,
+	0x2e80, 0x2e99,
+	0x2e9b, 0x2ef3,
+	0x2f00, 0x2fd5,
+	0x2ff0, 0x2ffb,
+	0x3004, 0x3004,
+	0x3012, 0x3013,
+	0x3020, 0x3020,
+	0x3036, 0x3037,
+	0x303e, 0x303f,
+	0x3190, 0x3191,
+	0x3196, 0x319f,
+	0x31c0, 0x31e3,
+	0x3200, 0x321e,
+	0x322a, 0x3243,
+	0x3250, 0x3250,
+	0x3260, 0x327f,
+	0x328a, 0x32b0,
+	0x32c0, 0x32fe,
+	0x3300, 0x33ff,
+	0x4dc0, 0x4dff,
+	0xa490, 0xa4c6,
+	0xa828, 0xa82b,
+	0xfdfd, 0xfdfd,
+	0xffe4, 0xffe4,
+	0xffe8, 0xffe8,
+	0xffed, 0xffee,
+	0xfffc, 0xfffd,
+	0x10102, 0x10102,
+	0x10137, 0x1013f,
+	0x10179, 0x10189,
+	0x10190, 0x1019b,
+	0x101d0, 0x101fc,
+	0x1d000, 0x1d0f5,
+	0x1d100, 0x1d126,
+	0x1d129, 0x1d164,
+	0x1d16a, 0x1d16c,
+	0x1d183, 0x1d184,
+	0x1d18c, 0x1d1a9,
+	0x1d1ae, 0x1d1dd,
+	0x1d200, 0x1d241,
+	0x1d245, 0x1d245,
+	0x1d300, 0x1d356,
+	0x1f000, 0x1f02b,
+	0x1f030, 0x1f093,
+}; /* CR_So */
+
+/* 'Z': Major Category */
+static const OnigCodePoint CR_Z[] = {
+	9,
+	0x0020, 0x0020,
+	0x00a0, 0x00a0,
+	0x1680, 0x1680,
+	0x180e, 0x180e,
+	0x2000, 0x200a,
+	0x2028, 0x2029,
+	0x202f, 0x202f,
+	0x205f, 0x205f,
+	0x3000, 0x3000,
+}; /* CR_Z */
+
+/* 'Zl': General Category */
+static const OnigCodePoint CR_Zl[] = {
+	1,
+	0x2028, 0x2028,
+}; /* CR_Zl */
+
+/* 'Zp': General Category */
+static const OnigCodePoint CR_Zp[] = {
+	1,
+	0x2029, 0x2029,
+}; /* CR_Zp */
+
+/* 'Zs': General Category */
+static const OnigCodePoint CR_Zs[] = {
+	8,
+	0x0020, 0x0020,
+	0x00a0, 0x00a0,
+	0x1680, 0x1680,
+	0x180e, 0x180e,
+	0x2000, 0x200a,
+	0x202f, 0x202f,
+	0x205f, 0x205f,
+	0x3000, 0x3000,
+}; /* CR_Zs */
+
+/* 'Common': Script */
+static const OnigCodePoint CR_Common[] = {
+	137,
+	0x0000, 0x0040,
+	0x005b, 0x0060,
+	0x007b, 0x00a9,
+	0x00ab, 0x00b9,
+	0x00bb, 0x00bf,
+	0x00d7, 0x00d7,
+	0x00f7, 0x00f7,
+	0x02b9, 0x02df,
+	0x02e5, 0x02ff,
+	0x0374, 0x0374,
+	0x037e, 0x037e,
+	0x0385, 0x0385,
+	0x0387, 0x0387,
+	0x0589, 0x0589,
+	0x0600, 0x0603,
+	0x060c, 0x060c,
+	0x061b, 0x061b,
+	0x061f, 0x061f,
+	0x0640, 0x0640,
+	0x0660, 0x0669,
+	0x06dd, 0x06dd,
+	0x0964, 0x0965,
+	0x0970, 0x0970,
+	0x0cf1, 0x0cf2,
+	0x0e3f, 0x0e3f,
+	0x10fb, 0x10fb,
+	0x16eb, 0x16ed,
+	0x1735, 0x1736,
+	0x1802, 0x1803,
+	0x1805, 0x1805,
+	0x2000, 0x200b,
+	0x200e, 0x2064,
+	0x206a, 0x2070,
+	0x2074, 0x207e,
+	0x2080, 0x208e,
+	0x20a0, 0x20b5,
+	0x2100, 0x2125,
+	0x2127, 0x2129,
+	0x212c, 0x2131,
+	0x2133, 0x214d,
+	0x214f, 0x214f,
+	0x2153, 0x215f,
+	0x2190, 0x23e7,
+	0x2400, 0x2426,
+	0x2440, 0x244a,
+	0x2460, 0x269d,
+	0x26a0, 0x26bc,
+	0x26c0, 0x26c3,
+	0x2701, 0x2704,
+	0x2706, 0x2709,
+	0x270c, 0x2727,
+	0x2729, 0x274b,
+	0x274d, 0x274d,
+	0x274f, 0x2752,
+	0x2756, 0x2756,
+	0x2758, 0x275e,
+	0x2761, 0x2794,
+	0x2798, 0x27af,
+	0x27b1, 0x27be,
+	0x27c0, 0x27ca,
+	0x27cc, 0x27cc,
+	0x27d0, 0x27ff,
+	0x2900, 0x2b4c,
+	0x2b50, 0x2b54,
+	0x2e00, 0x2e30,
+	0x2ff0, 0x2ffb,
+	0x3000, 0x3004,
+	0x3006, 0x3006,
+	0x3008, 0x3020,
+	0x3030, 0x3037,
+	0x303c, 0x303f,
+	0x309b, 0x309c,
+	0x30a0, 0x30a0,
+	0x30fb, 0x30fc,
+	0x3190, 0x319f,
+	0x31c0, 0x31e3,
+	0x3220, 0x3243,
+	0x3250, 0x325f,
+	0x327f, 0x32cf,
+	0x3358, 0x33ff,
+	0x4dc0, 0x4dff,
+	0xa700, 0xa721,
+	0xa788, 0xa78a,
+	0xfd3e, 0xfd3f,
+	0xfdfd, 0xfdfd,
+	0xfe10, 0xfe19,
+	0xfe30, 0xfe52,
+	0xfe54, 0xfe66,
+	0xfe68, 0xfe6b,
+	0xfeff, 0xfeff,
+	0xff01, 0xff20,
+	0xff3b, 0xff40,
+	0xff5b, 0xff65,
+	0xff70, 0xff70,
+	0xff9e, 0xff9f,
+	0xffe0, 0xffe6,
+	0xffe8, 0xffee,
+	0xfff9, 0xfffd,
+	0x10100, 0x10102,
+	0x10107, 0x10133,
+	0x10137, 0x1013f,
+	0x10190, 0x1019b,
+	0x101d0, 0x101fc,
+	0x1d000, 0x1d0f5,
+	0x1d100, 0x1d126,
+	0x1d129, 0x1d166,
+	0x1d16a, 0x1d17a,
+	0x1d183, 0x1d184,
+	0x1d18c, 0x1d1a9,
+	0x1d1ae, 0x1d1dd,
+	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,
+	0xe0001, 0xe0001,
+	0xe0020, 0xe007f,
+}; /* CR_Common */
+
+/* 'Latin': Script */
+static const OnigCodePoint CR_Latin[] = {
+	29,
+	0x0041, 0x005a,
+	0x0061, 0x007a,
+	0x00aa, 0x00aa,
+	0x00ba, 0x00ba,
+	0x00c0, 0x00d6,
+	0x00d8, 0x00f6,
+	0x00f8, 0x02b8,
+	0x02e0, 0x02e4,
+	0x1d00, 0x1d25,
+	0x1d2c, 0x1d5c,
+	0x1d62, 0x1d65,
+	0x1d6b, 0x1d77,
+	0x1d79, 0x1dbe,
+	0x1e00, 0x1eff,
+	0x2071, 0x2071,
+	0x207f, 0x207f,
+	0x2090, 0x2094,
+	0x212a, 0x212b,
+	0x2132, 0x2132,
+	0x214e, 0x214e,
+	0x2160, 0x2188,
+	0x2c60, 0x2c6f,
+	0x2c71, 0x2c7d,
+	0xa722, 0xa787,
+	0xa78b, 0xa78c,
+	0xa7fb, 0xa7ff,
+	0xfb00, 0xfb06,
+	0xff21, 0xff3a,
+	0xff41, 0xff5a,
+}; /* CR_Latin */
+
+/* 'Greek': Script */
+static const OnigCodePoint CR_Greek[] = {
+	33,
+	0x0370, 0x0373,
+	0x0375, 0x0377,
+	0x037a, 0x037d,
+	0x0384, 0x0384,
+	0x0386, 0x0386,
+	0x0388, 0x038a,
+	0x038c, 0x038c,
+	0x038e, 0x03a1,
+	0x03a3, 0x03e1,
+	0x03f0, 0x03ff,
+	0x1d26, 0x1d2a,
+	0x1d5d, 0x1d61,
+	0x1d66, 0x1d6a,
+	0x1dbf, 0x1dbf,
+	0x1f00, 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,
+	0x2126, 0x2126,
+	0x10140, 0x1018a,
+	0x1d200, 0x1d245,
+}; /* CR_Greek */
+
+/* 'Cyrillic': Script */
+static const OnigCodePoint CR_Cyrillic[] = {
+	7,
+	0x0400, 0x0523,
+	0x1d2b, 0x1d2b,
+	0x1d78, 0x1d78,
+	0x2de0, 0x2dff,
+	0xa640, 0xa65f,
+	0xa662, 0xa673,
+	0xa67c, 0xa697,
+}; /* CR_Cyrillic */
+
+/* 'Armenian': Script */
+static const OnigCodePoint CR_Armenian[] = {
+	5,
+	0x0531, 0x0556,
+	0x0559, 0x055f,
+	0x0561, 0x0587,
+	0x058a, 0x058a,
+	0xfb13, 0xfb17,
+}; /* CR_Armenian */
+
+/* 'Hebrew': Script */
+static const OnigCodePoint CR_Hebrew[] = {
+	9,
+	0x0591, 0x05c7,
+	0x05d0, 0x05ea,
+	0x05f0, 0x05f4,
+	0xfb1d, 0xfb36,
+	0xfb38, 0xfb3c,
+	0xfb3e, 0xfb3e,
+	0xfb40, 0xfb41,
+	0xfb43, 0xfb44,
+	0xfb46, 0xfb4f,
+}; /* CR_Hebrew */
+
+/* 'Arabic': Script */
+static const OnigCodePoint CR_Arabic[] = {
+	17,
+	0x0606, 0x060b,
+	0x060d, 0x061a,
+	0x061e, 0x061e,
+	0x0621, 0x063f,
+	0x0641, 0x064a,
+	0x0656, 0x065e,
+	0x066a, 0x066f,
+	0x0671, 0x06dc,
+	0x06de, 0x06ff,
+	0x0750, 0x077f,
+	0xfb50, 0xfbb1,
+	0xfbd3, 0xfd3d,
+	0xfd50, 0xfd8f,
+	0xfd92, 0xfdc7,
+	0xfdf0, 0xfdfc,
+	0xfe70, 0xfe74,
+	0xfe76, 0xfefc,
+}; /* CR_Arabic */
+
+/* 'Syriac': Script */
+static const OnigCodePoint CR_Syriac[] = {
+	3,
+	0x0700, 0x070d,
+	0x070f, 0x074a,
+	0x074d, 0x074f,
+}; /* CR_Syriac */
+
+/* 'Thaana': Script */
+static const OnigCodePoint CR_Thaana[] = {
+	1,
+	0x0780, 0x07b1,
+}; /* CR_Thaana */
+
+/* 'Devanagari': Script */
+static const OnigCodePoint CR_Devanagari[] = {
+	8,
+	0x0901, 0x0939,
+	0x093c, 0x094d,
+	0x0950, 0x0950,
+	0x0953, 0x0954,
+	0x0958, 0x0963,
+	0x0966, 0x096f,
+	0x0971, 0x0972,
+	0x097b, 0x097f,
+}; /* CR_Devanagari */
+
+/* 'Bengali': Script */
+static const OnigCodePoint CR_Bengali[] = {
+	14,
+	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, 0x09fa,
+}; /* CR_Bengali */
+
+/* 'Gurmukhi': Script */
+static const OnigCodePoint CR_Gurmukhi[] = {
+	16,
+	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,
+}; /* CR_Gurmukhi */
+
+/* 'Gujarati': Script */
+static const OnigCodePoint CR_Gujarati[] = {
+	14,
+	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,
+	0x0af1, 0x0af1,
+}; /* CR_Gujarati */
+
+/* 'Oriya': Script */
+static const OnigCodePoint CR_Oriya[] = {
+	14,
+	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, 0x0b71,
+}; /* CR_Oriya */
+
+/* 'Tamil': Script */
+static const OnigCodePoint CR_Tamil[] = {
+	16,
+	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, 0x0bfa,
+}; /* CR_Tamil */
+
+/* 'Telugu': Script */
+static const OnigCodePoint CR_Telugu[] = {
+	14,
+	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,
+	0x0c78, 0x0c7f,
+}; /* CR_Telugu */
+
+/* 'Kannada': Script */
+static const OnigCodePoint CR_Kannada[] = {
+	13,
+	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,
+}; /* CR_Kannada */
+
+/* 'Malayalam': Script */
+static const OnigCodePoint CR_Malayalam[] = {
+	12,
+	0x0d02, 0x0d03,
+	0x0d05, 0x0d0c,
+	0x0d0e, 0x0d10,
+	0x0d12, 0x0d28,
+	0x0d2a, 0x0d39,
+	0x0d3d, 0x0d44,
+	0x0d46, 0x0d48,
+	0x0d4a, 0x0d4d,
+	0x0d57, 0x0d57,
+	0x0d60, 0x0d63,
+	0x0d66, 0x0d75,
+	0x0d79, 0x0d7f,
+}; /* CR_Malayalam */
+
+/* 'Sinhala': Script */
+static const OnigCodePoint CR_Sinhala[] = {
+	11,
+	0x0d82, 0x0d83,
+	0x0d85, 0x0d96,
+	0x0d9a, 0x0db1,
+	0x0db3, 0x0dbb,
+	0x0dbd, 0x0dbd,
+	0x0dc0, 0x0dc6,
+	0x0dca, 0x0dca,
+	0x0dcf, 0x0dd4,
+	0x0dd6, 0x0dd6,
+	0x0dd8, 0x0ddf,
+	0x0df2, 0x0df4,
+}; /* CR_Sinhala */
+
+/* 'Thai': Script */
+static const OnigCodePoint CR_Thai[] = {
+	2,
+	0x0e01, 0x0e3a,
+	0x0e40, 0x0e5b,
+}; /* CR_Thai */
+
+/* 'Lao': Script */
+static const OnigCodePoint CR_Lao[] = {
+	18,
+	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,
+}; /* CR_Lao */
+
+/* 'Tibetan': Script */
+static const OnigCodePoint CR_Tibetan[] = {
+	7,
+	0x0f00, 0x0f47,
+	0x0f49, 0x0f6c,
+	0x0f71, 0x0f8b,
+	0x0f90, 0x0f97,
+	0x0f99, 0x0fbc,
+	0x0fbe, 0x0fcc,
+	0x0fce, 0x0fd4,
+}; /* CR_Tibetan */
+
+/* 'Myanmar': Script */
+static const OnigCodePoint CR_Myanmar[] = {
+	2,
+	0x1000, 0x1099,
+	0x109e, 0x109f,
+}; /* CR_Myanmar */
+
+/* 'Georgian': Script */
+static const OnigCodePoint CR_Georgian[] = {
+	4,
+	0x10a0, 0x10c5,
+	0x10d0, 0x10fa,
+	0x10fc, 0x10fc,
+	0x2d00, 0x2d25,
+}; /* CR_Georgian */
+
+/* 'Hangul': Script */
+static const OnigCodePoint CR_Hangul[] = {
+	12,
+	0x1100, 0x1159,
+	0x115f, 0x11a2,
+	0x11a8, 0x11f9,
+	0x3131, 0x318e,
+	0x3200, 0x321e,
+	0x3260, 0x327e,
+	0xac00, 0xd7a3,
+	0xffa0, 0xffbe,
+	0xffc2, 0xffc7,
+	0xffca, 0xffcf,
+	0xffd2, 0xffd7,
+	0xffda, 0xffdc,
+}; /* CR_Hangul */
+
+/* 'Ethiopic': Script */
+static const OnigCodePoint CR_Ethiopic[] = {
+	27,
+	0x1200, 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, 0x137c,
+	0x1380, 0x1399,
+	0x2d80, 0x2d96,
+	0x2da0, 0x2da6,
+	0x2da8, 0x2dae,
+	0x2db0, 0x2db6,
+	0x2db8, 0x2dbe,
+	0x2dc0, 0x2dc6,
+	0x2dc8, 0x2dce,
+	0x2dd0, 0x2dd6,
+	0x2dd8, 0x2dde,
+}; /* CR_Ethiopic */
+
+/* 'Cherokee': Script */
+static const OnigCodePoint CR_Cherokee[] = {
+	1,
+	0x13a0, 0x13f4,
+}; /* CR_Cherokee */
+
+/* 'Canadian_Aboriginal': Script */
+static const OnigCodePoint CR_Canadian_Aboriginal[] = {
+	1,
+	0x1401, 0x1676,
+}; /* CR_Canadian_Aboriginal */
+
+/* 'Ogham': Script */
+static const OnigCodePoint CR_Ogham[] = {
+	1,
+	0x1680, 0x169c,
+}; /* CR_Ogham */
+
+/* 'Runic': Script */
+static const OnigCodePoint CR_Runic[] = {
+	2,
+	0x16a0, 0x16ea,
+	0x16ee, 0x16f0,
+}; /* CR_Runic */
+
+/* 'Khmer': Script */
+static const OnigCodePoint CR_Khmer[] = {
+	4,
+	0x1780, 0x17dd,
+	0x17e0, 0x17e9,
+	0x17f0, 0x17f9,
+	0x19e0, 0x19ff,
+}; /* CR_Khmer */
+
+/* 'Mongolian': Script */
+static const OnigCodePoint CR_Mongolian[] = {
+	6,
+	0x1800, 0x1801,
+	0x1804, 0x1804,
+	0x1806, 0x180e,
+	0x1810, 0x1819,
+	0x1820, 0x1877,
+	0x1880, 0x18aa,
+}; /* CR_Mongolian */
+
+/* 'Hiragana': Script */
+static const OnigCodePoint CR_Hiragana[] = {
+	2,
+	0x3041, 0x3096,
+	0x309d, 0x309f,
+}; /* CR_Hiragana */
+
+/* 'Katakana': Script */
+static const OnigCodePoint CR_Katakana[] = {
+	7,
+	0x30a1, 0x30fa,
+	0x30fd, 0x30ff,
+	0x31f0, 0x31ff,
+	0x32d0, 0x32fe,
+	0x3300, 0x3357,
+	0xff66, 0xff6f,
+	0xff71, 0xff9d,
+}; /* CR_Katakana */
+
+/* 'Bopomofo': Script */
+static const OnigCodePoint CR_Bopomofo[] = {
+	2,
+	0x3105, 0x312d,
+	0x31a0, 0x31b7,
+}; /* CR_Bopomofo */
+
+/* 'Han': Script */
+static const OnigCodePoint CR_Han[] = {
+	14,
+	0x2e80, 0x2e99,
+	0x2e9b, 0x2ef3,
+	0x2f00, 0x2fd5,
+	0x3005, 0x3005,
+	0x3007, 0x3007,
+	0x3021, 0x3029,
+	0x3038, 0x303b,
+	0x3400, 0x4db5,
+	0x4e00, 0x9fc3,
+	0xf900, 0xfa2d,
+	0xfa30, 0xfa6a,
+	0xfa70, 0xfad9,
+	0x20000, 0x2a6d6,
+	0x2f800, 0x2fa1d,
+}; /* CR_Han */
+
+/* 'Yi': Script */
+static const OnigCodePoint CR_Yi[] = {
+	2,
+	0xa000, 0xa48c,
+	0xa490, 0xa4c6,
+}; /* CR_Yi */
+
+/* 'Old_Italic': Script */
+static const OnigCodePoint CR_Old_Italic[] = {
+	2,
+	0x10300, 0x1031e,
+	0x10320, 0x10323,
+}; /* CR_Old_Italic */
+
+/* 'Gothic': Script */
+static const OnigCodePoint CR_Gothic[] = {
+	1,
+	0x10330, 0x1034a,
+}; /* CR_Gothic */
+
+/* 'Deseret': Script */
+static const OnigCodePoint CR_Deseret[] = {
+	1,
+	0x10400, 0x1044f,
+}; /* CR_Deseret */
+
+/* 'Inherited': Script */
+static const OnigCodePoint CR_Inherited[] = {
+	18,
+	0x0300, 0x036f,
+	0x064b, 0x0655,
+	0x0670, 0x0670,
+	0x0951, 0x0952,
+	0x1dc0, 0x1de6,
+	0x1dfe, 0x1dff,
+	0x200c, 0x200d,
+	0x20d0, 0x20f0,
+	0x302a, 0x302f,
+	0x3099, 0x309a,
+	0xfe00, 0xfe0f,
+	0xfe20, 0xfe26,
+	0x101fd, 0x101fd,
+	0x1d167, 0x1d169,
+	0x1d17b, 0x1d182,
+	0x1d185, 0x1d18b,
+	0x1d1aa, 0x1d1ad,
+	0xe0100, 0xe01ef,
+}; /* CR_Inherited */
+
+/* 'Tagalog': Script */
+static const OnigCodePoint CR_Tagalog[] = {
+	2,
+	0x1700, 0x170c,
+	0x170e, 0x1714,
+}; /* CR_Tagalog */
+
+/* 'Hanunoo': Script */
+static const OnigCodePoint CR_Hanunoo[] = {
+	1,
+	0x1720, 0x1734,
+}; /* CR_Hanunoo */
+
+/* 'Buhid': Script */
+static const OnigCodePoint CR_Buhid[] = {
+	1,
+	0x1740, 0x1753,
+}; /* CR_Buhid */
+
+/* 'Tagbanwa': Script */
+static const OnigCodePoint CR_Tagbanwa[] = {
+	3,
+	0x1760, 0x176c,
+	0x176e, 0x1770,
+	0x1772, 0x1773,
+}; /* CR_Tagbanwa */
+
+/* 'Limbu': Script */
+static const OnigCodePoint CR_Limbu[] = {
+	5,
+	0x1900, 0x191c,
+	0x1920, 0x192b,
+	0x1930, 0x193b,
+	0x1940, 0x1940,
+	0x1944, 0x194f,
+}; /* CR_Limbu */
+
+/* 'Tai_Le': Script */
+static const OnigCodePoint CR_Tai_Le[] = {
+	2,
+	0x1950, 0x196d,
+	0x1970, 0x1974,
+}; /* CR_Tai_Le */
+
+/* 'Linear_B': Script */
+static const OnigCodePoint CR_Linear_B[] = {
+	7,
+	0x10000, 0x1000b,
+	0x1000d, 0x10026,
+	0x10028, 0x1003a,
+	0x1003c, 0x1003d,
+	0x1003f, 0x1004d,
+	0x10050, 0x1005d,
+	0x10080, 0x100fa,
+}; /* CR_Linear_B */
+
+/* 'Ugaritic': Script */
+static const OnigCodePoint CR_Ugaritic[] = {
+	2,
+	0x10380, 0x1039d,
+	0x1039f, 0x1039f,
+}; /* CR_Ugaritic */
+
+/* 'Shavian': Script */
+static const OnigCodePoint CR_Shavian[] = {
+	1,
+	0x10450, 0x1047f,
+}; /* CR_Shavian */
+
+/* 'Osmanya': Script */
+static const OnigCodePoint CR_Osmanya[] = {
+	2,
+	0x10480, 0x1049d,
+	0x104a0, 0x104a9,
+}; /* CR_Osmanya */
+
+/* 'Cypriot': Script */
+static const OnigCodePoint CR_Cypriot[] = {
+	6,
+	0x10800, 0x10805,
+	0x10808, 0x10808,
+	0x1080a, 0x10835,
+	0x10837, 0x10838,
+	0x1083c, 0x1083c,
+	0x1083f, 0x1083f,
+}; /* CR_Cypriot */
+
+/* 'Braille': Script */
+static const OnigCodePoint CR_Braille[] = {
+	1,
+	0x2800, 0x28ff,
+}; /* CR_Braille */
+
+/* 'Buginese': Script */
+static const OnigCodePoint CR_Buginese[] = {
+	2,
+	0x1a00, 0x1a1b,
+	0x1a1e, 0x1a1f,
+}; /* CR_Buginese */
+
+/* 'Coptic': Script */
+static const OnigCodePoint CR_Coptic[] = {
+	3,
+	0x03e2, 0x03ef,
+	0x2c80, 0x2cea,
+	0x2cf9, 0x2cff,
+}; /* CR_Coptic */
+
+/* 'New_Tai_Lue': Script */
+static const OnigCodePoint CR_New_Tai_Lue[] = {
+	4,
+	0x1980, 0x19a9,
+	0x19b0, 0x19c9,
+	0x19d0, 0x19d9,
+	0x19de, 0x19df,
+}; /* CR_New_Tai_Lue */
+
+/* 'Glagolitic': Script */
+static const OnigCodePoint CR_Glagolitic[] = {
+	2,
+	0x2c00, 0x2c2e,
+	0x2c30, 0x2c5e,
+}; /* CR_Glagolitic */
+
+/* 'Tifinagh': Script */
+static const OnigCodePoint CR_Tifinagh[] = {
+	2,
+	0x2d30, 0x2d65,
+	0x2d6f, 0x2d6f,
+}; /* CR_Tifinagh */
+
+/* 'Syloti_Nagri': Script */
+static const OnigCodePoint CR_Syloti_Nagri[] = {
+	1,
+	0xa800, 0xa82b,
+}; /* CR_Syloti_Nagri */
+
+/* 'Old_Persian': Script */
+static const OnigCodePoint CR_Old_Persian[] = {
+	2,
+	0x103a0, 0x103c3,
+	0x103c8, 0x103d5,
+}; /* CR_Old_Persian */
+
+/* 'Kharoshthi': Script */
+static const OnigCodePoint CR_Kharoshthi[] = {
+	8,
+	0x10a00, 0x10a03,
+	0x10a05, 0x10a06,
+	0x10a0c, 0x10a13,
+	0x10a15, 0x10a17,
+	0x10a19, 0x10a33,
+	0x10a38, 0x10a3a,
+	0x10a3f, 0x10a47,
+	0x10a50, 0x10a58,
+}; /* CR_Kharoshthi */
+
+/* 'Balinese': Script */
+static const OnigCodePoint CR_Balinese[] = {
+	2,
+	0x1b00, 0x1b4b,
+	0x1b50, 0x1b7c,
+}; /* CR_Balinese */
+
+/* 'Cuneiform': Script */
+static const OnigCodePoint CR_Cuneiform[] = {
+	3,
+	0x12000, 0x1236e,
+	0x12400, 0x12462,
+	0x12470, 0x12473,
+}; /* CR_Cuneiform */
+
+/* 'Phoenician': Script */
+static const OnigCodePoint CR_Phoenician[] = {
+	2,
+	0x10900, 0x10919,
+	0x1091f, 0x1091f,
+}; /* CR_Phoenician */
+
+/* 'Phags_Pa': Script */
+static const OnigCodePoint CR_Phags_Pa[] = {
+	1,
+	0xa840, 0xa877,
+}; /* CR_Phags_Pa */
+
+/* 'Nko': Script */
+static const OnigCodePoint CR_Nko[] = {
+	1,
+	0x07c0, 0x07fa,
+}; /* CR_Nko */
+
+/* 'Sundanese': Script */
+static const OnigCodePoint CR_Sundanese[] = {
+	2,
+	0x1b80, 0x1baa,
+	0x1bae, 0x1bb9,
+}; /* CR_Sundanese */
+
+/* 'Lepcha': Script */
+static const OnigCodePoint CR_Lepcha[] = {
+	3,
+	0x1c00, 0x1c37,
+	0x1c3b, 0x1c49,
+	0x1c4d, 0x1c4f,
+}; /* CR_Lepcha */
+
+/* 'Ol_Chiki': Script */
+static const OnigCodePoint CR_Ol_Chiki[] = {
+	1,
+	0x1c50, 0x1c7f,
+}; /* CR_Ol_Chiki */
+
+/* 'Vai': Script */
+static const OnigCodePoint CR_Vai[] = {
+	1,
+	0xa500, 0xa62b,
+}; /* CR_Vai */
+
+/* 'Saurashtra': Script */
+static const OnigCodePoint CR_Saurashtra[] = {
+	2,
+	0xa880, 0xa8c4,
+	0xa8ce, 0xa8d9,
+}; /* CR_Saurashtra */
+
+/* 'Kayah_Li': Script */
+static const OnigCodePoint CR_Kayah_Li[] = {
+	1,
+	0xa900, 0xa92f,
+}; /* CR_Kayah_Li */
+
+/* 'Rejang': Script */
+static const OnigCodePoint CR_Rejang[] = {
+	2,
+	0xa930, 0xa953,
+	0xa95f, 0xa95f,
+}; /* CR_Rejang */
+
+/* 'Lycian': Script */
+static const OnigCodePoint CR_Lycian[] = {
+	1,
+	0x10280, 0x1029c,
+}; /* CR_Lycian */
+
+/* 'Carian': Script */
+static const OnigCodePoint CR_Carian[] = {
+	1,
+	0x102a0, 0x102d0,
+}; /* CR_Carian */
+
+/* 'Lydian': Script */
+static const OnigCodePoint CR_Lydian[] = {
+	2,
+	0x10920, 0x10939,
+	0x1093f, 0x1093f,
+}; /* CR_Lydian */
+
+/* 'Cham': Script */
+static const OnigCodePoint CR_Cham[] = {
+	4,
+	0xaa00, 0xaa36,
+	0xaa40, 0xaa4d,
+	0xaa50, 0xaa59,
+	0xaa5c, 0xaa5f,
+}; /* CR_Cham */
+#endif /* USE_UNICODE_PROPERTIES */
+#endif /* USE_UNICODE_PROPERTIES */
+
+
+static const OnigCodePoint* const CodeRanges[] = {
+  CR_NEWLINE,
+  CR_Alpha,
+  CR_Blank,
+  CR_Cntrl,
+  CR_Digit,
+  CR_Graph,
+  CR_Lower,
+  CR_Print,
+  CR_Punct,
+  CR_Space,
+  CR_Upper,
+  CR_XDigit,
+  CR_Word,
+  CR_Alnum,
+  CR_ASCII,
+#ifdef USE_UNICODE_PROPERTIES
+#ifdef USE_UNICODE_PROPERTIES
+  CR_Any,
+  CR_Assigned,
+  CR_C,
+  CR_Cc,
+  CR_Cf,
+  CR_Cn,
+  CR_Co,
+  CR_Cs,
+  CR_L,
+  CR_Ll,
+  CR_Lm,
+  CR_Lo,
+  CR_Lt,
+  CR_Lu,
+  CR_M,
+  CR_Mc,
+  CR_Me,
+  CR_Mn,
+  CR_N,
+  CR_Nd,
+  CR_Nl,
+  CR_No,
+  CR_P,
+  CR_Pc,
+  CR_Pd,
+  CR_Pe,
+  CR_Pf,
+  CR_Pi,
+  CR_Po,
+  CR_Ps,
+  CR_S,
+  CR_Sc,
+  CR_Sk,
+  CR_Sm,
+  CR_So,
+  CR_Z,
+  CR_Zl,
+  CR_Zp,
+  CR_Zs,
+  CR_Common,
+  CR_Latin,
+  CR_Greek,
+  CR_Cyrillic,
+  CR_Armenian,
+  CR_Hebrew,
+  CR_Arabic,
+  CR_Syriac,
+  CR_Thaana,
+  CR_Devanagari,
+  CR_Bengali,
+  CR_Gurmukhi,
+  CR_Gujarati,
+  CR_Oriya,
+  CR_Tamil,
+  CR_Telugu,
+  CR_Kannada,
+  CR_Malayalam,
+  CR_Sinhala,
+  CR_Thai,
+  CR_Lao,
+  CR_Tibetan,
+  CR_Myanmar,
+  CR_Georgian,
+  CR_Hangul,
+  CR_Ethiopic,
+  CR_Cherokee,
+  CR_Canadian_Aboriginal,
+  CR_Ogham,
+  CR_Runic,
+  CR_Khmer,
+  CR_Mongolian,
+  CR_Hiragana,
+  CR_Katakana,
+  CR_Bopomofo,
+  CR_Han,
+  CR_Yi,
+  CR_Old_Italic,
+  CR_Gothic,
+  CR_Deseret,
+  CR_Inherited,
+  CR_Tagalog,
+  CR_Hanunoo,
+  CR_Buhid,
+  CR_Tagbanwa,
+  CR_Limbu,
+  CR_Tai_Le,
+  CR_Linear_B,
+  CR_Ugaritic,
+  CR_Shavian,
+  CR_Osmanya,
+  CR_Cypriot,
+  CR_Braille,
+  CR_Buginese,
+  CR_Coptic,
+  CR_New_Tai_Lue,
+  CR_Glagolitic,
+  CR_Tifinagh,
+  CR_Syloti_Nagri,
+  CR_Old_Persian,
+  CR_Kharoshthi,
+  CR_Balinese,
+  CR_Cuneiform,
+  CR_Phoenician,
+  CR_Phags_Pa,
+  CR_Nko,
+  CR_Sundanese,
+  CR_Lepcha,
+  CR_Ol_Chiki,
+  CR_Vai,
+  CR_Saurashtra,
+  CR_Kayah_Li,
+  CR_Rejang,
+  CR_Lycian,
+  CR_Carian,
+  CR_Lydian,
+  CR_Cham,
+#endif /* USE_UNICODE_PROPERTIES */
+#endif /* USE_UNICODE_PROPERTIES */
+};
 struct uniname2ctype_struct {
   int name, ctype;
 };
@@ -48,12 +9375,12 @@
 #define MAX_HASH_VALUE 20
 /* maximum key range = 15, duplicates = 0 */
 #else /* USE_UNICODE_PROPERTIES */
-#define TOTAL_KEYWORDS 115
+#define TOTAL_KEYWORDS 131
 #define MIN_WORD_LENGTH 1
 #define MAX_WORD_LENGTH 19
-#define MIN_HASH_VALUE 3
-#define MAX_HASH_VALUE 138
-/* maximum key range = 136, duplicates = 0 */
+#define MIN_HASH_VALUE 2
+#define MAX_HASH_VALUE 167
+/* maximum key range = 166, duplicates = 0 */
 #endif /* USE_UNICODE_PROPERTIES */
 
 #ifdef __GNUC__
@@ -85,19 +9412,19 @@
        2, 21,  1, 21,  1, 21,  2, 21, 21,  6,
       21, 21, 21, 21, 21, 21, 21, 21
 #else /* USE_UNICODE_PROPERTIES */
-      139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
-      139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
-      139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
-      139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
-      139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
-      139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
-      139, 139, 139, 139, 139,  31,   4,   2,  80,  31,
-      139,  40,  45,  26, 139,  49,  14,  12,  33,  12,
-        1, 139,  74,   3,   3,  74, 139,  55,  74,  39,
-       49, 139, 139, 139, 139, 139, 139,  20, 139,   8,
-       51,  20,  65,  41,  34,  11,  42,  28,  45,  33,
-        2,   5,  25,  66,  14,  81,   1,  48,  29,   3,
-        2,  44, 139,  22, 139, 139, 139, 139, 139, 139
+      168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
+      168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
+      168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
+      168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
+      168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
+      168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
+      168, 168, 168, 168, 168,  33,  14,   2,  56,  13,
+      168,  38,  89,  98, 168,  58,  11,  12,  85,  22,
+        1, 168,  78,   3,  38,  24,  62,  12,   7,  64,
+      108, 168, 168, 168, 168,  70, 168,   5,   5,  73,
+       57,  22,  31,  57,   9,  49,  36,  39,  13,  49,
+        4,   2,  18, 168,  20,   6,  60,   1,  24,  14,
+      168,  21, 168, 168, 168, 168, 168, 168
 #endif /* USE_UNICODE_PROPERTIES */
     };
 #ifndef USE_UNICODE_PROPERTIES
@@ -108,14 +9435,16 @@
   switch (hval)
     {
       default:
-        hval += asso_values[(unsigned char)str[2]+2];
+        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]];
         break;
     }
-  return hval + asso_values[(unsigned char)str[len - 1]];
+  return hval;
 #endif /* USE_UNICODE_PROPERTIES */
 }
 
@@ -127,7 +9456,19 @@
     char uniname2ctype_pool_str8[sizeof("Alnum")];
     char uniname2ctype_pool_str9[sizeof("ASCII")];
     char uniname2ctype_pool_str10[sizeof("Cntrl")];
+#else /* USE_UNICODE_PROPERTIES */
+    char uniname2ctype_pool_str2[sizeof("P")];
+    char uniname2ctype_pool_str3[sizeof("C")];
+    char uniname2ctype_pool_str4[sizeof("S")];
+    char uniname2ctype_pool_str5[sizeof("Po")];
+    char uniname2ctype_pool_str6[sizeof("Co")];
+    char uniname2ctype_pool_str7[sizeof("So")];
+    char uniname2ctype_pool_str8[sizeof("Cn")];
+    char uniname2ctype_pool_str9[sizeof("Ps")];
+    char uniname2ctype_pool_str10[sizeof("Cs")];
+#endif /* USE_UNICODE_PROPERTIES */
     char uniname2ctype_pool_str11[sizeof("Punct")];
+#ifndef USE_UNICODE_PROPERTIES
     char uniname2ctype_pool_str12[sizeof("Print")];
     char uniname2ctype_pool_str13[sizeof("XDigit")];
     char uniname2ctype_pool_str14[sizeof("Upper")];
@@ -138,271 +9479,293 @@
     char uniname2ctype_pool_str19[sizeof("Digit")];
     char uniname2ctype_pool_str20[sizeof("Blank")];
 #else /* USE_UNICODE_PROPERTIES */
-    char uniname2ctype_pool_str3[sizeof("P")];
-    char uniname2ctype_pool_str5[sizeof("C")];
-    char uniname2ctype_pool_str6[sizeof("Cn")];
-    char uniname2ctype_pool_str7[sizeof("S")];
-    char uniname2ctype_pool_str8[sizeof("Po")];
-    char uniname2ctype_pool_str9[sizeof("Co")];
-    char uniname2ctype_pool_str10[sizeof("So")];
-    char uniname2ctype_pool_str11[sizeof("Pc")];
-    char uniname2ctype_pool_str12[sizeof("Cc")];
-    char uniname2ctype_pool_str13[sizeof("Sc")];
-    char uniname2ctype_pool_str14[sizeof("Pi")];
-    char uniname2ctype_pool_str15[sizeof("Common")];
-    char uniname2ctype_pool_str16[sizeof("Mn")];
-    char uniname2ctype_pool_str17[sizeof("Lt")];
-    char uniname2ctype_pool_str18[sizeof("Syriac")];
-    char uniname2ctype_pool_str19[sizeof("Cyrillic")];
-    char uniname2ctype_pool_str20[sizeof("Shavian")];
-    char uniname2ctype_pool_str21[sizeof("Lo")];
-    char uniname2ctype_pool_str22[sizeof("Mc")];
-    char uniname2ctype_pool_str23[sizeof("Pe")];
-    char uniname2ctype_pool_str24[sizeof("Cypriot")];
-    char uniname2ctype_pool_str25[sizeof("M")];
-    char uniname2ctype_pool_str26[sizeof("Thai")];
-    char uniname2ctype_pool_str28[sizeof("Syloti_Nagri")];
-    char uniname2ctype_pool_str29[sizeof("L")];
-    char uniname2ctype_pool_str30[sizeof("Coptic")];
-    char uniname2ctype_pool_str31[sizeof("Bopomofo")];
-    char uniname2ctype_pool_str32[sizeof("Punct")];
-    char uniname2ctype_pool_str33[sizeof("Sk")];
-    char uniname2ctype_pool_str34[sizeof("Me")];
-    char uniname2ctype_pool_str35[sizeof("Print")];
-    char uniname2ctype_pool_str36[sizeof("Space")];
-    char uniname2ctype_pool_str37[sizeof("Thaana")];
-    char uniname2ctype_pool_str38[sizeof("Sm")];
-    char uniname2ctype_pool_str39[sizeof("Braille")];
-    char uniname2ctype_pool_str40[sizeof("No")];
-    char uniname2ctype_pool_str41[sizeof("Myanmar")];
-    char uniname2ctype_pool_str42[sizeof("Tagbanwa")];
-    char uniname2ctype_pool_str43[sizeof("Buginese")];
-    char uniname2ctype_pool_str44[sizeof("Osmanya")];
-    char uniname2ctype_pool_str45[sizeof("Blank")];
-    char uniname2ctype_pool_str46[sizeof("Armenian")];
+    char uniname2ctype_pool_str12[sizeof("L")];
+    char uniname2ctype_pool_str13[sizeof("M")];
+    char uniname2ctype_pool_str14[sizeof("Lu")];
+    char uniname2ctype_pool_str15[sizeof("Lo")];
+    char uniname2ctype_pool_str16[sizeof("Cuneiform")];
+    char uniname2ctype_pool_str17[sizeof("Sundanese")];
+    char uniname2ctype_pool_str18[sizeof("Mn")];
+    char uniname2ctype_pool_str19[sizeof("Saurashtra")];
+    char uniname2ctype_pool_str20[sizeof("Cham")];
+    char uniname2ctype_pool_str21[sizeof("Lao")];
+    char uniname2ctype_pool_str22[sizeof("Phoenician")];
+    char uniname2ctype_pool_str23[sizeof("Phags_Pa")];
+    char uniname2ctype_pool_str24[sizeof("Shavian")];
+    char uniname2ctype_pool_str25[sizeof("Pe")];
+    char uniname2ctype_pool_str26[sizeof("Ll")];
+    char uniname2ctype_pool_str27[sizeof("Mongolian")];
+    char uniname2ctype_pool_str28[sizeof("Coptic")];
+    char uniname2ctype_pool_str29[sizeof("Buhid")];
+    char uniname2ctype_pool_str30[sizeof("Canadian_Aboriginal")];
+    char uniname2ctype_pool_str31[sizeof("Space")];
+    char uniname2ctype_pool_str32[sizeof("Lower")];
+    char uniname2ctype_pool_str33[sizeof("Carian")];
+    char uniname2ctype_pool_str34[sizeof("Pf")];
+    char uniname2ctype_pool_str35[sizeof("Cf")];
+    char uniname2ctype_pool_str36[sizeof("Me")];
+    char uniname2ctype_pool_str37[sizeof("Blank")];
+    char uniname2ctype_pool_str38[sizeof("Word")];
+    char uniname2ctype_pool_str39[sizeof("Malayalam")];
+    char uniname2ctype_pool_str40[sizeof("Balinese")];
+    char uniname2ctype_pool_str41[sizeof("Cherokee")];
+    char uniname2ctype_pool_str42[sizeof("Bopomofo")];
+    char uniname2ctype_pool_str43[sizeof("ASCII")];
+    char uniname2ctype_pool_str44[sizeof("Sk")];
+    char uniname2ctype_pool_str45[sizeof("Myanmar")];
+    char uniname2ctype_pool_str46[sizeof("Braille")];
     char uniname2ctype_pool_str47[sizeof("Bengali")];
-    char uniname2ctype_pool_str48[sizeof("Mongolian")];
-    char uniname2ctype_pool_str49[sizeof("Lm")];
-    char uniname2ctype_pool_str50[sizeof("Latin")];
-    char uniname2ctype_pool_str51[sizeof("Linear_B")];
-    char uniname2ctype_pool_str52[sizeof("Yi")];
-    char uniname2ctype_pool_str53[sizeof("Arabic")];
-    char uniname2ctype_pool_str54[sizeof("Pd")];
-    char uniname2ctype_pool_str55[sizeof("Sinhala")];
-    char uniname2ctype_pool_str56[sizeof("Malayalam")];
-    char uniname2ctype_pool_str57[sizeof("Tai_Le")];
-    char uniname2ctype_pool_str58[sizeof("Tamil")];
-    char uniname2ctype_pool_str59[sizeof("Telugu")];
-    char uniname2ctype_pool_str60[sizeof("Gurmukhi")];
-    char uniname2ctype_pool_str61[sizeof("Ll")];
-    char uniname2ctype_pool_str62[sizeof("Tagalog")];
-    char uniname2ctype_pool_str63[sizeof("Tibetan")];
-    char uniname2ctype_pool_str64[sizeof("Lu")];
-    char uniname2ctype_pool_str65[sizeof("Oriya")];
+    char uniname2ctype_pool_str48[sizeof("Cypriot")];
+    char uniname2ctype_pool_str49[sizeof("Syloti_Nagri")];
+    char uniname2ctype_pool_str50[sizeof("Syriac")];
+    char uniname2ctype_pool_str51[sizeof("Cyrillic")];
+    char uniname2ctype_pool_str52[sizeof("Pi")];
+    char uniname2ctype_pool_str53[sizeof("Assigned")];
+    char uniname2ctype_pool_str54[sizeof("Sm")];
+    char uniname2ctype_pool_str55[sizeof("Alnum")];
+    char uniname2ctype_pool_str56[sizeof("Thai")];
+    char uniname2ctype_pool_str57[sizeof("Lepcha")];
+    char uniname2ctype_pool_str58[sizeof("Thaana")];
+    char uniname2ctype_pool_str59[sizeof("Common")];
+    char uniname2ctype_pool_str60[sizeof("Pd")];
+    char uniname2ctype_pool_str61[sizeof("Any")];
+    char uniname2ctype_pool_str62[sizeof("Lm")];
+    char uniname2ctype_pool_str63[sizeof("Sinhala")];
+    char uniname2ctype_pool_str64[sizeof("Arabic")];
+    char uniname2ctype_pool_str65[sizeof("Upper")];
     char uniname2ctype_pool_str66[sizeof("Glagolitic")];
-    char uniname2ctype_pool_str67[sizeof("N")];
-    char uniname2ctype_pool_str68[sizeof("Pf")];
-    char uniname2ctype_pool_str69[sizeof("Cf")];
-    char uniname2ctype_pool_str70[sizeof("Alpha")];
-    char uniname2ctype_pool_str71[sizeof("Cherokee")];
-    char uniname2ctype_pool_str72[sizeof("Limbu")];
-    char uniname2ctype_pool_str73[sizeof("Khmer")];
-    char uniname2ctype_pool_str74[sizeof("Hiragana")];
-    char uniname2ctype_pool_str75[sizeof("Han")];
-    char uniname2ctype_pool_str76[sizeof("Zp")];
-    char uniname2ctype_pool_str77[sizeof("Lower")];
-    char uniname2ctype_pool_str78[sizeof("Kharoshthi")];
-    char uniname2ctype_pool_str79[sizeof("Tifinagh")];
-    char uniname2ctype_pool_str80[sizeof("Nl")];
-    char uniname2ctype_pool_str81[sizeof("Cntrl")];
-    char uniname2ctype_pool_str82[sizeof("Hanunoo")];
-    char uniname2ctype_pool_str83[sizeof("Gothic")];
-    char uniname2ctype_pool_str84[sizeof("Ps")];
-    char uniname2ctype_pool_str85[sizeof("Cs")];
-    char uniname2ctype_pool_str86[sizeof("Nd")];
-    char uniname2ctype_pool_str87[sizeof("Graph")];
-    char uniname2ctype_pool_str88[sizeof("Lao")];
-    char uniname2ctype_pool_str89[sizeof("Ethiopic")];
-    char uniname2ctype_pool_str90[sizeof("Old_Persian")];
-    char uniname2ctype_pool_str91[sizeof("Canadian_Aboriginal")];
-    char uniname2ctype_pool_str92[sizeof("Ogham")];
-    char uniname2ctype_pool_str93[sizeof("ASCII")];
-    char uniname2ctype_pool_str94[sizeof("Alnum")];
-    char uniname2ctype_pool_str95[sizeof("Old_Italic")];
-    char uniname2ctype_pool_str96[sizeof("Zl")];
-    char uniname2ctype_pool_str97[sizeof("Digit")];
-    char uniname2ctype_pool_str98[sizeof("Ugaritic")];
-    char uniname2ctype_pool_str99[sizeof("Z")];
-    char uniname2ctype_pool_str100[sizeof("Any")];
-    char uniname2ctype_pool_str101[sizeof("Kannada")];
-    char uniname2ctype_pool_str102[sizeof("Buhid")];
-    char uniname2ctype_pool_str103[sizeof("Devanagari")];
-    char uniname2ctype_pool_str104[sizeof("Gujarati")];
-    char uniname2ctype_pool_str105[sizeof("Hebrew")];
-    char uniname2ctype_pool_str106[sizeof("Katakana")];
-    char uniname2ctype_pool_str107[sizeof("Upper")];
-    char uniname2ctype_pool_str108[sizeof("New_Tai_Lue")];
-    char uniname2ctype_pool_str109[sizeof("XDigit")];
-    char uniname2ctype_pool_str110[sizeof("NEWLINE")];
-    char uniname2ctype_pool_str111[sizeof("Word")];
-    char uniname2ctype_pool_str112[sizeof("Runic")];
-    char uniname2ctype_pool_str114[sizeof("Greek")];
-    char uniname2ctype_pool_str116[sizeof("Georgian")];
-    char uniname2ctype_pool_str121[sizeof("Hangul")];
-    char uniname2ctype_pool_str128[sizeof("Inherited")];
-    char uniname2ctype_pool_str132[sizeof("Zs")];
-    char uniname2ctype_pool_str136[sizeof("Deseret")];
-    char uniname2ctype_pool_str138[sizeof("Assigned")];
+    char uniname2ctype_pool_str67[sizeof("Gurmukhi")];
+    char uniname2ctype_pool_str68[sizeof("Graph")];
+    char uniname2ctype_pool_str69[sizeof("Alpha")];
+    char uniname2ctype_pool_str70[sizeof("Georgian")];
+    char uniname2ctype_pool_str71[sizeof("Cntrl")];
+    char uniname2ctype_pool_str72[sizeof("Linear_B")];
+    char uniname2ctype_pool_str73[sizeof("Lt")];
+    char uniname2ctype_pool_str74[sizeof("Kannada")];
+    char uniname2ctype_pool_str75[sizeof("Print")];
+    char uniname2ctype_pool_str76[sizeof("Pc")];
+    char uniname2ctype_pool_str77[sizeof("Cc")];
+    char uniname2ctype_pool_str78[sizeof("Sc")];
+    char uniname2ctype_pool_str79[sizeof("Telugu")];
+    char uniname2ctype_pool_str80[sizeof("Buginese")];
+    char uniname2ctype_pool_str81[sizeof("Latin")];
+    char uniname2ctype_pool_str82[sizeof("Kharoshthi")];
+    char uniname2ctype_pool_str83[sizeof("Gujarati")];
+    char uniname2ctype_pool_str84[sizeof("Osmanya")];
+    char uniname2ctype_pool_str85[sizeof("Greek")];
+    char uniname2ctype_pool_str86[sizeof("N")];
+    char uniname2ctype_pool_str87[sizeof("Mc")];
+    char uniname2ctype_pool_str88[sizeof("Runic")];
+    char uniname2ctype_pool_str89[sizeof("No")];
+    char uniname2ctype_pool_str90[sizeof("Ethiopic")];
+    char uniname2ctype_pool_str91[sizeof("Deseret")];
+    char uniname2ctype_pool_str92[sizeof("Kayah_Li")];
+    char uniname2ctype_pool_str93[sizeof("Ogham")];
+    char uniname2ctype_pool_str94[sizeof("Ugaritic")];
+    char uniname2ctype_pool_str95[sizeof("Lydian")];
+    char uniname2ctype_pool_str96[sizeof("Oriya")];
+    char uniname2ctype_pool_str97[sizeof("Tamil")];
+    char uniname2ctype_pool_str98[sizeof("Tai_Le")];
+    char uniname2ctype_pool_str99[sizeof("Tibetan")];
+    char uniname2ctype_pool_str100[sizeof("Nl")];
+    char uniname2ctype_pool_str101[sizeof("Han")];
+    char uniname2ctype_pool_str102[sizeof("Old_Italic")];
+    char uniname2ctype_pool_str103[sizeof("Old_Persian")];
+    char uniname2ctype_pool_str104[sizeof("Hangul")];
+    char uniname2ctype_pool_str105[sizeof("Hanunoo")];
+    char uniname2ctype_pool_str106[sizeof("Gothic")];
+    char uniname2ctype_pool_str107[sizeof("Tagalog")];
+    char uniname2ctype_pool_str108[sizeof("Tagbanwa")];
+    char uniname2ctype_pool_str109[sizeof("Z")];
+    char uniname2ctype_pool_str110[sizeof("Armenian")];
+    char uniname2ctype_pool_str111[sizeof("Lycian")];
+    char uniname2ctype_pool_str112[sizeof("Devanagari")];
+    char uniname2ctype_pool_str113[sizeof("Ol_Chiki")];
+    char uniname2ctype_pool_str114[sizeof("Limbu")];
+    char uniname2ctype_pool_str115[sizeof("Yi")];
+    char uniname2ctype_pool_str116[sizeof("Zs")];
+    char uniname2ctype_pool_str117[sizeof("NEWLINE")];
+    char uniname2ctype_pool_str118[sizeof("XDigit")];
+    char uniname2ctype_pool_str119[sizeof("Vai")];
+    char uniname2ctype_pool_str120[sizeof("Inherited")];
+    char uniname2ctype_pool_str121[sizeof("Khmer")];
+    char uniname2ctype_pool_str122[sizeof("Hebrew")];
+    char uniname2ctype_pool_str123[sizeof("Zl")];
+    char uniname2ctype_pool_str126[sizeof("Tifinagh")];
+    char uniname2ctype_pool_str128[sizeof("Zp")];
+    char uniname2ctype_pool_str129[sizeof("Nko")];
+    char uniname2ctype_pool_str131[sizeof("Katakana")];
+    char uniname2ctype_pool_str132[sizeof("New_Tai_Lue")];
+    char uniname2ctype_pool_str142[sizeof("Rejang")];
+    char uniname2ctype_pool_str144[sizeof("Nd")];
+    char uniname2ctype_pool_str166[sizeof("Hiragana")];
+    char uniname2ctype_pool_str167[sizeof("Digit")];
 #endif /* USE_UNICODE_PROPERTIES */
   };
 static const struct uniname2ctype_pool_t uniname2ctype_pool_contents =
   {
-#ifndef USE_UNICODE_PROPERTIES
-    "Word",
-    "Alpha",
-    "Alnum",
-    "ASCII",
-    "Cntrl",
-#else /* USE_UNICODE_PROPERTIES */
+#ifdef USE_UNICODE_PROPERTIES
     "P",
     "C",
-    "Cn",
     "S",
     "Po",
     "Co",
     "So",
-    "Pc",
-    "Cc",
-    "Sc",
-    "Pi",
-    "Common",
+    "Cn",
+    "Ps",
+    "Cs",
+    "Punct",
+    "L",
+    "M",
+    "Lu",
+    "Lo",
+    "Cuneiform",
+    "Sundanese",
     "Mn",
-    "Lt",
-    "Syriac",
-    "Cyrillic",
+    "Saurashtra",
+    "Cham",
+    "Lao",
+    "Phoenician",
+    "Phags_Pa",
     "Shavian",
-    "Lo",
-    "Mc",
     "Pe",
-    "Cypriot",
-    "M",
-    "Thai",
-    "Syloti_Nagri",
-    "L",
+    "Ll",
+    "Mongolian",
     "Coptic",
+    "Buhid",
+    "Canadian_Aboriginal",
+    "Space",
+    "Lower",
+    "Carian",
+    "Pf",
+    "Cf",
+    "Me",
+    "Blank",
+#endif /* USE_UNICODE_PROPERTIES */
+    "Word",
+#ifndef USE_UNICODE_PROPERTIES
+    "Alpha",
+    "Alnum",
+#else /* USE_UNICODE_PROPERTIES */
+    "Malayalam",
+    "Balinese",
+    "Cherokee",
     "Bopomofo",
 #endif /* USE_UNICODE_PROPERTIES */
-    "Punct",
+    "ASCII",
 #ifdef USE_UNICODE_PROPERTIES
     "Sk",
-    "Me",
+    "Myanmar",
+    "Braille",
+    "Bengali",
+    "Cypriot",
+    "Syloti_Nagri",
+    "Syriac",
+    "Cyrillic",
+    "Pi",
+    "Assigned",
+    "Sm",
+    "Alnum",
+    "Thai",
+    "Lepcha",
+    "Thaana",
+    "Common",
+    "Pd",
+    "Any",
+    "Lm",
+    "Sinhala",
+    "Arabic",
+    "Upper",
+    "Glagolitic",
+    "Gurmukhi",
+    "Graph",
+    "Alpha",
+    "Georgian",
 #endif /* USE_UNICODE_PROPERTIES */
+    "Cntrl",
+#ifndef USE_UNICODE_PROPERTIES
+    "Punct",
+#else /* USE_UNICODE_PROPERTIES */
+    "Linear_B",
+    "Lt",
+    "Kannada",
+#endif /* USE_UNICODE_PROPERTIES */
     "Print",
 #ifndef USE_UNICODE_PROPERTIES
     "XDigit",
     "Upper",
-#endif /* ! USE_UNICODE_PROPERTIES */
     "Space",
-#ifndef USE_UNICODE_PROPERTIES
-    "NEWLINE",
 #else /* USE_UNICODE_PROPERTIES */
-    "Thaana",
-    "Sm",
-    "Braille",
-    "No",
-    "Myanmar",
-    "Tagbanwa",
+    "Pc",
+    "Cc",
+    "Sc",
+    "Telugu",
     "Buginese",
+    "Latin",
+    "Kharoshthi",
+    "Gujarati",
     "Osmanya",
-    "Blank",
-    "Armenian",
-    "Bengali",
-    "Mongolian",
-    "Lm",
-    "Latin",
-    "Linear_B",
-    "Yi",
-    "Arabic",
-    "Pd",
-    "Sinhala",
-    "Malayalam",
+    "Greek",
+    "N",
+    "Mc",
+    "Runic",
+    "No",
+    "Ethiopic",
+    "Deseret",
+    "Kayah_Li",
+    "Ogham",
+    "Ugaritic",
+    "Lydian",
+    "Oriya",
+    "Tamil",
     "Tai_Le",
-    "Tamil",
-    "Telugu",
-    "Gurmukhi",
-    "Ll",
-    "Tagalog",
     "Tibetan",
-    "Lu",
-    "Oriya",
-    "Glagolitic",
-    "N",
-    "Pf",
-    "Cf",
-    "Alpha",
-    "Cherokee",
-    "Limbu",
-    "Khmer",
-    "Hiragana",
+    "Nl",
     "Han",
-    "Zp",
-#endif /* USE_UNICODE_PROPERTIES */
-    "Lower",
-#ifdef USE_UNICODE_PROPERTIES
-    "Kharoshthi",
-    "Tifinagh",
-    "Nl",
-    "Cntrl",
+    "Old_Italic",
+    "Old_Persian",
+    "Hangul",
     "Hanunoo",
     "Gothic",
-    "Ps",
-    "Cs",
-    "Nd",
+    "Tagalog",
+    "Tagbanwa",
+    "Z",
+    "Armenian",
+    "Lycian",
+    "Devanagari",
+    "Ol_Chiki",
+    "Limbu",
+    "Yi",
+    "Zs",
 #endif /* USE_UNICODE_PROPERTIES */
+    "NEWLINE",
+#ifndef USE_UNICODE_PROPERTIES
+    "Lower",
     "Graph",
-#ifdef USE_UNICODE_PROPERTIES
-    "Lao",
-    "Ethiopic",
-    "Old_Persian",
-    "Canadian_Aboriginal",
-    "Ogham",
-    "ASCII",
-    "Alnum",
-    "Old_Italic",
-    "Zl",
-#endif /* USE_UNICODE_PROPERTIES */
     "Digit",
-#ifndef USE_UNICODE_PROPERTIES
     "Blank"
 #else /* USE_UNICODE_PROPERTIES */
-    "Ugaritic",
-    "Z",
-    "Any",
-    "Kannada",
-    "Buhid",
-    "Devanagari",
-    "Gujarati",
+    "XDigit",
+    "Vai",
+    "Inherited",
+    "Khmer",
     "Hebrew",
+    "Zl",
+    "Tifinagh",
+    "Zp",
+    "Nko",
     "Katakana",
-    "Upper",
     "New_Tai_Lue",
-    "XDigit",
-    "NEWLINE",
-    "Word",
-    "Runic",
-    "Greek",
-    "Georgian",
-    "Hangul",
-    "Inherited",
-    "Zs",
-    "Deseret",
-    "Assigned"
+    "Rejang",
+    "Nd",
+    "Hiragana",
+    "Digit"
 #endif /* USE_UNICODE_PROPERTIES */
   };
 #define uniname2ctype_pool ((const char *) &uniname2ctype_pool_contents)
 #ifdef __GNUC__
 __inline
-#if defined __GNUC_STDC_INLINE__ || defined __GNUC_GNU_INLINE__
+#ifdef __GNUC_STDC_INLINE__
 __attribute__ ((__gnu_inline__))
 #endif
 #endif
@@ -413,133 +9776,27 @@
 {
   static const struct uniname2ctype_struct wordlist[] =
     {
-#ifdef USE_UNICODE_PROPERTIES
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str3,                     37},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str5,                     17},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str6,                    20},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str7,                     45},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str8,                    43},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str9,                    21},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str10,                    49},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str11,                    38},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str12,                    18},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str13,                    46},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str14,                    42},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str15,                63},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str16,                    32},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str17,                    27},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str18,               103},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str19,              66},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str20,              100},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str21,                    26},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str22,                    30},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str23,                    40},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str24,               65},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str25,                     29},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str26,                 110},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str28,         102},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str29,                     23},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str30,                64},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str31,              57},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str32,                  8},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str33,                    47},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str34,                    31},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str35,                  7},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str36,                  9},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str37,               109},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str38,                    48},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str39,               58},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str40,                    36},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str41,               92},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str42,             105},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str43,              59},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str44,               98},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str45,                  2},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str46,              55},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str47,               56},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str48,             91},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str49,                    25},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str50,                 87},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str51,              89},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str52,                   114},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str53,                54},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str54,                    39},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str55,              101},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str56,             90},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str57,               106},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str58,                107},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str59,               108},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str60,              75},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str61,                    24},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str62,              104},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str63,              111},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str64,                    28},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str65,                 97},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str66,            71},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str67,                     33},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str68,                    41},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str69,                    19},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str70,                  1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str71,              62},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str72,                 88},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str73,                 85},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str74,              80},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str75,                   76},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str76,                    52},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str77,                  6},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str78,            84},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str79,             112},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str80,                    35},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str81,                  3},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str82,               78},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str83,                72},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str84,                    44},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str85,                    22},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str86,                    34},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str87,                  5},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str88,                   86},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str89,              69},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str90,           96},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str91,   61},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str92,                 94},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str93,                 14},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str94,                 13},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str95,            95},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str96,                    51},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str97,                  4},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str98,             113},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str99,                     50},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str100,                   15},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str101,               82},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str102,                 60},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str103,            68},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str104,              74},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str105,                79},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str106,              83},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str107,                 10},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str108,           93},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str109,                11},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str110,                0},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str111,                  12},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str112,                 99},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str114,                 73},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str116,              70},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str121,                77},
-#endif /* USE_UNICODE_PROPERTIES */
+#ifndef USE_UNICODE_PROPERTIES
       {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-#ifndef USE_UNICODE_PROPERTIES
       {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str6,                  12},
       {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str7,                  1},
       {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str8,                 13},
       {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str9,                 14},
       {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str10,                  3},
+#else /* USE_UNICODE_PROPERTIES */
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str2,                     37},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str3,                     17},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str4,                     45},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str5,                    43},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str6,                    21},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str7,                    49},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str8,                    20},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str9,                    44},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str10,                    22},
+#endif /* USE_UNICODE_PROPERTIES */
       {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str11,                  8},
+#ifndef USE_UNICODE_PROPERTIES
       {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str12,                  7},
       {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str13,                11},
       {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str14,                 10},
@@ -550,13 +9807,135 @@
       {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str19,                  4},
       {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str20,                  2}
 #else /* USE_UNICODE_PROPERTIES */
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str128,             81},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str12,                     23},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str13,                     29},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str14,                    28},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str15,                    26},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str16,            116},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str17,            120},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str18,                    32},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str19,           124},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str20,                 130},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str21,                   74},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str22,           117},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str23,             118},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str24,              103},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str25,                    40},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str26,                    24},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str27,             85},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str28,               108},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str29,                 97},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str30,   81},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str31,                  9},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str32,                  6},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str33,               128},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str34,                    41},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str35,                    19},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str36,                    31},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str37,                  2},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str38,                  12},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str39,             71},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str40,             115},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str41,              80},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str42,              88},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str43,                 14},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str44,                    47},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str45,               76},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str46,              106},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str47,               64},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str48,              105},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str49,         112},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str50,                61},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str51,              57},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str52,                    42},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str53,              16},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str54,                    48},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str55,                 13},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str56,                  73},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str57,               121},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str58,                62},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str59,                54},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str60,                    39},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str61,                   15},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str62,                    25},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str63,               72},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str64,                60},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str65,                 10},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str66,           110},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str67,              65},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str68,                  5},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str69,                  1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str70,              77},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str71,                  3},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str72,             101},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str73,                    27},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str74,               70},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str75,                  7},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str76,                    38},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str77,                    18},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str78,                    46},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str79,                69},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str80,             107},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str81,                 55},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str82,           114},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str83,              66},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str84,              104},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str85,                 56},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str86,                     33},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str87,                    30},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str88,                 83},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str89,                    36},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str90,              79},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str91,               93},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str92,             125},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str93,                 82},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str94,             102},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str95,               129},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str96,                 67},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str97,                 68},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str98,               100},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str99,               75},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str100,                    35},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str101,                   89},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str102,            91},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str103,          113},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str104,                78},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str105,               96},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str106,                92},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str107,               95},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str108,              98},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str109,                     50},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str110,              58},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str111,               127},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str112,            63},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str113,             122},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str114,                 99},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str115,                    90},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str116,                    53},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str117,                0},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str118,                11},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str119,                  123},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str120,             94},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str121,                 84},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str122,                59},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str123,                    51},
+      {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str126,             111},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str128,                    52},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str129,                  119},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str131,              87},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str132,          109},
+      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str142,               126},
+      {-1},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str144,                    34},
+      {-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_str132,                    53},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str136,               67},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str138,              16}
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str166,              86},
+      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str167,                  4}
 #endif /* USE_UNICODE_PROPERTIES */
     };
 

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

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