]> Cypherpunks.ru repositories - gostls13.git/commitdiff
all: upgrade Unicode from 13.0.0 to 15.0.0
authorweebney <weebney@gmail.com>
Mon, 12 Dec 2022 19:10:54 +0000 (19:10 +0000)
committerRob Pike <r@golang.org>
Mon, 6 Feb 2023 04:29:53 +0000 (04:29 +0000)
Update unicode/tables.go to reflect changes in the Unicode Standard up to
Unicode 15.0.0, released 13 Sept 2022.

In order to accommodate this update, strconv/isPrint has been updated to
reflect changes in printable characters.

Also changed is template/exec_test.go for both text and html packages- in
the test "TestJSEscaping", rune U+FDFF was used as a placeholder for an
unprintable character. This codepoint was assigned and made printable in
Unicode 14.0.0, breaking this test. It has been replaced with the assigned
and never-printable U+FFFE to fix the test and provide resiliency in the
future.

This upgrade bypasses Unicode 14.0.0, but is compatible.

Updates https://github.com/golang/go/issues/48621
Fixes https://github.com/golang/go/issues/55079

Change-Id: I40efd097eb746db0727ebf7437280916d1242e47
GitHub-Last-Rev: c8885cab7a0c23632e1e5a433b1e8d5634a45a30
GitHub-Pull-Request: golang/go#57265
Reviewed-on: https://go-review.googlesource.com/c/go/+/456837
Reviewed-by: Robert Griesemer <gri@google.com>
Run-TryBot: Rob Pike <r@golang.org>
TryBot-Result: Gopher Robot <gobot@golang.org>
Run-TryBot: Robert Griesemer <gri@google.com>
Reviewed-by: Cherry Mui <cherryyz@google.com>
Reviewed-by: Rob Pike <r@golang.org>
api/except.txt
api/next/55079.txt [new file with mode: 0644]
src/html/template/exec_test.go
src/strconv/isprint.go
src/text/template/exec_test.go
src/unicode/tables.go

index efd00a96bd039aacee97fa947cf48b65f6dfa3ce..b86fb3a5a8b1086f643330b8dcda56618f07d237 100644 (file)
@@ -501,6 +501,7 @@ pkg text/template/parse, type Node interface { Copy, String, Type }
 pkg unicode, const Version = "10.0.0"
 pkg unicode, const Version = "11.0.0"
 pkg unicode, const Version = "12.0.0"
+pkg unicode, const Version = "13.0.0"
 pkg unicode, const Version = "6.2.0"
 pkg unicode, const Version = "6.3.0"
 pkg unicode, const Version = "7.0.0"
