--- contrib/unicode/README.jj	2024-01-08 12:15:13.608477089 +0100
+++ contrib/unicode/README	2024-10-07 11:09:05.145199081 +0200
@@ -35,7 +35,7 @@ localedata/unicode-gen/unicode_utils.py
 localedata/unicode-gen/utf8_gen.py
 
 And the most recent versions added to GCC are from glibc git commit:
-71de3aead9fffe89556e80ebc94aa918d8ee7bca
+064c708c78cc2a6b5802dce73108fc0c1c6bfc80
 
 The script gen_wcwidth.py found here contains the GCC-specific code to
 map glibc's output to the lookup tables we require.  This script should not need
@@ -52,7 +52,7 @@ The procedure to update GCC's Unicode su
 
 3.  Run ./gen_wcwidth.py X.Y > ../../libcpp/generated_cpp_wcwidth.h
     (where X.Y is the version of the Unicode standard corresponding to the
-    Unicode data files being used, most recently, 15.1.0).
+    Unicode data files being used, most recently, 16.0.0).
 
 4.  Update Unicode Copyright years in libcpp/makeucnid.cc and in
     libcpp/makeuname2c.cc up to the year in which the Unicode
@@ -67,7 +67,7 @@ The procedure to update GCC's Unicode su
 	> ../../libcpp/ucnid.h
 
 7.  Read the corresponding Unicode's standard and update correspondingly
-    generated_ranges table in libcpp/makeuname2c.cc (in Unicode 15 all
+    generated_ranges table in libcpp/makeuname2c.cc (in Unicode 16 all
     the needed information was in Table 4-8).
 
 8.  Compile makeuname2c, e.g. with:
--- contrib/unicode/gen_libstdcxx_unicode_data.py.jj	2024-03-20 10:30:46.008052983 +0100
+++ contrib/unicode/gen_libstdcxx_unicode_data.py	2024-10-07 11:24:03.334555268 +0200
@@ -63,7 +63,7 @@ print("""
 """)
 print("#ifndef _GLIBCXX_GET_UNICODE_DATA")
 print('# error "This is not a public header, do not include it directly"')
-print("#elif _GLIBCXX_GET_UNICODE_DATA != 150100")
+print("#elif _GLIBCXX_GET_UNICODE_DATA != 160000")
 print('# error "Version mismatch for Unicode static data"')
 print("#endif\n")
 
--- contrib/unicode/from_glibc/utf8_gen.py.jj	2024-01-03 11:51:21.878865163 +0100
+++ contrib/unicode/from_glibc/utf8_gen.py	2024-01-20 16:07:50.168815813 +0100
@@ -46,7 +46,7 @@ JAMO_MEDIAL_SHORT_NAME = (
 )
 
 JAMO_FINAL_SHORT_NAME = (
-    '', 'G', 'GG', 'GS', 'N', 'NI', 'NH', 'D', 'L', 'LG', 'LM', 'LB', 'LS',
+    '', 'G', 'GG', 'GS', 'N', 'NJ', 'NH', 'D', 'L', 'LG', 'LM', 'LB', 'LS',
     'LT', 'LP', 'LH', 'M', 'B', 'BS', 'S', 'SS', 'NG', 'J', 'C', 'K', 'T',
     'P', 'H'
 )
@@ -204,7 +204,7 @@ def write_header_width(outfile, unicode_
                   + '{:s}.\n'.format(unicode_version))
     outfile.write('% - Default width is 1.\n')
     outfile.write('% - Double-width characters have width 2; generated from\n')
-    outfile.write('%        "grep \'^[^;]*;[WF]\' EastAsianWidth.txt"\n')
+    outfile.write('%        "grep \'^[^;]*;\\s*[WF]\' EastAsianWidth.txt"\n')
     outfile.write('% - Non-spacing characters have width 0; '
                   + 'generated from PropList.txt or\n')
     outfile.write('%   "grep \'^[^;]*;[^;]*;[^;]*;[^;]*;NSM;\' '
@@ -339,8 +339,8 @@ if __name__ == "__main__":
     with open(ARGS.east_asian_with_file, mode='r') as EAST_ASIAN_WIDTH_FILE:
         EAST_ASIAN_WIDTH_LINES = []
         for LINE in EAST_ASIAN_WIDTH_FILE:
-            # If characters from EastAasianWidth.txt which are from
-            # from reserved ranges (i.e. not yet assigned code points)
+            # If characters from EastAsianWidth.txt which are from
+            # reserved ranges (i.e. not yet assigned code points)
             # are added to the WIDTH section of the UTF-8 file, then
             # “make check” produces “Unknown Character” errors for
             # these code points because such unassigned code points
@@ -350,7 +350,7 @@ if __name__ == "__main__":
             # the EastAsianWidth.txt file.
             if re.match(r'.*<reserved-.+>\.\.<reserved-.+>.*', LINE):
                 continue
-            if re.match(r'^[^;]*;\s*[WF]\s*', LINE):
+            if re.match(r'^[^;]*;\s*[WF]', LINE):
                 EAST_ASIAN_WIDTH_LINES.append(LINE.strip())
     with open(ARGS.prop_list_file, mode='r') as PROP_LIST_FILE:
         PROP_LIST_LINES = []
--- contrib/unicode/emoji-data.txt.jj	2024-01-08 12:15:13.609477075 +0100
+++ contrib/unicode/emoji-data.txt	2024-10-07 10:59:13.824531161 +0200
@@ -1,11 +1,11 @@
 # emoji-data.txt
-# Date: 2023-02-01, 02:22:54 GMT
-# © 2023 Unicode®, Inc.
+# Date: 2024-05-01, 21:25:24 GMT
+# © 2024 Unicode®, Inc.
 # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries.
-# For terms of use, see https://www.unicode.org/terms_of_use.html
+# For terms of use and license, see https://www.unicode.org/terms_of_use.html
 #
 # Emoji Data for UTS #51
-# Used with Emoji Version 15.1 and subsequent minor revisions (if any)
+# Used with Emoji Version 16.0 and subsequent minor revisions (if any)
 #
 # For documentation and usage, see https://www.unicode.org/reports/tr51
 #
@@ -407,6 +407,8 @@
 1FA80..1FA82  ; Emoji                # E12.0  [3] (🪀..🪂)    yo-yo..parachute
 1FA83..1FA86  ; Emoji                # E13.0  [4] (🪃..🪆)    boomerang..nesting dolls
 1FA87..1FA88  ; Emoji                # E15.0  [2] (🪇..🪈)    maracas..flute
+1FA89         ; Emoji                # E16.0  [1] (🪉)       harp
+1FA8F         ; Emoji                # E16.0  [1] (🪏)       shovel
 1FA90..1FA95  ; Emoji                # E12.0  [6] (🪐..🪕)    ringed planet..banjo
 1FA96..1FAA8  ; Emoji                # E13.0 [19] (🪖..🪨)    military helmet..rock
 1FAA9..1FAAC  ; Emoji                # E14.0  [4] (🪩..🪬)    mirror ball..hamsa
@@ -414,19 +416,24 @@
 1FAB0..1FAB6  ; Emoji                # E13.0  [7] (🪰..🪶)    fly..feather
 1FAB7..1FABA  ; Emoji                # E14.0  [4] (🪷..🪺)    lotus..nest with eggs
 1FABB..1FABD  ; Emoji                # E15.0  [3] (🪻..🪽)    hyacinth..wing
+1FABE         ; Emoji                # E16.0  [1] (🪾)       leafless tree
 1FABF         ; Emoji                # E15.0  [1] (🪿)       goose
 1FAC0..1FAC2  ; Emoji                # E13.0  [3] (🫀..🫂)    anatomical heart..people hugging
 1FAC3..1FAC5  ; Emoji                # E14.0  [3] (🫃..🫅)    pregnant man..person with crown
+1FAC6         ; Emoji                # E16.0  [1] (🫆)       fingerprint
 1FACE..1FACF  ; Emoji                # E15.0  [2] (🫎..🫏)    moose..donkey
 1FAD0..1FAD6  ; Emoji                # E13.0  [7] (🫐..🫖)    blueberries..teapot
 1FAD7..1FAD9  ; Emoji                # E14.0  [3] (🫗..🫙)    pouring liquid..jar
 1FADA..1FADB  ; Emoji                # E15.0  [2] (🫚..🫛)    ginger root..pea pod
+1FADC         ; Emoji                # E16.0  [1] (🫜)       root vegetable
+1FADF         ; Emoji                # E16.0  [1] (🫟)       splatter
 1FAE0..1FAE7  ; Emoji                # E14.0  [8] (🫠..🫧)    melting face..bubbles
 1FAE8         ; Emoji                # E15.0  [1] (🫨)       shaking face
+1FAE9         ; Emoji                # E16.0  [1] (🫩)       face with bags under eyes
 1FAF0..1FAF6  ; Emoji                # E14.0  [7] (🫰..🫶)    hand with index finger and thumb crossed..heart hands
 1FAF7..1FAF8  ; Emoji                # E15.0  [2] (🫷..🫸)    leftwards pushing hand..rightwards pushing hand
 
-# Total elements: 1424
+# Total elements: 1431
 
 # ================================================
 
@@ -696,6 +703,8 @@
 1FA80..1FA82  ; Emoji_Presentation   # E12.0  [3] (🪀..🪂)    yo-yo..parachute
 1FA83..1FA86  ; Emoji_Presentation   # E13.0  [4] (🪃..🪆)    boomerang..nesting dolls
 1FA87..1FA88  ; Emoji_Presentation   # E15.0  [2] (🪇..🪈)    maracas..flute
+1FA89         ; Emoji_Presentation   # E16.0  [1] (🪉)       harp
+1FA8F         ; Emoji_Presentation   # E16.0  [1] (🪏)       shovel
 1FA90..1FA95  ; Emoji_Presentation   # E12.0  [6] (🪐..🪕)    ringed planet..banjo
 1FA96..1FAA8  ; Emoji_Presentation   # E13.0 [19] (🪖..🪨)    military helmet..rock
 1FAA9..1FAAC  ; Emoji_Presentation   # E14.0  [4] (🪩..🪬)    mirror ball..hamsa
@@ -703,19 +712,24 @@
 1FAB0..1FAB6  ; Emoji_Presentation   # E13.0  [7] (🪰..🪶)    fly..feather
 1FAB7..1FABA  ; Emoji_Presentation   # E14.0  [4] (🪷..🪺)    lotus..nest with eggs
 1FABB..1FABD  ; Emoji_Presentation   # E15.0  [3] (🪻..🪽)    hyacinth..wing
+1FABE         ; Emoji_Presentation   # E16.0  [1] (🪾)       leafless tree
 1FABF         ; Emoji_Presentation   # E15.0  [1] (🪿)       goose
 1FAC0..1FAC2  ; Emoji_Presentation   # E13.0  [3] (🫀..🫂)    anatomical heart..people hugging
 1FAC3..1FAC5  ; Emoji_Presentation   # E14.0  [3] (🫃..🫅)    pregnant man..person with crown
+1FAC6         ; Emoji_Presentation   # E16.0  [1] (🫆)       fingerprint
 1FACE..1FACF  ; Emoji_Presentation   # E15.0  [2] (🫎..🫏)    moose..donkey
 1FAD0..1FAD6  ; Emoji_Presentation   # E13.0  [7] (🫐..🫖)    blueberries..teapot
 1FAD7..1FAD9  ; Emoji_Presentation   # E14.0  [3] (🫗..🫙)    pouring liquid..jar
 1FADA..1FADB  ; Emoji_Presentation   # E15.0  [2] (🫚..🫛)    ginger root..pea pod
+1FADC         ; Emoji_Presentation   # E16.0  [1] (🫜)       root vegetable
+1FADF         ; Emoji_Presentation   # E16.0  [1] (🫟)       splatter
 1FAE0..1FAE7  ; Emoji_Presentation   # E14.0  [8] (🫠..🫧)    melting face..bubbles
 1FAE8         ; Emoji_Presentation   # E15.0  [1] (🫨)       shaking face
+1FAE9         ; Emoji_Presentation   # E16.0  [1] (🫩)       face with bags under eyes
 1FAF0..1FAF6  ; Emoji_Presentation   # E14.0  [7] (🫰..🫶)    hand with index finger and thumb crossed..heart hands
 1FAF7..1FAF8  ; Emoji_Presentation   # E15.0  [2] (🫷..🫸)    leftwards pushing hand..rightwards pushing hand
 
-# Total elements: 1205
+# Total elements: 1212
 
 # ================================================
 
@@ -1289,7 +1303,9 @@ E0020..E007F  ; Emoji_Component      # E
 1FA80..1FA82  ; Extended_Pictographic# E12.0  [3] (🪀..🪂)    yo-yo..parachute
 1FA83..1FA86  ; Extended_Pictographic# E13.0  [4] (🪃..🪆)    boomerang..nesting dolls
 1FA87..1FA88  ; Extended_Pictographic# E15.0  [2] (🪇..🪈)    maracas..flute
-1FA89..1FA8F  ; Extended_Pictographic# E0.0   [7] (🪉..🪏)    <reserved-1FA89>..<reserved-1FA8F>
+1FA89         ; Extended_Pictographic# E16.0  [1] (🪉)       harp
+1FA8A..1FA8E  ; Extended_Pictographic# E0.0   [5] (🪊..🪎)    <reserved-1FA8A>..<reserved-1FA8E>
+1FA8F         ; Extended_Pictographic# E16.0  [1] (🪏)       shovel
 1FA90..1FA95  ; Extended_Pictographic# E12.0  [6] (🪐..🪕)    ringed planet..banjo
 1FA96..1FAA8  ; Extended_Pictographic# E13.0 [19] (🪖..🪨)    military helmet..rock
 1FAA9..1FAAC  ; Extended_Pictographic# E14.0  [4] (🪩..🪬)    mirror ball..hamsa
@@ -1297,19 +1313,23 @@ E0020..E007F  ; Emoji_Component      # E
 1FAB0..1FAB6  ; Extended_Pictographic# E13.0  [7] (🪰..🪶)    fly..feather
 1FAB7..1FABA  ; Extended_Pictographic# E14.0  [4] (🪷..🪺)    lotus..nest with eggs
 1FABB..1FABD  ; Extended_Pictographic# E15.0  [3] (🪻..🪽)    hyacinth..wing
-1FABE         ; Extended_Pictographic# E0.0   [1] (🪾)       <reserved-1FABE>
+1FABE         ; Extended_Pictographic# E16.0  [1] (🪾)       leafless tree
 1FABF         ; Extended_Pictographic# E15.0  [1] (🪿)       goose
 1FAC0..1FAC2  ; Extended_Pictographic# E13.0  [3] (🫀..🫂)    anatomical heart..people hugging
 1FAC3..1FAC5  ; Extended_Pictographic# E14.0  [3] (🫃..🫅)    pregnant man..person with crown
-1FAC6..1FACD  ; Extended_Pictographic# E0.0   [8] (🫆..🫍)    <reserved-1FAC6>..<reserved-1FACD>
+1FAC6         ; Extended_Pictographic# E16.0  [1] (🫆)       fingerprint
+1FAC7..1FACD  ; Extended_Pictographic# E0.0   [7] (🫇..🫍)    <reserved-1FAC7>..<reserved-1FACD>
 1FACE..1FACF  ; Extended_Pictographic# E15.0  [2] (🫎..🫏)    moose..donkey
 1FAD0..1FAD6  ; Extended_Pictographic# E13.0  [7] (🫐..🫖)    blueberries..teapot
 1FAD7..1FAD9  ; Extended_Pictographic# E14.0  [3] (🫗..🫙)    pouring liquid..jar
 1FADA..1FADB  ; Extended_Pictographic# E15.0  [2] (🫚..🫛)    ginger root..pea pod
-1FADC..1FADF  ; Extended_Pictographic# E0.0   [4] (🫜..🫟)    <reserved-1FADC>..<reserved-1FADF>
+1FADC         ; Extended_Pictographic# E16.0  [1] (🫜)       root vegetable
+1FADD..1FADE  ; Extended_Pictographic# E0.0   [2] (🫝..🫞)    <reserved-1FADD>..<reserved-1FADE>
+1FADF         ; Extended_Pictographic# E16.0  [1] (🫟)       splatter
 1FAE0..1FAE7  ; Extended_Pictographic# E14.0  [8] (🫠..🫧)    melting face..bubbles
 1FAE8         ; Extended_Pictographic# E15.0  [1] (🫨)       shaking face
-1FAE9..1FAEF  ; Extended_Pictographic# E0.0   [7] (🫩..🫯)    <reserved-1FAE9>..<reserved-1FAEF>
+1FAE9         ; Extended_Pictographic# E16.0  [1] (🫩)       face with bags under eyes
+1FAEA..1FAEF  ; Extended_Pictographic# E0.0   [6] (🫪..🫯)    <reserved-1FAEA>..<reserved-1FAEF>
 1FAF0..1FAF6  ; Extended_Pictographic# E14.0  [7] (🫰..🫶)    hand with index finger and thumb crossed..heart hands
 1FAF7..1FAF8  ; Extended_Pictographic# E15.0  [2] (🫷..🫸)    leftwards pushing hand..rightwards pushing hand
 1FAF9..1FAFF  ; Extended_Pictographic# E0.0   [7] (🫹..🫿)    <reserved-1FAF9>..<reserved-1FAFF>
--- contrib/unicode/PropList.txt.jj	2023-11-14 18:32:34.936123080 +0100
+++ contrib/unicode/PropList.txt	2024-10-07 10:59:03.383678279 +0200
@@ -1,8 +1,8 @@
-# PropList-15.1.0.txt
-# Date: 2023-08-01, 21:56:53 GMT
-# © 2023 Unicode®, Inc.
+# PropList-16.0.0.txt
+# Date: 2024-05-31, 18:09:48 GMT
+# © 2024 Unicode®, Inc.
 # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries.
-# For terms of use, see https://www.unicode.org/terms_of_use.html
+# For terms of use and license, see https://www.unicode.org/terms_of_use.html
 #
 # Unicode Character Database
 #   For documentation, see https://www.unicode.org/reports/tr44/
@@ -62,9 +62,10 @@ FE31..FE32    ; Dash # Pd   [2] PRESENTA
 FE58          ; Dash # Pd       SMALL EM DASH
 FE63          ; Dash # Pd       SMALL HYPHEN-MINUS
 FF0D          ; Dash # Pd       FULLWIDTH HYPHEN-MINUS
+10D6E         ; Dash # Pd       GARAY HYPHEN
 10EAD         ; Dash # Pd       YEZIDI HYPHENATION MARK
 
-# Total code points: 30
+# Total code points: 31
 
 # ================================================
 
@@ -132,7 +133,8 @@ FF63          ; Quotation_Mark # Pe
 0700..070A    ; Terminal_Punctuation # Po  [11] SYRIAC END OF PARAGRAPH..SYRIAC CONTRACTION
 070C          ; Terminal_Punctuation # Po       SYRIAC HARKLEAN METOBELUS
 07F8..07F9    ; Terminal_Punctuation # Po   [2] NKO COMMA..NKO EXCLAMATION MARK
-0830..083E    ; Terminal_Punctuation # Po  [15] SAMARITAN PUNCTUATION NEQUDAA..SAMARITAN PUNCTUATION ANNAAU
+0830..0835    ; Terminal_Punctuation # Po   [6] SAMARITAN PUNCTUATION NEQUDAA..SAMARITAN PUNCTUATION SHIYYAALAA
+0837..083E    ; Terminal_Punctuation # Po   [8] SAMARITAN PUNCTUATION MELODIC QITSA..SAMARITAN PUNCTUATION ANNAAU
 085E          ; Terminal_Punctuation # Po       MANDAIC PUNCTUATION
 0964..0965    ; Terminal_Punctuation # Po   [2] DEVANAGARI DANDA..DEVANAGARI DOUBLE DANDA
 0E5A..0E5B    ; Terminal_Punctuation # Po   [2] THAI CHARACTER ANGKHANKHU..THAI CHARACTER KHOMUT
@@ -149,13 +151,16 @@ FF63          ; Quotation_Mark # Pe
 1808..1809    ; Terminal_Punctuation # Po   [2] MONGOLIAN MANCHU COMMA..MONGOLIAN MANCHU FULL STOP
 1944..1945    ; Terminal_Punctuation # Po   [2] LIMBU EXCLAMATION MARK..LIMBU QUESTION MARK
 1AA8..1AAB    ; Terminal_Punctuation # Po   [4] TAI THAM SIGN KAAN..TAI THAM SIGN SATKAANKUU
+1B4E..1B4F    ; Terminal_Punctuation # Po   [2] BALINESE INVERTED CARIK SIKI..BALINESE INVERTED CARIK PAREREN
 1B5A..1B5B    ; Terminal_Punctuation # Po   [2] BALINESE PANTI..BALINESE PAMADA
 1B5D..1B5F    ; Terminal_Punctuation # Po   [3] BALINESE CARIK PAMUNGKAH..BALINESE CARIK PAREREN
-1B7D..1B7E    ; Terminal_Punctuation # Po   [2] BALINESE PANTI LANTANG..BALINESE PAMADA LANTANG
+1B7D..1B7F    ; Terminal_Punctuation # Po   [3] BALINESE PANTI LANTANG..BALINESE PANTI BAWAK
 1C3B..1C3F    ; Terminal_Punctuation # Po   [5] LEPCHA PUNCTUATION TA-ROL..LEPCHA PUNCTUATION TSHOOK
 1C7E..1C7F    ; Terminal_Punctuation # Po   [2] OL CHIKI PUNCTUATION MUCAAD..OL CHIKI PUNCTUATION DOUBLE MUCAAD
+2024          ; Terminal_Punctuation # Po       ONE DOT LEADER
 203C..203D    ; Terminal_Punctuation # Po   [2] DOUBLE EXCLAMATION MARK..INTERROBANG
 2047..2049    ; Terminal_Punctuation # Po   [3] DOUBLE QUESTION MARK..EXCLAMATION QUESTION MARK
+2CF9..2CFB    ; Terminal_Punctuation # Po   [3] COPTIC OLD NUBIAN FULL STOP..COPTIC OLD NUBIAN INDIRECT QUESTION MARK
 2E2E          ; Terminal_Punctuation # Po       REVERSED QUESTION MARK
 2E3C          ; Terminal_Punctuation # Po       STENOGRAPHIC FULL STOP
 2E41          ; Terminal_Punctuation # Po       REVERSED COMMA
@@ -174,6 +179,8 @@ AA5D..AA5F    ; Terminal_Punctuation # P
 AADF          ; Terminal_Punctuation # Po       TAI VIET SYMBOL KOI KOI
 AAF0..AAF1    ; Terminal_Punctuation # Po   [2] MEETEI MAYEK CHEIKHAN..MEETEI MAYEK AHANG KHUDAM
 ABEB          ; Terminal_Punctuation # Po       MEETEI MAYEK CHEIKHEI
+FE12          ; Terminal_Punctuation # Po       PRESENTATION FORM FOR VERTICAL IDEOGRAPHIC FULL STOP
+FE15..FE16    ; Terminal_Punctuation # Po   [2] PRESENTATION FORM FOR VERTICAL EXCLAMATION MARK..PRESENTATION FORM FOR VERTICAL QUESTION MARK
 FE50..FE52    ; Terminal_Punctuation # Po   [3] SMALL COMMA..SMALL FULL STOP
 FE54..FE57    ; Terminal_Punctuation # Po   [4] SMALL SEMICOLON..SMALL EXCLAMATION MARK
 FF01          ; Terminal_Punctuation # Po       FULLWIDTH EXCLAMATION MARK
@@ -201,6 +208,7 @@ FF64          ; Terminal_Punctuation # P
 111DE..111DF  ; Terminal_Punctuation # Po   [2] SHARADA SECTION MARK-1..SHARADA SECTION MARK-2
 11238..1123C  ; Terminal_Punctuation # Po   [5] KHOJKI DANDA..KHOJKI DOUBLE SECTION MARK
 112A9         ; Terminal_Punctuation # Po       MULTANI SECTION MARK
+113D4..113D5  ; Terminal_Punctuation # Po   [2] TULU-TIGALARI DANDA..TULU-TIGALARI DOUBLE DANDA
 1144B..1144D  ; Terminal_Punctuation # Po   [3] NEWA DANDA..NEWA COMMA
 1145A..1145B  ; Terminal_Punctuation # Po   [2] NEWA DOUBLE COMMA..NEWA PLACEHOLDER MARK
 115C2..115C5  ; Terminal_Punctuation # Po   [4] SIDDHAM DANDA..SIDDHAM SEPARATOR BAR
@@ -221,11 +229,12 @@ FF64          ; Terminal_Punctuation # P
 16AF5         ; Terminal_Punctuation # Po       BASSA VAH FULL STOP
 16B37..16B39  ; Terminal_Punctuation # Po   [3] PAHAWH HMONG SIGN VOS THOM..PAHAWH HMONG SIGN CIM CHEEM
 16B44         ; Terminal_Punctuation # Po       PAHAWH HMONG SIGN XAUS
+16D6E..16D6F  ; Terminal_Punctuation # Po   [2] KIRAT RAI DANDA..KIRAT RAI DOUBLE DANDA
 16E97..16E98  ; Terminal_Punctuation # Po   [2] MEDEFAIDRIN COMMA..MEDEFAIDRIN FULL STOP
 1BC9F         ; Terminal_Punctuation # Po       DUPLOYAN PUNCTUATION CHINOOK FULL STOP
 1DA87..1DA8A  ; Terminal_Punctuation # Po   [4] SIGNWRITING COMMA..SIGNWRITING COLON
 
-# Total code points: 278
+# Total code points: 291
 
 # ================================================
 
@@ -430,6 +439,7 @@ FF41..FF46    ; Hex_Digit # L&   [6] FUL
 # ================================================
 
 0345          ; Other_Alphabetic # Mn       COMBINING GREEK YPOGEGRAMMENI
+0363..036F    ; Other_Alphabetic # Mn  [13] COMBINING LATIN SMALL LETTER A..COMBINING LATIN SMALL LETTER X
 05B0..05BD    ; Other_Alphabetic # Mn  [14] HEBREW POINT SHEVA..HEBREW POINT METEG
 05BF          ; Other_Alphabetic # Mn       HEBREW POINT RAFE
 05C1..05C2    ; Other_Alphabetic # Mn   [2] HEBREW POINT SHIN DOT..HEBREW POINT SIN DOT
@@ -450,6 +460,7 @@ FF41..FF46    ; Hex_Digit # L&   [6] FUL
 081B..0823    ; Other_Alphabetic # Mn   [9] SAMARITAN MARK EPENTHETIC YUT..SAMARITAN VOWEL SIGN A
 0825..0827    ; Other_Alphabetic # Mn   [3] SAMARITAN VOWEL SIGN SHORT A..SAMARITAN VOWEL SIGN U
 0829..082C    ; Other_Alphabetic # Mn   [4] SAMARITAN VOWEL SIGN LONG I..SAMARITAN VOWEL SIGN SUKUN
+0897          ; Other_Alphabetic # Mn       ARABIC PEPET
 08D4..08DF    ; Other_Alphabetic # Mn  [12] ARABIC SMALL HIGH WORD AR-RUB..ARABIC SMALL HIGH WORD WAQFA
 08E3..08E9    ; Other_Alphabetic # Mn   [7] ARABIC TURNED DAMMA BELOW..ARABIC CURLY KASRATAN
 08F0..0902    ; Other_Alphabetic # Mn  [19] ARABIC OPEN FATHATAN..DEVANAGARI SIGN ANUSVARA
@@ -634,7 +645,7 @@ FF41..FF46    ; Hex_Digit # L&   [6] FUL
 1C2C..1C33    ; Other_Alphabetic # Mn   [8] LEPCHA VOWEL SIGN E..LEPCHA CONSONANT SIGN T
 1C34..1C35    ; Other_Alphabetic # Mc   [2] LEPCHA CONSONANT SIGN NYIN-DO..LEPCHA CONSONANT SIGN KANG
 1C36          ; Other_Alphabetic # Mn       LEPCHA SIGN RAN
-1DE7..1DF4    ; Other_Alphabetic # Mn  [14] COMBINING LATIN SMALL LETTER ALPHA..COMBINING LATIN SMALL LETTER U WITH DIAERESIS
+1DD3..1DF4    ; Other_Alphabetic # Mn  [34] COMBINING LATIN SMALL LETTER FLATTENED OPEN A ABOVE..COMBINING LATIN SMALL LETTER U WITH DIAERESIS
 24B6..24E9    ; Other_Alphabetic # So  [52] CIRCLED LATIN CAPITAL LETTER A..CIRCLED LATIN SMALL LETTER Z
 2DE0..2DFF    ; Other_Alphabetic # Mn  [32] COMBINING CYRILLIC LETTER BE..COMBINING CYRILLIC LETTER IOTIFIED BIG YUS
 A674..A67B    ; Other_Alphabetic # Mn   [8] COMBINING CYRILLIC LETTER UKRAINIAN IE..COMBINING CYRILLIC LETTER OMEGA
@@ -689,7 +700,9 @@ FB1E          ; Other_Alphabetic # Mn
 10A05..10A06  ; Other_Alphabetic # Mn   [2] KHAROSHTHI VOWEL SIGN E..KHAROSHTHI VOWEL SIGN O
 10A0C..10A0F  ; Other_Alphabetic # Mn   [4] KHAROSHTHI VOWEL LENGTH MARK..KHAROSHTHI SIGN VISARGA
 10D24..10D27  ; Other_Alphabetic # Mn   [4] HANIFI ROHINGYA SIGN HARBAHAY..HANIFI ROHINGYA SIGN TASSI
+10D69         ; Other_Alphabetic # Mn       GARAY VOWEL SIGN E
 10EAB..10EAC  ; Other_Alphabetic # Mn   [2] YEZIDI COMBINING HAMZA MARK..YEZIDI COMBINING MADDA MARK
+10EFC         ; Other_Alphabetic # Mn       ARABIC COMBINING ALEF OVERLAY
 11000         ; Other_Alphabetic # Mc       BRAHMI SIGN CANDRABINDU
 11001         ; Other_Alphabetic # Mn       BRAHMI SIGN ANUSVARA
 11002         ; Other_Alphabetic # Mc       BRAHMI SIGN VISARGA
@@ -732,6 +745,12 @@ FB1E          ; Other_Alphabetic # Mn
 1134B..1134C  ; Other_Alphabetic # Mc   [2] GRANTHA VOWEL SIGN OO..GRANTHA VOWEL SIGN AU
 11357         ; Other_Alphabetic # Mc       GRANTHA AU LENGTH MARK
 11362..11363  ; Other_Alphabetic # Mc   [2] GRANTHA VOWEL SIGN VOCALIC L..GRANTHA VOWEL SIGN VOCALIC LL
+113B8..113BA  ; Other_Alphabetic # Mc   [3] TULU-TIGALARI VOWEL SIGN AA..TULU-TIGALARI VOWEL SIGN II
+113BB..113C0  ; Other_Alphabetic # Mn   [6] TULU-TIGALARI VOWEL SIGN U..TULU-TIGALARI VOWEL SIGN VOCALIC LL
+113C2         ; Other_Alphabetic # Mc       TULU-TIGALARI VOWEL SIGN EE
+113C5         ; Other_Alphabetic # Mc       TULU-TIGALARI VOWEL SIGN AI
+113C7..113CA  ; Other_Alphabetic # Mc   [4] TULU-TIGALARI VOWEL SIGN OO..TULU-TIGALARI SIGN CANDRA ANUNASIKA
+113CC..113CD  ; Other_Alphabetic # Mc   [2] TULU-TIGALARI SIGN ANUSVARA..TULU-TIGALARI SIGN VISARGA
 11435..11437  ; Other_Alphabetic # Mc   [3] NEWA VOWEL SIGN AA..NEWA VOWEL SIGN II
 11438..1143F  ; Other_Alphabetic # Mn   [8] NEWA VOWEL SIGN U..NEWA VOWEL SIGN AI
 11440..11441  ; Other_Alphabetic # Mc   [2] NEWA VOWEL SIGN O..NEWA VOWEL SIGN AU
@@ -761,7 +780,9 @@ FB1E          ; Other_Alphabetic # Mn
 116AD         ; Other_Alphabetic # Mn       TAKRI VOWEL SIGN AA
 116AE..116AF  ; Other_Alphabetic # Mc   [2] TAKRI VOWEL SIGN I..TAKRI VOWEL SIGN II
 116B0..116B5  ; Other_Alphabetic # Mn   [6] TAKRI VOWEL SIGN U..TAKRI VOWEL SIGN AU
-1171D..1171F  ; Other_Alphabetic # Mn   [3] AHOM CONSONANT SIGN MEDIAL LA..AHOM CONSONANT SIGN MEDIAL LIGATING RA
+1171D         ; Other_Alphabetic # Mn       AHOM CONSONANT SIGN MEDIAL LA
+1171E         ; Other_Alphabetic # Mc       AHOM CONSONANT SIGN MEDIAL RA
+1171F         ; Other_Alphabetic # Mn       AHOM CONSONANT SIGN MEDIAL LIGATING RA
 11720..11721  ; Other_Alphabetic # Mc   [2] AHOM VOWEL SIGN A..AHOM VOWEL SIGN AA
 11722..11725  ; Other_Alphabetic # Mn   [4] AHOM VOWEL SIGN I..AHOM VOWEL SIGN UU
 11726         ; Other_Alphabetic # Mc       AHOM VOWEL SIGN E
@@ -818,6 +839,9 @@ FB1E          ; Other_Alphabetic # Mn
 11F36..11F3A  ; Other_Alphabetic # Mn   [5] KAWI VOWEL SIGN I..KAWI VOWEL SIGN VOCALIC R
 11F3E..11F3F  ; Other_Alphabetic # Mc   [2] KAWI VOWEL SIGN E..KAWI VOWEL SIGN AI
 11F40         ; Other_Alphabetic # Mn       KAWI VOWEL SIGN EU
+1611E..16129  ; Other_Alphabetic # Mn  [12] GURUNG KHEMA VOWEL SIGN AA..GURUNG KHEMA VOWEL LENGTH MARK
+1612A..1612C  ; Other_Alphabetic # Mc   [3] GURUNG KHEMA CONSONANT SIGN MEDIAL YA..GURUNG KHEMA CONSONANT SIGN MEDIAL HA
+1612D..1612E  ; Other_Alphabetic # Mn   [2] GURUNG KHEMA SIGN ANUSVARA..GURUNG KHEMA CONSONANT SIGN MEDIAL RA
 16F4F         ; Other_Alphabetic # Mn       MIAO SIGN CONSONANT MODIFIER BAR
 16F51..16F87  ; Other_Alphabetic # Mc  [55] MIAO SIGN ASPIRATION..MIAO VOWEL SIGN UI
 16F8F..16F92  ; Other_Alphabetic # Mn   [4] MIAO TONE RIGHT..MIAO TONE BELOW
@@ -834,7 +858,7 @@ FB1E          ; Other_Alphabetic # Mn
 1F150..1F169  ; Other_Alphabetic # So  [26] NEGATIVE CIRCLED LATIN CAPITAL LETTER A..NEGATIVE CIRCLED LATIN CAPITAL LETTER Z
 1F170..1F189  ; Other_Alphabetic # So  [26] NEGATIVE SQUARED LATIN CAPITAL LETTER A..NEGATIVE SQUARED LATIN CAPITAL LETTER Z
 
-# Total code points: 1425
+# Total code points: 1495
 
 # ================================================
 
@@ -849,7 +873,7 @@ FA70..FAD9    ; Ideographic # Lo [106] C
 16FE4         ; Ideographic # Mn       KHITAN SMALL SCRIPT FILLER
 17000..187F7  ; Ideographic # Lo [6136] TANGUT IDEOGRAPH-17000..TANGUT IDEOGRAPH-187F7
 18800..18CD5  ; Ideographic # Lo [1238] TANGUT COMPONENT-001..KHITAN SMALL SCRIPT CHARACTER-18CD5
-18D00..18D08  ; Ideographic # Lo   [9] TANGUT IDEOGRAPH-18D00..TANGUT IDEOGRAPH-18D08
+18CFF..18D08  ; Ideographic # Lo  [10] KHITAN SMALL SCRIPT CHARACTER-18CFF..TANGUT IDEOGRAPH-18D08
 1B170..1B2FB  ; Ideographic # Lo [396] NUSHU CHARACTER-1B170..NUSHU CHARACTER-1B2FB
 20000..2A6DF  ; Ideographic # Lo [42720] CJK UNIFIED IDEOGRAPH-20000..CJK UNIFIED IDEOGRAPH-2A6DF
 2A700..2B739  ; Ideographic # Lo [4154] CJK UNIFIED IDEOGRAPH-2A700..CJK UNIFIED IDEOGRAPH-2B739
@@ -861,7 +885,7 @@ FA70..FAD9    ; Ideographic # Lo [106] C
 30000..3134A  ; Ideographic # Lo [4939] CJK UNIFIED IDEOGRAPH-30000..CJK UNIFIED IDEOGRAPH-3134A
 31350..323AF  ; Ideographic # Lo [4192] CJK UNIFIED IDEOGRAPH-31350..CJK UNIFIED IDEOGRAPH-323AF
 
-# Total code points: 106476
+# Total code points: 106477
 
 # ================================================
 
@@ -932,6 +956,7 @@ FA70..FAD9    ; Ideographic # Lo [106] C
 0D3B..0D3C    ; Diacritic # Mn   [2] MALAYALAM SIGN VERTICAL BAR VIRAMA..MALAYALAM SIGN CIRCULAR VIRAMA
 0D4D          ; Diacritic # Mn       MALAYALAM SIGN VIRAMA
 0DCA          ; Diacritic # Mn       SINHALA SIGN AL-LAKUNA
+0E3A          ; Diacritic # Mn       THAI CHARACTER PHINTHU
 0E47..0E4C    ; Diacritic # Mn   [6] THAI CHARACTER MAITAIKHU..THAI CHARACTER THANTHAKHAT
 0E4E          ; Diacritic # Mn       THAI CHARACTER YAMAKKAN
 0EBA          ; Diacritic # Mn       LAO SIGN PALI VIRAMA
@@ -955,9 +980,11 @@ FA70..FAD9    ; Ideographic # Lo [106] C
 135D..135F    ; Diacritic # Mn   [3] ETHIOPIC COMBINING GEMINATION AND VOWEL LENGTH MARK..ETHIOPIC COMBINING GEMINATION MARK
 1714          ; Diacritic # Mn       TAGALOG SIGN VIRAMA
 1715          ; Diacritic # Mc       TAGALOG SIGN PAMUDPOD
+1734          ; Diacritic # Mc       HANUNOO SIGN PAMUDPOD
 17C9..17D3    ; Diacritic # Mn  [11] KHMER SIGN MUUSIKATOAN..KHMER SIGN BATHAMASAT
 17DD          ; Diacritic # Mn       KHMER SIGN ATTHACAN
 1939..193B    ; Diacritic # Mn   [3] LIMBU SIGN MUKPHRENG..LIMBU SIGN SA-I
+1A60          ; Diacritic # Mn       TAI THAM SIGN SAKOT
 1A75..1A7C    ; Diacritic # Mn   [8] TAI THAM SIGN TONE-1..TAI THAM SIGN KHUEN-LUE KARAN
 1A7F          ; Diacritic # Mn       TAI THAM COMBINING CRYPTOGRAMMIC DOT
 1AB0..1ABD    ; Diacritic # Mn  [14] COMBINING DOUBLED CIRCUMFLEX ACCENT..COMBINING PARENTHESES BELOW
@@ -968,6 +995,8 @@ FA70..FAD9    ; Ideographic # Lo [106] C
 1B6B..1B73    ; Diacritic # Mn   [9] BALINESE MUSICAL SYMBOL COMBINING TEGEH..BALINESE MUSICAL SYMBOL COMBINING GONG
 1BAA          ; Diacritic # Mc       SUNDANESE SIGN PAMAAEH
 1BAB          ; Diacritic # Mn       SUNDANESE SIGN VIRAMA
+1BE6          ; Diacritic # Mn       BATAK SIGN TOMPI
+1BF2..1BF3    ; Diacritic # Mc   [2] BATAK PANGOLAT..BATAK PANONGONAN
 1C36..1C37    ; Diacritic # Mn   [2] LEPCHA SIGN RAN..LEPCHA SIGN NUKTA
 1C78..1C7D    ; Diacritic # Lm   [6] OL CHIKI MU TTUDDAG..OL CHIKI AHAD
 1CD0..1CD2    ; Diacritic # Mn   [3] VEDIC TONE KARSHANA..VEDIC TONE PRENKHA
@@ -1006,6 +1035,8 @@ A720..A721    ; Diacritic # Sk   [2] MOD
 A788          ; Diacritic # Lm       MODIFIER LETTER LOW CIRCUMFLEX ACCENT
 A789..A78A    ; Diacritic # Sk   [2] MODIFIER LETTER COLON..MODIFIER LETTER SHORT EQUALS SIGN
 A7F8..A7F9    ; Diacritic # Lm   [2] MODIFIER LETTER CAPITAL H WITH STROKE..MODIFIER LETTER SMALL LIGATURE OE
+A806          ; Diacritic # Mn       SYLOTI NAGRI SIGN HASANTA
+A82C          ; Diacritic # Mn       SYLOTI NAGRI SIGN ALTERNATE HASANTA
 A8C4          ; Diacritic # Mn       SAURASHTRA SIGN VIRAMA
 A8E0..A8F1    ; Diacritic # Mn  [18] COMBINING DEVANAGARI DIGIT ZERO..COMBINING DEVANAGARI SIGN AVAGRAHA
 A92B..A92D    ; Diacritic # Mn   [3] KAYAH LI TONE PLOPHU..KAYAH LI TONE CALYA PLOPHU
@@ -1039,9 +1070,13 @@ FFE3          ; Diacritic # Sk       FUL
 10780..10785  ; Diacritic # Lm   [6] MODIFIER LETTER SMALL CAPITAL AA..MODIFIER LETTER SMALL B WITH HOOK
 10787..107B0  ; Diacritic # Lm  [42] MODIFIER LETTER SMALL DZ DIGRAPH..MODIFIER LETTER SMALL V WITH RIGHT HOOK
 107B2..107BA  ; Diacritic # Lm   [9] MODIFIER LETTER SMALL CAPITAL Y..MODIFIER LETTER SMALL S WITH CURL
+10A38..10A3A  ; Diacritic # Mn   [3] KHAROSHTHI SIGN BAR ABOVE..KHAROSHTHI SIGN DOT BELOW
+10A3F         ; Diacritic # Mn       KHAROSHTHI VIRAMA
 10AE5..10AE6  ; Diacritic # Mn   [2] MANICHAEAN ABBREVIATION MARK ABOVE..MANICHAEAN ABBREVIATION MARK BELOW
 10D22..10D23  ; Diacritic # Lo   [2] HANIFI ROHINGYA MARK SAKIN..HANIFI ROHINGYA MARK NA KHONNA
 10D24..10D27  ; Diacritic # Mn   [4] HANIFI ROHINGYA SIGN HARBAHAY..HANIFI ROHINGYA SIGN TASSI
+10D4E         ; Diacritic # Lm       GARAY VOWEL LENGTH MARK
+10D69..10D6D  ; Diacritic # Mn   [5] GARAY VOWEL SIGN E..GARAY CONSONANT NASALIZATION MARK
 10EFD..10EFF  ; Diacritic # Mn   [3] ARABIC SMALL LOW WORD SAKTA..ARABIC SMALL LOW WORD MADDA
 10F46..10F50  ; Diacritic # Mn  [11] SOGDIAN COMBINING DOT BELOW..SOGDIAN COMBINING STROKE BELOW
 10F82..10F85  ; Diacritic # Mn   [4] OLD UYGHUR COMBINING DOT ABOVE..OLD UYGHUR COMBINING TWO DOTS BELOW
@@ -1055,10 +1090,16 @@ FFE3          ; Diacritic # Sk       FUL
 11235         ; Diacritic # Mc       KHOJKI SIGN VIRAMA
 11236         ; Diacritic # Mn       KHOJKI SIGN NUKTA
 112E9..112EA  ; Diacritic # Mn   [2] KHUDAWADI SIGN NUKTA..KHUDAWADI SIGN VIRAMA
-1133C         ; Diacritic # Mn       GRANTHA SIGN NUKTA
+1133B..1133C  ; Diacritic # Mn   [2] COMBINING BINDU BELOW..GRANTHA SIGN NUKTA
 1134D         ; Diacritic # Mc       GRANTHA SIGN VIRAMA
 11366..1136C  ; Diacritic # Mn   [7] COMBINING GRANTHA DIGIT ZERO..COMBINING GRANTHA DIGIT SIX
 11370..11374  ; Diacritic # Mn   [5] COMBINING GRANTHA LETTER A..COMBINING GRANTHA LETTER PA
+113CE         ; Diacritic # Mn       TULU-TIGALARI SIGN VIRAMA
+113CF         ; Diacritic # Mc       TULU-TIGALARI SIGN LOOPED VIRAMA
+113D0         ; Diacritic # Mn       TULU-TIGALARI CONJOINER
+113D2         ; Diacritic # Mn       TULU-TIGALARI GEMINATION MARK
+113D3         ; Diacritic # Lo       TULU-TIGALARI SIGN PLUTA
+113E1..113E2  ; Diacritic # Mn   [2] TULU-TIGALARI VEDIC TONE SVARITA..TULU-TIGALARI VEDIC TONE ANUDATTA
 11442         ; Diacritic # Mn       NEWA SIGN VIRAMA
 11446         ; Diacritic # Mn       NEWA SIGN NUKTA
 114C2..114C3  ; Diacritic # Mn   [2] TIRHUTA SIGN VIRAMA..TIRHUTA SIGN NUKTA
@@ -1079,9 +1120,14 @@ FFE3          ; Diacritic # Sk       FUL
 11D42         ; Diacritic # Mn       MASARAM GONDI SIGN NUKTA
 11D44..11D45  ; Diacritic # Mn   [2] MASARAM GONDI SIGN HALANTA..MASARAM GONDI VIRAMA
 11D97         ; Diacritic # Mn       GUNJALA GONDI VIRAMA
+11F41         ; Diacritic # Mc       KAWI SIGN KILLER
+11F42         ; Diacritic # Mn       KAWI CONJOINER
+11F5A         ; Diacritic # Mn       KAWI SIGN NUKTA
 13447..13455  ; Diacritic # Mn  [15] EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP START..EGYPTIAN HIEROGLYPH MODIFIER DAMAGED
+1612F         ; Diacritic # Mn       GURUNG KHEMA SIGN THOLHOMA
 16AF0..16AF4  ; Diacritic # Mn   [5] BASSA VAH COMBINING HIGH TONE..BASSA VAH COMBINING HIGH-LOW TONE
 16B30..16B36  ; Diacritic # Mn   [7] PAHAWH HMONG MARK CIM TUB..PAHAWH HMONG MARK CIM TAUM
+16D6B..16D6C  ; Diacritic # Lm   [2] KIRAT RAI SIGN VIRAMA..KIRAT RAI SIGN SAAT
 16F8F..16F92  ; Diacritic # Mn   [4] MIAO TONE RIGHT..MIAO TONE BELOW
 16F93..16F9F  ; Diacritic # Lm  [13] MIAO LETTER TONE-2..MIAO LETTER REFORMED TONE-8
 16FF0..16FF1  ; Diacritic # Mc   [2] VIETNAMESE ALTERNATE READING MARK CA..VIETNAMESE ALTERNATE READING MARK NHAY
@@ -1099,11 +1145,12 @@ FFE3          ; Diacritic # Sk       FUL
 1E130..1E136  ; Diacritic # Mn   [7] NYIAKENG PUACHUE HMONG TONE-B..NYIAKENG PUACHUE HMONG TONE-D
 1E2AE         ; Diacritic # Mn       TOTO SIGN RISING TONE
 1E2EC..1E2EF  ; Diacritic # Mn   [4] WANCHO TONE TUP..WANCHO TONE KOINI
+1E5EE..1E5EF  ; Diacritic # Mn   [2] OL ONAL SIGN MU..OL ONAL SIGN IKIR
 1E8D0..1E8D6  ; Diacritic # Mn   [7] MENDE KIKAKUI COMBINING NUMBER TEENS..MENDE KIKAKUI COMBINING NUMBER MILLIONS
 1E944..1E946  ; Diacritic # Mn   [3] ADLAM ALIF LENGTHENER..ADLAM GEMINATION MARK
 1E948..1E94A  ; Diacritic # Mn   [3] ADLAM CONSONANT MODIFIER..ADLAM NUKTA
 
-# Total code points: 1144
+# Total code points: 1178
 
 # ================================================
 
@@ -1111,6 +1158,8 @@ FFE3          ; Diacritic # Sk       FUL
 02D0..02D1    ; Extender # Lm   [2] MODIFIER LETTER TRIANGULAR COLON..MODIFIER LETTER HALF TRIANGULAR COLON
 0640          ; Extender # Lm       ARABIC TATWEEL
 07FA          ; Extender # Lm       NKO LAJANYALAN
+0A71          ; Extender # Mn       GURMUKHI ADDAK
+0AFB          ; Extender # Mn       GUJARATI SIGN SHADDA
 0B55          ; Extender # Mn       ORIYA SIGN OVERLINE
 0E46          ; Extender # Lm       THAI CHARACTER MAIYAMOK
 0EC6          ; Extender # Lm       LAO KO LA
@@ -1132,16 +1181,23 @@ AADD          ; Extender # Lm       TAI
 AAF3..AAF4    ; Extender # Lm   [2] MEETEI MAYEK SYLLABLE REPETITION MARK..MEETEI MAYEK WORD REPETITION MARK
 FF70          ; Extender # Lm       HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK
 10781..10782  ; Extender # Lm   [2] MODIFIER LETTER SUPERSCRIPT TRIANGULAR COLON..MODIFIER LETTER SUPERSCRIPT HALF TRIANGULAR COLON
+10D4E         ; Extender # Lm       GARAY VOWEL LENGTH MARK
+10D6A         ; Extender # Mn       GARAY CONSONANT GEMINATION MARK
+10D6F         ; Extender # Lm       GARAY REDUPLICATION MARK
+11237         ; Extender # Mn       KHOJKI SIGN SHADDA
 1135D         ; Extender # Lo       GRANTHA SIGN PLUTA
+113D2         ; Extender # Mn       TULU-TIGALARI GEMINATION MARK
+113D3         ; Extender # Lo       TULU-TIGALARI SIGN PLUTA
 115C6..115C8  ; Extender # Po   [3] SIDDHAM REPETITION MARK-1..SIDDHAM REPETITION MARK-3
 11A98         ; Extender # Mn       SOYOMBO GEMINATION MARK
 16B42..16B43  ; Extender # Lm   [2] PAHAWH HMONG SIGN VOS NRUA..PAHAWH HMONG SIGN IB YAM
 16FE0..16FE1  ; Extender # Lm   [2] TANGUT ITERATION MARK..NUSHU ITERATION MARK
 16FE3         ; Extender # Lm       OLD CHINESE ITERATION MARK
 1E13C..1E13D  ; Extender # Lm   [2] NYIAKENG PUACHUE HMONG SIGN XW XW..NYIAKENG PUACHUE HMONG SYLLABLE LENGTHENER
+1E5EF         ; Extender # Mn       OL ONAL SIGN IKIR
 1E944..1E946  ; Extender # Mn   [3] ADLAM ALIF LENGTHENER..ADLAM GEMINATION MARK
 
-# Total code points: 50
+# Total code points: 59
 
 # ================================================
 
@@ -1217,27 +1273,51 @@ FFFFE..FFFFF  ; Noncharacter_Code_Point
 0B57          ; Other_Grapheme_Extend # Mc       ORIYA AU LENGTH MARK
 0BBE          ; Other_Grapheme_Extend # Mc       TAMIL VOWEL SIGN AA
 0BD7          ; Other_Grapheme_Extend # Mc       TAMIL AU LENGTH MARK
+0CC0          ; Other_Grapheme_Extend # Mc       KANNADA VOWEL SIGN II
 0CC2          ; Other_Grapheme_Extend # Mc       KANNADA VOWEL SIGN UU
+0CC7..0CC8    ; Other_Grapheme_Extend # Mc   [2] KANNADA VOWEL SIGN EE..KANNADA VOWEL SIGN AI
+0CCA..0CCB    ; Other_Grapheme_Extend # Mc   [2] KANNADA VOWEL SIGN O..KANNADA VOWEL SIGN OO
 0CD5..0CD6    ; Other_Grapheme_Extend # Mc   [2] KANNADA LENGTH MARK..KANNADA AI LENGTH MARK
 0D3E          ; Other_Grapheme_Extend # Mc       MALAYALAM VOWEL SIGN AA
 0D57          ; Other_Grapheme_Extend # Mc       MALAYALAM AU LENGTH MARK
 0DCF          ; Other_Grapheme_Extend # Mc       SINHALA VOWEL SIGN AELA-PILLA
 0DDF          ; Other_Grapheme_Extend # Mc       SINHALA VOWEL SIGN GAYANUKITTA
+1715          ; Other_Grapheme_Extend # Mc       TAGALOG SIGN PAMUDPOD
+1734          ; Other_Grapheme_Extend # Mc       HANUNOO SIGN PAMUDPOD
 1B35          ; Other_Grapheme_Extend # Mc       BALINESE VOWEL SIGN TEDUNG
+1B3B          ; Other_Grapheme_Extend # Mc       BALINESE VOWEL SIGN RA REPA TEDUNG
+1B3D          ; Other_Grapheme_Extend # Mc       BALINESE VOWEL SIGN LA LENGA TEDUNG
+1B43..1B44    ; Other_Grapheme_Extend # Mc   [2] BALINESE VOWEL SIGN PEPET TEDUNG..BALINESE ADEG ADEG
+1BAA          ; Other_Grapheme_Extend # Mc       SUNDANESE SIGN PAMAAEH
+1BF2..1BF3    ; Other_Grapheme_Extend # Mc   [2] BATAK PANGOLAT..BATAK PANONGONAN
 200C          ; Other_Grapheme_Extend # Cf       ZERO WIDTH NON-JOINER
 302E..302F    ; Other_Grapheme_Extend # Mc   [2] HANGUL SINGLE DOT TONE MARK..HANGUL DOUBLE DOT TONE MARK
+A953          ; Other_Grapheme_Extend # Mc       REJANG VIRAMA
+A9C0          ; Other_Grapheme_Extend # Mc       JAVANESE PANGKON
 FF9E..FF9F    ; Other_Grapheme_Extend # Lm   [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK
+111C0         ; Other_Grapheme_Extend # Mc       SHARADA SIGN VIRAMA
+11235         ; Other_Grapheme_Extend # Mc       KHOJKI SIGN VIRAMA
 1133E         ; Other_Grapheme_Extend # Mc       GRANTHA VOWEL SIGN AA
+1134D         ; Other_Grapheme_Extend # Mc       GRANTHA SIGN VIRAMA
 11357         ; Other_Grapheme_Extend # Mc       GRANTHA AU LENGTH MARK
+113B8         ; Other_Grapheme_Extend # Mc       TULU-TIGALARI VOWEL SIGN AA
+113C2         ; Other_Grapheme_Extend # Mc       TULU-TIGALARI VOWEL SIGN EE
+113C5         ; Other_Grapheme_Extend # Mc       TULU-TIGALARI VOWEL SIGN AI
+113C7..113C9  ; Other_Grapheme_Extend # Mc   [3] TULU-TIGALARI VOWEL SIGN OO..TULU-TIGALARI AU LENGTH MARK
+113CF         ; Other_Grapheme_Extend # Mc       TULU-TIGALARI SIGN LOOPED VIRAMA
 114B0         ; Other_Grapheme_Extend # Mc       TIRHUTA VOWEL SIGN AA
 114BD         ; Other_Grapheme_Extend # Mc       TIRHUTA VOWEL SIGN SHORT O
 115AF         ; Other_Grapheme_Extend # Mc       SIDDHAM VOWEL SIGN AA
+116B6         ; Other_Grapheme_Extend # Mc       TAKRI SIGN VIRAMA
 11930         ; Other_Grapheme_Extend # Mc       DIVES AKURU VOWEL SIGN AA
-1D165         ; Other_Grapheme_Extend # Mc       MUSICAL SYMBOL COMBINING STEM
-1D16E..1D172  ; Other_Grapheme_Extend # Mc   [5] MUSICAL SYMBOL COMBINING FLAG-1..MUSICAL SYMBOL COMBINING FLAG-5
+1193D         ; Other_Grapheme_Extend # Mc       DIVES AKURU SIGN HALANTA
+11F41         ; Other_Grapheme_Extend # Mc       KAWI SIGN KILLER
+16FF0..16FF1  ; Other_Grapheme_Extend # Mc   [2] VIETNAMESE ALTERNATE READING MARK CA..VIETNAMESE ALTERNATE READING MARK NHAY
+1D165..1D166  ; Other_Grapheme_Extend # Mc   [2] MUSICAL SYMBOL COMBINING STEM..MUSICAL SYMBOL COMBINING SPRECHGESANG STEM
+1D16D..1D172  ; Other_Grapheme_Extend # Mc   [6] MUSICAL SYMBOL COMBINING AUGMENTATION DOT..MUSICAL SYMBOL COMBINING FLAG-5
 E0020..E007F  ; Other_Grapheme_Extend # Cf  [96] TAG SPACE..CANCEL TAG
 
-# Total code points: 127
+# Total code points: 160
 
 # ================================================
 
@@ -1462,13 +1542,16 @@ FF65          ; Other_ID_Continue # Po
 1809          ; Sentence_Terminal # Po       MONGOLIAN MANCHU FULL STOP
 1944..1945    ; Sentence_Terminal # Po   [2] LIMBU EXCLAMATION MARK..LIMBU QUESTION MARK
 1AA8..1AAB    ; Sentence_Terminal # Po   [4] TAI THAM SIGN KAAN..TAI THAM SIGN SATKAANKUU
+1B4E..1B4F    ; Sentence_Terminal # Po   [2] BALINESE INVERTED CARIK SIKI..BALINESE INVERTED CARIK PAREREN
 1B5A..1B5B    ; Sentence_Terminal # Po   [2] BALINESE PANTI..BALINESE PAMADA
 1B5E..1B5F    ; Sentence_Terminal # Po   [2] BALINESE CARIK SIKI..BALINESE CARIK PAREREN
-1B7D..1B7E    ; Sentence_Terminal # Po   [2] BALINESE PANTI LANTANG..BALINESE PAMADA LANTANG
+1B7D..1B7F    ; Sentence_Terminal # Po   [3] BALINESE PANTI LANTANG..BALINESE PANTI BAWAK
 1C3B..1C3C    ; Sentence_Terminal # Po   [2] LEPCHA PUNCTUATION TA-ROL..LEPCHA PUNCTUATION NYET THYOOM TA-ROL
 1C7E..1C7F    ; Sentence_Terminal # Po   [2] OL CHIKI PUNCTUATION MUCAAD..OL CHIKI PUNCTUATION DOUBLE MUCAAD
+2024          ; Sentence_Terminal # Po       ONE DOT LEADER
 203C..203D    ; Sentence_Terminal # Po   [2] DOUBLE EXCLAMATION MARK..INTERROBANG
 2047..2049    ; Sentence_Terminal # Po   [3] DOUBLE QUESTION MARK..EXCLAMATION QUESTION MARK
+2CF9..2CFB    ; Sentence_Terminal # Po   [3] COPTIC OLD NUBIAN FULL STOP..COPTIC OLD NUBIAN INDIRECT QUESTION MARK
 2E2E          ; Sentence_Terminal # Po       REVERSED QUESTION MARK
 2E3C          ; Sentence_Terminal # Po       STENOGRAPHIC FULL STOP
 2E53..2E54    ; Sentence_Terminal # Po   [2] MEDIEVAL EXCLAMATION MARK..MEDIEVAL QUESTION MARK
@@ -1484,6 +1567,8 @@ A9C8..A9C9    ; Sentence_Terminal # Po
 AA5D..AA5F    ; Sentence_Terminal # Po   [3] CHAM PUNCTUATION DANDA..CHAM PUNCTUATION TRIPLE DANDA
 AAF0..AAF1    ; Sentence_Terminal # Po   [2] MEETEI MAYEK CHEIKHAN..MEETEI MAYEK AHANG KHUDAM
 ABEB          ; Sentence_Terminal # Po       MEETEI MAYEK CHEIKHEI
+FE12          ; Sentence_Terminal # Po       PRESENTATION FORM FOR VERTICAL IDEOGRAPHIC FULL STOP
+FE15..FE16    ; Sentence_Terminal # Po   [2] PRESENTATION FORM FOR VERTICAL EXCLAMATION MARK..PRESENTATION FORM FOR VERTICAL QUESTION MARK
 FE52          ; Sentence_Terminal # Po       SMALL FULL STOP
 FE56..FE57    ; Sentence_Terminal # Po   [2] SMALL QUESTION MARK..SMALL EXCLAMATION MARK
 FF01          ; Sentence_Terminal # Po       FULLWIDTH EXCLAMATION MARK
@@ -1502,6 +1587,7 @@ FF61          ; Sentence_Terminal # Po
 11238..11239  ; Sentence_Terminal # Po   [2] KHOJKI DANDA..KHOJKI DOUBLE DANDA
 1123B..1123C  ; Sentence_Terminal # Po   [2] KHOJKI SECTION MARK..KHOJKI DOUBLE SECTION MARK
 112A9         ; Sentence_Terminal # Po       MULTANI SECTION MARK
+113D4..113D5  ; Sentence_Terminal # Po   [2] TULU-TIGALARI DANDA..TULU-TIGALARI DOUBLE DANDA
 1144B..1144C  ; Sentence_Terminal # Po   [2] NEWA DANDA..NEWA DOUBLE DANDA
 115C2..115C3  ; Sentence_Terminal # Po   [2] SIDDHAM DANDA..SIDDHAM DOUBLE DANDA
 115C9..115D7  ; Sentence_Terminal # Po  [15] SIDDHAM END OF TEXT MARK..SIDDHAM SECTION MARK WITH CIRCLES AND FOUR ENCLOSURES
@@ -1518,11 +1604,12 @@ FF61          ; Sentence_Terminal # Po
 16AF5         ; Sentence_Terminal # Po       BASSA VAH FULL STOP
 16B37..16B38  ; Sentence_Terminal # Po   [2] PAHAWH HMONG SIGN VOS THOM..PAHAWH HMONG SIGN VOS TSHAB CEEB
 16B44         ; Sentence_Terminal # Po       PAHAWH HMONG SIGN XAUS
+16D6E..16D6F  ; Sentence_Terminal # Po   [2] KIRAT RAI DANDA..KIRAT RAI DOUBLE DANDA
 16E98         ; Sentence_Terminal # Po       MEDEFAIDRIN FULL STOP
 1BC9F         ; Sentence_Terminal # Po       DUPLOYAN PUNCTUATION CHINOOK FULL STOP
 1DA88         ; Sentence_Terminal # Po       SIGNWRITING FULL STOP
 
-# Total code points: 156
+# Total code points: 170
 
 # ================================================
 
@@ -1640,8 +1727,8 @@ E0100..E01EF  ; Variation_Selector # Mn
 239B..23B3    ; Pattern_Syntax # Sm  [25] LEFT PARENTHESIS UPPER HOOK..SUMMATION BOTTOM
 23B4..23DB    ; Pattern_Syntax # So  [40] TOP SQUARE BRACKET..FUSE
 23DC..23E1    ; Pattern_Syntax # Sm   [6] TOP PARENTHESIS..BOTTOM TORTOISE SHELL BRACKET
-23E2..2426    ; Pattern_Syntax # So  [69] WHITE TRAPEZIUM..SYMBOL FOR SUBSTITUTE FORM TWO
-2427..243F    ; Pattern_Syntax # Cn  [25] <reserved-2427>..<reserved-243F>
+23E2..2429    ; Pattern_Syntax # So  [72] WHITE TRAPEZIUM..SYMBOL FOR DELETE MEDIUM SHADE FORM
+242A..243F    ; Pattern_Syntax # Cn  [22] <reserved-242A>..<reserved-243F>
 2440..244A    ; Pattern_Syntax # So  [11] OCR HOOK..OCR DOUBLE BACKSLASH
 244B..245F    ; Pattern_Syntax # Cn  [21] <reserved-244B>..<reserved-245F>
 2500..25B6    ; Pattern_Syntax # So [183] BOX DRAWINGS LIGHT HORIZONTAL..BLACK RIGHT-POINTING TRIANGLE
@@ -1824,4 +1911,18 @@ FE45..FE46    ; Pattern_Syntax # Po   [2
 
 # Total code points: 26
 
+# ================================================
+
+0654..0655    ; Modifier_Combining_Mark # Mn   [2] ARABIC HAMZA ABOVE..ARABIC HAMZA BELOW
+0658          ; Modifier_Combining_Mark # Mn       ARABIC MARK NOON GHUNNA
+06DC          ; Modifier_Combining_Mark # Mn       ARABIC SMALL HIGH SEEN
+06E3          ; Modifier_Combining_Mark # Mn       ARABIC SMALL LOW SEEN
+06E7..06E8    ; Modifier_Combining_Mark # Mn   [2] ARABIC SMALL HIGH YEH..ARABIC SMALL HIGH NOON
+08CA..08CB    ; Modifier_Combining_Mark # Mn   [2] ARABIC SMALL HIGH FARSI YEH..ARABIC SMALL HIGH YEH BARREE WITH TWO DOTS BELOW
+08CD..08CF    ; Modifier_Combining_Mark # Mn   [3] ARABIC SMALL HIGH ZAH..ARABIC LARGE ROUND DOT BELOW
+08D3          ; Modifier_Combining_Mark # Mn       ARABIC SMALL LOW WAW
+08F3          ; Modifier_Combining_Mark # Mn       ARABIC SMALL HIGH WAW
+
+# Total code points: 14
+
 # EOF
--- contrib/unicode/GraphemeBreakProperty.txt.jj	2024-01-08 12:15:13.594477284 +0100
+++ contrib/unicode/GraphemeBreakProperty.txt	2024-10-07 10:59:11.829559272 +0200
@@ -1,8 +1,8 @@
-# GraphemeBreakProperty-15.1.0.txt
-# Date: 2023-01-05, 20:34:41 GMT
-# © 2023 Unicode®, Inc.
+# GraphemeBreakProperty-16.0.0.txt
+# Date: 2024-05-31, 18:09:38 GMT
+# © 2024 Unicode®, Inc.
 # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries.
-# For terms of use, see https://www.unicode.org/terms_of_use.html
+# For terms of use and license, see https://www.unicode.org/terms_of_use.html
 #
 # Unicode Character Database
 #   For documentation, see https://www.unicode.org/reports/tr44/
@@ -27,6 +27,7 @@
 110BD         ; Prepend # Cf       KAITHI NUMBER SIGN
 110CD         ; Prepend # Cf       KAITHI NUMBER SIGN ABOVE
 111C2..111C3  ; Prepend # Lo   [2] SHARADA SIGN JIHVAMULIYA..SHARADA SIGN UPADHMANIYA
+113D1         ; Prepend # Lo       TULU-TIGALARI REPHA
 1193F         ; Prepend # Lo       DIVES AKURU PREFIXED NASAL SIGN
 11941         ; Prepend # Lo       DIVES AKURU INITIAL RA
 11A3A         ; Prepend # Lo       ZANABAZAR SQUARE CLUSTER-INITIAL LETTER RA
@@ -34,7 +35,7 @@
 11D46         ; Prepend # Lo       MASARAM GONDI REPHA
 11F02         ; Prepend # Lo       KAWI SIGN REPHA
 
-# Total code points: 27
+# Total code points: 28
 
 # ================================================
 
@@ -106,7 +107,7 @@ E01F0..E0FFF  ; Control # Cn [3600] <res
 0825..0827    ; Extend # Mn   [3] SAMARITAN VOWEL SIGN SHORT A..SAMARITAN VOWEL SIGN U
 0829..082D    ; Extend # Mn   [5] SAMARITAN VOWEL SIGN LONG I..SAMARITAN MARK NEQUDAA
 0859..085B    ; Extend # Mn   [3] MANDAIC AFFRICATION MARK..MANDAIC GEMINATION MARK
-0898..089F    ; Extend # Mn   [8] ARABIC SMALL HIGH WORD AL-JUZ..ARABIC HALF MADDA OVER MADDA
+0897..089F    ; Extend # Mn   [9] ARABIC PEPET..ARABIC HALF MADDA OVER MADDA
 08CA..08E1    ; Extend # Mn  [24] ARABIC SMALL HIGH FARSI YEH..ARABIC SMALL HIGH SIGN SAFHA
 08E3..0902    ; Extend # Mn  [32] ARABIC TURNED DAMMA BELOW..DEVANAGARI SIGN ANUSVARA
 093A          ; Extend # Mn       DEVANAGARI VOWEL SIGN OE
@@ -163,8 +164,11 @@ E01F0..E0FFF  ; Control # Cn [3600] <res
 0C81          ; Extend # Mn       KANNADA SIGN CANDRABINDU
 0CBC          ; Extend # Mn       KANNADA SIGN NUKTA
 0CBF          ; Extend # Mn       KANNADA VOWEL SIGN I
+0CC0          ; Extend # Mc       KANNADA VOWEL SIGN II
 0CC2          ; Extend # Mc       KANNADA VOWEL SIGN UU
 0CC6          ; Extend # Mn       KANNADA VOWEL SIGN E
+0CC7..0CC8    ; Extend # Mc   [2] KANNADA VOWEL SIGN EE..KANNADA VOWEL SIGN AI
+0CCA..0CCB    ; Extend # Mc   [2] KANNADA VOWEL SIGN O..KANNADA VOWEL SIGN OO
 0CCC..0CCD    ; Extend # Mn   [2] KANNADA VOWEL SIGN AU..KANNADA SIGN VIRAMA
 0CD5..0CD6    ; Extend # Mc   [2] KANNADA LENGTH MARK..KANNADA AI LENGTH MARK
 0CE2..0CE3    ; Extend # Mn   [2] KANNADA VOWEL SIGN VOCALIC L..KANNADA VOWEL SIGN VOCALIC LL
@@ -210,7 +214,9 @@ E01F0..E0FFF  ; Control # Cn [3600] <res
 109D          ; Extend # Mn       MYANMAR VOWEL SIGN AITON AI
 135D..135F    ; Extend # Mn   [3] ETHIOPIC COMBINING GEMINATION AND VOWEL LENGTH MARK..ETHIOPIC COMBINING GEMINATION MARK
 1712..1714    ; Extend # Mn   [3] TAGALOG VOWEL SIGN I..TAGALOG SIGN VIRAMA
+1715          ; Extend # Mc       TAGALOG SIGN PAMUDPOD
 1732..1733    ; Extend # Mn   [2] HANUNOO VOWEL SIGN I..HANUNOO VOWEL SIGN U
+1734          ; Extend # Mc       HANUNOO SIGN PAMUDPOD
 1752..1753    ; Extend # Mn   [2] BUHID VOWEL SIGN I..BUHID VOWEL SIGN U
 1772..1773    ; Extend # Mn   [2] TAGBANWA VOWEL SIGN I..TAGBANWA VOWEL SIGN U
 17B4..17B5    ; Extend # Mn   [2] KHMER VOWEL INHERENT AQ..KHMER VOWEL INHERENT AA
@@ -242,17 +248,22 @@ E01F0..E0FFF  ; Control # Cn [3600] <res
 1B34          ; Extend # Mn       BALINESE SIGN REREKAN
 1B35          ; Extend # Mc       BALINESE VOWEL SIGN TEDUNG
 1B36..1B3A    ; Extend # Mn   [5] BALINESE VOWEL SIGN ULU..BALINESE VOWEL SIGN RA REPA
+1B3B          ; Extend # Mc       BALINESE VOWEL SIGN RA REPA TEDUNG
 1B3C          ; Extend # Mn       BALINESE VOWEL SIGN LA LENGA
+1B3D          ; Extend # Mc       BALINESE VOWEL SIGN LA LENGA TEDUNG
 1B42          ; Extend # Mn       BALINESE VOWEL SIGN PEPET
+1B43..1B44    ; Extend # Mc   [2] BALINESE VOWEL SIGN PEPET TEDUNG..BALINESE ADEG ADEG
 1B6B..1B73    ; Extend # Mn   [9] BALINESE MUSICAL SYMBOL COMBINING TEGEH..BALINESE MUSICAL SYMBOL COMBINING GONG
 1B80..1B81    ; Extend # Mn   [2] SUNDANESE SIGN PANYECEK..SUNDANESE SIGN PANGLAYAR
 1BA2..1BA5    ; Extend # Mn   [4] SUNDANESE CONSONANT SIGN PANYAKRA..SUNDANESE VOWEL SIGN PANYUKU
 1BA8..1BA9    ; Extend # Mn   [2] SUNDANESE VOWEL SIGN PAMEPET..SUNDANESE VOWEL SIGN PANEULEUNG
+1BAA          ; Extend # Mc       SUNDANESE SIGN PAMAAEH
 1BAB..1BAD    ; Extend # Mn   [3] SUNDANESE SIGN VIRAMA..SUNDANESE CONSONANT SIGN PASANGAN WA
 1BE6          ; Extend # Mn       BATAK SIGN TOMPI
 1BE8..1BE9    ; Extend # Mn   [2] BATAK VOWEL SIGN PAKPAK E..BATAK VOWEL SIGN EE
 1BED          ; Extend # Mn       BATAK VOWEL SIGN KARO O
 1BEF..1BF1    ; Extend # Mn   [3] BATAK VOWEL SIGN U FOR SIMALUNGUN SA..BATAK CONSONANT SIGN H
+1BF2..1BF3    ; Extend # Mc   [2] BATAK PANGOLAT..BATAK PANONGONAN
 1C2C..1C33    ; Extend # Mn   [8] LEPCHA VOWEL SIGN E..LEPCHA CONSONANT SIGN T
 1C36..1C37    ; Extend # Mn   [2] LEPCHA SIGN RAN..LEPCHA SIGN NUKTA
 1CD0..1CD2    ; Extend # Mn   [3] VEDIC TONE KARSHANA..VEDIC TONE PRENKHA
@@ -289,10 +300,12 @@ A8E0..A8F1    ; Extend # Mn  [18] COMBIN
 A8FF          ; Extend # Mn       DEVANAGARI VOWEL SIGN AY
 A926..A92D    ; Extend # Mn   [8] KAYAH LI VOWEL UE..KAYAH LI TONE CALYA PLOPHU
 A947..A951    ; Extend # Mn  [11] REJANG VOWEL SIGN I..REJANG CONSONANT SIGN R
+A953          ; Extend # Mc       REJANG VIRAMA
 A980..A982    ; Extend # Mn   [3] JAVANESE SIGN PANYANGGA..JAVANESE SIGN LAYAR
 A9B3          ; Extend # Mn       JAVANESE SIGN CECAK TELU
 A9B6..A9B9    ; Extend # Mn   [4] JAVANESE VOWEL SIGN WULU..JAVANESE VOWEL SIGN SUKU MENDUT
 A9BC..A9BD    ; Extend # Mn   [2] JAVANESE VOWEL SIGN PEPET..JAVANESE CONSONANT SIGN KERET
+A9C0          ; Extend # Mc       JAVANESE PANGKON
 A9E5          ; Extend # Mn       MYANMAR SIGN SHAN SAW
 AA29..AA2E    ; Extend # Mn   [6] CHAM VOWEL SIGN AA..CHAM VOWEL SIGN OE
 AA31..AA32    ; Extend # Mn   [2] CHAM VOWEL SIGN AU..CHAM VOWEL SIGN UE
@@ -324,8 +337,9 @@ FF9E..FF9F    ; Extend # Lm   [2] HALFWI
 10A3F         ; Extend # Mn       KHAROSHTHI VIRAMA
 10AE5..10AE6  ; Extend # Mn   [2] MANICHAEAN ABBREVIATION MARK ABOVE..MANICHAEAN ABBREVIATION MARK BELOW
 10D24..10D27  ; Extend # Mn   [4] HANIFI ROHINGYA SIGN HARBAHAY..HANIFI ROHINGYA SIGN TASSI
+10D69..10D6D  ; Extend # Mn   [5] GARAY VOWEL SIGN E..GARAY CONSONANT NASALIZATION MARK
 10EAB..10EAC  ; Extend # Mn   [2] YEZIDI COMBINING HAMZA MARK..YEZIDI COMBINING MADDA MARK
-10EFD..10EFF  ; Extend # Mn   [3] ARABIC SMALL LOW WORD SAKTA..ARABIC SMALL LOW WORD MADDA
+10EFC..10EFF  ; Extend # Mn   [4] ARABIC COMBINING ALEF OVERLAY..ARABIC SMALL LOW WORD MADDA
 10F46..10F50  ; Extend # Mn  [11] SOGDIAN COMBINING DOT BELOW..SOGDIAN COMBINING STROKE BELOW
 10F82..10F85  ; Extend # Mn   [4] OLD UYGHUR COMBINING DOT ABOVE..OLD UYGHUR COMBINING TWO DOTS BELOW
 11001         ; Extend # Mn       BRAHMI SIGN ANUSVARA
@@ -342,10 +356,12 @@ FF9E..FF9F    ; Extend # Lm   [2] HALFWI
 11173         ; Extend # Mn       MAHAJANI SIGN NUKTA
 11180..11181  ; Extend # Mn   [2] SHARADA SIGN CANDRABINDU..SHARADA SIGN ANUSVARA
 111B6..111BE  ; Extend # Mn   [9] SHARADA VOWEL SIGN U..SHARADA VOWEL SIGN O
+111C0         ; Extend # Mc       SHARADA SIGN VIRAMA
 111C9..111CC  ; Extend # Mn   [4] SHARADA SANDHI MARK..SHARADA EXTRA SHORT VOWEL MARK
 111CF         ; Extend # Mn       SHARADA SIGN INVERTED CANDRABINDU
 1122F..11231  ; Extend # Mn   [3] KHOJKI VOWEL SIGN U..KHOJKI VOWEL SIGN AI
 11234         ; Extend # Mn       KHOJKI SIGN ANUSVARA
+11235         ; Extend # Mc       KHOJKI SIGN VIRAMA
 11236..11237  ; Extend # Mn   [2] KHOJKI SIGN NUKTA..KHOJKI SIGN SHADDA
 1123E         ; Extend # Mn       KHOJKI SIGN SUKUN
 11241         ; Extend # Mn       KHOJKI VOWEL SIGN VOCALIC R
@@ -355,9 +371,20 @@ FF9E..FF9F    ; Extend # Lm   [2] HALFWI
 1133B..1133C  ; Extend # Mn   [2] COMBINING BINDU BELOW..GRANTHA SIGN NUKTA
 1133E         ; Extend # Mc       GRANTHA VOWEL SIGN AA
 11340         ; Extend # Mn       GRANTHA VOWEL SIGN II
+1134D         ; Extend # Mc       GRANTHA SIGN VIRAMA
 11357         ; Extend # Mc       GRANTHA AU LENGTH MARK
 11366..1136C  ; Extend # Mn   [7] COMBINING GRANTHA DIGIT ZERO..COMBINING GRANTHA DIGIT SIX
 11370..11374  ; Extend # Mn   [5] COMBINING GRANTHA LETTER A..COMBINING GRANTHA LETTER PA
+113B8         ; Extend # Mc       TULU-TIGALARI VOWEL SIGN AA
+113BB..113C0  ; Extend # Mn   [6] TULU-TIGALARI VOWEL SIGN U..TULU-TIGALARI VOWEL SIGN VOCALIC LL
+113C2         ; Extend # Mc       TULU-TIGALARI VOWEL SIGN EE
+113C5         ; Extend # Mc       TULU-TIGALARI VOWEL SIGN AI
+113C7..113C9  ; Extend # Mc   [3] TULU-TIGALARI VOWEL SIGN OO..TULU-TIGALARI AU LENGTH MARK
+113CE         ; Extend # Mn       TULU-TIGALARI SIGN VIRAMA
+113CF         ; Extend # Mc       TULU-TIGALARI SIGN LOOPED VIRAMA
+113D0         ; Extend # Mn       TULU-TIGALARI CONJOINER
+113D2         ; Extend # Mn       TULU-TIGALARI GEMINATION MARK
+113E1..113E2  ; Extend # Mn   [2] TULU-TIGALARI VEDIC TONE SVARITA..TULU-TIGALARI VEDIC TONE ANUDATTA
 11438..1143F  ; Extend # Mn   [8] NEWA VOWEL SIGN U..NEWA VOWEL SIGN AI
 11442..11444  ; Extend # Mn   [3] NEWA SIGN VIRAMA..NEWA SIGN ANUSVARA
 11446         ; Extend # Mn       NEWA SIGN NUKTA
@@ -379,14 +406,17 @@ FF9E..FF9F    ; Extend # Lm   [2] HALFWI
 116AB         ; Extend # Mn       TAKRI SIGN ANUSVARA
 116AD         ; Extend # Mn       TAKRI VOWEL SIGN AA
 116B0..116B5  ; Extend # Mn   [6] TAKRI VOWEL SIGN U..TAKRI VOWEL SIGN AU
+116B6         ; Extend # Mc       TAKRI SIGN VIRAMA
 116B7         ; Extend # Mn       TAKRI SIGN NUKTA
-1171D..1171F  ; Extend # Mn   [3] AHOM CONSONANT SIGN MEDIAL LA..AHOM CONSONANT SIGN MEDIAL LIGATING RA
+1171D         ; Extend # Mn       AHOM CONSONANT SIGN MEDIAL LA
+1171F         ; Extend # Mn       AHOM CONSONANT SIGN MEDIAL LIGATING RA
 11722..11725  ; Extend # Mn   [4] AHOM VOWEL SIGN I..AHOM VOWEL SIGN UU
 11727..1172B  ; Extend # Mn   [5] AHOM VOWEL SIGN AW..AHOM SIGN KILLER
 1182F..11837  ; Extend # Mn   [9] DOGRA VOWEL SIGN U..DOGRA SIGN ANUSVARA
 11839..1183A  ; Extend # Mn   [2] DOGRA SIGN VIRAMA..DOGRA SIGN NUKTA
 11930         ; Extend # Mc       DIVES AKURU VOWEL SIGN AA
 1193B..1193C  ; Extend # Mn   [2] DIVES AKURU SIGN ANUSVARA..DIVES AKURU SIGN CANDRABINDU
+1193D         ; Extend # Mc       DIVES AKURU SIGN HALANTA
 1193E         ; Extend # Mn       DIVES AKURU VIRAMA
 11943         ; Extend # Mn       DIVES AKURU SIGN NUKTA
 119D4..119D7  ; Extend # Mn   [4] NANDINAGARI VOWEL SIGN U..NANDINAGARI VOWEL SIGN VOCALIC RR
@@ -419,20 +449,25 @@ FF9E..FF9F    ; Extend # Lm   [2] HALFWI
 11F00..11F01  ; Extend # Mn   [2] KAWI SIGN CANDRABINDU..KAWI SIGN ANUSVARA
 11F36..11F3A  ; Extend # Mn   [5] KAWI VOWEL SIGN I..KAWI VOWEL SIGN VOCALIC R
 11F40         ; Extend # Mn       KAWI VOWEL SIGN EU
+11F41         ; Extend # Mc       KAWI SIGN KILLER
 11F42         ; Extend # Mn       KAWI CONJOINER
+11F5A         ; Extend # Mn       KAWI SIGN NUKTA
 13440         ; Extend # Mn       EGYPTIAN HIEROGLYPH MIRROR HORIZONTALLY
 13447..13455  ; Extend # Mn  [15] EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP START..EGYPTIAN HIEROGLYPH MODIFIER DAMAGED
+1611E..16129  ; Extend # Mn  [12] GURUNG KHEMA VOWEL SIGN AA..GURUNG KHEMA VOWEL LENGTH MARK
+1612D..1612F  ; Extend # Mn   [3] GURUNG KHEMA SIGN ANUSVARA..GURUNG KHEMA SIGN THOLHOMA
 16AF0..16AF4  ; Extend # Mn   [5] BASSA VAH COMBINING HIGH TONE..BASSA VAH COMBINING HIGH-LOW TONE
 16B30..16B36  ; Extend # Mn   [7] PAHAWH HMONG MARK CIM TUB..PAHAWH HMONG MARK CIM TAUM
 16F4F         ; Extend # Mn       MIAO SIGN CONSONANT MODIFIER BAR
 16F8F..16F92  ; Extend # Mn   [4] MIAO TONE RIGHT..MIAO TONE BELOW
 16FE4         ; Extend # Mn       KHITAN SMALL SCRIPT FILLER
+16FF0..16FF1  ; Extend # Mc   [2] VIETNAMESE ALTERNATE READING MARK CA..VIETNAMESE ALTERNATE READING MARK NHAY
 1BC9D..1BC9E  ; Extend # Mn   [2] DUPLOYAN THICK LETTER SELECTOR..DUPLOYAN DOUBLE MARK
 1CF00..1CF2D  ; Extend # Mn  [46] ZNAMENNY COMBINING MARK GORAZDO NIZKO S KRYZHEM ON LEFT..ZNAMENNY COMBINING MARK KRYZH ON LEFT
 1CF30..1CF46  ; Extend # Mn  [23] ZNAMENNY COMBINING TONAL RANGE MARK MRACHNO..ZNAMENNY PRIZNAK MODIFIER ROG
-1D165         ; Extend # Mc       MUSICAL SYMBOL COMBINING STEM
+1D165..1D166  ; Extend # Mc   [2] MUSICAL SYMBOL COMBINING STEM..MUSICAL SYMBOL COMBINING SPRECHGESANG STEM
 1D167..1D169  ; Extend # Mn   [3] MUSICAL SYMBOL COMBINING TREMOLO-1..MUSICAL SYMBOL COMBINING TREMOLO-3
-1D16E..1D172  ; Extend # Mc   [5] MUSICAL SYMBOL COMBINING FLAG-1..MUSICAL SYMBOL COMBINING FLAG-5
+1D16D..1D172  ; Extend # Mc   [6] MUSICAL SYMBOL COMBINING AUGMENTATION DOT..MUSICAL SYMBOL COMBINING FLAG-5
 1D17B..1D182  ; Extend # Mn   [8] MUSICAL SYMBOL COMBINING ACCENT..MUSICAL SYMBOL COMBINING LOURE
 1D185..1D18B  ; Extend # Mn   [7] MUSICAL SYMBOL COMBINING DOIT..MUSICAL SYMBOL COMBINING TRIPLE TONGUE
 1D1AA..1D1AD  ; Extend # Mn   [4] MUSICAL SYMBOL COMBINING DOWN BOW..MUSICAL SYMBOL COMBINING SNAP PIZZICATO
@@ -453,13 +488,14 @@ FF9E..FF9F    ; Extend # Lm   [2] HALFWI
 1E2AE         ; Extend # Mn       TOTO SIGN RISING TONE
 1E2EC..1E2EF  ; Extend # Mn   [4] WANCHO TONE TUP..WANCHO TONE KOINI
 1E4EC..1E4EF  ; Extend # Mn   [4] NAG MUNDARI SIGN MUHOR..NAG MUNDARI SIGN SUTUH
+1E5EE..1E5EF  ; Extend # Mn   [2] OL ONAL SIGN MU..OL ONAL SIGN IKIR
 1E8D0..1E8D6  ; Extend # Mn   [7] MENDE KIKAKUI COMBINING NUMBER TEENS..MENDE KIKAKUI COMBINING NUMBER MILLIONS
 1E944..1E94A  ; Extend # Mn   [7] ADLAM ALIF LENGTHENER..ADLAM NUKTA
 1F3FB..1F3FF  ; Extend # Sk   [5] EMOJI MODIFIER FITZPATRICK TYPE-1-2..EMOJI MODIFIER FITZPATRICK TYPE-6
 E0020..E007F  ; Extend # Cf  [96] TAG SPACE..CANCEL TAG
 E0100..E01EF  ; Extend # Mn [240] VARIATION SELECTOR-17..VARIATION SELECTOR-256
 
-# Total code points: 2130
+# Total code points: 2198
 
 # ================================================
 
@@ -496,10 +532,8 @@ E0100..E01EF  ; Extend # Mn [240] VARIAT
 0C41..0C44    ; SpacingMark # Mc   [4] TELUGU VOWEL SIGN U..TELUGU VOWEL SIGN VOCALIC RR
 0C82..0C83    ; SpacingMark # Mc   [2] KANNADA SIGN ANUSVARA..KANNADA SIGN VISARGA
 0CBE          ; SpacingMark # Mc       KANNADA VOWEL SIGN AA
-0CC0..0CC1    ; SpacingMark # Mc   [2] KANNADA VOWEL SIGN II..KANNADA VOWEL SIGN U
+0CC1          ; SpacingMark # Mc       KANNADA VOWEL SIGN U
 0CC3..0CC4    ; SpacingMark # Mc   [2] KANNADA VOWEL SIGN VOCALIC R..KANNADA VOWEL SIGN VOCALIC RR
-0CC7..0CC8    ; SpacingMark # Mc   [2] KANNADA VOWEL SIGN EE..KANNADA VOWEL SIGN AI
-0CCA..0CCB    ; SpacingMark # Mc   [2] KANNADA VOWEL SIGN O..KANNADA VOWEL SIGN OO
 0CF3          ; SpacingMark # Mc       KANNADA SIGN COMBINING ANUSVARA ABOVE RIGHT
 0D02..0D03    ; SpacingMark # Mc   [2] MALAYALAM SIGN ANUSVARA..MALAYALAM SIGN VISARGA
 0D3F..0D40    ; SpacingMark # Mc   [2] MALAYALAM VOWEL SIGN I..MALAYALAM VOWEL SIGN II
@@ -517,8 +551,6 @@ E0100..E01EF  ; Extend # Mn [240] VARIAT
 103B..103C    ; SpacingMark # Mc   [2] MYANMAR CONSONANT SIGN MEDIAL YA..MYANMAR CONSONANT SIGN MEDIAL RA
 1056..1057    ; SpacingMark # Mc   [2] MYANMAR VOWEL SIGN VOCALIC R..MYANMAR VOWEL SIGN VOCALIC RR
 1084          ; SpacingMark # Mc       MYANMAR VOWEL SIGN SHAN E
-1715          ; SpacingMark # Mc       TAGALOG SIGN PAMUDPOD
-1734          ; SpacingMark # Mc       HANUNOO SIGN PAMUDPOD
 17B6          ; SpacingMark # Mc       KHMER VOWEL SIGN AA
 17BE..17C5    ; SpacingMark # Mc   [8] KHMER VOWEL SIGN OE..KHMER VOWEL SIGN AU
 17C7..17C8    ; SpacingMark # Mc   [2] KHMER SIGN REAHMUK..KHMER SIGN YUUKALEAPINTU
@@ -531,17 +563,13 @@ E0100..E01EF  ; Extend # Mn [240] VARIAT
 1A57          ; SpacingMark # Mc       TAI THAM CONSONANT SIGN LA TANG LAI
 1A6D..1A72    ; SpacingMark # Mc   [6] TAI THAM VOWEL SIGN OY..TAI THAM VOWEL SIGN THAM AI
 1B04          ; SpacingMark # Mc       BALINESE SIGN BISAH
-1B3B          ; SpacingMark # Mc       BALINESE VOWEL SIGN RA REPA TEDUNG
-1B3D..1B41    ; SpacingMark # Mc   [5] BALINESE VOWEL SIGN LA LENGA TEDUNG..BALINESE VOWEL SIGN TALING REPA TEDUNG
-1B43..1B44    ; SpacingMark # Mc   [2] BALINESE VOWEL SIGN PEPET TEDUNG..BALINESE ADEG ADEG
+1B3E..1B41    ; SpacingMark # Mc   [4] BALINESE VOWEL SIGN TALING..BALINESE VOWEL SIGN TALING REPA TEDUNG
 1B82          ; SpacingMark # Mc       SUNDANESE SIGN PANGWISAD
 1BA1          ; SpacingMark # Mc       SUNDANESE CONSONANT SIGN PAMINGKAL
 1BA6..1BA7    ; SpacingMark # Mc   [2] SUNDANESE VOWEL SIGN PANAELAENG..SUNDANESE VOWEL SIGN PANOLONG
-1BAA          ; SpacingMark # Mc       SUNDANESE SIGN PAMAAEH
 1BE7          ; SpacingMark # Mc       BATAK VOWEL SIGN E
 1BEA..1BEC    ; SpacingMark # Mc   [3] BATAK VOWEL SIGN I..BATAK VOWEL SIGN O
 1BEE          ; SpacingMark # Mc       BATAK VOWEL SIGN U
-1BF2..1BF3    ; SpacingMark # Mc   [2] BATAK PANGOLAT..BATAK PANONGONAN
 1C24..1C2B    ; SpacingMark # Mc   [8] LEPCHA SUBJOINED LETTER YA..LEPCHA VOWEL SIGN UU
 1C34..1C35    ; SpacingMark # Mc   [2] LEPCHA CONSONANT SIGN NYIN-DO..LEPCHA CONSONANT SIGN KANG
 1CE1          ; SpacingMark # Mc       VEDIC TONE ATHARVAVEDIC INDEPENDENT SVARITA
@@ -550,11 +578,11 @@ A823..A824    ; SpacingMark # Mc   [2] S
 A827          ; SpacingMark # Mc       SYLOTI NAGRI VOWEL SIGN OO
 A880..A881    ; SpacingMark # Mc   [2] SAURASHTRA SIGN ANUSVARA..SAURASHTRA SIGN VISARGA
 A8B4..A8C3    ; SpacingMark # Mc  [16] SAURASHTRA CONSONANT SIGN HAARU..SAURASHTRA VOWEL SIGN AU
-A952..A953    ; SpacingMark # Mc   [2] REJANG CONSONANT SIGN H..REJANG VIRAMA
+A952          ; SpacingMark # Mc       REJANG CONSONANT SIGN H
 A983          ; SpacingMark # Mc       JAVANESE SIGN WIGNYAN
 A9B4..A9B5    ; SpacingMark # Mc   [2] JAVANESE VOWEL SIGN TARUNG..JAVANESE VOWEL SIGN TOLONG
 A9BA..A9BB    ; SpacingMark # Mc   [2] JAVANESE VOWEL SIGN TALING..JAVANESE VOWEL SIGN DIRGA MURE
-A9BE..A9C0    ; SpacingMark # Mc   [3] JAVANESE CONSONANT SIGN PENGKAL..JAVANESE PANGKON
+A9BE..A9BF    ; SpacingMark # Mc   [2] JAVANESE CONSONANT SIGN PENGKAL..JAVANESE CONSONANT SIGN CAKRA
 AA2F..AA30    ; SpacingMark # Mc   [2] CHAM VOWEL SIGN O..CHAM VOWEL SIGN AI
 AA33..AA34    ; SpacingMark # Mc   [2] CHAM CONSONANT SIGN YA..CHAM CONSONANT SIGN RA
 AA4D          ; SpacingMark # Mc       CHAM CONSONANT SIGN FINAL H
@@ -574,18 +602,20 @@ ABEC          ; SpacingMark # Mc       M
 11145..11146  ; SpacingMark # Mc   [2] CHAKMA VOWEL SIGN AA..CHAKMA VOWEL SIGN EI
 11182         ; SpacingMark # Mc       SHARADA SIGN VISARGA
 111B3..111B5  ; SpacingMark # Mc   [3] SHARADA VOWEL SIGN AA..SHARADA VOWEL SIGN II
-111BF..111C0  ; SpacingMark # Mc   [2] SHARADA VOWEL SIGN AU..SHARADA SIGN VIRAMA
+111BF         ; SpacingMark # Mc       SHARADA VOWEL SIGN AU
 111CE         ; SpacingMark # Mc       SHARADA VOWEL SIGN PRISHTHAMATRA E
 1122C..1122E  ; SpacingMark # Mc   [3] KHOJKI VOWEL SIGN AA..KHOJKI VOWEL SIGN II
 11232..11233  ; SpacingMark # Mc   [2] KHOJKI VOWEL SIGN O..KHOJKI VOWEL SIGN AU
-11235         ; SpacingMark # Mc       KHOJKI SIGN VIRAMA
 112E0..112E2  ; SpacingMark # Mc   [3] KHUDAWADI VOWEL SIGN AA..KHUDAWADI VOWEL SIGN II
 11302..11303  ; SpacingMark # Mc   [2] GRANTHA SIGN ANUSVARA..GRANTHA SIGN VISARGA
 1133F         ; SpacingMark # Mc       GRANTHA VOWEL SIGN I
 11341..11344  ; SpacingMark # Mc   [4] GRANTHA VOWEL SIGN U..GRANTHA VOWEL SIGN VOCALIC RR
 11347..11348  ; SpacingMark # Mc   [2] GRANTHA VOWEL SIGN EE..GRANTHA VOWEL SIGN AI
-1134B..1134D  ; SpacingMark # Mc   [3] GRANTHA VOWEL SIGN OO..GRANTHA SIGN VIRAMA
+1134B..1134C  ; SpacingMark # Mc   [2] GRANTHA VOWEL SIGN OO..GRANTHA VOWEL SIGN AU
 11362..11363  ; SpacingMark # Mc   [2] GRANTHA VOWEL SIGN VOCALIC L..GRANTHA VOWEL SIGN VOCALIC LL
+113B9..113BA  ; SpacingMark # Mc   [2] TULU-TIGALARI VOWEL SIGN I..TULU-TIGALARI VOWEL SIGN II
+113CA         ; SpacingMark # Mc       TULU-TIGALARI SIGN CANDRA ANUNASIKA
+113CC..113CD  ; SpacingMark # Mc   [2] TULU-TIGALARI SIGN ANUSVARA..TULU-TIGALARI SIGN VISARGA
 11435..11437  ; SpacingMark # Mc   [3] NEWA VOWEL SIGN AA..NEWA VOWEL SIGN II
 11440..11441  ; SpacingMark # Mc   [2] NEWA VOWEL SIGN O..NEWA VOWEL SIGN AU
 11445         ; SpacingMark # Mc       NEWA SIGN VISARGA
@@ -602,13 +632,12 @@ ABEC          ; SpacingMark # Mc       M
 1163E         ; SpacingMark # Mc       MODI SIGN VISARGA
 116AC         ; SpacingMark # Mc       TAKRI SIGN VISARGA
 116AE..116AF  ; SpacingMark # Mc   [2] TAKRI VOWEL SIGN I..TAKRI VOWEL SIGN II
-116B6         ; SpacingMark # Mc       TAKRI SIGN VIRAMA
+1171E         ; SpacingMark # Mc       AHOM CONSONANT SIGN MEDIAL RA
 11726         ; SpacingMark # Mc       AHOM VOWEL SIGN E
 1182C..1182E  ; SpacingMark # Mc   [3] DOGRA VOWEL SIGN AA..DOGRA VOWEL SIGN II
 11838         ; SpacingMark # Mc       DOGRA SIGN VISARGA
 11931..11935  ; SpacingMark # Mc   [5] DIVES AKURU VOWEL SIGN I..DIVES AKURU VOWEL SIGN E
 11937..11938  ; SpacingMark # Mc   [2] DIVES AKURU VOWEL SIGN AI..DIVES AKURU VOWEL SIGN O
-1193D         ; SpacingMark # Mc       DIVES AKURU SIGN HALANTA
 11940         ; SpacingMark # Mc       DIVES AKURU MEDIAL YA
 11942         ; SpacingMark # Mc       DIVES AKURU MEDIAL RA
 119D1..119D3  ; SpacingMark # Mc   [3] NANDINAGARI VOWEL SIGN AA..NANDINAGARI VOWEL SIGN II
@@ -629,13 +658,10 @@ ABEC          ; SpacingMark # Mc       M
 11F03         ; SpacingMark # Mc       KAWI SIGN VISARGA
 11F34..11F35  ; SpacingMark # Mc   [2] KAWI VOWEL SIGN AA..KAWI VOWEL SIGN ALTERNATE AA
 11F3E..11F3F  ; SpacingMark # Mc   [2] KAWI VOWEL SIGN E..KAWI VOWEL SIGN AI
-11F41         ; SpacingMark # Mc       KAWI SIGN KILLER
+1612A..1612C  ; SpacingMark # Mc   [3] GURUNG KHEMA CONSONANT SIGN MEDIAL YA..GURUNG KHEMA CONSONANT SIGN MEDIAL HA
 16F51..16F87  ; SpacingMark # Mc  [55] MIAO SIGN ASPIRATION..MIAO VOWEL SIGN UI
-16FF0..16FF1  ; SpacingMark # Mc   [2] VIETNAMESE ALTERNATE READING MARK CA..VIETNAMESE ALTERNATE READING MARK NHAY
-1D166         ; SpacingMark # Mc       MUSICAL SYMBOL COMBINING SPRECHGESANG STEM
-1D16D         ; SpacingMark # Mc       MUSICAL SYMBOL COMBINING AUGMENTATION DOT
 
-# Total code points: 395
+# Total code points: 378
 
 # ================================================
 
@@ -648,8 +674,10 @@ A960..A97C    ; L # Lo  [29] HANGUL CHOS
 
 1160..11A7    ; V # Lo  [72] HANGUL JUNGSEONG FILLER..HANGUL JUNGSEONG O-YAE
 D7B0..D7C6    ; V # Lo  [23] HANGUL JUNGSEONG O-YEO..HANGUL JUNGSEONG ARAEA-E
+16D63         ; V # Lo       KIRAT RAI VOWEL SIGN AA
+16D67..16D6A  ; V # Lo   [4] KIRAT RAI VOWEL SIGN E..KIRAT RAI VOWEL SIGN AU
 
-# Total code points: 95
+# Total code points: 100
 
 # ================================================
 
--- contrib/unicode/DerivedNormalizationProps.txt.jj	2023-11-14 18:32:34.878123893 +0100
+++ contrib/unicode/DerivedNormalizationProps.txt	2024-10-07 10:59:05.901642800 +0200
@@ -1,8 +1,8 @@
-# DerivedNormalizationProps-15.1.0.txt
-# Date: 2023-05-02, 13:20:58 GMT
-# © 2023 Unicode®, Inc.
+# DerivedNormalizationProps-16.0.0.txt
+# Date: 2024-04-30, 21:48:18 GMT
+# © 2024 Unicode®, Inc.
 # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries.
-# For terms of use, see https://www.unicode.org/terms_of_use.html
+# For terms of use and license, see https://www.unicode.org/terms_of_use.html
 #
 # Unicode Character Database
 #   For documentation, see https://www.unicode.org/reports/tr44/
@@ -136,6 +136,32 @@ A7F2  ; FC_NFKC; 0063           # Lm  MO
 A7F3  ; FC_NFKC; 0066           # Lm  MODIFIER LETTER CAPITAL F
 A7F4  ; FC_NFKC; 0071           # Lm  MODIFIER LETTER CAPITAL Q
 A7F8  ; FC_NFKC; 0127           # Lm  MODIFIER LETTER CAPITAL H WITH STROKE
+1CCD6 ; FC_NFKC; 0061           # So  OUTLINED LATIN CAPITAL LETTER A
+1CCD7 ; FC_NFKC; 0062           # So  OUTLINED LATIN CAPITAL LETTER B
+1CCD8 ; FC_NFKC; 0063           # So  OUTLINED LATIN CAPITAL LETTER C
+1CCD9 ; FC_NFKC; 0064           # So  OUTLINED LATIN CAPITAL LETTER D
+1CCDA ; FC_NFKC; 0065           # So  OUTLINED LATIN CAPITAL LETTER E
+1CCDB ; FC_NFKC; 0066           # So  OUTLINED LATIN CAPITAL LETTER F
+1CCDC ; FC_NFKC; 0067           # So  OUTLINED LATIN CAPITAL LETTER G
+1CCDD ; FC_NFKC; 0068           # So  OUTLINED LATIN CAPITAL LETTER H
+1CCDE ; FC_NFKC; 0069           # So  OUTLINED LATIN CAPITAL LETTER I
+1CCDF ; FC_NFKC; 006A           # So  OUTLINED LATIN CAPITAL LETTER J
+1CCE0 ; FC_NFKC; 006B           # So  OUTLINED LATIN CAPITAL LETTER K
+1CCE1 ; FC_NFKC; 006C           # So  OUTLINED LATIN CAPITAL LETTER L
+1CCE2 ; FC_NFKC; 006D           # So  OUTLINED LATIN CAPITAL LETTER M
+1CCE3 ; FC_NFKC; 006E           # So  OUTLINED LATIN CAPITAL LETTER N
+1CCE4 ; FC_NFKC; 006F           # So  OUTLINED LATIN CAPITAL LETTER O
+1CCE5 ; FC_NFKC; 0070           # So  OUTLINED LATIN CAPITAL LETTER P
+1CCE6 ; FC_NFKC; 0071           # So  OUTLINED LATIN CAPITAL LETTER Q
+1CCE7 ; FC_NFKC; 0072           # So  OUTLINED LATIN CAPITAL LETTER R
+1CCE8 ; FC_NFKC; 0073           # So  OUTLINED LATIN CAPITAL LETTER S
+1CCE9 ; FC_NFKC; 0074           # So  OUTLINED LATIN CAPITAL LETTER T
+1CCEA ; FC_NFKC; 0075           # So  OUTLINED LATIN CAPITAL LETTER U
+1CCEB ; FC_NFKC; 0076           # So  OUTLINED LATIN CAPITAL LETTER V
+1CCEC ; FC_NFKC; 0077           # So  OUTLINED LATIN CAPITAL LETTER W
+1CCED ; FC_NFKC; 0078           # So  OUTLINED LATIN CAPITAL LETTER X
+1CCEE ; FC_NFKC; 0079           # So  OUTLINED LATIN CAPITAL LETTER Y
+1CCEF ; FC_NFKC; 007A           # So  OUTLINED LATIN CAPITAL LETTER Z
 1D400 ; FC_NFKC; 0061           # L&  MATHEMATICAL BOLD CAPITAL A
 1D401 ; FC_NFKC; 0062           # L&  MATHEMATICAL BOLD CAPITAL B
 1D402 ; FC_NFKC; 0063           # L&  MATHEMATICAL BOLD CAPITAL C
@@ -653,7 +679,7 @@ A7F8  ; FC_NFKC; 0127           # Lm  MO
 1F16C ; FC_NFKC; 006D 0072      # So  RAISED MR SIGN
 1F190 ; FC_NFKC; 0064 006A      # So  SQUARE DJ
 
-# Total code points: 637
+# Total code points: 663
 
 # ================================================
 
@@ -981,20 +1007,30 @@ FB3E          ; NFD_QC; N # Lo       HEB
 FB40..FB41    ; NFD_QC; N # Lo   [2] HEBREW LETTER NUN WITH DAGESH..HEBREW LETTER SAMEKH WITH DAGESH
 FB43..FB44    ; NFD_QC; N # Lo   [2] HEBREW LETTER FINAL PE WITH DAGESH..HEBREW LETTER PE WITH DAGESH
 FB46..FB4E    ; NFD_QC; N # Lo   [9] HEBREW LETTER TSADI WITH DAGESH..HEBREW LETTER PE WITH RAFE
+105C9         ; NFD_QC; N # Lo       TODHRI LETTER EI
+105E4         ; NFD_QC; N # Lo       TODHRI LETTER U
 1109A         ; NFD_QC; N # Lo       KAITHI LETTER DDDHA
 1109C         ; NFD_QC; N # Lo       KAITHI LETTER RHA
 110AB         ; NFD_QC; N # Lo       KAITHI LETTER VA
 1112E..1112F  ; NFD_QC; N # Mn   [2] CHAKMA VOWEL SIGN O..CHAKMA VOWEL SIGN AU
 1134B..1134C  ; NFD_QC; N # Mc   [2] GRANTHA VOWEL SIGN OO..GRANTHA VOWEL SIGN AU
+11383         ; NFD_QC; N # Lo       TULU-TIGALARI LETTER II
+11385         ; NFD_QC; N # Lo       TULU-TIGALARI LETTER UU
+1138E         ; NFD_QC; N # Lo       TULU-TIGALARI LETTER AI
+11391         ; NFD_QC; N # Lo       TULU-TIGALARI LETTER AU
+113C5         ; NFD_QC; N # Mc       TULU-TIGALARI VOWEL SIGN AI
+113C7..113C8  ; NFD_QC; N # Mc   [2] TULU-TIGALARI VOWEL SIGN OO..TULU-TIGALARI VOWEL SIGN AU
 114BB..114BC  ; NFD_QC; N # Mc   [2] TIRHUTA VOWEL SIGN AI..TIRHUTA VOWEL SIGN O
 114BE         ; NFD_QC; N # Mc       TIRHUTA VOWEL SIGN AU
 115BA..115BB  ; NFD_QC; N # Mc   [2] SIDDHAM VOWEL SIGN O..SIDDHAM VOWEL SIGN AU
 11938         ; NFD_QC; N # Mc       DIVES AKURU VOWEL SIGN O
+16121..16128  ; NFD_QC; N # Mn   [8] GURUNG KHEMA VOWEL SIGN U..GURUNG KHEMA VOWEL SIGN AU
+16D68..16D6A  ; NFD_QC; N # Lo   [3] KIRAT RAI VOWEL SIGN AI..KIRAT RAI VOWEL SIGN AU
 1D15E..1D164  ; NFD_QC; N # So   [7] MUSICAL SYMBOL HALF NOTE..MUSICAL SYMBOL ONE HUNDRED TWENTY-EIGHTH NOTE
 1D1BB..1D1C0  ; NFD_QC; N # So   [6] MUSICAL SYMBOL MINIMA..MUSICAL SYMBOL FUSA BLACK
 2F800..2FA1D  ; NFD_QC; N # Lo [542] CJK COMPATIBILITY IDEOGRAPH-2F800..CJK COMPATIBILITY IDEOGRAPH-2FA1D
 
-# Total code points: 13233
+# Total code points: 13253
 
 # ================================================
 
@@ -1128,13 +1164,20 @@ FB46..FB4E    ; NFC_QC; N # Lo   [9] HEB
 11127         ; NFC_QC; M # Mn       CHAKMA VOWEL SIGN A
 1133E         ; NFC_QC; M # Mc       GRANTHA VOWEL SIGN AA
 11357         ; NFC_QC; M # Mc       GRANTHA AU LENGTH MARK
+113B8         ; NFC_QC; M # Mc       TULU-TIGALARI VOWEL SIGN AA
+113BB         ; NFC_QC; M # Mn       TULU-TIGALARI VOWEL SIGN U
+113C2         ; NFC_QC; M # Mc       TULU-TIGALARI VOWEL SIGN EE
+113C5         ; NFC_QC; M # Mc       TULU-TIGALARI VOWEL SIGN AI
+113C7..113C9  ; NFC_QC; M # Mc   [3] TULU-TIGALARI VOWEL SIGN OO..TULU-TIGALARI AU LENGTH MARK
 114B0         ; NFC_QC; M # Mc       TIRHUTA VOWEL SIGN AA
 114BA         ; NFC_QC; M # Mn       TIRHUTA VOWEL SIGN SHORT E
 114BD         ; NFC_QC; M # Mc       TIRHUTA VOWEL SIGN SHORT O
 115AF         ; NFC_QC; M # Mc       SIDDHAM VOWEL SIGN AA
 11930         ; NFC_QC; M # Mc       DIVES AKURU VOWEL SIGN AA
+1611E..16129  ; NFC_QC; M # Mn  [12] GURUNG KHEMA VOWEL SIGN AA..GURUNG KHEMA VOWEL LENGTH MARK
+16D67..16D68  ; NFC_QC; M # Lo   [2] KIRAT RAI VOWEL SIGN E..KIRAT RAI VOWEL SIGN AI
 
-# Total code points: 111
+# Total code points: 132
 
 # ================================================
 
@@ -1597,6 +1640,8 @@ FFE5..FFE6    ; NFKD_QC; N # Sc   [2] FU
 FFE8          ; NFKD_QC; N # So       HALFWIDTH FORMS LIGHT VERTICAL
 FFE9..FFEC    ; NFKD_QC; N # Sm   [4] HALFWIDTH LEFTWARDS ARROW..HALFWIDTH DOWNWARDS ARROW
 FFED..FFEE    ; NFKD_QC; N # So   [2] HALFWIDTH BLACK SQUARE..HALFWIDTH WHITE CIRCLE
+105C9         ; NFKD_QC; N # Lo       TODHRI LETTER EI
+105E4         ; NFKD_QC; N # Lo       TODHRI LETTER U
 10781..10785  ; NFKD_QC; N # Lm   [5] MODIFIER LETTER SUPERSCRIPT TRIANGULAR COLON..MODIFIER LETTER SMALL B WITH HOOK
 10787..107B0  ; NFKD_QC; N # Lm  [42] MODIFIER LETTER SMALL DZ DIGRAPH..MODIFIER LETTER SMALL V WITH RIGHT HOOK
 107B2..107BA  ; NFKD_QC; N # Lm   [9] MODIFIER LETTER SMALL CAPITAL Y..MODIFIER LETTER SMALL S WITH CURL
@@ -1605,10 +1650,20 @@ FFED..FFEE    ; NFKD_QC; N # So   [2] HA
 110AB         ; NFKD_QC; N # Lo       KAITHI LETTER VA
 1112E..1112F  ; NFKD_QC; N # Mn   [2] CHAKMA VOWEL SIGN O..CHAKMA VOWEL SIGN AU
 1134B..1134C  ; NFKD_QC; N # Mc   [2] GRANTHA VOWEL SIGN OO..GRANTHA VOWEL SIGN AU
+11383         ; NFKD_QC; N # Lo       TULU-TIGALARI LETTER II
+11385         ; NFKD_QC; N # Lo       TULU-TIGALARI LETTER UU
+1138E         ; NFKD_QC; N # Lo       TULU-TIGALARI LETTER AI
+11391         ; NFKD_QC; N # Lo       TULU-TIGALARI LETTER AU
+113C5         ; NFKD_QC; N # Mc       TULU-TIGALARI VOWEL SIGN AI
+113C7..113C8  ; NFKD_QC; N # Mc   [2] TULU-TIGALARI VOWEL SIGN OO..TULU-TIGALARI VOWEL SIGN AU
 114BB..114BC  ; NFKD_QC; N # Mc   [2] TIRHUTA VOWEL SIGN AI..TIRHUTA VOWEL SIGN O
 114BE         ; NFKD_QC; N # Mc       TIRHUTA VOWEL SIGN AU
 115BA..115BB  ; NFKD_QC; N # Mc   [2] SIDDHAM VOWEL SIGN O..SIDDHAM VOWEL SIGN AU
 11938         ; NFKD_QC; N # Mc       DIVES AKURU VOWEL SIGN O
+16121..16128  ; NFKD_QC; N # Mn   [8] GURUNG KHEMA VOWEL SIGN U..GURUNG KHEMA VOWEL SIGN AU
+16D68..16D6A  ; NFKD_QC; N # Lo   [3] KIRAT RAI VOWEL SIGN AI..KIRAT RAI VOWEL SIGN AU
+1CCD6..1CCEF  ; NFKD_QC; N # So  [26] OUTLINED LATIN CAPITAL LETTER A..OUTLINED LATIN CAPITAL LETTER Z
+1CCF0..1CCF9  ; NFKD_QC; N # Nd  [10] OUTLINED DIGIT ZERO..OUTLINED DIGIT NINE
 1D15E..1D164  ; NFKD_QC; N # So   [7] MUSICAL SYMBOL HALF NOTE..MUSICAL SYMBOL ONE HUNDRED TWENTY-EIGHTH NOTE
 1D1BB..1D1C0  ; NFKD_QC; N # So   [6] MUSICAL SYMBOL MINIMA..MUSICAL SYMBOL FUSA BLACK
 1D400..1D454  ; NFKD_QC; N # L&  [85] MATHEMATICAL BOLD CAPITAL A..MATHEMATICAL ITALIC SMALL G
@@ -1698,7 +1753,7 @@ FFED..FFEE    ; NFKD_QC; N # So   [2] HA
 1FBF0..1FBF9  ; NFKD_QC; N # Nd  [10] SEGMENTED DIGIT ZERO..SEGMENTED DIGIT NINE
 2F800..2FA1D  ; NFKD_QC; N # Lo [542] CJK COMPATIBILITY IDEOGRAPH-2F800..CJK COMPATIBILITY IDEOGRAPH-2FA1D
 
-# Total code points: 17029
+# Total code points: 17085
 
 # ================================================
 
@@ -2018,6 +2073,8 @@ FFED..FFEE    ; NFKC_QC; N # So   [2] HA
 10781..10785  ; NFKC_QC; N # Lm   [5] MODIFIER LETTER SUPERSCRIPT TRIANGULAR COLON..MODIFIER LETTER SMALL B WITH HOOK
 10787..107B0  ; NFKC_QC; N # Lm  [42] MODIFIER LETTER SMALL DZ DIGRAPH..MODIFIER LETTER SMALL V WITH RIGHT HOOK
 107B2..107BA  ; NFKC_QC; N # Lm   [9] MODIFIER LETTER SMALL CAPITAL Y..MODIFIER LETTER SMALL S WITH CURL
+1CCD6..1CCEF  ; NFKC_QC; N # So  [26] OUTLINED LATIN CAPITAL LETTER A..OUTLINED LATIN CAPITAL LETTER Z
+1CCF0..1CCF9  ; NFKC_QC; N # Nd  [10] OUTLINED DIGIT ZERO..OUTLINED DIGIT NINE
 1D15E..1D164  ; NFKC_QC; N # So   [7] MUSICAL SYMBOL HALF NOTE..MUSICAL SYMBOL ONE HUNDRED TWENTY-EIGHTH NOTE
 1D1BB..1D1C0  ; NFKC_QC; N # So   [6] MUSICAL SYMBOL MINIMA..MUSICAL SYMBOL FUSA BLACK
 1D400..1D454  ; NFKC_QC; N # L&  [85] MATHEMATICAL BOLD CAPITAL A..MATHEMATICAL ITALIC SMALL G
@@ -2107,7 +2164,7 @@ FFED..FFEE    ; NFKC_QC; N # So   [2] HA
 1FBF0..1FBF9  ; NFKC_QC; N # Nd  [10] SEGMENTED DIGIT ZERO..SEGMENTED DIGIT NINE
 2F800..2FA1D  ; NFKC_QC; N # Lo [542] CJK COMPATIBILITY IDEOGRAPH-2F800..CJK COMPATIBILITY IDEOGRAPH-2FA1D
 
-# Total code points: 4928
+# Total code points: 4964
 
 # ================================================
 
@@ -2151,13 +2208,20 @@ FFED..FFEE    ; NFKC_QC; N # So   [2] HA
 11127         ; NFKC_QC; M # Mn       CHAKMA VOWEL SIGN A
 1133E         ; NFKC_QC; M # Mc       GRANTHA VOWEL SIGN AA
 11357         ; NFKC_QC; M # Mc       GRANTHA AU LENGTH MARK
+113B8         ; NFKC_QC; M # Mc       TULU-TIGALARI VOWEL SIGN AA
+113BB         ; NFKC_QC; M # Mn       TULU-TIGALARI VOWEL SIGN U
+113C2         ; NFKC_QC; M # Mc       TULU-TIGALARI VOWEL SIGN EE
+113C5         ; NFKC_QC; M # Mc       TULU-TIGALARI VOWEL SIGN AI
+113C7..113C9  ; NFKC_QC; M # Mc   [3] TULU-TIGALARI VOWEL SIGN OO..TULU-TIGALARI AU LENGTH MARK
 114B0         ; NFKC_QC; M # Mc       TIRHUTA VOWEL SIGN AA
 114BA         ; NFKC_QC; M # Mn       TIRHUTA VOWEL SIGN SHORT E
 114BD         ; NFKC_QC; M # Mc       TIRHUTA VOWEL SIGN SHORT O
 115AF         ; NFKC_QC; M # Mc       SIDDHAM VOWEL SIGN AA
 11930         ; NFKC_QC; M # Mc       DIVES AKURU VOWEL SIGN AA
+1611E..16129  ; NFKC_QC; M # Mn  [12] GURUNG KHEMA VOWEL SIGN AA..GURUNG KHEMA VOWEL LENGTH MARK
+16D67..16D68  ; NFKC_QC; M # Lo   [2] KIRAT RAI VOWEL SIGN E..KIRAT RAI VOWEL SIGN AI
 
-# Total code points: 111
+# Total code points: 132
 
 # ================================================
 
@@ -2379,19 +2443,29 @@ FB3E          ; Expands_On_NFD # Lo
 FB40..FB41    ; Expands_On_NFD # Lo   [2] HEBREW LETTER NUN WITH DAGESH..HEBREW LETTER SAMEKH WITH DAGESH
 FB43..FB44    ; Expands_On_NFD # Lo   [2] HEBREW LETTER FINAL PE WITH DAGESH..HEBREW LETTER PE WITH DAGESH
 FB46..FB4E    ; Expands_On_NFD # Lo   [9] HEBREW LETTER TSADI WITH DAGESH..HEBREW LETTER PE WITH RAFE
+105C9         ; Expands_On_NFD # Lo       TODHRI LETTER EI
+105E4         ; Expands_On_NFD # Lo       TODHRI LETTER U
 1109A         ; Expands_On_NFD # Lo       KAITHI LETTER DDDHA
 1109C         ; Expands_On_NFD # Lo       KAITHI LETTER RHA
 110AB         ; Expands_On_NFD # Lo       KAITHI LETTER VA
 1112E..1112F  ; Expands_On_NFD # Mn   [2] CHAKMA VOWEL SIGN O..CHAKMA VOWEL SIGN AU
 1134B..1134C  ; Expands_On_NFD # Mc   [2] GRANTHA VOWEL SIGN OO..GRANTHA VOWEL SIGN AU
+11383         ; Expands_On_NFD # Lo       TULU-TIGALARI LETTER II
+11385         ; Expands_On_NFD # Lo       TULU-TIGALARI LETTER UU
+1138E         ; Expands_On_NFD # Lo       TULU-TIGALARI LETTER AI
+11391         ; Expands_On_NFD # Lo       TULU-TIGALARI LETTER AU
+113C5         ; Expands_On_NFD # Mc       TULU-TIGALARI VOWEL SIGN AI
+113C7..113C8  ; Expands_On_NFD # Mc   [2] TULU-TIGALARI VOWEL SIGN OO..TULU-TIGALARI VOWEL SIGN AU
 114BB..114BC  ; Expands_On_NFD # Mc   [2] TIRHUTA VOWEL SIGN AI..TIRHUTA VOWEL SIGN O
 114BE         ; Expands_On_NFD # Mc       TIRHUTA VOWEL SIGN AU
 115BA..115BB  ; Expands_On_NFD # Mc   [2] SIDDHAM VOWEL SIGN O..SIDDHAM VOWEL SIGN AU
 11938         ; Expands_On_NFD # Mc       DIVES AKURU VOWEL SIGN O
+16121..16128  ; Expands_On_NFD # Mn   [8] GURUNG KHEMA VOWEL SIGN U..GURUNG KHEMA VOWEL SIGN AU
+16D68..16D6A  ; Expands_On_NFD # Lo   [3] KIRAT RAI VOWEL SIGN AI..KIRAT RAI VOWEL SIGN AU
 1D15E..1D164  ; Expands_On_NFD # So   [7] MUSICAL SYMBOL HALF NOTE..MUSICAL SYMBOL ONE HUNDRED TWENTY-EIGHTH NOTE
 1D1BB..1D1C0  ; Expands_On_NFD # So   [6] MUSICAL SYMBOL MINIMA..MUSICAL SYMBOL FUSA BLACK
 
-# Total code points: 12216
+# Total code points: 12236
 
 # ================================================
 
@@ -2733,15 +2807,25 @@ FE76..FE7F    ; Expands_On_NFKD # Lo  [1
 FE81..FE8C    ; Expands_On_NFKD # Lo  [12] ARABIC LETTER ALEF WITH MADDA ABOVE ISOLATED FORM..ARABIC LETTER YEH WITH HAMZA ABOVE MEDIAL FORM
 FEF5..FEFC    ; Expands_On_NFKD # Lo   [8] ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE ISOLATED FORM..ARABIC LIGATURE LAM WITH ALEF FINAL FORM
 FFE3          ; Expands_On_NFKD # Sk       FULLWIDTH MACRON
+105C9         ; Expands_On_NFKD # Lo       TODHRI LETTER EI
+105E4         ; Expands_On_NFKD # Lo       TODHRI LETTER U
 1109A         ; Expands_On_NFKD # Lo       KAITHI LETTER DDDHA
 1109C         ; Expands_On_NFKD # Lo       KAITHI LETTER RHA
 110AB         ; Expands_On_NFKD # Lo       KAITHI LETTER VA
 1112E..1112F  ; Expands_On_NFKD # Mn   [2] CHAKMA VOWEL SIGN O..CHAKMA VOWEL SIGN AU
 1134B..1134C  ; Expands_On_NFKD # Mc   [2] GRANTHA VOWEL SIGN OO..GRANTHA VOWEL SIGN AU
+11383         ; Expands_On_NFKD # Lo       TULU-TIGALARI LETTER II
+11385         ; Expands_On_NFKD # Lo       TULU-TIGALARI LETTER UU
+1138E         ; Expands_On_NFKD # Lo       TULU-TIGALARI LETTER AI
+11391         ; Expands_On_NFKD # Lo       TULU-TIGALARI LETTER AU
+113C5         ; Expands_On_NFKD # Mc       TULU-TIGALARI VOWEL SIGN AI
+113C7..113C8  ; Expands_On_NFKD # Mc   [2] TULU-TIGALARI VOWEL SIGN OO..TULU-TIGALARI VOWEL SIGN AU
 114BB..114BC  ; Expands_On_NFKD # Mc   [2] TIRHUTA VOWEL SIGN AI..TIRHUTA VOWEL SIGN O
 114BE         ; Expands_On_NFKD # Mc       TIRHUTA VOWEL SIGN AU
 115BA..115BB  ; Expands_On_NFKD # Mc   [2] SIDDHAM VOWEL SIGN O..SIDDHAM VOWEL SIGN AU
 11938         ; Expands_On_NFKD # Mc       DIVES AKURU VOWEL SIGN O
+16121..16128  ; Expands_On_NFKD # Mn   [8] GURUNG KHEMA VOWEL SIGN U..GURUNG KHEMA VOWEL SIGN AU
+16D68..16D6A  ; Expands_On_NFKD # Lo   [3] KIRAT RAI VOWEL SIGN AI..KIRAT RAI VOWEL SIGN AU
 1D15E..1D164  ; Expands_On_NFKD # So   [7] MUSICAL SYMBOL HALF NOTE..MUSICAL SYMBOL ONE HUNDRED TWENTY-EIGHTH NOTE
 1D1BB..1D1C0  ; Expands_On_NFKD # So   [6] MUSICAL SYMBOL MINIMA..MUSICAL SYMBOL FUSA BLACK
 1F100..1F10A  ; Expands_On_NFKD # No  [11] DIGIT ZERO FULL STOP..DIGIT NINE COMMA
@@ -2754,7 +2838,7 @@ FFE3          ; Expands_On_NFKD # Sk
 1F213         ; Expands_On_NFKD # So       SQUARED KATAKANA DE
 1F240..1F248  ; Expands_On_NFKD # So   [9] TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-672C..TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-6557
 
-# Total code points: 13390
+# Total code points: 13410
 
 # ================================================
 
@@ -3545,6 +3629,7 @@ FFE3          ; Expands_On_NFKC # Sk
 1C86          ; NFKC_CF; 044A           # L&       CYRILLIC SMALL LETTER TALL HARD SIGN
 1C87          ; NFKC_CF; 0463           # L&       CYRILLIC SMALL LETTER TALL YAT
 1C88          ; NFKC_CF; A64B           # L&       CYRILLIC SMALL LETTER UNBLENDED UK
+1C89          ; NFKC_CF; 1C8A           # L&       CYRILLIC CAPITAL LETTER TJE
 1C90          ; NFKC_CF; 10D0           # L&       GEORGIAN MTAVRULI CAPITAL LETTER AN
 1C91          ; NFKC_CF; 10D1           # L&       GEORGIAN MTAVRULI CAPITAL LETTER BAN
 1C92          ; NFKC_CF; 10D2           # L&       GEORGIAN MTAVRULI CAPITAL LETTER GAN
@@ -5361,9 +5446,13 @@ A7C5          ; NFKC_CF; 0282
 A7C6          ; NFKC_CF; 1D8E           # L&       LATIN CAPITAL LETTER Z WITH PALATAL HOOK
 A7C7          ; NFKC_CF; A7C8           # L&       LATIN CAPITAL LETTER D WITH SHORT STROKE OVERLAY
 A7C9          ; NFKC_CF; A7CA           # L&       LATIN CAPITAL LETTER S WITH SHORT STROKE OVERLAY
+A7CB          ; NFKC_CF; 0264           # L&       LATIN CAPITAL LETTER RAMS HORN
+A7CC          ; NFKC_CF; A7CD           # L&       LATIN CAPITAL LETTER S WITH DIAGONAL STROKE
 A7D0          ; NFKC_CF; A7D1           # L&       LATIN CAPITAL LETTER CLOSED INSULAR G
 A7D6          ; NFKC_CF; A7D7           # L&       LATIN CAPITAL LETTER MIDDLE SCOTS S
 A7D8          ; NFKC_CF; A7D9           # L&       LATIN CAPITAL LETTER SIGMOID S
+A7DA          ; NFKC_CF; A7DB           # L&       LATIN CAPITAL LETTER LAMBDA
+A7DC          ; NFKC_CF; 019B           # L&       LATIN CAPITAL LETTER LAMBDA WITH STROKE
 A7F2          ; NFKC_CF; 0063           # Lm       MODIFIER LETTER CAPITAL C
 A7F3          ; NFKC_CF; 0066           # Lm       MODIFIER LETTER CAPITAL F
 A7F4          ; NFKC_CF; 0071           # Lm       MODIFIER LETTER CAPITAL Q
@@ -7009,6 +7098,28 @@ FFF0..FFF8    ; NFKC_CF;
 10CB0         ; NFKC_CF; 10CF0          # L&       OLD HUNGARIAN CAPITAL LETTER EZS
 10CB1         ; NFKC_CF; 10CF1          # L&       OLD HUNGARIAN CAPITAL LETTER ENT-SHAPED SIGN
 10CB2         ; NFKC_CF; 10CF2          # L&       OLD HUNGARIAN CAPITAL LETTER US
+10D50         ; NFKC_CF; 10D70          # L&       GARAY CAPITAL LETTER A
+10D51         ; NFKC_CF; 10D71          # L&       GARAY CAPITAL LETTER CA
+10D52         ; NFKC_CF; 10D72          # L&       GARAY CAPITAL LETTER MA
+10D53         ; NFKC_CF; 10D73          # L&       GARAY CAPITAL LETTER KA
+10D54         ; NFKC_CF; 10D74          # L&       GARAY CAPITAL LETTER BA
+10D55         ; NFKC_CF; 10D75          # L&       GARAY CAPITAL LETTER JA
+10D56         ; NFKC_CF; 10D76          # L&       GARAY CAPITAL LETTER SA
+10D57         ; NFKC_CF; 10D77          # L&       GARAY CAPITAL LETTER WA
+10D58         ; NFKC_CF; 10D78          # L&       GARAY CAPITAL LETTER LA
+10D59         ; NFKC_CF; 10D79          # L&       GARAY CAPITAL LETTER GA
+10D5A         ; NFKC_CF; 10D7A          # L&       GARAY CAPITAL LETTER DA
+10D5B         ; NFKC_CF; 10D7B          # L&       GARAY CAPITAL LETTER XA
+10D5C         ; NFKC_CF; 10D7C          # L&       GARAY CAPITAL LETTER YA
+10D5D         ; NFKC_CF; 10D7D          # L&       GARAY CAPITAL LETTER TA
+10D5E         ; NFKC_CF; 10D7E          # L&       GARAY CAPITAL LETTER RA
+10D5F         ; NFKC_CF; 10D7F          # L&       GARAY CAPITAL LETTER NYA
+10D60         ; NFKC_CF; 10D80          # L&       GARAY CAPITAL LETTER FA
+10D61         ; NFKC_CF; 10D81          # L&       GARAY CAPITAL LETTER NA
+10D62         ; NFKC_CF; 10D82          # L&       GARAY CAPITAL LETTER PA
+10D63         ; NFKC_CF; 10D83          # L&       GARAY CAPITAL LETTER HA
+10D64         ; NFKC_CF; 10D84          # L&       GARAY CAPITAL LETTER OLD KA
+10D65         ; NFKC_CF; 10D85          # L&       GARAY CAPITAL LETTER OLD NA
 118A0         ; NFKC_CF; 118C0          # L&       WARANG CITI CAPITAL LETTER NGAA
 118A1         ; NFKC_CF; 118C1          # L&       WARANG CITI CAPITAL LETTER A
 118A2         ; NFKC_CF; 118C2          # L&       WARANG CITI CAPITAL LETTER WI
@@ -7074,6 +7185,42 @@ FFF0..FFF8    ; NFKC_CF;
 16E5E         ; NFKC_CF; 16E7E          # L&       MEDEFAIDRIN CAPITAL LETTER AI
 16E5F         ; NFKC_CF; 16E7F          # L&       MEDEFAIDRIN CAPITAL LETTER Y
 1BCA0..1BCA3  ; NFKC_CF;                # Cf   [4] SHORTHAND FORMAT LETTER OVERLAP..SHORTHAND FORMAT UP STEP
+1CCD6         ; NFKC_CF; 0061           # So       OUTLINED LATIN CAPITAL LETTER A
+1CCD7         ; NFKC_CF; 0062           # So       OUTLINED LATIN CAPITAL LETTER B
+1CCD8         ; NFKC_CF; 0063           # So       OUTLINED LATIN CAPITAL LETTER C
+1CCD9         ; NFKC_CF; 0064           # So       OUTLINED LATIN CAPITAL LETTER D
+1CCDA         ; NFKC_CF; 0065           # So       OUTLINED LATIN CAPITAL LETTER E
+1CCDB         ; NFKC_CF; 0066           # So       OUTLINED LATIN CAPITAL LETTER F
+1CCDC         ; NFKC_CF; 0067           # So       OUTLINED LATIN CAPITAL LETTER G
+1CCDD         ; NFKC_CF; 0068           # So       OUTLINED LATIN CAPITAL LETTER H
+1CCDE         ; NFKC_CF; 0069           # So       OUTLINED LATIN CAPITAL LETTER I
+1CCDF         ; NFKC_CF; 006A           # So       OUTLINED LATIN CAPITAL LETTER J
+1CCE0         ; NFKC_CF; 006B           # So       OUTLINED LATIN CAPITAL LETTER K
+1CCE1         ; NFKC_CF; 006C           # So       OUTLINED LATIN CAPITAL LETTER L
+1CCE2         ; NFKC_CF; 006D           # So       OUTLINED LATIN CAPITAL LETTER M
+1CCE3         ; NFKC_CF; 006E           # So       OUTLINED LATIN CAPITAL LETTER N
+1CCE4         ; NFKC_CF; 006F           # So       OUTLINED LATIN CAPITAL LETTER O
+1CCE5         ; NFKC_CF; 0070           # So       OUTLINED LATIN CAPITAL LETTER P
+1CCE6         ; NFKC_CF; 0071           # So       OUTLINED LATIN CAPITAL LETTER Q
+1CCE7         ; NFKC_CF; 0072           # So       OUTLINED LATIN CAPITAL LETTER R
+1CCE8         ; NFKC_CF; 0073           # So       OUTLINED LATIN CAPITAL LETTER S
+1CCE9         ; NFKC_CF; 0074           # So       OUTLINED LATIN CAPITAL LETTER T
+1CCEA         ; NFKC_CF; 0075           # So       OUTLINED LATIN CAPITAL LETTER U
+1CCEB         ; NFKC_CF; 0076           # So       OUTLINED LATIN CAPITAL LETTER V
+1CCEC         ; NFKC_CF; 0077           # So       OUTLINED LATIN CAPITAL LETTER W
+1CCED         ; NFKC_CF; 0078           # So       OUTLINED LATIN CAPITAL LETTER X
+1CCEE         ; NFKC_CF; 0079           # So       OUTLINED LATIN CAPITAL LETTER Y
+1CCEF         ; NFKC_CF; 007A           # So       OUTLINED LATIN CAPITAL LETTER Z
+1CCF0         ; NFKC_CF; 0030           # Nd       OUTLINED DIGIT ZERO
+1CCF1         ; NFKC_CF; 0031           # Nd       OUTLINED DIGIT ONE
+1CCF2         ; NFKC_CF; 0032           # Nd       OUTLINED DIGIT TWO
+1CCF3         ; NFKC_CF; 0033           # Nd       OUTLINED DIGIT THREE
+1CCF4         ; NFKC_CF; 0034           # Nd       OUTLINED DIGIT FOUR
+1CCF5         ; NFKC_CF; 0035           # Nd       OUTLINED DIGIT FIVE
+1CCF6         ; NFKC_CF; 0036           # Nd       OUTLINED DIGIT SIX
+1CCF7         ; NFKC_CF; 0037           # Nd       OUTLINED DIGIT SEVEN
+1CCF8         ; NFKC_CF; 0038           # Nd       OUTLINED DIGIT EIGHT
+1CCF9         ; NFKC_CF; 0039           # Nd       OUTLINED DIGIT NINE
 1D15E         ; NFKC_CF; 1D157 1D165    # So       MUSICAL SYMBOL HALF NOTE
 1D15F         ; NFKC_CF; 1D158 1D165    # So       MUSICAL SYMBOL QUARTER NOTE
 1D160         ; NFKC_CF; 1D158 1D165 1D16E #So     MUSICAL SYMBOL EIGHTH NOTE
@@ -9001,7 +9148,7 @@ E0080..E00FF  ; NFKC_CF;
 E0100..E01EF  ; NFKC_CF;                # Mn [240] VARIATION SELECTOR-17..VARIATION SELECTOR-256
 E01F0..E0FFF  ; NFKC_CF;                # Cn [3600] <reserved-E01F0>..<reserved-E0FFF>
 
-# Total code points: 10491
+# Total code points: 10554
 
 # ================================================
 
@@ -9652,6 +9799,7 @@ E01F0..E0FFF  ; NFKC_CF;
 1C86          ; NFKC_SCF; 044A           # L&       CYRILLIC SMALL LETTER TALL HARD SIGN
 1C87          ; NFKC_SCF; 0463           # L&       CYRILLIC SMALL LETTER TALL YAT
 1C88          ; NFKC_SCF; A64B           # L&       CYRILLIC SMALL LETTER UNBLENDED UK
+1C89          ; NFKC_SCF; 1C8A           # L&       CYRILLIC CAPITAL LETTER TJE
 1C90          ; NFKC_SCF; 10D0           # L&       GEORGIAN MTAVRULI CAPITAL LETTER AN
 1C91          ; NFKC_SCF; 10D1           # L&       GEORGIAN MTAVRULI CAPITAL LETTER BAN
 1C92          ; NFKC_SCF; 10D2           # L&       GEORGIAN MTAVRULI CAPITAL LETTER GAN
@@ -11432,9 +11580,13 @@ A7C5          ; NFKC_SCF; 0282
 A7C6          ; NFKC_SCF; 1D8E           # L&       LATIN CAPITAL LETTER Z WITH PALATAL HOOK
 A7C7          ; NFKC_SCF; A7C8           # L&       LATIN CAPITAL LETTER D WITH SHORT STROKE OVERLAY
 A7C9          ; NFKC_SCF; A7CA           # L&       LATIN CAPITAL LETTER S WITH SHORT STROKE OVERLAY
+A7CB          ; NFKC_SCF; 0264           # L&       LATIN CAPITAL LETTER RAMS HORN
+A7CC          ; NFKC_SCF; A7CD           # L&       LATIN CAPITAL LETTER S WITH DIAGONAL STROKE
 A7D0          ; NFKC_SCF; A7D1           # L&       LATIN CAPITAL LETTER CLOSED INSULAR G
 A7D6          ; NFKC_SCF; A7D7           # L&       LATIN CAPITAL LETTER MIDDLE SCOTS S
 A7D8          ; NFKC_SCF; A7D9           # L&       LATIN CAPITAL LETTER SIGMOID S
+A7DA          ; NFKC_SCF; A7DB           # L&       LATIN CAPITAL LETTER LAMBDA
+A7DC          ; NFKC_SCF; 019B           # L&       LATIN CAPITAL LETTER LAMBDA WITH STROKE
 A7F2          ; NFKC_SCF; 0063           # Lm       MODIFIER LETTER CAPITAL C
 A7F3          ; NFKC_SCF; 0066           # Lm       MODIFIER LETTER CAPITAL F
 A7F4          ; NFKC_SCF; 0071           # Lm       MODIFIER LETTER CAPITAL Q
@@ -13080,6 +13232,28 @@ FFF0..FFF8    ; NFKC_SCF;
 10CB0         ; NFKC_SCF; 10CF0          # L&       OLD HUNGARIAN CAPITAL LETTER EZS
 10CB1         ; NFKC_SCF; 10CF1          # L&       OLD HUNGARIAN CAPITAL LETTER ENT-SHAPED SIGN
 10CB2         ; NFKC_SCF; 10CF2          # L&       OLD HUNGARIAN CAPITAL LETTER US
+10D50         ; NFKC_SCF; 10D70          # L&       GARAY CAPITAL LETTER A
+10D51         ; NFKC_SCF; 10D71          # L&       GARAY CAPITAL LETTER CA
+10D52         ; NFKC_SCF; 10D72          # L&       GARAY CAPITAL LETTER MA
+10D53         ; NFKC_SCF; 10D73          # L&       GARAY CAPITAL LETTER KA
+10D54         ; NFKC_SCF; 10D74          # L&       GARAY CAPITAL LETTER BA
+10D55         ; NFKC_SCF; 10D75          # L&       GARAY CAPITAL LETTER JA
+10D56         ; NFKC_SCF; 10D76          # L&       GARAY CAPITAL LETTER SA
+10D57         ; NFKC_SCF; 10D77          # L&       GARAY CAPITAL LETTER WA
+10D58         ; NFKC_SCF; 10D78          # L&       GARAY CAPITAL LETTER LA
+10D59         ; NFKC_SCF; 10D79          # L&       GARAY CAPITAL LETTER GA
+10D5A         ; NFKC_SCF; 10D7A          # L&       GARAY CAPITAL LETTER DA
+10D5B         ; NFKC_SCF; 10D7B          # L&       GARAY CAPITAL LETTER XA
+10D5C         ; NFKC_SCF; 10D7C          # L&       GARAY CAPITAL LETTER YA
+10D5D         ; NFKC_SCF; 10D7D          # L&       GARAY CAPITAL LETTER TA
+10D5E         ; NFKC_SCF; 10D7E          # L&       GARAY CAPITAL LETTER RA
+10D5F         ; NFKC_SCF; 10D7F          # L&       GARAY CAPITAL LETTER NYA
+10D60         ; NFKC_SCF; 10D80          # L&       GARAY CAPITAL LETTER FA
+10D61         ; NFKC_SCF; 10D81          # L&       GARAY CAPITAL LETTER NA
+10D62         ; NFKC_SCF; 10D82          # L&       GARAY CAPITAL LETTER PA
+10D63         ; NFKC_SCF; 10D83          # L&       GARAY CAPITAL LETTER HA
+10D64         ; NFKC_SCF; 10D84          # L&       GARAY CAPITAL LETTER OLD KA
+10D65         ; NFKC_SCF; 10D85          # L&       GARAY CAPITAL LETTER OLD NA
 118A0         ; NFKC_SCF; 118C0          # L&       WARANG CITI CAPITAL LETTER NGAA
 118A1         ; NFKC_SCF; 118C1          # L&       WARANG CITI CAPITAL LETTER A
 118A2         ; NFKC_SCF; 118C2          # L&       WARANG CITI CAPITAL LETTER WI
@@ -13145,6 +13319,42 @@ FFF0..FFF8    ; NFKC_SCF;
 16E5E         ; NFKC_SCF; 16E7E          # L&       MEDEFAIDRIN CAPITAL LETTER AI
 16E5F         ; NFKC_SCF; 16E7F          # L&       MEDEFAIDRIN CAPITAL LETTER Y
 1BCA0..1BCA3  ; NFKC_SCF;                # Cf   [4] SHORTHAND FORMAT LETTER OVERLAP..SHORTHAND FORMAT UP STEP
+1CCD6         ; NFKC_SCF; 0061           # So       OUTLINED LATIN CAPITAL LETTER A
+1CCD7         ; NFKC_SCF; 0062           # So       OUTLINED LATIN CAPITAL LETTER B
+1CCD8         ; NFKC_SCF; 0063           # So       OUTLINED LATIN CAPITAL LETTER C
+1CCD9         ; NFKC_SCF; 0064           # So       OUTLINED LATIN CAPITAL LETTER D
+1CCDA         ; NFKC_SCF; 0065           # So       OUTLINED LATIN CAPITAL LETTER E
+1CCDB         ; NFKC_SCF; 0066           # So       OUTLINED LATIN CAPITAL LETTER F
+1CCDC         ; NFKC_SCF; 0067           # So       OUTLINED LATIN CAPITAL LETTER G
+1CCDD         ; NFKC_SCF; 0068           # So       OUTLINED LATIN CAPITAL LETTER H
+1CCDE         ; NFKC_SCF; 0069           # So       OUTLINED LATIN CAPITAL LETTER I
+1CCDF         ; NFKC_SCF; 006A           # So       OUTLINED LATIN CAPITAL LETTER J
+1CCE0         ; NFKC_SCF; 006B           # So       OUTLINED LATIN CAPITAL LETTER K
+1CCE1         ; NFKC_SCF; 006C           # So       OUTLINED LATIN CAPITAL LETTER L
+1CCE2         ; NFKC_SCF; 006D           # So       OUTLINED LATIN CAPITAL LETTER M
+1CCE3         ; NFKC_SCF; 006E           # So       OUTLINED LATIN CAPITAL LETTER N
+1CCE4         ; NFKC_SCF; 006F           # So       OUTLINED LATIN CAPITAL LETTER O
+1CCE5         ; NFKC_SCF; 0070           # So       OUTLINED LATIN CAPITAL LETTER P
+1CCE6         ; NFKC_SCF; 0071           # So       OUTLINED LATIN CAPITAL LETTER Q
+1CCE7         ; NFKC_SCF; 0072           # So       OUTLINED LATIN CAPITAL LETTER R
+1CCE8         ; NFKC_SCF; 0073           # So       OUTLINED LATIN CAPITAL LETTER S
+1CCE9         ; NFKC_SCF; 0074           # So       OUTLINED LATIN CAPITAL LETTER T
+1CCEA         ; NFKC_SCF; 0075           # So       OUTLINED LATIN CAPITAL LETTER U
+1CCEB         ; NFKC_SCF; 0076           # So       OUTLINED LATIN CAPITAL LETTER V
+1CCEC         ; NFKC_SCF; 0077           # So       OUTLINED LATIN CAPITAL LETTER W
+1CCED         ; NFKC_SCF; 0078           # So       OUTLINED LATIN CAPITAL LETTER X
+1CCEE         ; NFKC_SCF; 0079           # So       OUTLINED LATIN CAPITAL LETTER Y
+1CCEF         ; NFKC_SCF; 007A           # So       OUTLINED LATIN CAPITAL LETTER Z
+1CCF0         ; NFKC_SCF; 0030           # Nd       OUTLINED DIGIT ZERO
+1CCF1         ; NFKC_SCF; 0031           # Nd       OUTLINED DIGIT ONE
+1CCF2         ; NFKC_SCF; 0032           # Nd       OUTLINED DIGIT TWO
+1CCF3         ; NFKC_SCF; 0033           # Nd       OUTLINED DIGIT THREE
+1CCF4         ; NFKC_SCF; 0034           # Nd       OUTLINED DIGIT FOUR
+1CCF5         ; NFKC_SCF; 0035           # Nd       OUTLINED DIGIT FIVE
+1CCF6         ; NFKC_SCF; 0036           # Nd       OUTLINED DIGIT SIX
+1CCF7         ; NFKC_SCF; 0037           # Nd       OUTLINED DIGIT SEVEN
+1CCF8         ; NFKC_SCF; 0038           # Nd       OUTLINED DIGIT EIGHT
+1CCF9         ; NFKC_SCF; 0039           # Nd       OUTLINED DIGIT NINE
 1D15E         ; NFKC_SCF; 1D157 1D165    # So       MUSICAL SYMBOL HALF NOTE
 1D15F         ; NFKC_SCF; 1D158 1D165    # So       MUSICAL SYMBOL QUARTER NOTE
 1D160         ; NFKC_SCF; 1D158 1D165 1D16E #So     MUSICAL SYMBOL EIGHTH NOTE
@@ -15072,7 +15282,7 @@ E0080..E00FF  ; NFKC_SCF;
 E0100..E01EF  ; NFKC_SCF;                # Mn [240] VARIATION SELECTOR-17..VARIATION SELECTOR-256
 E01F0..E0FFF  ; NFKC_SCF;                # Cn [3600] <reserved-E01F0>..<reserved-E0FFF>
 
-# Total code points: 10453
+# Total code points: 10516
 
 # ================================================
 
@@ -15411,7 +15621,7 @@ E01F0..E0FFF  ; NFKC_SCF;
 180B..180D    ; Changes_When_NFKC_Casefolded # Mn   [3] MONGOLIAN FREE VARIATION SELECTOR ONE..MONGOLIAN FREE VARIATION SELECTOR THREE
 180E          ; Changes_When_NFKC_Casefolded # Cf       MONGOLIAN VOWEL SEPARATOR
 180F          ; Changes_When_NFKC_Casefolded # Mn       MONGOLIAN FREE VARIATION SELECTOR FOUR
-1C80..1C88    ; Changes_When_NFKC_Casefolded # L&   [9] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER UNBLENDED UK
+1C80..1C89    ; Changes_When_NFKC_Casefolded # L&  [10] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC CAPITAL LETTER TJE
 1C90..1CBA    ; Changes_When_NFKC_Casefolded # L&  [43] GEORGIAN MTAVRULI CAPITAL LETTER AN..GEORGIAN MTAVRULI CAPITAL LETTER AIN
 1CBD..1CBF    ; Changes_When_NFKC_Casefolded # L&   [3] GEORGIAN MTAVRULI CAPITAL LETTER AEN..GEORGIAN MTAVRULI CAPITAL LETTER LABIAL SIGN
 1D2C..1D2E    ; Changes_When_NFKC_Casefolded # Lm   [3] MODIFIER LETTER CAPITAL A..MODIFIER LETTER CAPITAL B
@@ -15841,9 +16051,12 @@ A7C0          ; Changes_When_NFKC_Casefo
 A7C2          ; Changes_When_NFKC_Casefolded # L&       LATIN CAPITAL LETTER ANGLICANA W
 A7C4..A7C7    ; Changes_When_NFKC_Casefolded # L&   [4] LATIN CAPITAL LETTER C WITH PALATAL HOOK..LATIN CAPITAL LETTER D WITH SHORT STROKE OVERLAY
 A7C9          ; Changes_When_NFKC_Casefolded # L&       LATIN CAPITAL LETTER S WITH SHORT STROKE OVERLAY
+A7CB..A7CC    ; Changes_When_NFKC_Casefolded # L&   [2] LATIN CAPITAL LETTER RAMS HORN..LATIN CAPITAL LETTER S WITH DIAGONAL STROKE
 A7D0          ; Changes_When_NFKC_Casefolded # L&       LATIN CAPITAL LETTER CLOSED INSULAR G
 A7D6          ; Changes_When_NFKC_Casefolded # L&       LATIN CAPITAL LETTER MIDDLE SCOTS S
 A7D8          ; Changes_When_NFKC_Casefolded # L&       LATIN CAPITAL LETTER SIGMOID S
+A7DA          ; Changes_When_NFKC_Casefolded # L&       LATIN CAPITAL LETTER LAMBDA
+A7DC          ; Changes_When_NFKC_Casefolded # L&       LATIN CAPITAL LETTER LAMBDA WITH STROKE
 A7F2..A7F4    ; Changes_When_NFKC_Casefolded # Lm   [3] MODIFIER LETTER CAPITAL C..MODIFIER LETTER CAPITAL Q
 A7F5          ; Changes_When_NFKC_Casefolded # L&       LATIN CAPITAL LETTER REVERSED HALF H
 A7F8..A7F9    ; Changes_When_NFKC_Casefolded # Lm   [2] MODIFIER LETTER CAPITAL H WITH STROKE..MODIFIER LETTER SMALL LIGATURE OE
@@ -15983,9 +16196,12 @@ FFF0..FFF8    ; Changes_When_NFKC_Casefo
 10787..107B0  ; Changes_When_NFKC_Casefolded # Lm  [42] MODIFIER LETTER SMALL DZ DIGRAPH..MODIFIER LETTER SMALL V WITH RIGHT HOOK
 107B2..107BA  ; Changes_When_NFKC_Casefolded # Lm   [9] MODIFIER LETTER SMALL CAPITAL Y..MODIFIER LETTER SMALL S WITH CURL
 10C80..10CB2  ; Changes_When_NFKC_Casefolded # L&  [51] OLD HUNGARIAN CAPITAL LETTER A..OLD HUNGARIAN CAPITAL LETTER US
+10D50..10D65  ; Changes_When_NFKC_Casefolded # L&  [22] GARAY CAPITAL LETTER A..GARAY CAPITAL LETTER OLD NA
 118A0..118BF  ; Changes_When_NFKC_Casefolded # L&  [32] WARANG CITI CAPITAL LETTER NGAA..WARANG CITI CAPITAL LETTER VIYO
 16E40..16E5F  ; Changes_When_NFKC_Casefolded # L&  [32] MEDEFAIDRIN CAPITAL LETTER M..MEDEFAIDRIN CAPITAL LETTER Y
 1BCA0..1BCA3  ; Changes_When_NFKC_Casefolded # Cf   [4] SHORTHAND FORMAT LETTER OVERLAP..SHORTHAND FORMAT UP STEP
+1CCD6..1CCEF  ; Changes_When_NFKC_Casefolded # So  [26] OUTLINED LATIN CAPITAL LETTER A..OUTLINED LATIN CAPITAL LETTER Z
+1CCF0..1CCF9  ; Changes_When_NFKC_Casefolded # Nd  [10] OUTLINED DIGIT ZERO..OUTLINED DIGIT NINE
 1D15E..1D164  ; Changes_When_NFKC_Casefolded # So   [7] MUSICAL SYMBOL HALF NOTE..MUSICAL SYMBOL ONE HUNDRED TWENTY-EIGHTH NOTE
 1D173..1D17A  ; Changes_When_NFKC_Casefolded # Cf   [8] MUSICAL SYMBOL BEGIN BEAM..MUSICAL SYMBOL END PHRASE
 1D1BB..1D1C0  ; Changes_When_NFKC_Casefolded # So   [6] MUSICAL SYMBOL MINIMA..MUSICAL SYMBOL FUSA BLACK
@@ -16084,6 +16300,6 @@ E0080..E00FF  ; Changes_When_NFKC_Casefo
 E0100..E01EF  ; Changes_When_NFKC_Casefolded # Mn [240] VARIATION SELECTOR-17..VARIATION SELECTOR-256
 E01F0..E0FFF  ; Changes_When_NFKC_Casefolded # Cn [3600] <reserved-E01F0>..<reserved-E0FFF>
 
-# Total code points: 10491
+# Total code points: 10554
 
 # EOF
--- contrib/unicode/NameAliases.txt.jj	2023-11-14 18:32:34.896123641 +0100
+++ contrib/unicode/NameAliases.txt	2024-10-07 10:59:09.950585744 +0200
@@ -1,7 +1,8 @@
-# NameAliases-15.1.0.txt
-# Date: 2023-01-05
-# © 2023 Unicode®, Inc.
-# For terms of use, see https://www.unicode.org/terms_of_use.html
+# NameAliases-16.0.0.txt
+# Date: 2024-04-24
+# © 2024 Unicode®, Inc.
+# Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries.
+# For terms of use and license, see https://www.unicode.org/terms_of_use.html
 #
 # Unicode Character Database
 # For documentation, see https://www.unicode.org/reports/tr44/
@@ -320,12 +321,16 @@ FEFF;BOM;abbreviation
 FEFF;ZWNBSP;abbreviation
 122D4;CUNEIFORM SIGN NU11 TENU;correction
 122D5;CUNEIFORM SIGN NU11 OVER NU11 BUR OVER BUR;correction
+12327;CUNEIFORM SIGN KALAM;correction
+1680B;BAMUM LETTER PHASE-A MAEMGBIEE;correction
 16E56;MEDEFAIDRIN CAPITAL LETTER H;correction
 16E57;MEDEFAIDRIN CAPITAL LETTER NG;correction
 16E76;MEDEFAIDRIN SMALL LETTER H;correction
 16E77;MEDEFAIDRIN SMALL LETTER NG;correction
 1B001;HENTAIGANA LETTER E-1;correction
 1D0C5;BYZANTINE MUSICAL SYMBOL FTHORA SKLIRON CHROMA VASIS;correction
+1E899;MENDE KIKAKUI SYLLABLE M172 MBO;correction
+1E89A;MENDE KIKAKUI SYLLABLE M174 MBOO;correction
 E0100;VS17;abbreviation
 E0101;VS18;abbreviation
 E0102;VS19;abbreviation
--- contrib/unicode/EastAsianWidth.txt.jj	2023-11-14 18:32:34.837124469 +0100
+++ contrib/unicode/EastAsianWidth.txt	2024-10-07 10:59:01.381706487 +0200
@@ -1,8 +1,8 @@
-# EastAsianWidth-15.1.0.txt
-# Date: 2023-07-28, 23:34:08 GMT
-# © 2023 Unicode®, Inc.
+# EastAsianWidth-16.0.0.txt
+# Date: 2024-04-30, 21:48:20 GMT
+# © 2024 Unicode®, Inc.
 # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries.
-# For terms of use, see https://www.unicode.org/terms_of_use.html
+# For terms of use and license, see https://www.unicode.org/terms_of_use.html
 #
 # Unicode Character Database
 #   For documentation, see https://www.unicode.org/reports/tr44/
@@ -334,7 +334,7 @@
 0888           ; N  # Sk         ARABIC RAISED ROUND DOT
 0889..088E     ; N  # Lo     [6] ARABIC LETTER NOON WITH INVERTED SMALL V..ARABIC VERTICAL TAIL
 0890..0891     ; N  # Cf     [2] ARABIC POUND MARK ABOVE..ARABIC PIASTRE MARK ABOVE
-0898..089F     ; N  # Mn     [8] ARABIC SMALL HIGH WORD AL-JUZ..ARABIC HALF MADDA OVER MADDA
+0897..089F     ; N  # Mn     [9] ARABIC PEPET..ARABIC HALF MADDA OVER MADDA
 08A0..08C8     ; N  # Lo    [41] ARABIC LETTER BEH WITH SMALL V BELOW..ARABIC LETTER GRAF
 08C9           ; N  # Lm         ARABIC SMALL FARSI YEH
 08CA..08E1     ; N  # Mn    [24] ARABIC SMALL HIGH FARSI YEH..ARABIC SMALL HIGH SIGN SAFHA
@@ -819,12 +819,13 @@
 1B42           ; N  # Mn         BALINESE VOWEL SIGN PEPET
 1B43..1B44     ; N  # Mc     [2] BALINESE VOWEL SIGN PEPET TEDUNG..BALINESE ADEG ADEG
 1B45..1B4C     ; N  # Lo     [8] BALINESE LETTER KAF SASAK..BALINESE LETTER ARCHAIC JNYA
+1B4E..1B4F     ; N  # Po     [2] BALINESE INVERTED CARIK SIKI..BALINESE INVERTED CARIK PAREREN
 1B50..1B59     ; N  # Nd    [10] BALINESE DIGIT ZERO..BALINESE DIGIT NINE
 1B5A..1B60     ; N  # Po     [7] BALINESE PANTI..BALINESE PAMENENG
 1B61..1B6A     ; N  # So    [10] BALINESE MUSICAL SYMBOL DONG..BALINESE MUSICAL SYMBOL DANG GEDE
 1B6B..1B73     ; N  # Mn     [9] BALINESE MUSICAL SYMBOL COMBINING TEGEH..BALINESE MUSICAL SYMBOL COMBINING GONG
 1B74..1B7C     ; N  # So     [9] BALINESE MUSICAL SYMBOL RIGHT-HAND OPEN DUG..BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PING
-1B7D..1B7E     ; N  # Po     [2] BALINESE PANTI LANTANG..BALINESE PAMADA LANTANG
+1B7D..1B7F     ; N  # Po     [3] BALINESE PANTI LANTANG..BALINESE PANTI BAWAK
 1B80..1B81     ; N  # Mn     [2] SUNDANESE SIGN PANYECEK..SUNDANESE SIGN PANGLAYAR
 1B82           ; N  # Mc         SUNDANESE SIGN PANGWISAD
 1B83..1BA0     ; N  # Lo    [30] SUNDANESE LETTER A..SUNDANESE LETTER HA
@@ -859,7 +860,7 @@
 1C5A..1C77     ; N  # Lo    [30] OL CHIKI LETTER LA..OL CHIKI LETTER OH
 1C78..1C7D     ; N  # Lm     [6] OL CHIKI MU TTUDDAG..OL CHIKI AHAD
 1C7E..1C7F     ; N  # Po     [2] OL CHIKI PUNCTUATION MUCAAD..OL CHIKI PUNCTUATION DOUBLE MUCAAD
-1C80..1C88     ; N  # Ll     [9] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER UNBLENDED UK
+1C80..1C8A     ; N  # L&    [11] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER TJE
 1C90..1CBA     ; N  # Lu    [43] GEORGIAN MTAVRULI CAPITAL LETTER AN..GEORGIAN MTAVRULI CAPITAL LETTER AIN
 1CBD..1CBF     ; N  # Lu     [3] GEORGIAN MTAVRULI CAPITAL LETTER AEN..GEORGIAN MTAVRULI CAPITAL LETTER LABIAL SIGN
 1CC0..1CC7     ; N  # Po     [8] SUNDANESE PUNCTUATION BINDU SURYA..SUNDANESE PUNCTUATION BINDU BA SATANGA
@@ -1142,7 +1143,7 @@
 23F1..23F2     ; N  # So     [2] STOPWATCH..TIMER CLOCK
 23F3           ; W  # So         HOURGLASS WITH FLOWING SAND
 23F4..23FF     ; N  # So    [12] BLACK MEDIUM LEFT-POINTING TRIANGLE..OBSERVER EYE SYMBOL
-2400..2426     ; N  # So    [39] SYMBOL FOR NULL..SYMBOL FOR SUBSTITUTE FORM TWO
+2400..2429     ; N  # So    [42] SYMBOL FOR NULL..SYMBOL FOR DELETE MEDIUM SHADE FORM
 2440..244A     ; N  # So    [11] OCR HOOK..OCR DOUBLE BACKSLASH
 2460..249B     ; A  # No    [60] CIRCLED DIGIT ONE..NUMBER TWENTY FULL STOP
 249C..24E9     ; A  # So    [78] PARENTHESIZED LATIN SMALL LETTER A..CIRCLED LATIN SMALL LETTER Z
@@ -1195,7 +1196,9 @@
 261C           ; A  # So         WHITE LEFT POINTING INDEX
 261D           ; N  # So         WHITE UP POINTING INDEX
 261E           ; A  # So         WHITE RIGHT POINTING INDEX
-261F..263F     ; N  # So    [33] WHITE DOWN POINTING INDEX..MERCURY
+261F..262F     ; N  # So    [17] WHITE DOWN POINTING INDEX..YIN YANG
+2630..2637     ; W  # So     [8] TRIGRAM FOR HEAVEN..TRIGRAM FOR EARTH
+2638..263F     ; N  # So     [8] WHEEL OF DHARMA..MERCURY
 2640           ; A  # So         FEMALE SIGN
 2641           ; N  # So         EARTH
 2642           ; A  # So         MALE SIGN
@@ -1213,7 +1216,9 @@
 266F           ; A  # Sm         MUSIC SHARP SIGN
 2670..267E     ; N  # So    [15] WEST SYRIAC CROSS..PERMANENT PAPER SIGN
 267F           ; W  # So         WHEELCHAIR SYMBOL
-2680..2692     ; N  # So    [19] DIE FACE-1..HAMMER AND PICK
+2680..2689     ; N  # So    [10] DIE FACE-1..BLACK CIRCLE WITH TWO WHITE DOTS
+268A..268F     ; W  # So     [6] MONOGRAM FOR YANG..DIGRAM FOR GREATER YIN
+2690..2692     ; N  # So     [3] WHITE FLAG..HAMMER AND PICK
 2693           ; W  # So         ANCHOR
 2694..269D     ; N  # So    [10] CROSSED SWORDS..OUTLINED WHITE STAR
 269E..269F     ; A  # So     [2] THREE LINES CONVERGING RIGHT..THREE LINES CONVERGING LEFT
@@ -1487,7 +1492,7 @@
 3192..3195     ; W  # No     [4] IDEOGRAPHIC ANNOTATION ONE MARK..IDEOGRAPHIC ANNOTATION FOUR MARK
 3196..319F     ; W  # So    [10] IDEOGRAPHIC ANNOTATION TOP MARK..IDEOGRAPHIC ANNOTATION MAN MARK
 31A0..31BF     ; W  # Lo    [32] BOPOMOFO LETTER BU..BOPOMOFO LETTER AH
-31C0..31E3     ; W  # So    [36] CJK STROKE T..CJK STROKE Q
+31C0..31E5     ; W  # So    [38] CJK STROKE T..CJK STROKE SZP
 31EF           ; W  # So         IDEOGRAPHIC DESCRIPTION CHARACTER SUBTRACTION
 31F0..31FF     ; W  # Lo    [16] KATAKANA LETTER SMALL KU..KATAKANA LETTER SMALL RO
 3200..321E     ; W  # So    [31] PARENTHESIZED HANGUL KIYEOK..PARENTHESIZED KOREAN CHARACTER O HU
@@ -1503,7 +1508,7 @@
 32C0..32FF     ; W  # So    [64] IDEOGRAPHIC TELEGRAPH SYMBOL FOR JANUARY..SQUARE ERA NAME REIWA
 3300..33FF     ; W  # So   [256] SQUARE APAATO..SQUARE GAL
 3400..4DBF     ; W  # Lo  [6592] CJK UNIFIED IDEOGRAPH-3400..CJK UNIFIED IDEOGRAPH-4DBF
-4DC0..4DFF     ; N  # So    [64] HEXAGRAM FOR THE CREATIVE HEAVEN..HEXAGRAM FOR BEFORE COMPLETION
+4DC0..4DFF     ; W  # So    [64] HEXAGRAM FOR THE CREATIVE HEAVEN..HEXAGRAM FOR BEFORE COMPLETION
 4E00..9FFF     ; W  # Lo [20992] CJK UNIFIED IDEOGRAPH-4E00..CJK UNIFIED IDEOGRAPH-9FFF
 A000..A014     ; W  # Lo    [21] YI SYLLABLE IT..YI SYLLABLE E
 A015           ; W  # Lm         YI SYLLABLE WU
@@ -1543,10 +1548,10 @@ A788           ; N  # Lm         MODIFIE
 A789..A78A     ; N  # Sk     [2] MODIFIER LETTER COLON..MODIFIER LETTER SHORT EQUALS SIGN
 A78B..A78E     ; N  # L&     [4] LATIN CAPITAL LETTER SALTILLO..LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT
 A78F           ; N  # Lo         LATIN LETTER SINOLOGICAL DOT
-A790..A7CA     ; N  # L&    [59] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH SHORT STROKE OVERLAY
+A790..A7CD     ; N  # L&    [62] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH DIAGONAL STROKE
 A7D0..A7D1     ; N  # L&     [2] LATIN CAPITAL LETTER CLOSED INSULAR G..LATIN SMALL LETTER CLOSED INSULAR G
 A7D3           ; N  # Ll         LATIN SMALL LETTER DOUBLE THORN
-A7D5..A7D9     ; N  # L&     [5] LATIN SMALL LETTER DOUBLE WYNN..LATIN SMALL LETTER SIGMOID S
+A7D5..A7DC     ; N  # L&     [8] LATIN SMALL LETTER DOUBLE WYNN..LATIN CAPITAL LETTER LAMBDA WITH STROKE
 A7F2..A7F4     ; N  # Lm     [3] MODIFIER LETTER CAPITAL C..MODIFIER LETTER CAPITAL Q
 A7F5..A7F6     ; N  # L&     [2] LATIN CAPITAL LETTER REVERSED HALF H..LATIN SMALL LETTER REVERSED HALF H
 A7F7           ; N  # Lo         LATIN EPIGRAPHIC LETTER SIDEWAYS I
@@ -1870,6 +1875,7 @@ FFFD           ; A  # So         REPLACE
 105A3..105B1   ; N  # Ll    [15] VITHKUQI SMALL LETTER HA..VITHKUQI SMALL LETTER RE
 105B3..105B9   ; N  # Ll     [7] VITHKUQI SMALL LETTER SE..VITHKUQI SMALL LETTER XE
 105BB..105BC   ; N  # Ll     [2] VITHKUQI SMALL LETTER Y..VITHKUQI SMALL LETTER ZE
+105C0..105F3   ; N  # Lo    [52] TODHRI LETTER A..TODHRI LETTER OO
 10600..10736   ; N  # Lo   [311] LINEAR A SIGN AB001..LINEAR A SIGN A664
 10740..10755   ; N  # Lo    [22] LINEAR A SIGN A701 A..LINEAR A SIGN A732 JE
 10760..10767   ; N  # Lo     [8] LINEAR A SIGN A800..LINEAR A SIGN A807
@@ -1942,12 +1948,23 @@ FFFD           ; A  # So         REPLACE
 10D00..10D23   ; N  # Lo    [36] HANIFI ROHINGYA LETTER A..HANIFI ROHINGYA MARK NA KHONNA
 10D24..10D27   ; N  # Mn     [4] HANIFI ROHINGYA SIGN HARBAHAY..HANIFI ROHINGYA SIGN TASSI
 10D30..10D39   ; N  # Nd    [10] HANIFI ROHINGYA DIGIT ZERO..HANIFI ROHINGYA DIGIT NINE
+10D40..10D49   ; N  # Nd    [10] GARAY DIGIT ZERO..GARAY DIGIT NINE
+10D4A..10D4D   ; N  # Lo     [4] GARAY VOWEL SIGN A..GARAY VOWEL SIGN EE
+10D4E          ; N  # Lm         GARAY VOWEL LENGTH MARK
+10D4F          ; N  # Lo         GARAY SUKUN
+10D50..10D65   ; N  # Lu    [22] GARAY CAPITAL LETTER A..GARAY CAPITAL LETTER OLD NA
+10D69..10D6D   ; N  # Mn     [5] GARAY VOWEL SIGN E..GARAY CONSONANT NASALIZATION MARK
+10D6E          ; N  # Pd         GARAY HYPHEN
+10D6F          ; N  # Lm         GARAY REDUPLICATION MARK
+10D70..10D85   ; N  # Ll    [22] GARAY SMALL LETTER A..GARAY SMALL LETTER OLD NA
+10D8E..10D8F   ; N  # Sm     [2] GARAY PLUS SIGN..GARAY MINUS SIGN
 10E60..10E7E   ; N  # No    [31] RUMI DIGIT ONE..RUMI FRACTION TWO THIRDS
 10E80..10EA9   ; N  # Lo    [42] YEZIDI LETTER ELIF..YEZIDI LETTER ET
 10EAB..10EAC   ; N  # Mn     [2] YEZIDI COMBINING HAMZA MARK..YEZIDI COMBINING MADDA MARK
 10EAD          ; N  # Pd         YEZIDI HYPHENATION MARK
 10EB0..10EB1   ; N  # Lo     [2] YEZIDI LETTER LAM WITH DOT ABOVE..YEZIDI LETTER YOT WITH CIRCUMFLEX ABOVE
-10EFD..10EFF   ; N  # Mn     [3] ARABIC SMALL LOW WORD SAKTA..ARABIC SMALL LOW WORD MADDA
+10EC2..10EC4   ; N  # Lo     [3] ARABIC LETTER DAL WITH TWO DOTS VERTICALLY BELOW..ARABIC LETTER KAF WITH TWO DOTS VERTICALLY BELOW
+10EFC..10EFF   ; N  # Mn     [4] ARABIC COMBINING ALEF OVERLAY..ARABIC SMALL LOW WORD MADDA
 10F00..10F1C   ; N  # Lo    [29] OLD SOGDIAN LETTER ALEPH..OLD SOGDIAN LETTER FINAL TAW WITH VERTICAL TAIL
 10F1D..10F26   ; N  # No    [10] OLD SOGDIAN NUMBER ONE..OLD SOGDIAN FRACTION ONE HALF
 10F27          ; N  # Lo         OLD SOGDIAN LIGATURE AYIN-DALETH
@@ -2064,6 +2081,26 @@ FFFD           ; A  # So         REPLACE
 11362..11363   ; N  # Mc     [2] GRANTHA VOWEL SIGN VOCALIC L..GRANTHA VOWEL SIGN VOCALIC LL
 11366..1136C   ; N  # Mn     [7] COMBINING GRANTHA DIGIT ZERO..COMBINING GRANTHA DIGIT SIX
 11370..11374   ; N  # Mn     [5] COMBINING GRANTHA LETTER A..COMBINING GRANTHA LETTER PA
+11380..11389   ; N  # Lo    [10] TULU-TIGALARI LETTER A..TULU-TIGALARI LETTER VOCALIC LL
+1138B          ; N  # Lo         TULU-TIGALARI LETTER EE
+1138E          ; N  # Lo         TULU-TIGALARI LETTER AI
+11390..113B5   ; N  # Lo    [38] TULU-TIGALARI LETTER OO..TULU-TIGALARI LETTER LLLA
+113B7          ; N  # Lo         TULU-TIGALARI SIGN AVAGRAHA
+113B8..113BA   ; N  # Mc     [3] TULU-TIGALARI VOWEL SIGN AA..TULU-TIGALARI VOWEL SIGN II
+113BB..113C0   ; N  # Mn     [6] TULU-TIGALARI VOWEL SIGN U..TULU-TIGALARI VOWEL SIGN VOCALIC LL
+113C2          ; N  # Mc         TULU-TIGALARI VOWEL SIGN EE
+113C5          ; N  # Mc         TULU-TIGALARI VOWEL SIGN AI
+113C7..113CA   ; N  # Mc     [4] TULU-TIGALARI VOWEL SIGN OO..TULU-TIGALARI SIGN CANDRA ANUNASIKA
+113CC..113CD   ; N  # Mc     [2] TULU-TIGALARI SIGN ANUSVARA..TULU-TIGALARI SIGN VISARGA
+113CE          ; N  # Mn         TULU-TIGALARI SIGN VIRAMA
+113CF          ; N  # Mc         TULU-TIGALARI SIGN LOOPED VIRAMA
+113D0          ; N  # Mn         TULU-TIGALARI CONJOINER
+113D1          ; N  # Lo         TULU-TIGALARI REPHA
+113D2          ; N  # Mn         TULU-TIGALARI GEMINATION MARK
+113D3          ; N  # Lo         TULU-TIGALARI SIGN PLUTA
+113D4..113D5   ; N  # Po     [2] TULU-TIGALARI DANDA..TULU-TIGALARI DOUBLE DANDA
+113D7..113D8   ; N  # Po     [2] TULU-TIGALARI SIGN OM PUSHPIKA..TULU-TIGALARI SIGN SHRII PUSHPIKA
+113E1..113E2   ; N  # Mn     [2] TULU-TIGALARI VEDIC TONE SVARITA..TULU-TIGALARI VEDIC TONE ANUDATTA
 11400..11434   ; N  # Lo    [53] NEWA LETTER A..NEWA LETTER HA
 11435..11437   ; N  # Mc     [3] NEWA VOWEL SIGN AA..NEWA VOWEL SIGN II
 11438..1143F   ; N  # Mn     [8] NEWA VOWEL SIGN U..NEWA VOWEL SIGN AI
@@ -2123,8 +2160,11 @@ FFFD           ; A  # So         REPLACE
 116B8          ; N  # Lo         TAKRI LETTER ARCHAIC KHA
 116B9          ; N  # Po         TAKRI ABBREVIATION SIGN
 116C0..116C9   ; N  # Nd    [10] TAKRI DIGIT ZERO..TAKRI DIGIT NINE
+116D0..116E3   ; N  # Nd    [20] MYANMAR PAO DIGIT ZERO..MYANMAR EASTERN PWO KAREN DIGIT NINE
 11700..1171A   ; N  # Lo    [27] AHOM LETTER KA..AHOM LETTER ALTERNATE BA
-1171D..1171F   ; N  # Mn     [3] AHOM CONSONANT SIGN MEDIAL LA..AHOM CONSONANT SIGN MEDIAL LIGATING RA
+1171D          ; N  # Mn         AHOM CONSONANT SIGN MEDIAL LA
+1171E          ; N  # Mc         AHOM CONSONANT SIGN MEDIAL RA
+1171F          ; N  # Mn         AHOM CONSONANT SIGN MEDIAL LIGATING RA
 11720..11721   ; N  # Mc     [2] AHOM VOWEL SIGN A..AHOM VOWEL SIGN AA
 11722..11725   ; N  # Mn     [4] AHOM VOWEL SIGN I..AHOM VOWEL SIGN UU
 11726          ; N  # Mc         AHOM VOWEL SIGN E
@@ -2195,6 +2235,9 @@ FFFD           ; A  # So         REPLACE
 11AB0..11ABF   ; N  # Lo    [16] CANADIAN SYLLABICS NATTILIK HI..CANADIAN SYLLABICS SPA
 11AC0..11AF8   ; N  # Lo    [57] PAU CIN HAU LETTER PA..PAU CIN HAU GLOTTAL STOP FINAL
 11B00..11B09   ; N  # Po    [10] DEVANAGARI HEAD MARK..DEVANAGARI SIGN MINDU
+11BC0..11BE0   ; N  # Lo    [33] SUNUWAR LETTER DEVI..SUNUWAR LETTER KLOKO
+11BE1          ; N  # Po         SUNUWAR SIGN PVO
+11BF0..11BF9   ; N  # Nd    [10] SUNUWAR DIGIT ZERO..SUNUWAR DIGIT NINE
 11C00..11C08   ; N  # Lo     [9] BHAIKSUKI LETTER A..BHAIKSUKI LETTER VOCALIC L
 11C0A..11C2E   ; N  # Lo    [37] BHAIKSUKI LETTER E..BHAIKSUKI LETTER HA
 11C2F          ; N  # Mc         BHAIKSUKI VOWEL SIGN AA
@@ -2253,6 +2296,7 @@ FFFD           ; A  # So         REPLACE
 11F42          ; N  # Mn         KAWI CONJOINER
 11F43..11F4F   ; N  # Po    [13] KAWI DANDA..KAWI PUNCTUATION CLOSING SPIRAL
 11F50..11F59   ; N  # Nd    [10] KAWI DIGIT ZERO..KAWI DIGIT NINE
+11F5A          ; N  # Mn         KAWI SIGN NUKTA
 11FB0          ; N  # Lo         LISU LETTER YHA
 11FC0..11FD4   ; N  # No    [21] TAMIL FRACTION ONE THREE-HUNDRED-AND-TWENTIETH..TAMIL FRACTION DOWNSCALING FACTOR KIIZH
 11FD5..11FDC   ; N  # So     [8] TAMIL SIGN NEL..TAMIL SIGN MUKKURUNI
@@ -2270,7 +2314,13 @@ FFFD           ; A  # So         REPLACE
 13440          ; N  # Mn         EGYPTIAN HIEROGLYPH MIRROR HORIZONTALLY
 13441..13446   ; N  # Lo     [6] EGYPTIAN HIEROGLYPH FULL BLANK..EGYPTIAN HIEROGLYPH WIDE LOST SIGN
 13447..13455   ; N  # Mn    [15] EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP START..EGYPTIAN HIEROGLYPH MODIFIER DAMAGED
+13460..143FA   ; N  # Lo  [3995] EGYPTIAN HIEROGLYPH-13460..EGYPTIAN HIEROGLYPH-143FA
 14400..14646   ; N  # Lo   [583] ANATOLIAN HIEROGLYPH A001..ANATOLIAN HIEROGLYPH A530
+16100..1611D   ; N  # Lo    [30] GURUNG KHEMA LETTER A..GURUNG KHEMA LETTER SA
+1611E..16129   ; N  # Mn    [12] GURUNG KHEMA VOWEL SIGN AA..GURUNG KHEMA VOWEL LENGTH MARK
+1612A..1612C   ; N  # Mc     [3] GURUNG KHEMA CONSONANT SIGN MEDIAL YA..GURUNG KHEMA CONSONANT SIGN MEDIAL HA
+1612D..1612F   ; N  # Mn     [3] GURUNG KHEMA SIGN ANUSVARA..GURUNG KHEMA SIGN THOLHOMA
+16130..16139   ; N  # Nd    [10] GURUNG KHEMA DIGIT ZERO..GURUNG KHEMA DIGIT NINE
 16800..16A38   ; N  # Lo   [569] BAMUM LETTER PHASE-A NGKUE MFON..BAMUM LETTER PHASE-F VUEQ
 16A40..16A5E   ; N  # Lo    [31] MRO LETTER TA..MRO LETTER TEK
 16A60..16A69   ; N  # Nd    [10] MRO DIGIT ZERO..MRO DIGIT NINE
@@ -2291,6 +2341,11 @@ FFFD           ; A  # So         REPLACE
 16B5B..16B61   ; N  # No     [7] PAHAWH HMONG NUMBER TENS..PAHAWH HMONG NUMBER TRILLIONS
 16B63..16B77   ; N  # Lo    [21] PAHAWH HMONG SIGN VOS LUB..PAHAWH HMONG SIGN CIM NRES TOS
 16B7D..16B8F   ; N  # Lo    [19] PAHAWH HMONG CLAN SIGN TSHEEJ..PAHAWH HMONG CLAN SIGN VWJ
+16D40..16D42   ; N  # Lm     [3] KIRAT RAI SIGN ANUSVARA..KIRAT RAI SIGN VISARGA
+16D43..16D6A   ; N  # Lo    [40] KIRAT RAI LETTER A..KIRAT RAI VOWEL SIGN AU
+16D6B..16D6C   ; N  # Lm     [2] KIRAT RAI SIGN VIRAMA..KIRAT RAI SIGN SAAT
+16D6D..16D6F   ; N  # Po     [3] KIRAT RAI SIGN YUPI..KIRAT RAI DOUBLE DANDA
+16D70..16D79   ; N  # Nd    [10] KIRAT RAI DIGIT ZERO..KIRAT RAI DIGIT NINE
 16E40..16E7F   ; N  # L&    [64] MEDEFAIDRIN CAPITAL LETTER M..MEDEFAIDRIN SMALL LETTER Y
 16E80..16E96   ; N  # No    [23] MEDEFAIDRIN DIGIT ZERO..MEDEFAIDRIN DIGIT THREE ALTERNATE FORM
 16E97..16E9A   ; N  # Po     [4] MEDEFAIDRIN COMMA..MEDEFAIDRIN EXCLAMATION OH
@@ -2308,6 +2363,7 @@ FFFD           ; A  # So         REPLACE
 17000..187F7   ; W  # Lo  [6136] TANGUT IDEOGRAPH-17000..TANGUT IDEOGRAPH-187F7
 18800..18AFF   ; W  # Lo   [768] TANGUT COMPONENT-001..TANGUT COMPONENT-768
 18B00..18CD5   ; W  # Lo   [470] KHITAN SMALL SCRIPT CHARACTER-18B00..KHITAN SMALL SCRIPT CHARACTER-18CD5
+18CFF          ; W  # Lo         KHITAN SMALL SCRIPT CHARACTER-18CFF
 18D00..18D08   ; W  # Lo     [9] TANGUT IDEOGRAPH-18D00..TANGUT IDEOGRAPH-18D08
 1AFF0..1AFF3   ; W  # Lm     [4] KATAKANA LETTER MINNAN TONE-2..KATAKANA LETTER MINNAN TONE-5
 1AFF5..1AFFB   ; W  # Lm     [7] KATAKANA LETTER MINNAN TONE-7..KATAKANA LETTER MINNAN NASALIZED TONE-5
@@ -2327,6 +2383,9 @@ FFFD           ; A  # So         REPLACE
 1BC9D..1BC9E   ; N  # Mn     [2] DUPLOYAN THICK LETTER SELECTOR..DUPLOYAN DOUBLE MARK
 1BC9F          ; N  # Po         DUPLOYAN PUNCTUATION CHINOOK FULL STOP
 1BCA0..1BCA3   ; N  # Cf     [4] SHORTHAND FORMAT LETTER OVERLAP..SHORTHAND FORMAT UP STEP
+1CC00..1CCEF   ; N  # So   [240] UP-POINTING GO-KART..OUTLINED LATIN CAPITAL LETTER Z
+1CCF0..1CCF9   ; N  # Nd    [10] OUTLINED DIGIT ZERO..OUTLINED DIGIT NINE
+1CD00..1CEB3   ; N  # So   [436] BLOCK OCTANT-3..BLACK RIGHT TRIANGLE CARET
 1CF00..1CF2D   ; N  # Mn    [46] ZNAMENNY COMBINING MARK GORAZDO NIZKO S KRYZHEM ON LEFT..ZNAMENNY COMBINING MARK KRYZH ON LEFT
 1CF30..1CF46   ; N  # Mn    [23] ZNAMENNY COMBINING TONAL RANGE MARK MRACHNO..ZNAMENNY PRIZNAK MODIFIER ROG
 1CF50..1CFC3   ; N  # So   [116] ZNAMENNY NEUME KRYUK..ZNAMENNY NEUME PAUK
@@ -2349,8 +2408,9 @@ FFFD           ; A  # So         REPLACE
 1D245          ; N  # So         GREEK MUSICAL LEIMMA
 1D2C0..1D2D3   ; N  # No    [20] KAKTOVIK NUMERAL ZERO..KAKTOVIK NUMERAL NINETEEN
 1D2E0..1D2F3   ; N  # No    [20] MAYAN NUMERAL ZERO..MAYAN NUMERAL NINETEEN
-1D300..1D356   ; N  # So    [87] MONOGRAM FOR EARTH..TETRAGRAM FOR FOSTERING
-1D360..1D378   ; N  # No    [25] COUNTING ROD UNIT DIGIT ONE..TALLY MARK FIVE
+1D300..1D356   ; W  # So    [87] MONOGRAM FOR EARTH..TETRAGRAM FOR FOSTERING
+1D360..1D376   ; W  # No    [23] COUNTING ROD UNIT DIGIT ONE..IDEOGRAPHIC TALLY MARK FIVE
+1D377..1D378   ; N  # No     [2] TALLY MARK ONE..TALLY MARK FIVE
 1D400..1D454   ; N  # L&    [85] MATHEMATICAL BOLD CAPITAL A..MATHEMATICAL ITALIC SMALL G
 1D456..1D49C   ; N  # L&    [71] MATHEMATICAL ITALIC SMALL I..MATHEMATICAL SCRIPT CAPITAL A
 1D49E..1D49F   ; N  # Lu     [2] MATHEMATICAL SCRIPT CAPITAL C..MATHEMATICAL SCRIPT CAPITAL D
@@ -2431,6 +2491,11 @@ FFFD           ; A  # So         REPLACE
 1E4EB          ; N  # Lm         NAG MUNDARI SIGN OJOD
 1E4EC..1E4EF   ; N  # Mn     [4] NAG MUNDARI SIGN MUHOR..NAG MUNDARI SIGN SUTUH
 1E4F0..1E4F9   ; N  # Nd    [10] NAG MUNDARI DIGIT ZERO..NAG MUNDARI DIGIT NINE
+1E5D0..1E5ED   ; N  # Lo    [30] OL ONAL LETTER O..OL ONAL LETTER EG
+1E5EE..1E5EF   ; N  # Mn     [2] OL ONAL SIGN MU..OL ONAL SIGN IKIR
+1E5F0          ; N  # Lo         OL ONAL SIGN HODDOND
+1E5F1..1E5FA   ; N  # Nd    [10] OL ONAL DIGIT ZERO..OL ONAL DIGIT NINE
+1E5FF          ; N  # Po         OL ONAL ABBREVIATION SIGN
 1E7E0..1E7E6   ; N  # Lo     [7] ETHIOPIC SYLLABLE HHYA..ETHIOPIC SYLLABLE HHYO
 1E7E8..1E7EB   ; N  # Lo     [4] ETHIOPIC SYLLABLE GURAGE HHWA..ETHIOPIC SYLLABLE HHWE
 1E7ED..1E7EE   ; N  # Lo     [2] ETHIOPIC SYLLABLE GURAGE MWI..ETHIOPIC SYLLABLE GURAGE MWEE
@@ -2574,7 +2639,8 @@ FFFD           ; A  # So         REPLACE
 1F850..1F859   ; N  # So    [10] LEFTWARDS SANS-SERIF ARROW..UP DOWN SANS-SERIF ARROW
 1F860..1F887   ; N  # So    [40] WIDE-HEADED LEFTWARDS LIGHT BARB ARROW..WIDE-HEADED SOUTH WEST VERY HEAVY BARB ARROW
 1F890..1F8AD   ; N  # So    [30] LEFTWARDS TRIANGLE ARROWHEAD..WHITE ARROW SHAFT WIDTH TWO THIRDS
-1F8B0..1F8B1   ; N  # So     [2] ARROW POINTING UPWARDS THEN NORTH WEST..ARROW POINTING RIGHTWARDS THEN CURVING SOUTH WEST
+1F8B0..1F8BB   ; N  # So    [12] ARROW POINTING UPWARDS THEN NORTH WEST..SOUTH WEST ARROW FROM BAR
+1F8C0..1F8C1   ; N  # So     [2] LEFTWARDS ARROW FROM DOWNWARDS ARROW..RIGHTWARDS ARROW FROM DOWNWARDS ARROW
 1F900..1F90B   ; N  # So    [12] CIRCLED CROSS FORMEE WITH FOUR DOTS..DOWNWARD FACING NOTCHED HOOK WITH DOT
 1F90C..1F93A   ; W  # So    [47] PINCHED FINGERS..FENCER
 1F93B          ; N  # So         MODERN PENTATHLON
@@ -2584,14 +2650,13 @@ FFFD           ; A  # So         REPLACE
 1FA00..1FA53   ; N  # So    [84] NEUTRAL CHESS KING..BLACK CHESS KNIGHT-BISHOP
 1FA60..1FA6D   ; N  # So    [14] XIANGQI RED GENERAL..XIANGQI BLACK SOLDIER
 1FA70..1FA7C   ; W  # So    [13] BALLET SHOES..CRUTCH
-1FA80..1FA88   ; W  # So     [9] YO-YO..FLUTE
-1FA90..1FABD   ; W  # So    [46] RINGED PLANET..WING
-1FABF..1FAC5   ; W  # So     [7] GOOSE..PERSON WITH CROWN
-1FACE..1FADB   ; W  # So    [14] MOOSE..PEA POD
-1FAE0..1FAE8   ; W  # So     [9] MELTING FACE..SHAKING FACE
+1FA80..1FA89   ; W  # So    [10] YO-YO..HARP
+1FA8F..1FAC6   ; W  # So    [56] SHOVEL..FINGERPRINT
+1FACE..1FADC   ; W  # So    [15] MOOSE..ROOT VEGETABLE
+1FADF..1FAE9   ; W  # So    [11] SPLATTER..FACE WITH BAGS UNDER EYES
 1FAF0..1FAF8   ; W  # So     [9] HAND WITH INDEX FINGER AND THUMB CROSSED..RIGHTWARDS PUSHING HAND
 1FB00..1FB92   ; N  # So   [147] BLOCK SEXTANT-1..UPPER HALF INVERSE MEDIUM SHADE AND LOWER HALF BLOCK
-1FB94..1FBCA   ; N  # So    [55] LEFT HALF INVERSE MEDIUM SHADE AND RIGHT HALF BLOCK..WHITE UP-POINTING CHEVRON
+1FB94..1FBEF   ; N  # So    [92] LEFT HALF INVERSE MEDIUM SHADE AND RIGHT HALF BLOCK..TOP LEFT JUSTIFIED LOWER RIGHT QUARTER BLACK CIRCLE
 1FBF0..1FBF9   ; N  # Nd    [10] SEGMENTED DIGIT ZERO..SEGMENTED DIGIT NINE
 20000..2A6DF   ; W  # Lo [42720] CJK UNIFIED IDEOGRAPH-20000..CJK UNIFIED IDEOGRAPH-2A6DF
 2A6E0..2A6FF   ; W  # Cn    [32] <reserved-2A6E0>..<reserved-2A6FF>
--- gcc/testsuite/c-c++-common/cpp/named-universal-char-escape-1.c.jj	2022-11-04 18:18:38.259250210 +0100
+++ gcc/testsuite/c-c++-common/cpp/named-universal-char-escape-1.c	2024-10-07 12:19:09.781069799 +0200
@@ -125,6 +125,7 @@ typedef __CHAR32_TYPE__ char32_t;
     || U'\U00011F0B' != U'\N{KAWI LETTER VOCALIC RR}' \
     || U'\U0001342F' != U'\N{EGYPTIAN HIEROGLYPH V011D}' \
     || U'\U00013451' != U'\N{EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT START AND BOTTOM}' \
+    || U'\U00016D5B' != U'\N{KIRAT RAI LETTER MA}' \
     || U'\U0001B132' != U'\N{HIRAGANA LETTER SMALL KO}' \
     || U'\U0001B155' != U'\N{KATAKANA LETTER SMALL KO}' \
     || U'\U0001D2C4' != U'\N{KAKTOVIK NUMERAL FOUR}' \
@@ -137,6 +138,7 @@ typedef __CHAR32_TYPE__ char32_t;
     || U'\U0001F7D9' != U'\N{NINE POINTED WHITE STAR}' \
     || U'\U0001FA76' != U'\N{GREY HEART}' \
     || U'\U0001FA88' != U'\N{FLUTE}' \
+    || U'\U0001FA89' != U'\N{HARP}' \
     || U'\U0001FABC' != U'\N{JELLYFISH}' \
     || U'\uAC00' != U'\N{HANGUL SYLLABLE GA}' \
     || U'\uAC02' != U'\N{HANGUL SYLLABLE GAGG}' \
@@ -166,6 +168,8 @@ typedef __CHAR32_TYPE__ char32_t;
     || U'\U0003134A' != U'\N{CJK UNIFIED IDEOGRAPH-3134A}' \
     || U'\U00031350' != U'\N{CJK UNIFIED IDEOGRAPH-31350}' \
     || U'\U000323AF' != U'\N{CJK UNIFIED IDEOGRAPH-323AF}' \
+    || U'\U00013460' != U'\N{EGYPTIAN HIEROGLYPH-13460}' \
+    || U'\U000143FA' != U'\N{EGYPTIAN HIEROGLYPH-143FA}' \
     || U'\U00017000' != U'\N{TANGUT IDEOGRAPH-17000}' \
     || U'\U000187F7' != U'\N{TANGUT IDEOGRAPH-187F7}' \
     || U'\U00018D00' != U'\N{TANGUT IDEOGRAPH-18D00}' \
--- libcpp/makeucnid.cc.jj	2024-01-03 12:07:27.459379868 +0100
+++ libcpp/makeucnid.cc	2024-10-07 11:10:25.293069743 +0200
@@ -467,7 +467,7 @@ write_copyright (void)
    <http://www.gnu.org/licenses/>.\n\
 \n\
 \n\
-   Copyright (C) 1991-2023 Unicode, Inc.  All rights reserved.\n\
+   Copyright (C) 1991-2024 Unicode, Inc.  All rights reserved.\n\
    Distributed under the Terms of Use in\n\
    http://www.unicode.org/copyright.html.\n\
 \n\
--- libcpp/makeuname2c.cc.jj	2024-01-03 12:07:27.328381703 +0100
+++ libcpp/makeuname2c.cc	2024-10-07 11:19:08.712700949 +0200
@@ -69,7 +69,7 @@ struct entry { const char *name; unsigne
 static struct entry *entries;
 static unsigned long num_allocated, num_entries;
 
-/* Unicode 15.1 Table 4-8.  */
+/* Unicode 16.0 Table 4-8.  */
 struct generated {
   const char *prefix;
   /* max_high is a workaround for UnicodeData.txt inconsistencies
@@ -90,13 +90,14 @@ static struct generated generated_ranges
   { "CJK UNIFIED IDEOGRAPH-", 0x2ebf0, 0x2ee5d, 0, 1, 0 },
   { "CJK UNIFIED IDEOGRAPH-", 0x30000, 0x3134a, 0, 1, 0 },
   { "CJK UNIFIED IDEOGRAPH-", 0x31350, 0x323af, 0, 1, 0 },
-  { "TANGUT IDEOGRAPH-", 0x17000, 0x187f7, 0, 2, 0 },
-  { "TANGUT IDEOGRAPH-", 0x18d00, 0x18d08, 0, 2, 0 },
-  { "KHITAN SMALL SCRIPT CHARACTER-", 0x18b00, 0x18cd5, 0, 3, 0 },
-  { "NUSHU CHARACTER-", 0x1b170, 0x1b2fb, 0, 4, 0 },
-  { "CJK COMPATIBILITY IDEOGRAPH-", 0xf900, 0xfa6d, 0, 5, 0 },
-  { "CJK COMPATIBILITY IDEOGRAPH-", 0xfa70, 0xfad9, 0, 5, 0 },
-  { "CJK COMPATIBILITY IDEOGRAPH-", 0x2f800, 0x2fa1d, 0, 5, 0 }
+  { "EGYPTIAN HIEROGLYPH-", 0x13460, 0x143fa, 0, 2, 0 },
+  { "TANGUT IDEOGRAPH-", 0x17000, 0x187f7, 0, 3, 0 },
+  { "TANGUT IDEOGRAPH-", 0x18d00, 0x18d08, 0, 3, 0 },
+  { "KHITAN SMALL SCRIPT CHARACTER-", 0x18b00, 0x18cd5, 0, 4, 0 },
+  { "NUSHU CHARACTER-", 0x1b170, 0x1b2fb, 0, 5, 0 },
+  { "CJK COMPATIBILITY IDEOGRAPH-", 0xf900, 0xfa6d, 0, 6, 0 },
+  { "CJK COMPATIBILITY IDEOGRAPH-", 0xfa70, 0xfad9, 0, 6, 0 },
+  { "CJK COMPATIBILITY IDEOGRAPH-", 0x2f800, 0x2fa1d, 0, 6, 0 }
 };
 
 struct node {
@@ -670,7 +671,7 @@ write_copyright (void)
    <http://www.gnu.org/licenses/>.\n\
 \n\
 \n\
-   Copyright (C) 1991-2023 Unicode, Inc.  All rights reserved.\n\
+   Copyright (C) 1991-2024 Unicode, Inc.  All rights reserved.\n\
    Distributed under the Terms of Use in\n\
    http://www.unicode.org/copyright.html.\n\
 \n\
--- libcpp/generated_cpp_wcwidth.h.jj	2023-11-14 18:32:35.073121158 +0100
+++ libcpp/generated_cpp_wcwidth.h	2024-10-07 11:11:05.166507904 +0200
@@ -1,5 +1,5 @@
 /*  Generated by contrib/unicode/gen_wcwidth.py, with the help of glibc's
-    utf8_gen.py, using version 15.1.0 of the Unicode standard.  */
+    utf8_gen.py, using version 16.0 of the Unicode standard.  */
 
 static const cppchar_t wcwidth_range_ends[] = {
   0x2ff, 0x36f, 0x482, 0x489, 0x590, 0x5bd, 0x5be, 0x5bf,
@@ -8,7 +8,7 @@ static const cppchar_t wcwidth_range_end
   0x6de, 0x6e4, 0x6e6, 0x6e8, 0x6e9, 0x6ed, 0x710, 0x711,
   0x72f, 0x74a, 0x7a5, 0x7b0, 0x7ea, 0x7f3, 0x7fc, 0x7fd,
   0x815, 0x819, 0x81a, 0x823, 0x824, 0x827, 0x828, 0x82d,
-  0x858, 0x85b, 0x897, 0x89f, 0x8c9, 0x8e1, 0x8e2, 0x902,
+  0x858, 0x85b, 0x896, 0x89f, 0x8c9, 0x8e1, 0x8e2, 0x902,
   0x939, 0x93a, 0x93b, 0x93c, 0x940, 0x948, 0x94c, 0x94d,
   0x950, 0x957, 0x961, 0x963, 0x980, 0x981, 0x9bb, 0x9bc,
   0x9c0, 0x9c4, 0x9cc, 0x9cd, 0x9e1, 0x9e3, 0x9fd, 0x9fe,
@@ -46,82 +46,86 @@ static const cppchar_t wcwidth_range_end
   0x1cf4, 0x1cf7, 0x1cf9, 0x1dbf, 0x1dff, 0x200a, 0x200f, 0x2029,
   0x202e, 0x205f, 0x2064, 0x2065, 0x206f, 0x20cf, 0x20f0, 0x2319,
   0x231b, 0x2328, 0x232a, 0x23e8, 0x23ec, 0x23ef, 0x23f0, 0x23f2,
-  0x23f3, 0x25fc, 0x25fe, 0x2613, 0x2615, 0x2647, 0x2653, 0x267e,
-  0x267f, 0x2692, 0x2693, 0x26a0, 0x26a1, 0x26a9, 0x26ab, 0x26bc,
-  0x26be, 0x26c3, 0x26c5, 0x26cd, 0x26ce, 0x26d3, 0x26d4, 0x26e9,
-  0x26ea, 0x26f1, 0x26f3, 0x26f4, 0x26f5, 0x26f9, 0x26fa, 0x26fc,
-  0x26fd, 0x2704, 0x2705, 0x2709, 0x270b, 0x2727, 0x2728, 0x274b,
-  0x274c, 0x274d, 0x274e, 0x2752, 0x2755, 0x2756, 0x2757, 0x2794,
-  0x2797, 0x27af, 0x27b0, 0x27be, 0x27bf, 0x2b1a, 0x2b1c, 0x2b4f,
-  0x2b50, 0x2b54, 0x2b55, 0x2cee, 0x2cf1, 0x2d7e, 0x2d7f, 0x2ddf,
-  0x2dff, 0x2e7f, 0x2e99, 0x2e9a, 0x2ef3, 0x2eff, 0x2fd5, 0x2fef,
-  0x3029, 0x302d, 0x303e, 0x3040, 0x3096, 0x3098, 0x309a, 0x30ff,
-  0x3104, 0x312f, 0x3130, 0x318e, 0x318f, 0x31e3, 0x31ee, 0x321e,
-  0x321f, 0xa48c, 0xa48f, 0xa4c6, 0xa66e, 0xa672, 0xa673, 0xa67d,
-  0xa69d, 0xa69f, 0xa6ef, 0xa6f1, 0xa801, 0xa802, 0xa805, 0xa806,
-  0xa80a, 0xa80b, 0xa824, 0xa826, 0xa82b, 0xa82c, 0xa8c3, 0xa8c5,
-  0xa8df, 0xa8f1, 0xa8fe, 0xa8ff, 0xa925, 0xa92d, 0xa946, 0xa951,
-  0xa95f, 0xa97c, 0xa97f, 0xa982, 0xa9b2, 0xa9b3, 0xa9b5, 0xa9b9,
-  0xa9bb, 0xa9bd, 0xa9e4, 0xa9e5, 0xaa28, 0xaa2e, 0xaa30, 0xaa32,
-  0xaa34, 0xaa36, 0xaa42, 0xaa43, 0xaa4b, 0xaa4c, 0xaa7b, 0xaa7c,
-  0xaaaf, 0xaab0, 0xaab1, 0xaab4, 0xaab6, 0xaab8, 0xaabd, 0xaabf,
-  0xaac0, 0xaac1, 0xaaeb, 0xaaed, 0xaaf5, 0xaaf6, 0xabe4, 0xabe5,
-  0xabe7, 0xabe8, 0xabec, 0xabed, 0xabff, 0xd7a3, 0xd7af, 0xd7c6,
-  0xd7ca, 0xd7fb, 0xf8ff, 0xfa6d, 0xfa6f, 0xfad9, 0xfb1d, 0xfb1e,
-  0xfdff, 0xfe0f, 0xfe19, 0xfe1f, 0xfe2f, 0xfe52, 0xfe53, 0xfe66,
-  0xfe67, 0xfe6b, 0xfefe, 0xfeff, 0xff00, 0xff60, 0xffdf, 0xffe6,
-  0xfff8, 0xfffb, 0x101fc, 0x101fd, 0x102df, 0x102e0, 0x10375, 0x1037a,
-  0x10a00, 0x10a03, 0x10a04, 0x10a06, 0x10a0b, 0x10a0f, 0x10a37, 0x10a3a,
-  0x10a3e, 0x10a3f, 0x10ae4, 0x10ae6, 0x10d23, 0x10d27, 0x10eaa, 0x10eac,
-  0x10efc, 0x10eff, 0x10f45, 0x10f50, 0x10f81, 0x10f85, 0x11000, 0x11001,
-  0x11037, 0x11046, 0x1106f, 0x11070, 0x11072, 0x11074, 0x1107e, 0x11081,
-  0x110b2, 0x110b6, 0x110b8, 0x110ba, 0x110c1, 0x110c2, 0x110ff, 0x11102,
-  0x11126, 0x1112b, 0x1112c, 0x11134, 0x11172, 0x11173, 0x1117f, 0x11181,
-  0x111b5, 0x111be, 0x111c8, 0x111cc, 0x111ce, 0x111cf, 0x1122e, 0x11231,
-  0x11233, 0x11234, 0x11235, 0x11237, 0x1123d, 0x1123e, 0x11240, 0x11241,
-  0x112de, 0x112df, 0x112e2, 0x112ea, 0x112ff, 0x11301, 0x1133a, 0x1133c,
-  0x1133f, 0x11340, 0x11365, 0x1136c, 0x1136f, 0x11374, 0x11437, 0x1143f,
+  0x23f3, 0x25fc, 0x25fe, 0x2613, 0x2615, 0x262f, 0x2637, 0x2647,
+  0x2653, 0x267e, 0x267f, 0x2689, 0x268f, 0x2692, 0x2693, 0x26a0,
+  0x26a1, 0x26a9, 0x26ab, 0x26bc, 0x26be, 0x26c3, 0x26c5, 0x26cd,
+  0x26ce, 0x26d3, 0x26d4, 0x26e9, 0x26ea, 0x26f1, 0x26f3, 0x26f4,
+  0x26f5, 0x26f9, 0x26fa, 0x26fc, 0x26fd, 0x2704, 0x2705, 0x2709,
+  0x270b, 0x2727, 0x2728, 0x274b, 0x274c, 0x274d, 0x274e, 0x2752,
+  0x2755, 0x2756, 0x2757, 0x2794, 0x2797, 0x27af, 0x27b0, 0x27be,
+  0x27bf, 0x2b1a, 0x2b1c, 0x2b4f, 0x2b50, 0x2b54, 0x2b55, 0x2cee,
+  0x2cf1, 0x2d7e, 0x2d7f, 0x2ddf, 0x2dff, 0x2e7f, 0x2e99, 0x2e9a,
+  0x2ef3, 0x2eff, 0x2fd5, 0x2fef, 0x3029, 0x302d, 0x303e, 0x3040,
+  0x3096, 0x3098, 0x309a, 0x30ff, 0x3104, 0x312f, 0x3130, 0x318e,
+  0x318f, 0x31e5, 0x31ee, 0x321e, 0x321f, 0xa48c, 0xa48f, 0xa4c6,
+  0xa66e, 0xa672, 0xa673, 0xa67d, 0xa69d, 0xa69f, 0xa6ef, 0xa6f1,
+  0xa801, 0xa802, 0xa805, 0xa806, 0xa80a, 0xa80b, 0xa824, 0xa826,
+  0xa82b, 0xa82c, 0xa8c3, 0xa8c5, 0xa8df, 0xa8f1, 0xa8fe, 0xa8ff,
+  0xa925, 0xa92d, 0xa946, 0xa951, 0xa95f, 0xa97c, 0xa97f, 0xa982,
+  0xa9b2, 0xa9b3, 0xa9b5, 0xa9b9, 0xa9bb, 0xa9bd, 0xa9e4, 0xa9e5,
+  0xaa28, 0xaa2e, 0xaa30, 0xaa32, 0xaa34, 0xaa36, 0xaa42, 0xaa43,
+  0xaa4b, 0xaa4c, 0xaa7b, 0xaa7c, 0xaaaf, 0xaab0, 0xaab1, 0xaab4,
+  0xaab6, 0xaab8, 0xaabd, 0xaabf, 0xaac0, 0xaac1, 0xaaeb, 0xaaed,
+  0xaaf5, 0xaaf6, 0xabe4, 0xabe5, 0xabe7, 0xabe8, 0xabec, 0xabed,
+  0xabff, 0xd7a3, 0xd7af, 0xd7c6, 0xd7ca, 0xd7fb, 0xf8ff, 0xfa6d,
+  0xfa6f, 0xfad9, 0xfb1d, 0xfb1e, 0xfdff, 0xfe0f, 0xfe19, 0xfe1f,
+  0xfe2f, 0xfe52, 0xfe53, 0xfe66, 0xfe67, 0xfe6b, 0xfefe, 0xfeff,
+  0xff00, 0xff60, 0xffdf, 0xffe6, 0xfff8, 0xfffb, 0x101fc, 0x101fd,
+  0x102df, 0x102e0, 0x10375, 0x1037a, 0x10a00, 0x10a03, 0x10a04, 0x10a06,
+  0x10a0b, 0x10a0f, 0x10a37, 0x10a3a, 0x10a3e, 0x10a3f, 0x10ae4, 0x10ae6,
+  0x10d23, 0x10d27, 0x10d68, 0x10d6d, 0x10eaa, 0x10eac, 0x10efb, 0x10eff,
+  0x10f45, 0x10f50, 0x10f81, 0x10f85, 0x11000, 0x11001, 0x11037, 0x11046,
+  0x1106f, 0x11070, 0x11072, 0x11074, 0x1107e, 0x11081, 0x110b2, 0x110b6,
+  0x110b8, 0x110ba, 0x110c1, 0x110c2, 0x110ff, 0x11102, 0x11126, 0x1112b,
+  0x1112c, 0x11134, 0x11172, 0x11173, 0x1117f, 0x11181, 0x111b5, 0x111be,
+  0x111c8, 0x111cc, 0x111ce, 0x111cf, 0x1122e, 0x11231, 0x11233, 0x11234,
+  0x11235, 0x11237, 0x1123d, 0x1123e, 0x11240, 0x11241, 0x112de, 0x112df,
+  0x112e2, 0x112ea, 0x112ff, 0x11301, 0x1133a, 0x1133c, 0x1133f, 0x11340,
+  0x11365, 0x1136c, 0x1136f, 0x11374, 0x113ba, 0x113c0, 0x113cd, 0x113ce,
+  0x113cf, 0x113d0, 0x113d1, 0x113d2, 0x113e0, 0x113e2, 0x11437, 0x1143f,
   0x11441, 0x11444, 0x11445, 0x11446, 0x1145d, 0x1145e, 0x114b2, 0x114b8,
   0x114b9, 0x114ba, 0x114be, 0x114c0, 0x114c1, 0x114c3, 0x115b1, 0x115b5,
   0x115bb, 0x115bd, 0x115be, 0x115c0, 0x115db, 0x115dd, 0x11632, 0x1163a,
   0x1163c, 0x1163d, 0x1163e, 0x11640, 0x116aa, 0x116ab, 0x116ac, 0x116ad,
-  0x116af, 0x116b5, 0x116b6, 0x116b7, 0x1171c, 0x1171f, 0x11721, 0x11725,
-  0x11726, 0x1172b, 0x1182e, 0x11837, 0x11838, 0x1183a, 0x1193a, 0x1193c,
-  0x1193d, 0x1193e, 0x11942, 0x11943, 0x119d3, 0x119d7, 0x119d9, 0x119db,
-  0x119df, 0x119e0, 0x11a00, 0x11a0a, 0x11a32, 0x11a38, 0x11a3a, 0x11a3e,
-  0x11a46, 0x11a47, 0x11a50, 0x11a56, 0x11a58, 0x11a5b, 0x11a89, 0x11a96,
-  0x11a97, 0x11a99, 0x11c2f, 0x11c36, 0x11c37, 0x11c3d, 0x11c3e, 0x11c3f,
-  0x11c91, 0x11ca7, 0x11ca9, 0x11cb0, 0x11cb1, 0x11cb3, 0x11cb4, 0x11cb6,
-  0x11d30, 0x11d36, 0x11d39, 0x11d3a, 0x11d3b, 0x11d3d, 0x11d3e, 0x11d45,
-  0x11d46, 0x11d47, 0x11d8f, 0x11d91, 0x11d94, 0x11d95, 0x11d96, 0x11d97,
-  0x11ef2, 0x11ef4, 0x11eff, 0x11f01, 0x11f35, 0x11f3a, 0x11f3f, 0x11f40,
-  0x11f41, 0x11f42, 0x1342f, 0x13440, 0x13446, 0x13455, 0x16aef, 0x16af4,
+  0x116af, 0x116b5, 0x116b6, 0x116b7, 0x1171c, 0x1171d, 0x1171e, 0x1171f,
+  0x11721, 0x11725, 0x11726, 0x1172b, 0x1182e, 0x11837, 0x11838, 0x1183a,
+  0x1193a, 0x1193c, 0x1193d, 0x1193e, 0x11942, 0x11943, 0x119d3, 0x119d7,
+  0x119d9, 0x119db, 0x119df, 0x119e0, 0x11a00, 0x11a0a, 0x11a32, 0x11a38,
+  0x11a3a, 0x11a3e, 0x11a46, 0x11a47, 0x11a50, 0x11a56, 0x11a58, 0x11a5b,
+  0x11a89, 0x11a96, 0x11a97, 0x11a99, 0x11c2f, 0x11c36, 0x11c37, 0x11c3d,
+  0x11c3e, 0x11c3f, 0x11c91, 0x11ca7, 0x11ca9, 0x11cb0, 0x11cb1, 0x11cb3,
+  0x11cb4, 0x11cb6, 0x11d30, 0x11d36, 0x11d39, 0x11d3a, 0x11d3b, 0x11d3d,
+  0x11d3e, 0x11d45, 0x11d46, 0x11d47, 0x11d8f, 0x11d91, 0x11d94, 0x11d95,
+  0x11d96, 0x11d97, 0x11ef2, 0x11ef4, 0x11eff, 0x11f01, 0x11f35, 0x11f3a,
+  0x11f3f, 0x11f40, 0x11f41, 0x11f42, 0x11f59, 0x11f5a, 0x1342f, 0x13440,
+  0x13446, 0x13455, 0x1611d, 0x16129, 0x1612c, 0x1612f, 0x16aef, 0x16af4,
   0x16b2f, 0x16b36, 0x16f4e, 0x16f4f, 0x16f8e, 0x16f92, 0x16fdf, 0x16fe3,
-  0x16fe4, 0x16fef, 0x16ff1, 0x16fff, 0x187f7, 0x187ff, 0x18cd5, 0x18cff,
+  0x16fe4, 0x16fef, 0x16ff1, 0x16fff, 0x187f7, 0x187ff, 0x18cd5, 0x18cfe,
   0x18d08, 0x1afef, 0x1aff3, 0x1aff4, 0x1affb, 0x1affc, 0x1affe, 0x1afff,
   0x1b122, 0x1b131, 0x1b132, 0x1b14f, 0x1b152, 0x1b154, 0x1b155, 0x1b163,
   0x1b167, 0x1b16f, 0x1b2fb, 0x1bc9c, 0x1bc9e, 0x1bc9f, 0x1bca3, 0x1ceff,
   0x1cf2d, 0x1cf2f, 0x1cf46, 0x1d166, 0x1d169, 0x1d172, 0x1d182, 0x1d184,
-  0x1d18b, 0x1d1a9, 0x1d1ad, 0x1d241, 0x1d244, 0x1d9ff, 0x1da36, 0x1da3a,
-  0x1da6c, 0x1da74, 0x1da75, 0x1da83, 0x1da84, 0x1da9a, 0x1da9f, 0x1daa0,
-  0x1daaf, 0x1dfff, 0x1e006, 0x1e007, 0x1e018, 0x1e01a, 0x1e021, 0x1e022,
-  0x1e024, 0x1e025, 0x1e02a, 0x1e08e, 0x1e08f, 0x1e12f, 0x1e136, 0x1e2ad,
-  0x1e2ae, 0x1e2eb, 0x1e2ef, 0x1e4eb, 0x1e4ef, 0x1e8cf, 0x1e8d6, 0x1e943,
-  0x1e94a, 0x1f003, 0x1f004, 0x1f0ce, 0x1f0cf, 0x1f18d, 0x1f18e, 0x1f190,
-  0x1f19a, 0x1f1ff, 0x1f202, 0x1f20f, 0x1f23b, 0x1f23f, 0x1f248, 0x1f24f,
-  0x1f251, 0x1f25f, 0x1f265, 0x1f2ff, 0x1f320, 0x1f32c, 0x1f335, 0x1f336,
-  0x1f37c, 0x1f37d, 0x1f393, 0x1f39f, 0x1f3ca, 0x1f3ce, 0x1f3d3, 0x1f3df,
-  0x1f3f0, 0x1f3f3, 0x1f3f4, 0x1f3f7, 0x1f43e, 0x1f43f, 0x1f440, 0x1f441,
-  0x1f4fc, 0x1f4fe, 0x1f53d, 0x1f54a, 0x1f54e, 0x1f54f, 0x1f567, 0x1f579,
-  0x1f57a, 0x1f594, 0x1f596, 0x1f5a3, 0x1f5a4, 0x1f5fa, 0x1f64f, 0x1f67f,
-  0x1f6c5, 0x1f6cb, 0x1f6cc, 0x1f6cf, 0x1f6d2, 0x1f6d4, 0x1f6d7, 0x1f6db,
-  0x1f6df, 0x1f6ea, 0x1f6ec, 0x1f6f3, 0x1f6fc, 0x1f7df, 0x1f7eb, 0x1f7ef,
-  0x1f7f0, 0x1f90b, 0x1f93a, 0x1f93b, 0x1f945, 0x1f946, 0x1f9ff, 0x1fa6f,
-  0x1fa7c, 0x1fa7f, 0x1fa88, 0x1fa8f, 0x1fabd, 0x1fabe, 0x1fac5, 0x1facd,
-  0x1fadb, 0x1fadf, 0x1fae8, 0x1faef, 0x1faf8, 0x1ffff, 0x2a6df, 0x2a6ff,
-  0x2b739, 0x2b73f, 0x2b81d, 0x2b81f, 0x2cea1, 0x2ceaf, 0x2ebe0, 0x2ebef,
-  0x2ee5d, 0x2f7ff, 0x2fa1d, 0x2ffff, 0x3134a, 0x3134f, 0x323af, 0xe0000,
-  0xe0001, 0xe001f, 0xe007f, 0xe00ff, 0xe01ef,
+  0x1d18b, 0x1d1a9, 0x1d1ad, 0x1d241, 0x1d244, 0x1d2ff, 0x1d356, 0x1d35f,
+  0x1d376, 0x1d9ff, 0x1da36, 0x1da3a, 0x1da6c, 0x1da74, 0x1da75, 0x1da83,
+  0x1da84, 0x1da9a, 0x1da9f, 0x1daa0, 0x1daaf, 0x1dfff, 0x1e006, 0x1e007,
+  0x1e018, 0x1e01a, 0x1e021, 0x1e022, 0x1e024, 0x1e025, 0x1e02a, 0x1e08e,
+  0x1e08f, 0x1e12f, 0x1e136, 0x1e2ad, 0x1e2ae, 0x1e2eb, 0x1e2ef, 0x1e4eb,
+  0x1e4ef, 0x1e5ed, 0x1e5ef, 0x1e8cf, 0x1e8d6, 0x1e943, 0x1e94a, 0x1f003,
+  0x1f004, 0x1f0ce, 0x1f0cf, 0x1f18d, 0x1f18e, 0x1f190, 0x1f19a, 0x1f1ff,
+  0x1f202, 0x1f20f, 0x1f23b, 0x1f23f, 0x1f248, 0x1f24f, 0x1f251, 0x1f25f,
+  0x1f265, 0x1f2ff, 0x1f320, 0x1f32c, 0x1f335, 0x1f336, 0x1f37c, 0x1f37d,
+  0x1f393, 0x1f39f, 0x1f3ca, 0x1f3ce, 0x1f3d3, 0x1f3df, 0x1f3f0, 0x1f3f3,
+  0x1f3f4, 0x1f3f7, 0x1f43e, 0x1f43f, 0x1f440, 0x1f441, 0x1f4fc, 0x1f4fe,
+  0x1f53d, 0x1f54a, 0x1f54e, 0x1f54f, 0x1f567, 0x1f579, 0x1f57a, 0x1f594,
+  0x1f596, 0x1f5a3, 0x1f5a4, 0x1f5fa, 0x1f64f, 0x1f67f, 0x1f6c5, 0x1f6cb,
+  0x1f6cc, 0x1f6cf, 0x1f6d2, 0x1f6d4, 0x1f6d7, 0x1f6db, 0x1f6df, 0x1f6ea,
+  0x1f6ec, 0x1f6f3, 0x1f6fc, 0x1f7df, 0x1f7eb, 0x1f7ef, 0x1f7f0, 0x1f90b,
+  0x1f93a, 0x1f93b, 0x1f945, 0x1f946, 0x1f9ff, 0x1fa6f, 0x1fa7c, 0x1fa7f,
+  0x1fa89, 0x1fa8e, 0x1fac6, 0x1facd, 0x1fadc, 0x1fade, 0x1fae9, 0x1faef,
+  0x1faf8, 0x1ffff, 0x2a6df, 0x2a6ff, 0x2b739, 0x2b73f, 0x2b81d, 0x2b81f,
+  0x2cea1, 0x2ceaf, 0x2ebe0, 0x2ebef, 0x2ee5d, 0x2f7ff, 0x2fa1d, 0x2ffff,
+  0x3134a, 0x3134f, 0x323af, 0xe0000, 0xe0001, 0xe001f, 0xe007f, 0xe00ff,
+  0xe01ef,
 };
 
 static const unsigned char wcwidth_widths[] = {
@@ -142,12 +146,13 @@ static const unsigned char wcwidth_width
   0, 1, 0, 1, 0, 1, 0, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1,
   2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1,
   2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1,
-  2, 1, 2, 1, 0, 1, 0, 1, 0, 1, 2, 1, 2, 1, 2, 1, 2, 0, 2, 1, 2, 1, 0, 2,
-  1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0,
-  1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 2, 1, 0, 1, 0, 1, 0,
+  2, 1, 2, 1, 2, 1, 2, 1, 0, 1, 0, 1, 0, 1, 2, 1, 2, 1, 2, 1, 2, 0, 2, 1,
+  2, 1, 0, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 0, 1, 0, 1, 0, 1, 0,
+  1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 2, 1, 0,
+  1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0,
+  1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 2, 1, 0, 1, 0, 1, 2,
+  1, 2, 1, 0, 1, 0, 2, 1, 0, 2, 1, 2, 1, 2, 1, 0, 1, 2, 1, 2, 1, 0, 1, 0,
   1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0,
-  1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 2, 1, 0, 1, 0, 1, 2, 1, 2, 1, 0,
-  1, 0, 2, 1, 0, 2, 1, 2, 1, 2, 1, 0, 1, 2, 1, 2, 1, 0, 1, 0, 1, 0, 1, 0,
   1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0,
   1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0,
   1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0,
@@ -158,11 +163,12 @@ static const unsigned char wcwidth_width
   1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0,
   1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 2, 0, 1, 2, 1, 2, 1, 2, 1,
   2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 0, 1, 0, 1,
+  0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 2, 1, 2, 1, 0, 1, 0, 1, 0, 1,
   0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1,
-  0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1,
-  0, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1,
+  0, 1, 0, 1, 0, 1, 0, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1,
   2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1,
   2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1,
   2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1,
-  2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 0, 1, 0, 1, 0,
+  2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 0, 1, 0, 1,
+  0,
 };
--- libcpp/ucnid.h.jj	2024-01-03 12:07:27.565378382 +0100
+++ libcpp/ucnid.h	2024-10-07 11:12:56.908933380 +0200
@@ -16,7 +16,7 @@
    <http://www.gnu.org/licenses/>.
 
 
-   Copyright (C) 1991-2023 Unicode, Inc.  All rights reserved.
+   Copyright (C) 1991-2024 Unicode, Inc.  All rights reserved.
    Distributed under the Terms of Use in
    http://www.unicode.org/copyright.html.
 
@@ -441,7 +441,7 @@ static const struct ucnrange ucnranges[]
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x0887 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x0888 },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x088e },
-{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x0897 },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x0896 },
 {   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0, 230, 0x0898 },
 {   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0, 220, 0x089b },
 {   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0, 230, 0x089f },
@@ -1217,7 +1217,7 @@ static const struct ucnrange ucnranges[]
 {   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x1c59 },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x1c7d },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x1c7f },
-{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x1c88 },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x1c8a },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x1c8f },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x1cba },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x1cbc },
@@ -1678,13 +1678,13 @@ static const struct ucnrange ucnranges[]
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|  0|  0,   0, 0xa770 },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0xa788 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0xa78a },
-{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0xa7ca },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0xa7cd },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0xa7cf },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0xa7d1 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0xa7d2 },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0xa7d3 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0xa7d4 },
-{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0xa7d9 },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0xa7dc },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0xa7f1 },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|  0|  0,   0, 0xa7f4 },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0xa7f7 },
@@ -1992,6 +1992,12 @@ static const struct ucnrange ucnranges[]
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x105b9 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x105ba },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x105bc },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x105bf },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x105c8 },
+{   0|  0|  0|C11|  0|CXX23|    0|  0|NFC|NKC|  0,   0, 0x105c9 },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x105e3 },
+{   0|  0|  0|C11|  0|CXX23|    0|  0|NFC|NKC|  0,   0, 0x105e4 },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x105f3 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x105ff },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x10736 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x1073f },
@@ -2083,13 +2089,23 @@ static const struct ucnrange ucnranges[]
 {   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0, 230, 0x10d27 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x10d2f },
 {   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x10d39 },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x10d3f },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x10d49 },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x10d65 },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x10d68 },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0, 230, 0x10d6d },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x10d6e },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x10d85 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x10e7f },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x10ea9 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x10eaa },
 {   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0, 230, 0x10eac },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x10eaf },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x10eb1 },
-{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x10efc },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x10ec1 },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x10ec4 },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x10efb },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x10efc },
 {   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0, 220, 0x10eff },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x10f1c },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x10f26 },
@@ -2239,6 +2255,42 @@ static const struct ucnrange ucnranges[]
 {   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0, 230, 0x1136c },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x1136f },
 {   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0, 230, 0x11374 },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x1137f },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x11382 },
+{   0|  0|  0|C11|  0|CXX23|    0|  0|NFC|NKC|  0,   0, 0x11383 },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x11384 },
+{   0|  0|  0|C11|  0|CXX23|    0|  0|NFC|NKC|  0,   0, 0x11385 },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x11389 },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x1138a },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x1138b },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x1138d },
+{   0|  0|  0|C11|  0|CXX23|    0|  0|NFC|NKC|  0,   0, 0x1138e },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x1138f },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x11390 },
+{   0|  0|  0|C11|  0|CXX23|    0|  0|NFC|NKC|  0,   0, 0x11391 },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x113b5 },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x113b6 },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x113b7 },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|CTX,   0, 0x113b8 },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x113ba },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|CTX,   0, 0x113bb },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x113c0 },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x113c1 },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|CTX,   0, 0x113c2 },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x113c4 },
+{   0|  0|  0|C11|  0|CXX23|NXX23|  0|NFC|NKC|CTX,   0, 0x113c5 },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x113c6 },
+{   0|  0|  0|C11|  0|CXX23|NXX23|  0|NFC|NKC|CTX,   0, 0x113c8 },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|CTX,   0, 0x113c9 },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x113ca },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x113cb },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x113cd },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   9, 0x113d0 },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x113d1 },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x113d2 },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x113d3 },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x113e0 },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x113e2 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x113ff },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x11434 },
 {   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x11441 },
@@ -2297,6 +2349,8 @@ static const struct ucnrange ucnranges[]
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x116b8 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x116bf },
 {   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x116c9 },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x116cf },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x116e3 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x116ff },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x1171a },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x1171c },
@@ -2372,6 +2426,10 @@ static const struct ucnrange ucnranges[]
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x11a9d },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x11aaf },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x11af8 },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x11bbf },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x11be0 },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x11bef },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x11bf9 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x11bff },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x11c08 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x11c09 },
@@ -2439,7 +2497,7 @@ static const struct ucnrange ucnranges[]
 {   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x11f40 },
 {   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   9, 0x11f42 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x11f4f },
-{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x11f59 },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x11f5a },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x11faf },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x11fb0 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x11fff },
@@ -2456,8 +2514,18 @@ static const struct ucnrange ucnranges[]
 {   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x13440 },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x13446 },
 {   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x13455 },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x1345f },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x143fa },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x143ff },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x14646 },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x160ff },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x1611d },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|CTX,   0, 0x16120 },
+{   0|  0|  0|C11|  0|CXX23|NXX23|  0|NFC|NKC|CTX,   0, 0x16128 },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|CTX,   0, 0x16129 },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x1612e },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   9, 0x1612f },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x16139 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x167ff },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x16a38 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x16a3f },
@@ -2483,6 +2551,14 @@ static const struct ucnrange ucnranges[]
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x16b77 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x16b7c },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x16b8f },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x16d3f },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x16d66 },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|CTX,   0, 0x16d67 },
+{   0|  0|  0|C11|  0|CXX23|    0|  0|NFC|NKC|CTX,   0, 0x16d68 },
+{   0|  0|  0|C11|  0|CXX23|    0|  0|NFC|NKC|  0,   0, 0x16d6a },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x16d6c },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x16d6f },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x16d79 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x16e3f },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x16e7f },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x16eff },
@@ -2505,7 +2581,7 @@ static const struct ucnrange ucnranges[]
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x187f7 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x187ff },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x18cd5 },
-{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x18cff },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x18cfe },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x18d08 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x1afef },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x1aff3 },
@@ -2536,6 +2612,9 @@ static const struct ucnrange ucnranges[]
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x1bc9c },
 {   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x1bc9d },
 {   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   1, 0x1bc9e },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x1ccd5 },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|  0|  0,   0, 0x1ccef },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|  0|  0,   0, 0x1ccf9 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x1ceff },
 {   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x1cf2d },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x1cf2f },
@@ -2672,6 +2751,12 @@ static const struct ucnrange ucnranges[]
 {   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0, 220, 0x1e4ee },
 {   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0, 230, 0x1e4ef },
 {   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x1e4f9 },
+{   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x1e5cf },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x1e5ed },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0, 230, 0x1e5ee },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0, 220, 0x1e5ef },
+{   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x1e5f0 },
+{   0|  0|  0|C11|  0|CXX23|NXX23|CID|NFC|NKC|  0,   0, 0x1e5fa },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x1e7df },
 {   0|  0|  0|C11|  0|CXX23|    0|CID|NFC|NKC|  0,   0, 0x1e7e6 },
 {   0|  0|  0|C11|  0|    0|    0|CID|NFC|NKC|  0,   0, 0x1e7e7 },
@@ -3303,6 +3388,8 @@ check_nfc (cpp_reader *pfile, cppchar_t
 	case 0x0059:
 	case 0x0079:
 	case 0x017f:
+	case 0x105d2:
+	case 0x105da:
 	  return false;
 	default:
 	  return true;
@@ -5452,6 +5539,69 @@ check_nfc (cpp_reader *pfile, cppchar_t
 	  return true;
 	}
 
+    case 0x113b8:
+      switch (p)
+	{
+	case 0x113c2:
+	  return false;
+	default:
+	  return true;
+	}
+
+    case 0x113bb:
+      switch (p)
+	{
+	case 0x11384:
+	  return false;
+	default:
+	  return true;
+	}
+
+    case 0x113c2:
+      switch (p)
+	{
+	case 0x1138b:
+	case 0x113c2:
+	  return false;
+	default:
+	  return true;
+	}
+
+    case 0x113c5:
+      switch (p)
+	{
+	/* Non-NFC cases not applicable to C/C++.  */
+	default:
+	  return true;
+	}
+
+    case 0x113c7:
+      switch (p)
+	{
+	/* Non-NFC cases not applicable to C/C++.  */
+	default:
+	  return true;
+	}
+
+    case 0x113c8:
+      switch (p)
+	{
+	/* Non-NFC cases not applicable to C/C++.  */
+	default:
+	  return true;
+	}
+
+    case 0x113c9:
+      switch (p)
+	{
+	case 0x11382:
+	case 0x11390:
+	case 0x113c2:
+	  return false;
+	default:
+	  return true;
+	}
+
     case 0x114b0:
       switch (p)
 	{
@@ -5497,6 +5647,129 @@ check_nfc (cpp_reader *pfile, cppchar_t
 	default:
 	  return true;
 	}
+
+    case 0x1611e:
+      switch (p)
+	{
+	case 0x1611e:
+	  return false;
+	default:
+	  return true;
+	}
+
+    case 0x1611f:
+      switch (p)
+	{
+	case 0x1611e:
+	case 0x16129:
+	case 0x16121:
+	case 0x16122:
+	  return false;
+	default:
+	  return true;
+	}
+
+    case 0x16120:
+      switch (p)
+	{
+	case 0x1611e:
+	case 0x16121:
+	  return false;
+	default:
+	  return true;
+	}
+
+    case 0x16121:
+      switch (p)
+	{
+	/* Non-NFC cases not applicable to C/C++.  */
+	default:
+	  return true;
+	}
+
+    case 0x16122:
+      switch (p)
+	{
+	/* Non-NFC cases not applicable to C/C++.  */
+	default:
+	  return true;
+	}
+
+    case 0x16123:
+      switch (p)
+	{
+	/* Non-NFC cases not applicable to C/C++.  */
+	default:
+	  return true;
+	}
+
+    case 0x16124:
+      switch (p)
+	{
+	/* Non-NFC cases not applicable to C/C++.  */
+	default:
+	  return true;
+	}
+
+    case 0x16125:
+      switch (p)
+	{
+	/* Non-NFC cases not applicable to C/C++.  */
+	default:
+	  return true;
+	}
+
+    case 0x16126:
+      switch (p)
+	{
+	/* Non-NFC cases not applicable to C/C++.  */
+	default:
+	  return true;
+	}
+
+    case 0x16127:
+      switch (p)
+	{
+	/* Non-NFC cases not applicable to C/C++.  */
+	default:
+	  return true;
+	}
+
+    case 0x16128:
+      switch (p)
+	{
+	/* Non-NFC cases not applicable to C/C++.  */
+	default:
+	  return true;
+	}
+
+    case 0x16129:
+      switch (p)
+	{
+	case 0x1611e:
+	  return false;
+	default:
+	  return true;
+	}
+
+    case 0x16d67:
+      switch (p)
+	{
+	case 0x16d67:
+	case 0x16d63:
+	case 0x16d69:
+	  return false;
+	default:
+	  return true;
+	}
+
+    case 0x16d68:
+      switch (p)
+	{
+	/* Non-NFC cases not applicable to C/C++.  */
+	default:
+	  return true;
+	}
 
     default:
       cpp_error (pfile, CPP_DL_ICE, "Character %x might not be NFKC", c);
--- libstdc++-v3/include/bits/unicode.h.jj	2024-10-03 17:27:34.320145510 +0200
+++ libstdc++-v3/include/bits/unicode.h	2024-10-07 11:25:10.756606559 +0200
@@ -590,9 +590,9 @@ namespace __unicode
   template<typename _View>
     using _Utf32_view = _Utf_view<char32_t, _View>;
 
-inline namespace __v15_1_0
+inline namespace __v16_0_0
 {
-#define _GLIBCXX_GET_UNICODE_DATA 150100
+#define _GLIBCXX_GET_UNICODE_DATA 160000
 #include "unicode-data.h"
 #ifdef _GLIBCXX_GET_UNICODE_DATA
 # error "Invalid unicode data"
@@ -943,7 +943,7 @@ inline namespace __v15_1_0
       _Iterator _M_begin;
     };
 
-} // namespace __v15_1_0
+} // namespace __v16_0_0
 
   // Return the field width of a string.
   template<typename _CharT>
--- libstdc++-v3/include/bits/unicode-data.h.jj	2024-03-20 10:30:50.813986219 +0100
+++ libstdc++-v3/include/bits/unicode-data.h	2024-10-07 11:25:21.347457532 +0200
@@ -29,7 +29,7 @@
 
 #ifndef _GLIBCXX_GET_UNICODE_DATA
 # error "This is not a public header, do not include it directly"
-#elif _GLIBCXX_GET_UNICODE_DATA != 150100
+#elif _GLIBCXX_GET_UNICODE_DATA != 160000
 # error "Version mismatch for Unicode static data"
 #endif
 
@@ -38,29 +38,30 @@
   inline constexpr char32_t __width_edges[] = {
     0x1100, 0x1160, 0x231a, 0x231c, 0x2329, 0x232b, 0x23e9, 0x23ed,
     0x23f0, 0x23f1, 0x23f3, 0x23f4, 0x25fd, 0x25ff, 0x2614, 0x2616,
-    0x2648, 0x2654, 0x267f, 0x2680, 0x2693, 0x2694, 0x26a1, 0x26a2,
-    0x26aa, 0x26ac, 0x26bd, 0x26bf, 0x26c4, 0x26c6, 0x26ce, 0x26cf,
-    0x26d4, 0x26d5, 0x26ea, 0x26eb, 0x26f2, 0x26f4, 0x26f5, 0x26f6,
-    0x26fa, 0x26fb, 0x26fd, 0x26fe, 0x2705, 0x2706, 0x270a, 0x270c,
-    0x2728, 0x2729, 0x274c, 0x274d, 0x274e, 0x274f, 0x2753, 0x2756,
-    0x2757, 0x2758, 0x2795, 0x2798, 0x27b0, 0x27b1, 0x27bf, 0x27c0,
-    0x2b1b, 0x2b1d, 0x2b50, 0x2b51, 0x2b55, 0x2b56, 0x2e80, 0x2e9a,
-    0x2e9b, 0x2ef4, 0x2f00, 0x2fd6, 0x2ff0, 0x303f, 0x3041, 0x3097,
-    0x3099, 0x3100, 0x3105, 0x3130, 0x3131, 0x318f, 0x3190, 0x31e4,
-    0x31ef, 0x321f, 0x3220, 0x3248, 0x3250, 0xa48d, 0xa490, 0xa4c7,
-    0xa960, 0xa97d, 0xac00, 0xd7a4, 0xf900, 0xfb00, 0xfe10, 0xfe1a,
-    0xfe30, 0xfe53, 0xfe54, 0xfe67, 0xfe68, 0xfe6c, 0xff01, 0xff61,
-    0xffe0, 0xffe7, 0x16fe0, 0x16fe5, 0x16ff0, 0x16ff2, 0x17000, 0x187f8,
-    0x18800, 0x18cd6, 0x18d00, 0x18d09, 0x1aff0, 0x1aff4, 0x1aff5, 0x1affc,
-    0x1affd, 0x1afff, 0x1b000, 0x1b123, 0x1b132, 0x1b133, 0x1b150, 0x1b153,
-    0x1b155, 0x1b156, 0x1b164, 0x1b168, 0x1b170, 0x1b2fc, 0x1f004, 0x1f005,
+    0x2630, 0x2638, 0x2648, 0x2654, 0x267f, 0x2680, 0x268a, 0x2690,
+    0x2693, 0x2694, 0x26a1, 0x26a2, 0x26aa, 0x26ac, 0x26bd, 0x26bf,
+    0x26c4, 0x26c6, 0x26ce, 0x26cf, 0x26d4, 0x26d5, 0x26ea, 0x26eb,
+    0x26f2, 0x26f4, 0x26f5, 0x26f6, 0x26fa, 0x26fb, 0x26fd, 0x26fe,
+    0x2705, 0x2706, 0x270a, 0x270c, 0x2728, 0x2729, 0x274c, 0x274d,
+    0x274e, 0x274f, 0x2753, 0x2756, 0x2757, 0x2758, 0x2795, 0x2798,
+    0x27b0, 0x27b1, 0x27bf, 0x27c0, 0x2b1b, 0x2b1d, 0x2b50, 0x2b51,
+    0x2b55, 0x2b56, 0x2e80, 0x2e9a, 0x2e9b, 0x2ef4, 0x2f00, 0x2fd6,
+    0x2ff0, 0x303f, 0x3041, 0x3097, 0x3099, 0x3100, 0x3105, 0x3130,
+    0x3131, 0x318f, 0x3190, 0x31e6, 0x31ef, 0x321f, 0x3220, 0x3248,
+    0x3250, 0xa48d, 0xa490, 0xa4c7, 0xa960, 0xa97d, 0xac00, 0xd7a4,
+    0xf900, 0xfb00, 0xfe10, 0xfe1a, 0xfe30, 0xfe53, 0xfe54, 0xfe67,
+    0xfe68, 0xfe6c, 0xff01, 0xff61, 0xffe0, 0xffe7, 0x16fe0, 0x16fe5,
+    0x16ff0, 0x16ff2, 0x17000, 0x187f8, 0x18800, 0x18cd6, 0x18cff, 0x18d09,
+    0x1aff0, 0x1aff4, 0x1aff5, 0x1affc, 0x1affd, 0x1afff, 0x1b000, 0x1b123,
+    0x1b132, 0x1b133, 0x1b150, 0x1b153, 0x1b155, 0x1b156, 0x1b164, 0x1b168,
+    0x1b170, 0x1b2fc, 0x1d300, 0x1d357, 0x1d360, 0x1d377, 0x1f004, 0x1f005,
     0x1f0cf, 0x1f0d0, 0x1f18e, 0x1f18f, 0x1f191, 0x1f19b, 0x1f200, 0x1f203,
     0x1f210, 0x1f23c, 0x1f240, 0x1f249, 0x1f250, 0x1f252, 0x1f260, 0x1f266,
     0x1f300, 0x1f650, 0x1f680, 0x1f6c6, 0x1f6cc, 0x1f6cd, 0x1f6d0, 0x1f6d3,
     0x1f6d5, 0x1f6d8, 0x1f6dc, 0x1f6e0, 0x1f6eb, 0x1f6ed, 0x1f6f4, 0x1f6fd,
     0x1f7e0, 0x1f7ec, 0x1f7f0, 0x1f7f1, 0x1f900, 0x1fa00, 0x1fa70, 0x1fa7d,
-    0x1fa80, 0x1fa89, 0x1fa90, 0x1fabe, 0x1fabf, 0x1fac6, 0x1face, 0x1fadc,
-    0x1fae0, 0x1fae9, 0x1faf0, 0x1faf9, 0x20000, 0x2fffe, 0x30000, 0x3fffe,
+    0x1fa80, 0x1fa8a, 0x1fa8f, 0x1fac7, 0x1face, 0x1fadd, 0x1fadf, 0x1faea,
+    0x1faf0, 0x1faf9, 0x20000, 0x2fffe, 0x30000, 0x3fffe,
   };
 
   enum class _Gcb_property {
@@ -96,7 +97,7 @@
     0x74b0, 0x7a64, 0x7b10, 0x7eb4, 0x7f40, 0x7fd4,
     0x7fe0, 0x8164, 0x81a0, 0x81b4, 0x8240, 0x8254,
     0x8280, 0x8294, 0x82e0, 0x8594, 0x85c0, 0x8905,
-    0x8920, 0x8984, 0x8a00, 0x8ca4, 0x8e25, 0x8e34,
+    0x8920, 0x8974, 0x8a00, 0x8ca4, 0x8e25, 0x8e34,
     0x9036, 0x9040, 0x93a4, 0x93b6, 0x93c4, 0x93d0,
     0x93e6, 0x9414, 0x9496, 0x94d4, 0x94e6, 0x9500,
     0x9514, 0x9580, 0x9624, 0x9640, 0x9814, 0x9826,
@@ -118,202 +119,201 @@
     0xc3c4, 0xc3d0, 0xc3e4, 0xc416, 0xc450, 0xc464,
     0xc490, 0xc4a4, 0xc4e0, 0xc554, 0xc570, 0xc624,
     0xc640, 0xc814, 0xc826, 0xc840, 0xcbc4, 0xcbd0,
-    0xcbe6, 0xcbf4, 0xcc06, 0xcc24, 0xcc36, 0xcc50,
-    0xcc64, 0xcc76, 0xcc90, 0xcca6, 0xccc4, 0xcce0,
-    0xcd54, 0xcd70, 0xce24, 0xce40, 0xcf36, 0xcf40,
-    0xd004, 0xd026, 0xd040, 0xd3b4, 0xd3d0, 0xd3e4,
-    0xd3f6, 0xd414, 0xd450, 0xd466, 0xd490, 0xd4a6,
-    0xd4d4, 0xd4e5, 0xd4f0, 0xd574, 0xd580, 0xd624,
-    0xd640, 0xd814, 0xd826, 0xd840, 0xdca4, 0xdcb0,
-    0xdcf4, 0xdd06, 0xdd24, 0xdd50, 0xdd64, 0xdd70,
-    0xdd86, 0xddf4, 0xde00, 0xdf26, 0xdf40, 0xe314,
-    0xe320, 0xe336, 0xe344, 0xe3b0, 0xe474, 0xe4f0,
-    0xeb14, 0xeb20, 0xeb36, 0xeb44, 0xebd0, 0xec84,
-    0xecf0, 0xf184, 0xf1a0, 0xf354, 0xf360, 0xf374,
-    0xf380, 0xf394, 0xf3a0, 0xf3e6, 0xf400, 0xf714,
-    0xf7f6, 0xf804, 0xf850, 0xf864, 0xf880, 0xf8d4,
-    0xf980, 0xf994, 0xfbd0, 0xfc64, 0xfc70, 0x102d4,
-    0x10316, 0x10324, 0x10380, 0x10394, 0x103b6, 0x103d4,
-    0x103f0, 0x10566, 0x10584, 0x105a0, 0x105e4, 0x10610,
-    0x10714, 0x10750, 0x10824, 0x10830, 0x10846, 0x10854,
-    0x10870, 0x108d4, 0x108e0, 0x109d4, 0x109e0, 0x11007,
-    0x11608, 0x11a89, 0x12000, 0x135d4, 0x13600, 0x17124,
-    0x17156, 0x17160, 0x17324, 0x17346, 0x17350, 0x17524,
-    0x17540, 0x17724, 0x17740, 0x17b44, 0x17b66, 0x17b74,
-    0x17be6, 0x17c64, 0x17c76, 0x17c94, 0x17d40, 0x17dd4,
-    0x17de0, 0x180b4, 0x180e1, 0x180f4, 0x18100, 0x18854,
-    0x18870, 0x18a94, 0x18aa0, 0x19204, 0x19236, 0x19274,
-    0x19296, 0x192c0, 0x19306, 0x19324, 0x19336, 0x19394,
-    0x193c0, 0x1a174, 0x1a196, 0x1a1b4, 0x1a1c0, 0x1a556,
-    0x1a564, 0x1a576, 0x1a584, 0x1a5f0, 0x1a604, 0x1a610,
-    0x1a624, 0x1a630, 0x1a654, 0x1a6d6, 0x1a734, 0x1a7d0,
-    0x1a7f4, 0x1a800, 0x1ab04, 0x1acf0, 0x1b004, 0x1b046,
-    0x1b050, 0x1b344, 0x1b3b6, 0x1b3c4, 0x1b3d6, 0x1b424,
-    0x1b436, 0x1b450, 0x1b6b4, 0x1b740, 0x1b804, 0x1b826,
-    0x1b830, 0x1ba16, 0x1ba24, 0x1ba66, 0x1ba84, 0x1baa6,
-    0x1bab4, 0x1bae0, 0x1be64, 0x1be76, 0x1be84, 0x1bea6,
-    0x1bed4, 0x1bee6, 0x1bef4, 0x1bf26, 0x1bf40, 0x1c246,
-    0x1c2c4, 0x1c346, 0x1c364, 0x1c380, 0x1cd04, 0x1cd30,
-    0x1cd44, 0x1ce16, 0x1ce24, 0x1ce90, 0x1ced4, 0x1cee0,
-    0x1cf44, 0x1cf50, 0x1cf76, 0x1cf84, 0x1cfa0, 0x1dc04,
-    0x1e000, 0x200b1, 0x200c4, 0x200da, 0x200e1, 0x20100,
-    0x20281, 0x202f0, 0x20601, 0x20700, 0x20d04, 0x20f10,
-    0x2cef4, 0x2cf20, 0x2d7f4, 0x2d800, 0x2de04, 0x2e000,
-    0x302a4, 0x30300, 0x30994, 0x309b0, 0xa66f4, 0xa6730,
-    0xa6744, 0xa67e0, 0xa69e4, 0xa6a00, 0xa6f04, 0xa6f20,
-    0xa8024, 0xa8030, 0xa8064, 0xa8070, 0xa80b4, 0xa80c0,
-    0xa8236, 0xa8254, 0xa8276, 0xa8280, 0xa82c4, 0xa82d0,
-    0xa8806, 0xa8820, 0xa8b46, 0xa8c44, 0xa8c60, 0xa8e04,
-    0xa8f20, 0xa8ff4, 0xa9000, 0xa9264, 0xa92e0, 0xa9474,
-    0xa9526, 0xa9540, 0xa9607, 0xa97d0, 0xa9804, 0xa9836,
-    0xa9840, 0xa9b34, 0xa9b46, 0xa9b64, 0xa9ba6, 0xa9bc4,
-    0xa9be6, 0xa9c10, 0xa9e54, 0xa9e60, 0xaa294, 0xaa2f6,
-    0xaa314, 0xaa336, 0xaa354, 0xaa370, 0xaa434, 0xaa440,
-    0xaa4c4, 0xaa4d6, 0xaa4e0, 0xaa7c4, 0xaa7d0, 0xaab04,
-    0xaab10, 0xaab24, 0xaab50, 0xaab74, 0xaab90, 0xaabe4,
-    0xaac00, 0xaac14, 0xaac20, 0xaaeb6, 0xaaec4, 0xaaee6,
-    0xaaf00, 0xaaf56, 0xaaf64, 0xaaf70, 0xabe36, 0xabe54,
-    0xabe66, 0xabe84, 0xabe96, 0xabeb0, 0xabec6, 0xabed4,
-    0xabee0, 0xac00b, 0xac01c, 0xac1cb, 0xac1dc, 0xac38b,
-    0xac39c, 0xac54b, 0xac55c, 0xac70b, 0xac71c, 0xac8cb,
-    0xac8dc, 0xaca8b, 0xaca9c, 0xacc4b, 0xacc5c, 0xace0b,
-    0xace1c, 0xacfcb, 0xacfdc, 0xad18b, 0xad19c, 0xad34b,
-    0xad35c, 0xad50b, 0xad51c, 0xad6cb, 0xad6dc, 0xad88b,
-    0xad89c, 0xada4b, 0xada5c, 0xadc0b, 0xadc1c, 0xaddcb,
-    0xadddc, 0xadf8b, 0xadf9c, 0xae14b, 0xae15c, 0xae30b,
-    0xae31c, 0xae4cb, 0xae4dc, 0xae68b, 0xae69c, 0xae84b,
-    0xae85c, 0xaea0b, 0xaea1c, 0xaebcb, 0xaebdc, 0xaed8b,
-    0xaed9c, 0xaef4b, 0xaef5c, 0xaf10b, 0xaf11c, 0xaf2cb,
-    0xaf2dc, 0xaf48b, 0xaf49c, 0xaf64b, 0xaf65c, 0xaf80b,
-    0xaf81c, 0xaf9cb, 0xaf9dc, 0xafb8b, 0xafb9c, 0xafd4b,
-    0xafd5c, 0xaff0b, 0xaff1c, 0xb00cb, 0xb00dc, 0xb028b,
-    0xb029c, 0xb044b, 0xb045c, 0xb060b, 0xb061c, 0xb07cb,
-    0xb07dc, 0xb098b, 0xb099c, 0xb0b4b, 0xb0b5c, 0xb0d0b,
-    0xb0d1c, 0xb0ecb, 0xb0edc, 0xb108b, 0xb109c, 0xb124b,
-    0xb125c, 0xb140b, 0xb141c, 0xb15cb, 0xb15dc, 0xb178b,
-    0xb179c, 0xb194b, 0xb195c, 0xb1b0b, 0xb1b1c, 0xb1ccb,
-    0xb1cdc, 0xb1e8b, 0xb1e9c, 0xb204b, 0xb205c, 0xb220b,
-    0xb221c, 0xb23cb, 0xb23dc, 0xb258b, 0xb259c, 0xb274b,
-    0xb275c, 0xb290b, 0xb291c, 0xb2acb, 0xb2adc, 0xb2c8b,
-    0xb2c9c, 0xb2e4b, 0xb2e5c, 0xb300b, 0xb301c, 0xb31cb,
-    0xb31dc, 0xb338b, 0xb339c, 0xb354b, 0xb355c, 0xb370b,
-    0xb371c, 0xb38cb, 0xb38dc, 0xb3a8b, 0xb3a9c, 0xb3c4b,
-    0xb3c5c, 0xb3e0b, 0xb3e1c, 0xb3fcb, 0xb3fdc, 0xb418b,
-    0xb419c, 0xb434b, 0xb435c, 0xb450b, 0xb451c, 0xb46cb,
-    0xb46dc, 0xb488b, 0xb489c, 0xb4a4b, 0xb4a5c, 0xb4c0b,
-    0xb4c1c, 0xb4dcb, 0xb4ddc, 0xb4f8b, 0xb4f9c, 0xb514b,
-    0xb515c, 0xb530b, 0xb531c, 0xb54cb, 0xb54dc, 0xb568b,
-    0xb569c, 0xb584b, 0xb585c, 0xb5a0b, 0xb5a1c, 0xb5bcb,
-    0xb5bdc, 0xb5d8b, 0xb5d9c, 0xb5f4b, 0xb5f5c, 0xb610b,
-    0xb611c, 0xb62cb, 0xb62dc, 0xb648b, 0xb649c, 0xb664b,
-    0xb665c, 0xb680b, 0xb681c, 0xb69cb, 0xb69dc, 0xb6b8b,
-    0xb6b9c, 0xb6d4b, 0xb6d5c, 0xb6f0b, 0xb6f1c, 0xb70cb,
-    0xb70dc, 0xb728b, 0xb729c, 0xb744b, 0xb745c, 0xb760b,
-    0xb761c, 0xb77cb, 0xb77dc, 0xb798b, 0xb799c, 0xb7b4b,
-    0xb7b5c, 0xb7d0b, 0xb7d1c, 0xb7ecb, 0xb7edc, 0xb808b,
-    0xb809c, 0xb824b, 0xb825c, 0xb840b, 0xb841c, 0xb85cb,
-    0xb85dc, 0xb878b, 0xb879c, 0xb894b, 0xb895c, 0xb8b0b,
-    0xb8b1c, 0xb8ccb, 0xb8cdc, 0xb8e8b, 0xb8e9c, 0xb904b,
-    0xb905c, 0xb920b, 0xb921c, 0xb93cb, 0xb93dc, 0xb958b,
-    0xb959c, 0xb974b, 0xb975c, 0xb990b, 0xb991c, 0xb9acb,
-    0xb9adc, 0xb9c8b, 0xb9c9c, 0xb9e4b, 0xb9e5c, 0xba00b,
-    0xba01c, 0xba1cb, 0xba1dc, 0xba38b, 0xba39c, 0xba54b,
-    0xba55c, 0xba70b, 0xba71c, 0xba8cb, 0xba8dc, 0xbaa8b,
-    0xbaa9c, 0xbac4b, 0xbac5c, 0xbae0b, 0xbae1c, 0xbafcb,
-    0xbafdc, 0xbb18b, 0xbb19c, 0xbb34b, 0xbb35c, 0xbb50b,
-    0xbb51c, 0xbb6cb, 0xbb6dc, 0xbb88b, 0xbb89c, 0xbba4b,
-    0xbba5c, 0xbbc0b, 0xbbc1c, 0xbbdcb, 0xbbddc, 0xbbf8b,
-    0xbbf9c, 0xbc14b, 0xbc15c, 0xbc30b, 0xbc31c, 0xbc4cb,
-    0xbc4dc, 0xbc68b, 0xbc69c, 0xbc84b, 0xbc85c, 0xbca0b,
-    0xbca1c, 0xbcbcb, 0xbcbdc, 0xbcd8b, 0xbcd9c, 0xbcf4b,
-    0xbcf5c, 0xbd10b, 0xbd11c, 0xbd2cb, 0xbd2dc, 0xbd48b,
-    0xbd49c, 0xbd64b, 0xbd65c, 0xbd80b, 0xbd81c, 0xbd9cb,
-    0xbd9dc, 0xbdb8b, 0xbdb9c, 0xbdd4b, 0xbdd5c, 0xbdf0b,
-    0xbdf1c, 0xbe0cb, 0xbe0dc, 0xbe28b, 0xbe29c, 0xbe44b,
-    0xbe45c, 0xbe60b, 0xbe61c, 0xbe7cb, 0xbe7dc, 0xbe98b,
-    0xbe99c, 0xbeb4b, 0xbeb5c, 0xbed0b, 0xbed1c, 0xbeecb,
-    0xbeedc, 0xbf08b, 0xbf09c, 0xbf24b, 0xbf25c, 0xbf40b,
-    0xbf41c, 0xbf5cb, 0xbf5dc, 0xbf78b, 0xbf79c, 0xbf94b,
-    0xbf95c, 0xbfb0b, 0xbfb1c, 0xbfccb, 0xbfcdc, 0xbfe8b,
-    0xbfe9c, 0xc004b, 0xc005c, 0xc020b, 0xc021c, 0xc03cb,
-    0xc03dc, 0xc058b, 0xc059c, 0xc074b, 0xc075c, 0xc090b,
-    0xc091c, 0xc0acb, 0xc0adc, 0xc0c8b, 0xc0c9c, 0xc0e4b,
-    0xc0e5c, 0xc100b, 0xc101c, 0xc11cb, 0xc11dc, 0xc138b,
-    0xc139c, 0xc154b, 0xc155c, 0xc170b, 0xc171c, 0xc18cb,
-    0xc18dc, 0xc1a8b, 0xc1a9c, 0xc1c4b, 0xc1c5c, 0xc1e0b,
-    0xc1e1c, 0xc1fcb, 0xc1fdc, 0xc218b, 0xc219c, 0xc234b,
-    0xc235c, 0xc250b, 0xc251c, 0xc26cb, 0xc26dc, 0xc288b,
-    0xc289c, 0xc2a4b, 0xc2a5c, 0xc2c0b, 0xc2c1c, 0xc2dcb,
-    0xc2ddc, 0xc2f8b, 0xc2f9c, 0xc314b, 0xc315c, 0xc330b,
-    0xc331c, 0xc34cb, 0xc34dc, 0xc368b, 0xc369c, 0xc384b,
-    0xc385c, 0xc3a0b, 0xc3a1c, 0xc3bcb, 0xc3bdc, 0xc3d8b,
-    0xc3d9c, 0xc3f4b, 0xc3f5c, 0xc410b, 0xc411c, 0xc42cb,
-    0xc42dc, 0xc448b, 0xc449c, 0xc464b, 0xc465c, 0xc480b,
-    0xc481c, 0xc49cb, 0xc49dc, 0xc4b8b, 0xc4b9c, 0xc4d4b,
-    0xc4d5c, 0xc4f0b, 0xc4f1c, 0xc50cb, 0xc50dc, 0xc528b,
-    0xc529c, 0xc544b, 0xc545c, 0xc560b, 0xc561c, 0xc57cb,
-    0xc57dc, 0xc598b, 0xc599c, 0xc5b4b, 0xc5b5c, 0xc5d0b,
-    0xc5d1c, 0xc5ecb, 0xc5edc, 0xc608b, 0xc609c, 0xc624b,
-    0xc625c, 0xc640b, 0xc641c, 0xc65cb, 0xc65dc, 0xc678b,
-    0xc679c, 0xc694b, 0xc695c, 0xc6b0b, 0xc6b1c, 0xc6ccb,
-    0xc6cdc, 0xc6e8b, 0xc6e9c, 0xc704b, 0xc705c, 0xc720b,
-    0xc721c, 0xc73cb, 0xc73dc, 0xc758b, 0xc759c, 0xc774b,
-    0xc775c, 0xc790b, 0xc791c, 0xc7acb, 0xc7adc, 0xc7c8b,
-    0xc7c9c, 0xc7e4b, 0xc7e5c, 0xc800b, 0xc801c, 0xc81cb,
-    0xc81dc, 0xc838b, 0xc839c, 0xc854b, 0xc855c, 0xc870b,
-    0xc871c, 0xc88cb, 0xc88dc, 0xc8a8b, 0xc8a9c, 0xc8c4b,
-    0xc8c5c, 0xc8e0b, 0xc8e1c, 0xc8fcb, 0xc8fdc, 0xc918b,
-    0xc919c, 0xc934b, 0xc935c, 0xc950b, 0xc951c, 0xc96cb,
-    0xc96dc, 0xc988b, 0xc989c, 0xc9a4b, 0xc9a5c, 0xc9c0b,
-    0xc9c1c, 0xc9dcb, 0xc9ddc, 0xc9f8b, 0xc9f9c, 0xca14b,
-    0xca15c, 0xca30b, 0xca31c, 0xca4cb, 0xca4dc, 0xca68b,
-    0xca69c, 0xca84b, 0xca85c, 0xcaa0b, 0xcaa1c, 0xcabcb,
-    0xcabdc, 0xcad8b, 0xcad9c, 0xcaf4b, 0xcaf5c, 0xcb10b,
-    0xcb11c, 0xcb2cb, 0xcb2dc, 0xcb48b, 0xcb49c, 0xcb64b,
-    0xcb65c, 0xcb80b, 0xcb81c, 0xcb9cb, 0xcb9dc, 0xcbb8b,
-    0xcbb9c, 0xcbd4b, 0xcbd5c, 0xcbf0b, 0xcbf1c, 0xcc0cb,
-    0xcc0dc, 0xcc28b, 0xcc29c, 0xcc44b, 0xcc45c, 0xcc60b,
-    0xcc61c, 0xcc7cb, 0xcc7dc, 0xcc98b, 0xcc99c, 0xccb4b,
-    0xccb5c, 0xccd0b, 0xccd1c, 0xccecb, 0xccedc, 0xcd08b,
-    0xcd09c, 0xcd24b, 0xcd25c, 0xcd40b, 0xcd41c, 0xcd5cb,
-    0xcd5dc, 0xcd78b, 0xcd79c, 0xcd94b, 0xcd95c, 0xcdb0b,
-    0xcdb1c, 0xcdccb, 0xcdcdc, 0xcde8b, 0xcde9c, 0xce04b,
-    0xce05c, 0xce20b, 0xce21c, 0xce3cb, 0xce3dc, 0xce58b,
-    0xce59c, 0xce74b, 0xce75c, 0xce90b, 0xce91c, 0xceacb,
-    0xceadc, 0xcec8b, 0xcec9c, 0xcee4b, 0xcee5c, 0xcf00b,
-    0xcf01c, 0xcf1cb, 0xcf1dc, 0xcf38b, 0xcf39c, 0xcf54b,
-    0xcf55c, 0xcf70b, 0xcf71c, 0xcf8cb, 0xcf8dc, 0xcfa8b,
-    0xcfa9c, 0xcfc4b, 0xcfc5c, 0xcfe0b, 0xcfe1c, 0xcffcb,
-    0xcffdc, 0xd018b, 0xd019c, 0xd034b, 0xd035c, 0xd050b,
-    0xd051c, 0xd06cb, 0xd06dc, 0xd088b, 0xd089c, 0xd0a4b,
-    0xd0a5c, 0xd0c0b, 0xd0c1c, 0xd0dcb, 0xd0ddc, 0xd0f8b,
-    0xd0f9c, 0xd114b, 0xd115c, 0xd130b, 0xd131c, 0xd14cb,
-    0xd14dc, 0xd168b, 0xd169c, 0xd184b, 0xd185c, 0xd1a0b,
-    0xd1a1c, 0xd1bcb, 0xd1bdc, 0xd1d8b, 0xd1d9c, 0xd1f4b,
-    0xd1f5c, 0xd210b, 0xd211c, 0xd22cb, 0xd22dc, 0xd248b,
-    0xd249c, 0xd264b, 0xd265c, 0xd280b, 0xd281c, 0xd29cb,
-    0xd29dc, 0xd2b8b, 0xd2b9c, 0xd2d4b, 0xd2d5c, 0xd2f0b,
-    0xd2f1c, 0xd30cb, 0xd30dc, 0xd328b, 0xd329c, 0xd344b,
-    0xd345c, 0xd360b, 0xd361c, 0xd37cb, 0xd37dc, 0xd398b,
-    0xd399c, 0xd3b4b, 0xd3b5c, 0xd3d0b, 0xd3d1c, 0xd3ecb,
-    0xd3edc, 0xd408b, 0xd409c, 0xd424b, 0xd425c, 0xd440b,
-    0xd441c, 0xd45cb, 0xd45dc, 0xd478b, 0xd479c, 0xd494b,
-    0xd495c, 0xd4b0b, 0xd4b1c, 0xd4ccb, 0xd4cdc, 0xd4e8b,
-    0xd4e9c, 0xd504b, 0xd505c, 0xd520b, 0xd521c, 0xd53cb,
-    0xd53dc, 0xd558b, 0xd559c, 0xd574b, 0xd575c, 0xd590b,
-    0xd591c, 0xd5acb, 0xd5adc, 0xd5c8b, 0xd5c9c, 0xd5e4b,
-    0xd5e5c, 0xd600b, 0xd601c, 0xd61cb, 0xd61dc, 0xd638b,
-    0xd639c, 0xd654b, 0xd655c, 0xd670b, 0xd671c, 0xd68cb,
-    0xd68dc, 0xd6a8b, 0xd6a9c, 0xd6c4b, 0xd6c5c, 0xd6e0b,
-    0xd6e1c, 0xd6fcb, 0xd6fdc, 0xd718b, 0xd719c, 0xd734b,
-    0xd735c, 0xd750b, 0xd751c, 0xd76cb, 0xd76dc, 0xd788b,
-    0xd789c, 0xd7a40, 0xd7b08, 0xd7c70, 0xd7cb9, 0xd7fc0,
-    0xfb1e4, 0xfb1f0, 0xfe004, 0xfe100, 0xfe204, 0xfe300,
-    0xfeff1, 0xff000, 0xff9e4, 0xffa00, 0xfff01, 0xfffc0,
-    0x101fd4, 0x101fe0, 0x102e04, 0x102e10, 0x103764, 0x1037b0,
-    0x10a014, 0x10a040, 0x10a054, 0x10a070, 0x10a0c4, 0x10a100,
-    0x10a384, 0x10a3b0, 0x10a3f4, 0x10a400, 0x10ae54, 0x10ae70,
-    0x10d244, 0x10d280, 0x10eab4, 0x10ead0, 0x10efd4, 0x10f000,
+    0xcbe6, 0xcbf4, 0xcc16, 0xcc24, 0xcc36, 0xcc50,
+    0xcc64, 0xcc90, 0xcca4, 0xcce0, 0xcd54, 0xcd70,
+    0xce24, 0xce40, 0xcf36, 0xcf40, 0xd004, 0xd026,
+    0xd040, 0xd3b4, 0xd3d0, 0xd3e4, 0xd3f6, 0xd414,
+    0xd450, 0xd466, 0xd490, 0xd4a6, 0xd4d4, 0xd4e5,
+    0xd4f0, 0xd574, 0xd580, 0xd624, 0xd640, 0xd814,
+    0xd826, 0xd840, 0xdca4, 0xdcb0, 0xdcf4, 0xdd06,
+    0xdd24, 0xdd50, 0xdd64, 0xdd70, 0xdd86, 0xddf4,
+    0xde00, 0xdf26, 0xdf40, 0xe314, 0xe320, 0xe336,
+    0xe344, 0xe3b0, 0xe474, 0xe4f0, 0xeb14, 0xeb20,
+    0xeb36, 0xeb44, 0xebd0, 0xec84, 0xecf0, 0xf184,
+    0xf1a0, 0xf354, 0xf360, 0xf374, 0xf380, 0xf394,
+    0xf3a0, 0xf3e6, 0xf400, 0xf714, 0xf7f6, 0xf804,
+    0xf850, 0xf864, 0xf880, 0xf8d4, 0xf980, 0xf994,
+    0xfbd0, 0xfc64, 0xfc70, 0x102d4, 0x10316, 0x10324,
+    0x10380, 0x10394, 0x103b6, 0x103d4, 0x103f0, 0x10566,
+    0x10584, 0x105a0, 0x105e4, 0x10610, 0x10714, 0x10750,
+    0x10824, 0x10830, 0x10846, 0x10854, 0x10870, 0x108d4,
+    0x108e0, 0x109d4, 0x109e0, 0x11007, 0x11608, 0x11a89,
+    0x12000, 0x135d4, 0x13600, 0x17124, 0x17160, 0x17324,
+    0x17350, 0x17524, 0x17540, 0x17724, 0x17740, 0x17b44,
+    0x17b66, 0x17b74, 0x17be6, 0x17c64, 0x17c76, 0x17c94,
+    0x17d40, 0x17dd4, 0x17de0, 0x180b4, 0x180e1, 0x180f4,
+    0x18100, 0x18854, 0x18870, 0x18a94, 0x18aa0, 0x19204,
+    0x19236, 0x19274, 0x19296, 0x192c0, 0x19306, 0x19324,
+    0x19336, 0x19394, 0x193c0, 0x1a174, 0x1a196, 0x1a1b4,
+    0x1a1c0, 0x1a556, 0x1a564, 0x1a576, 0x1a584, 0x1a5f0,
+    0x1a604, 0x1a610, 0x1a624, 0x1a630, 0x1a654, 0x1a6d6,
+    0x1a734, 0x1a7d0, 0x1a7f4, 0x1a800, 0x1ab04, 0x1acf0,
+    0x1b004, 0x1b046, 0x1b050, 0x1b344, 0x1b3e6, 0x1b424,
+    0x1b450, 0x1b6b4, 0x1b740, 0x1b804, 0x1b826, 0x1b830,
+    0x1ba16, 0x1ba24, 0x1ba66, 0x1ba84, 0x1bae0, 0x1be64,
+    0x1be76, 0x1be84, 0x1bea6, 0x1bed4, 0x1bee6, 0x1bef4,
+    0x1bf40, 0x1c246, 0x1c2c4, 0x1c346, 0x1c364, 0x1c380,
+    0x1cd04, 0x1cd30, 0x1cd44, 0x1ce16, 0x1ce24, 0x1ce90,
+    0x1ced4, 0x1cee0, 0x1cf44, 0x1cf50, 0x1cf76, 0x1cf84,
+    0x1cfa0, 0x1dc04, 0x1e000, 0x200b1, 0x200c4, 0x200da,
+    0x200e1, 0x20100, 0x20281, 0x202f0, 0x20601, 0x20700,
+    0x20d04, 0x20f10, 0x2cef4, 0x2cf20, 0x2d7f4, 0x2d800,
+    0x2de04, 0x2e000, 0x302a4, 0x30300, 0x30994, 0x309b0,
+    0xa66f4, 0xa6730, 0xa6744, 0xa67e0, 0xa69e4, 0xa6a00,
+    0xa6f04, 0xa6f20, 0xa8024, 0xa8030, 0xa8064, 0xa8070,
+    0xa80b4, 0xa80c0, 0xa8236, 0xa8254, 0xa8276, 0xa8280,
+    0xa82c4, 0xa82d0, 0xa8806, 0xa8820, 0xa8b46, 0xa8c44,
+    0xa8c60, 0xa8e04, 0xa8f20, 0xa8ff4, 0xa9000, 0xa9264,
+    0xa92e0, 0xa9474, 0xa9526, 0xa9534, 0xa9540, 0xa9607,
+    0xa97d0, 0xa9804, 0xa9836, 0xa9840, 0xa9b34, 0xa9b46,
+    0xa9b64, 0xa9ba6, 0xa9bc4, 0xa9be6, 0xa9c04, 0xa9c10,
+    0xa9e54, 0xa9e60, 0xaa294, 0xaa2f6, 0xaa314, 0xaa336,
+    0xaa354, 0xaa370, 0xaa434, 0xaa440, 0xaa4c4, 0xaa4d6,
+    0xaa4e0, 0xaa7c4, 0xaa7d0, 0xaab04, 0xaab10, 0xaab24,
+    0xaab50, 0xaab74, 0xaab90, 0xaabe4, 0xaac00, 0xaac14,
+    0xaac20, 0xaaeb6, 0xaaec4, 0xaaee6, 0xaaf00, 0xaaf56,
+    0xaaf64, 0xaaf70, 0xabe36, 0xabe54, 0xabe66, 0xabe84,
+    0xabe96, 0xabeb0, 0xabec6, 0xabed4, 0xabee0, 0xac00b,
+    0xac01c, 0xac1cb, 0xac1dc, 0xac38b, 0xac39c, 0xac54b,
+    0xac55c, 0xac70b, 0xac71c, 0xac8cb, 0xac8dc, 0xaca8b,
+    0xaca9c, 0xacc4b, 0xacc5c, 0xace0b, 0xace1c, 0xacfcb,
+    0xacfdc, 0xad18b, 0xad19c, 0xad34b, 0xad35c, 0xad50b,
+    0xad51c, 0xad6cb, 0xad6dc, 0xad88b, 0xad89c, 0xada4b,
+    0xada5c, 0xadc0b, 0xadc1c, 0xaddcb, 0xadddc, 0xadf8b,
+    0xadf9c, 0xae14b, 0xae15c, 0xae30b, 0xae31c, 0xae4cb,
+    0xae4dc, 0xae68b, 0xae69c, 0xae84b, 0xae85c, 0xaea0b,
+    0xaea1c, 0xaebcb, 0xaebdc, 0xaed8b, 0xaed9c, 0xaef4b,
+    0xaef5c, 0xaf10b, 0xaf11c, 0xaf2cb, 0xaf2dc, 0xaf48b,
+    0xaf49c, 0xaf64b, 0xaf65c, 0xaf80b, 0xaf81c, 0xaf9cb,
+    0xaf9dc, 0xafb8b, 0xafb9c, 0xafd4b, 0xafd5c, 0xaff0b,
+    0xaff1c, 0xb00cb, 0xb00dc, 0xb028b, 0xb029c, 0xb044b,
+    0xb045c, 0xb060b, 0xb061c, 0xb07cb, 0xb07dc, 0xb098b,
+    0xb099c, 0xb0b4b, 0xb0b5c, 0xb0d0b, 0xb0d1c, 0xb0ecb,
+    0xb0edc, 0xb108b, 0xb109c, 0xb124b, 0xb125c, 0xb140b,
+    0xb141c, 0xb15cb, 0xb15dc, 0xb178b, 0xb179c, 0xb194b,
+    0xb195c, 0xb1b0b, 0xb1b1c, 0xb1ccb, 0xb1cdc, 0xb1e8b,
+    0xb1e9c, 0xb204b, 0xb205c, 0xb220b, 0xb221c, 0xb23cb,
+    0xb23dc, 0xb258b, 0xb259c, 0xb274b, 0xb275c, 0xb290b,
+    0xb291c, 0xb2acb, 0xb2adc, 0xb2c8b, 0xb2c9c, 0xb2e4b,
+    0xb2e5c, 0xb300b, 0xb301c, 0xb31cb, 0xb31dc, 0xb338b,
+    0xb339c, 0xb354b, 0xb355c, 0xb370b, 0xb371c, 0xb38cb,
+    0xb38dc, 0xb3a8b, 0xb3a9c, 0xb3c4b, 0xb3c5c, 0xb3e0b,
+    0xb3e1c, 0xb3fcb, 0xb3fdc, 0xb418b, 0xb419c, 0xb434b,
+    0xb435c, 0xb450b, 0xb451c, 0xb46cb, 0xb46dc, 0xb488b,
+    0xb489c, 0xb4a4b, 0xb4a5c, 0xb4c0b, 0xb4c1c, 0xb4dcb,
+    0xb4ddc, 0xb4f8b, 0xb4f9c, 0xb514b, 0xb515c, 0xb530b,
+    0xb531c, 0xb54cb, 0xb54dc, 0xb568b, 0xb569c, 0xb584b,
+    0xb585c, 0xb5a0b, 0xb5a1c, 0xb5bcb, 0xb5bdc, 0xb5d8b,
+    0xb5d9c, 0xb5f4b, 0xb5f5c, 0xb610b, 0xb611c, 0xb62cb,
+    0xb62dc, 0xb648b, 0xb649c, 0xb664b, 0xb665c, 0xb680b,
+    0xb681c, 0xb69cb, 0xb69dc, 0xb6b8b, 0xb6b9c, 0xb6d4b,
+    0xb6d5c, 0xb6f0b, 0xb6f1c, 0xb70cb, 0xb70dc, 0xb728b,
+    0xb729c, 0xb744b, 0xb745c, 0xb760b, 0xb761c, 0xb77cb,
+    0xb77dc, 0xb798b, 0xb799c, 0xb7b4b, 0xb7b5c, 0xb7d0b,
+    0xb7d1c, 0xb7ecb, 0xb7edc, 0xb808b, 0xb809c, 0xb824b,
+    0xb825c, 0xb840b, 0xb841c, 0xb85cb, 0xb85dc, 0xb878b,
+    0xb879c, 0xb894b, 0xb895c, 0xb8b0b, 0xb8b1c, 0xb8ccb,
+    0xb8cdc, 0xb8e8b, 0xb8e9c, 0xb904b, 0xb905c, 0xb920b,
+    0xb921c, 0xb93cb, 0xb93dc, 0xb958b, 0xb959c, 0xb974b,
+    0xb975c, 0xb990b, 0xb991c, 0xb9acb, 0xb9adc, 0xb9c8b,
+    0xb9c9c, 0xb9e4b, 0xb9e5c, 0xba00b, 0xba01c, 0xba1cb,
+    0xba1dc, 0xba38b, 0xba39c, 0xba54b, 0xba55c, 0xba70b,
+    0xba71c, 0xba8cb, 0xba8dc, 0xbaa8b, 0xbaa9c, 0xbac4b,
+    0xbac5c, 0xbae0b, 0xbae1c, 0xbafcb, 0xbafdc, 0xbb18b,
+    0xbb19c, 0xbb34b, 0xbb35c, 0xbb50b, 0xbb51c, 0xbb6cb,
+    0xbb6dc, 0xbb88b, 0xbb89c, 0xbba4b, 0xbba5c, 0xbbc0b,
+    0xbbc1c, 0xbbdcb, 0xbbddc, 0xbbf8b, 0xbbf9c, 0xbc14b,
+    0xbc15c, 0xbc30b, 0xbc31c, 0xbc4cb, 0xbc4dc, 0xbc68b,
+    0xbc69c, 0xbc84b, 0xbc85c, 0xbca0b, 0xbca1c, 0xbcbcb,
+    0xbcbdc, 0xbcd8b, 0xbcd9c, 0xbcf4b, 0xbcf5c, 0xbd10b,
+    0xbd11c, 0xbd2cb, 0xbd2dc, 0xbd48b, 0xbd49c, 0xbd64b,
+    0xbd65c, 0xbd80b, 0xbd81c, 0xbd9cb, 0xbd9dc, 0xbdb8b,
+    0xbdb9c, 0xbdd4b, 0xbdd5c, 0xbdf0b, 0xbdf1c, 0xbe0cb,
+    0xbe0dc, 0xbe28b, 0xbe29c, 0xbe44b, 0xbe45c, 0xbe60b,
+    0xbe61c, 0xbe7cb, 0xbe7dc, 0xbe98b, 0xbe99c, 0xbeb4b,
+    0xbeb5c, 0xbed0b, 0xbed1c, 0xbeecb, 0xbeedc, 0xbf08b,
+    0xbf09c, 0xbf24b, 0xbf25c, 0xbf40b, 0xbf41c, 0xbf5cb,
+    0xbf5dc, 0xbf78b, 0xbf79c, 0xbf94b, 0xbf95c, 0xbfb0b,
+    0xbfb1c, 0xbfccb, 0xbfcdc, 0xbfe8b, 0xbfe9c, 0xc004b,
+    0xc005c, 0xc020b, 0xc021c, 0xc03cb, 0xc03dc, 0xc058b,
+    0xc059c, 0xc074b, 0xc075c, 0xc090b, 0xc091c, 0xc0acb,
+    0xc0adc, 0xc0c8b, 0xc0c9c, 0xc0e4b, 0xc0e5c, 0xc100b,
+    0xc101c, 0xc11cb, 0xc11dc, 0xc138b, 0xc139c, 0xc154b,
+    0xc155c, 0xc170b, 0xc171c, 0xc18cb, 0xc18dc, 0xc1a8b,
+    0xc1a9c, 0xc1c4b, 0xc1c5c, 0xc1e0b, 0xc1e1c, 0xc1fcb,
+    0xc1fdc, 0xc218b, 0xc219c, 0xc234b, 0xc235c, 0xc250b,
+    0xc251c, 0xc26cb, 0xc26dc, 0xc288b, 0xc289c, 0xc2a4b,
+    0xc2a5c, 0xc2c0b, 0xc2c1c, 0xc2dcb, 0xc2ddc, 0xc2f8b,
+    0xc2f9c, 0xc314b, 0xc315c, 0xc330b, 0xc331c, 0xc34cb,
+    0xc34dc, 0xc368b, 0xc369c, 0xc384b, 0xc385c, 0xc3a0b,
+    0xc3a1c, 0xc3bcb, 0xc3bdc, 0xc3d8b, 0xc3d9c, 0xc3f4b,
+    0xc3f5c, 0xc410b, 0xc411c, 0xc42cb, 0xc42dc, 0xc448b,
+    0xc449c, 0xc464b, 0xc465c, 0xc480b, 0xc481c, 0xc49cb,
+    0xc49dc, 0xc4b8b, 0xc4b9c, 0xc4d4b, 0xc4d5c, 0xc4f0b,
+    0xc4f1c, 0xc50cb, 0xc50dc, 0xc528b, 0xc529c, 0xc544b,
+    0xc545c, 0xc560b, 0xc561c, 0xc57cb, 0xc57dc, 0xc598b,
+    0xc599c, 0xc5b4b, 0xc5b5c, 0xc5d0b, 0xc5d1c, 0xc5ecb,
+    0xc5edc, 0xc608b, 0xc609c, 0xc624b, 0xc625c, 0xc640b,
+    0xc641c, 0xc65cb, 0xc65dc, 0xc678b, 0xc679c, 0xc694b,
+    0xc695c, 0xc6b0b, 0xc6b1c, 0xc6ccb, 0xc6cdc, 0xc6e8b,
+    0xc6e9c, 0xc704b, 0xc705c, 0xc720b, 0xc721c, 0xc73cb,
+    0xc73dc, 0xc758b, 0xc759c, 0xc774b, 0xc775c, 0xc790b,
+    0xc791c, 0xc7acb, 0xc7adc, 0xc7c8b, 0xc7c9c, 0xc7e4b,
+    0xc7e5c, 0xc800b, 0xc801c, 0xc81cb, 0xc81dc, 0xc838b,
+    0xc839c, 0xc854b, 0xc855c, 0xc870b, 0xc871c, 0xc88cb,
+    0xc88dc, 0xc8a8b, 0xc8a9c, 0xc8c4b, 0xc8c5c, 0xc8e0b,
+    0xc8e1c, 0xc8fcb, 0xc8fdc, 0xc918b, 0xc919c, 0xc934b,
+    0xc935c, 0xc950b, 0xc951c, 0xc96cb, 0xc96dc, 0xc988b,
+    0xc989c, 0xc9a4b, 0xc9a5c, 0xc9c0b, 0xc9c1c, 0xc9dcb,
+    0xc9ddc, 0xc9f8b, 0xc9f9c, 0xca14b, 0xca15c, 0xca30b,
+    0xca31c, 0xca4cb, 0xca4dc, 0xca68b, 0xca69c, 0xca84b,
+    0xca85c, 0xcaa0b, 0xcaa1c, 0xcabcb, 0xcabdc, 0xcad8b,
+    0xcad9c, 0xcaf4b, 0xcaf5c, 0xcb10b, 0xcb11c, 0xcb2cb,
+    0xcb2dc, 0xcb48b, 0xcb49c, 0xcb64b, 0xcb65c, 0xcb80b,
+    0xcb81c, 0xcb9cb, 0xcb9dc, 0xcbb8b, 0xcbb9c, 0xcbd4b,
+    0xcbd5c, 0xcbf0b, 0xcbf1c, 0xcc0cb, 0xcc0dc, 0xcc28b,
+    0xcc29c, 0xcc44b, 0xcc45c, 0xcc60b, 0xcc61c, 0xcc7cb,
+    0xcc7dc, 0xcc98b, 0xcc99c, 0xccb4b, 0xccb5c, 0xccd0b,
+    0xccd1c, 0xccecb, 0xccedc, 0xcd08b, 0xcd09c, 0xcd24b,
+    0xcd25c, 0xcd40b, 0xcd41c, 0xcd5cb, 0xcd5dc, 0xcd78b,
+    0xcd79c, 0xcd94b, 0xcd95c, 0xcdb0b, 0xcdb1c, 0xcdccb,
+    0xcdcdc, 0xcde8b, 0xcde9c, 0xce04b, 0xce05c, 0xce20b,
+    0xce21c, 0xce3cb, 0xce3dc, 0xce58b, 0xce59c, 0xce74b,
+    0xce75c, 0xce90b, 0xce91c, 0xceacb, 0xceadc, 0xcec8b,
+    0xcec9c, 0xcee4b, 0xcee5c, 0xcf00b, 0xcf01c, 0xcf1cb,
+    0xcf1dc, 0xcf38b, 0xcf39c, 0xcf54b, 0xcf55c, 0xcf70b,
+    0xcf71c, 0xcf8cb, 0xcf8dc, 0xcfa8b, 0xcfa9c, 0xcfc4b,
+    0xcfc5c, 0xcfe0b, 0xcfe1c, 0xcffcb, 0xcffdc, 0xd018b,
+    0xd019c, 0xd034b, 0xd035c, 0xd050b, 0xd051c, 0xd06cb,
+    0xd06dc, 0xd088b, 0xd089c, 0xd0a4b, 0xd0a5c, 0xd0c0b,
+    0xd0c1c, 0xd0dcb, 0xd0ddc, 0xd0f8b, 0xd0f9c, 0xd114b,
+    0xd115c, 0xd130b, 0xd131c, 0xd14cb, 0xd14dc, 0xd168b,
+    0xd169c, 0xd184b, 0xd185c, 0xd1a0b, 0xd1a1c, 0xd1bcb,
+    0xd1bdc, 0xd1d8b, 0xd1d9c, 0xd1f4b, 0xd1f5c, 0xd210b,
+    0xd211c, 0xd22cb, 0xd22dc, 0xd248b, 0xd249c, 0xd264b,
+    0xd265c, 0xd280b, 0xd281c, 0xd29cb, 0xd29dc, 0xd2b8b,
+    0xd2b9c, 0xd2d4b, 0xd2d5c, 0xd2f0b, 0xd2f1c, 0xd30cb,
+    0xd30dc, 0xd328b, 0xd329c, 0xd344b, 0xd345c, 0xd360b,
+    0xd361c, 0xd37cb, 0xd37dc, 0xd398b, 0xd399c, 0xd3b4b,
+    0xd3b5c, 0xd3d0b, 0xd3d1c, 0xd3ecb, 0xd3edc, 0xd408b,
+    0xd409c, 0xd424b, 0xd425c, 0xd440b, 0xd441c, 0xd45cb,
+    0xd45dc, 0xd478b, 0xd479c, 0xd494b, 0xd495c, 0xd4b0b,
+    0xd4b1c, 0xd4ccb, 0xd4cdc, 0xd4e8b, 0xd4e9c, 0xd504b,
+    0xd505c, 0xd520b, 0xd521c, 0xd53cb, 0xd53dc, 0xd558b,
+    0xd559c, 0xd574b, 0xd575c, 0xd590b, 0xd591c, 0xd5acb,
+    0xd5adc, 0xd5c8b, 0xd5c9c, 0xd5e4b, 0xd5e5c, 0xd600b,
+    0xd601c, 0xd61cb, 0xd61dc, 0xd638b, 0xd639c, 0xd654b,
+    0xd655c, 0xd670b, 0xd671c, 0xd68cb, 0xd68dc, 0xd6a8b,
+    0xd6a9c, 0xd6c4b, 0xd6c5c, 0xd6e0b, 0xd6e1c, 0xd6fcb,
+    0xd6fdc, 0xd718b, 0xd719c, 0xd734b, 0xd735c, 0xd750b,
+    0xd751c, 0xd76cb, 0xd76dc, 0xd788b, 0xd789c, 0xd7a40,
+    0xd7b08, 0xd7c70, 0xd7cb9, 0xd7fc0, 0xfb1e4, 0xfb1f0,
+    0xfe004, 0xfe100, 0xfe204, 0xfe300, 0xfeff1, 0xff000,
+    0xff9e4, 0xffa00, 0xfff01, 0xfffc0, 0x101fd4, 0x101fe0,
+    0x102e04, 0x102e10, 0x103764, 0x1037b0, 0x10a014, 0x10a040,
+    0x10a054, 0x10a070, 0x10a0c4, 0x10a100, 0x10a384, 0x10a3b0,
+    0x10a3f4, 0x10a400, 0x10ae54, 0x10ae70, 0x10d244, 0x10d280,
+    0x10d694, 0x10d6e0, 0x10eab4, 0x10ead0, 0x10efc4, 0x10f000,
     0x10f464, 0x10f510, 0x10f824, 0x10f860, 0x110006, 0x110014,
     0x110026, 0x110030, 0x110384, 0x110470, 0x110704, 0x110710,
     0x110734, 0x110750, 0x1107f4, 0x110826, 0x110830, 0x110b06,
@@ -321,14 +321,17 @@
     0x110c24, 0x110c30, 0x110cd5, 0x110ce0, 0x111004, 0x111030,
     0x111274, 0x1112c6, 0x1112d4, 0x111350, 0x111456, 0x111470,
     0x111734, 0x111740, 0x111804, 0x111826, 0x111830, 0x111b36,
-    0x111b64, 0x111bf6, 0x111c10, 0x111c25, 0x111c40, 0x111c94,
-    0x111cd0, 0x111ce6, 0x111cf4, 0x111d00, 0x1122c6, 0x1122f4,
-    0x112326, 0x112344, 0x112356, 0x112364, 0x112380, 0x1123e4,
-    0x1123f0, 0x112414, 0x112420, 0x112df4, 0x112e06, 0x112e34,
-    0x112eb0, 0x113004, 0x113026, 0x113040, 0x1133b4, 0x1133d0,
-    0x1133e4, 0x1133f6, 0x113404, 0x113416, 0x113450, 0x113476,
-    0x113490, 0x1134b6, 0x1134e0, 0x113574, 0x113580, 0x113626,
-    0x113640, 0x113664, 0x1136d0, 0x113704, 0x113750, 0x114356,
+    0x111b64, 0x111bf6, 0x111c04, 0x111c10, 0x111c25, 0x111c40,
+    0x111c94, 0x111cd0, 0x111ce6, 0x111cf4, 0x111d00, 0x1122c6,
+    0x1122f4, 0x112326, 0x112344, 0x112380, 0x1123e4, 0x1123f0,
+    0x112414, 0x112420, 0x112df4, 0x112e06, 0x112e34, 0x112eb0,
+    0x113004, 0x113026, 0x113040, 0x1133b4, 0x1133d0, 0x1133e4,
+    0x1133f6, 0x113404, 0x113416, 0x113450, 0x113476, 0x113490,
+    0x1134b6, 0x1134d4, 0x1134e0, 0x113574, 0x113580, 0x113626,
+    0x113640, 0x113664, 0x1136d0, 0x113704, 0x113750, 0x113b84,
+    0x113b96, 0x113bb4, 0x113c10, 0x113c24, 0x113c30, 0x113c54,
+    0x113c60, 0x113c74, 0x113ca6, 0x113cb0, 0x113cc6, 0x113ce4,
+    0x113d15, 0x113d24, 0x113d30, 0x113e14, 0x113e30, 0x114356,
     0x114384, 0x114406, 0x114424, 0x114456, 0x114464, 0x114470,
     0x1145e4, 0x1145f0, 0x114b04, 0x114b16, 0x114b34, 0x114b96,
     0x114ba4, 0x114bb6, 0x114bd4, 0x114be6, 0x114bf4, 0x114c16,
@@ -336,39 +339,40 @@
     0x115b86, 0x115bc4, 0x115be6, 0x115bf4, 0x115c10, 0x115dc4,
     0x115de0, 0x116306, 0x116334, 0x1163b6, 0x1163d4, 0x1163e6,
     0x1163f4, 0x116410, 0x116ab4, 0x116ac6, 0x116ad4, 0x116ae6,
-    0x116b04, 0x116b66, 0x116b74, 0x116b80, 0x1171d4, 0x117200,
+    0x116b04, 0x116b80, 0x1171d4, 0x1171e6, 0x1171f4, 0x117200,
     0x117224, 0x117266, 0x117274, 0x1172c0, 0x1182c6, 0x1182f4,
     0x118386, 0x118394, 0x1183b0, 0x119304, 0x119316, 0x119360,
-    0x119376, 0x119390, 0x1193b4, 0x1193d6, 0x1193e4, 0x1193f5,
-    0x119406, 0x119415, 0x119426, 0x119434, 0x119440, 0x119d16,
-    0x119d44, 0x119d80, 0x119da4, 0x119dc6, 0x119e04, 0x119e10,
-    0x119e46, 0x119e50, 0x11a014, 0x11a0b0, 0x11a334, 0x11a396,
-    0x11a3a5, 0x11a3b4, 0x11a3f0, 0x11a474, 0x11a480, 0x11a514,
-    0x11a576, 0x11a594, 0x11a5c0, 0x11a845, 0x11a8a4, 0x11a976,
-    0x11a984, 0x11a9a0, 0x11c2f6, 0x11c304, 0x11c370, 0x11c384,
-    0x11c3e6, 0x11c3f4, 0x11c400, 0x11c924, 0x11ca80, 0x11ca96,
-    0x11caa4, 0x11cb16, 0x11cb24, 0x11cb46, 0x11cb54, 0x11cb70,
-    0x11d314, 0x11d370, 0x11d3a4, 0x11d3b0, 0x11d3c4, 0x11d3e0,
-    0x11d3f4, 0x11d465, 0x11d474, 0x11d480, 0x11d8a6, 0x11d8f0,
-    0x11d904, 0x11d920, 0x11d936, 0x11d954, 0x11d966, 0x11d974,
-    0x11d980, 0x11ef34, 0x11ef56, 0x11ef70, 0x11f004, 0x11f025,
-    0x11f036, 0x11f040, 0x11f346, 0x11f364, 0x11f3b0, 0x11f3e6,
-    0x11f404, 0x11f416, 0x11f424, 0x11f430, 0x134301, 0x134404,
-    0x134410, 0x134474, 0x134560, 0x16af04, 0x16af50, 0x16b304,
-    0x16b370, 0x16f4f4, 0x16f500, 0x16f516, 0x16f880, 0x16f8f4,
-    0x16f930, 0x16fe44, 0x16fe50, 0x16ff06, 0x16ff20, 0x1bc9d4,
+    0x119376, 0x119390, 0x1193b4, 0x1193f5, 0x119406, 0x119415,
+    0x119426, 0x119434, 0x119440, 0x119d16, 0x119d44, 0x119d80,
+    0x119da4, 0x119dc6, 0x119e04, 0x119e10, 0x119e46, 0x119e50,
+    0x11a014, 0x11a0b0, 0x11a334, 0x11a396, 0x11a3a5, 0x11a3b4,
+    0x11a3f0, 0x11a474, 0x11a480, 0x11a514, 0x11a576, 0x11a594,
+    0x11a5c0, 0x11a845, 0x11a8a4, 0x11a976, 0x11a984, 0x11a9a0,
+    0x11c2f6, 0x11c304, 0x11c370, 0x11c384, 0x11c3e6, 0x11c3f4,
+    0x11c400, 0x11c924, 0x11ca80, 0x11ca96, 0x11caa4, 0x11cb16,
+    0x11cb24, 0x11cb46, 0x11cb54, 0x11cb70, 0x11d314, 0x11d370,
+    0x11d3a4, 0x11d3b0, 0x11d3c4, 0x11d3e0, 0x11d3f4, 0x11d465,
+    0x11d474, 0x11d480, 0x11d8a6, 0x11d8f0, 0x11d904, 0x11d920,
+    0x11d936, 0x11d954, 0x11d966, 0x11d974, 0x11d980, 0x11ef34,
+    0x11ef56, 0x11ef70, 0x11f004, 0x11f025, 0x11f036, 0x11f040,
+    0x11f346, 0x11f364, 0x11f3b0, 0x11f3e6, 0x11f404, 0x11f430,
+    0x11f5a4, 0x11f5b0, 0x134301, 0x134404, 0x134410, 0x134474,
+    0x134560, 0x1611e4, 0x1612a6, 0x1612d4, 0x161300, 0x16af04,
+    0x16af50, 0x16b304, 0x16b370, 0x16d638, 0x16d640, 0x16d678,
+    0x16d6b0, 0x16f4f4, 0x16f500, 0x16f516, 0x16f880, 0x16f8f4,
+    0x16f930, 0x16fe44, 0x16fe50, 0x16ff04, 0x16ff20, 0x1bc9d4,
     0x1bc9f0, 0x1bca01, 0x1bca40, 0x1cf004, 0x1cf2e0, 0x1cf304,
-    0x1cf470, 0x1d1654, 0x1d1666, 0x1d1674, 0x1d16a0, 0x1d16d6,
-    0x1d16e4, 0x1d1731, 0x1d17b4, 0x1d1830, 0x1d1854, 0x1d18c0,
-    0x1d1aa4, 0x1d1ae0, 0x1d2424, 0x1d2450, 0x1da004, 0x1da370,
-    0x1da3b4, 0x1da6d0, 0x1da754, 0x1da760, 0x1da844, 0x1da850,
-    0x1da9b4, 0x1daa00, 0x1daa14, 0x1dab00, 0x1e0004, 0x1e0070,
-    0x1e0084, 0x1e0190, 0x1e01b4, 0x1e0220, 0x1e0234, 0x1e0250,
-    0x1e0264, 0x1e02b0, 0x1e08f4, 0x1e0900, 0x1e1304, 0x1e1370,
-    0x1e2ae4, 0x1e2af0, 0x1e2ec4, 0x1e2f00, 0x1e4ec4, 0x1e4f00,
-    0x1e8d04, 0x1e8d70, 0x1e9444, 0x1e94b0, 0x1f1e6d, 0x1f2000,
-    0x1f3fb4, 0x1f4000, 0xe00001, 0xe00204, 0xe00801, 0xe01004,
-    0xe01f01, 0xe10000,
+    0x1cf470, 0x1d1654, 0x1d16a0, 0x1d16d4, 0x1d1731, 0x1d17b4,
+    0x1d1830, 0x1d1854, 0x1d18c0, 0x1d1aa4, 0x1d1ae0, 0x1d2424,
+    0x1d2450, 0x1da004, 0x1da370, 0x1da3b4, 0x1da6d0, 0x1da754,
+    0x1da760, 0x1da844, 0x1da850, 0x1da9b4, 0x1daa00, 0x1daa14,
+    0x1dab00, 0x1e0004, 0x1e0070, 0x1e0084, 0x1e0190, 0x1e01b4,
+    0x1e0220, 0x1e0234, 0x1e0250, 0x1e0264, 0x1e02b0, 0x1e08f4,
+    0x1e0900, 0x1e1304, 0x1e1370, 0x1e2ae4, 0x1e2af0, 0x1e2ec4,
+    0x1e2f00, 0x1e4ec4, 0x1e4f00, 0x1e5ee4, 0x1e5f00, 0x1e8d04,
+    0x1e8d70, 0x1e9444, 0x1e94b0, 0x1f1e6d, 0x1f2000, 0x1f3fb4,
+    0x1f4000, 0xe00001, 0xe00204, 0xe00801, 0xe01004, 0xe01f01,
+    0xe10000,
   };
 
   inline constexpr char32_t __incb_linkers[] = {
@@ -381,71 +385,138 @@
   // from DerivedCoreProperties.txt from the Unicode standard.
   // Entries are (code_point << 2) + property.
   inline constexpr uint32_t __incb_edges[] = {
-    0xc02, 0xd3c, 0xd42, 0xdc0, 0x120e, 0x1220,
-    0x1646, 0x16f8, 0x16fe, 0x1700, 0x1706, 0x170c,
-    0x1712, 0x1718, 0x171e, 0x1720, 0x1842, 0x186c,
-    0x192e, 0x1980, 0x19c2, 0x19c4, 0x1b5a, 0x1b74,
-    0x1b7e, 0x1b94, 0x1b9e, 0x1ba4, 0x1baa, 0x1bb8,
-    0x1c46, 0x1c48, 0x1cc2, 0x1d2c, 0x1fae, 0x1fd0,
+    0xc02, 0xdc0, 0x120e, 0x1228, 0x1646, 0x16f8,
+    0x16fe, 0x1700, 0x1706, 0x170c, 0x1712, 0x1718,
+    0x171e, 0x1720, 0x1842, 0x186c, 0x192e, 0x1980,
+    0x19c2, 0x19c4, 0x1b5a, 0x1b74, 0x1b7e, 0x1b94,
+    0x1b9e, 0x1ba4, 0x1baa, 0x1bb8, 0x1c46, 0x1c48,
+    0x1cc2, 0x1d2c, 0x1e9a, 0x1ec4, 0x1fae, 0x1fd0,
     0x1ff6, 0x1ff8, 0x205a, 0x2068, 0x206e, 0x2090,
     0x2096, 0x20a0, 0x20a6, 0x20b8, 0x2166, 0x2170,
-    0x2262, 0x2280, 0x232a, 0x2388, 0x238e, 0x2400,
-    0x2455, 0x24e8, 0x24f2, 0x24f4, 0x2546, 0x2554,
-    0x2561, 0x2580, 0x25e1, 0x2600, 0x2655, 0x26a4,
+    0x225e, 0x2280, 0x232a, 0x2388, 0x238e, 0x240c,
+    0x2455, 0x24ea, 0x24ec, 0x24f2, 0x24f4, 0x2506,
+    0x2524, 0x2546, 0x2561, 0x2580, 0x258a, 0x2590,
+    0x25e1, 0x2600, 0x2606, 0x2608, 0x2655, 0x26a4,
     0x26a9, 0x26c4, 0x26c9, 0x26cc, 0x26d9, 0x26e8,
-    0x26f2, 0x26f4, 0x2771, 0x2778, 0x277d, 0x2780,
-    0x27c1, 0x27c8, 0x27fa, 0x27fc, 0x28f2, 0x28f4,
+    0x26f2, 0x26f4, 0x26fa, 0x26fc, 0x2706, 0x2714,
+    0x275e, 0x2760, 0x2771, 0x2778, 0x277d, 0x2780,
+    0x278a, 0x2790, 0x27c1, 0x27c8, 0x27fa, 0x27fc,
+    0x2806, 0x280c, 0x28f2, 0x28f4, 0x2906, 0x290c,
+    0x291e, 0x2924, 0x292e, 0x2938, 0x2946, 0x2948,
+    0x29c2, 0x29c8, 0x29d6, 0x29d8, 0x2a06, 0x2a0c,
     0x2a55, 0x2aa4, 0x2aa9, 0x2ac4, 0x2ac9, 0x2ad0,
-    0x2ad5, 0x2ae8, 0x2af2, 0x2af4, 0x2be5, 0x2be8,
-    0x2c55, 0x2ca4, 0x2ca9, 0x2cc4, 0x2cc9, 0x2cd0,
-    0x2cd5, 0x2ce8, 0x2cf2, 0x2cf4, 0x2d71, 0x2d78,
-    0x2d7d, 0x2d80, 0x2dc5, 0x2dc8, 0x3055, 0x30a4,
-    0x30a9, 0x30e8, 0x30f2, 0x30f4, 0x3156, 0x315c,
-    0x3161, 0x316c, 0x32f2, 0x32f4, 0x3455, 0x34ee,
-    0x34f4, 0x38e2, 0x38ec, 0x3922, 0x3930, 0x3ae2,
-    0x3aec, 0x3b22, 0x3b30, 0x3c62, 0x3c68, 0x3cd6,
-    0x3cd8, 0x3cde, 0x3ce0, 0x3ce6, 0x3ce8, 0x3dc6,
-    0x3dcc, 0x3dd2, 0x3dd4, 0x3dea, 0x3df8, 0x3e02,
-    0x3e04, 0x3e0a, 0x3e14, 0x3e1a, 0x3e20, 0x3f1a,
-    0x3f1c, 0x40de, 0x40e0, 0x40e6, 0x40ec, 0x4236,
-    0x4238, 0x4d76, 0x4d80, 0x5c52, 0x5c54, 0x5f4a,
-    0x5f4c, 0x5f76, 0x5f78, 0x62a6, 0x62a8, 0x64e6,
-    0x64f0, 0x685e, 0x6864, 0x6982, 0x6984, 0x69d6,
-    0x69f4, 0x69fe, 0x6a00, 0x6ac2, 0x6af8, 0x6afe,
-    0x6b3c, 0x6cd2, 0x6cd4, 0x6dae, 0x6dd0, 0x6eae,
-    0x6eb0, 0x6f9a, 0x6f9c, 0x70de, 0x70e0, 0x7342,
-    0x734c, 0x7352, 0x7384, 0x738a, 0x73a4, 0x73b6,
-    0x73b8, 0x73d2, 0x73d4, 0x73e2, 0x73e8, 0x7702,
-    0x7800, 0x8036, 0x8038, 0x8342, 0x8374, 0x8386,
-    0x8388, 0x8396, 0x83c4, 0xb3be, 0xb3c8, 0xb5fe,
-    0xb600, 0xb782, 0xb800, 0xc0aa, 0xc0c0, 0xc266,
-    0xc26c, 0x299be, 0x299c0, 0x299d2, 0x299f8, 0x29a7a,
-    0x29a80, 0x29bc2, 0x29bc8, 0x2a0b2, 0x2a0b4, 0x2a382,
-    0x2a3c8, 0x2a4ae, 0x2a4b8, 0x2a6ce, 0x2a6d0, 0x2aac2,
-    0x2aac4, 0x2aaca, 0x2aad4, 0x2aade, 0x2aae4, 0x2aafa,
-    0x2ab00, 0x2ab06, 0x2ab08, 0x2abda, 0x2abdc, 0x2afb6,
-    0x2afb8, 0x3ec7a, 0x3ec7c, 0x3f882, 0x3f8c0, 0x407f6,
-    0x407f8, 0x40b82, 0x40b84, 0x40dda, 0x40dec, 0x42836,
-    0x42838, 0x4283e, 0x42840, 0x428e2, 0x428ec, 0x428fe,
-    0x42900, 0x42b96, 0x42b9c, 0x43492, 0x434a0, 0x43aae,
-    0x43ab4, 0x43bf6, 0x43c00, 0x43d1a, 0x43d44, 0x43e0a,
-    0x43e18, 0x441c2, 0x441c4, 0x441fe, 0x44200, 0x442ea,
-    0x442ec, 0x44402, 0x4440c, 0x444ce, 0x444d4, 0x445ce,
-    0x445d0, 0x4472a, 0x4472c, 0x448da, 0x448dc, 0x44ba6,
-    0x44bac, 0x44cee, 0x44cf4, 0x44d9a, 0x44db4, 0x44dc2,
-    0x44dd4, 0x4511a, 0x4511c, 0x4517a, 0x4517c, 0x4530e,
-    0x45310, 0x45702, 0x45704, 0x45ade, 0x45ae0, 0x45cae,
-    0x45cb0, 0x460ea, 0x460ec, 0x464fa, 0x464fc, 0x4650e,
-    0x46510, 0x468d2, 0x468d4, 0x4691e, 0x46920, 0x46a66,
-    0x46a68, 0x4750a, 0x4750c, 0x47512, 0x47518, 0x4765e,
-    0x47660, 0x47d0a, 0x47d0c, 0x5abc2, 0x5abd4, 0x5acc2,
-    0x5acdc, 0x6f27a, 0x6f27c, 0x74596, 0x74598, 0x7459e,
-    0x745a8, 0x745ba, 0x745cc, 0x745ee, 0x7460c, 0x74616,
-    0x74630, 0x746aa, 0x746b8, 0x7490a, 0x74914, 0x78002,
-    0x7801c, 0x78022, 0x78064, 0x7806e, 0x78088, 0x7808e,
-    0x78094, 0x7809a, 0x780ac, 0x7823e, 0x78240, 0x784c2,
-    0x784dc, 0x78aba, 0x78abc, 0x78bb2, 0x78bc0, 0x793b2,
-    0x793c0, 0x7a342, 0x7a35c, 0x7a512, 0x7a52c,
+    0x2ad5, 0x2ae8, 0x2af2, 0x2af4, 0x2b06, 0x2b18,
+    0x2b1e, 0x2b24, 0x2b8a, 0x2b90, 0x2be5, 0x2bea,
+    0x2c00, 0x2c06, 0x2c08, 0x2c55, 0x2ca4, 0x2ca9,
+    0x2cc4, 0x2cc9, 0x2cd0, 0x2cd5, 0x2ce8, 0x2cf2,
+    0x2cf4, 0x2cfa, 0x2d00, 0x2d06, 0x2d14, 0x2d56,
+    0x2d60, 0x2d71, 0x2d78, 0x2d7d, 0x2d80, 0x2d8a,
+    0x2d90, 0x2dc5, 0x2dc8, 0x2e0a, 0x2e0c, 0x2efa,
+    0x2efc, 0x2f02, 0x2f04, 0x2f36, 0x2f38, 0x2f5e,
+    0x2f60, 0x3002, 0x3004, 0x3012, 0x3014, 0x3055,
+    0x30a4, 0x30a9, 0x30e8, 0x30f2, 0x30f4, 0x30fa,
+    0x3104, 0x311a, 0x3124, 0x312a, 0x3134, 0x3156,
+    0x315c, 0x3161, 0x316c, 0x318a, 0x3190, 0x3206,
+    0x3208, 0x32f2, 0x32f4, 0x32fe, 0x3304, 0x330a,
+    0x330c, 0x331a, 0x3324, 0x332a, 0x3338, 0x3356,
+    0x335c, 0x338a, 0x3390, 0x3402, 0x3408, 0x3455,
+    0x34ee, 0x34f4, 0x34fa, 0x34fc, 0x3506, 0x3514,
+    0x355e, 0x3560, 0x358a, 0x3590, 0x3606, 0x3608,
+    0x372a, 0x372c, 0x373e, 0x3740, 0x374a, 0x3754,
+    0x375a, 0x375c, 0x377e, 0x3780, 0x38c6, 0x38c8,
+    0x38d2, 0x38ec, 0x391e, 0x393c, 0x3ac6, 0x3ac8,
+    0x3ad2, 0x3af4, 0x3b22, 0x3b3c, 0x3c62, 0x3c68,
+    0x3cd6, 0x3cd8, 0x3cde, 0x3ce0, 0x3ce6, 0x3ce8,
+    0x3dc6, 0x3dfc, 0x3e02, 0x3e14, 0x3e1a, 0x3e20,
+    0x3e36, 0x3e60, 0x3e66, 0x3ef4, 0x3f1a, 0x3f1c,
+    0x40b6, 0x40c4, 0x40ca, 0x40e0, 0x40e6, 0x40ec,
+    0x40f6, 0x40fc, 0x4162, 0x4168, 0x417a, 0x4184,
+    0x41c6, 0x41d4, 0x420a, 0x420c, 0x4216, 0x421c,
+    0x4236, 0x4238, 0x4276, 0x4278, 0x4d76, 0x4d80,
+    0x5c4a, 0x5c58, 0x5cca, 0x5cd4, 0x5d4a, 0x5d50,
+    0x5dca, 0x5dd0, 0x5ed2, 0x5ed8, 0x5ede, 0x5ef8,
+    0x5f1a, 0x5f1c, 0x5f26, 0x5f50, 0x5f76, 0x5f78,
+    0x602e, 0x6038, 0x603e, 0x6040, 0x6216, 0x621c,
+    0x62a6, 0x62a8, 0x6482, 0x648c, 0x649e, 0x64a4,
+    0x64ca, 0x64cc, 0x64e6, 0x64f0, 0x685e, 0x6864,
+    0x686e, 0x6870, 0x695a, 0x695c, 0x6962, 0x697c,
+    0x6982, 0x6984, 0x698a, 0x698c, 0x6996, 0x69b4,
+    0x69ce, 0x69f4, 0x69fe, 0x6a00, 0x6ac2, 0x6b3c,
+    0x6c02, 0x6c10, 0x6cd2, 0x6cf8, 0x6d0a, 0x6d14,
+    0x6dae, 0x6dd0, 0x6e02, 0x6e08, 0x6e8a, 0x6e98,
+    0x6ea2, 0x6eb8, 0x6f9a, 0x6f9c, 0x6fa2, 0x6fa8,
+    0x6fb6, 0x6fb8, 0x6fbe, 0x6fd0, 0x70b2, 0x70d0,
+    0x70da, 0x70e0, 0x7342, 0x734c, 0x7352, 0x7384,
+    0x738a, 0x73a4, 0x73b6, 0x73b8, 0x73d2, 0x73d4,
+    0x73e2, 0x73e8, 0x7702, 0x7800, 0x8036, 0x8038,
+    0x8342, 0x83c4, 0xb3be, 0xb3c8, 0xb5fe, 0xb600,
+    0xb782, 0xb800, 0xc0aa, 0xc0c0, 0xc266, 0xc26c,
+    0x299be, 0x299cc, 0x299d2, 0x299f8, 0x29a7a, 0x29a80,
+    0x29bc2, 0x29bc8, 0x2a00a, 0x2a00c, 0x2a01a, 0x2a01c,
+    0x2a02e, 0x2a030, 0x2a096, 0x2a09c, 0x2a0b2, 0x2a0b4,
+    0x2a312, 0x2a318, 0x2a382, 0x2a3c8, 0x2a3fe, 0x2a400,
+    0x2a49a, 0x2a4b8, 0x2a51e, 0x2a548, 0x2a54e, 0x2a550,
+    0x2a602, 0x2a60c, 0x2a6ce, 0x2a6d0, 0x2a6da, 0x2a6e8,
+    0x2a6f2, 0x2a6f8, 0x2a702, 0x2a704, 0x2a796, 0x2a798,
+    0x2a8a6, 0x2a8bc, 0x2a8c6, 0x2a8cc, 0x2a8d6, 0x2a8dc,
+    0x2a90e, 0x2a910, 0x2a932, 0x2a934, 0x2a9f2, 0x2a9f4,
+    0x2aac2, 0x2aac4, 0x2aaca, 0x2aad4, 0x2aade, 0x2aae4,
+    0x2aafa, 0x2ab00, 0x2ab06, 0x2ab08, 0x2abb2, 0x2abb8,
+    0x2abda, 0x2abdc, 0x2af96, 0x2af98, 0x2afa2, 0x2afa4,
+    0x2afb6, 0x2afb8, 0x3ec7a, 0x3ec7c, 0x3f802, 0x3f840,
+    0x3f882, 0x3f8c0, 0x3fe7a, 0x3fe80, 0x407f6, 0x407f8,
+    0x40b82, 0x40b84, 0x40dda, 0x40dec, 0x42806, 0x42810,
+    0x42816, 0x4281c, 0x42832, 0x42840, 0x428e2, 0x428ec,
+    0x428fe, 0x42900, 0x42b96, 0x42b9c, 0x43492, 0x434a0,
+    0x435a6, 0x435b8, 0x43aae, 0x43ab4, 0x43bf2, 0x43c00,
+    0x43d1a, 0x43d44, 0x43e0a, 0x43e18, 0x44006, 0x44008,
+    0x440e2, 0x4411c, 0x441c2, 0x441c4, 0x441ce, 0x441d4,
+    0x441fe, 0x44208, 0x442ce, 0x442dc, 0x442e6, 0x442ec,
+    0x4430a, 0x4430c, 0x44402, 0x4440c, 0x4449e, 0x444b0,
+    0x444b6, 0x444d4, 0x445ce, 0x445d0, 0x44602, 0x44608,
+    0x446da, 0x446fc, 0x44702, 0x44704, 0x44726, 0x44734,
+    0x4473e, 0x44740, 0x448be, 0x448c8, 0x448d2, 0x448e0,
+    0x448fa, 0x448fc, 0x44906, 0x44908, 0x44b7e, 0x44b80,
+    0x44b8e, 0x44bac, 0x44c02, 0x44c08, 0x44cee, 0x44cf4,
+    0x44cfa, 0x44cfc, 0x44d02, 0x44d04, 0x44d36, 0x44d38,
+    0x44d5e, 0x44d60, 0x44d9a, 0x44db4, 0x44dc2, 0x44dd4,
+    0x44ee2, 0x44ee4, 0x44eee, 0x44f04, 0x44f0a, 0x44f0c,
+    0x44f16, 0x44f18, 0x44f1e, 0x44f28, 0x44f3a, 0x44f44,
+    0x44f4a, 0x44f4c, 0x44f86, 0x44f8c, 0x450e2, 0x45100,
+    0x4510a, 0x45114, 0x4511a, 0x4511c, 0x4517a, 0x4517c,
+    0x452c2, 0x452c4, 0x452ce, 0x452e4, 0x452ea, 0x452ec,
+    0x452f6, 0x452f8, 0x452fe, 0x45304, 0x4530a, 0x45310,
+    0x456be, 0x456c0, 0x456ca, 0x456d8, 0x456f2, 0x456f8,
+    0x456fe, 0x45704, 0x45772, 0x45778, 0x458ce, 0x458ec,
+    0x458f6, 0x458f8, 0x458fe, 0x45904, 0x45aae, 0x45ab0,
+    0x45ab6, 0x45ab8, 0x45ac2, 0x45ae0, 0x45c76, 0x45c78,
+    0x45c7e, 0x45c80, 0x45c8a, 0x45c98, 0x45c9e, 0x45cb0,
+    0x460be, 0x460e0, 0x460e6, 0x460ec, 0x464c2, 0x464c4,
+    0x464ee, 0x464fc, 0x4650e, 0x46510, 0x46752, 0x46760,
+    0x4676a, 0x46770, 0x46782, 0x46784, 0x46806, 0x4682c,
+    0x468ce, 0x468e4, 0x468ee, 0x468fc, 0x4691e, 0x46920,
+    0x46946, 0x4695c, 0x46966, 0x46970, 0x46a2a, 0x46a5c,
+    0x46a62, 0x46a68, 0x470c2, 0x470dc, 0x470e2, 0x470f8,
+    0x470fe, 0x47100, 0x4724a, 0x472a0, 0x472aa, 0x472c4,
+    0x472ca, 0x472d0, 0x472d6, 0x472dc, 0x474c6, 0x474dc,
+    0x474ea, 0x474ec, 0x474f2, 0x474f8, 0x474fe, 0x47518,
+    0x4751e, 0x47520, 0x47642, 0x47648, 0x47656, 0x47658,
+    0x4765e, 0x47660, 0x47bce, 0x47bd4, 0x47c02, 0x47c08,
+    0x47cda, 0x47cec, 0x47d02, 0x47d0c, 0x47d6a, 0x47d6c,
+    0x4d102, 0x4d104, 0x4d11e, 0x4d158, 0x5847a, 0x584a8,
+    0x584b6, 0x584c0, 0x5abc2, 0x5abd4, 0x5acc2, 0x5acdc,
+    0x5bd3e, 0x5bd40, 0x5be3e, 0x5be4c, 0x5bf92, 0x5bf94,
+    0x5bfc2, 0x5bfc8, 0x6f276, 0x6f27c, 0x73c02, 0x73cb8,
+    0x73cc2, 0x73d1c, 0x74596, 0x745a8, 0x745b6, 0x745cc,
+    0x745ee, 0x7460c, 0x74616, 0x74630, 0x746aa, 0x746b8,
+    0x7490a, 0x74914, 0x76802, 0x768dc, 0x768ee, 0x769b4,
+    0x769d6, 0x769d8, 0x76a12, 0x76a14, 0x76a6e, 0x76a80,
+    0x76a86, 0x76ac0, 0x78002, 0x7801c, 0x78022, 0x78064,
+    0x7806e, 0x78088, 0x7808e, 0x78094, 0x7809a, 0x780ac,
+    0x7823e, 0x78240, 0x784c2, 0x784dc, 0x78aba, 0x78abc,
+    0x78bb2, 0x78bc0, 0x793b2, 0x793c0, 0x797ba, 0x797c0,
+    0x7a342, 0x7a35c, 0x7a512, 0x7a52c, 0x7cfee, 0x7d000,
+    0x380082, 0x380200, 0x380402, 0x3807c0,
   };
 
   // Table generated by contrib/unicode/gen_std_format_width.py,
