[libcxx-commits] [libcxx] da38bcf - [libc++][format] Improves generated files.

Mark de Wever via libcxx-commits libcxx-commits at lists.llvm.org
Tue Aug 2 09:56:07 PDT 2022


Author: Mark de Wever
Date: 2022-08-02T18:56:02+02:00
New Revision: da38bcfd52d75e95f44e363288e3ed4a0cbf0e04

URL: https://github.com/llvm/llvm-project/commit/da38bcfd52d75e95f44e363288e3ed4a0cbf0e04
DIFF: https://github.com/llvm/llvm-project/commit/da38bcfd52d75e95f44e363288e3ed4a0cbf0e04.diff

LOG: [libc++][format] Improves generated files.

This improves the formatting of the generated files. That allows it to
remove the clang-format step in D129668.

Reviewed By: ldionne, #libc

Differential Revision: https://reviews.llvm.org/D130911

Added: 
    

Modified: 
    libcxx/include/__format/extended_grapheme_cluster_table.h
    libcxx/test/libcxx/utilities/format/format.string/format.string.std/extended_grapheme_cluster.h
    libcxx/utils/generate_extended_grapheme_cluster_table.py
    libcxx/utils/generate_extended_grapheme_cluster_test.py

Removed: 
    


################################################################################
diff  --git a/libcxx/include/__format/extended_grapheme_cluster_table.h b/libcxx/include/__format/extended_grapheme_cluster_table.h
index 00cd0e91cd152..19b027fbf4b9c 100644
--- a/libcxx/include/__format/extended_grapheme_cluster_table.h
+++ b/libcxx/include/__format/extended_grapheme_cluster_table.h
@@ -125,171 +125,1486 @@ enum class __property : uint8_t {
 /// following benchmark.
 /// libcxx/benchmarks/std_format_spec_string_unicode.bench.cpp
 inline constexpr uint32_t __entries[1480] = {
-    0x00000091, 0x00005005, 0x00005811, 0x00006800, 0x00007111, 0x0003fa01, 0x00054803, 0x00056801, 0x00057003,
-    0x001806f2, 0x00241862, 0x002c8ac2, 0x002df802, 0x002e0812, 0x002e2012, 0x002e3802, 0x00300058, 0x003080a2,
-    0x0030e001, 0x00325942, 0x00338002, 0x0036b062, 0x0036e808, 0x0036f852, 0x00373812, 0x00375032, 0x00387808,
-    0x00388802, 0x003981a2, 0x003d30a2, 0x003f5882, 0x003fe802, 0x0040b032, 0x0040d882, 0x00412822, 0x00414842,
-    0x0042c822, 0x00448018, 0x0044c072, 0x00465172, 0x00471008, 0x004719f2, 0x0048180a, 0x0049d002, 0x0049d80a,
-    0x0049e002, 0x0049f02a, 0x004a0872, 0x004a483a, 0x004a6802, 0x004a701a, 0x004a8862, 0x004b1012, 0x004c0802,
-    0x004c101a, 0x004de002, 0x004df002, 0x004df81a, 0x004e0832, 0x004e381a, 0x004e581a, 0x004e6802, 0x004eb802,
-    0x004f1012, 0x004ff002, 0x00500812, 0x0050180a, 0x0051e002, 0x0051f02a, 0x00520812, 0x00523812, 0x00525822,
-    0x00528802, 0x00538012, 0x0053a802, 0x00540812, 0x0054180a, 0x0055e002, 0x0055f02a, 0x00560842, 0x00563812,
-    0x0056480a, 0x0056581a, 0x00566802, 0x00571012, 0x0057d052, 0x00580802, 0x0058101a, 0x0059e002, 0x0059f012,
-    0x005a000a, 0x005a0832, 0x005a381a, 0x005a581a, 0x005a6802, 0x005aa822, 0x005b1012, 0x005c1002, 0x005df002,
-    0x005df80a, 0x005e0002, 0x005e081a, 0x005e302a, 0x005e502a, 0x005e6802, 0x005eb802, 0x00600002, 0x0060082a,
-    0x00602002, 0x0061e002, 0x0061f022, 0x0062083a, 0x00623022, 0x00625032, 0x0062a812, 0x00631012, 0x00640802,
-    0x0064101a, 0x0065e002, 0x0065f00a, 0x0065f802, 0x0066001a, 0x00661002, 0x0066181a, 0x00663002, 0x0066381a,
-    0x0066501a, 0x00666012, 0x0066a812, 0x00671012, 0x00680012, 0x0068101a, 0x0069d812, 0x0069f002, 0x0069f81a,
-    0x006a0832, 0x006a302a, 0x006a502a, 0x006a6802, 0x006a7008, 0x006ab802, 0x006b1012, 0x006c0802, 0x006c101a,
-    0x006e5002, 0x006e7802, 0x006e801a, 0x006e9022, 0x006eb002, 0x006ec06a, 0x006ef802, 0x006f901a, 0x00718802,
-    0x0071980a, 0x0071a062, 0x00723872, 0x00758802, 0x0075980a, 0x0075a082, 0x00764052, 0x0078c012, 0x0079a802,
-    0x0079b802, 0x0079c802, 0x0079f01a, 0x007b88d2, 0x007bf80a, 0x007c0042, 0x007c3012, 0x007c68a2, 0x007cca32,
-    0x007e3002, 0x00816832, 0x0081880a, 0x00819052, 0x0081c812, 0x0081d81a, 0x0081e812, 0x0082b01a, 0x0082c012,
-    0x0082f022, 0x00838832, 0x00841002, 0x0084200a, 0x00842812, 0x00846802, 0x0084e802, 0x008805f4, 0x008b047c,
-    0x008d457b, 0x009ae822, 0x00b89022, 0x00b8a80a, 0x00b99012, 0x00b9a00a, 0x00ba9012, 0x00bb9012, 0x00bda012,
-    0x00bdb00a, 0x00bdb862, 0x00bdf07a, 0x00be3002, 0x00be381a, 0x00be48a2, 0x00bee802, 0x00c05822, 0x00c07001,
-    0x00c07802, 0x00c42812, 0x00c54802, 0x00c90022, 0x00c9183a, 0x00c93812, 0x00c9482a, 0x00c9801a, 0x00c99002,
-    0x00c9985a, 0x00c9c822, 0x00d0b812, 0x00d0c81a, 0x00d0d802, 0x00d2a80a, 0x00d2b002, 0x00d2b80a, 0x00d2c062,
-    0x00d30002, 0x00d31002, 0x00d32872, 0x00d3685a, 0x00d39892, 0x00d3f802, 0x00d581e2, 0x00d80032, 0x00d8200a,
-    0x00d9a062, 0x00d9d80a, 0x00d9e002, 0x00d9e84a, 0x00da1002, 0x00da181a, 0x00db5882, 0x00dc0012, 0x00dc100a,
-    0x00dd080a, 0x00dd1032, 0x00dd301a, 0x00dd4012, 0x00dd500a, 0x00dd5822, 0x00df3002, 0x00df380a, 0x00df4012,
-    0x00df502a, 0x00df6802, 0x00df700a, 0x00df7822, 0x00df901a, 0x00e1207a, 0x00e16072, 0x00e1a01a, 0x00e1b012,
-    0x00e68022, 0x00e6a0c2, 0x00e7080a, 0x00e71062, 0x00e76802, 0x00e7a002, 0x00e7b80a, 0x00e7c012, 0x00ee03f2,
-    0x01005801, 0x01006002, 0x0100680d, 0x01007011, 0x01014061, 0x0101e003, 0x01024803, 0x010300f1, 0x01068202,
-    0x01091003, 0x0109c803, 0x010ca053, 0x010d4813, 0x0118d013, 0x01194003, 0x011c4003, 0x011e7803, 0x011f48a3,
-    0x011fc023, 0x01261003, 0x012d5013, 0x012db003, 0x012e0003, 0x012fd833, 0x01300053, 0x013038b3, 0x0130a713,
-    0x01348753, 0x013840a3, 0x0138a003, 0x0138b003, 0x0138e803, 0x01390803, 0x01394003, 0x01399813, 0x013a2003,
-    0x013a3803, 0x013a6003, 0x013a7003, 0x013a9823, 0x013ab803, 0x013b1843, 0x013ca823, 0x013d0803, 0x013d8003,
-    0x013df803, 0x0149a013, 0x01582823, 0x0158d813, 0x015a8003, 0x015aa803, 0x01677822, 0x016bf802, 0x016f01f2,
-    0x01815052, 0x01818003, 0x0181e803, 0x0184c812, 0x0194b803, 0x0194c803, 0x05337832, 0x0533a092, 0x0534f012,
-    0x05378012, 0x05401002, 0x05403002, 0x05405802, 0x0541181a, 0x05412812, 0x0541380a, 0x05416002, 0x0544001a,
-    0x0545a0fa, 0x05462012, 0x05470112, 0x0547f802, 0x05493072, 0x054a38a2, 0x054a901a, 0x054b01c4, 0x054c0022,
-    0x054c180a, 0x054d9802, 0x054da01a, 0x054db032, 0x054dd01a, 0x054de012, 0x054df02a, 0x054f2802, 0x05514852,
-    0x0551781a, 0x05518812, 0x0551981a, 0x0551a812, 0x05521802, 0x05526002, 0x0552680a, 0x0553e002, 0x05558002,
-    0x05559022, 0x0555b812, 0x0555f012, 0x05560802, 0x0557580a, 0x05576012, 0x0557701a, 0x0557a80a, 0x0557b002,
-    0x055f181a, 0x055f2802, 0x055f301a, 0x055f4002, 0x055f481a, 0x055f600a, 0x055f6802, 0x05600006, 0x056009a7,
-    0x0560e006, 0x0560e9a7, 0x0561c006, 0x0561c9a7, 0x0562a006, 0x0562a9a7, 0x05638006, 0x056389a7, 0x05646006,
-    0x056469a7, 0x05654006, 0x056549a7, 0x05662006, 0x056629a7, 0x05670006, 0x056709a7, 0x0567e006, 0x0567e9a7,
-    0x0568c006, 0x0568c9a7, 0x0569a006, 0x0569a9a7, 0x056a8006, 0x056a89a7, 0x056b6006, 0x056b69a7, 0x056c4006,
-    0x056c49a7, 0x056d2006, 0x056d29a7, 0x056e0006, 0x056e09a7, 0x056ee006, 0x056ee9a7, 0x056fc006, 0x056fc9a7,
-    0x0570a006, 0x0570a9a7, 0x05718006, 0x057189a7, 0x05726006, 0x057269a7, 0x05734006, 0x057349a7, 0x05742006,
-    0x057429a7, 0x05750006, 0x057509a7, 0x0575e006, 0x0575e9a7, 0x0576c006, 0x0576c9a7, 0x0577a006, 0x0577a9a7,
-    0x05788006, 0x057889a7, 0x05796006, 0x057969a7, 0x057a4006, 0x057a49a7, 0x057b2006, 0x057b29a7, 0x057c0006,
-    0x057c09a7, 0x057ce006, 0x057ce9a7, 0x057dc006, 0x057dc9a7, 0x057ea006, 0x057ea9a7, 0x057f8006, 0x057f89a7,
-    0x05806006, 0x058069a7, 0x05814006, 0x058149a7, 0x05822006, 0x058229a7, 0x05830006, 0x058309a7, 0x0583e006,
-    0x0583e9a7, 0x0584c006, 0x0584c9a7, 0x0585a006, 0x0585a9a7, 0x05868006, 0x058689a7, 0x05876006, 0x058769a7,
-    0x05884006, 0x058849a7, 0x05892006, 0x058929a7, 0x058a0006, 0x058a09a7, 0x058ae006, 0x058ae9a7, 0x058bc006,
-    0x058bc9a7, 0x058ca006, 0x058ca9a7, 0x058d8006, 0x058d89a7, 0x058e6006, 0x058e69a7, 0x058f4006, 0x058f49a7,
-    0x05902006, 0x059029a7, 0x05910006, 0x059109a7, 0x0591e006, 0x0591e9a7, 0x0592c006, 0x0592c9a7, 0x0593a006,
-    0x0593a9a7, 0x05948006, 0x059489a7, 0x05956006, 0x059569a7, 0x05964006, 0x059649a7, 0x05972006, 0x059729a7,
-    0x05980006, 0x059809a7, 0x0598e006, 0x0598e9a7, 0x0599c006, 0x0599c9a7, 0x059aa006, 0x059aa9a7, 0x059b8006,
-    0x059b89a7, 0x059c6006, 0x059c69a7, 0x059d4006, 0x059d49a7, 0x059e2006, 0x059e29a7, 0x059f0006, 0x059f09a7,
-    0x059fe006, 0x059fe9a7, 0x05a0c006, 0x05a0c9a7, 0x05a1a006, 0x05a1a9a7, 0x05a28006, 0x05a289a7, 0x05a36006,
-    0x05a369a7, 0x05a44006, 0x05a449a7, 0x05a52006, 0x05a529a7, 0x05a60006, 0x05a609a7, 0x05a6e006, 0x05a6e9a7,
-    0x05a7c006, 0x05a7c9a7, 0x05a8a006, 0x05a8a9a7, 0x05a98006, 0x05a989a7, 0x05aa6006, 0x05aa69a7, 0x05ab4006,
-    0x05ab49a7, 0x05ac2006, 0x05ac29a7, 0x05ad0006, 0x05ad09a7, 0x05ade006, 0x05ade9a7, 0x05aec006, 0x05aec9a7,
-    0x05afa006, 0x05afa9a7, 0x05b08006, 0x05b089a7, 0x05b16006, 0x05b169a7, 0x05b24006, 0x05b249a7, 0x05b32006,
-    0x05b329a7, 0x05b40006, 0x05b409a7, 0x05b4e006, 0x05b4e9a7, 0x05b5c006, 0x05b5c9a7, 0x05b6a006, 0x05b6a9a7,
-    0x05b78006, 0x05b789a7, 0x05b86006, 0x05b869a7, 0x05b94006, 0x05b949a7, 0x05ba2006, 0x05ba29a7, 0x05bb0006,
-    0x05bb09a7, 0x05bbe006, 0x05bbe9a7, 0x05bcc006, 0x05bcc9a7, 0x05bda006, 0x05bda9a7, 0x05be8006, 0x05be89a7,
-    0x05bf6006, 0x05bf69a7, 0x05c04006, 0x05c049a7, 0x05c12006, 0x05c129a7, 0x05c20006, 0x05c209a7, 0x05c2e006,
-    0x05c2e9a7, 0x05c3c006, 0x05c3c9a7, 0x05c4a006, 0x05c4a9a7, 0x05c58006, 0x05c589a7, 0x05c66006, 0x05c669a7,
-    0x05c74006, 0x05c749a7, 0x05c82006, 0x05c829a7, 0x05c90006, 0x05c909a7, 0x05c9e006, 0x05c9e9a7, 0x05cac006,
-    0x05cac9a7, 0x05cba006, 0x05cba9a7, 0x05cc8006, 0x05cc89a7, 0x05cd6006, 0x05cd69a7, 0x05ce4006, 0x05ce49a7,
-    0x05cf2006, 0x05cf29a7, 0x05d00006, 0x05d009a7, 0x05d0e006, 0x05d0e9a7, 0x05d1c006, 0x05d1c9a7, 0x05d2a006,
-    0x05d2a9a7, 0x05d38006, 0x05d389a7, 0x05d46006, 0x05d469a7, 0x05d54006, 0x05d549a7, 0x05d62006, 0x05d629a7,
-    0x05d70006, 0x05d709a7, 0x05d7e006, 0x05d7e9a7, 0x05d8c006, 0x05d8c9a7, 0x05d9a006, 0x05d9a9a7, 0x05da8006,
-    0x05da89a7, 0x05db6006, 0x05db69a7, 0x05dc4006, 0x05dc49a7, 0x05dd2006, 0x05dd29a7, 0x05de0006, 0x05de09a7,
-    0x05dee006, 0x05dee9a7, 0x05dfc006, 0x05dfc9a7, 0x05e0a006, 0x05e0a9a7, 0x05e18006, 0x05e189a7, 0x05e26006,
-    0x05e269a7, 0x05e34006, 0x05e349a7, 0x05e42006, 0x05e429a7, 0x05e50006, 0x05e509a7, 0x05e5e006, 0x05e5e9a7,
-    0x05e6c006, 0x05e6c9a7, 0x05e7a006, 0x05e7a9a7, 0x05e88006, 0x05e889a7, 0x05e96006, 0x05e969a7, 0x05ea4006,
-    0x05ea49a7, 0x05eb2006, 0x05eb29a7, 0x05ec0006, 0x05ec09a7, 0x05ece006, 0x05ece9a7, 0x05edc006, 0x05edc9a7,
-    0x05eea006, 0x05eea9a7, 0x05ef8006, 0x05ef89a7, 0x05f06006, 0x05f069a7, 0x05f14006, 0x05f149a7, 0x05f22006,
-    0x05f229a7, 0x05f30006, 0x05f309a7, 0x05f3e006, 0x05f3e9a7, 0x05f4c006, 0x05f4c9a7, 0x05f5a006, 0x05f5a9a7,
-    0x05f68006, 0x05f689a7, 0x05f76006, 0x05f769a7, 0x05f84006, 0x05f849a7, 0x05f92006, 0x05f929a7, 0x05fa0006,
-    0x05fa09a7, 0x05fae006, 0x05fae9a7, 0x05fbc006, 0x05fbc9a7, 0x05fca006, 0x05fca9a7, 0x05fd8006, 0x05fd89a7,
-    0x05fe6006, 0x05fe69a7, 0x05ff4006, 0x05ff49a7, 0x06002006, 0x060029a7, 0x06010006, 0x060109a7, 0x0601e006,
-    0x0601e9a7, 0x0602c006, 0x0602c9a7, 0x0603a006, 0x0603a9a7, 0x06048006, 0x060489a7, 0x06056006, 0x060569a7,
-    0x06064006, 0x060649a7, 0x06072006, 0x060729a7, 0x06080006, 0x060809a7, 0x0608e006, 0x0608e9a7, 0x0609c006,
-    0x0609c9a7, 0x060aa006, 0x060aa9a7, 0x060b8006, 0x060b89a7, 0x060c6006, 0x060c69a7, 0x060d4006, 0x060d49a7,
-    0x060e2006, 0x060e29a7, 0x060f0006, 0x060f09a7, 0x060fe006, 0x060fe9a7, 0x0610c006, 0x0610c9a7, 0x0611a006,
-    0x0611a9a7, 0x06128006, 0x061289a7, 0x06136006, 0x061369a7, 0x06144006, 0x061449a7, 0x06152006, 0x061529a7,
-    0x06160006, 0x061609a7, 0x0616e006, 0x0616e9a7, 0x0617c006, 0x0617c9a7, 0x0618a006, 0x0618a9a7, 0x06198006,
-    0x061989a7, 0x061a6006, 0x061a69a7, 0x061b4006, 0x061b49a7, 0x061c2006, 0x061c29a7, 0x061d0006, 0x061d09a7,
-    0x061de006, 0x061de9a7, 0x061ec006, 0x061ec9a7, 0x061fa006, 0x061fa9a7, 0x06208006, 0x062089a7, 0x06216006,
-    0x062169a7, 0x06224006, 0x062249a7, 0x06232006, 0x062329a7, 0x06240006, 0x062409a7, 0x0624e006, 0x0624e9a7,
-    0x0625c006, 0x0625c9a7, 0x0626a006, 0x0626a9a7, 0x06278006, 0x062789a7, 0x06286006, 0x062869a7, 0x06294006,
-    0x062949a7, 0x062a2006, 0x062a29a7, 0x062b0006, 0x062b09a7, 0x062be006, 0x062be9a7, 0x062cc006, 0x062cc9a7,
-    0x062da006, 0x062da9a7, 0x062e8006, 0x062e89a7, 0x062f6006, 0x062f69a7, 0x06304006, 0x063049a7, 0x06312006,
-    0x063129a7, 0x06320006, 0x063209a7, 0x0632e006, 0x0632e9a7, 0x0633c006, 0x0633c9a7, 0x0634a006, 0x0634a9a7,
-    0x06358006, 0x063589a7, 0x06366006, 0x063669a7, 0x06374006, 0x063749a7, 0x06382006, 0x063829a7, 0x06390006,
-    0x063909a7, 0x0639e006, 0x0639e9a7, 0x063ac006, 0x063ac9a7, 0x063ba006, 0x063ba9a7, 0x063c8006, 0x063c89a7,
-    0x063d6006, 0x063d69a7, 0x063e4006, 0x063e49a7, 0x063f2006, 0x063f29a7, 0x06400006, 0x064009a7, 0x0640e006,
-    0x0640e9a7, 0x0641c006, 0x0641c9a7, 0x0642a006, 0x0642a9a7, 0x06438006, 0x064389a7, 0x06446006, 0x064469a7,
-    0x06454006, 0x064549a7, 0x06462006, 0x064629a7, 0x06470006, 0x064709a7, 0x0647e006, 0x0647e9a7, 0x0648c006,
-    0x0648c9a7, 0x0649a006, 0x0649a9a7, 0x064a8006, 0x064a89a7, 0x064b6006, 0x064b69a7, 0x064c4006, 0x064c49a7,
-    0x064d2006, 0x064d29a7, 0x064e0006, 0x064e09a7, 0x064ee006, 0x064ee9a7, 0x064fc006, 0x064fc9a7, 0x0650a006,
-    0x0650a9a7, 0x06518006, 0x065189a7, 0x06526006, 0x065269a7, 0x06534006, 0x065349a7, 0x06542006, 0x065429a7,
-    0x06550006, 0x065509a7, 0x0655e006, 0x0655e9a7, 0x0656c006, 0x0656c9a7, 0x0657a006, 0x0657a9a7, 0x06588006,
-    0x065889a7, 0x06596006, 0x065969a7, 0x065a4006, 0x065a49a7, 0x065b2006, 0x065b29a7, 0x065c0006, 0x065c09a7,
-    0x065ce006, 0x065ce9a7, 0x065dc006, 0x065dc9a7, 0x065ea006, 0x065ea9a7, 0x065f8006, 0x065f89a7, 0x06606006,
-    0x066069a7, 0x06614006, 0x066149a7, 0x06622006, 0x066229a7, 0x06630006, 0x066309a7, 0x0663e006, 0x0663e9a7,
-    0x0664c006, 0x0664c9a7, 0x0665a006, 0x0665a9a7, 0x06668006, 0x066689a7, 0x06676006, 0x066769a7, 0x06684006,
-    0x066849a7, 0x06692006, 0x066929a7, 0x066a0006, 0x066a09a7, 0x066ae006, 0x066ae9a7, 0x066bc006, 0x066bc9a7,
-    0x066ca006, 0x066ca9a7, 0x066d8006, 0x066d89a7, 0x066e6006, 0x066e69a7, 0x066f4006, 0x066f49a7, 0x06702006,
-    0x067029a7, 0x06710006, 0x067109a7, 0x0671e006, 0x0671e9a7, 0x0672c006, 0x0672c9a7, 0x0673a006, 0x0673a9a7,
-    0x06748006, 0x067489a7, 0x06756006, 0x067569a7, 0x06764006, 0x067649a7, 0x06772006, 0x067729a7, 0x06780006,
-    0x067809a7, 0x0678e006, 0x0678e9a7, 0x0679c006, 0x0679c9a7, 0x067aa006, 0x067aa9a7, 0x067b8006, 0x067b89a7,
-    0x067c6006, 0x067c69a7, 0x067d4006, 0x067d49a7, 0x067e2006, 0x067e29a7, 0x067f0006, 0x067f09a7, 0x067fe006,
-    0x067fe9a7, 0x0680c006, 0x0680c9a7, 0x0681a006, 0x0681a9a7, 0x06828006, 0x068289a7, 0x06836006, 0x068369a7,
-    0x06844006, 0x068449a7, 0x06852006, 0x068529a7, 0x06860006, 0x068609a7, 0x0686e006, 0x0686e9a7, 0x0687c006,
-    0x0687c9a7, 0x0688a006, 0x0688a9a7, 0x06898006, 0x068989a7, 0x068a6006, 0x068a69a7, 0x068b4006, 0x068b49a7,
-    0x068c2006, 0x068c29a7, 0x068d0006, 0x068d09a7, 0x068de006, 0x068de9a7, 0x068ec006, 0x068ec9a7, 0x068fa006,
-    0x068fa9a7, 0x06908006, 0x069089a7, 0x06916006, 0x069169a7, 0x06924006, 0x069249a7, 0x06932006, 0x069329a7,
-    0x06940006, 0x069409a7, 0x0694e006, 0x0694e9a7, 0x0695c006, 0x0695c9a7, 0x0696a006, 0x0696a9a7, 0x06978006,
-    0x069789a7, 0x06986006, 0x069869a7, 0x06994006, 0x069949a7, 0x069a2006, 0x069a29a7, 0x069b0006, 0x069b09a7,
-    0x069be006, 0x069be9a7, 0x069cc006, 0x069cc9a7, 0x069da006, 0x069da9a7, 0x069e8006, 0x069e89a7, 0x069f6006,
-    0x069f69a7, 0x06a04006, 0x06a049a7, 0x06a12006, 0x06a129a7, 0x06a20006, 0x06a209a7, 0x06a2e006, 0x06a2e9a7,
-    0x06a3c006, 0x06a3c9a7, 0x06a4a006, 0x06a4a9a7, 0x06a58006, 0x06a589a7, 0x06a66006, 0x06a669a7, 0x06a74006,
-    0x06a749a7, 0x06a82006, 0x06a829a7, 0x06a90006, 0x06a909a7, 0x06a9e006, 0x06a9e9a7, 0x06aac006, 0x06aac9a7,
-    0x06aba006, 0x06aba9a7, 0x06ac8006, 0x06ac89a7, 0x06ad6006, 0x06ad69a7, 0x06ae4006, 0x06ae49a7, 0x06af2006,
-    0x06af29a7, 0x06b00006, 0x06b009a7, 0x06b0e006, 0x06b0e9a7, 0x06b1c006, 0x06b1c9a7, 0x06b2a006, 0x06b2a9a7,
-    0x06b38006, 0x06b389a7, 0x06b46006, 0x06b469a7, 0x06b54006, 0x06b549a7, 0x06b62006, 0x06b629a7, 0x06b70006,
-    0x06b709a7, 0x06b7e006, 0x06b7e9a7, 0x06b8c006, 0x06b8c9a7, 0x06b9a006, 0x06b9a9a7, 0x06ba8006, 0x06ba89a7,
-    0x06bb6006, 0x06bb69a7, 0x06bc4006, 0x06bc49a7, 0x06bd816c, 0x06be5b0b, 0x07d8f002, 0x07f000f2, 0x07f100f2,
-    0x07f7f801, 0x07fcf012, 0x07ff80b1, 0x080fe802, 0x08170002, 0x081bb042, 0x08500822, 0x08502812, 0x08506032,
-    0x0851c022, 0x0851f802, 0x08572812, 0x08692032, 0x08755812, 0x087a30a2, 0x087c1032, 0x0880000a, 0x08800802,
-    0x0880100a, 0x0881c0e2, 0x08838002, 0x08839812, 0x0883f822, 0x0884100a, 0x0885802a, 0x08859832, 0x0885b81a,
-    0x0885c812, 0x0885e808, 0x08861002, 0x08866808, 0x08880022, 0x08893842, 0x0889600a, 0x08896872, 0x088a281a,
-    0x088b9802, 0x088c0012, 0x088c100a, 0x088d982a, 0x088db082, 0x088df81a, 0x088e1018, 0x088e4832, 0x088e700a,
-    0x088e7802, 0x0891602a, 0x08917822, 0x0891901a, 0x0891a002, 0x0891a80a, 0x0891b012, 0x0891f002, 0x0896f802,
-    0x0897002a, 0x08971872, 0x08980012, 0x0898101a, 0x0899d812, 0x0899f002, 0x0899f80a, 0x089a0002, 0x089a083a,
-    0x089a381a, 0x089a582a, 0x089ab802, 0x089b101a, 0x089b3062, 0x089b8042, 0x08a1a82a, 0x08a1c072, 0x08a2001a,
-    0x08a21022, 0x08a2280a, 0x08a23002, 0x08a2f002, 0x08a58002, 0x08a5881a, 0x08a59852, 0x08a5c80a, 0x08a5d002,
-    0x08a5d81a, 0x08a5e802, 0x08a5f00a, 0x08a5f812, 0x08a6080a, 0x08a61012, 0x08ad7802, 0x08ad801a, 0x08ad9032,
-    0x08adc03a, 0x08ade012, 0x08adf00a, 0x08adf812, 0x08aee012, 0x08b1802a, 0x08b19872, 0x08b1d81a, 0x08b1e802,
-    0x08b1f00a, 0x08b1f812, 0x08b55802, 0x08b5600a, 0x08b56802, 0x08b5701a, 0x08b58052, 0x08b5b00a, 0x08b5b802,
-    0x08b8e822, 0x08b91032, 0x08b9300a, 0x08b93842, 0x08c1602a, 0x08c17882, 0x08c1c00a, 0x08c1c812, 0x08c98002,
-    0x08c9884a, 0x08c9b81a, 0x08c9d812, 0x08c9e80a, 0x08c9f002, 0x08c9f808, 0x08ca000a, 0x08ca0808, 0x08ca100a,
-    0x08ca1802, 0x08ce882a, 0x08cea032, 0x08ced012, 0x08cee03a, 0x08cf0002, 0x08cf200a, 0x08d00892, 0x08d19852,
-    0x08d1c80a, 0x08d1d008, 0x08d1d832, 0x08d23802, 0x08d28852, 0x08d2b81a, 0x08d2c822, 0x08d42058, 0x08d450c2,
-    0x08d4b80a, 0x08d4c012, 0x08e1780a, 0x08e18062, 0x08e1c052, 0x08e1f00a, 0x08e1f802, 0x08e49152, 0x08e5480a,
-    0x08e55062, 0x08e5880a, 0x08e59012, 0x08e5a00a, 0x08e5a812, 0x08e98852, 0x08e9d002, 0x08e9e012, 0x08e9f862,
-    0x08ea3008, 0x08ea3802, 0x08ec504a, 0x08ec8012, 0x08ec981a, 0x08eca802, 0x08ecb00a, 0x08ecb802, 0x08f79812,
-    0x08f7a81a, 0x09a18081, 0x0b578042, 0x0b598062, 0x0b7a7802, 0x0b7a8b6a, 0x0b7c7832, 0x0b7f2002, 0x0b7f801a,
-    0x0de4e812, 0x0de50031, 0x0e7802d2, 0x0e798162, 0x0e8b2802, 0x0e8b300a, 0x0e8b3822, 0x0e8b680a, 0x0e8b7042,
-    0x0e8b9871, 0x0e8bd872, 0x0e8c2862, 0x0e8d5032, 0x0e921022, 0x0ed00362, 0x0ed1db12, 0x0ed3a802, 0x0ed42002,
-    0x0ed4d842, 0x0ed508e2, 0x0f000062, 0x0f004102, 0x0f00d862, 0x0f011812, 0x0f013042, 0x0f098062, 0x0f157002,
-    0x0f176032, 0x0f468062, 0x0f4a2062, 0x0f8007f3, 0x0f8407f3, 0x0f886823, 0x0f897803, 0x0f8b6053, 0x0f8bf013,
-    0x0f8c7003, 0x0f8c8893, 0x0f8d6b83, 0x0f8f3199, 0x0f9008e3, 0x0f90d003, 0x0f917803, 0x0f919083, 0x0f91e033,
-    0x0f924ff3, 0x0f964ff3, 0x0f9a4ff3, 0x0f9e4b13, 0x0f9fd842, 0x0fa007f3, 0x0fa407f3, 0x0fa803d3, 0x0faa37f3,
-    0x0fae37f3, 0x0fb23093, 0x0fb407f3, 0x0fbba0b3, 0x0fbeaaa3, 0x0fc06033, 0x0fc24073, 0x0fc2d053, 0x0fc44073,
-    0x0fc57513, 0x0fc862e3, 0x0fc9e093, 0x0fca3ff3, 0x0fce3ff3, 0x0fd23ff3, 0x0fd63b83, 0x0fe007f3, 0x0fe407f3,
-    0x0fe807f3, 0x0fec07f3, 0x0ff007f3, 0x0ff407f3, 0x0ff807f3, 0x0ffc07d3, 0x700001f1, 0x700105f2, 0x700407f1,
-    0x700807f2, 0x700c06f2, 0x700f87f1, 0x701387f1, 0x701787f1, 0x701b87f1, 0x701f87f1, 0x702387f1, 0x702787f1,
-    0x702b87f1, 0x702f87f1, 0x703387f1, 0x703787f1, 0x703b87f1, 0x703f87f1, 0x704387f1, 0x704787f1, 0x704b87f1,
-    0x704f87f1, 0x705387f1, 0x705787f1, 0x705b87f1, 0x705f87f1, 0x706387f1, 0x706787f1, 0x706b87f1, 0x706f87f1,
-    0x707387f1, 0x707787f1, 0x707b87f1, 0x707f80f1};
+    0x00000091,
+    0x00005005,
+    0x00005811,
+    0x00006800,
+    0x00007111,
+    0x0003fa01,
+    0x00054803,
+    0x00056801,
+    0x00057003,
+    0x001806f2,
+    0x00241862,
+    0x002c8ac2,
+    0x002df802,
+    0x002e0812,
+    0x002e2012,
+    0x002e3802,
+    0x00300058,
+    0x003080a2,
+    0x0030e001,
+    0x00325942,
+    0x00338002,
+    0x0036b062,
+    0x0036e808,
+    0x0036f852,
+    0x00373812,
+    0x00375032,
+    0x00387808,
+    0x00388802,
+    0x003981a2,
+    0x003d30a2,
+    0x003f5882,
+    0x003fe802,
+    0x0040b032,
+    0x0040d882,
+    0x00412822,
+    0x00414842,
+    0x0042c822,
+    0x00448018,
+    0x0044c072,
+    0x00465172,
+    0x00471008,
+    0x004719f2,
+    0x0048180a,
+    0x0049d002,
+    0x0049d80a,
+    0x0049e002,
+    0x0049f02a,
+    0x004a0872,
+    0x004a483a,
+    0x004a6802,
+    0x004a701a,
+    0x004a8862,
+    0x004b1012,
+    0x004c0802,
+    0x004c101a,
+    0x004de002,
+    0x004df002,
+    0x004df81a,
+    0x004e0832,
+    0x004e381a,
+    0x004e581a,
+    0x004e6802,
+    0x004eb802,
+    0x004f1012,
+    0x004ff002,
+    0x00500812,
+    0x0050180a,
+    0x0051e002,
+    0x0051f02a,
+    0x00520812,
+    0x00523812,
+    0x00525822,
+    0x00528802,
+    0x00538012,
+    0x0053a802,
+    0x00540812,
+    0x0054180a,
+    0x0055e002,
+    0x0055f02a,
+    0x00560842,
+    0x00563812,
+    0x0056480a,
+    0x0056581a,
+    0x00566802,
+    0x00571012,
+    0x0057d052,
+    0x00580802,
+    0x0058101a,
+    0x0059e002,
+    0x0059f012,
+    0x005a000a,
+    0x005a0832,
+    0x005a381a,
+    0x005a581a,
+    0x005a6802,
+    0x005aa822,
+    0x005b1012,
+    0x005c1002,
+    0x005df002,
+    0x005df80a,
+    0x005e0002,
+    0x005e081a,
+    0x005e302a,
+    0x005e502a,
+    0x005e6802,
+    0x005eb802,
+    0x00600002,
+    0x0060082a,
+    0x00602002,
+    0x0061e002,
+    0x0061f022,
+    0x0062083a,
+    0x00623022,
+    0x00625032,
+    0x0062a812,
+    0x00631012,
+    0x00640802,
+    0x0064101a,
+    0x0065e002,
+    0x0065f00a,
+    0x0065f802,
+    0x0066001a,
+    0x00661002,
+    0x0066181a,
+    0x00663002,
+    0x0066381a,
+    0x0066501a,
+    0x00666012,
+    0x0066a812,
+    0x00671012,
+    0x00680012,
+    0x0068101a,
+    0x0069d812,
+    0x0069f002,
+    0x0069f81a,
+    0x006a0832,
+    0x006a302a,
+    0x006a502a,
+    0x006a6802,
+    0x006a7008,
+    0x006ab802,
+    0x006b1012,
+    0x006c0802,
+    0x006c101a,
+    0x006e5002,
+    0x006e7802,
+    0x006e801a,
+    0x006e9022,
+    0x006eb002,
+    0x006ec06a,
+    0x006ef802,
+    0x006f901a,
+    0x00718802,
+    0x0071980a,
+    0x0071a062,
+    0x00723872,
+    0x00758802,
+    0x0075980a,
+    0x0075a082,
+    0x00764052,
+    0x0078c012,
+    0x0079a802,
+    0x0079b802,
+    0x0079c802,
+    0x0079f01a,
+    0x007b88d2,
+    0x007bf80a,
+    0x007c0042,
+    0x007c3012,
+    0x007c68a2,
+    0x007cca32,
+    0x007e3002,
+    0x00816832,
+    0x0081880a,
+    0x00819052,
+    0x0081c812,
+    0x0081d81a,
+    0x0081e812,
+    0x0082b01a,
+    0x0082c012,
+    0x0082f022,
+    0x00838832,
+    0x00841002,
+    0x0084200a,
+    0x00842812,
+    0x00846802,
+    0x0084e802,
+    0x008805f4,
+    0x008b047c,
+    0x008d457b,
+    0x009ae822,
+    0x00b89022,
+    0x00b8a80a,
+    0x00b99012,
+    0x00b9a00a,
+    0x00ba9012,
+    0x00bb9012,
+    0x00bda012,
+    0x00bdb00a,
+    0x00bdb862,
+    0x00bdf07a,
+    0x00be3002,
+    0x00be381a,
+    0x00be48a2,
+    0x00bee802,
+    0x00c05822,
+    0x00c07001,
+    0x00c07802,
+    0x00c42812,
+    0x00c54802,
+    0x00c90022,
+    0x00c9183a,
+    0x00c93812,
+    0x00c9482a,
+    0x00c9801a,
+    0x00c99002,
+    0x00c9985a,
+    0x00c9c822,
+    0x00d0b812,
+    0x00d0c81a,
+    0x00d0d802,
+    0x00d2a80a,
+    0x00d2b002,
+    0x00d2b80a,
+    0x00d2c062,
+    0x00d30002,
+    0x00d31002,
+    0x00d32872,
+    0x00d3685a,
+    0x00d39892,
+    0x00d3f802,
+    0x00d581e2,
+    0x00d80032,
+    0x00d8200a,
+    0x00d9a062,
+    0x00d9d80a,
+    0x00d9e002,
+    0x00d9e84a,
+    0x00da1002,
+    0x00da181a,
+    0x00db5882,
+    0x00dc0012,
+    0x00dc100a,
+    0x00dd080a,
+    0x00dd1032,
+    0x00dd301a,
+    0x00dd4012,
+    0x00dd500a,
+    0x00dd5822,
+    0x00df3002,
+    0x00df380a,
+    0x00df4012,
+    0x00df502a,
+    0x00df6802,
+    0x00df700a,
+    0x00df7822,
+    0x00df901a,
+    0x00e1207a,
+    0x00e16072,
+    0x00e1a01a,
+    0x00e1b012,
+    0x00e68022,
+    0x00e6a0c2,
+    0x00e7080a,
+    0x00e71062,
+    0x00e76802,
+    0x00e7a002,
+    0x00e7b80a,
+    0x00e7c012,
+    0x00ee03f2,
+    0x01005801,
+    0x01006002,
+    0x0100680d,
+    0x01007011,
+    0x01014061,
+    0x0101e003,
+    0x01024803,
+    0x010300f1,
+    0x01068202,
+    0x01091003,
+    0x0109c803,
+    0x010ca053,
+    0x010d4813,
+    0x0118d013,
+    0x01194003,
+    0x011c4003,
+    0x011e7803,
+    0x011f48a3,
+    0x011fc023,
+    0x01261003,
+    0x012d5013,
+    0x012db003,
+    0x012e0003,
+    0x012fd833,
+    0x01300053,
+    0x013038b3,
+    0x0130a713,
+    0x01348753,
+    0x013840a3,
+    0x0138a003,
+    0x0138b003,
+    0x0138e803,
+    0x01390803,
+    0x01394003,
+    0x01399813,
+    0x013a2003,
+    0x013a3803,
+    0x013a6003,
+    0x013a7003,
+    0x013a9823,
+    0x013ab803,
+    0x013b1843,
+    0x013ca823,
+    0x013d0803,
+    0x013d8003,
+    0x013df803,
+    0x0149a013,
+    0x01582823,
+    0x0158d813,
+    0x015a8003,
+    0x015aa803,
+    0x01677822,
+    0x016bf802,
+    0x016f01f2,
+    0x01815052,
+    0x01818003,
+    0x0181e803,
+    0x0184c812,
+    0x0194b803,
+    0x0194c803,
+    0x05337832,
+    0x0533a092,
+    0x0534f012,
+    0x05378012,
+    0x05401002,
+    0x05403002,
+    0x05405802,
+    0x0541181a,
+    0x05412812,
+    0x0541380a,
+    0x05416002,
+    0x0544001a,
+    0x0545a0fa,
+    0x05462012,
+    0x05470112,
+    0x0547f802,
+    0x05493072,
+    0x054a38a2,
+    0x054a901a,
+    0x054b01c4,
+    0x054c0022,
+    0x054c180a,
+    0x054d9802,
+    0x054da01a,
+    0x054db032,
+    0x054dd01a,
+    0x054de012,
+    0x054df02a,
+    0x054f2802,
+    0x05514852,
+    0x0551781a,
+    0x05518812,
+    0x0551981a,
+    0x0551a812,
+    0x05521802,
+    0x05526002,
+    0x0552680a,
+    0x0553e002,
+    0x05558002,
+    0x05559022,
+    0x0555b812,
+    0x0555f012,
+    0x05560802,
+    0x0557580a,
+    0x05576012,
+    0x0557701a,
+    0x0557a80a,
+    0x0557b002,
+    0x055f181a,
+    0x055f2802,
+    0x055f301a,
+    0x055f4002,
+    0x055f481a,
+    0x055f600a,
+    0x055f6802,
+    0x05600006,
+    0x056009a7,
+    0x0560e006,
+    0x0560e9a7,
+    0x0561c006,
+    0x0561c9a7,
+    0x0562a006,
+    0x0562a9a7,
+    0x05638006,
+    0x056389a7,
+    0x05646006,
+    0x056469a7,
+    0x05654006,
+    0x056549a7,
+    0x05662006,
+    0x056629a7,
+    0x05670006,
+    0x056709a7,
+    0x0567e006,
+    0x0567e9a7,
+    0x0568c006,
+    0x0568c9a7,
+    0x0569a006,
+    0x0569a9a7,
+    0x056a8006,
+    0x056a89a7,
+    0x056b6006,
+    0x056b69a7,
+    0x056c4006,
+    0x056c49a7,
+    0x056d2006,
+    0x056d29a7,
+    0x056e0006,
+    0x056e09a7,
+    0x056ee006,
+    0x056ee9a7,
+    0x056fc006,
+    0x056fc9a7,
+    0x0570a006,
+    0x0570a9a7,
+    0x05718006,
+    0x057189a7,
+    0x05726006,
+    0x057269a7,
+    0x05734006,
+    0x057349a7,
+    0x05742006,
+    0x057429a7,
+    0x05750006,
+    0x057509a7,
+    0x0575e006,
+    0x0575e9a7,
+    0x0576c006,
+    0x0576c9a7,
+    0x0577a006,
+    0x0577a9a7,
+    0x05788006,
+    0x057889a7,
+    0x05796006,
+    0x057969a7,
+    0x057a4006,
+    0x057a49a7,
+    0x057b2006,
+    0x057b29a7,
+    0x057c0006,
+    0x057c09a7,
+    0x057ce006,
+    0x057ce9a7,
+    0x057dc006,
+    0x057dc9a7,
+    0x057ea006,
+    0x057ea9a7,
+    0x057f8006,
+    0x057f89a7,
+    0x05806006,
+    0x058069a7,
+    0x05814006,
+    0x058149a7,
+    0x05822006,
+    0x058229a7,
+    0x05830006,
+    0x058309a7,
+    0x0583e006,
+    0x0583e9a7,
+    0x0584c006,
+    0x0584c9a7,
+    0x0585a006,
+    0x0585a9a7,
+    0x05868006,
+    0x058689a7,
+    0x05876006,
+    0x058769a7,
+    0x05884006,
+    0x058849a7,
+    0x05892006,
+    0x058929a7,
+    0x058a0006,
+    0x058a09a7,
+    0x058ae006,
+    0x058ae9a7,
+    0x058bc006,
+    0x058bc9a7,
+    0x058ca006,
+    0x058ca9a7,
+    0x058d8006,
+    0x058d89a7,
+    0x058e6006,
+    0x058e69a7,
+    0x058f4006,
+    0x058f49a7,
+    0x05902006,
+    0x059029a7,
+    0x05910006,
+    0x059109a7,
+    0x0591e006,
+    0x0591e9a7,
+    0x0592c006,
+    0x0592c9a7,
+    0x0593a006,
+    0x0593a9a7,
+    0x05948006,
+    0x059489a7,
+    0x05956006,
+    0x059569a7,
+    0x05964006,
+    0x059649a7,
+    0x05972006,
+    0x059729a7,
+    0x05980006,
+    0x059809a7,
+    0x0598e006,
+    0x0598e9a7,
+    0x0599c006,
+    0x0599c9a7,
+    0x059aa006,
+    0x059aa9a7,
+    0x059b8006,
+    0x059b89a7,
+    0x059c6006,
+    0x059c69a7,
+    0x059d4006,
+    0x059d49a7,
+    0x059e2006,
+    0x059e29a7,
+    0x059f0006,
+    0x059f09a7,
+    0x059fe006,
+    0x059fe9a7,
+    0x05a0c006,
+    0x05a0c9a7,
+    0x05a1a006,
+    0x05a1a9a7,
+    0x05a28006,
+    0x05a289a7,
+    0x05a36006,
+    0x05a369a7,
+    0x05a44006,
+    0x05a449a7,
+    0x05a52006,
+    0x05a529a7,
+    0x05a60006,
+    0x05a609a7,
+    0x05a6e006,
+    0x05a6e9a7,
+    0x05a7c006,
+    0x05a7c9a7,
+    0x05a8a006,
+    0x05a8a9a7,
+    0x05a98006,
+    0x05a989a7,
+    0x05aa6006,
+    0x05aa69a7,
+    0x05ab4006,
+    0x05ab49a7,
+    0x05ac2006,
+    0x05ac29a7,
+    0x05ad0006,
+    0x05ad09a7,
+    0x05ade006,
+    0x05ade9a7,
+    0x05aec006,
+    0x05aec9a7,
+    0x05afa006,
+    0x05afa9a7,
+    0x05b08006,
+    0x05b089a7,
+    0x05b16006,
+    0x05b169a7,
+    0x05b24006,
+    0x05b249a7,
+    0x05b32006,
+    0x05b329a7,
+    0x05b40006,
+    0x05b409a7,
+    0x05b4e006,
+    0x05b4e9a7,
+    0x05b5c006,
+    0x05b5c9a7,
+    0x05b6a006,
+    0x05b6a9a7,
+    0x05b78006,
+    0x05b789a7,
+    0x05b86006,
+    0x05b869a7,
+    0x05b94006,
+    0x05b949a7,
+    0x05ba2006,
+    0x05ba29a7,
+    0x05bb0006,
+    0x05bb09a7,
+    0x05bbe006,
+    0x05bbe9a7,
+    0x05bcc006,
+    0x05bcc9a7,
+    0x05bda006,
+    0x05bda9a7,
+    0x05be8006,
+    0x05be89a7,
+    0x05bf6006,
+    0x05bf69a7,
+    0x05c04006,
+    0x05c049a7,
+    0x05c12006,
+    0x05c129a7,
+    0x05c20006,
+    0x05c209a7,
+    0x05c2e006,
+    0x05c2e9a7,
+    0x05c3c006,
+    0x05c3c9a7,
+    0x05c4a006,
+    0x05c4a9a7,
+    0x05c58006,
+    0x05c589a7,
+    0x05c66006,
+    0x05c669a7,
+    0x05c74006,
+    0x05c749a7,
+    0x05c82006,
+    0x05c829a7,
+    0x05c90006,
+    0x05c909a7,
+    0x05c9e006,
+    0x05c9e9a7,
+    0x05cac006,
+    0x05cac9a7,
+    0x05cba006,
+    0x05cba9a7,
+    0x05cc8006,
+    0x05cc89a7,
+    0x05cd6006,
+    0x05cd69a7,
+    0x05ce4006,
+    0x05ce49a7,
+    0x05cf2006,
+    0x05cf29a7,
+    0x05d00006,
+    0x05d009a7,
+    0x05d0e006,
+    0x05d0e9a7,
+    0x05d1c006,
+    0x05d1c9a7,
+    0x05d2a006,
+    0x05d2a9a7,
+    0x05d38006,
+    0x05d389a7,
+    0x05d46006,
+    0x05d469a7,
+    0x05d54006,
+    0x05d549a7,
+    0x05d62006,
+    0x05d629a7,
+    0x05d70006,
+    0x05d709a7,
+    0x05d7e006,
+    0x05d7e9a7,
+    0x05d8c006,
+    0x05d8c9a7,
+    0x05d9a006,
+    0x05d9a9a7,
+    0x05da8006,
+    0x05da89a7,
+    0x05db6006,
+    0x05db69a7,
+    0x05dc4006,
+    0x05dc49a7,
+    0x05dd2006,
+    0x05dd29a7,
+    0x05de0006,
+    0x05de09a7,
+    0x05dee006,
+    0x05dee9a7,
+    0x05dfc006,
+    0x05dfc9a7,
+    0x05e0a006,
+    0x05e0a9a7,
+    0x05e18006,
+    0x05e189a7,
+    0x05e26006,
+    0x05e269a7,
+    0x05e34006,
+    0x05e349a7,
+    0x05e42006,
+    0x05e429a7,
+    0x05e50006,
+    0x05e509a7,
+    0x05e5e006,
+    0x05e5e9a7,
+    0x05e6c006,
+    0x05e6c9a7,
+    0x05e7a006,
+    0x05e7a9a7,
+    0x05e88006,
+    0x05e889a7,
+    0x05e96006,
+    0x05e969a7,
+    0x05ea4006,
+    0x05ea49a7,
+    0x05eb2006,
+    0x05eb29a7,
+    0x05ec0006,
+    0x05ec09a7,
+    0x05ece006,
+    0x05ece9a7,
+    0x05edc006,
+    0x05edc9a7,
+    0x05eea006,
+    0x05eea9a7,
+    0x05ef8006,
+    0x05ef89a7,
+    0x05f06006,
+    0x05f069a7,
+    0x05f14006,
+    0x05f149a7,
+    0x05f22006,
+    0x05f229a7,
+    0x05f30006,
+    0x05f309a7,
+    0x05f3e006,
+    0x05f3e9a7,
+    0x05f4c006,
+    0x05f4c9a7,
+    0x05f5a006,
+    0x05f5a9a7,
+    0x05f68006,
+    0x05f689a7,
+    0x05f76006,
+    0x05f769a7,
+    0x05f84006,
+    0x05f849a7,
+    0x05f92006,
+    0x05f929a7,
+    0x05fa0006,
+    0x05fa09a7,
+    0x05fae006,
+    0x05fae9a7,
+    0x05fbc006,
+    0x05fbc9a7,
+    0x05fca006,
+    0x05fca9a7,
+    0x05fd8006,
+    0x05fd89a7,
+    0x05fe6006,
+    0x05fe69a7,
+    0x05ff4006,
+    0x05ff49a7,
+    0x06002006,
+    0x060029a7,
+    0x06010006,
+    0x060109a7,
+    0x0601e006,
+    0x0601e9a7,
+    0x0602c006,
+    0x0602c9a7,
+    0x0603a006,
+    0x0603a9a7,
+    0x06048006,
+    0x060489a7,
+    0x06056006,
+    0x060569a7,
+    0x06064006,
+    0x060649a7,
+    0x06072006,
+    0x060729a7,
+    0x06080006,
+    0x060809a7,
+    0x0608e006,
+    0x0608e9a7,
+    0x0609c006,
+    0x0609c9a7,
+    0x060aa006,
+    0x060aa9a7,
+    0x060b8006,
+    0x060b89a7,
+    0x060c6006,
+    0x060c69a7,
+    0x060d4006,
+    0x060d49a7,
+    0x060e2006,
+    0x060e29a7,
+    0x060f0006,
+    0x060f09a7,
+    0x060fe006,
+    0x060fe9a7,
+    0x0610c006,
+    0x0610c9a7,
+    0x0611a006,
+    0x0611a9a7,
+    0x06128006,
+    0x061289a7,
+    0x06136006,
+    0x061369a7,
+    0x06144006,
+    0x061449a7,
+    0x06152006,
+    0x061529a7,
+    0x06160006,
+    0x061609a7,
+    0x0616e006,
+    0x0616e9a7,
+    0x0617c006,
+    0x0617c9a7,
+    0x0618a006,
+    0x0618a9a7,
+    0x06198006,
+    0x061989a7,
+    0x061a6006,
+    0x061a69a7,
+    0x061b4006,
+    0x061b49a7,
+    0x061c2006,
+    0x061c29a7,
+    0x061d0006,
+    0x061d09a7,
+    0x061de006,
+    0x061de9a7,
+    0x061ec006,
+    0x061ec9a7,
+    0x061fa006,
+    0x061fa9a7,
+    0x06208006,
+    0x062089a7,
+    0x06216006,
+    0x062169a7,
+    0x06224006,
+    0x062249a7,
+    0x06232006,
+    0x062329a7,
+    0x06240006,
+    0x062409a7,
+    0x0624e006,
+    0x0624e9a7,
+    0x0625c006,
+    0x0625c9a7,
+    0x0626a006,
+    0x0626a9a7,
+    0x06278006,
+    0x062789a7,
+    0x06286006,
+    0x062869a7,
+    0x06294006,
+    0x062949a7,
+    0x062a2006,
+    0x062a29a7,
+    0x062b0006,
+    0x062b09a7,
+    0x062be006,
+    0x062be9a7,
+    0x062cc006,
+    0x062cc9a7,
+    0x062da006,
+    0x062da9a7,
+    0x062e8006,
+    0x062e89a7,
+    0x062f6006,
+    0x062f69a7,
+    0x06304006,
+    0x063049a7,
+    0x06312006,
+    0x063129a7,
+    0x06320006,
+    0x063209a7,
+    0x0632e006,
+    0x0632e9a7,
+    0x0633c006,
+    0x0633c9a7,
+    0x0634a006,
+    0x0634a9a7,
+    0x06358006,
+    0x063589a7,
+    0x06366006,
+    0x063669a7,
+    0x06374006,
+    0x063749a7,
+    0x06382006,
+    0x063829a7,
+    0x06390006,
+    0x063909a7,
+    0x0639e006,
+    0x0639e9a7,
+    0x063ac006,
+    0x063ac9a7,
+    0x063ba006,
+    0x063ba9a7,
+    0x063c8006,
+    0x063c89a7,
+    0x063d6006,
+    0x063d69a7,
+    0x063e4006,
+    0x063e49a7,
+    0x063f2006,
+    0x063f29a7,
+    0x06400006,
+    0x064009a7,
+    0x0640e006,
+    0x0640e9a7,
+    0x0641c006,
+    0x0641c9a7,
+    0x0642a006,
+    0x0642a9a7,
+    0x06438006,
+    0x064389a7,
+    0x06446006,
+    0x064469a7,
+    0x06454006,
+    0x064549a7,
+    0x06462006,
+    0x064629a7,
+    0x06470006,
+    0x064709a7,
+    0x0647e006,
+    0x0647e9a7,
+    0x0648c006,
+    0x0648c9a7,
+    0x0649a006,
+    0x0649a9a7,
+    0x064a8006,
+    0x064a89a7,
+    0x064b6006,
+    0x064b69a7,
+    0x064c4006,
+    0x064c49a7,
+    0x064d2006,
+    0x064d29a7,
+    0x064e0006,
+    0x064e09a7,
+    0x064ee006,
+    0x064ee9a7,
+    0x064fc006,
+    0x064fc9a7,
+    0x0650a006,
+    0x0650a9a7,
+    0x06518006,
+    0x065189a7,
+    0x06526006,
+    0x065269a7,
+    0x06534006,
+    0x065349a7,
+    0x06542006,
+    0x065429a7,
+    0x06550006,
+    0x065509a7,
+    0x0655e006,
+    0x0655e9a7,
+    0x0656c006,
+    0x0656c9a7,
+    0x0657a006,
+    0x0657a9a7,
+    0x06588006,
+    0x065889a7,
+    0x06596006,
+    0x065969a7,
+    0x065a4006,
+    0x065a49a7,
+    0x065b2006,
+    0x065b29a7,
+    0x065c0006,
+    0x065c09a7,
+    0x065ce006,
+    0x065ce9a7,
+    0x065dc006,
+    0x065dc9a7,
+    0x065ea006,
+    0x065ea9a7,
+    0x065f8006,
+    0x065f89a7,
+    0x06606006,
+    0x066069a7,
+    0x06614006,
+    0x066149a7,
+    0x06622006,
+    0x066229a7,
+    0x06630006,
+    0x066309a7,
+    0x0663e006,
+    0x0663e9a7,
+    0x0664c006,
+    0x0664c9a7,
+    0x0665a006,
+    0x0665a9a7,
+    0x06668006,
+    0x066689a7,
+    0x06676006,
+    0x066769a7,
+    0x06684006,
+    0x066849a7,
+    0x06692006,
+    0x066929a7,
+    0x066a0006,
+    0x066a09a7,
+    0x066ae006,
+    0x066ae9a7,
+    0x066bc006,
+    0x066bc9a7,
+    0x066ca006,
+    0x066ca9a7,
+    0x066d8006,
+    0x066d89a7,
+    0x066e6006,
+    0x066e69a7,
+    0x066f4006,
+    0x066f49a7,
+    0x06702006,
+    0x067029a7,
+    0x06710006,
+    0x067109a7,
+    0x0671e006,
+    0x0671e9a7,
+    0x0672c006,
+    0x0672c9a7,
+    0x0673a006,
+    0x0673a9a7,
+    0x06748006,
+    0x067489a7,
+    0x06756006,
+    0x067569a7,
+    0x06764006,
+    0x067649a7,
+    0x06772006,
+    0x067729a7,
+    0x06780006,
+    0x067809a7,
+    0x0678e006,
+    0x0678e9a7,
+    0x0679c006,
+    0x0679c9a7,
+    0x067aa006,
+    0x067aa9a7,
+    0x067b8006,
+    0x067b89a7,
+    0x067c6006,
+    0x067c69a7,
+    0x067d4006,
+    0x067d49a7,
+    0x067e2006,
+    0x067e29a7,
+    0x067f0006,
+    0x067f09a7,
+    0x067fe006,
+    0x067fe9a7,
+    0x0680c006,
+    0x0680c9a7,
+    0x0681a006,
+    0x0681a9a7,
+    0x06828006,
+    0x068289a7,
+    0x06836006,
+    0x068369a7,
+    0x06844006,
+    0x068449a7,
+    0x06852006,
+    0x068529a7,
+    0x06860006,
+    0x068609a7,
+    0x0686e006,
+    0x0686e9a7,
+    0x0687c006,
+    0x0687c9a7,
+    0x0688a006,
+    0x0688a9a7,
+    0x06898006,
+    0x068989a7,
+    0x068a6006,
+    0x068a69a7,
+    0x068b4006,
+    0x068b49a7,
+    0x068c2006,
+    0x068c29a7,
+    0x068d0006,
+    0x068d09a7,
+    0x068de006,
+    0x068de9a7,
+    0x068ec006,
+    0x068ec9a7,
+    0x068fa006,
+    0x068fa9a7,
+    0x06908006,
+    0x069089a7,
+    0x06916006,
+    0x069169a7,
+    0x06924006,
+    0x069249a7,
+    0x06932006,
+    0x069329a7,
+    0x06940006,
+    0x069409a7,
+    0x0694e006,
+    0x0694e9a7,
+    0x0695c006,
+    0x0695c9a7,
+    0x0696a006,
+    0x0696a9a7,
+    0x06978006,
+    0x069789a7,
+    0x06986006,
+    0x069869a7,
+    0x06994006,
+    0x069949a7,
+    0x069a2006,
+    0x069a29a7,
+    0x069b0006,
+    0x069b09a7,
+    0x069be006,
+    0x069be9a7,
+    0x069cc006,
+    0x069cc9a7,
+    0x069da006,
+    0x069da9a7,
+    0x069e8006,
+    0x069e89a7,
+    0x069f6006,
+    0x069f69a7,
+    0x06a04006,
+    0x06a049a7,
+    0x06a12006,
+    0x06a129a7,
+    0x06a20006,
+    0x06a209a7,
+    0x06a2e006,
+    0x06a2e9a7,
+    0x06a3c006,
+    0x06a3c9a7,
+    0x06a4a006,
+    0x06a4a9a7,
+    0x06a58006,
+    0x06a589a7,
+    0x06a66006,
+    0x06a669a7,
+    0x06a74006,
+    0x06a749a7,
+    0x06a82006,
+    0x06a829a7,
+    0x06a90006,
+    0x06a909a7,
+    0x06a9e006,
+    0x06a9e9a7,
+    0x06aac006,
+    0x06aac9a7,
+    0x06aba006,
+    0x06aba9a7,
+    0x06ac8006,
+    0x06ac89a7,
+    0x06ad6006,
+    0x06ad69a7,
+    0x06ae4006,
+    0x06ae49a7,
+    0x06af2006,
+    0x06af29a7,
+    0x06b00006,
+    0x06b009a7,
+    0x06b0e006,
+    0x06b0e9a7,
+    0x06b1c006,
+    0x06b1c9a7,
+    0x06b2a006,
+    0x06b2a9a7,
+    0x06b38006,
+    0x06b389a7,
+    0x06b46006,
+    0x06b469a7,
+    0x06b54006,
+    0x06b549a7,
+    0x06b62006,
+    0x06b629a7,
+    0x06b70006,
+    0x06b709a7,
+    0x06b7e006,
+    0x06b7e9a7,
+    0x06b8c006,
+    0x06b8c9a7,
+    0x06b9a006,
+    0x06b9a9a7,
+    0x06ba8006,
+    0x06ba89a7,
+    0x06bb6006,
+    0x06bb69a7,
+    0x06bc4006,
+    0x06bc49a7,
+    0x06bd816c,
+    0x06be5b0b,
+    0x07d8f002,
+    0x07f000f2,
+    0x07f100f2,
+    0x07f7f801,
+    0x07fcf012,
+    0x07ff80b1,
+    0x080fe802,
+    0x08170002,
+    0x081bb042,
+    0x08500822,
+    0x08502812,
+    0x08506032,
+    0x0851c022,
+    0x0851f802,
+    0x08572812,
+    0x08692032,
+    0x08755812,
+    0x087a30a2,
+    0x087c1032,
+    0x0880000a,
+    0x08800802,
+    0x0880100a,
+    0x0881c0e2,
+    0x08838002,
+    0x08839812,
+    0x0883f822,
+    0x0884100a,
+    0x0885802a,
+    0x08859832,
+    0x0885b81a,
+    0x0885c812,
+    0x0885e808,
+    0x08861002,
+    0x08866808,
+    0x08880022,
+    0x08893842,
+    0x0889600a,
+    0x08896872,
+    0x088a281a,
+    0x088b9802,
+    0x088c0012,
+    0x088c100a,
+    0x088d982a,
+    0x088db082,
+    0x088df81a,
+    0x088e1018,
+    0x088e4832,
+    0x088e700a,
+    0x088e7802,
+    0x0891602a,
+    0x08917822,
+    0x0891901a,
+    0x0891a002,
+    0x0891a80a,
+    0x0891b012,
+    0x0891f002,
+    0x0896f802,
+    0x0897002a,
+    0x08971872,
+    0x08980012,
+    0x0898101a,
+    0x0899d812,
+    0x0899f002,
+    0x0899f80a,
+    0x089a0002,
+    0x089a083a,
+    0x089a381a,
+    0x089a582a,
+    0x089ab802,
+    0x089b101a,
+    0x089b3062,
+    0x089b8042,
+    0x08a1a82a,
+    0x08a1c072,
+    0x08a2001a,
+    0x08a21022,
+    0x08a2280a,
+    0x08a23002,
+    0x08a2f002,
+    0x08a58002,
+    0x08a5881a,
+    0x08a59852,
+    0x08a5c80a,
+    0x08a5d002,
+    0x08a5d81a,
+    0x08a5e802,
+    0x08a5f00a,
+    0x08a5f812,
+    0x08a6080a,
+    0x08a61012,
+    0x08ad7802,
+    0x08ad801a,
+    0x08ad9032,
+    0x08adc03a,
+    0x08ade012,
+    0x08adf00a,
+    0x08adf812,
+    0x08aee012,
+    0x08b1802a,
+    0x08b19872,
+    0x08b1d81a,
+    0x08b1e802,
+    0x08b1f00a,
+    0x08b1f812,
+    0x08b55802,
+    0x08b5600a,
+    0x08b56802,
+    0x08b5701a,
+    0x08b58052,
+    0x08b5b00a,
+    0x08b5b802,
+    0x08b8e822,
+    0x08b91032,
+    0x08b9300a,
+    0x08b93842,
+    0x08c1602a,
+    0x08c17882,
+    0x08c1c00a,
+    0x08c1c812,
+    0x08c98002,
+    0x08c9884a,
+    0x08c9b81a,
+    0x08c9d812,
+    0x08c9e80a,
+    0x08c9f002,
+    0x08c9f808,
+    0x08ca000a,
+    0x08ca0808,
+    0x08ca100a,
+    0x08ca1802,
+    0x08ce882a,
+    0x08cea032,
+    0x08ced012,
+    0x08cee03a,
+    0x08cf0002,
+    0x08cf200a,
+    0x08d00892,
+    0x08d19852,
+    0x08d1c80a,
+    0x08d1d008,
+    0x08d1d832,
+    0x08d23802,
+    0x08d28852,
+    0x08d2b81a,
+    0x08d2c822,
+    0x08d42058,
+    0x08d450c2,
+    0x08d4b80a,
+    0x08d4c012,
+    0x08e1780a,
+    0x08e18062,
+    0x08e1c052,
+    0x08e1f00a,
+    0x08e1f802,
+    0x08e49152,
+    0x08e5480a,
+    0x08e55062,
+    0x08e5880a,
+    0x08e59012,
+    0x08e5a00a,
+    0x08e5a812,
+    0x08e98852,
+    0x08e9d002,
+    0x08e9e012,
+    0x08e9f862,
+    0x08ea3008,
+    0x08ea3802,
+    0x08ec504a,
+    0x08ec8012,
+    0x08ec981a,
+    0x08eca802,
+    0x08ecb00a,
+    0x08ecb802,
+    0x08f79812,
+    0x08f7a81a,
+    0x09a18081,
+    0x0b578042,
+    0x0b598062,
+    0x0b7a7802,
+    0x0b7a8b6a,
+    0x0b7c7832,
+    0x0b7f2002,
+    0x0b7f801a,
+    0x0de4e812,
+    0x0de50031,
+    0x0e7802d2,
+    0x0e798162,
+    0x0e8b2802,
+    0x0e8b300a,
+    0x0e8b3822,
+    0x0e8b680a,
+    0x0e8b7042,
+    0x0e8b9871,
+    0x0e8bd872,
+    0x0e8c2862,
+    0x0e8d5032,
+    0x0e921022,
+    0x0ed00362,
+    0x0ed1db12,
+    0x0ed3a802,
+    0x0ed42002,
+    0x0ed4d842,
+    0x0ed508e2,
+    0x0f000062,
+    0x0f004102,
+    0x0f00d862,
+    0x0f011812,
+    0x0f013042,
+    0x0f098062,
+    0x0f157002,
+    0x0f176032,
+    0x0f468062,
+    0x0f4a2062,
+    0x0f8007f3,
+    0x0f8407f3,
+    0x0f886823,
+    0x0f897803,
+    0x0f8b6053,
+    0x0f8bf013,
+    0x0f8c7003,
+    0x0f8c8893,
+    0x0f8d6b83,
+    0x0f8f3199,
+    0x0f9008e3,
+    0x0f90d003,
+    0x0f917803,
+    0x0f919083,
+    0x0f91e033,
+    0x0f924ff3,
+    0x0f964ff3,
+    0x0f9a4ff3,
+    0x0f9e4b13,
+    0x0f9fd842,
+    0x0fa007f3,
+    0x0fa407f3,
+    0x0fa803d3,
+    0x0faa37f3,
+    0x0fae37f3,
+    0x0fb23093,
+    0x0fb407f3,
+    0x0fbba0b3,
+    0x0fbeaaa3,
+    0x0fc06033,
+    0x0fc24073,
+    0x0fc2d053,
+    0x0fc44073,
+    0x0fc57513,
+    0x0fc862e3,
+    0x0fc9e093,
+    0x0fca3ff3,
+    0x0fce3ff3,
+    0x0fd23ff3,
+    0x0fd63b83,
+    0x0fe007f3,
+    0x0fe407f3,
+    0x0fe807f3,
+    0x0fec07f3,
+    0x0ff007f3,
+    0x0ff407f3,
+    0x0ff807f3,
+    0x0ffc07d3,
+    0x700001f1,
+    0x700105f2,
+    0x700407f1,
+    0x700807f2,
+    0x700c06f2,
+    0x700f87f1,
+    0x701387f1,
+    0x701787f1,
+    0x701b87f1,
+    0x701f87f1,
+    0x702387f1,
+    0x702787f1,
+    0x702b87f1,
+    0x702f87f1,
+    0x703387f1,
+    0x703787f1,
+    0x703b87f1,
+    0x703f87f1,
+    0x704387f1,
+    0x704787f1,
+    0x704b87f1,
+    0x704f87f1,
+    0x705387f1,
+    0x705787f1,
+    0x705b87f1,
+    0x705f87f1,
+    0x706387f1,
+    0x706787f1,
+    0x706b87f1,
+    0x706f87f1,
+    0x707387f1,
+    0x707787f1,
+    0x707b87f1,
+    0x707f80f1};
 
 /// Returns the extended grapheme cluster bondary property of a code point.
 [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr __property __get_property(const char32_t __code_point) noexcept {

diff  --git a/libcxx/test/libcxx/utilities/format/format.string/format.string.std/extended_grapheme_cluster.h b/libcxx/test/libcxx/utilities/format/format.string/format.string.std/extended_grapheme_cluster.h
index 34d54a8a24839..e66d4b1551d81 100644
--- a/libcxx/test/libcxx/utilities/format/format.string/format.string.std/extended_grapheme_cluster.h
+++ b/libcxx/test/libcxx/utilities/format/format.string/format.string.std/extended_grapheme_cluster.h
@@ -80,8 +80,8 @@ struct data {
 };
 
 /// The data for UTF-8.
-std::array<data<char>, 602> data_utf8 = {
-    {{"\U00000020\U00000020", {32, 32}, {1, 2}},
+std::array<data<char>, 602> data_utf8 = {{
+     {"\U00000020\U00000020", {32, 32}, {1, 2}},
      {"\U00000020\U00000308\U00000020", {32, 32}, {3, 4}},
      {"\U00000020\U0000000d", {32, 13}, {1, 2}},
      {"\U00000020\U00000308\U0000000d", {32, 13}, {3, 4}},
@@ -689,8 +689,8 @@ std::array<data<char>, 602> data_utf8 = {
 /// Note that most of the data for the UTF-16 and UTF-32 are identical. However
 /// since the size of the code units 
diff er the breaks can contain 
diff erent
 /// values.
-std::array<data<wchar_t>, 602> data_utf16 = {
-    {{L"\U00000020\U00000020", {32, 32}, {1, 2}},
+std::array<data<wchar_t>, 602> data_utf16 = {{
+     {L"\U00000020\U00000020", {32, 32}, {1, 2}},
      {L"\U00000020\U00000308\U00000020", {32, 32}, {2, 3}},
      {L"\U00000020\U0000000d", {32, 13}, {1, 2}},
      {L"\U00000020\U00000308\U0000000d", {32, 13}, {2, 3}},
@@ -1298,8 +1298,8 @@ std::array<data<wchar_t>, 602> data_utf16 = {
 /// Note that most of the data for the UTF-16 and UTF-32 are identical. However
 /// since the size of the code units 
diff er the breaks can contain 
diff erent
 /// values.
-std::array<data<wchar_t>, 602> data_utf32 = {
-    {{L"\U00000020\U00000020", {32, 32}, {1, 2}},
+std::array<data<wchar_t>, 602> data_utf32 = {{
+     {L"\U00000020\U00000020", {32, 32}, {1, 2}},
      {L"\U00000020\U00000308\U00000020", {32, 32}, {2, 3}},
      {L"\U00000020\U0000000d", {32, 13}, {1, 2}},
      {L"\U00000020\U00000308\U0000000d", {32, 13}, {2, 3}},

diff  --git a/libcxx/utils/generate_extended_grapheme_cluster_table.py b/libcxx/utils/generate_extended_grapheme_cluster_table.py
index 5c5096047843f..e88861e286763 100755
--- a/libcxx/utils/generate_extended_grapheme_cluster_table.py
+++ b/libcxx/utils/generate_extended_grapheme_cluster_table.py
@@ -73,11 +73,11 @@ def compactPropertyRanges(input: list[PropertyRange]) -> list[PropertyRange]:
     return result
 
 
-PROP_VALUE_ENUMERATOR_TEMPLATE = "__{}"
+PROP_VALUE_ENUMERATOR_TEMPLATE = "  __{}"
 PROP_VALUE_ENUM_TEMPLATE = """
 enum class __property : uint8_t {{
   // Values generated from the data files.
-  {enumerators},
+{enumerators},
 
   // The properies below aren't stored in the "database".
 
@@ -111,7 +111,8 @@ def compactPropertyRanges(input: list[PropertyRange]) -> list[PropertyRange]:
 /// this approach uses less space for the data and is about 4% faster in the
 /// following benchmark.
 /// libcxx/benchmarks/std_format_spec_string_unicode.bench.cpp
-inline constexpr uint32_t __entries[{size}] = {{{entries}}};
+inline constexpr uint32_t __entries[{size}] = {{
+{entries}}};
 
 /// Returns the extended grapheme cluster bondary property of a code point.
 [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr __property __get_property(const char32_t __code_point) noexcept {{
@@ -225,17 +226,14 @@ def compactPropertyRanges(input: list[PropertyRange]) -> list[PropertyRange]:
 #if _LIBCPP_STD_VER > 17
 
 namespace __extended_grapheme_custer_property_boundary {{
-
 {content}
-
-}} // __extended_grapheme_custer_property_boundary
+}} // namespace __extended_grapheme_custer_property_boundary
 
 #endif //_LIBCPP_STD_VER > 17
 
 _LIBCPP_END_NAMESPACE_STD
 
-#endif // _LIBCPP___FORMAT_EXTENDED_GRAPHEME_CLUSTER_TABLE_H
-"""
+#endif // _LIBCPP___FORMAT_EXTENDED_GRAPHEME_CLUSTER_TABLE_H"""
 
 
 def property_ranges_to_table(
@@ -260,7 +258,7 @@ def property_ranges_to_table(
     return result
 
 
-cpp_entrytemplate = "0x{:08x}"
+cpp_entrytemplate = "    0x{:08x}"
 
 
 def generate_cpp_data(prop_name: str, ranges: list[PropertyRange]) -> str:
@@ -269,13 +267,13 @@ def generate_cpp_data(prop_name: str, ranges: list[PropertyRange]) -> str:
     table = property_ranges_to_table(ranges, prop_values)
     enumerator_values = [PROP_VALUE_ENUMERATOR_TEMPLATE.format(x) for x in prop_values]
     result.write(
-        PROP_VALUE_ENUM_TEMPLATE.format(enumerators=",".join(enumerator_values))
+        PROP_VALUE_ENUM_TEMPLATE.format(enumerators=",\n".join(enumerator_values))
     )
     result.write(
         DATA_ARRAY_TEMPLATE.format(
             prop_name=prop_name,
             size=len(table),
-            entries=",".join(
+            entries=",\n".join(
                 [
                     cpp_entrytemplate.format(x.lower << 11 | x.offset << 4 | x.prop)
                     for x in table

diff  --git a/libcxx/utils/generate_extended_grapheme_cluster_test.py b/libcxx/utils/generate_extended_grapheme_cluster_test.py
index f6b861df32122..65bc0629568b9 100755
--- a/libcxx/utils/generate_extended_grapheme_cluster_test.py
+++ b/libcxx/utils/generate_extended_grapheme_cluster_test.py
@@ -170,49 +170,51 @@ def parseBreakTestLine(input: TextIO) -> Optional[BreakTestItem]:
 }};
 
 /// The data for UTF-8.
-std::array<data<char>, {0}> data_utf8 = {{{{ {1} }}}};
+std::array<data<char>, {0}> data_utf8 = {{{{
+{1}}}}};
 
 /// The data for UTF-16.
 ///
 /// Note that most of the data for the UTF-16 and UTF-32 are identical. However
 /// since the size of the code units 
diff er the breaks can contain 
diff erent
 /// values.
-std::array<data<wchar_t>, {0}> data_utf16 = {{{{ {2} }}}};
+std::array<data<wchar_t>, {0}> data_utf16 = {{{{
+{2}}}}};
 
 /// The data for UTF-8.
 ///
 /// Note that most of the data for the UTF-16 and UTF-32 are identical. However
 /// since the size of the code units 
diff er the breaks can contain 
diff erent
 /// values.
-std::array<data<wchar_t>, {0}> data_utf32 = {{{{ {3} }}}};
+std::array<data<wchar_t>, {0}> data_utf32 = {{{{
+{3}}}}};
 
-#endif // LIBCXX_TEST_STD_UTILITIES_FORMAT_FORMAT_STRING_FORMAT_STRING_STD_EXTENDED_GRAPHEME_CLUSTER_H
-"""
+#endif // LIBCXX_TEST_STD_UTILITIES_FORMAT_FORMAT_STRING_FORMAT_STRING_STD_EXTENDED_GRAPHEME_CLUSTER_H"""
 
-cpp_test_data_line_template = "{{ {}, {{ {} }}, {{ {} }} }}"
+cpp_test_data_line_template = "     {{{}, {{{}}}, {{{}}}}}"
 
 
 def lineToCppDataLineUtf8(line: BreakTestItem) -> str:
     return cpp_test_data_line_template.format(
         f'"{line.encoded}"',
-        ",".join([str(x) for x in line.code_points]),
-        ",".join([str(x) for x in line.breaks_utf8]),
+        ", ".join([str(x) for x in line.code_points]),
+        ", ".join([str(x) for x in line.breaks_utf8]),
     )
 
 
 def lineToCppDataLineUtf16(line: BreakTestItem) -> str:
     return cpp_test_data_line_template.format(
         f'L"{line.encoded}"',
-        ",".join([str(x) for x in line.code_points]),
-        ",".join([str(x) for x in line.breaks_utf16]),
+        ", ".join([str(x) for x in line.code_points]),
+        ", ".join([str(x) for x in line.breaks_utf16]),
     )
 
 
 def lineToCppDataLineUtf32(line: BreakTestItem) -> str:
     return cpp_test_data_line_template.format(
         f'L"{line.encoded}"',
-        ",".join([str(x) for x in line.code_points]),
-        ",".join([str(x) for x in line.breaks_utf32]),
+        ", ".join([str(x) for x in line.code_points]),
+        ", ".join([str(x) for x in line.breaks_utf32]),
     )
 
 
@@ -235,9 +237,9 @@ def generate_all() -> str:
                 lines.append(line)
     return cpp_template.format(
         len(lines),
-        ",".join(map(lineToCppDataLineUtf8, lines)),
-        ",".join(map(lineToCppDataLineUtf16, lines)),
-        ",".join(map(lineToCppDataLineUtf32, lines)),
+        ",\n".join(map(lineToCppDataLineUtf8, lines)),
+        ",\n".join(map(lineToCppDataLineUtf16, lines)),
+        ",\n".join(map(lineToCppDataLineUtf32, lines)),
     )
 
 


        


More information about the libcxx-commits mailing list