diff --git a/api/next/55079.txt b/api/next/55079.txt
new file mode 100644 (file)
index 0000000..02360e1
--- /dev/null
@@ -0,0 +1,8 @@
+pkg unicode, const Version = "15.0.0" #55079
+pkg unicode, var Cypro_Minoan *RangeTable #55079
+pkg unicode, var Kawi *RangeTable #55079
+pkg unicode, var Nag_Mundari *RangeTable #55079
+pkg unicode, var Old_Uyghur *RangeTable #55079
+pkg unicode, var Tangsa *RangeTable #55079
+pkg unicode, var Toto *RangeTable #55079
+pkg unicode, var Vithkuqi *RangeTable #55079
index 1ec346fe814863f74edf261eb11599220a012404..51923ff9c7aee2b6aa839ad7c19f7ddbdda1cab4 100644 (file)
@@ -920,7 +920,7 @@ func TestJSEscaping(t *testing.T) {
                {`'foo`, `\'foo`},
                {`Go "jump" \`, `Go \"jump\" \\`},
                {`Yukihiro says "今日は世界"`, `Yukihiro says \"今日は世界\"`},
-               {"unprintable \uFDFF", `unprintable \uFDFF`},
+               {"unprintable \uFFFE", `unprintable \uFFFE`},
                {`<html>`, `\u003Chtml\u003E`},
                {`no = in attributes`, `no \u003D in attributes`},
                {`&#x27; does not become HTML entity`, `\u0026#x27; does not become HTML entity`},
index 994a8e423c8d7227b11bf7ca1dce27bf385e6160..baa14a65bd6c4727194070377273ae4ddc93a563 100644 (file)
@@ -6,7 +6,7 @@
 
 package strconv
 
-// (434+132+95)*2 + (468)*4 = 3194 bytes
+// (424+133+112)*2 + (508)*4 = 3370 bytes
 
 var isPrint16 = []uint16{
        0x0020, 0x007e,
@@ -17,16 +17,15 @@ var isPrint16 = []uint16{
        0x058d, 0x05c7,
        0x05d0, 0x05ea,
        0x05ef, 0x05f4,
-       0x0606, 0x061b,
-       0x061e, 0x070d,
+       0x0606, 0x070d,
        0x0710, 0x074a,
        0x074d, 0x07b1,
        0x07c0, 0x07fa,
        0x07fd, 0x082d,
        0x0830, 0x085b,
        0x085e, 0x086a,
-       0x08a0, 0x08c7,
-       0x08d3, 0x098c,
+       0x0870, 0x088e,
+       0x0898, 0x098c,
        0x098f, 0x0990,
        0x0993, 0x09b2,
        0x09b6, 0x09b9,
@@ -71,15 +70,16 @@ var isPrint16 = []uint16{
        0x0bd7, 0x0bd7,
        0x0be6, 0x0bfa,
        0x0c00, 0x0c39,
-       0x0c3d, 0x0c4d,
+       0x0c3c, 0x0c4d,
        0x0c55, 0x0c5a,
+       0x0c5d, 0x0c5d,
        0x0c60, 0x0c63,
        0x0c66, 0x0c6f,
        0x0c77, 0x0cb9,
        0x0cbc, 0x0ccd,
        0x0cd5, 0x0cd6,
-       0x0cde, 0x0ce3,
-       0x0ce6, 0x0cf2,
+       0x0cdd, 0x0ce3,
+       0x0ce6, 0x0cf3,
        0x0d00, 0x0d4f,
        0x0d54, 0x0d63,
        0x0d66, 0x0d96,
@@ -92,8 +92,7 @@ var isPrint16 = []uint16{
        0x0e01, 0x0e3a,
        0x0e3f, 0x0e5b,
        0x0e81, 0x0ebd,
-       0x0ec0, 0x0ecd,
-       0x0ed0, 0x0ed9,
+       0x0ec0, 0x0ed9,
        0x0edc, 0x0edf,
        0x0f00, 0x0f6c,
        0x0f71, 0x0fda,
@@ -112,15 +111,14 @@ var isPrint16 = []uint16{
        0x13f8, 0x13fd,
        0x1400, 0x169c,
        0x16a0, 0x16f8,
-       0x1700, 0x1714,
-       0x1720, 0x1736,
+       0x1700, 0x1715,
+       0x171f, 0x1736,
        0x1740, 0x1753,
        0x1760, 0x1773,
        0x1780, 0x17dd,
        0x17e0, 0x17e9,
        0x17f0, 0x17f9,
-       0x1800, 0x180d,
-       0x1810, 0x1819,
+       0x1800, 0x1819,
        0x1820, 0x1878,
        0x1880, 0x18aa,
        0x18b0, 0x18f5,
@@ -137,10 +135,9 @@ var isPrint16 = []uint16{
        0x1a7f, 0x1a89,
        0x1a90, 0x1a99,
        0x1aa0, 0x1aad,
-       0x1ab0, 0x1ac0,
-       0x1b00, 0x1b4b,
-       0x1b50, 0x1b7c,
-       0x1b80, 0x1bf3,
+       0x1ab0, 0x1ace,
+       0x1b00, 0x1b4c,
+       0x1b50, 0x1bf3,
        0x1bfc, 0x1c37,
        0x1c3b, 0x1c49,
        0x1c4d, 0x1c88,
@@ -159,7 +156,7 @@ var isPrint16 = []uint16{
        0x2030, 0x205e,
        0x2070, 0x2071,
        0x2074, 0x209c,
-       0x20a0, 0x20bf,
+       0x20a0, 0x20c0,
        0x20d0, 0x20f0,
        0x2100, 0x218b,
        0x2190, 0x2426,
@@ -171,21 +168,20 @@ var isPrint16 = []uint16{
        0x2d30, 0x2d67,
        0x2d6f, 0x2d70,
        0x2d7f, 0x2d96,
-       0x2da0, 0x2e52,
+       0x2da0, 0x2e5d,
        0x2e80, 0x2ef3,
        0x2f00, 0x2fd5,
        0x2ff0, 0x2ffb,
        0x3001, 0x3096,
        0x3099, 0x30ff,
        0x3105, 0x31e3,
-       0x31f0, 0x9ffc,
-       0xa000, 0xa48c,
+       0x31f0, 0xa48c,
        0xa490, 0xa4c6,
        0xa4d0, 0xa62b,
        0xa640, 0xa6f7,
-       0xa700, 0xa7bf,
-       0xa7c2, 0xa7ca,
-       0xa7f5, 0xa82c,
+       0xa700, 0xa7ca,
+       0xa7d0, 0xa7d9,
+       0xa7f2, 0xa82c,
        0xa830, 0xa839,
        0xa840, 0xa877,
        0xa880, 0xa8c5,
@@ -211,12 +207,11 @@ var isPrint16 = []uint16{
        0xfa70, 0xfad9,
        0xfb00, 0xfb06,
        0xfb13, 0xfb17,
-       0xfb1d, 0xfbc1,
-       0xfbd3, 0xfd3f,
-       0xfd50, 0xfd8f,
+       0xfb1d, 0xfbc2,
+       0xfbd3, 0xfd8f,
        0xfd92, 0xfdc7,
-       0xfdf0, 0xfdfd,
-       0xfe00, 0xfe19,
+       0xfdcf, 0xfdcf,
+       0xfdf0, 0xfe19,
        0xfe20, 0xfe6b,
        0xfe70, 0xfefc,
        0xff01, 0xffbe,
@@ -235,10 +230,10 @@ var isNotPrint16 = []uint16{
        0x03a2,
        0x0530,
        0x0590,
+       0x061c,
        0x06dd,
        0x083f,
        0x085f,
-       0x08b5,
        0x08e2,
        0x0984,
        0x09a9,
@@ -301,6 +296,7 @@ var isNotPrint16 = []uint16{
        0x0ea6,
        0x0ec5,
        0x0ec7,
+       0x0ecf,
        0x0f48,
        0x0f98,
        0x0fbd,
@@ -316,12 +312,12 @@ var isNotPrint16 = []uint16{
        0x12d7,
        0x1311,
        0x1680,
-       0x170d,
        0x176d,
        0x1771,
+       0x180e,
        0x191f,
        0x1a5f,
-       0x1dfa,
+       0x1b7f,
        0x1f58,
        0x1f5a,
        0x1f5c,
@@ -332,8 +328,6 @@ var isNotPrint16 = []uint16{
        0x1ff5,
        0x208f,
        0x2b96,
-       0x2c2f,
-       0x2c5f,
        0x2d26,
        0x2da7,
        0x2daf,
@@ -348,6 +342,8 @@ var isNotPrint16 = []uint16{
        0x3130,
        0x318f,
        0x321f,
+       0xa7d2,
+       0xa7d4,
        0xa9ce,
        0xa9ff,
        0xab27,
@@ -386,10 +382,11 @@ var isPrint32 = []uint32{
        0x0104d8, 0x0104fb,
        0x010500, 0x010527,
        0x010530, 0x010563,
-       0x01056f, 0x01056f,
+       0x01056f, 0x0105bc,
        0x010600, 0x010736,
        0x010740, 0x010755,
        0x010760, 0x010767,
+       0x010780, 0x0107ba,
        0x010800, 0x010805,
        0x010808, 0x010838,
        0x01083c, 0x01083c,
@@ -422,19 +419,20 @@ var isPrint32 = []uint32{
        0x010d30, 0x010d39,
        0x010e60, 0x010ead,
        0x010eb0, 0x010eb1,
-       0x010f00, 0x010f27,
+       0x010efd, 0x010f27,
        0x010f30, 0x010f59,
+       0x010f70, 0x010f89,
        0x010fb0, 0x010fcb,
        0x010fe0, 0x010ff6,
        0x011000, 0x01104d,
-       0x011052, 0x01106f,
-       0x01107f, 0x0110c1,
+       0x011052, 0x011075,
+       0x01107f, 0x0110c2,
        0x0110d0, 0x0110e8,
        0x0110f0, 0x0110f9,
        0x011100, 0x011147,
        0x011150, 0x011176,
        0x011180, 0x0111f4,
-       0x011200, 0x01123e,
+       0x011200, 0x011241,
        0x011280, 0x0112a9,
        0x0112b0, 0x0112ea,
        0x0112f0, 0x0112f9,
@@ -456,11 +454,11 @@ var isPrint32 = []uint32{
        0x011600, 0x011644,
        0x011650, 0x011659,
        0x011660, 0x01166c,
-       0x011680, 0x0116b8,
+       0x011680, 0x0116b9,
        0x0116c0, 0x0116c9,
        0x011700, 0x01171a,
        0x01171d, 0x01172b,
-       0x011730, 0x01173f,
+       0x011730, 0x011746,
        0x011800, 0x01183b,
        0x0118a0, 0x0118f2,
        0x0118ff, 0x011906,
@@ -473,7 +471,8 @@ var isPrint32 = []uint32{
        0x0119da, 0x0119e4,
        0x011a00, 0x011a47,
        0x011a50, 0x011aa2,
-       0x011ac0, 0x011af8,
+       0x011ab0, 0x011af8,
+       0x011b00, 0x011b09,
        0x011c00, 0x011c45,
        0x011c50, 0x011c6c,
        0x011c70, 0x011c8f,
@@ -484,16 +483,20 @@ var isPrint32 = []uint32{
        0x011d60, 0x011d98,
        0x011da0, 0x011da9,
        0x011ee0, 0x011ef8,
+       0x011f00, 0x011f3a,
+       0x011f3e, 0x011f59,
        0x011fb0, 0x011fb0,
        0x011fc0, 0x011ff1,
        0x011fff, 0x012399,
        0x012400, 0x012474,
        0x012480, 0x012543,
-       0x013000, 0x01342e,
+       0x012f90, 0x012ff2,
+       0x013000, 0x01342f,
+       0x013440, 0x013455,
        0x014400, 0x014646,
        0x016800, 0x016a38,
        0x016a40, 0x016a69,
-       0x016a6e, 0x016a6f,
+       0x016a6e, 0x016ac9,
        0x016ad0, 0x016aed,
        0x016af0, 0x016af5,
        0x016b00, 0x016b45,
@@ -508,8 +511,10 @@ var isPrint32 = []uint32{
        0x017000, 0x0187f7,
        0x018800, 0x018cd5,
        0x018d00, 0x018d08,
-       0x01b000, 0x01b11e,
+       0x01aff0, 0x01b122,
+       0x01b132, 0x01b132,
        0x01b150, 0x01b152,
+       0x01b155, 0x01b155,
        0x01b164, 0x01b167,
        0x01b170, 0x01b2fb,
        0x01bc00, 0x01bc6a,
@@ -517,11 +522,15 @@ var isPrint32 = []uint32{
        0x01bc80, 0x01bc88,
        0x01bc90, 0x01bc99,
        0x01bc9c, 0x01bc9f,
+       0x01cf00, 0x01cf2d,
+       0x01cf30, 0x01cf46,
+       0x01cf50, 0x01cfc3,
        0x01d000, 0x01d0f5,
        0x01d100, 0x01d126,
        0x01d129, 0x01d172,
-       0x01d17b, 0x01d1e8,
+       0x01d17b, 0x01d1ea,
        0x01d200, 0x01d245,
+       0x01d2c0, 0x01d2d3,
        0x01d2e0, 0x01d2f3,
        0x01d300, 0x01d356,
        0x01d360, 0x01d378,
@@ -534,15 +543,21 @@ var isPrint32 = []uint32{
        0x01d6a8, 0x01d7cb,
        0x01d7ce, 0x01da8b,
        0x01da9b, 0x01daaf,
+       0x01df00, 0x01df1e,
+       0x01df25, 0x01df2a,
        0x01e000, 0x01e018,
        0x01e01b, 0x01e02a,
+       0x01e030, 0x01e06d,
+       0x01e08f, 0x01e08f,
        0x01e100, 0x01e12c,
        0x01e130, 0x01e13d,
        0x01e140, 0x01e149,
        0x01e14e, 0x01e14f,
+       0x01e290, 0x01e2ae,
        0x01e2c0, 0x01e2f9,
        0x01e2ff, 0x01e2ff,
-       0x01e800, 0x01e8c4,
+       0x01e4d0, 0x01e4f9,
+       0x01e7e0, 0x01e8c4,
        0x01e8c7, 0x01e8d6,
        0x01e900, 0x01e94b,
        0x01e950, 0x01e959,
@@ -568,11 +583,12 @@ var isPrint32 = []uint32{
        0x01f250, 0x01f251,
        0x01f260, 0x01f265,
        0x01f300, 0x01f6d7,
-       0x01f6e0, 0x01f6ec,
+       0x01f6dc, 0x01f6ec,
        0x01f6f0, 0x01f6fc,
-       0x01f700, 0x01f773,
-       0x01f780, 0x01f7d8,
+       0x01f700, 0x01f776,
+       0x01f77b, 0x01f7d9,
        0x01f7e0, 0x01f7eb,
+       0x01f7f0, 0x01f7f0,
        0x01f800, 0x01f80b,
        0x01f810, 0x01f847,
        0x01f850, 0x01f859,
@@ -581,22 +597,22 @@ var isPrint32 = []uint32{
        0x01f8b0, 0x01f8b1,
        0x01f900, 0x01fa53,
        0x01fa60, 0x01fa6d,
-       0x01fa70, 0x01fa74,
-       0x01fa78, 0x01fa7a,
-       0x01fa80, 0x01fa86,
-       0x01fa90, 0x01faa8,
-       0x01fab0, 0x01fab6,
-       0x01fac0, 0x01fac2,
-       0x01fad0, 0x01fad6,
+       0x01fa70, 0x01fa7c,
+       0x01fa80, 0x01fa88,
+       0x01fa90, 0x01fac5,
+       0x01face, 0x01fadb,
+       0x01fae0, 0x01fae8,
+       0x01faf0, 0x01faf8,
        0x01fb00, 0x01fbca,
        0x01fbf0, 0x01fbf9,
-       0x020000, 0x02a6dd,
-       0x02a700, 0x02b734,
+       0x020000, 0x02a6df,
+       0x02a700, 0x02b739,
        0x02b740, 0x02b81d,
        0x02b820, 0x02cea1,
        0x02ceb0, 0x02ebe0,
        0x02f800, 0x02fa1d,
        0x030000, 0x03134a,
+       0x031350, 0x0323af,
        0x0e0100, 0x0e01ef,
 }
 
@@ -607,6 +623,15 @@ var isNotPrint32 = []uint16{ // add 0x10000 to each entry
        0x003e,
        0x018f,
        0x039e,
+       0x057b,
+       0x058b,
+       0x0593,
+       0x0596,
+       0x05a2,
+       0x05b2,
+       0x05ba,
+       0x0786,
+       0x07b1,
        0x0809,
        0x0836,
        0x0856,
@@ -644,10 +669,15 @@ var isNotPrint32 = []uint16{ // add 0x10000 to each entry
        0x1d69,
        0x1d8f,
        0x1d92,
+       0x1f11,
        0x246f,
        0x6a5f,
+       0x6abf,
        0x6b5a,
        0x6b62,
+       0xaff4,
+       0xaffc,
+       0xafff,
        0xd455,
        0xd49d,
        0xd4ad,
@@ -665,6 +695,10 @@ var isNotPrint32 = []uint16{ // add 0x10000 to each entry
        0xe007,
        0xe022,
        0xe025,
+       0xe7e7,
+       0xe7ec,
+       0xe7ef,
+       0xe7ff,
        0xee04,
        0xee20,
        0xee23,
@@ -693,8 +727,7 @@ var isNotPrint32 = []uint16{ // add 0x10000 to each entry
        0xeeaa,
        0xf0c0,
        0xf0d0,
-       0xf979,
-       0xf9cc,
+       0xfabe,
        0xfb93,
 }
 
index 6b163f0ae10692895881dc464f9a0a7d62aae08d..40e3c5e0b44078f3fc5ae78647f0c6dfbd2967c5 100644 (file)
@@ -949,7 +949,7 @@ func TestJSEscaping(t *testing.T) {
                {`'foo`, `\'foo`},
                {`Go "jump" \`, `Go \"jump\" \\`},
                {`Yukihiro says "今日は世界"`, `Yukihiro says \"今日は世界\"`},
-               {"unprintable \uFDFF", `unprintable \uFDFF`},
+               {"unprintable \uFFFE", `unprintable \uFFFE`},
                {`<html>`, `\u003Chtml\u003E`},
                {`no = in attributes`, `no \u003D in attributes`},
                {`&#x27; does not become HTML entity`, `\u0026#x27; does not become HTML entity`},
index a9b23bfacd572459c4458374ff01407ae3638f7c..a0c0e1ca51c7ef841ec0978e9d4805d1a77aa93d 100644 (file)
@@ -3,7 +3,7 @@
 package unicode
 
 // Version is the Unicode edition from which the tables are derived.
-const Version = "13.0.0"
+const Version = "15.0.0"
 
 // Categories is the set of Unicode category tables.
 var Categories = map[string]*RangeTable{
@@ -52,7 +52,8 @@ var _C = &RangeTable{
                {0x00ad, 0x0600, 1363},
                {0x0601, 0x0605, 1},
                {0x061c, 0x06dd, 193},
-               {0x070f, 0x08e2, 467},
+               {0x070f, 0x0890, 385},
+               {0x0891, 0x08e2, 81},
                {0x180e, 0x200b, 2045},
                {0x200c, 0x200f, 1},
                {0x202a, 0x202e, 1},
@@ -64,7 +65,7 @@ var _C = &RangeTable{
        },
        R32: []Range32{
                {0x110bd, 0x110cd, 16},
-               {0x13430, 0x13438, 1},
+               {0x13430, 0x1343f, 1},
                {0x1bca0, 0x1bca3, 1},
                {0x1d173, 0x1d17a, 1},
                {0xe0001, 0xe0020, 31},
@@ -88,7 +89,8 @@ var _Cf = &RangeTable{
                {0x00ad, 0x0600, 1363},
                {0x0601, 0x0605, 1},
                {0x061c, 0x06dd, 193},
-               {0x070f, 0x08e2, 467},
+               {0x070f, 0x0890, 385},
+               {0x0891, 0x08e2, 81},
                {0x180e, 0x200b, 2045},
                {0x200c, 0x200f, 1},
                {0x202a, 0x202e, 1},
@@ -99,7 +101,7 @@ var _Cf = &RangeTable{
        },
        R32: []Range32{
                {0x110bd, 0x110cd, 16},
-               {0x13430, 0x13438, 1},
+               {0x13430, 0x1343f, 1},
                {0x1bca0, 0x1bca3, 1},
                {0x1d173, 0x1d17a, 1},
                {0xe0001, 0xe0020, 31},
@@ -169,8 +171,9 @@ var _L = &RangeTable{
                {0x0828, 0x0840, 24},
                {0x0841, 0x0858, 1},
                {0x0860, 0x086a, 1},
-               {0x08a0, 0x08b4, 1},
-               {0x08b6, 0x08c7, 1},
+               {0x0870, 0x0887, 1},
+               {0x0889, 0x088e, 1},
+               {0x08a0, 0x08c9, 1},
                {0x0904, 0x0939, 1},
                {0x093d, 0x0950, 19},
                {0x0958, 0x0961, 1},
@@ -231,17 +234,18 @@ var _L = &RangeTable{
                {0x0c2a, 0x0c39, 1},
                {0x0c3d, 0x0c58, 27},
                {0x0c59, 0x0c5a, 1},
-               {0x0c60, 0x0c61, 1},
-               {0x0c80, 0x0c85, 5},
-               {0x0c86, 0x0c8c, 1},
+               {0x0c5d, 0x0c60, 3},
+               {0x0c61, 0x0c80, 31},
+               {0x0c85, 0x0c8c, 1},
                {0x0c8e, 0x0c90, 1},
                {0x0c92, 0x0ca8, 1},
                {0x0caa, 0x0cb3, 1},
                {0x0cb5, 0x0cb9, 1},
-               {0x0cbd, 0x0cde, 33},
-               {0x0ce0, 0x0ce1, 1},
-               {0x0cf1, 0x0cf2, 1},
-               {0x0d04, 0x0d0c, 1},
+               {0x0cbd, 0x0cdd, 32},
+               {0x0cde, 0x0ce0, 2},
+               {0x0ce1, 0x0cf1, 16},
+               {0x0cf2, 0x0d04, 18},
+               {0x0d05, 0x0d0c, 1},
                {0x0d0e, 0x0d10, 1},
                {0x0d12, 0x0d3a, 1},
                {0x0d3d, 0x0d4e, 17},
@@ -307,9 +311,8 @@ var _L = &RangeTable{
                {0x1681, 0x169a, 1},
                {0x16a0, 0x16ea, 1},
                {0x16f1, 0x16f8, 1},
-               {0x1700, 0x170c, 1},
-               {0x170e, 0x1711, 1},
-               {0x1720, 0x1731, 1},
+               {0x1700, 0x1711, 1},
+               {0x171f, 0x1731, 1},
                {0x1740, 0x1751, 1},
                {0x1760, 0x176c, 1},
                {0x176e, 0x1770, 1},
@@ -329,7 +332,7 @@ var _L = &RangeTable{
                {0x1a20, 0x1a54, 1},
                {0x1aa7, 0x1b05, 94},
                {0x1b06, 0x1b33, 1},
-               {0x1b45, 0x1b4b, 1},
+               {0x1b45, 0x1b4c, 1},
                {0x1b83, 0x1ba0, 1},
                {0x1bae, 0x1baf, 1},
                {0x1bba, 0x1be5, 1},
@@ -374,9 +377,7 @@ var _L = &RangeTable{
                {0x2145, 0x2149, 1},
                {0x214e, 0x2183, 53},
                {0x2184, 0x2c00, 2684},
-               {0x2c01, 0x2c2e, 1},
-               {0x2c30, 0x2c5e, 1},
-               {0x2c60, 0x2ce4, 1},
+               {0x2c01, 0x2ce4, 1},
                {0x2ceb, 0x2cee, 1},
                {0x2cf2, 0x2cf3, 1},
                {0x2d00, 0x2d25, 1},
@@ -405,8 +406,7 @@ var _L = &RangeTable{
                {0x31a0, 0x31bf, 1},
                {0x31f0, 0x31ff, 1},
                {0x3400, 0x4dbf, 1},
-               {0x4e00, 0x9ffc, 1},
-               {0xa000, 0xa48c, 1},
+               {0x4e00, 0xa48c, 1},
                {0xa4d0, 0xa4fd, 1},
                {0xa500, 0xa60c, 1},
                {0xa610, 0xa61f, 1},
@@ -416,9 +416,11 @@ var _L = &RangeTable{
                {0xa6a0, 0xa6e5, 1},
                {0xa717, 0xa71f, 1},
                {0xa722, 0xa788, 1},
-               {0xa78b, 0xa7bf, 1},
-               {0xa7c2, 0xa7ca, 1},
-               {0xa7f5, 0xa801, 1},
+               {0xa78b, 0xa7ca, 1},
+               {0xa7d0, 0xa7d1, 1},
+               {0xa7d3, 0xa7d5, 2},
+               {0xa7d6, 0xa7d9, 1},
+               {0xa7f2, 0xa801, 1},
                {0xa803, 0xa805, 1},
                {0xa807, 0xa80a, 1},
                {0xa80c, 0xa822, 1},
@@ -507,9 +509,20 @@ var _L = &RangeTable{
                {0x104d8, 0x104fb, 1},
                {0x10500, 0x10527, 1},
                {0x10530, 0x10563, 1},
+               {0x10570, 0x1057a, 1},
+               {0x1057c, 0x1058a, 1},
+               {0x1058c, 0x10592, 1},
+               {0x10594, 0x10595, 1},
+               {0x10597, 0x105a1, 1},
+               {0x105a3, 0x105b1, 1},
+               {0x105b3, 0x105b9, 1},
+               {0x105bb, 0x105bc, 1},
                {0x10600, 0x10736, 1},
                {0x10740, 0x10755, 1},
                {0x10760, 0x10767, 1},
+               {0x10780, 0x10785, 1},
+               {0x10787, 0x107b0, 1},
+               {0x107b2, 0x107ba, 1},
                {0x10800, 0x10805, 1},
                {0x10808, 0x1080a, 2},
                {0x1080b, 0x10835, 1},
@@ -545,10 +558,13 @@ var _L = &RangeTable{
                {0x10f00, 0x10f1c, 1},
                {0x10f27, 0x10f30, 9},
                {0x10f31, 0x10f45, 1},
+               {0x10f70, 0x10f81, 1},
                {0x10fb0, 0x10fc4, 1},
                {0x10fe0, 0x10ff6, 1},
                {0x11003, 0x11037, 1},
-               {0x11083, 0x110af, 1},
+               {0x11071, 0x11072, 1},
+               {0x11075, 0x11083, 14},
+               {0x11084, 0x110af, 1},
                {0x110d0, 0x110e8, 1},
                {0x11103, 0x11126, 1},
                {0x11144, 0x11147, 3},
@@ -559,6 +575,7 @@ var _L = &RangeTable{
                {0x111da, 0x111dc, 2},
                {0x11200, 0x11211, 1},
                {0x11213, 0x1122b, 1},
+               {0x1123f, 0x11240, 1},
                {0x11280, 0x11286, 1},
                {0x11288, 0x1128a, 2},
                {0x1128b, 0x1128d, 1},
@@ -586,6 +603,7 @@ var _L = &RangeTable{
                {0x11681, 0x116aa, 1},
                {0x116b8, 0x11700, 72},
                {0x11701, 0x1171a, 1},
+               {0x11740, 0x11746, 1},
                {0x11800, 0x1182b, 1},
                {0x118a0, 0x118df, 1},
                {0x118ff, 0x11906, 1},
@@ -601,8 +619,8 @@ var _L = &RangeTable{
                {0x11a0c, 0x11a32, 1},
                {0x11a3a, 0x11a50, 22},
                {0x11a5c, 0x11a89, 1},
-               {0x11a9d, 0x11ac0, 35},
-               {0x11ac1, 0x11af8, 1},
+               {0x11a9d, 0x11ab0, 19},
+               {0x11ab1, 0x11af8, 1},
                {0x11c00, 0x11c08, 1},
                {0x11c0a, 0x11c2e, 1},
                {0x11c40, 0x11c72, 50},
@@ -616,13 +634,19 @@ var _L = &RangeTable{
                {0x11d6a, 0x11d89, 1},
                {0x11d98, 0x11ee0, 328},
                {0x11ee1, 0x11ef2, 1},
+               {0x11f02, 0x11f04, 2},
+               {0x11f05, 0x11f10, 1},
+               {0x11f12, 0x11f33, 1},
                {0x11fb0, 0x12000, 80},
                {0x12001, 0x12399, 1},
                {0x12480, 0x12543, 1},
-               {0x13000, 0x1342e, 1},
+               {0x12f90, 0x12ff0, 1},
+               {0x13000, 0x1342f, 1},
+               {0x13441, 0x13446, 1},
                {0x14400, 0x14646, 1},
                {0x16800, 0x16a38, 1},
                {0x16a40, 0x16a5e, 1},
+               {0x16a70, 0x16abe, 1},
                {0x16ad0, 0x16aed, 1},
                {0x16b00, 0x16b2f, 1},
                {0x16b40, 0x16b43, 1},
@@ -637,9 +661,14 @@ var _L = &RangeTable{
                {0x17001, 0x187f7, 1},
                {0x18800, 0x18cd5, 1},
                {0x18d00, 0x18d08, 1},
-               {0x1b000, 0x1b11e, 1},
-               {0x1b150, 0x1b152, 1},
-               {0x1b164, 0x1b167, 1},
+               {0x1aff0, 0x1aff3, 1},
+               {0x1aff5, 0x1affb, 1},
+               {0x1affd, 0x1affe, 1},
+               {0x1b000, 0x1b122, 1},
+               {0x1b132, 0x1b150, 30},
+               {0x1b151, 0x1b152, 1},
+               {0x1b155, 0x1b164, 15},
+               {0x1b165, 0x1b167, 1},
                {0x1b170, 0x1b2fb, 1},
                {0x1bc00, 0x1bc6a, 1},
                {0x1bc70, 0x1bc7c, 1},
@@ -675,10 +704,19 @@ var _L = &RangeTable{
                {0x1d78a, 0x1d7a8, 1},
                {0x1d7aa, 0x1d7c2, 1},
                {0x1d7c4, 0x1d7cb, 1},
+               {0x1df00, 0x1df1e, 1},
+               {0x1df25, 0x1df2a, 1},
+               {0x1e030, 0x1e06d, 1},
                {0x1e100, 0x1e12c, 1},
                {0x1e137, 0x1e13d, 1},
-               {0x1e14e, 0x1e2c0, 370},
-               {0x1e2c1, 0x1e2eb, 1},
+               {0x1e14e, 0x1e290, 322},
+               {0x1e291, 0x1e2ad, 1},
+               {0x1e2c0, 0x1e2eb, 1},
+               {0x1e4d0, 0x1e4eb, 1},
+               {0x1e7e0, 0x1e7e6, 1},
+               {0x1e7e8, 0x1e7eb, 1},
+               {0x1e7ed, 0x1e7ee, 1},
+               {0x1e7f0, 0x1e7fe, 1},
                {0x1e800, 0x1e8c4, 1},
                {0x1e900, 0x1e943, 1},
                {0x1e94b, 0x1ee00, 1205},
@@ -706,13 +744,14 @@ var _L = &RangeTable{
                {0x1eea1, 0x1eea3, 1},
                {0x1eea5, 0x1eea9, 1},
                {0x1eeab, 0x1eebb, 1},
-               {0x20000, 0x2a6dd, 1},
-               {0x2a700, 0x2b734, 1},
+               {0x20000, 0x2a6df, 1},
+               {0x2a700, 0x2b739, 1},
                {0x2b740, 0x2b81d, 1},
                {0x2b820, 0x2cea1, 1},
                {0x2ceb0, 0x2ebe0, 1},
                {0x2f800, 0x2fa1d, 1},
                {0x30000, 0x3134a, 1},
+               {0x31350, 0x323af, 1},
        },
        LatinOffset: 6,
 }
@@ -807,7 +846,7 @@ var _Ll = &RangeTable{
                {0x213c, 0x213d, 1},
                {0x2146, 0x2149, 1},
                {0x214e, 0x2184, 54},
-               {0x2c30, 0x2c5e, 1},
+               {0x2c30, 0x2c5f, 1},
                {0x2c61, 0x2c65, 4},
                {0x2c66, 0x2c6c, 2},
                {0x2c71, 0x2c73, 2},
@@ -831,11 +870,11 @@ var _Ll = &RangeTable{
                {0xa794, 0xa795, 1},
                {0xa797, 0xa7a9, 2},
                {0xa7af, 0xa7b5, 6},
-               {0xa7b7, 0xa7bf, 2},
-               {0xa7c3, 0xa7c8, 5},
-               {0xa7ca, 0xa7f6, 44},
-               {0xa7fa, 0xab30, 822},
-               {0xab31, 0xab5a, 1},
+               {0xa7b7, 0xa7c3, 2},
+               {0xa7c8, 0xa7ca, 2},
+               {0xa7d1, 0xa7d9, 2},
+               {0xa7f6, 0xa7fa, 4},
+               {0xab30, 0xab5a, 1},
                {0xab60, 0xab68, 1},
                {0xab70, 0xabbf, 1},
                {0xfb00, 0xfb06, 1},
@@ -845,6 +884,10 @@ var _Ll = &RangeTable{
        R32: []Range32{
                {0x10428, 0x1044f, 1},
                {0x104d8, 0x104fb, 1},
+               {0x10597, 0x105a1, 1},
+               {0x105a3, 0x105b1, 1},
+               {0x105b3, 0x105b9, 1},
+               {0x105bb, 0x105bc, 1},
                {0x10cc0, 0x10cf2, 1},
                {0x118c0, 0x118df, 1},
                {0x16e60, 0x16e7f, 1},
@@ -875,8 +918,11 @@ var _Ll = &RangeTable{
                {0x1d78a, 0x1d78f, 1},
                {0x1d7aa, 0x1d7c2, 1},
                {0x1d7c4, 0x1d7c9, 1},
-               {0x1d7cb, 0x1e922, 4439},
-               {0x1e923, 0x1e943, 1},
+               {0x1d7cb, 0x1df00, 1845},
+               {0x1df01, 0x1df09, 1},
+               {0x1df0b, 0x1df1e, 1},
+               {0x1df25, 0x1df2a, 1},
+               {0x1e922, 0x1e943, 1},
        },
        LatinOffset: 4,
 }
@@ -893,11 +939,11 @@ var _Lm = &RangeTable{
                {0x07f4, 0x07f5, 1},
                {0x07fa, 0x081a, 32},
                {0x0824, 0x0828, 4},
-               {0x0971, 0x0e46, 1237},
-               {0x0ec6, 0x10fc, 566},
-               {0x17d7, 0x1843, 108},
-               {0x1aa7, 0x1c78, 465},
-               {0x1c79, 0x1c7d, 1},
+               {0x08c9, 0x0971, 168},
+               {0x0e46, 0x0ec6, 128},
+               {0x10fc, 0x17d7, 1755},
+               {0x1843, 0x1aa7, 612},
+               {0x1c78, 0x1c7d, 1},
                {0x1d2c, 0x1d6a, 1},
                {0x1d78, 0x1d9b, 35},
                {0x1d9c, 0x1dbf, 1},
@@ -916,6 +962,7 @@ var _Lm = &RangeTable{
                {0xa69c, 0xa69d, 1},
                {0xa717, 0xa71f, 1},
                {0xa770, 0xa788, 24},
+               {0xa7f2, 0xa7f4, 1},
                {0xa7f8, 0xa7f9, 1},
                {0xa9cf, 0xa9e6, 23},
                {0xaa70, 0xaadd, 109},
@@ -925,12 +972,19 @@ var _Lm = &RangeTable{
                {0xff9e, 0xff9f, 1},
        },
        R32: []Range32{
+               {0x10780, 0x10785, 1},
+               {0x10787, 0x107b0, 1},
+               {0x107b2, 0x107ba, 1},
                {0x16b40, 0x16b43, 1},
                {0x16f93, 0x16f9f, 1},
                {0x16fe0, 0x16fe1, 1},
-               {0x16fe3, 0x1e137, 29012},
-               {0x1e138, 0x1e13d, 1},
-               {0x1e94b, 0x1e94b, 1},
+               {0x16fe3, 0x1aff0, 16397},
+               {0x1aff1, 0x1aff3, 1},
+               {0x1aff5, 0x1affb, 1},
+               {0x1affd, 0x1affe, 1},
+               {0x1e030, 0x1e06d, 1},
+               {0x1e137, 0x1e13d, 1},
+               {0x1e4eb, 0x1e94b, 1120},
        },
 }
 
@@ -957,8 +1011,9 @@ var _Lo = &RangeTable{
                {0x0800, 0x0815, 1},
                {0x0840, 0x0858, 1},
                {0x0860, 0x086a, 1},
-               {0x08a0, 0x08b4, 1},
-               {0x08b6, 0x08c7, 1},
+               {0x0870, 0x0887, 1},
+               {0x0889, 0x088e, 1},
+               {0x08a0, 0x08c8, 1},
                {0x0904, 0x0939, 1},
                {0x093d, 0x0950, 19},
                {0x0958, 0x0961, 1},
@@ -1019,17 +1074,18 @@ var _Lo = &RangeTable{
                {0x0c2a, 0x0c39, 1},
                {0x0c3d, 0x0c58, 27},
                {0x0c59, 0x0c5a, 1},
-               {0x0c60, 0x0c61, 1},
-               {0x0c80, 0x0c85, 5},
-               {0x0c86, 0x0c8c, 1},
+               {0x0c5d, 0x0c60, 3},
+               {0x0c61, 0x0c80, 31},
+               {0x0c85, 0x0c8c, 1},
                {0x0c8e, 0x0c90, 1},
                {0x0c92, 0x0ca8, 1},
                {0x0caa, 0x0cb3, 1},
                {0x0cb5, 0x0cb9, 1},
-               {0x0cbd, 0x0cde, 33},
-               {0x0ce0, 0x0ce1, 1},
-               {0x0cf1, 0x0cf2, 1},
-               {0x0d04, 0x0d0c, 1},
+               {0x0cbd, 0x0cdd, 32},
+               {0x0cde, 0x0ce0, 2},
+               {0x0ce1, 0x0cf1, 16},
+               {0x0cf2, 0x0d04, 18},
+               {0x0d05, 0x0d0c, 1},
                {0x0d0e, 0x0d10, 1},
                {0x0d12, 0x0d3a, 1},
                {0x0d3d, 0x0d4e, 17},
@@ -1089,9 +1145,8 @@ var _Lo = &RangeTable{
                {0x1681, 0x169a, 1},
                {0x16a0, 0x16ea, 1},
                {0x16f1, 0x16f8, 1},
-               {0x1700, 0x170c, 1},
-               {0x170e, 0x1711, 1},
-               {0x1720, 0x1731, 1},
+               {0x1700, 0x1711, 1},
+               {0x171f, 0x1731, 1},
                {0x1740, 0x1751, 1},
                {0x1760, 0x176c, 1},
                {0x176e, 0x1770, 1},
@@ -1111,7 +1166,7 @@ var _Lo = &RangeTable{
                {0x1a00, 0x1a16, 1},
                {0x1a20, 0x1a54, 1},
                {0x1b05, 0x1b33, 1},
-               {0x1b45, 0x1b4b, 1},
+               {0x1b45, 0x1b4c, 1},
                {0x1b83, 0x1ba0, 1},
                {0x1bae, 0x1baf, 1},
                {0x1bba, 0x1be5, 1},
@@ -1143,8 +1198,7 @@ var _Lo = &RangeTable{
                {0x31a0, 0x31bf, 1},
                {0x31f0, 0x31ff, 1},
                {0x3400, 0x4dbf, 1},
-               {0x4e00, 0x9ffc, 1},
-               {0xa000, 0xa014, 1},
+               {0x4e00, 0xa014, 1},
                {0xa016, 0xa48c, 1},
                {0xa4d0, 0xa4f7, 1},
                {0xa500, 0xa60b, 1},
@@ -1272,10 +1326,13 @@ var _Lo = &RangeTable{
                {0x10f00, 0x10f1c, 1},
                {0x10f27, 0x10f30, 9},
                {0x10f31, 0x10f45, 1},
+               {0x10f70, 0x10f81, 1},
                {0x10fb0, 0x10fc4, 1},
                {0x10fe0, 0x10ff6, 1},
                {0x11003, 0x11037, 1},
-               {0x11083, 0x110af, 1},
+               {0x11071, 0x11072, 1},
+               {0x11075, 0x11083, 14},
+               {0x11084, 0x110af, 1},
                {0x110d0, 0x110e8, 1},
                {0x11103, 0x11126, 1},
                {0x11144, 0x11147, 3},
@@ -1286,6 +1343,7 @@ var _Lo = &RangeTable{
                {0x111da, 0x111dc, 2},
                {0x11200, 0x11211, 1},
                {0x11213, 0x1122b, 1},
+               {0x1123f, 0x11240, 1},
                {0x11280, 0x11286, 1},
                {0x11288, 0x1128a, 2},
                {0x1128b, 0x1128d, 1},
@@ -1313,6 +1371,7 @@ var _Lo = &RangeTable{
                {0x11681, 0x116aa, 1},
                {0x116b8, 0x11700, 72},
                {0x11701, 0x1171a, 1},
+               {0x11740, 0x11746, 1},
                {0x11800, 0x1182b, 1},
                {0x118ff, 0x11906, 1},
                {0x11909, 0x1190c, 3},
@@ -1327,8 +1386,8 @@ var _Lo = &RangeTable{
                {0x11a0c, 0x11a32, 1},
                {0x11a3a, 0x11a50, 22},
                {0x11a5c, 0x11a89, 1},
-               {0x11a9d, 0x11ac0, 35},
-               {0x11ac1, 0x11af8, 1},
+               {0x11a9d, 0x11ab0, 19},
+               {0x11ab1, 0x11af8, 1},
                {0x11c00, 0x11c08, 1},
                {0x11c0a, 0x11c2e, 1},
                {0x11c40, 0x11c72, 50},
@@ -1342,13 +1401,19 @@ var _Lo = &RangeTable{
                {0x11d6a, 0x11d89, 1},
                {0x11d98, 0x11ee0, 328},
                {0x11ee1, 0x11ef2, 1},
+               {0x11f02, 0x11f04, 2},
+               {0x11f05, 0x11f10, 1},
+               {0x11f12, 0x11f33, 1},
                {0x11fb0, 0x12000, 80},
                {0x12001, 0x12399, 1},
                {0x12480, 0x12543, 1},
-               {0x13000, 0x1342e, 1},
+               {0x12f90, 0x12ff0, 1},
+               {0x13000, 0x1342f, 1},
+               {0x13441, 0x13446, 1},
                {0x14400, 0x14646, 1},
                {0x16800, 0x16a38, 1},
                {0x16a40, 0x16a5e, 1},
+               {0x16a70, 0x16abe, 1},
                {0x16ad0, 0x16aed, 1},
                {0x16b00, 0x16b2f, 1},
                {0x16b63, 0x16b77, 1},
@@ -1358,17 +1423,26 @@ var _Lo = &RangeTable{
                {0x17001, 0x187f7, 1},
                {0x18800, 0x18cd5, 1},
                {0x18d00, 0x18d08, 1},
-               {0x1b000, 0x1b11e, 1},
-               {0x1b150, 0x1b152, 1},
-               {0x1b164, 0x1b167, 1},
+               {0x1b000, 0x1b122, 1},
+               {0x1b132, 0x1b150, 30},
+               {0x1b151, 0x1b152, 1},
+               {0x1b155, 0x1b164, 15},
+               {0x1b165, 0x1b167, 1},
                {0x1b170, 0x1b2fb, 1},
                {0x1bc00, 0x1bc6a, 1},
                {0x1bc70, 0x1bc7c, 1},
                {0x1bc80, 0x1bc88, 1},
                {0x1bc90, 0x1bc99, 1},
-               {0x1e100, 0x1e12c, 1},
-               {0x1e14e, 0x1e2c0, 370},
-               {0x1e2c1, 0x1e2eb, 1},
+               {0x1df0a, 0x1e100, 502},
+               {0x1e101, 0x1e12c, 1},
+               {0x1e14e, 0x1e290, 322},
+               {0x1e291, 0x1e2ad, 1},
+               {0x1e2c0, 0x1e2eb, 1},
+               {0x1e4d0, 0x1e4ea, 1},
+               {0x1e7e0, 0x1e7e6, 1},
+               {0x1e7e8, 0x1e7eb, 1},
+               {0x1e7ed, 0x1e7ee, 1},
+               {0x1e7f0, 0x1e7fe, 1},
                {0x1e800, 0x1e8c4, 1},
                {0x1ee00, 0x1ee03, 1},
                {0x1ee05, 0x1ee1f, 1},
@@ -1394,13 +1468,14 @@ var _Lo = &RangeTable{
                {0x1eea1, 0x1eea3, 1},
                {0x1eea5, 0x1eea9, 1},
                {0x1eeab, 0x1eebb, 1},
-               {0x20000, 0x2a6dd, 1},
-               {0x2a700, 0x2b734, 1},
+               {0x20000, 0x2a6df, 1},
+               {0x2a700, 0x2b739, 1},
                {0x2b740, 0x2b81d, 1},
                {0x2b820, 0x2cea1, 1},
                {0x2ceb0, 0x2ebe0, 1},
                {0x2f800, 0x2fa1d, 1},
                {0x30000, 0x3134a, 1},
+               {0x31350, 0x323af, 1},
        },
        LatinOffset: 1,
 }
@@ -1501,7 +1576,7 @@ var _Lu = &RangeTable{
                {0x2130, 0x2133, 1},
                {0x213e, 0x213f, 1},
                {0x2145, 0x2183, 62},
-               {0x2c00, 0x2c2e, 1},
+               {0x2c00, 0x2c2f, 1},
                {0x2c60, 0x2c62, 2},
                {0x2c63, 0x2c64, 1},
                {0x2c67, 0x2c6d, 2},
@@ -1522,15 +1597,20 @@ var _Lu = &RangeTable{
                {0xa796, 0xa7aa, 2},
                {0xa7ab, 0xa7ae, 1},
                {0xa7b0, 0xa7b4, 1},
-               {0xa7b6, 0xa7be, 2},
-               {0xa7c2, 0xa7c4, 2},
+               {0xa7b6, 0xa7c4, 2},
                {0xa7c5, 0xa7c7, 1},
-               {0xa7c9, 0xa7f5, 44},
-               {0xff21, 0xff3a, 1},
+               {0xa7c9, 0xa7d0, 7},
+               {0xa7d6, 0xa7d8, 2},
+               {0xa7f5, 0xff21, 22316},
+               {0xff22, 0xff3a, 1},
        },
        R32: []Range32{
                {0x10400, 0x10427, 1},
                {0x104b0, 0x104d3, 1},
+               {0x10570, 0x1057a, 1},
+               {0x1057c, 0x1058a, 1},
+               {0x1058c, 0x10592, 1},
+               {0x10594, 0x10595, 1},
                {0x10c80, 0x10cb2, 1},
                {0x118a0, 0x118bf, 1},
                {0x16e40, 0x16e5f, 1},
@@ -1594,7 +1674,8 @@ var _M = &RangeTable{
                {0x0825, 0x0827, 1},
                {0x0829, 0x082d, 1},
                {0x0859, 0x085b, 1},
-               {0x08d3, 0x08e1, 1},
+               {0x0898, 0x089f, 1},
+               {0x08ca, 0x08e1, 1},
                {0x08e3, 0x0903, 1},
                {0x093a, 0x093c, 1},
                {0x093e, 0x094f, 1},
@@ -1634,7 +1715,8 @@ var _M = &RangeTable{
                {0x0bca, 0x0bcd, 1},
                {0x0bd7, 0x0c00, 41},
                {0x0c01, 0x0c04, 1},
-               {0x0c3e, 0x0c44, 1},
+               {0x0c3c, 0x0c3e, 2},
+               {0x0c3f, 0x0c44, 1},
                {0x0c46, 0x0c48, 1},
                {0x0c4a, 0x0c4d, 1},
                {0x0c55, 0x0c56, 1},
@@ -1646,7 +1728,8 @@ var _M = &RangeTable{
                {0x0cca, 0x0ccd, 1},
                {0x0cd5, 0x0cd6, 1},
                {0x0ce2, 0x0ce3, 1},
-               {0x0d00, 0x0d03, 1},
+               {0x0cf3, 0x0d00, 13},
+               {0x0d01, 0x0d03, 1},
                {0x0d3b, 0x0d3c, 1},
                {0x0d3e, 0x0d44, 1},
                {0x0d46, 0x0d48, 1},
@@ -1664,7 +1747,7 @@ var _M = &RangeTable{
                {0x0e47, 0x0e4e, 1},
                {0x0eb1, 0x0eb4, 3},
                {0x0eb5, 0x0ebc, 1},
-               {0x0ec8, 0x0ecd, 1},
+               {0x0ec8, 0x0ece, 1},
                {0x0f18, 0x0f19, 1},
                {0x0f35, 0x0f39, 2},
                {0x0f3e, 0x0f3f, 1},
@@ -1683,22 +1766,22 @@ var _M = &RangeTable{
                {0x108f, 0x109a, 11},
                {0x109b, 0x109d, 1},
                {0x135d, 0x135f, 1},
-               {0x1712, 0x1714, 1},
+               {0x1712, 0x1715, 1},
                {0x1732, 0x1734, 1},
                {0x1752, 0x1753, 1},
                {0x1772, 0x1773, 1},
                {0x17b4, 0x17d3, 1},
                {0x17dd, 0x180b, 46},
                {0x180c, 0x180d, 1},
-               {0x1885, 0x1886, 1},
-               {0x18a9, 0x1920, 119},
-               {0x1921, 0x192b, 1},
+               {0x180f, 0x1885, 118},
+               {0x1886, 0x18a9, 35},
+               {0x1920, 0x192b, 1},
                {0x1930, 0x193b, 1},
                {0x1a17, 0x1a1b, 1},
                {0x1a55, 0x1a5e, 1},
                {0x1a60, 0x1a7c, 1},
                {0x1a7f, 0x1ab0, 49},
-               {0x1ab1, 0x1ac0, 1},
+               {0x1ab1, 0x1ace, 1},
                {0x1b00, 0x1b04, 1},
                {0x1b34, 0x1b44, 1},
                {0x1b6b, 0x1b73, 1},
@@ -1710,8 +1793,7 @@ var _M = &RangeTable{
                {0x1cd4, 0x1ce8, 1},
                {0x1ced, 0x1cf4, 7},
                {0x1cf7, 0x1cf9, 1},
-               {0x1dc0, 0x1df9, 1},
-               {0x1dfb, 0x1dff, 1},
+               {0x1dc0, 0x1dff, 1},
                {0x20d0, 0x20f0, 1},
                {0x2cef, 0x2cf1, 1},
                {0x2d7f, 0x2de0, 97},
@@ -1763,12 +1845,17 @@ var _M = &RangeTable{
                {0x10ae6, 0x10d24, 574},
                {0x10d25, 0x10d27, 1},
                {0x10eab, 0x10eac, 1},
+               {0x10efd, 0x10eff, 1},
                {0x10f46, 0x10f50, 1},
+               {0x10f82, 0x10f85, 1},
                {0x11000, 0x11002, 1},
                {0x11038, 0x11046, 1},
-               {0x1107f, 0x11082, 1},
+               {0x11070, 0x11073, 3},
+               {0x11074, 0x1107f, 11},
+               {0x11080, 0x11082, 1},
                {0x110b0, 0x110ba, 1},
-               {0x11100, 0x11102, 1},
+               {0x110c2, 0x11100, 62},
+               {0x11101, 0x11102, 1},
                {0x11127, 0x11134, 1},
                {0x11145, 0x11146, 1},
                {0x11173, 0x11180, 13},
@@ -1777,8 +1864,8 @@ var _M = &RangeTable{
                {0x111c9, 0x111cc, 1},
                {0x111ce, 0x111cf, 1},
                {0x1122c, 0x11237, 1},
-               {0x1123e, 0x112df, 161},
-               {0x112e0, 0x112ea, 1},
+               {0x1123e, 0x11241, 3},
+               {0x112df, 0x112ea, 1},
                {0x11300, 0x11303, 1},
                {0x1133b, 0x1133c, 1},
                {0x1133e, 0x11344, 1},
@@ -1825,6 +1912,12 @@ var _M = &RangeTable{
                {0x11d90, 0x11d91, 1},
                {0x11d93, 0x11d97, 1},
                {0x11ef3, 0x11ef6, 1},
+               {0x11f00, 0x11f01, 1},
+               {0x11f03, 0x11f34, 49},
+               {0x11f35, 0x11f3a, 1},
+               {0x11f3e, 0x11f42, 1},
+               {0x13440, 0x13447, 7},
+               {0x13448, 0x13455, 1},
                {0x16af0, 0x16af4, 1},
                {0x16b30, 0x16b36, 1},
                {0x16f4f, 0x16f51, 2},
@@ -1832,8 +1925,10 @@ var _M = &RangeTable{
                {0x16f8f, 0x16f92, 1},
                {0x16fe4, 0x16ff0, 12},
                {0x16ff1, 0x1bc9d, 19628},
-               {0x1bc9e, 0x1d165, 5319},
-               {0x1d166, 0x1d169, 1},
+               {0x1bc9e, 0x1cf00, 4706},
+               {0x1cf01, 0x1cf2d, 1},
+               {0x1cf30, 0x1cf46, 1},
+               {0x1d165, 0x1d169, 1},
                {0x1d16d, 0x1d172, 1},
                {0x1d17b, 0x1d182, 1},
                {0x1d185, 0x1d18b, 1},
@@ -1849,8 +1944,11 @@ var _M = &RangeTable{
                {0x1e01b, 0x1e021, 1},
                {0x1e023, 0x1e024, 1},
                {0x1e026, 0x1e02a, 1},
-               {0x1e130, 0x1e136, 1},
-               {0x1e2ec, 0x1e2ef, 1},
+               {0x1e08f, 0x1e130, 161},
+               {0x1e131, 0x1e136, 1},
+               {0x1e2ae, 0x1e2ec, 62},
+               {0x1e2ed, 0x1e2ef, 1},
+               {0x1e4ec, 0x1e4ef, 1},
                {0x1e8d0, 0x1e8d6, 1},
                {0x1e944, 0x1e94a, 1},
                {0xe0100, 0xe01ef, 1},
@@ -1890,8 +1988,9 @@ var _Mc = &RangeTable{
                {0x0cc7, 0x0cc8, 1},
                {0x0cca, 0x0ccb, 1},
                {0x0cd5, 0x0cd6, 1},
-               {0x0d02, 0x0d03, 1},
-               {0x0d3e, 0x0d40, 1},
+               {0x0cf3, 0x0d02, 15},
+               {0x0d03, 0x0d3e, 59},
+               {0x0d3f, 0x0d40, 1},
                {0x0d46, 0x0d48, 1},
                {0x0d4a, 0x0d4c, 1},
                {0x0d57, 0x0d82, 43},
@@ -1911,6 +2010,7 @@ var _Mc = &RangeTable{
                {0x1087, 0x108c, 1},
                {0x108f, 0x109a, 11},
                {0x109b, 0x109c, 1},
+               {0x1715, 0x1734, 31},
                {0x17b6, 0x17be, 8},
                {0x17bf, 0x17c5, 1},
                {0x17c7, 0x17c8, 1},
@@ -2009,7 +2109,10 @@ var _Mc = &RangeTable{
                {0x11d8a, 0x11d8e, 1},
                {0x11d93, 0x11d94, 1},
                {0x11d96, 0x11ef5, 351},
-               {0x11ef6, 0x16f51, 20571},
+               {0x11ef6, 0x11f03, 13},
+               {0x11f34, 0x11f35, 1},
+               {0x11f3e, 0x11f3f, 1},
+               {0x11f41, 0x16f51, 20496},
                {0x16f52, 0x16f87, 1},
                {0x16ff0, 0x16ff1, 1},
                {0x1d165, 0x1d166, 1},
@@ -2052,7 +2155,8 @@ var _Mn = &RangeTable{
                {0x0825, 0x0827, 1},
                {0x0829, 0x082d, 1},
                {0x0859, 0x085b, 1},
-               {0x08d3, 0x08e1, 1},
+               {0x0898, 0x089f, 1},
+               {0x08ca, 0x08e1, 1},
                {0x08e3, 0x0902, 1},
                {0x093a, 0x093c, 2},
                {0x0941, 0x0948, 1},
@@ -2085,7 +2189,8 @@ var _Mn = &RangeTable{
                {0x0b63, 0x0b82, 31},
                {0x0bc0, 0x0bcd, 13},
                {0x0c00, 0x0c04, 4},
-               {0x0c3e, 0x0c40, 1},
+               {0x0c3c, 0x0c3e, 2},
+               {0x0c3f, 0x0c40, 1},
                {0x0c46, 0x0c48, 1},
                {0x0c4a, 0x0c4d, 1},
                {0x0c55, 0x0c56, 1},
@@ -2106,7 +2211,7 @@ var _Mn = &RangeTable{
                {0x0e47, 0x0e4e, 1},
                {0x0eb1, 0x0eb4, 3},
                {0x0eb5, 0x0ebc, 1},
-               {0x0ec8, 0x0ecd, 1},
+               {0x0ec8, 0x0ece, 1},
                {0x0f18, 0x0f19, 1},
                {0x0f35, 0x0f39, 2},
                {0x0f71, 0x0f7e, 1},
@@ -2127,7 +2232,7 @@ var _Mn = &RangeTable{
                {0x109d, 0x135d, 704},
                {0x135e, 0x135f, 1},
                {0x1712, 0x1714, 1},
-               {0x1732, 0x1734, 1},
+               {0x1732, 0x1733, 1},
                {0x1752, 0x1753, 1},
                {0x1772, 0x1773, 1},
                {0x17b4, 0x17b5, 1},
@@ -2136,9 +2241,9 @@ var _Mn = &RangeTable{
                {0x17ca, 0x17d3, 1},
                {0x17dd, 0x180b, 46},
                {0x180c, 0x180d, 1},
-               {0x1885, 0x1886, 1},
-               {0x18a9, 0x1920, 119},
-               {0x1921, 0x1922, 1},
+               {0x180f, 0x1885, 118},
+               {0x1886, 0x18a9, 35},
+               {0x1920, 0x1922, 1},
                {0x1927, 0x1928, 1},
                {0x1932, 0x1939, 7},
                {0x193a, 0x193b, 1},
@@ -2150,7 +2255,7 @@ var _Mn = &RangeTable{
                {0x1a73, 0x1a7c, 1},
                {0x1a7f, 0x1ab0, 49},
                {0x1ab1, 0x1abd, 1},
-               {0x1abf, 0x1ac0, 1},
+               {0x1abf, 0x1ace, 1},
                {0x1b00, 0x1b03, 1},
                {0x1b34, 0x1b36, 2},
                {0x1b37, 0x1b3a, 1},
@@ -2170,8 +2275,7 @@ var _Mn = &RangeTable{
                {0x1ce2, 0x1ce8, 1},
                {0x1ced, 0x1cf4, 7},
                {0x1cf8, 0x1cf9, 1},
-               {0x1dc0, 0x1df9, 1},
-               {0x1dfb, 0x1dff, 1},
+               {0x1dc0, 0x1dff, 1},
                {0x20d0, 0x20dc, 1},
                {0x20e1, 0x20e5, 4},
                {0x20e6, 0x20f0, 1},
@@ -2223,13 +2327,18 @@ var _Mn = &RangeTable{
                {0x10ae6, 0x10d24, 574},
                {0x10d25, 0x10d27, 1},
                {0x10eab, 0x10eac, 1},
+               {0x10efd, 0x10eff, 1},
                {0x10f46, 0x10f50, 1},
+               {0x10f82, 0x10f85, 1},
                {0x11001, 0x11038, 55},
                {0x11039, 0x11046, 1},
-               {0x1107f, 0x11081, 1},
+               {0x11070, 0x11073, 3},
+               {0x11074, 0x1107f, 11},
+               {0x11080, 0x11081, 1},
                {0x110b3, 0x110b6, 1},
                {0x110b9, 0x110ba, 1},
-               {0x11100, 0x11102, 1},
+               {0x110c2, 0x11100, 62},
+               {0x11101, 0x11102, 1},
                {0x11127, 0x1112b, 1},
                {0x1112d, 0x11134, 1},
                {0x11173, 0x11180, 13},
@@ -2240,8 +2349,8 @@ var _Mn = &RangeTable{
                {0x11230, 0x11231, 1},
                {0x11234, 0x11236, 2},
                {0x11237, 0x1123e, 7},
-               {0x112df, 0x112e3, 4},
-               {0x112e4, 0x112ea, 1},
+               {0x11241, 0x112df, 158},
+               {0x112e3, 0x112ea, 1},
                {0x11300, 0x11301, 1},
                {0x1133b, 0x1133c, 1},
                {0x11340, 0x11366, 38},
@@ -2296,14 +2405,21 @@ var _Mn = &RangeTable{
                {0x11d47, 0x11d90, 73},
                {0x11d91, 0x11d95, 4},
                {0x11d97, 0x11ef3, 348},
-               {0x11ef4, 0x16af0, 19452},
-               {0x16af1, 0x16af4, 1},
+               {0x11ef4, 0x11f00, 12},
+               {0x11f01, 0x11f36, 53},
+               {0x11f37, 0x11f3a, 1},
+               {0x11f40, 0x11f42, 2},
+               {0x13440, 0x13447, 7},
+               {0x13448, 0x13455, 1},
+               {0x16af0, 0x16af4, 1},
                {0x16b30, 0x16b36, 1},
                {0x16f4f, 0x16f8f, 64},
                {0x16f90, 0x16f92, 1},
                {0x16fe4, 0x1bc9d, 19641},
-               {0x1bc9e, 0x1d167, 5321},
-               {0x1d168, 0x1d169, 1},
+               {0x1bc9e, 0x1cf00, 4706},
+               {0x1cf01, 0x1cf2d, 1},
+               {0x1cf30, 0x1cf46, 1},
+               {0x1d167, 0x1d169, 1},
                {0x1d17b, 0x1d182, 1},
                {0x1d185, 0x1d18b, 1},
                {0x1d1aa, 0x1d1ad, 1},
@@ -2318,8 +2434,11 @@ var _Mn = &RangeTable{
                {0x1e01b, 0x1e021, 1},
                {0x1e023, 0x1e024, 1},
                {0x1e026, 0x1e02a, 1},
-               {0x1e130, 0x1e136, 1},
-               {0x1e2ec, 0x1e2ef, 1},
+               {0x1e08f, 0x1e130, 161},
+               {0x1e131, 0x1e136, 1},
+               {0x1e2ae, 0x1e2ec, 62},
+               {0x1e2ed, 0x1e2ef, 1},
+               {0x1e4ec, 0x1e4ef, 1},
                {0x1e8d0, 0x1e8d6, 1},
                {0x1e944, 0x1e94a, 1},
                {0xe0100, 0xe01ef, 1},
@@ -2441,17 +2560,21 @@ var _N = &RangeTable{
                {0x11c50, 0x11c6c, 1},
                {0x11d50, 0x11d59, 1},
                {0x11da0, 0x11da9, 1},
+               {0x11f50, 0x11f59, 1},
                {0x11fc0, 0x11fd4, 1},
                {0x12400, 0x1246e, 1},
                {0x16a60, 0x16a69, 1},
+               {0x16ac0, 0x16ac9, 1},
                {0x16b50, 0x16b59, 1},
                {0x16b5b, 0x16b61, 1},
                {0x16e80, 0x16e96, 1},
+               {0x1d2c0, 0x1d2d3, 1},
                {0x1d2e0, 0x1d2f3, 1},
                {0x1d360, 0x1d378, 1},
                {0x1d7ce, 0x1d7ff, 1},
                {0x1e140, 0x1e149, 1},
                {0x1e2f0, 0x1e2f9, 1},
+               {0x1e4f0, 0x1e4f9, 1},
                {0x1e8c7, 0x1e8cf, 1},
                {0x1e950, 0x1e959, 1},
                {0x1ec71, 0x1ecab, 1},
@@ -2523,11 +2646,14 @@ var _Nd = &RangeTable{
                {0x11c50, 0x11c59, 1},
                {0x11d50, 0x11d59, 1},
                {0x11da0, 0x11da9, 1},
+               {0x11f50, 0x11f59, 1},
                {0x16a60, 0x16a69, 1},
+               {0x16ac0, 0x16ac9, 1},
                {0x16b50, 0x16b59, 1},
                {0x1d7ce, 0x1d7ff, 1},
                {0x1e140, 0x1e149, 1},
                {0x1e2f0, 0x1e2f9, 1},
+               {0x1e4f0, 0x1e4f9, 1},
                {0x1e950, 0x1e959, 1},
                {0x1fbf0, 0x1fbf9, 1},
        },
@@ -2617,6 +2743,7 @@ var _No = &RangeTable{
                {0x11fc0, 0x11fd4, 1},
                {0x16b5b, 0x16b61, 1},
                {0x16e80, 0x16e96, 1},
+               {0x1d2c0, 0x1d2d3, 1},
                {0x1d2e0, 0x1d2f3, 1},
                {0x1d360, 0x1d378, 1},
                {0x1e8c7, 0x1e8cf, 1},
@@ -2651,9 +2778,9 @@ var _P = &RangeTable{
                {0x05f3, 0x05f4, 1},
                {0x0609, 0x060a, 1},
                {0x060c, 0x060d, 1},
-               {0x061b, 0x061e, 3},
-               {0x061f, 0x066a, 75},
-               {0x066b, 0x066d, 1},
+               {0x061b, 0x061d, 2},
+               {0x061e, 0x061f, 1},
+               {0x066a, 0x066d, 1},
                {0x06d4, 0x0700, 44},
                {0x0701, 0x070d, 1},
                {0x07f7, 0x07f9, 1},
@@ -2686,6 +2813,7 @@ var _P = &RangeTable{
                {0x1aa0, 0x1aa6, 1},
                {0x1aa8, 0x1aad, 1},
                {0x1b5a, 0x1b60, 1},
+               {0x1b7d, 0x1b7e, 1},
                {0x1bfc, 0x1bff, 1},
                {0x1c3b, 0x1c3f, 1},
                {0x1c7e, 0x1c7f, 1},
@@ -2710,8 +2838,8 @@ var _P = &RangeTable{
                {0x2d70, 0x2e00, 144},
                {0x2e01, 0x2e2e, 1},
                {0x2e30, 0x2e4f, 1},
-               {0x2e52, 0x3001, 431},
-               {0x3002, 0x3003, 1},
+               {0x2e52, 0x2e5d, 1},
+               {0x3001, 0x3003, 1},
                {0x3008, 0x3011, 1},
                {0x3014, 0x301f, 1},
                {0x3030, 0x303d, 13},
@@ -2759,6 +2887,7 @@ var _P = &RangeTable{
                {0x10b99, 0x10b9c, 1},
                {0x10ead, 0x10f55, 168},
                {0x10f56, 0x10f59, 1},
+               {0x10f86, 0x10f89, 1},
                {0x11047, 0x1104d, 1},
                {0x110bb, 0x110bc, 1},
                {0x110be, 0x110c1, 1},
@@ -2775,18 +2904,22 @@ var _P = &RangeTable{
                {0x115c1, 0x115d7, 1},
                {0x11641, 0x11643, 1},
                {0x11660, 0x1166c, 1},
-               {0x1173c, 0x1173e, 1},
+               {0x116b9, 0x1173c, 131},
+               {0x1173d, 0x1173e, 1},
                {0x1183b, 0x11944, 265},
                {0x11945, 0x11946, 1},
                {0x119e2, 0x11a3f, 93},
                {0x11a40, 0x11a46, 1},
                {0x11a9a, 0x11a9c, 1},
                {0x11a9e, 0x11aa2, 1},
+               {0x11b00, 0x11b09, 1},
                {0x11c41, 0x11c45, 1},
                {0x11c70, 0x11c71, 1},
                {0x11ef7, 0x11ef8, 1},
+               {0x11f43, 0x11f4f, 1},
                {0x11fff, 0x12470, 1137},
                {0x12471, 0x12474, 1},
+               {0x12ff1, 0x12ff2, 1},
                {0x16a6e, 0x16a6f, 1},
                {0x16af5, 0x16b37, 66},
                {0x16b38, 0x16b3b, 1},
@@ -2817,11 +2950,11 @@ var _Pd = &RangeTable{
                {0x2011, 0x2015, 1},
                {0x2e17, 0x2e1a, 3},
                {0x2e3a, 0x2e3b, 1},
-               {0x2e40, 0x301c, 476},
-               {0x3030, 0x30a0, 112},
-               {0xfe31, 0xfe32, 1},
-               {0xfe58, 0xfe63, 11},
-               {0xff0d, 0xff0d, 1},
+               {0x2e40, 0x2e5d, 29},
+               {0x301c, 0x3030, 20},
+               {0x30a0, 0xfe31, 52625},
+               {0xfe32, 0xfe58, 38},
+               {0xfe63, 0xff0d, 170},
        },
        R32: []Range32{
                {0x10ead, 0x10ead, 1},
@@ -2843,6 +2976,7 @@ var _Pe = &RangeTable{
                {0x29d9, 0x29db, 2},
                {0x29fd, 0x2e23, 1062},
                {0x2e25, 0x2e29, 2},
+               {0x2e56, 0x2e5c, 2},
                {0x3009, 0x3011, 2},
                {0x3015, 0x301b, 2},
                {0x301e, 0x301f, 1},
@@ -2895,9 +3029,9 @@ var _Po = &RangeTable{
                {0x05f3, 0x05f4, 1},
                {0x0609, 0x060a, 1},
                {0x060c, 0x060d, 1},
-               {0x061b, 0x061e, 3},
-               {0x061f, 0x066a, 75},
-               {0x066b, 0x066d, 1},
+               {0x061b, 0x061d, 2},
+               {0x061e, 0x061f, 1},
+               {0x066a, 0x066d, 1},
                {0x06d4, 0x0700, 44},
                {0x0701, 0x070d, 1},
                {0x07f7, 0x07f9, 1},
@@ -2928,6 +3062,7 @@ var _Po = &RangeTable{
                {0x1aa0, 0x1aa6, 1},
                {0x1aa8, 0x1aad, 1},
                {0x1b5a, 0x1b60, 1},
+               {0x1b7d, 0x1b7e, 1},
                {0x1bfc, 0x1bff, 1},
                {0x1c3b, 0x1c3f, 1},
                {0x1c7e, 0x1c7f, 1},
@@ -2956,8 +3091,8 @@ var _Po = &RangeTable{
                {0x2e3c, 0x2e3f, 1},
                {0x2e41, 0x2e43, 2},
                {0x2e44, 0x2e4f, 1},
-               {0x2e52, 0x3001, 431},
-               {0x3002, 0x3003, 1},
+               {0x2e52, 0x2e54, 1},
+               {0x3001, 0x3003, 1},
                {0x303d, 0x30fb, 190},
                {0xa4fe, 0xa4ff, 1},
                {0xa60d, 0xa60f, 1},
@@ -3003,6 +3138,7 @@ var _Po = &RangeTable{
                {0x10b39, 0x10b3f, 1},
                {0x10b99, 0x10b9c, 1},
                {0x10f55, 0x10f59, 1},
+               {0x10f86, 0x10f89, 1},
                {0x11047, 0x1104d, 1},
                {0x110bb, 0x110bc, 1},
                {0x110be, 0x110c1, 1},
@@ -3019,18 +3155,22 @@ var _Po = &RangeTable{
                {0x115c1, 0x115d7, 1},
                {0x11641, 0x11643, 1},
                {0x11660, 0x1166c, 1},
-               {0x1173c, 0x1173e, 1},
+               {0x116b9, 0x1173c, 131},
+               {0x1173d, 0x1173e, 1},
                {0x1183b, 0x11944, 265},
                {0x11945, 0x11946, 1},
                {0x119e2, 0x11a3f, 93},
                {0x11a40, 0x11a46, 1},
                {0x11a9a, 0x11a9c, 1},
                {0x11a9e, 0x11aa2, 1},
+               {0x11b00, 0x11b09, 1},
                {0x11c41, 0x11c45, 1},
                {0x11c70, 0x11c71, 1},
                {0x11ef7, 0x11ef8, 1},
+               {0x11f43, 0x11f4f, 1},
                {0x11fff, 0x12470, 1137},
                {0x12471, 0x12474, 1},
+               {0x12ff1, 0x12ff2, 1},
                {0x16a6e, 0x16a6f, 1},
                {0x16af5, 0x16b37, 66},
                {0x16b38, 0x16b3b, 1},
@@ -3059,8 +3199,9 @@ var _Ps = &RangeTable{
                {0x29d8, 0x29da, 2},
                {0x29fc, 0x2e22, 1062},
                {0x2e24, 0x2e28, 2},
-               {0x2e42, 0x3008, 454},
-               {0x300a, 0x3010, 2},
+               {0x2e42, 0x2e55, 19},
+               {0x2e57, 0x2e5b, 2},
+               {0x3008, 0x3010, 2},
                {0x3014, 0x301a, 2},
                {0x301d, 0xfd3f, 52514},
                {0xfe17, 0xfe35, 30},
@@ -3101,10 +3242,11 @@ var _S = &RangeTable{
                {0x06e9, 0x06fd, 20},
                {0x06fe, 0x07f6, 248},
                {0x07fe, 0x07ff, 1},
-               {0x09f2, 0x09f3, 1},
-               {0x09fa, 0x09fb, 1},
-               {0x0af1, 0x0b70, 127},
-               {0x0bf3, 0x0bfa, 1},
+               {0x0888, 0x09f2, 362},
+               {0x09f3, 0x09fa, 7},
+               {0x09fb, 0x0af1, 246},
+               {0x0b70, 0x0bf3, 131},
+               {0x0bf4, 0x0bfa, 1},
                {0x0c7f, 0x0d4f, 208},
                {0x0d79, 0x0e3f, 198},
                {0x0f01, 0x0f03, 1},
@@ -3132,7 +3274,7 @@ var _S = &RangeTable{
                {0x2044, 0x2052, 14},
                {0x207a, 0x207c, 1},
                {0x208a, 0x208c, 1},
-               {0x20a0, 0x20bf, 1},
+               {0x20a0, 0x20c0, 1},
                {0x2100, 0x2101, 1},
                {0x2103, 0x2106, 1},
                {0x2108, 0x2109, 1},
@@ -3190,8 +3332,10 @@ var _S = &RangeTable{
                {0xaa77, 0xaa79, 1},
                {0xab5b, 0xab6a, 15},
                {0xab6b, 0xfb29, 20414},
-               {0xfbb2, 0xfbc1, 1},
-               {0xfdfc, 0xfdfd, 1},
+               {0xfbb2, 0xfbc2, 1},
+               {0xfd40, 0xfd4f, 1},
+               {0xfdcf, 0xfdfc, 45},
+               {0xfdfd, 0xfdff, 1},
                {0xfe62, 0xfe64, 2},
                {0xfe65, 0xfe66, 1},
                {0xfe69, 0xff04, 155},
@@ -3215,13 +3359,14 @@ var _S = &RangeTable{
                {0x11fd5, 0x11ff1, 1},
                {0x16b3c, 0x16b3f, 1},
                {0x16b45, 0x1bc9c, 20823},
+               {0x1cf50, 0x1cfc3, 1},
                {0x1d000, 0x1d0f5, 1},
                {0x1d100, 0x1d126, 1},
                {0x1d129, 0x1d164, 1},
                {0x1d16a, 0x1d16c, 1},
                {0x1d183, 0x1d184, 1},
                {0x1d18c, 0x1d1a9, 1},
-               {0x1d1ae, 0x1d1e8, 1},
+               {0x1d1ae, 0x1d1ea, 1},
                {0x1d200, 0x1d241, 1},
                {0x1d245, 0x1d300, 187},
                {0x1d301, 0x1d356, 1},
@@ -3252,28 +3397,27 @@ var _S = &RangeTable{
                {0x1f250, 0x1f251, 1},
                {0x1f260, 0x1f265, 1},
                {0x1f300, 0x1f6d7, 1},
-               {0x1f6e0, 0x1f6ec, 1},
+               {0x1f6dc, 0x1f6ec, 1},
                {0x1f6f0, 0x1f6fc, 1},
-               {0x1f700, 0x1f773, 1},
-               {0x1f780, 0x1f7d8, 1},
+               {0x1f700, 0x1f776, 1},
+               {0x1f77b, 0x1f7d9, 1},
                {0x1f7e0, 0x1f7eb, 1},
-               {0x1f800, 0x1f80b, 1},
+               {0x1f7f0, 0x1f800, 16},
+               {0x1f801, 0x1f80b, 1},
                {0x1f810, 0x1f847, 1},
                {0x1f850, 0x1f859, 1},
                {0x1f860, 0x1f887, 1},
                {0x1f890, 0x1f8ad, 1},
                {0x1f8b0, 0x1f8b1, 1},
-               {0x1f900, 0x1f978, 1},
-               {0x1f97a, 0x1f9cb, 1},
-               {0x1f9cd, 0x1fa53, 1},
+               {0x1f900, 0x1fa53, 1},
                {0x1fa60, 0x1fa6d, 1},
-               {0x1fa70, 0x1fa74, 1},
-               {0x1fa78, 0x1fa7a, 1},
-               {0x1fa80, 0x1fa86, 1},
-               {0x1fa90, 0x1faa8, 1},
-               {0x1fab0, 0x1fab6, 1},
-               {0x1fac0, 0x1fac2, 1},
-               {0x1fad0, 0x1fad6, 1},
+               {0x1fa70, 0x1fa7c, 1},
+               {0x1fa80, 0x1fa88, 1},
+               {0x1fa90, 0x1fabd, 1},
+               {0x1fabf, 0x1fac5, 1},
+               {0x1face, 0x1fadb, 1},
+               {0x1fae0, 0x1fae8, 1},
+               {0x1faf0, 0x1faf8, 1},
                {0x1fb00, 0x1fb92, 1},
                {0x1fb94, 0x1fbca, 1},
        },
@@ -3290,7 +3434,7 @@ var _Sc = &RangeTable{
                {0x09fb, 0x0af1, 246},
                {0x0bf9, 0x0e3f, 582},
                {0x17db, 0x20a0, 2245},
-               {0x20a1, 0x20bf, 1},
+               {0x20a1, 0x20c0, 1},
                {0xa838, 0xfdfc, 21956},
                {0xfe69, 0xff04, 155},
                {0xffe0, 0xffe1, 1},
@@ -3314,8 +3458,9 @@ var _Sk = &RangeTable{
                {0x02ed, 0x02ef, 2},
                {0x02f0, 0x02ff, 1},
                {0x0375, 0x0384, 15},
-               {0x0385, 0x1fbd, 7224},
-               {0x1fbf, 0x1fc1, 1},
+               {0x0385, 0x0888, 1283},
+               {0x1fbd, 0x1fbf, 2},
+               {0x1fc0, 0x1fc1, 1},
                {0x1fcd, 0x1fcf, 1},
                {0x1fdd, 0x1fdf, 1},
                {0x1fed, 0x1fef, 1},
@@ -3326,7 +3471,7 @@ var _Sk = &RangeTable{
                {0xa789, 0xa78a, 1},
                {0xab5b, 0xab6a, 15},
                {0xab6b, 0xfbb2, 20551},
-               {0xfbb3, 0xfbc1, 1},
+               {0xfbb3, 0xfbc2, 1},
                {0xff3e, 0xff40, 2},
                {0xffe3, 0xffe3, 1},
        },
@@ -3488,10 +3633,12 @@ var _So = &RangeTable{
                {0xa836, 0xa837, 1},
                {0xa839, 0xaa77, 574},
                {0xaa78, 0xaa79, 1},
-               {0xfdfd, 0xffe4, 487},
-               {0xffe8, 0xffed, 5},
-               {0xffee, 0xfffc, 14},
-               {0xfffd, 0xfffd, 1},
+               {0xfd40, 0xfd4f, 1},
+               {0xfdcf, 0xfdfd, 46},
+               {0xfdfe, 0xfdff, 1},
+               {0xffe4, 0xffe8, 4},
+               {0xffed, 0xffee, 1},
+               {0xfffc, 0xfffd, 1},
        },
        R32: []Range32{
                {0x10137, 0x1013f, 1},
@@ -3506,13 +3653,14 @@ var _So = &RangeTable{
                {0x11fe1, 0x11ff1, 1},
                {0x16b3c, 0x16b3f, 1},
                {0x16b45, 0x1bc9c, 20823},
+               {0x1cf50, 0x1cfc3, 1},
                {0x1d000, 0x1d0f5, 1},
                {0x1d100, 0x1d126, 1},
                {0x1d129, 0x1d164, 1},
                {0x1d16a, 0x1d16c, 1},
                {0x1d183, 0x1d184, 1},
                {0x1d18c, 0x1d1a9, 1},
-               {0x1d1ae, 0x1d1e8, 1},
+               {0x1d1ae, 0x1d1ea, 1},
                {0x1d200, 0x1d241, 1},
                {0x1d245, 0x1d300, 187},
                {0x1d301, 0x1d356, 1},
@@ -3537,28 +3685,27 @@ var _So = &RangeTable{
                {0x1f260, 0x1f265, 1},
                {0x1f300, 0x1f3fa, 1},
                {0x1f400, 0x1f6d7, 1},
-               {0x1f6e0, 0x1f6ec, 1},
+               {0x1f6dc, 0x1f6ec, 1},
                {0x1f6f0, 0x1f6fc, 1},
-               {0x1f700, 0x1f773, 1},
-               {0x1f780, 0x1f7d8, 1},
+               {0x1f700, 0x1f776, 1},
+               {0x1f77b, 0x1f7d9, 1},
                {0x1f7e0, 0x1f7eb, 1},
-               {0x1f800, 0x1f80b, 1},
+               {0x1f7f0, 0x1f800, 16},
+               {0x1f801, 0x1f80b, 1},
                {0x1f810, 0x1f847, 1},
                {0x1f850, 0x1f859, 1},
                {0x1f860, 0x1f887, 1},
                {0x1f890, 0x1f8ad, 1},
                {0x1f8b0, 0x1f8b1, 1},
-               {0x1f900, 0x1f978, 1},
-               {0x1f97a, 0x1f9cb, 1},
-               {0x1f9cd, 0x1fa53, 1},
+               {0x1f900, 0x1fa53, 1},
                {0x1fa60, 0x1fa6d, 1},
-               {0x1fa70, 0x1fa74, 1},
-               {0x1fa78, 0x1fa7a, 1},
-               {0x1fa80, 0x1fa86, 1},
-               {0x1fa90, 0x1faa8, 1},
-               {0x1fab0, 0x1fab6, 1},
-               {0x1fac0, 0x1fac2, 1},
-               {0x1fad0, 0x1fad6, 1},
+               {0x1fa70, 0x1fa7c, 1},
+               {0x1fa80, 0x1fa88, 1},
+               {0x1fa90, 0x1fabd, 1},
+               {0x1fabf, 0x1fac5, 1},
+               {0x1face, 0x1fadb, 1},
+               {0x1fae0, 0x1fae8, 1},
+               {0x1faf0, 0x1faf8, 1},
                {0x1fb00, 0x1fb92, 1},
                {0x1fb94, 0x1fbca, 1},
        },
@@ -3681,6 +3828,7 @@ var Scripts = map[string]*RangeTable{
        "Coptic":                 Coptic,
        "Cuneiform":              Cuneiform,
        "Cypriot":                Cypriot,
+       "Cypro_Minoan":           Cypro_Minoan,
        "Cyrillic":               Cyrillic,
        "Deseret":                Deseret,
        "Devanagari":             Devanagari,
@@ -3714,6 +3862,7 @@ var Scripts = map[string]*RangeTable{
        "Kaithi":                 Kaithi,
        "Kannada":                Kannada,
        "Katakana":               Katakana,
+       "Kawi":                   Kawi,
        "Kayah_Li":               Kayah_Li,
        "Kharoshthi":             Kharoshthi,
        "Khitan_Small_Script":    Khitan_Small_Script,
@@ -3748,6 +3897,7 @@ var Scripts = map[string]*RangeTable{
        "Multani":                Multani,
        "Myanmar":                Myanmar,
        "Nabataean":              Nabataean,
+       "Nag_Mundari":            Nag_Mundari,
        "Nandinagari":            Nandinagari,
        "New_Tai_Lue":            New_Tai_Lue,
        "Newa":                   Newa,
@@ -3764,6 +3914,7 @@ var Scripts = map[string]*RangeTable{
        "Old_Sogdian":            Old_Sogdian,
        "Old_South_Arabian":      Old_South_Arabian,
        "Old_Turkic":             Old_Turkic,
+       "Old_Uyghur":             Old_Uyghur,
        "Oriya":                  Oriya,
        "Osage":                  Osage,
        "Osmanya":                Osmanya,
@@ -3795,6 +3946,7 @@ var Scripts = map[string]*RangeTable{
        "Tai_Viet":               Tai_Viet,
        "Takri":                  Takri,
        "Tamil":                  Tamil,
+       "Tangsa":                 Tangsa,
        "Tangut":                 Tangut,
        "Telugu":                 Telugu,
        "Thaana":                 Thaana,
@@ -3802,8 +3954,10 @@ var Scripts = map[string]*RangeTable{
        "Tibetan":                Tibetan,
        "Tifinagh":               Tifinagh,
        "Tirhuta":                Tirhuta,
+       "Toto":                   Toto,
        "Ugaritic":               Ugaritic,
        "Vai":                    Vai,
+       "Vithkuqi":               Vithkuqi,
        "Wancho":                 Wancho,
        "Warang_Citi":            Warang_Citi,
        "Yezidi":                 Yezidi,
@@ -3825,7 +3979,7 @@ var _Ahom = &RangeTable{
        R32: []Range32{
                {0x11700, 0x1171a, 1},
                {0x1171d, 0x1172b, 1},
-               {0x11730, 0x1173f, 1},
+               {0x11730, 0x11746, 1},
        },
 }
 
@@ -3841,27 +3995,29 @@ var _Arabic = &RangeTable{
                {0x0600, 0x0604, 1},
                {0x0606, 0x060b, 1},
                {0x060d, 0x061a, 1},
-               {0x061c, 0x0620, 2},
-               {0x0621, 0x063f, 1},
+               {0x061c, 0x061e, 1},
+               {0x0620, 0x063f, 1},
                {0x0641, 0x064a, 1},
                {0x0656, 0x066f, 1},
                {0x0671, 0x06dc, 1},
                {0x06de, 0x06ff, 1},
                {0x0750, 0x077f, 1},
-               {0x08a0, 0x08b4, 1},
-               {0x08b6, 0x08c7, 1},
-               {0x08d3, 0x08e1, 1},
+               {0x0870, 0x088e, 1},
+               {0x0890, 0x0891, 1},
+               {0x0898, 0x08e1, 1},
                {0x08e3, 0x08ff, 1},
-               {0xfb50, 0xfbc1, 1},
+               {0xfb50, 0xfbc2, 1},
                {0xfbd3, 0xfd3d, 1},
-               {0xfd50, 0xfd8f, 1},
+               {0xfd40, 0xfd8f, 1},
                {0xfd92, 0xfdc7, 1},
-               {0xfdf0, 0xfdfd, 1},
+               {0xfdcf, 0xfdf0, 33},
+               {0xfdf1, 0xfdff, 1},
                {0xfe70, 0xfe74, 1},
                {0xfe76, 0xfefc, 1},
        },
        R32: []Range32{
                {0x10e60, 0x10e7e, 1},
+               {0x10efd, 0x10eff, 1},
                {0x1ee00, 0x1ee03, 1},
                {0x1ee05, 0x1ee1f, 1},
                {0x1ee21, 0x1ee22, 1},
@@ -3909,8 +4065,8 @@ var _Avestan = &RangeTable{
 
 var _Balinese = &RangeTable{
        R16: []Range16{
-               {0x1b00, 0x1b4b, 1},
-               {0x1b50, 0x1b7c, 1},
+               {0x1b00, 0x1b4c, 1},
+               {0x1b50, 0x1b7e, 1},
        },
 }
 
@@ -3979,7 +4135,7 @@ var _Brahmi = &RangeTable{
        R16: []Range16{},
        R32: []Range32{
                {0x11000, 0x1104d, 1},
-               {0x11052, 0x1106f, 1},
+               {0x11052, 0x11075, 1},
                {0x1107f, 0x1107f, 1},
        },
 }
@@ -4008,6 +4164,9 @@ var _Canadian_Aboriginal = &RangeTable{
                {0x1400, 0x167f, 1},
                {0x18b0, 0x18f5, 1},
        },
+       R32: []Range32{
+               {0x11ab0, 0x11abf, 1},
+       },
 }
 
 var _Carian = &RangeTable{
@@ -4091,7 +4250,7 @@ var _Common = &RangeTable{
                {0x2066, 0x2070, 1},
                {0x2074, 0x207e, 1},
                {0x2080, 0x208e, 1},
-               {0x20a0, 0x20bf, 1},
+               {0x20a0, 0x20c0, 1},
                {0x2100, 0x2125, 1},
                {0x2127, 0x2129, 1},
                {0x212c, 0x2131, 1},
@@ -4104,7 +4263,7 @@ var _Common = &RangeTable{
                {0x2900, 0x2b73, 1},
                {0x2b76, 0x2b95, 1},
                {0x2b97, 0x2bff, 1},
-               {0x2e00, 0x2e52, 1},
+               {0x2e00, 0x2e5d, 1},
                {0x2ff0, 0x2ffb, 1},
                {0x3000, 0x3004, 1},
                {0x3006, 0x3008, 2},
@@ -4149,15 +4308,16 @@ var _Common = &RangeTable{
                {0x10190, 0x1019c, 1},
                {0x101d0, 0x101fc, 1},
                {0x102e1, 0x102fb, 1},
-               {0x16fe2, 0x16fe3, 1},
                {0x1bca0, 0x1bca3, 1},
+               {0x1cf50, 0x1cfc3, 1},
                {0x1d000, 0x1d0f5, 1},
                {0x1d100, 0x1d126, 1},
                {0x1d129, 0x1d166, 1},
                {0x1d16a, 0x1d17a, 1},
                {0x1d183, 0x1d184, 1},
                {0x1d18c, 0x1d1a9, 1},
-               {0x1d1ae, 0x1d1e8, 1},
+               {0x1d1ae, 0x1d1ea, 1},
+               {0x1d2c0, 0x1d2d3, 1},
                {0x1d2e0, 0x1d2f3, 1},
                {0x1d300, 0x1d356, 1},
                {0x1d360, 0x1d378, 1},
@@ -4198,28 +4358,27 @@ var _Common = &RangeTable{
                {0x1f250, 0x1f251, 1},
                {0x1f260, 0x1f265, 1},
                {0x1f300, 0x1f6d7, 1},
-               {0x1f6e0, 0x1f6ec, 1},
+               {0x1f6dc, 0x1f6ec, 1},
                {0x1f6f0, 0x1f6fc, 1},
-               {0x1f700, 0x1f773, 1},
-               {0x1f780, 0x1f7d8, 1},
+               {0x1f700, 0x1f776, 1},
+               {0x1f77b, 0x1f7d9, 1},
                {0x1f7e0, 0x1f7eb, 1},
-               {0x1f800, 0x1f80b, 1},
+               {0x1f7f0, 0x1f800, 16},
+               {0x1f801, 0x1f80b, 1},
                {0x1f810, 0x1f847, 1},
                {0x1f850, 0x1f859, 1},
                {0x1f860, 0x1f887, 1},
                {0x1f890, 0x1f8ad, 1},
                {0x1f8b0, 0x1f8b1, 1},
-               {0x1f900, 0x1f978, 1},
-               {0x1f97a, 0x1f9cb, 1},
-               {0x1f9cd, 0x1fa53, 1},
+               {0x1f900, 0x1fa53, 1},
                {0x1fa60, 0x1fa6d, 1},
-               {0x1fa70, 0x1fa74, 1},
-               {0x1fa78, 0x1fa7a, 1},
-               {0x1fa80, 0x1fa86, 1},
-               {0x1fa90, 0x1faa8, 1},
-               {0x1fab0, 0x1fab6, 1},
-               {0x1fac0, 0x1fac2, 1},
-               {0x1fad0, 0x1fad6, 1},
+               {0x1fa70, 0x1fa7c, 1},
+               {0x1fa80, 0x1fa88, 1},
+               {0x1fa90, 0x1fabd, 1},
+               {0x1fabf, 0x1fac5, 1},
+               {0x1face, 0x1fadb, 1},
+               {0x1fae0, 0x1fae8, 1},
+               {0x1faf0, 0x1faf8, 1},
                {0x1fb00, 0x1fb92, 1},
                {0x1fb94, 0x1fbca, 1},
                {0x1fbf0, 0x1fbf9, 1},
@@ -4258,6 +4417,13 @@ var _Cypriot = &RangeTable{
        },
 }
 
+var _Cypro_Minoan = &RangeTable{
+       R16: []Range16{},
+       R32: []Range32{
+               {0x12f90, 0x12ff2, 1},
+       },
+}
+
 var _Cyrillic = &RangeTable{
        R16: []Range16{
                {0x0400, 0x0484, 1},
@@ -4268,6 +4434,10 @@ var _Cyrillic = &RangeTable{
                {0xa640, 0xa69f, 1},
                {0xfe2e, 0xfe2f, 1},
        },
+       R32: []Range32{
+               {0x1e030, 0x1e06d, 1},
+               {0x1e08f, 0x1e08f, 1},
+       },
 }
 
 var _Deseret = &RangeTable{
@@ -4284,6 +4454,9 @@ var _Devanagari = &RangeTable{
                {0x0966, 0x097f, 1},
                {0xa8e0, 0xa8ff, 1},
        },
+       R32: []Range32{
+               {0x11b00, 0x11b09, 1},
+       },
 }
 
 var _Dives_Akuru = &RangeTable{
@@ -4321,8 +4494,7 @@ var _Duployan = &RangeTable{
 var _Egyptian_Hieroglyphs = &RangeTable{
        R16: []Range16{},
        R32: []Range32{
-               {0x13000, 0x1342e, 1},
-               {0x13430, 0x13438, 1},
+               {0x13000, 0x13455, 1},
        },
 }
 
@@ -4375,6 +4547,12 @@ var _Ethiopic = &RangeTable{
                {0xab20, 0xab26, 1},
                {0xab28, 0xab2e, 1},
        },
+       R32: []Range32{
+               {0x1e7e0, 0x1e7e6, 1},
+               {0x1e7e8, 0x1e7eb, 1},
+               {0x1e7ed, 0x1e7ee, 1},
+               {0x1e7f0, 0x1e7fe, 1},
+       },
 }
 
 var _Georgian = &RangeTable{
@@ -4392,8 +4570,7 @@ var _Georgian = &RangeTable{
 
 var _Glagolitic = &RangeTable{
        R16: []Range16{
-               {0x2c00, 0x2c2e, 1},
-               {0x2c30, 0x2c5e, 1},
+               {0x2c00, 0x2c5f, 1},
        },
        R32: []Range32{
                {0x1e000, 0x1e006, 1},
@@ -4531,19 +4708,21 @@ var _Han = &RangeTable{
                {0x3021, 0x3029, 1},
                {0x3038, 0x303b, 1},
                {0x3400, 0x4dbf, 1},
-               {0x4e00, 0x9ffc, 1},
+               {0x4e00, 0x9fff, 1},
                {0xf900, 0xfa6d, 1},
                {0xfa70, 0xfad9, 1},
        },
        R32: []Range32{
+               {0x16fe2, 0x16fe3, 1},
                {0x16ff0, 0x16ff1, 1},
-               {0x20000, 0x2a6dd, 1},
-               {0x2a700, 0x2b734, 1},
+               {0x20000, 0x2a6df, 1},
+               {0x2a700, 0x2b739, 1},
                {0x2b740, 0x2b81d, 1},
                {0x2b820, 0x2cea1, 1},
                {0x2ceb0, 0x2ebe0, 1},
                {0x2f800, 0x2fa1d, 1},
                {0x30000, 0x3134a, 1},
+               {0x31350, 0x323af, 1},
        },
 }
 
@@ -4609,8 +4788,9 @@ var _Hiragana = &RangeTable{
                {0x309d, 0x309f, 1},
        },
        R32: []Range32{
-               {0x1b001, 0x1b11e, 1},
-               {0x1b150, 0x1b152, 1},
+               {0x1b001, 0x1b11f, 1},
+               {0x1b132, 0x1b150, 30},
+               {0x1b151, 0x1b152, 1},
                {0x1f200, 0x1f200, 1},
        },
 }
@@ -4630,14 +4810,13 @@ var _Inherited = &RangeTable{
                {0x064b, 0x0655, 1},
                {0x0670, 0x0951, 737},
                {0x0952, 0x0954, 1},
-               {0x1ab0, 0x1ac0, 1},
+               {0x1ab0, 0x1ace, 1},
                {0x1cd0, 0x1cd2, 1},
                {0x1cd4, 0x1ce0, 1},
                {0x1ce2, 0x1ce8, 1},
                {0x1ced, 0x1cf4, 7},
                {0x1cf8, 0x1cf9, 1},
-               {0x1dc0, 0x1df9, 1},
-               {0x1dfb, 0x1dff, 1},
+               {0x1dc0, 0x1dff, 1},
                {0x200c, 0x200d, 1},
                {0x20d0, 0x20f0, 1},
                {0x302a, 0x302d, 1},
@@ -4647,8 +4826,10 @@ var _Inherited = &RangeTable{
        },
        R32: []Range32{
                {0x101fd, 0x102e0, 227},
-               {0x1133b, 0x1d167, 48684},
-               {0x1d168, 0x1d169, 1},
+               {0x1133b, 0x1cf00, 48069},
+               {0x1cf01, 0x1cf2d, 1},
+               {0x1cf30, 0x1cf46, 1},
+               {0x1d167, 0x1d169, 1},
                {0x1d17b, 0x1d182, 1},
                {0x1d185, 0x1d18b, 1},
                {0x1d1aa, 0x1d1ad, 1},
@@ -4683,7 +4864,7 @@ var _Javanese = &RangeTable{
 var _Kaithi = &RangeTable{
        R16: []Range16{},
        R32: []Range32{
-               {0x11080, 0x110c1, 1},
+               {0x11080, 0x110c2, 1},
                {0x110cd, 0x110cd, 1},
        },
 }
@@ -4699,10 +4880,10 @@ var _Kannada = &RangeTable{
                {0x0cc6, 0x0cc8, 1},
                {0x0cca, 0x0ccd, 1},
                {0x0cd5, 0x0cd6, 1},
-               {0x0cde, 0x0ce0, 2},
-               {0x0ce1, 0x0ce3, 1},
+               {0x0cdd, 0x0cde, 1},
+               {0x0ce0, 0x0ce3, 1},
                {0x0ce6, 0x0cef, 1},
-               {0x0cf1, 0x0cf2, 1},
+               {0x0cf1, 0x0cf3, 1},
        },
 }
 
@@ -4717,11 +4898,25 @@ var _Katakana = &RangeTable{
                {0xff71, 0xff9d, 1},
        },
        R32: []Range32{
-               {0x1b000, 0x1b164, 356},
+               {0x1aff0, 0x1aff3, 1},
+               {0x1aff5, 0x1affb, 1},
+               {0x1affd, 0x1affe, 1},
+               {0x1b000, 0x1b120, 288},
+               {0x1b121, 0x1b122, 1},
+               {0x1b155, 0x1b164, 15},
                {0x1b165, 0x1b167, 1},
        },
 }
 
+var _Kawi = &RangeTable{
+       R16: []Range16{},
+       R32: []Range32{
+               {0x11f00, 0x11f10, 1},
+               {0x11f12, 0x11f3a, 1},
+               {0x11f3e, 0x11f59, 1},
+       },
+}
+
 var _Kayah_Li = &RangeTable{
        R16: []Range16{
                {0xa900, 0xa92d, 1},
@@ -4764,7 +4959,7 @@ var _Khojki = &RangeTable{
        R16: []Range16{},
        R32: []Range32{
                {0x11200, 0x11211, 1},
-               {0x11213, 0x1123e, 1},
+               {0x11213, 0x11241, 1},
        },
 }
 
@@ -4786,7 +4981,7 @@ var _Lao = &RangeTable{
                {0x0ea8, 0x0ebd, 1},
                {0x0ec0, 0x0ec4, 1},
                {0x0ec6, 0x0ec8, 2},
-               {0x0ec9, 0x0ecd, 1},
+               {0x0ec9, 0x0ece, 1},
                {0x0ed0, 0x0ed9, 1},
                {0x0edc, 0x0edf, 1},
        },
@@ -4814,9 +5009,11 @@ var _Latin = &RangeTable{
                {0x2160, 0x2188, 1},
                {0x2c60, 0x2c7f, 1},
                {0xa722, 0xa787, 1},
-               {0xa78b, 0xa7bf, 1},
-               {0xa7c2, 0xa7ca, 1},
-               {0xa7f5, 0xa7ff, 1},
+               {0xa78b, 0xa7ca, 1},
+               {0xa7d0, 0xa7d1, 1},
+               {0xa7d3, 0xa7d5, 2},
+               {0xa7d6, 0xa7d9, 1},
+               {0xa7f2, 0xa7ff, 1},
                {0xab30, 0xab5a, 1},
                {0xab5c, 0xab64, 1},
                {0xab66, 0xab69, 1},
@@ -4824,6 +5021,13 @@ var _Latin = &RangeTable{
                {0xff21, 0xff3a, 1},
                {0xff41, 0xff5a, 1},
        },
+       R32: []Range32{
+               {0x10780, 0x10785, 1},
+               {0x10787, 0x107b0, 1},
+               {0x107b2, 0x107ba, 1},
+               {0x1df00, 0x1df1e, 1},
+               {0x1df25, 0x1df2a, 1},
+       },
        LatinOffset: 5,
 }
 
@@ -5014,8 +5218,7 @@ var _Mongolian = &RangeTable{
        R16: []Range16{
                {0x1800, 0x1801, 1},
                {0x1804, 0x1806, 2},
-               {0x1807, 0x180e, 1},
-               {0x1810, 0x1819, 1},
+               {0x1807, 0x1819, 1},
                {0x1820, 0x1878, 1},
                {0x1880, 0x18aa, 1},
        },
@@ -5060,6 +5263,13 @@ var _Nabataean = &RangeTable{
        },
 }
 
+var _Nag_Mundari = &RangeTable{
+       R16: []Range16{},
+       R32: []Range32{
+               {0x1e4d0, 0x1e4f9, 1},
+       },
+}
+
 var _Nandinagari = &RangeTable{
        R16: []Range16{},
        R32: []Range32{
@@ -5183,6 +5393,13 @@ var _Old_Turkic = &RangeTable{
        },
 }
 
+var _Old_Uyghur = &RangeTable{
+       R16: []Range16{},
+       R32: []Range32{
+               {0x10f70, 0x10f89, 1},
+       },
+}
+
 var _Oriya = &RangeTable{
        R16: []Range16{
                {0x0b01, 0x0b03, 1},
@@ -5391,8 +5608,8 @@ var _Syriac = &RangeTable{
 
 var _Tagalog = &RangeTable{
        R16: []Range16{
-               {0x1700, 0x170c, 1},
-               {0x170e, 0x1714, 1},
+               {0x1700, 0x1715, 1},
+               {0x171f, 0x171f, 1},
        },
 }
 
@@ -5431,7 +5648,7 @@ var _Tai_Viet = &RangeTable{
 var _Takri = &RangeTable{
        R16: []Range16{},
        R32: []Range32{
-               {0x11680, 0x116b8, 1},
+               {0x11680, 0x116b9, 1},
                {0x116c0, 0x116c9, 1},
        },
 }
@@ -5460,6 +5677,14 @@ var _Tamil = &RangeTable{
        },
 }
 
+var _Tangsa = &RangeTable{
+       R16: []Range16{},
+       R32: []Range32{
+               {0x16a70, 0x16abe, 1},
+               {0x16ac0, 0x16ac9, 1},
+       },
+}
+
 var _Tangut = &RangeTable{
        R16: []Range16{},
        R32: []Range32{
@@ -5476,12 +5701,13 @@ var _Telugu = &RangeTable{
                {0x0c0e, 0x0c10, 1},
                {0x0c12, 0x0c28, 1},
                {0x0c2a, 0x0c39, 1},
-               {0x0c3d, 0x0c44, 1},
+               {0x0c3c, 0x0c44, 1},
                {0x0c46, 0x0c48, 1},
                {0x0c4a, 0x0c4d, 1},
                {0x0c55, 0x0c56, 1},
                {0x0c58, 0x0c5a, 1},
-               {0x0c60, 0x0c63, 1},
+               {0x0c5d, 0x0c60, 3},
+               {0x0c61, 0x0c63, 1},
                {0x0c66, 0x0c6f, 1},
                {0x0c77, 0x0c7f, 1},
        },
@@ -5528,6 +5754,13 @@ var _Tirhuta = &RangeTable{
        },
 }
 
+var _Toto = &RangeTable{
+       R16: []Range16{},
+       R32: []Range32{
+               {0x1e290, 0x1e2ae, 1},
+       },
+}
+
 var _Ugaritic = &RangeTable{
        R16: []Range16{},
        R32: []Range32{
@@ -5542,6 +5775,20 @@ var _Vai = &RangeTable{
        },
 }
 
+var _Vithkuqi = &RangeTable{
+       R16: []Range16{},
+       R32: []Range32{
+               {0x10570, 0x1057a, 1},
+               {0x1057c, 0x1058a, 1},
+               {0x1058c, 0x10592, 1},
+               {0x10594, 0x10595, 1},
+               {0x10597, 0x105a1, 1},
+               {0x105a3, 0x105b1, 1},
+               {0x105b3, 0x105b9, 1},
+               {0x105bb, 0x105bc, 1},
+       },
+}
+
 var _Wancho = &RangeTable{
        R16: []Range16{},
        R32: []Range32{
@@ -5611,6 +5858,7 @@ var (
        Coptic                 = _Coptic                 // Coptic is the set of Unicode characters in script Coptic.
        Cuneiform              = _Cuneiform              // Cuneiform is the set of Unicode characters in script Cuneiform.
        Cypriot                = _Cypriot                // Cypriot is the set of Unicode characters in script Cypriot.
+       Cypro_Minoan           = _Cypro_Minoan           // Cypro_Minoan is the set of Unicode characters in script Cypro_Minoan.
        Cyrillic               = _Cyrillic               // Cyrillic is the set of Unicode characters in script Cyrillic.
        Deseret                = _Deseret                // Deseret is the set of Unicode characters in script Deseret.
        Devanagari             = _Devanagari             // Devanagari is the set of Unicode characters in script Devanagari.
@@ -5644,6 +5892,7 @@ var (
        Kaithi                 = _Kaithi                 // Kaithi is the set of Unicode characters in script Kaithi.
        Kannada                = _Kannada                // Kannada is the set of Unicode characters in script Kannada.
        Katakana               = _Katakana               // Katakana is the set of Unicode characters in script Katakana.
+       Kawi                   = _Kawi                   // Kawi is the set of Unicode characters in script Kawi.
        Kayah_Li               = _Kayah_Li               // Kayah_Li is the set of Unicode characters in script Kayah_Li.
        Kharoshthi             = _Kharoshthi             // Kharoshthi is the set of Unicode characters in script Kharoshthi.
        Khitan_Small_Script    = _Khitan_Small_Script    // Khitan_Small_Script is the set of Unicode characters in script Khitan_Small_Script.
@@ -5678,6 +5927,7 @@ var (
        Multani                = _Multani                // Multani is the set of Unicode characters in script Multani.
        Myanmar                = _Myanmar                // Myanmar is the set of Unicode characters in script Myanmar.
        Nabataean              = _Nabataean              // Nabataean is the set of Unicode characters in script Nabataean.
+       Nag_Mundari            = _Nag_Mundari            // Nag_Mundari is the set of Unicode characters in script Nag_Mundari.
        Nandinagari            = _Nandinagari            // Nandinagari is the set of Unicode characters in script Nandinagari.
        New_Tai_Lue            = _New_Tai_Lue            // New_Tai_Lue is the set of Unicode characters in script New_Tai_Lue.
        Newa                   = _Newa                   // Newa is the set of Unicode characters in script Newa.
@@ -5694,6 +5944,7 @@ var (
        Old_Sogdian            = _Old_Sogdian            // Old_Sogdian is the set of Unicode characters in script Old_Sogdian.
        Old_South_Arabian      = _Old_South_Arabian      // Old_South_Arabian is the set of Unicode characters in script Old_South_Arabian.
        Old_Turkic             = _Old_Turkic             // Old_Turkic is the set of Unicode characters in script Old_Turkic.
+       Old_Uyghur             = _Old_Uyghur             // Old_Uyghur is the set of Unicode characters in script Old_Uyghur.
        Oriya                  = _Oriya                  // Oriya is the set of Unicode characters in script Oriya.
        Osage                  = _Osage                  // Osage is the set of Unicode characters in script Osage.
        Osmanya                = _Osmanya                // Osmanya is the set of Unicode characters in script Osmanya.
@@ -5725,6 +5976,7 @@ var (
        Tai_Viet               = _Tai_Viet               // Tai_Viet is the set of Unicode characters in script Tai_Viet.
        Takri                  = _Takri                  // Takri is the set of Unicode characters in script Takri.
        Tamil                  = _Tamil                  // Tamil is the set of Unicode characters in script Tamil.
+       Tangsa                 = _Tangsa                 // Tangsa is the set of Unicode characters in script Tangsa.
        Tangut                 = _Tangut                 // Tangut is the set of Unicode characters in script Tangut.
        Telugu                 = _Telugu                 // Telugu is the set of Unicode characters in script Telugu.
        Thaana                 = _Thaana                 // Thaana is the set of Unicode characters in script Thaana.
@@ -5732,8 +5984,10 @@ var (
        Tibetan                = _Tibetan                // Tibetan is the set of Unicode characters in script Tibetan.
        Tifinagh               = _Tifinagh               // Tifinagh is the set of Unicode characters in script Tifinagh.
        Tirhuta                = _Tirhuta                // Tirhuta is the set of Unicode characters in script Tirhuta.
+       Toto                   = _Toto                   // Toto is the set of Unicode characters in script Toto.
        Ugaritic               = _Ugaritic               // Ugaritic is the set of Unicode characters in script Ugaritic.
        Vai                    = _Vai                    // Vai is the set of Unicode characters in script Vai.
+       Vithkuqi               = _Vithkuqi               // Vithkuqi is the set of Unicode characters in script Vithkuqi.
        Wancho                 = _Wancho                 // Wancho is the set of Unicode characters in script Wancho.
        Warang_Citi            = _Warang_Citi            // Warang_Citi is the set of Unicode characters in script Warang_Citi.
        Yezidi                 = _Yezidi                 // Yezidi is the set of Unicode characters in script Yezidi.
@@ -5808,11 +6062,11 @@ var _Dash = &RangeTable{
                {0x208b, 0x2212, 391},
                {0x2e17, 0x2e1a, 3},
                {0x2e3a, 0x2e3b, 1},
-               {0x2e40, 0x301c, 476},
-               {0x3030, 0x30a0, 112},
-               {0xfe31, 0xfe32, 1},
-               {0xfe58, 0xfe63, 11},
-               {0xff0d, 0xff0d, 1},
+               {0x2e40, 0x2e5d, 29},
+               {0x301c, 0x3030, 20},
+               {0x30a0, 0xfe31, 52625},
+               {0xfe32, 0xfe58, 38},
+               {0xfe63, 0xff0d, 170},
        },
        R32: []Range32{
                {0x10ead, 0x10ead, 1},
@@ -5859,6 +6113,8 @@ var _Diacritic = &RangeTable{
                {0x07a6, 0x07b0, 1},
                {0x07eb, 0x07f5, 1},
                {0x0818, 0x0819, 1},
+               {0x0898, 0x089f, 1},
+               {0x08c9, 0x08d2, 1},
                {0x08e3, 0x08fe, 1},
                {0x093c, 0x094d, 17},
                {0x0951, 0x0954, 1},
@@ -5869,10 +6125,10 @@ var _Diacritic = &RangeTable{
                {0x0afe, 0x0aff, 1},
                {0x0b3c, 0x0b4d, 17},
                {0x0b55, 0x0bcd, 120},
-               {0x0c4d, 0x0cbc, 111},
-               {0x0ccd, 0x0d3b, 110},
-               {0x0d3c, 0x0d4d, 17},
-               {0x0dca, 0x0e47, 125},
+               {0x0c3c, 0x0c4d, 17},
+               {0x0cbc, 0x0ccd, 17},
+               {0x0d3b, 0x0d3c, 1},
+               {0x0d4d, 0x0e47, 125},
                {0x0e48, 0x0e4c, 1},
                {0x0e4e, 0x0eba, 108},
                {0x0ec8, 0x0ecc, 1},
@@ -5889,12 +6145,14 @@ var _Diacritic = &RangeTable{
                {0x108f, 0x109a, 11},
                {0x109b, 0x135d, 706},
                {0x135e, 0x135f, 1},
+               {0x1714, 0x1715, 1},
                {0x17c9, 0x17d3, 1},
                {0x17dd, 0x1939, 348},
                {0x193a, 0x193b, 1},
                {0x1a75, 0x1a7c, 1},
                {0x1a7f, 0x1ab0, 49},
-               {0x1ab1, 0x1abd, 1},
+               {0x1ab1, 0x1abe, 1},
+               {0x1ac1, 0x1acb, 1},
                {0x1b34, 0x1b44, 16},
                {0x1b6b, 0x1b73, 1},
                {0x1baa, 0x1bab, 1},
@@ -5905,8 +6163,7 @@ var _Diacritic = &RangeTable{
                {0x1cf7, 0x1cf9, 1},
                {0x1d2c, 0x1d6a, 1},
                {0x1dc4, 0x1dcf, 1},
-               {0x1df5, 0x1df9, 1},
-               {0x1dfd, 0x1dff, 1},
+               {0x1df5, 0x1dff, 1},
                {0x1fbd, 0x1fbf, 2},
                {0x1fc0, 0x1fc1, 1},
                {0x1fcd, 0x1fcf, 1},
@@ -5943,10 +6200,16 @@ var _Diacritic = &RangeTable{
                {0xff9f, 0xffe3, 68},
        },
        R32: []Range32{
-               {0x102e0, 0x10ae5, 2053},
-               {0x10ae6, 0x10d22, 572},
-               {0x10d23, 0x10d27, 1},
+               {0x102e0, 0x10780, 1184},
+               {0x10781, 0x10785, 1},
+               {0x10787, 0x107b0, 1},
+               {0x107b2, 0x107ba, 1},
+               {0x10ae5, 0x10ae6, 1},
+               {0x10d22, 0x10d27, 1},
+               {0x10efd, 0x10eff, 1},
                {0x10f46, 0x10f50, 1},
+               {0x10f82, 0x10f85, 1},
+               {0x11046, 0x11070, 42},
                {0x110b9, 0x110ba, 1},
                {0x11133, 0x11134, 1},
                {0x11173, 0x111c0, 77},
@@ -5968,17 +6231,25 @@ var _Diacritic = &RangeTable{
                {0x11a99, 0x11c3f, 422},
                {0x11d42, 0x11d44, 2},
                {0x11d45, 0x11d97, 82},
+               {0x13447, 0x13455, 1},
                {0x16af0, 0x16af4, 1},
                {0x16b30, 0x16b36, 1},
                {0x16f8f, 0x16f9f, 1},
                {0x16ff0, 0x16ff1, 1},
+               {0x1aff0, 0x1aff3, 1},
+               {0x1aff5, 0x1affb, 1},
+               {0x1affd, 0x1affe, 1},
+               {0x1cf00, 0x1cf2d, 1},
+               {0x1cf30, 0x1cf46, 1},
                {0x1d167, 0x1d169, 1},
                {0x1d16d, 0x1d172, 1},
                {0x1d17b, 0x1d182, 1},
                {0x1d185, 0x1d18b, 1},
                {0x1d1aa, 0x1d1ad, 1},
+               {0x1e030, 0x1e06d, 1},
                {0x1e130, 0x1e136, 1},
-               {0x1e2ec, 0x1e2ef, 1},
+               {0x1e2ae, 0x1e2ec, 62},
+               {0x1e2ed, 0x1e2ef, 1},
                {0x1e8d0, 0x1e8d6, 1},
                {0x1e944, 0x1e946, 1},
                {0x1e948, 0x1e94a, 1},
@@ -6005,6 +6276,7 @@ var _Extender = &RangeTable{
                {0xff70, 0xff70, 1},
        },
        R32: []Range32{
+               {0x10781, 0x10782, 1},
                {0x1135d, 0x115c6, 617},
                {0x115c7, 0x115c8, 1},
                {0x11a98, 0x16b42, 20650},
@@ -6058,7 +6330,7 @@ var _Ideographic = &RangeTable{
                {0x3021, 0x3029, 1},
                {0x3038, 0x303a, 1},
                {0x3400, 0x4dbf, 1},
-               {0x4e00, 0x9ffc, 1},
+               {0x4e00, 0x9fff, 1},
                {0xf900, 0xfa6d, 1},
                {0xfa70, 0xfad9, 1},
        },
@@ -6068,13 +6340,14 @@ var _Ideographic = &RangeTable{
                {0x18800, 0x18cd5, 1},
                {0x18d00, 0x18d08, 1},
                {0x1b170, 0x1b2fb, 1},
-               {0x20000, 0x2a6dd, 1},
-               {0x2a700, 0x2b734, 1},
+               {0x20000, 0x2a6df, 1},
+               {0x2a700, 0x2b739, 1},
                {0x2b740, 0x2b81d, 1},
                {0x2b820, 0x2cea1, 1},
                {0x2ceb0, 0x2ebe0, 1},
                {0x2f800, 0x2fa1d, 1},
                {0x30000, 0x3134a, 1},
+               {0x31350, 0x323af, 1},
        },
 }
 
@@ -6178,7 +6451,7 @@ var _Other_Alphabetic = &RangeTable{
                {0x0bc6, 0x0bc8, 1},
                {0x0bca, 0x0bcc, 1},
                {0x0bd7, 0x0c00, 41},
-               {0x0c01, 0x0c03, 1},
+               {0x0c01, 0x0c04, 1},
                {0x0c3e, 0x0c44, 1},
                {0x0c46, 0x0c48, 1},
                {0x0c4a, 0x0c4c, 1},
@@ -6190,7 +6463,8 @@ var _Other_Alphabetic = &RangeTable{
                {0x0cca, 0x0ccc, 1},
                {0x0cd5, 0x0cd6, 1},
                {0x0ce2, 0x0ce3, 1},
-               {0x0d00, 0x0d03, 1},
+               {0x0cf3, 0x0d00, 13},
+               {0x0d01, 0x0d03, 1},
                {0x0d3e, 0x0d44, 1},
                {0x0d46, 0x0d48, 1},
                {0x0d4a, 0x0d4c, 1},
@@ -6207,7 +6481,7 @@ var _Other_Alphabetic = &RangeTable{
                {0x0eb4, 0x0eb9, 1},
                {0x0ebb, 0x0ebc, 1},
                {0x0ecd, 0x0f71, 164},
-               {0x0f72, 0x0f81, 1},
+               {0x0f72, 0x0f83, 1},
                {0x0f8d, 0x0f97, 1},
                {0x0f99, 0x0fbc, 1},
                {0x102b, 0x1036, 1},
@@ -6234,6 +6508,7 @@ var _Other_Alphabetic = &RangeTable{
                {0x1a55, 0x1a5e, 1},
                {0x1a61, 0x1a74, 1},
                {0x1abf, 0x1ac0, 1},
+               {0x1acc, 0x1ace, 1},
                {0x1b00, 0x1b04, 1},
                {0x1b35, 0x1b43, 1},
                {0x1b80, 0x1b82, 1},
@@ -6278,9 +6553,11 @@ var _Other_Alphabetic = &RangeTable{
                {0x10eab, 0x10eac, 1},
                {0x11000, 0x11002, 1},
                {0x11038, 0x11045, 1},
-               {0x11082, 0x110b0, 46},
-               {0x110b1, 0x110b8, 1},
-               {0x11100, 0x11102, 1},
+               {0x11073, 0x11074, 1},
+               {0x11080, 0x11082, 1},
+               {0x110b0, 0x110b8, 1},
+               {0x110c2, 0x11100, 62},
+               {0x11101, 0x11102, 1},
                {0x11127, 0x11132, 1},
                {0x11145, 0x11146, 1},
                {0x11180, 0x11182, 1},
@@ -6288,7 +6565,8 @@ var _Other_Alphabetic = &RangeTable{
                {0x111ce, 0x111cf, 1},
                {0x1122c, 0x11234, 1},
                {0x11237, 0x1123e, 7},
-               {0x112df, 0x112e8, 1},
+               {0x11241, 0x112df, 158},
+               {0x112e0, 0x112e8, 1},
                {0x11300, 0x11303, 1},
                {0x1133e, 0x11344, 1},
                {0x11347, 0x11348, 1},
@@ -6331,6 +6609,10 @@ var _Other_Alphabetic = &RangeTable{
                {0x11d90, 0x11d91, 1},
                {0x11d93, 0x11d96, 1},
                {0x11ef3, 0x11ef6, 1},
+               {0x11f00, 0x11f01, 1},
+               {0x11f03, 0x11f34, 49},
+               {0x11f35, 0x11f3a, 1},
+               {0x11f3e, 0x11f40, 1},
                {0x16f4f, 0x16f51, 2},
                {0x16f52, 0x16f87, 1},
                {0x16f8f, 0x16f92, 1},
@@ -6341,8 +6623,8 @@ var _Other_Alphabetic = &RangeTable{
                {0x1e01b, 0x1e021, 1},
                {0x1e023, 0x1e024, 1},
                {0x1e026, 0x1e02a, 1},
-               {0x1e947, 0x1f130, 2025},
-               {0x1f131, 0x1f149, 1},
+               {0x1e08f, 0x1e947, 2232},
+               {0x1f130, 0x1f149, 1},
                {0x1f150, 0x1f169, 1},
                {0x1f170, 0x1f189, 1},
        },
@@ -6410,7 +6692,8 @@ var _Other_Lowercase = &RangeTable{
                {0x02c0, 0x02c1, 1},
                {0x02e0, 0x02e4, 1},
                {0x0345, 0x037a, 53},
-               {0x1d2c, 0x1d6a, 1},
+               {0x10fc, 0x1d2c, 3120},
+               {0x1d2d, 0x1d6a, 1},
                {0x1d78, 0x1d9b, 35},
                {0x1d9c, 0x1dbf, 1},
                {0x2071, 0x207f, 14},
@@ -6419,9 +6702,18 @@ var _Other_Lowercase = &RangeTable{
                {0x24d0, 0x24e9, 1},
                {0x2c7c, 0x2c7d, 1},
                {0xa69c, 0xa69d, 1},
-               {0xa770, 0xa7f8, 136},
-               {0xa7f9, 0xab5c, 867},
-               {0xab5d, 0xab5f, 1},
+               {0xa770, 0xa7f2, 130},
+               {0xa7f3, 0xa7f4, 1},
+               {0xa7f8, 0xa7f9, 1},
+               {0xab5c, 0xab5f, 1},
+               {0xab69, 0xab69, 1},
+       },
+       R32: []Range32{
+               {0x10780, 0x10783, 3},
+               {0x10784, 0x10785, 1},
+               {0x10787, 0x107b0, 1},
+               {0x107b2, 0x107ba, 1},
+               {0x1e030, 0x1e06d, 1},
        },
        LatinOffset: 1,
 }
@@ -6607,6 +6899,7 @@ var _Prepended_Concatenation_Mark = &RangeTable{
        R16: []Range16{
                {0x0600, 0x0605, 1},
                {0x06dd, 0x070f, 50},
+               {0x0890, 0x0891, 1},
                {0x08e2, 0x08e2, 1},
        },
        R32: []Range32{
@@ -6649,7 +6942,7 @@ var _Sentence_Terminal = &RangeTable{
        R16: []Range16{
                {0x0021, 0x002e, 13},
                {0x003f, 0x0589, 1354},
-               {0x061e, 0x061f, 1},
+               {0x061d, 0x061f, 1},
                {0x06d4, 0x0700, 44},
                {0x0701, 0x0702, 1},
                {0x07f9, 0x0837, 62},
@@ -6665,11 +6958,13 @@ var _Sentence_Terminal = &RangeTable{
                {0x1aa9, 0x1aab, 1},
                {0x1b5a, 0x1b5b, 1},
                {0x1b5e, 0x1b5f, 1},
+               {0x1b7d, 0x1b7e, 1},
                {0x1c3b, 0x1c3c, 1},
                {0x1c7e, 0x1c7f, 1},
                {0x203c, 0x203d, 1},
                {0x2047, 0x2049, 1},
                {0x2e2e, 0x2e3c, 14},
+               {0x2e53, 0x2e54, 1},
                {0x3002, 0xa4ff, 29949},
                {0xa60e, 0xa60f, 1},
                {0xa6f3, 0xa6f7, 4},
@@ -6687,6 +6982,7 @@ var _Sentence_Terminal = &RangeTable{
        R32: []Range32{
                {0x10a56, 0x10a57, 1},
                {0x10f55, 0x10f59, 1},
+               {0x10f86, 0x10f89, 1},
                {0x11047, 0x11048, 1},
                {0x110be, 0x110c1, 1},
                {0x11141, 0x11143, 1},
@@ -6705,6 +7001,7 @@ var _Sentence_Terminal = &RangeTable{
                {0x11a9b, 0x11a9c, 1},
                {0x11c41, 0x11c42, 1},
                {0x11ef7, 0x11ef8, 1},
+               {0x11f43, 0x11f44, 1},
                {0x16a6e, 0x16a6f, 1},
                {0x16af5, 0x16b37, 66},
                {0x16b38, 0x16b44, 12},
@@ -6741,6 +7038,8 @@ var _Soft_Dotted = &RangeTable{
                {0x1d62a, 0x1d62b, 1},
                {0x1d65e, 0x1d65f, 1},
                {0x1d692, 0x1d693, 1},
+               {0x1df1a, 0x1e04c, 306},
+               {0x1e04d, 0x1e068, 27},
        },
        LatinOffset: 1,
 }
@@ -6753,7 +7052,7 @@ var _Terminal_Punctuation = &RangeTable{
                {0x037e, 0x0387, 9},
                {0x0589, 0x05c3, 58},
                {0x060c, 0x061b, 15},
-               {0x061e, 0x061f, 1},
+               {0x061d, 0x061f, 1},
                {0x06d4, 0x0700, 44},
                {0x0701, 0x070a, 1},
                {0x070c, 0x07f8, 236},
@@ -6776,6 +7075,7 @@ var _Terminal_Punctuation = &RangeTable{
                {0x1aa8, 0x1aab, 1},
                {0x1b5a, 0x1b5b, 1},
                {0x1b5d, 0x1b5f, 1},
+               {0x1b7d, 0x1b7e, 1},
                {0x1c3b, 0x1c3f, 1},
                {0x1c7e, 0x1c7f, 1},
                {0x203c, 0x203d, 1},
@@ -6783,6 +7083,7 @@ var _Terminal_Punctuation = &RangeTable{
                {0x2e2e, 0x2e3c, 14},
                {0x2e41, 0x2e4c, 11},
                {0x2e4e, 0x2e4f, 1},
+               {0x2e53, 0x2e54, 1},
                {0x3001, 0x3002, 1},
                {0xa4fe, 0xa4ff, 1},
                {0xa60d, 0xa60f, 1},
@@ -6809,6 +7110,7 @@ var _Terminal_Punctuation = &RangeTable{
                {0x10b3a, 0x10b3f, 1},
                {0x10b99, 0x10b9c, 1},
                {0x10f55, 0x10f59, 1},
+               {0x10f86, 0x10f89, 1},
                {0x11047, 0x1104d, 1},
                {0x110be, 0x110c1, 1},
                {0x11141, 0x11143, 1},
@@ -6829,7 +7131,8 @@ var _Terminal_Punctuation = &RangeTable{
                {0x11aa1, 0x11aa2, 1},
                {0x11c41, 0x11c43, 1},
                {0x11c71, 0x11ef7, 646},
-               {0x11ef8, 0x12470, 1400},
+               {0x11ef8, 0x11f43, 75},
+               {0x11f44, 0x12470, 1324},
                {0x12471, 0x12474, 1},
                {0x16a6e, 0x16a6f, 1},
                {0x16af5, 0x16b37, 66},
@@ -6844,7 +7147,7 @@ var _Terminal_Punctuation = &RangeTable{
 var _Unified_Ideograph = &RangeTable{
        R16: []Range16{
                {0x3400, 0x4dbf, 1},
-               {0x4e00, 0x9ffc, 1},
+               {0x4e00, 0x9fff, 1},
                {0xfa0e, 0xfa0f, 1},
                {0xfa11, 0xfa13, 2},
                {0xfa14, 0xfa1f, 11},
@@ -6853,19 +7156,21 @@ var _Unified_Ideograph = &RangeTable{
                {0xfa28, 0xfa29, 1},
        },
        R32: []Range32{
-               {0x20000, 0x2a6dd, 1},
-               {0x2a700, 0x2b734, 1},
+               {0x20000, 0x2a6df, 1},
+               {0x2a700, 0x2b739, 1},
                {0x2b740, 0x2b81d, 1},
                {0x2b820, 0x2cea1, 1},
                {0x2ceb0, 0x2ebe0, 1},
                {0x30000, 0x3134a, 1},
+               {0x31350, 0x323af, 1},
        },
 }
 
 var _Variation_Selector = &RangeTable{
        R16: []Range16{
                {0x180b, 0x180d, 1},
-               {0xfe00, 0xfe0f, 1},
+               {0x180f, 0xfe00, 58865},
+               {0xfe01, 0xfe0f, 1},
        },
        R32: []Range32{
                {0xe0100, 0xe01ef, 1},
@@ -7181,8 +7486,8 @@ var _CaseRanges = []CaseRange{
        {0x2183, 0x2184, d{UpperLower, UpperLower, UpperLower}},
        {0x24B6, 0x24CF, d{0, 26, 0}},
        {0x24D0, 0x24E9, d{-26, 0, -26}},
-       {0x2C00, 0x2C2E, d{0, 48, 0}},
-       {0x2C30, 0x2C5E, d{-48, 0, -48}},
+       {0x2C00, 0x2C2F, d{0, 48, 0}},
+       {0x2C30, 0x2C5F, d{-48, 0, -48}},
        {0x2C60, 0x2C61, d{UpperLower, UpperLower, UpperLower}},
        {0x2C62, 0x2C62, d{0, -10743, 0}},
        {0x2C63, 0x2C63, d{0, -3814, 0}},
@@ -7224,12 +7529,13 @@ var _CaseRanges = []CaseRange{
        {0xA7B1, 0xA7B1, d{0, -42282, 0}},
        {0xA7B2, 0xA7B2, d{0, -42261, 0}},
        {0xA7B3, 0xA7B3, d{0, 928, 0}},
-       {0xA7B4, 0xA7BF, d{UpperLower, UpperLower, UpperLower}},
-       {0xA7C2, 0xA7C3, d{UpperLower, UpperLower, UpperLower}},
+       {0xA7B4, 0xA7C3, d{UpperLower, UpperLower, UpperLower}},
        {0xA7C4, 0xA7C4, d{0, -48, 0}},
        {0xA7C5, 0xA7C5, d{0, -42307, 0}},
        {0xA7C6, 0xA7C6, d{0, -35384, 0}},
        {0xA7C7, 0xA7CA, d{UpperLower, UpperLower, UpperLower}},
+       {0xA7D0, 0xA7D1, d{UpperLower, UpperLower, UpperLower}},
+       {0xA7D6, 0xA7D9, d{UpperLower, UpperLower, UpperLower}},
        {0xA7F5, 0xA7F6, d{UpperLower, UpperLower, UpperLower}},
        {0xAB53, 0xAB53, d{-928, 0, -928}},
        {0xAB70, 0xABBF, d{-38864, 0, -38864}},
@@ -7239,6 +7545,14 @@ var _CaseRanges = []CaseRange{
        {0x10428, 0x1044F, d{-40, 0, -40}},
        {0x104B0, 0x104D3, d{0, 40, 0}},
        {0x104D8, 0x104FB, d{-40, 0, -40}},
+       {0x10570, 0x1057A, d{0, 39, 0}},
+       {0x1057C, 0x1058A, d{0, 39, 0}},
+       {0x1058C, 0x10592, d{0, 39, 0}},
+       {0x10594, 0x10595, d{0, 39, 0}},
+       {0x10597, 0x105A1, d{-39, 0, -39}},
+       {0x105A3, 0x105B1, d{-39, 0, -39}},
+       {0x105B3, 0x105B9, d{-39, 0, -39}},
+       {0x105BB, 0x105BC, d{-39, 0, -39}},
        {0x10C80, 0x10CB2, d{0, 64, 0}},
        {0x10CC0, 0x10CF2, d{-64, 0, -64}},
        {0x118A0, 0x118BF, d{0, 32, 0}},
@@ -7376,7 +7690,7 @@ var properties = [MaxLatin1 + 1]uint8{
        0x7C: pS | pp,  // '|'
        0x7D: pP | pp,  // '}'
        0x7E: pS | pp,  // '~'
-       0x7F: pC,       // '\u007f'
+       0x7F: pC,       // '\x7f'
        0x80: pC,       // '\u0080'
        0x81: pC,       // '\u0081'
        0x82: pC,       // '\u0082'
@@ -7831,7 +8145,7 @@ var foldLl = &RangeTable{
                {0x2126, 0x212a, 4},
                {0x212b, 0x2132, 7},
                {0x2183, 0x2c00, 2685},
-               {0x2c01, 0x2c2e, 1},
+               {0x2c01, 0x2c2f, 1},
                {0x2c60, 0x2c62, 2},
                {0x2c63, 0x2c64, 1},
                {0x2c67, 0x2c6d, 2},
@@ -7852,15 +8166,20 @@ var foldLl = &RangeTable{
                {0xa796, 0xa7aa, 2},
                {0xa7ab, 0xa7ae, 1},
                {0xa7b0, 0xa7b4, 1},
-               {0xa7b6, 0xa7be, 2},
-               {0xa7c2, 0xa7c4, 2},
+               {0xa7b6, 0xa7c4, 2},
                {0xa7c5, 0xa7c7, 1},
-               {0xa7c9, 0xa7f5, 44},
-               {0xff21, 0xff3a, 1},
+               {0xa7c9, 0xa7d0, 7},
+               {0xa7d6, 0xa7d8, 2},
+               {0xa7f5, 0xff21, 22316},
+               {0xff22, 0xff3a, 1},
        },
        R32: []Range32{
                {0x10400, 0x10427, 1},
                {0x104b0, 0x104d3, 1},
+               {0x10570, 0x1057a, 1},
+               {0x1057c, 0x1058a, 1},
+               {0x1058c, 0x10592, 1},
+               {0x10594, 0x10595, 1},
                {0x10c80, 0x10cb2, 1},
                {0x118a0, 0x118bf, 1},
                {0x16e40, 0x16e5f, 1},
@@ -7969,7 +8288,7 @@ var foldLu = &RangeTable{
                {0x1fd1, 0x1fe0, 15},
                {0x1fe1, 0x1fe5, 4},
                {0x214e, 0x2184, 54},
-               {0x2c30, 0x2c5e, 1},
+               {0x2c30, 0x2c5f, 1},
                {0x2c61, 0x2c65, 4},
                {0x2c66, 0x2c6c, 2},
                {0x2c73, 0x2c76, 3},
@@ -7987,9 +8306,10 @@ var foldLu = &RangeTable{
                {0xa78c, 0xa791, 5},
                {0xa793, 0xa794, 1},
                {0xa797, 0xa7a9, 2},
-               {0xa7b5, 0xa7bf, 2},
-               {0xa7c3, 0xa7c8, 5},
-               {0xa7ca, 0xa7f6, 44},
+               {0xa7b5, 0xa7c3, 2},
+               {0xa7c8, 0xa7ca, 2},
+               {0xa7d1, 0xa7d7, 6},
+               {0xa7d9, 0xa7f6, 29},
                {0xab53, 0xab70, 29},
                {0xab71, 0xabbf, 1},
                {0xff41, 0xff5a, 1},
@@ -7997,6 +8317,10 @@ var foldLu = &RangeTable{
        R32: []Range32{
                {0x10428, 0x1044f, 1},
                {0x104d8, 0x104fb, 1},
+               {0x10597, 0x105a1, 1},
+               {0x105a3, 0x105b1, 1},
+               {0x105b3, 0x105b9, 1},
+               {0x105bb, 0x105bc, 1},
                {0x10cc0, 0x10cf2, 1},
                {0x118c0, 0x118df, 1},
                {0x16e60, 0x16e7f, 1},
@@ -8048,7 +8372,7 @@ var foldInherited = &RangeTable{
        },
 }
 
-// Range entries: 3499 16-bit, 1820 32-bit, 5319 total.
-// Range bytes: 20994 16-bit, 21840 32-bit, 42834 total.
+// Range entries: 3535 16-bit, 2031 32-bit, 5566 total.
+// Range bytes: 21210 16-bit, 24372 32-bit, 45582 total.
 
 // Fold orbit bytes: 88 pairs, 352 bytes