Commit d469dcb1 by Shahbaz Youssefi Committed by Commit Bot

Translator: remove image2DRect

There is no such thing as image2DRect in GLSL. imageRect (the right type) is present, but the code was mistakenly using image2DRect. Bug: angleproject:4889 Change-Id: I42bacd2ad8866c715af0d9711bebc95897607354 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2878095Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org> Reviewed-by: 's avatarTim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
parent 7828506a
{
"src/compiler/translator/ImmutableString_ESSL_autogen.cpp":
"a60ac3aafb91de4358c1d811494c95c9",
"adbe9a6e20d1767868bd244e2ab26700",
"src/compiler/translator/ImmutableString_autogen.cpp":
"16e37e1ca019440226125af698783034",
"17fee9e32a470052515cd76d4e57300b",
"src/compiler/translator/ParseContext_ESSL_autogen.h":
"9efd14cccb9bc5a099ac5c24b87b01b0",
"c7dfcf533dcd6da7d1e8b12a21733102",
"src/compiler/translator/ParseContext_complete_autogen.h":
"5d70fc2310654e6bcb04fe27f883b6cd",
"b4036c29ee52885005bfbe365a1f071a",
"src/compiler/translator/SymbolTable_ESSL_autogen.cpp":
"de2d78d69330202b3431824a7b82cca5",
"c743d336efce0c20ce8bc071ea5e3937",
"src/compiler/translator/SymbolTable_autogen.cpp":
"82e2029363cc5b0b1718801c96961d7a",
"f6df7bc35c0880d4e8de59623457a36b",
"src/compiler/translator/SymbolTable_autogen.h":
"d43593050c4d1b31b0be9cdd3a2d0ea5",
"src/compiler/translator/builtin_function_declarations.txt":
......@@ -18,13 +18,13 @@
"src/compiler/translator/builtin_variables.json":
"a3fa61d753ee97de18b0b53c488bf766",
"src/compiler/translator/gen_builtin_symbols.py":
"eb24e6333408abf3a0e7b42818dce507",
"32b985d8ee7a5de6b0d0a19e1b1a3636",
"src/compiler/translator/tree_util/BuiltIn_ESSL_autogen.h":
"fb0e00d60b60f6c01b7e75d93c5a1fc3",
"ee2d363b9dba94a193c36967f8d84177",
"src/compiler/translator/tree_util/BuiltIn_complete_autogen.h":
"b7ba5f755b1708adc6658351a2ac960c",
"3a911a5f2e373904b0bbb79b856397bb",
"src/tests/compiler_tests/ImmutableString_test_ESSL_autogen.cpp":
"19e3e2225d3decd5f212944fa3634abf",
"8a8a64cc0a305888ea6585d0d78cc786",
"src/tests/compiler_tests/ImmutableString_test_autogen.cpp":
"e947fe40ee401b2927a5d7832283a676"
"60a5bd9eef48bb51035ca09d5ad33564"
}
\ No newline at end of file
......@@ -134,9 +134,6 @@ enum TBasicType
EbtImage2DMSArray,
EbtIImage2DMSArray,
EbtUImage2DMSArray,
EbtImage2DRect,
EbtIImage2DRect,
EbtUImage2DRect,
EbtImageCubeArray,
EbtIImageCubeArray,
EbtUImageCubeArray,
......@@ -363,7 +360,6 @@ inline bool IsFloatImage(TBasicType type)
case EbtImageCube:
case EbtImage2DMS:
case EbtImage2DMSArray:
case EbtImage2DRect:
case EbtImageCubeArray:
case EbtImageRect:
case EbtImageBuffer:
......@@ -388,7 +384,6 @@ inline bool IsIntegerImage(TBasicType type)
case EbtIImageCube:
case EbtIImage2DMS:
case EbtIImage2DMSArray:
case EbtIImage2DRect:
case EbtIImageCubeArray:
case EbtIImageRect:
case EbtIImageBuffer:
......@@ -413,7 +408,6 @@ inline bool IsUnsignedImage(TBasicType type)
case EbtUImageCube:
case EbtUImage2DMS:
case EbtUImage2DMSArray:
case EbtUImage2DRect:
case EbtUImageCubeArray:
case EbtUImageRect:
case EbtUImageBuffer:
......@@ -714,9 +708,6 @@ inline bool IsImage2D(TBasicType type)
case EbtImage2D:
case EbtIImage2D:
case EbtUImage2D:
case EbtImage2DRect:
case EbtIImage2DRect:
case EbtUImage2DRect:
case EbtImage2DMS:
case EbtIImage2DMS:
case EbtUImage2DMS:
......@@ -785,9 +776,6 @@ inline bool IsImage3D(TBasicType type)
case EbtImage2DMSArray:
case EbtIImage2DMSArray:
case EbtUImage2DMSArray:
case EbtImage2DRect:
case EbtIImage2DRect:
case EbtUImage2DRect:
case EbtImageCubeArray:
case EbtIImageCubeArray:
case EbtUImageCubeArray:
......@@ -834,9 +822,6 @@ inline bool IsImage2DArray(TBasicType type)
case EbtImage2DMS:
case EbtIImage2DMS:
case EbtUImage2DMS:
case EbtImage2DRect:
case EbtIImage2DRect:
case EbtUImage2DRect:
case EbtImageCubeArray:
case EbtIImageCubeArray:
case EbtUImageCubeArray:
......@@ -883,9 +868,6 @@ inline bool IsImageCube(TBasicType type)
case EbtImage2DMSArray:
case EbtIImage2DMSArray:
case EbtUImage2DMSArray:
case EbtImage2DRect:
case EbtIImage2DRect:
case EbtUImage2DRect:
case EbtImageCubeArray:
case EbtIImageCubeArray:
case EbtUImageCubeArray:
......
......@@ -24,216 +24,216 @@ std::ostream &operator<<(std::ostream &os, const sh::ImmutableString &str)
namespace
{
constexpr int mangledkT1[] = {1865, 3158, 2853, 1682, 964, 2924, 357, 2994, 1417, 2512,
1311, 1311, 2139, 1976, 1760, 582, 284, 1231, 2967, 2550,
557, 2450, 1390, 2263, 1589, 1298, 3121, 2215, 2366, 708,
1827, 1707, 2405, 2487, 3075, 2597, 90, 1010, 2784, 2606};
constexpr int mangledkT2[] = {1020, 2468, 786, 2255, 1879, 342, 431, 224, 687, 2281,
2252, 3080, 1892, 2914, 2719, 1134, 2940, 1802, 617, 2244,
2471, 2754, 1169, 2072, 1955, 1834, 3185, 3182, 1842, 443,
1668, 2555, 569, 804, 2640, 839, 583, 2781, 2276, 3104};
constexpr int mangledkT1[] = {1180, 782, 1103, 563, 2974, 1464, 855, 2226, 533, 946,
2364, 1527, 2823, 1963, 1949, 406, 1029, 185, 2724, 2797,
2341, 264, 1903, 2150, 3196, 1935, 1186, 1337, 65, 194,
557, 2982, 1963, 2229, 2382, 1040, 776, 2536, 2699, 2002};
constexpr int mangledkT2[] = {243, 2806, 2646, 900, 1556, 238, 1079, 2379, 1830, 1969,
1294, 2251, 438, 1259, 2530, 476, 2188, 2765, 253, 197,
3034, 1339, 1962, 2836, 1405, 1808, 2356, 1708, 1616, 2555,
2384, 835, 1185, 1976, 1471, 1429, 2833, 3097, 1699, 752};
constexpr int mangledkG[] = {
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1850, 0, 0, 0, 1329, 2858,
0, 0, 0, 1862, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 823, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2177, 0, 0, 2651,
0, 0, 422, 0, 0, 0, 0, 560, 0, 0, 0, 0, 0, 0, 0, 0,
1600, 0, 3068, 799, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1882, 746, 0, 0, 0, 2264, 0, 2364, 0, 0, 0, 0, 0, 2816,
2133, 0, 0, 0, 564, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2861, 1758,
0, 549, 700, 0, 0, 0, 0, 621, 0, 0, 953, 0, 0, 236, 0, 0,
1605, 0, 0, 0, 3018, 0, 0, 0, 0, 177, 0, 907, 2690, 0, 431, 1482,
1284, 0, 0, 709, 0, 0, 0, 223, 0, 0, 905, 0, 0, 0, 0, 0,
670, 0, 0, 2949, 0, 3163, 0, 1372, 3123, 0, 0, 0, 0, 0, 724, 0,
0, 0, 0, 1173, 0, 1126, 617, 1050, 2666, 0, 0, 3191, 359, 0, 0, 0,
2813, 0, 0, 0, 242, 0, 0, 0, 43, 0, 0, 0, 0, 0, 0, 0,
0, 757, 333, 0, 0, 0, 0, 0, 0, 0, 0, 2220, 0, 1472, 0, 0,
587, 0, 0, 0, 0, 0, 0, 0, 0, 1430, 0, 0, 0, 0, 0, 2181,
0, 0, 354, 0, 0, 0, 0, 0, 0, 0, 2087, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2999, 0, 0, 0, 0, 0, 0, 357, 791, 0, 0,
1551, 0, 771, 0, 0, 0, 0, 0, 0, 939, 0, 0, 1168, 713, 727, 0,
2891, 0, 1179, 0, 0, 488, 0, 0, 0, 0, 2055, 2141, 0, 427, 0, 0,
0, 0, 2322, 0, 494, 110, 0, 0, 0, 3014, 0, 0, 0, 0, 0, 0,
1180, 0, 0, 0, 274, 205, 0, 0, 2602, 2475, 2363, 0, 321, 0, 0, 0,
326, 0, 0, 1524, 1388, 147, 1398, 0, 0, 1440, 0, 0, 0, 0, 846, 1008,
0, 2242, 0, 0, 0, 193, 762, 0, 1474, 910, 0, 0, 0, 882, 316, 0,
651, 2287, 625, 2816, 414, 513, 0, 0, 0, 360, 0, 0, 0, 2544, 0, 0,
0, 0, 0, 0, 0, 334, 1159, 2744, 0, 697, 0, 0, 3093, 3075, 0, 2294,
309, 3124, 0, 0, 1766, 2773, 0, 0, 0, 0, 0, 2615, 0, 0, 0, 0,
0, 412, 3090, 0, 1460, 0, 0, 0, 0, 0, 0, 0, 0, 203, 0, 0,
1978, 954, 2940, 1415, 0, 2782, 0, 0, 3142, 454, 0, 0, 433, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2246, 2200, 0, 0, 1978, 0, 0, 0, 0, 0,
402, 1098, 690, 0, 0, 0, 0, 0, 0, 0, 1593, 2920, 1333, 129, 0, 0,
3171, 525, 0, 934, 0, 2163, 175, 2369, 0, 0, 0, 0, 0, 0, 1919, 0,
0, 0, 0, 149, 304, 0, 0, 538, 96, 0, 1428, 2439, 2615, 252, 584, 0,
1274, 0, 0, 0, 0, 919, 0, 0, 0, 0, 0, 0, 0, 584, 0, 0,
1369, 2771, 2902, 0, 0, 352, 0, 0, 0, 0, 0, 424, 0, 0, 818, 0,
351, 0, 0, 0, 0, 0, 0, 0, 1861, 0, 0, 0, 0, 2037, 884, 0,
940, 1403, 899, 1550, 0, 0, 3130, 0, 0, 728, 0, 0, 121, 672, 820, 0,
1932, 3074, 0, 0, 0, 0, 2168, 923, 0, 0, 690, 0, 0, 1109, 838, 91,
1813, 0, 805, 3028, 0, 194, 1589, 0, 0, 1774, 0, 0, 0, 0, 131, 0,
0, 0, 0, 0, 612, 0, 0, 0, 1494, 0, 0, 555, 2769, 0, 2365, 3155,
0, 0, 2909, 0, 0, 0, 0, 2813, 0, 640, 0, 2879, 0, 0, 0, 466,
213, 0, 1802, 0, 2281, 20, 0, 0, 1105, 2588, 985, 3119, 0, 0, 0, 0,
0, 1140, 404, 435, 602, 0, 2753, 848, 0, 0, 1986, 0, 3004, 0, 643, 0,
0, 1300, 0, 0, 0, 0, 0, 2533, 1445, 480, 1335, 362, 0, 1233, 529, 0,
0, 0, 184, 0, 0, 828, 0, 13, 2768, 0, 0, 0, 254, 334, 2904, 0,
0, 0, 0, 0, 0, 0, 1205, 0, 0, 1363, 0, 1992, 3083, 0, 2480, 0,
0, 3169, 0, 0, 2452, 0, 311, 0, 0, 0, 0, 0, 0, 0, 800, 2823,
0, 717, 1950, 0, 0, 0, 2713, 1659, 1022, 0, 0, 892, 0, 347, 0, 2889,
85, 536, 0, 2011, 0, 1234, 0, 0, 0, 246, 0, 128, 0, 0, 586, 828,
1942, 33, 0, 407, 2011, 1026, 0, 0, 608, 2261, 0, 0, 0, 0, 621, 2127,
0, 0, 1030, 0, 631, 761, 1032, 1965, 2006, 1457, 0, 0, 0, 0, 0, 1213,
0, 311, 3073, 1105, 0, 390, 0, 0, 1938, 1763, 2095, 0, 0, 1065, 0, 1818,
0, 0, 0, 1434, 0, 188, 0, 0, 0, 1617, 0, 0, 0, 998, 0, 717,
695, 0, 426, 0, 21, 1485, 1309, 0, 2592, 2962, 908, 0, 784, 0, 1073, 1205,
0, 0, 0, 207, 503, 230, 1422, 0, 0, 0, 1355, 0, 0, 1437, 2853, 0,
0, 0, 0, 36, 2489, 0, 2874, 1042, 416, 651, 0, 0, 2161, 2759, 610, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1356, 0, 0, 1512, 1333, 0, 0, 649,
0, 0, 0, 0, 0, 500, 0, 0, 3044, 1747, 0, 0, 2457, 0, 0, 0,
643, 519, 0, 0, 0, 0, 0, 0, 275, 0, 0, 870, 1531, 0, 1453, 1055,
0, 0, 0, 0, 3062, 0, 3074, 0, 953, 0, 0, 0, 1156, 0, 840, 550,
0, 1060, 2907, 2024, 0, 606, 0, 0, 2819, 2156, 309, 1841, 774, 0, 315, 3193,
0, 0, 0, 0, 411, 0, 0, 0, 0, 783, 3089, 995, 2675, 1405, 0, 0,
0, 2172, 459, 3082, 1018, 0, 1082, 0, 0, 1040, 968, 0, 0, 1234, 39, 0,
0, 0, 558, 769, 469, 0, 1385, 0, 1020, 1853, 0, 1206, 0, 387, 0, 0,
0, 3031, 702, 412, 0, 1480, 671, 1605, 1280, 877, 183, 0, 0, 0, 0, 0,
0, 249, 137, 0, 0, 0, 1033, 3024, 115, 0, 412, 0, 0, 835, 0, 0,
0, 1409, 417, 710, 0, 2945, 0, 0, 0, 0, 0, 0, 2735, 0, 1179, 0,
692, 1583, 1391, 2889, 0, 1161, 0, 958, 0, 3006, 0, 0, 0, 832, 0, 0,
1869, 579, 0, 931, 1442, 1563, 675, 0, 642, 399, 0, 0, 0, 1474, 0, 0,
521, 2053, 0, 1359, 0, 0, 0, 290, 0, 1347, 53, 0, 0, 1538, 3004, 0,
1927, 1715, 0, 3133, 0, 0, 3040, 0, 0, 0, 0, 2997, 0, 1066, 0, 0,
1580, 54, 0, 0, 541, 2649, 0, 0, 0, 2052, 0, 271, 0, 0, 0, 0,
1245, 2525, 0, 1347, 2719, 1301, 1731, 0, 0, 0, 3163, 0, 0, 1234, 1171, 1507,
0, 0, 1342, 873, 107, 0, 425, 1132, 0, 0, 0, 653, 0, 914, 0, 0,
0, 0, 0, 1426, 593, 1099, 963, 1141, 0, 0, 0, 1475, 2824, 0, 0, 0,
0, 0, 0, 0, 0, 723, 0, 2213, 2918, 0, 353, 2702, 2303, 647, 1467, 1092,
793, 227, 0, 1128, 0, 0, 2314, 0, 0, 977, 848, 383, 0, 2071, 1518, 0,
3001, 928, 0, 0, 0, 110, 0, 0, 0, 931, 0, 1975, 0, 972, 131, 534,
1739, 0, 370, 0, 0, 0, 1800, 27, 0, 844, 129, 0, 0, 0, 2981, 155,
0, 0, 0, 0, 0, 800, 0, 0, 315, 0, 1891, 0, 0, 548, 2963, 0,
0, 489, 0, 0, 0, 269, 3117, 0, 886, 889, 0, 1021, 439, 574, 1241, 2946,
1317, 0, 895, 698, 0, 0, 0, 1213, 593, 1624, 761, 1405, 0, 0, 0, 0,
744, 0, 0, 2848, 0, 2670, 0, 54, 0, 1125, 0, 0, 0, 0, 457, 0,
0, 0, 504, 0, 928, 540, 1491, 0, 0, 0, 1145, 0, 0, 0, 92, 2864,
1036, 0, 148, 0, 1449, 2899, 2437, 0, 344, 540, 0, 19, 2306, 1062, 2138, 0,
1255, 1066, 0, 0, 1900, 729, 0, 334, 667, 0, 92, 0, 981, 182, 747, 0,
398, 53, 761, 849, 0, 1401, 0, 0, 280, 2398, 0, 0, 0, 0, 1451, 2570,
0, 841, 0, 0, 0, 1463, 1127, 2842, 0, 1304, 573, 1741, 1532, 0, 65, 0,
2492, 0, 0, 0, 1755, 756, 1400, 2830, 1363, 1412, 0, 0, 0, 0, 0, 3160,
94, 0, 1274, 0, 100, 598, 0, 0, 0, 155, 674, 0, 0, 0, 154, 780,
929, 0, 1597, 2997, 0, 2106, 165, 0, 0, 1495, 444, 0, 1139, 1404, 2574, 1648,
0, 0, 0, 2660, 1557, 1462, 0, 0, 0, 0, 0, 0, 0, 0, 1565, 0,
955, 427, 1525, 2986, 1728, 0, 0, 559, 377, 0, 1529, 0, 0, 872, 954, 0,
0, 0, 49, 20, 0, 1430, 531, 0, 0, 0, 2355, 0, 524, 0, 3079, 31,
0, 2709, 0, 1307, 0, 2781, 0, 2797, 0, 986, 442, 112, 2436, 2868, 826, 0,
1277, 0, 3022, 0, 2130, 0, 0, 0, 446, 0, 2153, 1656, 0, 0, 1234, 0,
0, 95, 885, 0, 2608, 0, 0, 1948, 2947, 1170, 15, 0, 0, 332, 0, 6,
0, 0, 0, 1365, 0, 3000, 0, 0, 80, 0, 893, 0, 731, 1585, 1162, 1436,
0, 936, 1564, 1362, 1007, 1278, 2177, 219, 0, 1949, 2732, 0, 0, 3175, 1096, 316,
0, 0, 0, 1214, 853, 0, 0, 216, 2692, 0, 524, 135, 0, 0, 594, 0,
0, 0, 822, 2791, 0, 1323, 0, 0, 1089, 2420, 534, 0, 0, 967, 968, 0,
654, 0, 1050, 0, 1260, 0, 0, 0, 677, 0, 419, 1028, 502, 0, 0, 909,
299, 79, 0, 0, 2494, 0, 0, 1485, 0, 3119, 1164, 3107, 976, 2359, 0, 0,
1183, 2778, 0, 2048, 455, 2015, 0, 0, 887, 811, 0, 1544, 390, 0, 0, 0,
0, 810, 485, 460, 0, 720, 2589, 600, 0, 0, 2576, 0, 3130, 0, 1144, 1111,
0, 1500, 1349, 836, 254, 0, 509, 1711, 0, 2970, 0, 2799, 866, 0, 0, 1393,
0, 2682, 0, 2401, 0, 0, 705, 0, 0, 0, 1042, 1419, 0, 0, 1045, 0,
2933, 0, 0, 117, 0, 1472, 2464, 1268, 0, 46, 0, 0, 0, 0, 450, 0,
0, 560, 0, 0, 0, 693, 406, 709, 744, 0, 0, 60, 1420, 1083, 857, 0,
168, 1248, 1241, 799, 0, 0, 2154, 37, 0, 0, 603, 0, 1100, 0, 0, 0,
831, 367, 1489, 0, 0, 2248, 2984, 0, 0, 0, 0, 265, 123, 0, 2369, 0,
0, 2201, 0, 1094, 3200, 201, 841, 1898, 0, 0, 0, 0, 3018, 632, 0, 868,
2832, 0, 2591, 0, 0, 1197, 0, 0, 1028, 0, 0, 0, 770, 30, 2527, 799,
80, 255, 0, 0, 1315, 0, 0, 0, 1008, 0, 0, 0, 0, 0, 0, 0,
0, 544, 0, 1593, 311, 1114, 150, 2863, 3079, 407, 0, 0, 0, 2960, 1838, 425,
0, 970, 1860, 653, 0, 163, 0, 0, 2968, 0, 0, 1515, 1019, 224, 0, 0,
0, 707, 0, 0, 878, 0, 12, 1150, 0, 0, 664, 2961, 483, 0, 850, 1505,
643, 2948, 657, 0, 0, 447, 0, 0, 2159, 754, 324, 0, 0, 3206, 167, 1189,
3045, 1233, 642, 0, 1608, 0, 898, 0, 2375, 145, 1446, 0, 2687, 0, 0, 1600,
2197, 824, 0, 211, 0, 582, 1164, 1695, 818, 2658, 249, 922, 0, 0, 199, 266,
931, 289, 545, 0, 0, 0, 572, 0, 1600, 2231, 164, 2762, 0, 639, 703, 383,
0, 775, 2262, 0, 1109, 3159, 0, 0, 0, 0, 554, 0, 0, 0, 0, 0,
321, 294, 0, 192, 0, 321, 3108, 291, 765, 0, 725, 2588, 0, 3028, 2490, 0,
1556, 0, 2366, 0, 0, 409, 221, 3156, 1225, 1408, 2705, 535, 2628, 705, 833, 0,
1493, 1030, 0, 0, 0, 3056, 1803, 479, 164, 1224, 0, 1488, 0, 2977, 797, 1223,
1198, 2277, 920, 506, 1383, 558, 946, 0, 2423, 0, 562, 1979, 1709, 592, 127, 754,
1363, 595, 122, 173, 0, 0, 2701, 1418, 1536, 517, 0, 2204, 0, 0, 325, 0,
0, 1777, 0, 0, 0, 1360, 0, 0, 642, 131, 1337, 0, 1171, 908, 0, 0,
1999, 0, 1202, 0, 0, 2558, 496, 377, 610, 139, 896, 0, 298, 0, 1185, 0,
0, 668, 297, 1773, 0, 0, 0, 0, 3197, 0, 803, 3157, 0, 0, 901, 3035,
3147, 1211, 0, 0, 1486, 0, 0, 1113, 0, 267, 0, 0, 0, 1921, 0, 0,
1293, 0, 121, 1346, 2100, 0, 0, 0, 0, 3086, 3002, 1318, 0, 545, 0, 0,
0, 104, 3048, 2323, 186, 0, 0, 0, 2822, 0, 619, 0, 0, 418, 0, 391,
964, 2059, 796, 0, 0, 903, 1274, 2016, 1174, 65, 0, 718, 0, 568, 1080, 0,
2813, 0, 0, 0, 2482, 0, 237, 0, 2786, 3029, 0, 2206, 1258, 1211, 1153, 0,
94, 0, 0, 0, 2373, 2980, 0, 0, 1146, 0, 2907, 0, 0, 1527, 0, 250,
0, 0, 0, 1058, 0, 2818, 0, 826, 0, 0, 1507, 369, 807, 0, 0, 0,
989, 276, 2059, 1084, 288, 345, 1483, 244, 1138, 2383, 1837, 2474, 0, 0, 0, 548,
0, 0, 295, 1406, 2462, 2250, 1260, 268, 1387, 0, 192, 2254, 0, 0, 1371, 0,
91, 1428, 1077, 710, 0, 575, 0, 0, 1039, 806, 428, 1450, 1054, 838, 1118, 475,
0, 0, 0, 1298, 1029, 528, 0, 0, 479, 2412, 1195, 630, 2349, 280, 0, 2878,
2840, 943, 2001, 2729, 624, 999, 117, 901, 483, 2563, 0, 805, 152, 1489, 1230, 0,
0, 994, 826, 0, 1129, 1034, 0, 1502, 2314, 0, 397, 1894, 515, 0, 1080, 888,
752, 0, 2409, 0, 0, 0, 0, 439, 1102, 516, 2678, 1869, 0, 327, 890, 161,
0, 0, 0, 1524, 702, 1548, 944, 2834, 73, 0, 0, 2010, 0, 150, 0, 0,
519, 868, 0, 1348, 739, 895, 2340, 929, 387, 0, 398, 396, 0, 0, 1683, 201,
0, 0, 0, 1283, 279, 837, 0, 1111, 1407, 0, 0, 0, 1198, 859, 2059, 700,
0, 0, 1744, 2010, 2351, 128, 438, 1010, 894, 0, 0, 1252, 2415, 1212, 1066, 0,
586, 797, 910, 2784, 3011, 2435, 58, 1053, 2021, 54, 0, 274, 0, 176, 0, 253,
0, 0, 0, 560, 1530, 0, 0, 3106, 1330, 1405, 1114, 2217, 0, 1008, 3133, 802,
2858, 0, 1541, 1434, 947, 0, 0, 547, 630, 0, 0, 2943, 0, 0, 0, 569,
236, 864, 0, 0, 0, 0, 309, 1308, 2879, 0, 0, 0, 620, 0, 1093, 0,
125, 683, 0, 1026, 2743, 0, 781, 94, 1493, 1089, 1469, 0, 1622, 1940, 0, 447,
128, 641, 0, 746, 0, 0, 1356, 335, 336, 0, 0, 0, 0, 499, 308, 1114,
0, 0, 757, 0, 0, 1358, 3198, 2122, 123, 915, 2951, 1088, 0, 0, 474, 1311,
229, 0, 1244, 740, 3016, 2603, 1362, 952, 1856, 0, 0, 597, 0, 0, 0, 0,
514, 2622, 0, 715, 916, 0, 0, 0, 1452, 17, 2435, 0, 687, 2183, 1335, 0,
661, 682, 228, 0, 0, 0, 941, 0, 0, 1455, 2370, 2193, 483, 1432, 1058, 1954,
940, 672, 0, 0, 772, 0, 90, 0, 234, 0, 1229, 0, 731, 1136, 0, 512,
480, 0, 317, 0, 0, 12, 0, 1432, 0, 1157, 291, 1002, 58, 0, 0, 3088,
0, 293, 364, 0, 765, 0, 2422, 0, 0, 343, 487, 0, 0, 2178, 0, 0,
120, 1417, 690, 725, 2661, 851, 0, 1090, 461, 1897, 0, 2918, 2692, 0, 0, 0,
2782, 0, 0, 84, 1579, 3081, 0, 0, 0, 2505, 0, 0, 395, 478, 0, 0,
3136, 0, 0, 993, 1304, 1099, 0, 0, 408, 0, 1496, 0, 1325, 1091, 285, 626,
1459, 0, 1180, 1456, 550, 456, 0, 0, 1182, 0, 0, 0, 321, 1423, 1381, 82,
126, 1462, 0, 0, 0, 0, 0, 1253, 269, 2819, 0, 971, 852, 231, 3088, 3169,
1310, 1275, 0, 2446, 2797, 9, 0, 0, 1074, 785, 3207, 386, 0, 1310, 0, 473,
0, 1963, 0, 0, 1060, 283, 0, 0, 521, 814, 2817, 2769, 409, 0, 742, 506,
0, 0, 3074, 0, 2333, 719, 530, 0, 0, 1565, 0, 0, 459, 0, 367, 3135,
1601, 1046, 2334, 3185, 142, 601, 260, 233, 0, 0, 439, 214, 714, 1102, 0, 582,
0, 0, 1182, 125, 130, 777, 1161, 776, 0, 1665, 673, 2209, 3088, 2395, 902, 2312,
0, 1433, 0, 198, 41, 116, 2806, 1231, 1122, 1545, 0, 2837, 632, 0, 1707, 0,
0, 0, 2100, 0, 0, 763, 0, 0, 0, 491, 154, 1161, 2678, 1299, 2738, 0,
2135, 0, 0, 0, 0, 0, 0, 0, 468, 33, 0, 0, 0, 0, 0, 0,
894, 305, 490, 0, 978, 747, 374, 2062, 2364, 730, 0, 0, 0, 0, 151, 1520,
1665, 0, 825, 0, 446, 1598, 2155, 505, 2116, 3111, 0, 0, 0, 0, 1177, 0,
861, 2000, 840, 2769, 1374, 320, 997, 932, 1555, 1193, 13, 0, 325, 1991, 323, 0,
0, 2974, 1281, 0, 0, 1239, 109, 770, 3180, 0, 535, 0, 0, 2743, 1699, 762,
0, 0, 0, 1264, 0, 404, 1262, 1024, 306, 0, 197, 412, 2275, 1291, 0, 2523,
45, 0, 1428, 0, 1540, 335, 257, 1841, 0, 828, 653, 1110, 289, 2528, 892, 0,
0, 939, 1345, 190, 1891, 0, 0, 472, 0, 0, 0, 2161, 0, 0, 0, 1283,
880, 627, 279, 601, 1163, 506, 81, 129, 20, 0, 600, 2876, 846, 779, 0, 236,
224, 0, 0, 1411, 1708, 0, 498, 251, 2594, 2123, 262, 3052, 358, 0, 1276, 284,
2924, 952, 707, 1416, 442, 0, 0, 0, 0, 0, 517, 0, 2839, 1035, 513, 2324,
0, 3092, 1199, 1105, 1101, 1373, 215, 1348, 1090, 0, 2831, 886, 631, 0, 0, 0,
1308, 2, 258, 579, 78, 0, 0, 2934, 0, 0, 1992, 0, 1075, 0, 0, 0,
0, 3120, 1055, 2680, 0, 0, 0, 0, 1811, 0, 2396, 1196, 0, 1043, 0, 2836,
373, 3173, 0, 2750, 269, 2658, 1526, 2918, 1559, 1426, 0, 2025, 990, 726, 0, 0,
226, 0, 364, 0, 0, 3201, 363, 0, 0, 0, 0, 0, 149, 1038, 0, 0,
295, 430, 507, 1232, 2367, 336, 911, 561, 0, 1027, 3046, 45, 0, 454, 1767, 0,
903, 748, 887, 949, 0, 0, 0, 1015, 0, 1632, 984, 2941, 489, 173, 1549, 0,
0, 602, 622, 2971, 2371, 549, 0, 2256, 509, 55, 45, 217, 1648, 0, 0, 405,
2840, 324, 35, 0, 0, 0, 0, 2751, 185, 0, 2848, 0, 0, 0, 0, 2118,
273, 1398, 0, 0, 697, 0, 1151, 199, 330, 1983, 294, 2845, 0, 262, 1584, 2080,
0, 0, 0, 0, 1425, 0, 324, 1161, 0, 371, 327, 1214, 428, 1314, 2901, 805,
0, 180, 331, 160, 101, 0, 0, 132, 2721, 176, 0, 881, 0, 0, 1986, 621,
0, 144, 3011, 0, 34, 0, 979, 61, 1322, 0, 0, 0, 44, 1197, 192, 772,
1490, 0, 2397, 0, 2559, 0, 675, 2070, 1072, 829, 0, 0, 0, 2587, 0, 2004,
1149, 411, 2956, 1118, 1052, 646, 0, 0};
0, 0, 0, 0, 0, 0, 0, 847, 1062, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1632, 2907, 0, 400, 938, 0, 0, 1116, 0, 922, 663, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1408, 0, 0, 0, 0, 0, 0, 0,
0, 2659, 0, 0, 441, 0, 0, 0, 0, 0, 0, 0, 0, 2742, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2161, 0, 656, 0, 0, 0,
0, 0, 0, 0, 2567, 0, 1174, 1979, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 38, 1120, 0, 0, 0, 0, 2702, 1330, 1414, 381, 0,
0, 0, 1483, 0, 0, 2871, 0, 0, 0, 123, 0, 2565, 0, 0, 0, 1217,
312, 269, 0, 1357, 760, 0, 0, 0, 0, 2653, 0, 321, 0, 0, 0, 0,
0, 0, 3020, 0, 0, 0, 2585, 367, 0, 0, 0, 0, 0, 0, 0, 0,
1932, 0, 2090, 0, 0, 0, 0, 0, 188, 0, 0, 0, 47, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2935, 1013, 2352, 424,
0, 193, 570, 0, 0, 0, 0, 0, 66, 0, 0, 1811, 0, 2718, 0, 0,
1154, 0, 0, 33, 0, 2278, 0, 0, 0, 3156, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1071, 0, 1440, 0, 0, 2822, 0, 3116, 819, 576, 0, 1925, 0,
0, 0, 370, 2518, 1977, 1323, 0, 1991, 1123, 0, 0, 1835, 0, 780, 609, 0,
2709, 1441, 0, 1921, 2084, 0, 0, 0, 950, 3037, 0, 2011, 2476, 0, 0, 2009,
83, 0, 0, 0, 0, 0, 901, 0, 752, 0, 2786, 0, 0, 231, 1597, 0,
1303, 0, 2279, 0, 0, 0, 725, 0, 0, 495, 0, 0, 0, 0, 1552, 611,
0, 931, 0, 341, 0, 0, 0, 68, 2626, 0, 0, 1904, 0, 989, 0, 0,
0, 197, 0, 404, 737, 1583, 0, 3057, 0, 2403, 0, 0, 0, 0, 0, 0,
1356, 2560, 0, 2901, 533, 938, 363, 3092, 2901, 0, 3193, 0, 0, 354, 202, 0,
1248, 0, 457, 0, 0, 0, 0, 1223, 1217, 0, 0, 0, 1673, 0, 0, 0,
707, 0, 0, 1367, 0, 2737, 0, 0, 1103, 1064, 0, 1607, 0, 0, 0, 0,
1277, 0, 0, 0, 0, 885, 0, 1649, 0, 689, 3019, 0, 0, 0, 0, 236,
0, 1099, 972, 0, 305, 1626, 0, 2138, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 682, 1952, 1708, 0, 0, 0, 0, 0, 0, 879, 642, 0, 0, 0,
586, 2856, 0, 0, 1623, 0, 0, 0, 0, 0, 0, 0, 287, 399, 1796, 0,
0, 0, 0, 1120, 0, 610, 1122, 3035, 0, 1346, 1185, 0, 0, 0, 740, 0,
0, 144, 0, 0, 3017, 0, 0, 0, 3012, 2171, 1137, 1488, 2289, 0, 395, 0,
0, 0, 1012, 0, 426, 0, 0, 0, 0, 142, 663, 0, 1782, 772, 1585, 0,
0, 0, 0, 0, 3201, 547, 482, 0, 0, 740, 576, 0, 0, 0, 0, 1420,
0, 481, 0, 0, 0, 2613, 0, 2040, 0, 0, 0, 0, 0, 2850, 683, 0,
0, 0, 2562, 0, 2545, 0, 802, 0, 0, 1074, 0, 0, 0, 0, 0, 0,
0, 2994, 319, 0, 0, 2725, 323, 0, 0, 0, 0, 0, 0, 0, 2942, 0,
934, 0, 0, 0, 0, 0, 1508, 0, 0, 2146, 1074, 0, 2205, 0, 0, 2542,
0, 156, 0, 125, 0, 0, 0, 1723, 0, 0, 3007, 165, 236, 850, 0, 88,
0, 2584, 0, 1069, 0, 0, 2887, 0, 0, 0, 933, 420, 448, 641, 0, 0,
0, 797, 0, 0, 0, 0, 0, 789, 0, 886, 284, 0, 0, 2655, 3009, 0,
0, 2545, 2271, 2146, 626, 1496, 1350, 2318, 0, 2455, 0, 0, 0, 0, 0, 1033,
2556, 0, 1590, 0, 0, 0, 0, 1158, 3166, 0, 605, 960, 0, 0, 1220, 3107,
860, 0, 0, 2588, 0, 0, 2493, 2966, 0, 0, 313, 1351, 1944, 2018, 2300, 802,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 106, 0, 3010, 3186, 273, 694,
0, 1087, 3100, 676, 0, 0, 0, 0, 0, 967, 0, 264, 554, 2879, 0, 0,
769, 1774, 619, 646, 0, 0, 1414, 0, 0, 528, 0, 0, 0, 0, 0, 3197,
2588, 0, 0, 0, 160, 2111, 0, 0, 1752, 1520, 0, 0, 0, 0, 0, 0,
2716, 1011, 1403, 2238, 867, 0, 0, 0, 0, 616, 0, 0, 495, 0, 209, 182,
846, 2251, 54, 0, 1124, 0, 0, 445, 0, 3105, 1952, 0, 0, 0, 782, 0,
0, 0, 0, 0, 686, 1103, 3085, 0, 0, 1016, 992, 0, 151, 1358, 1410, 0,
0, 0, 0, 0, 3080, 2685, 2829, 0, 0, 0, 0, 604, 0, 2476, 0, 2564,
0, 0, 1964, 1284, 0, 1538, 0, 0, 1511, 2442, 0, 0, 129, 0, 0, 0,
145, 0, 2411, 0, 2015, 527, 316, 889, 0, 0, 0, 0, 0, 1272, 141, 2488,
0, 0, 0, 0, 1556, 184, 0, 0, 0, 0, 0, 1707, 134, 0, 1840, 0,
0, 869, 1061, 0, 811, 2766, 539, 0, 0, 2445, 0, 0, 0, 0, 708, 0,
0, 205, 1341, 0, 986, 0, 0, 2064, 0, 0, 0, 0, 850, 359, 0, 1914,
1185, 1121, 1411, 0, 0, 0, 0, 2389, 593, 213, 669, 510, 2437, 149, 685, 0,
0, 0, 2911, 0, 1224, 1067, 892, 0, 388, 1281, 505, 0, 1081, 216, 378, 0,
0, 134, 0, 322, 2508, 329, 2259, 0, 0, 1633, 3003, 6, 1405, 0, 0, 0,
0, 0, 80, 374, 85, 0, 3192, 0, 447, 0, 0, 0, 701, 1489, 0, 2020,
0, 2989, 1950, 3143, 2769, 1053, 0, 0, 2726, 0, 327, 0, 1071, 0, 532, 1860,
0, 0, 982, 1831, 2858, 674, 0, 0, 262, 0, 0, 217, 0, 0, 622, 691,
990, 0, 0, 0, 50, 334, 1890, 2667, 0, 0, 0, 0, 1452, 13, 0, 1785,
0, 0, 445, 0, 248, 2909, 421, 0, 0, 2909, 0, 2245, 0, 0, 1016, 0,
0, 0, 0, 223, 3178, 0, 0, 541, 0, 0, 2679, 0, 0, 0, 0, 1620,
0, 0, 2898, 475, 0, 2146, 1126, 3107, 0, 129, 0, 1634, 1733, 1074, 1158, 0,
0, 0, 785, 0, 585, 364, 0, 0, 0, 262, 807, 0, 1728, 0, 0, 1599,
0, 192, 793, 0, 0, 448, 506, 0, 0, 0, 0, 3002, 1950, 0, 0, 200,
0, 0, 886, 183, 2792, 0, 303, 0, 2898, 3034, 2175, 0, 953, 0, 0, 0,
2874, 2662, 0, 0, 469, 263, 0, 0, 1339, 374, 0, 585, 798, 0, 1028, 0,
0, 0, 0, 0, 0, 0, 551, 2769, 0, 0, 0, 2384, 2320, 0, 332, 0,
0, 0, 0, 0, 0, 0, 0, 593, 0, 0, 186, 210, 1350, 3113, 0, 63,
402, 1159, 708, 0, 107, 0, 0, 0, 777, 2343, 0, 117, 2046, 2923, 2434, 2458,
0, 738, 2690, 0, 0, 0, 2608, 0, 836, 524, 845, 0, 0, 0, 62, 0,
0, 1842, 1557, 775, 178, 0, 0, 0, 0, 27, 0, 0, 0, 174, 2027, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 481, 0, 0, 0, 0, 1528,
0, 0, 1069, 844, 0, 1368, 0, 0, 0, 0, 0, 0, 160, 407, 0, 0,
0, 0, 0, 304, 77, 0, 1527, 0, 0, 0, 298, 0, 0, 0, 0, 2785,
0, 0, 0, 0, 2284, 0, 0, 1493, 0, 0, 0, 2511, 0, 0, 0, 1046,
792, 0, 0, 0, 1095, 278, 0, 0, 0, 1605, 697, 2981, 0, 572, 786, 422,
0, 0, 0, 770, 2488, 0, 460, 1500, 2460, 351, 0, 83, 0, 907, 681, 0,
1114, 462, 567, 0, 0, 0, 1136, 678, 0, 1131, 0, 0, 112, 0, 0, 0,
0, 0, 22, 0, 0, 482, 496, 0, 2643, 0, 444, 2532, 0, 2683, 958, 0,
1042, 0, 3099, 1311, 1111, 0, 1350, 810, 520, 1320, 0, 817, 1761, 0, 0, 2889,
685, 0, 965, 0, 1454, 0, 2781, 0, 3171, 0, 0, 2749, 0, 0, 0, 0,
0, 4, 0, 0, 229, 0, 0, 2418, 0, 870, 924, 1547, 0, 3193, 1187, 0,
1199, 0, 3205, 0, 350, 0, 0, 0, 54, 883, 0, 0, 0, 1859, 0, 1914,
2493, 863, 3183, 0, 1460, 0, 1283, 0, 0, 639, 0, 2154, 0, 0, 0, 0,
725, 0, 0, 0, 476, 0, 1306, 931, 0, 3133, 2670, 394, 740, 0, 0, 0,
0, 0, 0, 276, 0, 0, 0, 47, 0, 0, 2659, 1055, 0, 1378, 0, 0,
2304, 2876, 347, 928, 0, 416, 0, 0, 0, 1033, 0, 0, 0, 0, 0, 0,
683, 275, 0, 0, 626, 0, 362, 0, 0, 0, 0, 0, 2282, 0, 1260, 387,
0, 2260, 0, 0, 693, 0, 703, 0, 0, 0, 768, 1102, 0, 1579, 0, 1137,
0, 0, 0, 407, 0, 18, 1000, 0, 0, 2715, 709, 0, 0, 78, 0, 0,
0, 29, 2506, 0, 0, 0, 0, 426, 180, 0, 2420, 0, 0, 604, 2649, 0,
0, 0, 137, 0, 1223, 0, 560, 0, 0, 2797, 1225, 900, 0, 1694, 0, 0,
454, 584, 0, 0, 0, 0, 2280, 0, 0, 0, 0, 1765, 1352, 0, 0, 493,
0, 142, 0, 2635, 1495, 495, 1211, 471, 453, 1148, 580, 1580, 239, 1017, 373, 1536,
1949, 0, 63, 30, 0, 0, 0, 0, 0, 0, 0, 219, 0, 0, 0, 0,
355, 1372, 250, 1563, 0, 414, 68, 2752, 1193, 0, 0, 794, 0, 102, 0, 2866,
1305, 0, 671, 525, 2971, 3020, 933, 0, 0, 1857, 737, 0, 1660, 0, 0, 2937,
0, 0, 0, 3034, 0, 462, 1325, 0, 0, 957, 0, 0, 539, 0, 0, 776,
279, 962, 671, 0, 2906, 299, 874, 0, 0, 1361, 0, 0, 426, 0, 2637, 0,
785, 2336, 1254, 663, 0, 2283, 140, 0, 605, 0, 0, 0, 11, 245, 1258, 0,
0, 839, 0, 245, 1054, 48, 2396, 3000, 93, 3041, 2984, 0, 2975, 0, 0, 0,
1374, 0, 1930, 0, 0, 0, 0, 2037, 1128, 2873, 499, 0, 0, 2052, 473, 0,
82, 554, 1336, 0, 0, 0, 2530, 2316, 1155, 0, 0, 549, 0, 591, 0, 21,
2280, 3011, 1071, 0, 1043, 0, 2308, 0, 0, 634, 0, 872, 269, 0, 0, 0,
174, 0, 0, 0, 133, 0, 0, 204, 1313, 115, 2534, 2169, 0, 1285, 25, 1213,
871, 0, 982, 0, 341, 1478, 1980, 2621, 0, 0, 1246, 408, 2072, 773, 0, 858,
298, 1299, 719, 0, 0, 735, 1142, 0, 36, 0, 21, 0, 1387, 0, 297, 0,
0, 326, 623, 1295, 595, 1394, 0, 0, 1626, 0, 2648, 0, 0, 1517, 783, 2036,
478, 2580, 624, 2506, 0, 631, 0, 0, 1596, 0, 1851, 0, 0, 838, 149, 894,
1544, 749, 152, 606, 0, 396, 2649, 1280, 0, 3120, 963, 716, 0, 0, 457, 1185,
227, 2150, 1130, 0, 0, 0, 5, 5, 0, 70, 1048, 770, 2997, 713, 2093, 0,
1015, 0, 0, 746, 0, 1144, 0, 449, 0, 430, 815, 312, 2555, 1230, 0, 0,
2205, 2182, 527, 1447, 3134, 866, 0, 0, 1774, 1150, 0, 1448, 0, 2, 1472, 464,
0, 2635, 0, 0, 0, 1033, 2789, 973, 1404, 2793, 906, 167, 0, 1165, 1164, 2927,
0, 1229, 0, 394, 1423, 0, 177, 2183, 0, 0, 1260, 211, 0, 0, 1240, 429,
0, 164, 948, 473, 3135, 0, 0, 1326, 0, 0, 1126, 0, 353, 1251, 0, 2417,
0, 1626, 0, 0, 18, 1449, 957, 262, 0, 2729, 0, 0, 0, 1398, 0, 0,
0, 0, 208, 1539, 0, 0, 0, 0, 938, 0, 0, 2614, 0, 104, 843, 0,
2677, 0, 1115, 0, 0, 186, 2456, 236, 8, 0, 110, 795, 0, 0, 0, 0,
0, 0, 0, 3126, 1492, 0, 558, 718, 813, 0, 0, 545, 668, 406, 1468, 526,
0, 0, 2977, 0, 1206, 749, 2023, 269, 961, 0, 952, 0, 1723, 0, 1330, 485,
1402, 0, 1098, 3055, 2116, 0, 494, 0, 0, 3115, 0, 71, 0, 0, 0, 0,
114, 345, 0, 0, 2829, 1036, 3108, 0, 407, 0, 506, 0, 0, 0, 1145, 550,
0, 766, 2420, 0, 1234, 87, 199, 3112, 0, 0, 51, 0, 3076, 0, 1263, 0,
433, 0, 1151, 0, 0, 3038, 2198, 0, 0, 0, 793, 880, 1119, 0, 0, 0,
561, 0, 0, 1024, 0, 455, 321, 0, 1001, 1483, 0, 810, 1188, 837, 0, 0,
52, 187, 0, 0, 1409, 1261, 0, 3119, 709, 0, 873, 2982, 0, 3201, 2875, 0,
3155, 285, 0, 1942, 2041, 240, 1357, 1148, 0, 2395, 0, 856, 1582, 0, 249, 0,
1191, 1138, 0, 0, 818, 116, 355, 2602, 1176, 0, 1872, 1610, 627, 0, 0, 0,
3179, 2939, 0, 1085, 255, 38, 2231, 1289, 793, 351, 0, 1281, 0, 3062, 648, 1247,
0, 0, 3024, 2952, 1299, 386, 2135, 512, 3067, 0, 0, 887, 0, 0, 1334, 0,
657, 160, 0, 89, 0, 678, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2189, 0, 0, 2813, 0, 1022, 972, 0, 486, 0, 1438, 3198, 1329, 975, 1369, 1129,
3142, 0, 1193, 869, 2229, 123, 2669, 0, 1030, 0, 1384, 0, 0, 1247, 42, 2501,
75, 0, 157, 0, 2659, 2776, 1723, 1146, 641, 0, 0, 330, 0, 0, 1294, 0,
0, 0, 1209, 0, 807, 0, 881, 1398, 258, 0, 1759, 3186, 0, 0, 246, 55,
579, 1565, 1625, 0, 273, 0, 2759, 800, 0, 234, 1569, 968, 2369, 1184, 0, 2749,
0, 3032, 1408, 601, 941, 215, 268, 779, 164, 2058, 1391, 0, 3153, 0, 1454, 2713,
0, 0, 2924, 1875, 0, 1041, 325, 0, 1943, 345, 454, 12, 2946, 0, 1064, 2969,
2061, 223, 3090, 2964, 116, 0, 1199, 0, 3196, 329, 1141, 705, 0, 1566, 0, 0,
0, 0, 287, 0, 0, 625, 0, 0, 1575, 205, 0, 0, 0, 1729, 0, 0,
782, 3054, 0, 0, 0, 0, 73, 0, 4, 0, 2291, 0, 212, 1208, 0, 0,
0, 689, 521, 498, 710, 532, 0, 0, 2116, 2876, 0, 1471, 415, 836, 0, 0,
0, 0, 1325, 0, 0, 0, 1801, 2443, 1076, 1747, 8, 1985, 0, 0, 575, 2979,
0, 0, 3161, 2217, 0, 0, 729, 0, 490, 664, 0, 0, 503, 0, 850, 0,
991, 2970, 3046, 2957, 1375, 0, 0, 0, 0, 2986, 273, 0, 0, 904, 275, 0,
2418, 0, 0, 1365, 905, 720, 666, 0, 0, 1389, 998, 0, 1509, 0, 89, 0,
3148, 0, 0, 0, 249, 0, 0, 0, 1143, 290, 2213, 0, 281, 0, 0, 1172,
0, 0, 0, 1088, 1517, 739, 2866, 0, 0, 0, 1293, 2021, 2205, 0, 1452, 0,
185, 1428, 0, 1773, 122, 623, 1339, 1011, 3181, 3203, 888, 2269, 315, 0, 688, 0,
1231, 0, 1211, 921, 340, 1222, 0, 0, 0, 2695, 0, 1644, 0, 1594, 0, 673,
0, 3044, 0, 1142, 911, 0, 836, 1135, 2803, 1578, 1905, 1394, 442, 0, 0, 2977,
0, 0, 989, 296, 162, 0, 0, 534, 0, 1375, 994, 1355, 0, 1701, 987, 0,
2372, 84, 0, 0, 2699, 0, 1163, 2190, 425, 0, 0, 600, 0, 1570, 0, 946,
0, 2218, 0, 63, 371, 0, 0, 598, 0, 0, 256, 0, 0, 0, 0, 0,
0, 763, 3142, 533, 2393, 2685, 0, 595, 57, 0, 2809, 0, 0, 2531, 0, 1029,
69, 0, 0, 1224, 1218, 0, 1445, 0, 1482, 992, 628, 1284, 0, 602, 183, 0,
0, 1875, 1232, 3168, 2071, 2553, 0, 0, 0, 2826, 1483, 2353, 0, 2989, 1153, 632,
0, 835, 1448, 1601, 2235, 33, 1979, 0, 93, 0, 0, 0, 2288, 2900, 0, 1407,
1356, 359, 0, 1183, 0, 0, 0, 0, 1728, 2729, 2295, 0, 1089, 0, 1305, 2909,
1257, 1725, 0, 712, 1094, 1398, 0, 2559, 1688, 3158, 0, 1392, 1797, 0, 0, 1077,
953, 932, 1249, 0, 143, 416, 83, 42, 0, 2751, 2643, 0, 0, 0, 1791, 0,
31, 97, 0, 65, 747, 434, 0, 0, 878, 0, 0, 0, 2447, 1019, 0, 0,
3047, 0, 0, 0, 1196, 1159, 0, 743, 2813, 1036, 0, 397, 2959, 938, 0, 1305,
0, 0, 0, 2577, 1608, 194, 574, 0, 898, 0, 0, 258, 2770, 0, 0, 935,
0, 0, 0, 0, 778, 622, 0, 1765, 0, 0, 3094, 1571, 1164, 0, 0, 40,
1040, 469, 0, 112, 0, 1079, 2325, 0, 0, 1063, 3191, 0, 1109, 1135, 2512, 0,
0, 489, 0, 201, 3181, 2271, 1243, 3103, 0, 0, 374, 0, 0, 0, 0, 0,
287, 149, 2440, 1147, 592, 1654, 818, 0, 2474, 264, 0, 0, 0, 92, 218, 0,
0, 7, 0, 0, 180, 0, 1239, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1563, 1353, 2730, 809, 2634, 0, 1613, 2930, 0, 1782, 2507, 0, 501, 1563, 881, 2102,
3069, 0, 760, 1075, 652, 473, 934, 1850, 0, 0, 3095, 0, 0, 1747, 0, 572,
358, 2230, 0, 0, 1014, 0, 0, 213, 2911, 3096, 0, 1044, 2263, 1765, 87, 1069,
471, 550, 263, 839, 1306, 58, 163, 3188, 0, 198, 0, 2496, 1537, 24, 0, 814,
0, 0, 206, 0, 2592, 1146, 0, 25, 1094, 3047, 2936, 0, 1452, 1484, 1547, 0,
0, 0, 2035, 1113, 305, 0, 46, 0, 2216, 1719, 3040, 0, 293, 954, 124, 0,
94, 383, 1980, 535, 2437, 43, 0, 327, 0, 0, 2589, 0, 0, 1208, 2780, 181,
1859, 0, 2628, 0, 0, 991, 445, 62, 0, 0, 802, 0, 0, 0, 0, 0,
647, 451, 1025, 1001, 1236, 2275, 1180, 0, 0, 0, 1566, 1183, 171, 0, 2709, 1448,
0, 0, 0, 300, 0, 0, 596, 0, 1252, 1318, 2538, 1070, 280, 844, 0, 1317,
257, 2916, 1154, 493, 39, 173, 777, 0, 1030, 303, 492, 0, 0, 0, 2121, 0,
0, 1464, 1394, 0, 0, 1007, 0, 2732, 0, 0, 705, 1341, 0, 1237, 0, 0,
0, 0, 0, 1552, 668, 959, 883, 0, 712, 1254, 2745, 0, 0, 3137, 0, 0,
0, 1806, 13, 395, 0, 1916, 0, 0, 518, 0, 545, 2529, 0, 0, 0, 2919,
1111, 385, 921, 2879, 0, 148, 1283, 325, 0, 2639, 800, 0, 245, 0, 341, 0,
2805, 0, 0, 2031, 1100, 591, 0, 2903, 2980, 3182, 0, 463, 1761, 1686, 827, 142,
2462, 282, 0, 0, 1621, 513, 0, 370, 327, 0, 373, 1344, 0, 771, 1473, 537,
3127, 0, 0, 0, 0, 1173, 0, 0, 808, 2341, 2994, 0, 0, 1236, 3106, 2511,
500, 2494, 1327, 973, 0, 726, 0, 2432, 2508, 1090, 140, 0, 2047, 0, 511, 0,
752, 412, 0, 409, 942, 1193, 0, 2991, 1436, 508, 0, 1071, 1244, 731, 0, 1206,
305, 2007, 374, 533, 117, 146, 654, 1276, 1018, 0, 0, 0, 1418, 1541, 0, 0,
230, 0, 724, 319, 2258, 1057, 653, 0, 2684, 0, 2969, 1282, 0, 248, 0, 1048,
3139, 0, 1511, 0, 1044, 0, 576, 1503, 0, 0, 69, 2572, 0, 0, 546, 90,
80, 0, 0, 438, 313, 0, 0, 0, 0, 0, 0, 2621, 1538, 3045, 0, 70,
1078, 384, 2885, 1182, 2890, 11, 0, 1108, 1542, 0, 0, 914, 1443, 0, 2325, 1529,
0, 606, 0, 972, 0, 825, 0, 225, 1047, 1322, 1051, 1864, 513, 308, 0, 0,
456, 0, 422, 2906, 767, 0, 2102, 434, 1426, 581, 0, 757, 761, 1614, 376, 86,
531, 299, 0, 0, 161, 1362, 613, 0};
int MangledHashG(const char *key, const int *T)
{
......@@ -255,26 +255,27 @@ int MangledPerfectHash(const char *key)
return (MangledHashG(key, mangledkT1) + MangledHashG(key, mangledkT2)) % 3208;
}
constexpr int unmangledkT1[] = {249, 268, 237, 143, 100, 53, 77, 99, 153, 196, 268, 119, 234,
218, 139, 142, 2, 98, 160, 173, 114, 214, 22, 46, 268, 9};
constexpr int unmangledkT2[] = {44, 159, 153, 267, 220, 238, 250, 184, 272, 262, 61, 213, 258,
149, 267, 118, 156, 254, 128, 97, 89, 159, 113, 184, 215, 101};
constexpr int unmangledkT1[] = {246, 133, 248, 237, 59, 207, 93, 240, 98, 265, 137, 42, 147,
269, 280, 3, 248, 202, 278, 80, 240, 202, 142, 149, 257, 17};
constexpr int unmangledkT2[] = {166, 291, 199, 102, 183, 190, 20, 31, 50, 30, 134, 213, 202,
55, 268, 11, 15, 108, 22, 43, 119, 187, 239, 91, 190, 47};
constexpr int unmangledkG[] = {
0, 0, 0, 0, 0, 0, 0, 234, 0, 0, 0, 0, 230, 0, 0, 0, 0, 193, 273,
0, 76, 202, 0, 0, 0, 0, 0, 161, 0, 0, 0, 78, 0, 0, 0, 0, 161, 193,
0, 0, 231, 227, 0, 0, 0, 0, 0, 41, 0, 153, 42, 0, 86, 32, 0, 123, 90,
0, 192, 0, 0, 94, 0, 93, 0, 0, 0, 0, 0, 0, 0, 63, 0, 156, 70, 184,
64, 0, 189, 203, 274, 0, 184, 250, 0, 128, 0, 252, 180, 224, 0, 134, 116, 262, 0,
75, 0, 0, 208, 155, 46, 0, 99, 100, 264, 38, 0, 193, 166, 31, 21, 129, 243, 140,
206, 0, 18, 148, 214, 193, 114, 155, 0, 146, 0, 75, 128, 0, 244, 135, 0, 173, 105,
0, 255, 0, 251, 86, 125, 73, 0, 132, 160, 159, 0, 225, 137, 109, 20, 96, 0, 0,
102, 0, 0, 165, 0, 0, 47, 0, 0, 199, 101, 143, 108, 0, 144, 0, 0, 42, 0,
118, 266, 0, 104, 222, 0, 0, 0, 131, 176, 138, 0, 0, 274, 95, 251, 182, 0, 129,
0, 5, 105, 249, 0, 0, 69, 0, 0, 62, 152, 0, 0, 201, 167, 15, 0, 238, 0,
0, 201, 100, 202, 0, 272, 275, 163, 87, 163, 142, 64, 63, 250, 0, 273, 107, 163, 157,
198, 113, 8, 0, 0, 110, 233, 0, 0, 34, 104, 191, 262, 178, 123, 49, 13, 19, 91,
41, 45, 278, 52, 154, 0, 0, 0, 0, 178, 27, 0, 110, 0, 31, 23, 196, 212, 0,
0, 68, 0, 142, 267, 153, 79, 52, 179, 114, 94, 0, 0};
0, 42, 0, 0, 0, 127, 0, 0, 0, 291, 0, 201, 0, 0, 234, 0, 0, 0, 0,
45, 0, 0, 0, 0, 0, 152, 156, 0, 67, 0, 230, 127, 0, 0, 161, 0, 0, 59,
0, 265, 0, 241, 0, 160, 155, 0, 0, 46, 25, 0, 109, 0, 147, 21, 0, 32, 0,
0, 0, 0, 84, 23, 16, 142, 177, 0, 18, 0, 27, 66, 255, 142, 135, 59, 222, 57,
39, 0, 0, 99, 142, 122, 0, 32, 0, 0, 75, 0, 0, 136, 291, 68, 0, 0, 0,
19, 64, 205, 0, 238, 274, 176, 120, 80, 81, 105, 0, 201, 42, 0, 0, 60, 268, 3,
277, 0, 39, 0, 31, 14, 0, 54, 181, 93, 277, 149, 0, 146, 153, 0, 0, 0, 158,
278, 0, 0, 65, 238, 158, 0, 73, 276, 0, 0, 185, 140, 0, 0, 0, 179, 0, 38,
0, 39, 0, 166, 88, 54, 0, 232, 0, 0, 57, 0, 80, 0, 0, 30, 0, 91, 0,
0, 75, 0, 108, 0, 9, 212, 0, 55, 0, 196, 21, 0, 0, 153, 76, 239, 0, 0,
119, 86, 0, 193, 282, 0, 0, 0, 98, 2, 0, 102, 0, 13, 64, 0, 25, 58, 67,
0, 117, 159, 0, 0, 5, 29, 0, 56, 186, 54, 0, 254, 180, 84, 290, 0, 120, 0,
204, 39, 5, 0, 0, 44, 151, 0, 0, 254, 0, 93, 136, 194, 152, 0, 166, 115, 87,
0, 0, 0, 0, 138, 0, 62, 15, 0, 0, 41, 274, 90, 239, 113, 0, 0, 118, 246,
273, 226, 0, 133, 0, 269, 0, 3, 0, 0, 98, 277, 86, 151, 156, 218, 282, 0, 0,
0, 0, 29, 51, 0, 129, 63};
int UnmangledHashG(const char *key, const int *T)
{
......@@ -283,7 +284,7 @@ int UnmangledHashG(const char *key, const int *T)
for (int i = 0; key[i] != '\0'; i++)
{
sum += T[i] * key[i];
sum %= 279;
sum %= 292;
}
return unmangledkG[sum];
}
......@@ -293,7 +294,7 @@ int UnmangledPerfectHash(const char *key)
if (strlen(key) > 26)
return 0;
return (UnmangledHashG(key, unmangledkT1) + UnmangledHashG(key, unmangledkT2)) % 279;
return (UnmangledHashG(key, unmangledkT1) + UnmangledHashG(key, unmangledkT2)) % 292;
}
} // namespace
......
......@@ -24,298 +24,260 @@ std::ostream &operator<<(std::ostream &os, const sh::ImmutableString &str)
namespace
{
constexpr int mangledkT1[] = {1888, 2201, 3289, 4099, 2901, 1271, 747, 2683, 1761, 343,
3222, 1316, 1508, 3696, 1896, 3255, 3463, 226, 1192, 2360,
3131, 2856, 731, 1833, 362, 3777, 1563, 811, 24, 1643,
4057, 1674, 4003, 1264, 35, 4299, 3725, 656, 3730, 1580};
constexpr int mangledkT2[] = {3077, 2281, 2698, 1599, 4129, 1937, 298, 4024, 2022, 1682,
2301, 357, 642, 1898, 3243, 2527, 364, 1671, 2441, 3982,
924, 3750, 2979, 828, 2934, 2541, 2369, 557, 3564, 3320,
4253, 3872, 1318, 605, 3381, 2622, 1467, 2787, 4008, 3439};
constexpr int mangledkT1[] = {3102, 1325, 1351, 3001, 1248, 3253, 589, 739, 2360, 2951,
1700, 3759, 2038, 664, 3245, 3120, 1585, 527, 2294, 2587,
1485, 188, 2635, 932, 884, 1991, 918, 320, 2213, 3603,
676, 1242, 115, 2611, 2163, 2535, 3233, 54, 3230, 1500};
constexpr int mangledkT2[] = {1129, 226, 3871, 1567, 3267, 3307, 452, 3099, 2330, 3246,
3512, 1556, 3216, 909, 1679, 1812, 3619, 2551, 2821, 3333,
3764, 2526, 2149, 2101, 1636, 2341, 2985, 454, 627, 1307,
466, 537, 2536, 736, 2238, 1704, 1050, 3135, 564, 182};
constexpr int mangledkG[] = {
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 4024, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2571, 0, 0, 0, 0, 0, 0, 0, 0, 1355, 0, 0, 0, 0, 0, 0,
0, 2193, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3739, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4377, 0, 0, 2790, 0, 1419,
0, 0, 383, 0, 0, 0, 0, 627, 0, 0, 2149, 0, 0, 0, 0, 161,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3699, 0, 0, 0, 0,
0, 0, 20, 0, 4081, 0, 0, 3359, 0, 0, 0, 0, 2198, 0, 3804, 0,
0, 339, 0, 3532, 0, 0, 0, 2703, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 220, 0, 0, 0, 0, 2907, 0, 0,
0, 0, 2776, 0, 0, 0, 0, 0, 0, 0, 0, 2815, 4211, 0, 0, 0,
0, 0, 0, 0, 379, 1076, 0, 803, 0, 0, 0, 3831, 0, 533, 3698, 0,
0, 0, 1620, 0, 0, 1409, 0, 0, 0, 0, 0, 0, 1382, 0, 0, 0,
0, 0, 4507, 0, 3481, 0, 0, 0, 0, 0, 0, 0, 4180, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2874, 0, 0,
0, 0, 0, 310, 0, 0, 0, 0, 0, 4048, 0, 0, 1411, 696, 0, 0,
0, 0, 1074, 0, 0, 0, 0, 3020, 0, 0, 0, 1998, 0, 0, 0, 0,
80, 1020, 0, 989, 0, 1517, 0, 0, 1585, 0, 0, 144, 0, 1726, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1963, 1033, 3939, 0, 0, 0, 4210, 0, 0,
0, 2000, 0, 2650, 0, 0, 0, 0, 0, 0, 0, 2014, 0, 0, 0, 0,
0, 1629, 0, 0, 4472, 0, 0, 0, 0, 0, 0, 0, 0, 4340, 3259, 0,
0, 0, 769, 0, 3612, 0, 86, 2744, 0, 0, 0, 742, 2877, 0, 2927, 0,
0, 0, 291, 0, 1762, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3695, 0, 852, 0, 0, 0, 954, 2381, 0, 496, 0, 0, 0, 0,
0, 2876, 1498, 1718, 0, 0, 0, 1470, 0, 2919, 0, 0, 0, 0, 3949, 0,
0, 0, 0, 0, 91, 4394, 4469, 0, 0, 0, 0, 0, 0, 0, 215, 0,
0, 0, 526, 0, 0, 3164, 3081, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 4429, 0, 3760, 0, 0, 0, 0, 0, 267, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1281, 0, 0, 0, 0, 0, 3536, 0, 0,
0, 0, 1397, 0, 0, 0, 0, 0, 1772, 0, 0, 556, 0, 0, 0, 0,
0, 369, 1419, 0, 0, 700, 0, 0, 1517, 0, 0, 0, 0, 331, 0, 3449,
1560, 4, 0, 0, 1861, 3457, 0, 0, 0, 0, 0, 0, 1232, 0, 0, 0,
0, 0, 4005, 0, 4048, 0, 0, 0, 0, 0, 0, 0, 0, 2114, 0, 0,
0, 0, 0, 1997, 1386, 0, 0, 0, 0, 3545, 0, 4236, 0, 0, 0, 0,
0, 0, 1008, 1013, 0, 3802, 1314, 1472, 0, 0, 0, 0, 1380, 2264, 0, 0,
1575, 573, 1572, 0, 0, 4297, 0, 0, 1801, 3658, 0, 0, 0, 0, 0, 0,
269, 0, 0, 0, 1070, 1761, 0, 1061, 0, 0, 0, 124, 0, 0, 0, 2598,
0, 0, 0, 0, 0, 0, 0, 0, 919, 1879, 0, 0, 0, 0, 0, 0,
1983, 0, 0, 0, 4007, 4004, 0, 0, 1983, 1464, 2556, 3126, 0, 0, 0, 0,
0, 0, 0, 0, 3649, 1472, 813, 0, 0, 0, 0, 737, 0, 0, 257, 3627,
0, 2613, 967, 0, 2630, 3309, 0, 0, 579, 0, 0, 0, 0, 0, 576, 0,
0, 0, 410, 0, 0, 0, 0, 0, 0, 1156, 0, 0, 0, 0, 1429, 0,
3859, 487, 0, 0, 0, 2969, 0, 0, 0, 0, 0, 1589, 3606, 747, 1853, 0,
0, 22, 2020, 4440, 0, 729, 3491, 0, 0, 0, 2476, 0, 2688, 0, 0, 0,
1368, 2317, 0, 0, 0, 0, 0, 782, 0, 0, 0, 0, 0, 3066, 0, 0,
590, 0, 0, 0, 0, 0, 763, 0, 0, 0, 0, 0, 3301, 0, 4189, 545,
0, 0, 2796, 0, 1782, 0, 0, 0, 0, 420, 338, 0, 0, 0, 4008, 0,
1764, 2414, 0, 0, 0, 543, 1531, 1495, 903, 1971, 1737, 0, 0, 4523, 847, 0,
4475, 1014, 0, 0, 2336, 4235, 0, 0, 3454, 3152, 0, 0, 0, 2174, 0, 0,
0, 227, 1563, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1303, 0, 577,
1, 0, 1042, 0, 0, 0, 0, 0, 4353, 3158, 654, 0, 0, 0, 0, 135,
0, 0, 1723, 0, 0, 500, 4223, 3770, 0, 0, 0, 0, 1362, 0, 1656, 0,
0, 0, 834, 827, 1780, 0, 3478, 2979, 0, 0, 162, 0, 932, 0, 0, 0,
0, 3844, 4505, 3086, 834, 4478, 0, 0, 0, 0, 0, 3638, 0, 0, 0, 0,
0, 0, 2644, 18, 1144, 1811, 202, 0, 0, 0, 1193, 479, 214, 0, 588, 0,
745, 0, 0, 0, 0, 0, 2152, 0, 1321, 1174, 0, 4245, 537, 0, 4475, 0,
1938, 0, 0, 4413, 76, 0, 1576, 1531, 0, 1038, 0, 2061, 0, 0, 3061, 4345,
4402, 412, 0, 0, 0, 2004, 0, 1147, 0, 62, 0, 380, 1718, 3942, 0, 0,
0, 0, 0, 0, 0, 422, 1503, 0, 0, 2475, 0, 0, 0, 4134, 0, 0,
0, 3900, 0, 0, 4378, 0, 0, 2551, 898, 0, 0, 0, 1320, 0, 0, 0,
1225, 0, 0, 0, 0, 4293, 4360, 0, 0, 0, 205, 472, 451, 0, 0, 2965,
1650, 88, 0, 4411, 0, 0, 0, 0, 32, 495, 0, 0, 4083, 3617, 0, 630,
0, 1205, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 273, 0, 0, 0,
1086, 0, 0, 4178, 0, 2561, 0, 0, 2695, 0, 0, 1533, 3778, 0, 0, 3643,
441, 0, 0, 0, 0, 404, 3981, 0, 0, 0, 579, 0, 0, 0, 440, 1083,
0, 0, 0, 0, 0, 0, 387, 0, 0, 0, 0, 3652, 0, 0, 275, 0,
1100, 0, 4359, 0, 0, 0, 3685, 4140, 3696, 0, 0, 4006, 0, 0, 0, 2558,
0, 224, 0, 0, 964, 883, 0, 0, 396, 0, 0, 4403, 974, 0, 1937, 0,
0, 0, 4350, 0, 0, 0, 0, 0, 0, 0, 0, 0, 428, 0, 2042, 1301,
0, 0, 1855, 0, 4350, 0, 0, 794, 0, 0, 1414, 1525, 868, 0, 0, 15,
0, 0, 1712, 0, 1579, 0, 2210, 0, 1963, 4022, 1272, 0, 423, 0, 1171, 0,
0, 140, 0, 1791, 0, 4442, 812, 0, 373, 4296, 0, 1413, 0, 0, 0, 0,
2668, 1820, 4041, 0, 0, 125, 0, 3033, 0, 0, 0, 2214, 0, 873, 0, 659,
0, 4394, 197, 0, 0, 0, 3628, 4057, 0, 0, 0, 0, 1319, 3858, 1872, 283,
0, 0, 0, 0, 1104, 0, 0, 717, 0, 0, 1760, 0, 0, 0, 1265, 0,
1395, 0, 0, 0, 452, 628, 0, 0, 0, 0, 0, 1257, 0, 178, 992, 2180,
0, 3014, 1466, 0, 0, 1347, 0, 2156, 2313, 2583, 0, 2048, 0, 661, 0, 0,
0, 0, 1223, 2272, 28, 712, 987, 712, 740, 0, 578, 0, 0, 360, 0, 1816,
0, 3009, 1658, 0, 1338, 0, 1269, 3965, 0, 1989, 512, 0, 3756, 1426, 0, 0,
0, 2892, 2088, 0, 0, 1555, 0, 897, 0, 0, 0, 0, 0, 351, 0, 825,
1044, 0, 0, 0, 1392, 2154, 0, 0, 0, 1940, 0, 0, 0, 0, 0, 0,
0, 446, 1083, 0, 0, 0, 412, 0, 68, 2050, 1107, 1820, 1455, 1290, 0, 809,
0, 1282, 3504, 0, 0, 0, 752, 0, 0, 1949, 4354, 0, 0, 0, 0, 3323,
0, 0, 2044, 0, 1298, 0, 0, 0, 0, 0, 215, 637, 1771, 821, 25, 0,
0, 0, 3048, 988, 0, 0, 3610, 3842, 0, 1187, 0, 1960, 0, 4255, 110, 3969,
3725, 0, 0, 0, 0, 0, 0, 3543, 0, 630, 0, 0, 0, 0, 0, 219,
0, 4312, 0, 0, 0, 1183, 4144, 0, 1516, 1402, 0, 0, 1953, 3790, 0, 1389,
0, 0, 2130, 0, 1212, 0, 0, 0, 3251, 0, 0, 0, 0, 647, 2100, 0,
0, 1155, 0, 0, 0, 897, 4318, 0, 0, 701, 3674, 3857, 1139, 0, 1944, 4480,
169, 0, 214, 0, 0, 0, 0, 0, 200, 925, 1032, 264, 271, 1456, 0, 4025,
3903, 2165, 874, 0, 0, 0, 0, 1979, 0, 4299, 722, 3755, 578, 50, 0, 0,
0, 321, 955, 4384, 1706, 2966, 1703, 0, 0, 0, 0, 3356, 1648, 0, 0, 354,
0, 0, 3316, 0, 1295, 0, 0, 0, 691, 4477, 0, 0, 898, 3820, 0, 0,
0, 1729, 1561, 1333, 741, 0, 0, 0, 927, 4469, 0, 2830, 0, 0, 0, 0,
0, 1241, 0, 0, 567, 670, 0, 0, 0, 0, 1912, 556, 0, 0, 0, 0,
0, 1551, 1763, 0, 4312, 1462, 0, 0, 0, 0, 0, 4359, 0, 811, 0, 0,
1168, 979, 0, 0, 2024, 0, 0, 0, 0, 0, 0, 0, 0, 0, 262, 4032,
1642, 943, 0, 0, 4477, 0, 0, 3098, 0, 0, 45, 3771, 0, 0, 4494, 3609,
0, 0, 3132, 0, 0, 1768, 0, 0, 0, 0, 1479, 0, 605, 0, 1263, 0,
0, 4253, 0, 2377, 0, 163, 0, 0, 787, 0, 0, 0, 193, 1534, 921, 0,
0, 0, 0, 1966, 0, 3025, 606, 757, 0, 3420, 0, 1331, 0, 0, 0, 1841,
0, 156, 4419, 7, 0, 565, 0, 0, 0, 3325, 668, 1004, 4102, 1705, 0, 0,
0, 0, 0, 930, 71, 1301, 0, 0, 3875, 0, 0, 231, 0, 0, 2312, 157,
3671, 880, 0, 0, 2760, 1962, 2996, 0, 2109, 705, 987, 1605, 3646, 1501, 0, 0,
0, 0, 0, 3314, 2240, 0, 2957, 0, 0, 1128, 0, 232, 1482, 1403, 0, 0,
0, 0, 0, 3905, 0, 3378, 0, 1213, 4240, 1113, 2465, 1939, 0, 110, 0, 0,
0, 2250, 178, 1079, 4094, 208, 0, 2270, 1136, 1498, 0, 0, 2254, 0, 4219, 0,
3678, 0, 0, 0, 38, 390, 330, 0, 0, 1818, 0, 0, 0, 0, 0, 1393,
1680, 0, 0, 2144, 4037, 3062, 0, 3837, 3724, 0, 4490, 430, 0, 1841, 0, 298,
1303, 1570, 0, 0, 68, 0, 909, 0, 397, 207, 1524, 0, 0, 0, 0, 0,
0, 0, 0, 888, 0, 0, 0, 0, 0, 0, 36, 164, 0, 0, 550, 0,
938, 743, 4197, 279, 0, 4357, 0, 900, 1486, 257, 0, 0, 0, 127, 1375, 2029,
0, 694, 15, 674, 0, 1788, 0, 4433, 344, 44, 1676, 0, 0, 890, 3605, 0,
0, 0, 0, 3738, 3702, 0, 210, 199, 0, 734, 3335, 0, 976, 0, 2442, 309,
0, 0, 0, 0, 1152, 0, 3068, 0, 0, 1410, 0, 309, 1675, 2070, 0, 0,
4070, 0, 0, 0, 711, 0, 0, 3949, 0, 3826, 1466, 4358, 0, 0, 0, 0,
0, 2029, 1190, 464, 0, 1988, 3664, 0, 1383, 0, 488, 0, 558, 0, 1842, 0,
3288, 531, 3460, 1350, 451, 0, 3753, 0, 4210, 1756, 0, 0, 1970, 0, 3586, 2057,
4036, 702, 0, 1192, 3611, 0, 1179, 1130, 2981, 4166, 0, 0, 1216, 0, 0, 0,
4368, 0, 0, 0, 0, 3698, 845, 0, 2927, 0, 0, 0, 935, 0, 0, 824,
909, 0, 0, 0, 959, 0, 1086, 0, 1730, 0, 0, 1830, 1775, 2123, 0, 0,
113, 0, 4484, 1245, 504, 1560, 1230, 0, 1769, 0, 0, 225, 432, 0, 1901, 1586,
1568, 2632, 1823, 902, 1727, 1386, 0, 0, 74, 3397, 1622, 0, 2005, 0, 0, 0,
0, 0, 894, 0, 2986, 3145, 510, 0, 149, 1163, 0, 2239, 1341, 0, 0, 0,
1930, 2135, 4416, 0, 41, 0, 0, 0, 0, 240, 1223, 0, 464, 0, 0, 792,
0, 0, 81, 1111, 3425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2024, 177,
6, 9, 3773, 664, 0, 0, 1111, 3745, 0, 0, 0, 0, 400, 1277, 0, 1786,
4234, 0, 472, 0, 1670, 0, 0, 2021, 0, 0, 0, 0, 2003, 0, 0, 0,
779, 0, 0, 0, 295, 0, 700, 0, 2692, 311, 2495, 0, 0, 3621, 3344, 3658,
897, 1022, 2846, 3285, 699, 165, 1017, 0, 0, 1003, 4050, 3768, 649, 0, 748, 0,
0, 0, 4459, 0, 0, 129, 2019, 0, 0, 0, 1026, 4340, 3955, 4361, 3983, 0,
0, 0, 0, 0, 3587, 1639, 0, 168, 356, 0, 155, 0, 0, 76, 238, 1179,
0, 1503, 993, 4114, 0, 0, 1857, 0, 0, 1082, 1439, 1639, 0, 0, 0, 0,
580, 0, 2787, 0, 609, 0, 0, 1720, 0, 0, 0, 685, 0, 1030, 0, 1905,
896, 1648, 0, 434, 0, 3400, 0, 0, 634, 2077, 0, 119, 0, 285, 0, 0,
21, 423, 1013, 0, 1091, 0, 0, 1798, 820, 0, 0, 0, 0, 0, 1394, 2176,
381, 0, 3502, 0, 1688, 4387, 0, 0, 0, 3814, 4359, 99, 636, 0, 0, 328,
0, 0, 1813, 1344, 0, 1900, 0, 3800, 0, 563, 461, 0, 1814, 2390, 0, 2263,
1363, 0, 0, 0, 3895, 1415, 0, 0, 0, 56, 0, 1465, 1685, 2377, 421, 3047,
0, 159, 1459, 859, 0, 3498, 4137, 1200, 1159, 264, 582, 0, 0, 0, 3264, 0,
0, 0, 3549, 107, 1539, 0, 1746, 0, 0, 0, 0, 0, 1088, 0, 4256, 508,
3010, 0, 5, 4093, 0, 2526, 0, 0, 0, 0, 0, 0, 0, 0, 1055, 3507,
0, 0, 966, 3629, 0, 0, 2888, 4184, 643, 0, 716, 67, 0, 1848, 0, 196,
1673, 770, 3503, 1230, 136, 1835, 1418, 360, 0, 0, 1975, 760, 0, 1562, 794, 0,
0, 113, 0, 0, 3021, 1157, 1458, 3958, 1976, 0, 0, 0, 4280, 0, 0, 0,
4190, 0, 0, 0, 0, 925, 1435, 0, 0, 0, 4463, 4052, 522, 985, 3481, 1123,
3390, 989, 3328, 3912, 0, 0, 0, 1628, 0, 3856, 784, 1296, 545, 768, 4063, 2832,
0, 0, 1480, 0, 71, 1854, 1416, 0, 839, 1212, 555, 0, 0, 4436, 958, 2112,
586, 0, 3466, 0, 861, 0, 0, 1732, 0, 0, 425, 595, 601, 0, 0, 0,
0, 709, 0, 401, 0, 0, 1768, 885, 1168, 0, 2374, 1585, 0, 0, 0, 0,
0, 3380, 0, 0, 0, 0, 2882, 377, 471, 0, 0, 0, 0, 696, 1107, 0,
0, 989, 0, 0, 4027, 3280, 847, 0, 0, 4084, 0, 698, 934, 94, 1973, 4167,
40, 0, 737, 1921, 0, 0, 305, 471, 2395, 0, 1841, 4233, 0, 0, 0, 0,
531, 31, 0, 3536, 733, 0, 0, 14, 0, 0, 0, 519, 0, 1208, 761, 0,
0, 673, 0, 0, 0, 0, 2774, 0, 0, 0, 194, 4022, 0, 1112, 1262, 2266,
4400, 1568, 1521, 1032, 0, 107, 0, 0, 4289, 1848, 0, 1378, 0, 0, 4357, 2142,
1686, 0, 543, 3294, 0, 0, 0, 0, 0, 2899, 3208, 947, 1660, 458, 3836, 104,
1713, 0, 176, 1424, 1561, 0, 2279, 420, 4077, 4072, 0, 2452, 2336, 796, 189, 0,
1755, 0, 0, 359, 0, 469, 2113, 3939, 0, 0, 0, 0, 1860, 0, 0, 0,
1280, 0, 1271, 196, 0, 0, 0, 3994, 707, 1641, 1191, 633, 0, 970, 0, 0,
1316, 0, 2092, 0, 0, 1049, 0, 0, 0, 0, 0, 1540, 229, 1537, 0, 3447,
0, 1778, 0, 0, 0, 0, 0, 2782, 0, 0, 0, 0, 0, 1034, 3509, 0,
1615, 0, 272, 0, 0, 0, 563, 2254, 0, 0, 259, 2579, 361, 1614, 0, 0,
254, 1017, 809, 0, 0, 0, 1150, 0, 0, 2643, 0, 0, 4492, 923, 0, 745,
0, 0, 23, 0, 3692, 4339, 3632, 0, 0, 1451, 0, 0, 657, 0, 0, 0,
0, 0, 0, 0, 0, 1360, 283, 1099, 985, 1153, 1662, 175, 0, 0, 1693, 0,
297, 3768, 565, 2378, 0, 605, 0, 0, 1369, 4317, 0, 0, 0, 0, 0, 4344,
0, 1279, 353, 0, 1339, 3978, 1492, 4028, 0, 0, 1638, 1851, 891, 0, 818, 2405,
0, 0, 0, 4503, 0, 1338, 0, 443, 0, 673, 0, 283, 0, 2959, 0, 638,
1549, 2039, 1087, 1112, 1735, 1206, 0, 0, 4235, 0, 1028, 1072, 381, 533, 0, 707,
0, 4145, 155, 3907, 3513, 1312, 762, 545, 1871, 1678, 0, 0, 0, 1137, 0, 0,
3006, 0, 0, 0, 840, 0, 2136, 0, 526, 0, 0, 3595, 0, 1490, 0, 0,
366, 945, 0, 0, 0, 0, 0, 3083, 1101, 1296, 2970, 437, 2050, 0, 0, 0,
0, 304, 2088, 3799, 0, 840, 2052, 0, 0, 386, 1131, 1553, 367, 0, 0, 3297,
217, 1302, 0, 0, 4138, 0, 625, 2029, 4332, 448, 0, 606, 229, 773, 0, 1011,
0, 3753, 804, 178, 629, 772, 2554, 660, 1592, 242, 0, 497, 0, 106, 0, 0,
242, 0, 1949, 389, 0, 1672, 1067, 0, 1270, 0, 0, 1124, 0, 3594, 535, 0,
0, 0, 0, 0, 0, 0, 3746, 2064, 4147, 2422, 914, 0, 0, 0, 1406, 0,
1498, 1277, 612, 1717, 1860, 0, 0, 2032, 0, 3707, 1117, 1787, 0, 0, 726, 304,
597, 501, 4368, 0, 1067, 0, 0, 0, 0, 4040, 635, 0, 4372, 3160, 0, 0,
0, 342, 0, 2347, 0, 981, 0, 0, 1507, 1625, 0, 0, 123, 2679, 3911, 4450,
1292, 2756, 205, 418, 0, 0, 0, 0, 3379, 0, 0, 3832, 537, 0, 1896, 0,
1228, 2737, 0, 4385, 4091, 0, 0, 0, 2149, 1659, 1304, 0, 0, 0, 531, 0,
3391, 2865, 284, 3845, 0, 0, 0, 4102, 0, 276, 4200, 0, 0, 0, 0, 0,
0, 1369, 0, 570, 3895, 1119, 2544, 0, 0, 767, 0, 1679, 0, 0, 4290, 649,
1227, 0, 4293, 3895, 0, 0, 4219, 853, 4322, 0, 0, 0, 0, 4286, 0, 469,
0, 4415, 496, 0, 0, 2733, 12, 267, 0, 1668, 0, 226, 0, 0, 0, 2072,
0, 1860, 0, 0, 1800, 0, 731, 0, 4401, 0, 3244, 0, 4247, 0, 716, 0,
183, 735, 0, 0, 3970, 0, 0, 1024, 547, 2749, 0, 2869, 0, 0, 2509, 0,
0, 2024, 0, 0, 0, 0, 499, 1574, 688, 0, 1593, 842, 1752, 1395, 0, 1776,
0, 4201, 1715, 3533, 0, 0, 0, 0, 168, 0, 4413, 949, 3582, 2575, 4459, 0,
261, 3602, 0, 0, 967, 1366, 0, 3212, 1878, 0, 403, 1692, 0, 3341, 0, 1345,
3774, 1206, 646, 0, 758, 0, 0, 862, 0, 395, 472, 1354, 1158, 1791, 1014, 1738,
0, 2629, 3590, 3782, 130, 0, 2122, 1204, 0, 0, 3072, 0, 0, 0, 0, 2092,
711, 0, 4269, 370, 0, 0, 4425, 59, 3247, 4306, 0, 0, 3970, 0, 132, 0,
552, 588, 1231, 0, 3398, 1073, 0, 2079, 553, 1645, 1494, 1707, 623, 1704, 0, 2169,
0, 0, 0, 0, 0, 2601, 1778, 534, 627, 1886, 0, 375, 3679, 0, 393, 0,
0, 1470, 0, 0, 0, 0, 1915, 13, 1060, 4089, 0, 0, 4223, 0, 218, 3157,
0, 0, 0, 0, 740, 554, 1055, 0, 3460, 3238, 0, 3402, 0, 199, 0, 2859,
1268, 1821, 3497, 3326, 1834, 0, 837, 0, 1844, 290, 664, 4423, 0, 1971, 4340, 0,
0, 1908, 0, 1408, 0, 0, 2038, 245, 0, 0, 0, 1529, 0, 0, 2078, 0,
1967, 0, 750, 0, 0, 950, 4201, 212, 0, 550, 2122, 0, 0, 0, 855, 0,
1398, 2057, 3735, 1225, 0, 3495, 546, 0, 473, 410, 0, 91, 4299, 0, 3354, 1474,
3562, 1471, 0, 520, 0, 0, 0, 683, 0, 0, 22, 685, 2008, 0, 0, 0,
181, 850, 0, 0, 1535, 0, 0, 1993, 356, 0, 0, 0, 1046, 28, 821, 0,
0, 0, 0, 0, 4112, 0, 548, 2594, 0, 4484, 0, 225, 4497, 0, 3905, 0,
0, 526, 0, 1279, 0, 0, 2309, 1365, 0, 0, 2404, 4007, 1745, 0, 2171, 0,
0, 0, 0, 1415, 630, 1532, 4223, 0, 704, 3570, 0, 1267, 630, 0, 916, 0,
2443, 0, 309, 4326, 426, 0, 1234, 3454, 692, 0, 483, 1927, 1481, 108, 3347, 1288,
0, 0, 3246, 0, 0, 0, 375, 822, 0, 293, 3698, 4293, 1835, 851, 431, 1273,
0, 0, 903, 0, 0, 97, 0, 1784, 574, 3951, 1484, 0, 882, 2129, 1950, 96,
294, 1331, 0, 439, 856, 0, 0, 1928, 0, 129, 924, 1894, 3792, 0, 0, 3607,
1700, 518, 0, 394, 4416, 216, 1132, 3809, 1876, 4045, 0, 0, 1010, 0, 0, 1520,
0, 1971, 0, 1403, 0, 1688, 1574, 1589, 1571, 0, 1845, 0, 48, 2911, 0, 933,
0, 333, 0, 0, 0, 1493, 315, 280, 0, 0, 0, 3785, 0, 2018, 4160, 1321,
19, 4353, 1500, 0, 0, 952, 1884, 542, 1808, 404, 912, 1739, 807, 2724, 0, 1487,
352, 0, 398, 0, 2944, 0, 2055, 0, 0, 788, 0, 1111, 63, 519, 1644, 2640,
0, 1677, 0, 142, 971, 4335, 4218, 2029, 2097, 0, 0, 369, 1976, 0, 1444, 244,
3851, 1429, 0, 3187, 0, 1733, 1468, 0, 2334, 0, 3181, 1430, 0, 3114, 3017, 0,
0, 3874, 0, 0, 0, 0, 1461, 616, 0, 0, 895, 0, 0, 0, 520, 0,
0, 0, 464, 0, 0, 1934, 415, 0, 0, 2228, 2165, 0, 0, 652, 1114, 0,
3894, 1601, 0, 1878, 995, 3074, 3446, 1533, 0, 0, 856, 1861, 830, 361, 915, 0,
318, 3225, 1310, 0, 4116, 4503, 2085, 0, 0, 111, 0, 0, 2222, 1382, 4234, 0,
0, 0, 424, 978, 1385, 0, 1329, 1367, 759, 816, 0, 0, 260, 1665, 0, 0,
0, 957, 2518, 0, 2116, 632, 2996, 0, 9, 358, 0, 590, 4110, 0, 1825, 2289,
443, 0, 0, 0, 462, 0, 18, 2075, 1959, 1476, 1891, 4224, 248, 1282, 0, 525,
0, 3186, 1416, 1625, 0, 1446, 1587, 1547, 532, 1741, 0, 1728, 2555, 1167, 1787, 4071,
1935, 2779, 0, 3, 0, 0, 727, 4214, 1796, 0, 0, 0, 0, 0, 3771, 354,
0, 1945, 4009, 0, 4315, 458, 0, 0, 1957, 0, 0, 0, 0, 494, 0, 0,
0, 2062, 0, 749, 201, 666, 0, 869, 1846, 3372, 1809, 0, 3727, 2634, 0, 461,
0, 1092, 0, 1640, 1316, 1637, 122, 376, 942, 1904, 1052, 812, 2051, 0, 0, 4298,
2514, 0, 0, 2028, 237, 0, 581, 0, 0, 0, 1538, 1417, 3060, 0, 150, 0,
1401, 2148, 2504, 1721, 4030, 0, 4214, 0, 1658, 1250, 4428, 0, 1663, 0, 0, 1025,
0, 0, 727, 0, 799, 0, 1081, 686, 424, 1237, 453, 0, 4202, 4518, 0, 0,
0, 4327, 0, 1850, 1810, 0, 0, 0, 0, 1630, 3932, 42, 4298, 0, 282, 1313,
2120, 1627, 3726, 0, 1122, 0, 0, 0, 501, 3043, 1704, 0, 0, 1487, 2166, 2880,
3093, 2146, 1451, 0, 737, 2166, 3616, 4405, 0, 1335, 679, 0, 187, 2169, 364, 171,
1287, 0, 0, 3454, 0, 2322, 59, 0, 620, 0, 1097, 226, 0, 1457, 4112, 4267,
323, 0, 425, 677, 3863, 0, 2133, 2056, 2166, 4394, 1334, 0, 0, 1664, 0, 1753,
911, 0, 1120, 53, 1222, 0, 986, 3617, 0, 1177, 461, 1591, 0, 1611, 680, 1000,
3009, 0, 144, 0, 486, 0, 2817, 89, 1925, 679, 4144, 803, 2103, 0, 0, 1183,
699, 1530, 1975, 441, 0, 431, 0, 1108, 0, 133, 0, 0, 0, 3503, 0, 0,
4310, 4208, 0, 1917, 0, 0, 0, 0, 1072, 2131, 843, 1389, 1933, 0, 0, 0,
2806, 294, 2773, 247, 1613, 0, 1564, 0, 0, 4071, 2017, 0, 252, 0, 1062, 507,
0, 3313, 0, 929, 0, 449, 1595, 487, 1195, 0, 1379, 889, 1169, 0, 650, 0,
0, 854, 3013, 0, 0, 1341, 250, 0, 0, 4010, 0, 0, 4091, 0, 1984, 1031,
2063, 529, 935, 82, 0, 0, 4251, 833, 4336, 2606, 1645, 0, 0, 571, 0, 644,
979, 0, 0, 1996, 2453, 0, 1196, 4122, 1689, 955, 4211, 3934, 1428, 0, 40, 0,
1869, 0, 3730, 100, 0, 2146, 0, 0, 0, 0, 4309, 0, 3531, 2402, 214, 0,
123, 1093, 1842, 2408, 0, 0, 1326, 1759, 0, 0, 0, 28, 0, 1805, 4479, 0,
0, 3970, 4173, 4196, 811, 0, 0, 1121, 356, 0, 0, 4144, 4078, 0, 1750, 1409,
2860, 0, 0, 387, 514, 0, 97, 1915, 0, 1911, 2639, 942, 3656, 2205, 0, 911,
2711, 108, 940, 1858, 667, 152, 1073, 0, 0, 118, 268, 0, 0, 0, 0, 0,
1936, 0, 1827, 4208, 1973, 0, 2938, 0, 0, 892, 357, 2146, 0, 544, 1934, 689,
2962, 1443, 3680, 0, 462, 0, 1709, 1994, 0, 0, 2160, 3844, 0, 0, 289, 13,
0, 1325, 2049, 2126, 2537, 766, 0, 0, 0, 2930, 1508, 1523, 1414, 0, 0, 568,
1903, 0, 1931, 0, 0, 941, 1582, 904, 1657, 2076, 0, 1523, 0, 3774, 200, 1309,
77, 0, 0, 16, 2162, 0, 41, 1173, 1393, 1886, 0, 562, 1503, 3631, 1246, 0,
4467, 500, 3727, 1877, 1080, 0, 3702, 2218, 0, 610, 4040, 0, 0, 261, 3399, 0,
0, 1558, 0, 0, 2127, 0, 44, 1353, 728, 0, 4043, 774, 413, 0, 0, 2090,
1607, 0, 427, 127, 1737, 0, 0, 1190, 1666, 0, 1322, 401, 181, 0, 186, 713,
0, 0, 3809, 1661, 0, 222, 112, 2143, 2930, 852, 1040, 3283, 224, 0, 0, 0,
0, 383, 1866, 39, 0, 0, 1084, 3118, 0, 1801, 0, 1509, 2170, 0, 0, 4256,
0, 312, 4423, 465, 1007, 1629, 49, 0, 1587, 265, 0, 105, 0, 0, 65, 538,
1263, 1215, 85, 1831, 3660, 25, 1242, 2218, 0, 0, 999, 1914, 3882, 0, 384, 661,
1327, 1245, 839, 4494, 2290, 0, 0, 3870, 795, 2084, 4072, 0, 1438, 0, 918, 0,
0, 412, 1726, 0, 3400, 1328, 0, 0, 1259, 857, 2363, 0, 0, 0, 0, 0,
0, 969, 477, 796, 0, 928, 4331, 3193, 1109, 4247, 1207, 78, 3223, 3321, 0, 678,
0, 1604, 1817, 0, 0, 3913, 0, 0, 350, 0, 3267, 759, 0, 1203, 0, 0,
3363, 1589, 1045, 786, 395, 0, 818, 270, 38, 572, 2407, 376, 1702, 4363, 693, 0,
4131, 468, 0, 719, 2937, 170, 569, 3307, 392, 3247, 0, 0, 0, 0, 3882, 871,
0, 3698, 432, 1150, 0, 1994, 686, 1638, 0, 296, 1395, 0, 0, 3763, 0, 2150,
2831, 0, 0, 1275, 0, 1038, 177, 0, 3937, 1148, 3372, 0, 3546, 0, 0, 1804,
51, 1549, 1744, 1184, 357, 0, 780, 1550, 2631, 3578, 3274, 0, 1635, 0, 0, 4231,
0, 0, 903, 3665, 4311, 0, 0, 0, 0, 3823, 2653, 0, 2119, 0, 844, 2037,
0, 0, 2084, 3858, 1160, 488, 0, 0, 0, 479, 0, 0, 2507, 0, 3463, 0,
0, 0, 4517, 0, 0, 0, 0, 781, 1153, 0, 1980, 0, 1654, 1947, 0, 1065,
634, 0, 0, 478, 1033, 48, 0, 317, 1896, 0, 2292, 0, 0, 0, 0, 1472,
393, 945, 1083, 0, 1594, 1451, 0, 3174, 1455, 0, 2108, 789, 811, 1164, 3720, 2097,
224, 1422, 1581, 2819, 0, 0, 0, 0, 4209, 0, 0, 587, 0};
0, 0, 0, 0, 0, 0, 0, 0, 0, 973, 0, 0, 2762, 0, 0, 3695,
2780, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2474,
0, 616, 0, 0, 0, 0, 0, 626, 0, 0, 0, 0, 0, 242, 0, 0,
0, 2505, 1729, 3344, 0, 0, 362, 0, 139, 0, 0, 0, 0, 3022, 2925, 0,
0, 0, 0, 0, 0, 961, 0, 2450, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1206, 0, 0, 0, 0, 0, 2292, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2294, 0, 0, 0, 0, 0, 0, 3243, 0, 0, 1832, 1889,
3015, 2347, 397, 0, 0, 0, 0, 0, 2268, 487, 1220, 0, 0, 2970, 0, 0,
0, 0, 0, 0, 0, 192, 1062, 0, 0, 0, 0, 0, 0, 0, 0, 1118,
0, 0, 1389, 0, 0, 0, 0, 3334, 0, 0, 1866, 0, 0, 0, 3268, 0,
0, 1397, 0, 0, 0, 0, 0, 735, 0, 0, 0, 193, 15, 0, 3158, 0,
0, 0, 3298, 2376, 0, 1462, 2924, 183, 0, 2649, 0, 0, 3226, 3552, 3343, 0,
2502, 3258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1942, 0, 0, 397,
1413, 2818, 0, 0, 0, 0, 2738, 2414, 3786, 0, 0, 0, 67, 0, 0, 236,
0, 0, 0, 0, 2668, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1223, 0,
0, 0, 0, 0, 264, 1411, 0, 0, 820, 0, 1770, 0, 806, 833, 0, 0,
1814, 3051, 0, 3651, 2100, 0, 66, 0, 878, 0, 0, 0, 1974, 854, 0, 2011,
0, 0, 0, 0, 3393, 1300, 0, 0, 0, 109, 0, 0, 0, 0, 3313, 0,
3075, 0, 0, 0, 617, 0, 0, 2650, 0, 0, 465, 3456, 152, 84, 3232, 752,
1075, 0, 0, 1699, 0, 224, 863, 0, 0, 0, 0, 0, 0, 2953, 0, 0,
0, 3203, 0, 121, 0, 2641, 0, 0, 0, 204, 0, 0, 1953, 0, 0, 0,
0, 3898, 3511, 0, 1586, 696, 0, 0, 2698, 0, 2432, 3277, 0, 0, 1511, 663,
0, 0, 1570, 0, 604, 3199, 0, 0, 1463, 393, 0, 0, 0, 0, 2089, 1937,
752, 0, 532, 0, 1645, 0, 939, 3461, 2351, 1982, 0, 3505, 0, 661, 0, 0,
0, 0, 0, 1720, 753, 3334, 0, 2086, 164, 0, 2217, 1863, 0, 0, 0, 0,
0, 3788, 1074, 0, 1229, 0, 403, 0, 910, 345, 0, 1835, 129, 2886, 0, 0,
0, 0, 2440, 2572, 0, 0, 0, 0, 0, 3718, 0, 3856, 13, 0, 2909, 449,
0, 0, 0, 0, 0, 3898, 0, 0, 0, 0, 0, 0, 0, 1796, 0, 3301,
0, 3374, 0, 0, 0, 2637, 0, 0, 0, 0, 0, 2487, 24, 1432, 0, 1127,
99, 0, 0, 0, 0, 3601, 3638, 2083, 0, 3667, 676, 1955, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2263, 2650, 0, 0, 813, 2872, 0, 0, 1530, 1263,
0, 0, 0, 0, 27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 509, 2814,
1472, 1384, 0, 0, 0, 0, 0, 3528, 0, 0, 0, 0, 923, 649, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, 183, 0, 439,
1359, 0, 0, 0, 0, 1291, 167, 0, 0, 591, 0, 1224, 0, 1753, 0, 0,
0, 0, 418, 3560, 0, 1326, 2703, 0, 0, 2694, 0, 104, 440, 0, 0, 0,
0, 0, 0, 0, 0, 2005, 0, 2661, 0, 0, 2969, 1668, 3653, 0, 0, 0,
0, 0, 0, 3832, 0, 2835, 380, 0, 3081, 0, 0, 0, 199, 0, 653, 3303,
0, 3432, 0, 1524, 1795, 2718, 0, 2461, 0, 0, 1838, 0, 0, 724, 1453, 0,
0, 578, 2660, 2676, 1297, 0, 0, 0, 0, 3364, 0, 0, 0, 0, 0, 1997,
0, 0, 0, 79, 0, 319, 1270, 1804, 515, 254, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1728, 0, 938, 2011, 1135, 419, 3847, 0, 0,
992, 0, 1601, 0, 0, 0, 0, 0, 3562, 867, 0, 0, 0, 27, 0, 0,
1426, 0, 0, 2559, 686, 0, 0, 0, 0, 608, 1880, 3358, 0, 0, 76, 0,
0, 0, 0, 1686, 1122, 780, 0, 0, 2811, 0, 805, 0, 3568, 3098, 0, 0,
0, 0, 0, 0, 0, 0, 2172, 429, 3755, 0, 819, 0, 0, 0, 538, 3871,
3617, 2269, 0, 147, 0, 3475, 2291, 0, 0, 868, 2865, 2720, 738, 0, 9, 766,
353, 2940, 521, 0, 0, 0, 0, 0, 3649, 1789, 121, 0, 0, 438, 2023, 0,
0, 1124, 0, 0, 0, 0, 0, 469, 3089, 0, 3837, 2214, 273, 1776, 722, 0,
0, 0, 0, 0, 0, 3583, 3394, 0, 0, 1302, 3405, 0, 1191, 1277, 0, 3244,
0, 1010, 0, 771, 775, 0, 1234, 340, 0, 0, 0, 1029, 0, 0, 1037, 306,
2918, 0, 0, 1276, 2437, 948, 3700, 2008, 0, 0, 0, 486, 0, 3645, 510, 287,
1555, 1946, 483, 0, 3344, 0, 3126, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3249, 0, 0, 0, 2124, 1044, 0, 2645, 0, 0, 0, 0, 3079, 0, 0,
0, 0, 0, 0, 0, 581, 3109, 0, 934, 0, 0, 0, 0, 0, 3881, 1317,
0, 1109, 781, 1122, 0, 1191, 1355, 3154, 0, 817, 3560, 765, 2974, 0, 0, 461,
2776, 1285, 154, 0, 0, 1414, 0, 0, 0, 0, 525, 0, 0, 0, 0, 0,
2040, 0, 1688, 1493, 342, 0, 1988, 2055, 3664, 0, 0, 0, 0, 3009, 1412, 1879,
0, 3385, 0, 0, 0, 2079, 0, 0, 1781, 1010, 108, 723, 0, 1690, 2810, 3783,
0, 3575, 0, 3907, 0, 0, 0, 0, 0, 270, 0, 0, 0, 2331, 0, 2006,
3770, 0, 0, 1036, 632, 0, 0, 0, 0, 2318, 0, 0, 0, 0, 3878, 1634,
0, 0, 1529, 0, 0, 2716, 0, 0, 0, 0, 1054, 0, 896, 0, 0, 0,
0, 2124, 481, 0, 2613, 0, 912, 0, 0, 3746, 305, 2703, 0, 0, 1175, 1283,
3886, 2628, 0, 92, 0, 0, 0, 0, 1490, 178, 0, 503, 702, 158, 0, 2096,
0, 0, 0, 0, 1670, 1409, 0, 0, 0, 0, 2260, 0, 0, 1825, 0, 1631,
635, 330, 0, 0, 1900, 2157, 3669, 3727, 1122, 2498, 0, 0, 1377, 2971, 321, 1839,
0, 0, 3277, 141, 2528, 0, 0, 227, 1866, 0, 0, 339, 0, 0, 404, 0,
2374, 1075, 2268, 1018, 2103, 0, 0, 0, 0, 0, 922, 0, 0, 2266, 0, 2027,
0, 3904, 0, 654, 0, 484, 2286, 0, 0, 1868, 161, 0, 3515, 255, 1416, 3170,
0, 0, 0, 528, 711, 1932, 0, 0, 0, 0, 288, 0, 3459, 0, 0, 0,
655, 0, 2951, 571, 2357, 0, 0, 0, 0, 0, 0, 0, 2590, 1535, 0, 0,
912, 0, 0, 0, 1011, 821, 0, 0, 1799, 0, 0, 0, 0, 0, 0, 0,
0, 2238, 0, 1591, 0, 3622, 2020, 2798, 0, 0, 0, 3522, 0, 87, 2687, 3437,
0, 0, 0, 0, 3307, 386, 2148, 0, 1410, 0, 0, 3563, 3214, 0, 0, 2854,
3813, 0, 480, 1560, 1760, 0, 0, 871, 0, 0, 0, 2318, 1249, 1689, 1358, 2132,
2163, 2945, 0, 991, 332, 2860, 139, 63, 0, 2621, 2871, 1084, 0, 0, 470, 729,
0, 0, 0, 0, 1442, 485, 3878, 740, 267, 0, 3366, 1, 2026, 0, 0, 214,
914, 2285, 0, 0, 1395, 0, 0, 0, 848, 1362, 0, 1670, 0, 0, 0, 1754,
0, 240, 0, 2923, 803, 0, 3737, 0, 932, 0, 2561, 0, 0, 2481, 0, 1902,
2426, 1238, 2118, 1248, 0, 3123, 0, 3614, 0, 0, 1562, 0, 0, 1264, 0, 0,
2517, 1042, 0, 1322, 1074, 397, 0, 0, 3245, 0, 307, 0, 0, 2735, 0, 0,
0, 2187, 3421, 0, 78, 1464, 0, 2229, 1124, 1620, 0, 1851, 1266, 3861, 3570, 2512,
3721, 0, 2434, 0, 898, 595, 1028, 0, 0, 674, 552, 1303, 107, 0, 2828, 1223,
2115, 488, 1162, 1495, 297, 1451, 0, 1263, 2406, 2547, 3691, 58, 0, 0, 901, 0,
188, 3764, 552, 1100, 2652, 1908, 0, 0, 3509, 2174, 0, 2721, 1608, 3120, 0, 0,
2208, 2502, 0, 0, 0, 141, 0, 0, 3513, 1495, 1346, 0, 0, 0, 3470, 212,
1489, 558, 414, 0, 286, 1218, 0, 0, 1959, 397, 0, 687, 0, 3477, 0, 1961,
0, 1080, 0, 3273, 3838, 2167, 0, 539, 259, 2751, 2004, 591, 1961, 0, 0, 3217,
2929, 0, 55, 1744, 0, 1974, 1200, 3712, 0, 1782, 437, 0, 0, 0, 0, 0,
2641, 1928, 0, 3837, 0, 0, 3330, 2153, 1863, 170, 55, 0, 607, 0, 157, 0,
1080, 622, 0, 0, 2132, 3659, 0, 0, 1926, 327, 1581, 580, 0, 1385, 0, 279,
0, 590, 2185, 0, 0, 3600, 655, 1765, 0, 0, 0, 2349, 0, 1604, 0, 0,
0, 378, 821, 0, 9, 1375, 1667, 787, 0, 0, 1331, 0, 0, 30, 1701, 3175,
0, 0, 520, 3496, 1961, 0, 0, 0, 2421, 328, 0, 0, 0, 705, 0, 196,
649, 0, 2141, 0, 0, 0, 3375, 142, 0, 1235, 467, 1317, 0, 0, 0, 2020,
1310, 1774, 0, 1984, 1970, 1576, 1253, 1666, 5, 0, 0, 0, 0, 3866, 1608, 1022,
2036, 1541, 0, 0, 3463, 2681, 0, 151, 0, 1514, 1431, 0, 0, 657, 2420, 1138,
0, 511, 0, 2862, 0, 0, 2112, 335, 374, 0, 1633, 3431, 2234, 0, 1917, 0,
0, 0, 1463, 0, 1479, 2534, 0, 0, 3101, 3053, 2960, 426, 3640, 2198, 2870, 1132,
3408, 0, 2876, 1012, 0, 0, 0, 0, 3071, 0, 0, 1005, 315, 44, 0, 0,
1002, 1920, 1183, 0, 0, 2613, 2154, 1517, 0, 3444, 0, 3593, 0, 2733, 1891, 3882,
40, 918, 242, 0, 3341, 1565, 2210, 1290, 1846, 3872, 2684, 1526, 58, 815, 1012, 2657,
1402, 0, 0, 0, 84, 2751, 0, 0, 0, 3074, 0, 3785, 1199, 0, 924, 3605,
0, 0, 1074, 0, 3857, 167, 2251, 0, 0, 0, 0, 0, 1650, 1696, 0, 0,
0, 0, 910, 2774, 1579, 643, 0, 1834, 0, 3599, 0, 0, 0, 116, 2817, 754,
0, 0, 0, 3835, 662, 826, 638, 0, 818, 0, 2527, 0, 0, 0, 376, 0,
2114, 0, 523, 2881, 1323, 3508, 293, 830, 2124, 490, 1006, 3688, 0, 3863, 2800, 0,
0, 878, 0, 2214, 0, 0, 210, 1404, 0, 0, 0, 0, 3177, 255, 0, 0,
3673, 540, 1528, 2066, 452, 1568, 1052, 2062, 0, 2630, 2504, 0, 448, 408, 0, 672,
1255, 720, 0, 1607, 1228, 0, 1921, 0, 0, 2585, 0, 34, 0, 0, 1571, 3473,
0, 315, 409, 628, 0, 0, 0, 3006, 1559, 2084, 1538, 1570, 2157, 0, 582, 0,
0, 1519, 0, 1262, 0, 3257, 2850, 0, 0, 1074, 0, 0, 0, 748, 1477, 1600,
0, 0, 0, 2851, 3302, 0, 0, 0, 0, 219, 1185, 2753, 1834, 0, 3303, 0,
2714, 0, 908, 0, 3167, 1033, 1614, 0, 2484, 0, 0, 138, 285, 0, 0, 83,
0, 1725, 1523, 0, 782, 0, 1889, 1651, 2226, 0, 2741, 1363, 1560, 0, 0, 2891,
0, 1451, 0, 493, 0, 2128, 403, 1797, 3240, 1981, 1644, 3337, 260, 39, 614, 1547,
1877, 1072, 1355, 0, 0, 0, 2458, 645, 2145, 181, 1081, 0, 0, 0, 0, 0,
0, 1268, 0, 0, 0, 0, 0, 693, 2656, 326, 0, 689, 582, 2199, 3405, 1820,
1081, 1843, 634, 0, 0, 0, 0, 3336, 0, 3418, 0, 1685, 0, 0, 0, 0,
1697, 2997, 2608, 409, 921, 0, 0, 624, 3482, 0, 0, 1992, 1272, 2445, 0, 0,
1328, 0, 989, 3597, 0, 3585, 3883, 3195, 1598, 0, 0, 1417, 0, 2660, 2003, 0,
0, 0, 0, 1971, 0, 431, 160, 512, 1344, 863, 0, 1273, 1499, 3397, 1480, 0,
0, 0, 3238, 0, 0, 1553, 0, 0, 0, 2065, 0, 143, 733, 910, 1186, 1340,
0, 0, 0, 1678, 0, 0, 736, 0, 2918, 699, 0, 0, 33, 478, 3397, 0,
2897, 2569, 2150, 701, 2982, 3486, 0, 2549, 998, 0, 2305, 412, 149, 1843, 498, 3831,
245, 0, 2317, 1282, 0, 0, 3008, 0, 0, 0, 771, 5, 0, 2406, 481, 333,
0, 3753, 0, 0, 0, 1925, 0, 1245, 2106, 133, 0, 942, 563, 1043, 0, 54,
0, 0, 2897, 3358, 0, 213, 1382, 0, 0, 1246, 0, 0, 3242, 0, 2560, 1193,
1880, 3657, 0, 0, 0, 0, 3103, 1572, 3218, 976, 1336, 1869, 0, 3441, 0, 0,
0, 1761, 0, 475, 3499, 2223, 1580, 3241, 1448, 1505, 340, 2161, 971, 2778, 0, 0,
0, 0, 2277, 1238, 0, 0, 0, 0, 1550, 2419, 3198, 269, 0, 215, 1443, 1331,
0, 0, 0, 0, 312, 1759, 644, 0, 2454, 2484, 0, 1085, 2497, 1881, 0, 733,
2926, 2823, 2087, 0, 3876, 2674, 1042, 1476, 0, 825, 0, 0, 2309, 0, 3179, 1074,
0, 2737, 0, 2037, 164, 1974, 0, 0, 3615, 0, 557, 2285, 543, 0, 3274, 0,
0, 0, 1549, 3418, 3545, 1415, 0, 3788, 927, 3182, 0, 0, 0, 147, 0, 2151,
929, 0, 575, 0, 2082, 0, 0, 0, 2292, 2688, 0, 1215, 2858, 3040, 0, 0,
0, 727, 0, 486, 0, 0, 0, 2010, 0, 3631, 791, 3414, 2056, 0, 0, 0,
0, 0, 320, 0, 1929, 1448, 2701, 867, 44, 0, 827, 8, 0, 2172, 0, 3685,
1006, 1809, 421, 1808, 1618, 2961, 1651, 0, 2796, 0, 0, 276, 0, 141, 0, 0,
0, 1427, 0, 0, 3638, 0, 0, 0, 2652, 1428, 2064, 558, 3346, 0, 0, 0,
1444, 2779, 0, 1502, 0, 0, 7, 523, 3403, 3075, 454, 0, 0, 0, 963, 1610,
1687, 753, 0, 0, 0, 2369, 348, 0, 0, 0, 1220, 3088, 1970, 1862, 0, 2015,
0, 0, 861, 69, 947, 1072, 0, 0, 0, 2095, 1403, 0, 0, 0, 668, 3574,
0, 0, 1587, 0, 2643, 766, 3064, 839, 1646, 1932, 967, 0, 1379, 159, 747, 0,
2986, 0, 1369, 0, 0, 2173, 0, 0, 0, 2164, 2861, 0, 1971, 0, 924, 2951,
1118, 0, 3774, 54, 1008, 0, 3208, 0, 1540, 1133, 0, 1514, 0, 3621, 737, 3311,
0, 0, 0, 0, 0, 235, 1998, 776, 0, 1671, 214, 2035, 0, 0, 0, 0,
500, 0, 191, 0, 0, 3520, 0, 2050, 1952, 3160, 0, 2269, 222, 1112, 229, 716,
140, 0, 1725, 2620, 1604, 3612, 2868, 670, 1860, 1275, 1799, 123, 0, 1244, 2992, 0,
0, 3772, 0, 1911, 0, 2896, 1208, 52, 594, 20, 0, 0, 0, 0, 3813, 673,
543, 521, 2132, 0, 2137, 2681, 0, 496, 2754, 369, 0, 3887, 0, 1005, 1821, 0,
3674, 996, 0, 1672, 1164, 0, 1661, 3564, 564, 0, 151, 2700, 0, 0, 0, 1941,
683, 0, 0, 0, 2105, 0, 1640, 1792, 1356, 2551, 1462, 2050, 0, 823, 646, 0,
91, 0, 0, 2709, 798, 0, 1885, 3777, 0, 1968, 2045, 3416, 3606, 1968, 3614, 2815,
54, 2233, 0, 0, 0, 2119, 1871, 0, 1299, 217, 0, 0, 0, 753, 0, 0,
1621, 2166, 2026, 778, 1997, 732, 2396, 0, 0, 310, 882, 1292, 0, 886, 3716, 3263,
338, 0, 0, 0, 0, 3015, 3108, 2660, 1977, 0, 776, 1231, 0, 550, 432, 1992,
276, 0, 0, 0, 0, 0, 2115, 2554, 2917, 915, 1098, 0, 439, 0, 630, 2970,
0, 626, 2180, 1762, 0, 966, 66, 760, 1864, 1993, 951, 357, 0, 0, 1268, 0,
0, 259, 0, 0, 3066, 2879, 0, 0, 1747, 3380, 0, 1650, 352, 2055, 626, 1650,
0, 2663, 0, 0, 102, 0, 2088, 0, 1340, 3313, 1109, 650, 0, 0, 0, 2916,
3143, 972, 1052, 2786, 0, 0, 1334, 1546, 672, 381, 3707, 2004, 0, 3114, 1348, 0,
55, 0, 2183, 0, 2973, 1513, 1206, 0, 742, 2276, 0, 2719, 0, 0, 315, 0,
0, 1075, 684, 3143, 3873, 3825, 1541, 1932, 0, 1638, 0, 0, 0, 3215, 3824, 2212,
2929, 560, 748, 0, 1287, 3340, 410, 2005, 1419, 3408, 2366, 0, 0, 0, 2126, 3536,
1576, 1016, 0, 3899, 0, 593, 2370, 0, 0, 2878, 0, 40, 1304, 1411, 0, 816,
3294, 0, 2800, 0, 3428, 578, 3641, 3056, 129, 3496, 709, 2110, 0, 0, 1387, 69,
873, 3302, 3226, 0, 1736, 3183, 566, 531, 0, 3203, 687, 3338, 0, 202, 2062, 0,
0, 895, 0, 0, 1546, 0, 1288, 2919, 1815, 0, 0, 1287, 0, 3736, 1315, 266,
821, 2741, 33, 0, 3497, 0, 1059, 3896, 0, 0, 0, 1379, 1597, 118, 1255, 3567,
3067, 0, 3673, 1079, 0, 275, 1694, 51, 3858, 0, 353, 2263, 0, 3597, 1664, 381,
1902, 0, 2133, 1741, 898, 0, 1995, 0, 0, 0, 0, 843, 1864, 3428, 2262, 3349,
0, 2645, 1507, 725, 210, 258, 2887, 0, 681, 2731, 17, 948, 0, 2977, 0, 2370,
3597, 349, 2424, 2150, 3421, 2596, 1164, 210, 2153, 53, 1962, 471, 99, 2018, 1728, 0,
0, 2155, 2013, 595, 3828, 2895, 2329, 984, 0, 204, 453, 1341, 1667, 3773, 0, 1817,
0, 3108, 3707, 1093, 508, 349, 578, 0, 2159, 0, 0, 974, 2466, 3540, 0, 856,
3793, 1704, 1090, 0, 1657, 470, 0, 0, 1637, 2749, 0, 2442, 3890, 1344, 356, 0,
63, 2310, 1212, 0, 0, 1520, 2167, 1233, 0, 0, 2035, 2484, 3569, 2255, 0, 0,
2198, 3562, 0, 927, 1927, 1159, 0, 3827, 1770, 973, 2030, 0, 3891, 0, 0, 2649,
354, 0, 0, 2788, 0, 2069, 0, 52, 0, 508, 0, 418, 1919, 2246, 884, 1128,
571, 1174, 1465, 1946, 1264, 3418, 527, 0, 0, 0, 1243, 481, 0, 836, 2770, 1577,
2660, 3473, 0, 0, 71, 3828, 1713, 0, 1228, 2355, 1192, 0, 1790, 738, 0, 3738,
3650, 0, 73, 0, 1702, 1863, 0, 617, 0, 0, 1530, 0, 2405, 1775, 929, 0,
0, 0, 2080, 2768, 0, 3012, 0, 935, 0, 0, 0, 1003, 0, 3536, 0, 1845,
3873, 3629, 967, 0, 1653, 1452, 2371, 0, 0, 116, 1012, 2871, 0, 0, 855, 3097,
0, 208, 2550, 0, 2060, 0, 0, 861, 3686, 1367, 3365, 0, 0, 0, 84, 0,
1296, 1430, 1322, 0, 0, 0, 1698, 2567, 1659, 533, 3172, 3401, 23, 3182, 0, 1090,
1740, 1020, 0, 0, 0, 0, 0, 1681, 427, 2766, 2834, 2909, 1449, 197, 0, 877,
285, 3718, 162, 567, 1071, 75, 3783, 0, 635, 0, 2080, 1818, 0, 0, 2750, 0,
255, 351, 0, 0, 1196, 0, 1084, 0, 810, 2790, 0, 2276, 0, 3083, 2887, 0,
1301, 617, 3341, 1907, 2568, 2996, 946, 3338, 0, 1090, 898, 521, 0, 1203, 1921, 0,
2995, 0, 2073, 0, 3755, 0, 2973, 0, 742, 3720, 1032, 493, 42, 2256, 0, 0,
1189, 2243, 904, 0, 0, 0, 0, 532, 310, 2242, 0, 2165, 0, 3791, 0, 2406,
0, 0, 1277, 774, 1326, 662, 0, 505, 1959, 3652, 594, 999, 1303, 0, 1756, 0,
1077, 1337, 2229, 2158, 0, 0, 1816, 0, 348, 1764, 1873, 3387, 3181, 49, 1999, 0,
929, 82, 0, 0, 0, 1000, 1311, 3475, 507, 1749, 798, 1128, 0, 2962, 1515, 422,
1931, 256, 0, 0, 1089, 0, 392, 0, 190, 0, 0, 2007, 0, 2846, 2930, 1950,
0, 940, 0, 3178, 3521, 1228, 1240, 0, 515, 746, 0, 1097, 404, 1554, 3192, 388,
3497, 715, 1118, 3907, 2484, 1613, 786, 852, 24, 0, 1019, 0, 3664, 0, 81, 0,
1065, 1587, 1434, 0, 1032, 3497, 1920, 2071, 251, 1394, 0, 3717, 235, 0, 0, 3880,
323, 0, 0, 182, 0, 2350, 210, 56, 1538, 1135, 819, 2434, 423, 2662, 1661, 0,
0, 190, 0, 2191, 0, 1829, 3781, 703, 14, 0, 0, 3759, 2941, 0, 968, 0,
1718, 0, 2519, 3033, 1851, 797, 2103, 2602, 2372, 0, 0, 0, 0, 3672, 0, 3417,
0, 1068, 758, 3885, 0, 3359, 157, 0, 1456, 1946, 2636, 0, 984, 3785, 3502, 2470,
2911, 273, 361, 187, 559, 1561, 754, 1164, 0, 1829, 131, 0, 2173, 0, 0, 429,
1648, 3554, 0, 0, 0, 0, 0, 2723, 1456, 2893, 0, 3325, 920, 0, 1278, 1415,
870, 0, 1202, 301, 0, 0, 2119, 0, 2843, 0, 865, 1455, 3408, 1013, 0, 3761,
2880, 1846, 0, 1986, 1336, 0, 0, 0, 3325, 679, 2137, 0, 747, 61, 0, 3632,
724, 1253, 1210, 0, 1026, 543, 1075, 2140, 1769, 1444, 898, 728, 3618, 3121, 1167, 0,
0, 1207, 0, 832, 3100, 2689, 0, 0, 0, 0, 0, 1148, 1496, 0, 1068, 379,
2170, 1804, 3492, 462, 3818, 0, 1488, 1143, 1894, 1053, 0, 2106, 2699, 986, 0, 1591,
3767, 1635, 420, 2928, 0, 0, 0, 0, 0, 194, 0, 553, 0, 1270, 0, 1388,
1274, 2357, 159, 1175, 0, 2959, 2994, 0, 1557, 0, 398, 3809, 946, 1030, 0, 1274,
0, 870, 0, 2234, 3167, 0, 2329, 0, 1596, 0, 0, 57, 1748, 1362, 3827, 1303,
0, 0, 0, 3452, 0, 1579, 2160, 1638, 3335, 451, 1783, 1139, 2761, 463, 602, 0,
1461, 0, 1261, 146, 0, 612, 0, 0, 1987, 846, 3795, 211, 598, 0, 0, 979,
0, 0, 2009, 2219, 53, 2346, 3000, 658, 624, 698, 0, 3845, 2293, 0, 0, 0,
1642, 0, 0, 711, 2977, 2381, 470, 2439, 14, 1300, 0, 3020, 654, 0, 1307, 541,
467, 322, 966, 0, 3758, 3079, 0, 0, 646, 594, 2445, 0, 0, 282, 0, 1600,
0, 660, 430, 1050, 2570, 2336, 1306, 0, 0, 2560, 227, 0, 3467, 1714, 1026, 3810,
0, 2372, 0, 0, 1855, 0, 0, 1725, 3572, 3321, 0, 0, 0, 72, 448, 0,
1816, 0, 1048, 3814, 2844, 0, 0, 1786, 2735, 1808, 2014, 703, 0, 0, 0, 0,
499, 687, 3740, 0, 803, 3524, 447, 747, 456, 3216, 1880, 2958, 0, 103, 341, 812,
3732, 0, 216, 441, 1629, 1804, 1117, 0, 2048, 0, 0, 253, 1574, 177, 1932, 648,
1705, 0, 0, 1780, 3640, 236, 0, 3881, 2044, 1761, 552, 983, 465, 3346, 1482, 1918,
633, 1984, 2185, 2179, 996, 580, 1853, 387, 2568, 0, 1221, 0, 1881, 3433, 962, 3650,
1942, 0, 351, 0, 0, 0, 0, 2090, 0, 1138, 0, 1539, 1706, 127, 0, 958,
1263, 3282, 1796, 280, 0, 692, 0, 1164, 463, 2582, 0, 722, 0, 0, 0, 3517,
0, 0, 311, 1146, 2765, 0, 353, 252, 0, 0, 0, 0, 580, 0, 0, 3907,
420, 2946, 0, 2534, 1985, 596, 74, 10, 0, 0, 0, 0, 0, 1914, 0, 3602,
2121, 0, 0, 3874, 0, 1719, 507, 1037, 0, 0, 532, 0, 1720, 958, 700, 2964,
405, 0, 0, 0, 1373, 576, 204, 1618, 0, 0, 0, 0, 478, 2877, 104, 966,
0, 3745, 839, 526, 0, 66, 1675, 0, 1136, 3165, 1399, 2593, 0, 41, 783, 0,
0, 1271, 636, 0, 1738, 1800, 0, 2813, 530, 1144, 692, 1594, 797, 1260, 2077, 0,
0, 0, 0, 0, 2201, 2617, 1101, 29, 0, 3363, 474, 0, 0, 833, 980, 0,
623, 1926, 2010, 602, 0, 373, 1501, 784, 1252, 601, 1760, 0, 1921, 0, 0, 1690,
0, 549, 321, 0, 0, 1382, 1924, 869, 1, 717, 1573, 1272, 840, 67, 1776, 827,
246, 397, 1012, 206, 3230, 0, 557, 0, 1454, 0, 2327, 3180, 3134, 2236, 3342, 1649,
1942, 3752, 0, 0, 238, 510, 1887, 2231, 3144, 309, 1591, 0, 3625, 0, 1143, 0,
794, 0, 0, 0, 0, 0, 514, 0, 0, 0, 1699, 1158, 1604, 226, 0, 3901,
0, 1753, 3618, 1600, 2160, 719, 658, 0, 0, 2870, 1425, 555, 0, 321, 0, 0,
1282, 1168, 0, 0, 0, 0, 3295, 1959, 0, 3542, 825, 3888, 0, 2118, 0, 0,
513, 3796, 944, 1189, 2590, 0, 0, 3440, 0, 99, 0, 1078, 2205, 0, 0, 560,
3491, 562, 864, 0, 851, 3573, 1087, 0, 1405, 0, 1024, 1590, 0, 75, 3130, 0,
1195, 0, 784, 0, 0, 0};
int MangledHashG(const char *key, const int *T)
{
......@@ -324,7 +286,7 @@ int MangledHashG(const char *key, const int *T)
for (int i = 0; key[i] != '\0'; i++)
{
sum += T[i] * key[i];
sum %= 4525;
sum %= 3910;
}
return mangledkG[sum];
}
......@@ -334,33 +296,36 @@ int MangledPerfectHash(const char *key)
if (strlen(key) > 40)
return 0;
return (MangledHashG(key, mangledkT1) + MangledHashG(key, mangledkT2)) % 4525;
return (MangledHashG(key, mangledkT1) + MangledHashG(key, mangledkT2)) % 3910;
}
constexpr int unmangledkT1[] = {171, 270, 202, 193, 51, 273, 319, 29, 312, 81, 181, 247, 334,
160, 186, 252, 234, 137, 189, 99, 312, 59, 196, 157, 87, 15};
constexpr int unmangledkT2[] = {0, 91, 210, 328, 207, 176, 17, 91, 234, 148, 315, 152, 334,
51, 88, 18, 221, 3, 190, 126, 270, 105, 214, 314, 190, 315};
constexpr int unmangledkT1[] = {361, 84, 287, 107, 189, 235, 216, 268, 315, 73, 365, 67, 31,
103, 108, 1, 206, 276, 63, 133, 161, 27, 70, 359, 69, 354};
constexpr int unmangledkT2[] = {116, 270, 65, 391, 92, 345, 246, 10, 306, 20, 206, 346, 291,
195, 244, 398, 269, 237, 25, 394, 247, 248, 315, 180, 233, 167};
constexpr int unmangledkG[] = {
0, 0, 0, 0, 0, 0, 319, 209, 71, 0, 156, 0, 0, 0, 0, 89, 0, 0, 0,
0, 202, 145, 90, 254, 178, 0, 0, 0, 8, 0, 0, 140, 105, 0, 107, 0, 264, 28,
193, 0, 0, 0, 0, 0, 0, 56, 38, 0, 136, 299, 142, 188, 137, 0, 19, 327, 0,
7, 0, 0, 0, 108, 194, 0, 68, 186, 0, 181, 2, 305, 0, 281, 221, 0, 0, 0,
0, 0, 39, 51, 0, 94, 138, 336, 344, 328, 0, 0, 0, 281, 86, 0, 0, 0, 301,
41, 210, 254, 0, 113, 0, 0, 113, 0, 224, 132, 140, 0, 83, 0, 0, 101, 138, 164,
151, 0, 254, 0, 0, 0, 123, 36, 0, 59, 189, 187, 0, 230, 348, 308, 2, 2, 0,
0, 345, 0, 272, 83, 309, 0, 327, 0, 207, 202, 86, 331, 242, 0, 0, 0, 66, 0,
0, 108, 0, 315, 0, 4, 0, 0, 5, 27, 251, 141, 185, 0, 206, 0, 0, 34, 61,
326, 91, 279, 265, 312, 24, 156, 127, 238, 0, 68, 0, 0, 15, 198, 331, 198, 0, 196,
31, 0, 135, 0, 0, 111, 71, 130, 0, 220, 192, 0, 321, 0, 212, 209, 0, 0, 124,
219, 42, 52, 0, 0, 0, 168, 143, 0, 0, 20, 241, 0, 0, 172, 324, 122, 139, 0,
159, 216, 42, 0, 0, 32, 31, 200, 39, 319, 0, 0, 17, 0, 0, 0, 0, 27, 193,
150, 165, 29, 168, 0, 54, 110, 197, 172, 10, 169, 75, 304, 0, 0, 65, 96, 0, 0,
21, 115, 0, 116, 79, 164, 73, 191, 324, 64, 6, 291, 38, 0, 199, 68, 16, 148, 283,
197, 0, 0, 111, 12, 0, 255, 219, 344, 0, 76, 0, 302, 260, 258, 0, 344, 110, 187,
0, 349, 82, 0, 0, 89, 0, 9, 0, 0, 16, 315, 74, 11, 111, 0, 0, 291, 0,
0, 97, 39, 0, 1, 329, 0, 121, 0, 69, 0, 124, 0, 0, 53, 156, 164, 207, 117,
0, 289, 0, 0, 0, 154, 0, 0, 0, 264, 262};
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82, 0, 0, 34, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 42, 391, 0, 0, 0, 0, 7, 0, 187, 0, 64, 237,
350, 377, 112, 192, 0, 217, 0, 133, 0, 0, 0, 0, 0, 384, 0, 0, 0, 0, 0,
122, 0, 107, 0, 283, 276, 9, 317, 215, 0, 147, 167, 232, 169, 15, 0, 0, 247, 25,
348, 0, 364, 68, 195, 0, 345, 0, 0, 154, 31, 0, 0, 180, 0, 0, 342, 321, 0,
0, 0, 0, 2, 244, 73, 61, 0, 0, 259, 0, 51, 178, 0, 0, 12, 28, 202, 0,
113, 144, 0, 0, 0, 196, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0,
0, 309, 0, 232, 56, 0, 315, 358, 0, 0, 0, 341, 21, 360, 0, 0, 0, 0, 0,
46, 0, 325, 17, 11, 272, 0, 0, 126, 401, 0, 85, 40, 305, 0, 0, 0, 0, 0,
0, 0, 7, 201, 56, 142, 405, 0, 0, 0, 339, 164, 0, 192, 0, 109, 206, 60, 40,
0, 0, 243, 17, 0, 145, 0, 163, 88, 0, 0, 0, 128, 0, 117, 0, 0, 0, 257,
285, 0, 16, 0, 191, 0, 0, 12, 0, 339, 71, 323, 21, 99, 0, 0, 187, 0, 22,
167, 274, 0, 258, 0, 0, 0, 17, 30, 0, 0, 0, 181, 218, 0, 0, 109, 0, 212,
154, 332, 54, 259, 0, 0, 0, 319, 14, 149, 82, 50, 0, 0, 15, 218, 0, 0, 0,
0, 123, 0, 218, 162, 0, 50, 226, 219, 0, 86, 120, 310, 197, 101, 0, 0, 0, 0,
127, 1, 207, 86, 0, 0, 0, 377, 0, 8, 75, 0, 0, 395, 106, 374, 0, 197, 0,
356, 179, 297, 0, 3, 70, 0, 164, 7, 0, 0, 136, 0, 250, 193, 0, 52, 319, 248,
0, 357, 112, 0, 77, 0, 0, 0, 230, 136, 81, 101, 0, 217, 0, 0, 0, 37, 0,
172, 0, 0, 0, 14, 175, 0, 53, 361, 0, 134, 191, 304, 43, 0, 0, 198, 0, 82,
0, 336, 0, 0, 0, 338, 280, 0, 386, 360, 8, 139, 87, 30, 281, 0, 0, 0, 11,
262, 389, 301, 236, 36, 190, 150, 0, 0, 0, 325, 0, 388, 0, 155, 33, 379, 6, 4,
0, 165, 129, 214, 369, 0, 0, 17};
int UnmangledHashG(const char *key, const int *T)
{
......@@ -369,7 +334,7 @@ int UnmangledHashG(const char *key, const int *T)
for (int i = 0; key[i] != '\0'; i++)
{
sum += T[i] * key[i];
sum %= 353;
sum %= 407;
}
return unmangledkG[sum];
}
......@@ -379,7 +344,7 @@ int UnmangledPerfectHash(const char *key)
if (strlen(key) > 26)
return 0;
return (UnmangledHashG(key, unmangledkT1) + UnmangledHashG(key, unmangledkT2)) % 353;
return (UnmangledHashG(key, unmangledkT1) + UnmangledHashG(key, unmangledkT2)) % 407;
}
} // namespace
......
......@@ -21,77 +21,77 @@ namespace BuiltInGroup
bool isTextureOffsetNoBias(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3795 && id <= 3864;
return id >= 3792 && id <= 3861;
}
bool isTextureOffsetBias(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3865 && id <= 3884;
return id >= 3862 && id <= 3881;
}
bool isTextureGatherOffsetNoComp(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3922 && id <= 3929;
return id >= 3919 && id <= 3926;
}
bool isTextureGatherOffsetComp(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3930 && id <= 3935;
return id >= 3927 && id <= 3932;
}
bool isTextureGatherOffset(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3922 && id <= 3935;
return id >= 3919 && id <= 3932;
}
bool isTextureGatherOffsetsNoComp(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3936 && id <= 3952;
return id >= 3933 && id <= 3949;
}
bool isTextureGatherOffsetsComp(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3953 && id <= 3964;
return id >= 3950 && id <= 3961;
}
bool isTextureGatherOffsets(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3936 && id <= 3964;
return id >= 3933 && id <= 3961;
}
bool isTextureGather(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3898 && id <= 3964;
return id >= 3895 && id <= 3961;
}
bool isInterpolationFS(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3977 && id <= 4000;
return id >= 3974 && id <= 3997;
}
bool isAtomicMemory(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 4005 && id <= 4022;
return id >= 4002 && id <= 4019;
}
bool isImageStore(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 4059 && id <= 4076;
return id >= 4056 && id <= 4073;
}
bool isImageLoad(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 4077 && id <= 4094;
return id >= 4074 && id <= 4091;
}
bool isImageAtomic(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 4095 && id <= 4670;
return id >= 4092 && id <= 4667;
}
bool isImage(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 4023 && id <= 4670;
return id >= 4020 && id <= 4667;
}
} // namespace BuiltInGroup
......
......@@ -76,22 +76,22 @@ bool isAtomicMemory(const TFunction *func)
bool isImageStore(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 1578 && id <= 1613;
return id >= 1578 && id <= 1610;
}
bool isImageLoad(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 1614 && id <= 1646;
return id >= 1611 && id <= 1643;
}
bool isImageAtomic(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 1647 && id <= 2768;
return id >= 1644 && id <= 2765;
}
bool isImage(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 1506 && id <= 2768;
return id >= 1506 && id <= 2765;
}
} // namespace BuiltInGroup
......
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -492,9 +492,6 @@ basic_types_enumeration = [
'Image2DMSArray',
'IImage2DMSArray',
'UImage2DMSArray',
'Image2DRect',
'IImage2DRect',
'UImage2DRect',
'ImageCubeArray',
'IImageCubeArray',
'UImageCubeArray',
......@@ -1331,7 +1328,7 @@ def gen_function_variants(function_props):
variants = [['gimage2D', 'ivec2'], ['gimage3D', 'ivec3'], ['gimageCube', 'ivec3'],
['gimageBuffer', 'int'], ['gimage2DArray', 'ivec3'],
['gimageCubeArray', 'ivec3'], ['gimage1D', 'int'], ['gimage1DArray', 'ivec2'],
['gimage2DRect', 'ivec2'], ['gimage2DMS', 'ivec2', 'int'],
['gimageRect', 'ivec2'], ['gimage2DMS', 'ivec2', 'int'],
['gimage2DMSArray', 'ivec3', 'int']]
for variant in variants:
image_variant_parameters = []
......
......@@ -310,9 +310,6 @@ class RewriteR32fImagesTraverser : public TIntermTraverser
case EbtImage2DMSArray:
newType->setBasicType(EbtUImage2DMSArray);
break;
case EbtImage2DRect:
newType->setBasicType(EbtUImage2DRect);
break;
case EbtImageCubeArray:
newType->setBasicType(EbtUImageCubeArray);
break;
......
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -929,12 +929,12 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x0000037cu, ImmutableString("imageSize(01I").mangledNameHash());
ASSERT_EQ(0x0000037du, ImmutableString("imageSize(01J").mangledNameHash());
ASSERT_EQ(0x0000037eu, ImmutableString("imageSize(01K").mangledNameHash());
ASSERT_EQ(0x0000037fu, ImmutableString("imageSize(01a").mangledNameHash());
ASSERT_EQ(0x00000380u, ImmutableString("imageSize(01b").mangledNameHash());
ASSERT_EQ(0x00000381u, ImmutableString("imageSize(01c").mangledNameHash());
ASSERT_EQ(0x00000382u, ImmutableString("imageSize(01g").mangledNameHash());
ASSERT_EQ(0x00000383u, ImmutableString("imageSize(01h").mangledNameHash());
ASSERT_EQ(0x00000384u, ImmutableString("imageSize(01i").mangledNameHash());
ASSERT_EQ(0x0000037fu, ImmutableString("imageSize(01X").mangledNameHash());
ASSERT_EQ(0x00000380u, ImmutableString("imageSize(01Y").mangledNameHash());
ASSERT_EQ(0x00000381u, ImmutableString("imageSize(01Z").mangledNameHash());
ASSERT_EQ(0x00000382u, ImmutableString("imageSize(01d").mangledNameHash());
ASSERT_EQ(0x00000383u, ImmutableString("imageSize(01e").mangledNameHash());
ASSERT_EQ(0x00000384u, ImmutableString("imageSize(01f").mangledNameHash());
ASSERT_EQ(0x00000385u, ImmutableString("imageStore(00z10D30B").mangledNameHash());
ASSERT_EQ(0x00000386u, ImmutableString("imageStore(01A10D30D").mangledNameHash());
ASSERT_EQ(0x00000387u, ImmutableString("imageStore(01B10D30E").mangledNameHash());
......@@ -947,12 +947,12 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x0000038eu, ImmutableString("imageStore(01I20D30B").mangledNameHash());
ASSERT_EQ(0x0000038fu, ImmutableString("imageStore(01J20D30D").mangledNameHash());
ASSERT_EQ(0x00000390u, ImmutableString("imageStore(01K20D30E").mangledNameHash());
ASSERT_EQ(0x00000391u, ImmutableString("imageStore(01a20D30B").mangledNameHash());
ASSERT_EQ(0x00000392u, ImmutableString("imageStore(01b20D30D").mangledNameHash());
ASSERT_EQ(0x00000393u, ImmutableString("imageStore(01c20D30E").mangledNameHash());
ASSERT_EQ(0x00000394u, ImmutableString("imageStore(01g00D30B").mangledNameHash());
ASSERT_EQ(0x00000395u, ImmutableString("imageStore(01h00D30D").mangledNameHash());
ASSERT_EQ(0x00000396u, ImmutableString("imageStore(01i00D30E").mangledNameHash());
ASSERT_EQ(0x00000391u, ImmutableString("imageStore(01X20D30B").mangledNameHash());
ASSERT_EQ(0x00000392u, ImmutableString("imageStore(01Y20D30D").mangledNameHash());
ASSERT_EQ(0x00000393u, ImmutableString("imageStore(01Z20D30E").mangledNameHash());
ASSERT_EQ(0x00000394u, ImmutableString("imageStore(01d00D30B").mangledNameHash());
ASSERT_EQ(0x00000395u, ImmutableString("imageStore(01e00D30D").mangledNameHash());
ASSERT_EQ(0x00000396u, ImmutableString("imageStore(01f00D30E").mangledNameHash());
ASSERT_EQ(0x00000397u, ImmutableString("imageLoad(00z10D").mangledNameHash());
ASSERT_EQ(0x00000398u, ImmutableString("imageLoad(01A10D").mangledNameHash());
ASSERT_EQ(0x00000399u, ImmutableString("imageLoad(01B10D").mangledNameHash());
......@@ -965,12 +965,12 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x000003a0u, ImmutableString("imageLoad(01I20D").mangledNameHash());
ASSERT_EQ(0x000003a1u, ImmutableString("imageLoad(01J20D").mangledNameHash());
ASSERT_EQ(0x000003a2u, ImmutableString("imageLoad(01K20D").mangledNameHash());
ASSERT_EQ(0x000003a3u, ImmutableString("imageLoad(01a20D").mangledNameHash());
ASSERT_EQ(0x000003a4u, ImmutableString("imageLoad(01b20D").mangledNameHash());
ASSERT_EQ(0x000003a5u, ImmutableString("imageLoad(01c20D").mangledNameHash());
ASSERT_EQ(0x000003a6u, ImmutableString("imageLoad(01g00D").mangledNameHash());
ASSERT_EQ(0x000003a7u, ImmutableString("imageLoad(01h00D").mangledNameHash());
ASSERT_EQ(0x000003a8u, ImmutableString("imageLoad(01i00D").mangledNameHash());
ASSERT_EQ(0x000003a3u, ImmutableString("imageLoad(01X20D").mangledNameHash());
ASSERT_EQ(0x000003a4u, ImmutableString("imageLoad(01Y20D").mangledNameHash());
ASSERT_EQ(0x000003a5u, ImmutableString("imageLoad(01Z20D").mangledNameHash());
ASSERT_EQ(0x000003a6u, ImmutableString("imageLoad(01d00D").mangledNameHash());
ASSERT_EQ(0x000003a7u, ImmutableString("imageLoad(01e00D").mangledNameHash());
ASSERT_EQ(0x000003a8u, ImmutableString("imageLoad(01f00D").mangledNameHash());
ASSERT_EQ(0x000003a9u, ImmutableString("imageAtomicAdd(00z10D00E").mangledNameHash());
ASSERT_EQ(0x000003aau, ImmutableString("imageAtomicAdd(01A10D00E").mangledNameHash());
ASSERT_EQ(0x000003abu, ImmutableString("imageAtomicAdd(01B10D00E").mangledNameHash());
......@@ -980,24 +980,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x000003afu, ImmutableString("imageAtomicAdd(01I20D00E").mangledNameHash());
ASSERT_EQ(0x000003b0u, ImmutableString("imageAtomicAdd(01J20D00E").mangledNameHash());
ASSERT_EQ(0x000003b1u, ImmutableString("imageAtomicAdd(01K20D00E").mangledNameHash());
ASSERT_EQ(0x000003b2u, ImmutableString("imageAtomicAdd(01g00D00E").mangledNameHash());
ASSERT_EQ(0x000003b3u, ImmutableString("imageAtomicAdd(01h00D00E").mangledNameHash());
ASSERT_EQ(0x000003b4u, ImmutableString("imageAtomicAdd(01i00D00E").mangledNameHash());
ASSERT_EQ(0x000003b2u, ImmutableString("imageAtomicAdd(01d00D00E").mangledNameHash());
ASSERT_EQ(0x000003b3u, ImmutableString("imageAtomicAdd(01e00D00E").mangledNameHash());
ASSERT_EQ(0x000003b4u, ImmutableString("imageAtomicAdd(01f00D00E").mangledNameHash());
ASSERT_EQ(0x000003b5u, ImmutableString("imageAtomicAdd(01F20D00E").mangledNameHash());
ASSERT_EQ(0x000003b6u, ImmutableString("imageAtomicAdd(01G20D00E").mangledNameHash());
ASSERT_EQ(0x000003b7u, ImmutableString("imageAtomicAdd(01H20D00E").mangledNameHash());
ASSERT_EQ(0x000003b8u, ImmutableString("imageAtomicAdd(01a20D00E").mangledNameHash());
ASSERT_EQ(0x000003b9u, ImmutableString("imageAtomicAdd(01b20D00E").mangledNameHash());
ASSERT_EQ(0x000003bau, ImmutableString("imageAtomicAdd(01c20D00E").mangledNameHash());
ASSERT_EQ(0x000003b8u, ImmutableString("imageAtomicAdd(01X20D00E").mangledNameHash());
ASSERT_EQ(0x000003b9u, ImmutableString("imageAtomicAdd(01Y20D00E").mangledNameHash());
ASSERT_EQ(0x000003bau, ImmutableString("imageAtomicAdd(01Z20D00E").mangledNameHash());
ASSERT_EQ(0x000003bbu, ImmutableString("imageAtomicAdd(01L00D00E").mangledNameHash());
ASSERT_EQ(0x000003bcu, ImmutableString("imageAtomicAdd(01M00D00E").mangledNameHash());
ASSERT_EQ(0x000003bdu, ImmutableString("imageAtomicAdd(01N00D00E").mangledNameHash());
ASSERT_EQ(0x000003beu, ImmutableString("imageAtomicAdd(01O10D00E").mangledNameHash());
ASSERT_EQ(0x000003bfu, ImmutableString("imageAtomicAdd(01P10D00E").mangledNameHash());
ASSERT_EQ(0x000003c0u, ImmutableString("imageAtomicAdd(01Q10D00E").mangledNameHash());
ASSERT_EQ(0x000003c1u, ImmutableString("imageAtomicAdd(01X10D00E").mangledNameHash());
ASSERT_EQ(0x000003c2u, ImmutableString("imageAtomicAdd(01Y10D00E").mangledNameHash());
ASSERT_EQ(0x000003c3u, ImmutableString("imageAtomicAdd(01Z10D00E").mangledNameHash());
ASSERT_EQ(0x000003c1u, ImmutableString("imageAtomicAdd(01a10D00E").mangledNameHash());
ASSERT_EQ(0x000003c2u, ImmutableString("imageAtomicAdd(01b10D00E").mangledNameHash());
ASSERT_EQ(0x000003c3u, ImmutableString("imageAtomicAdd(01c10D00E").mangledNameHash());
ASSERT_EQ(0x000003c4u, ImmutableString("imageAtomicAdd(01R10D00D00E").mangledNameHash());
ASSERT_EQ(0x000003c5u, ImmutableString("imageAtomicAdd(01S10D00D00E").mangledNameHash());
ASSERT_EQ(0x000003c6u, ImmutableString("imageAtomicAdd(01T10D00D00E").mangledNameHash());
......@@ -1013,24 +1013,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x000003d0u, ImmutableString("imageAtomicAdd(01I20D00D").mangledNameHash());
ASSERT_EQ(0x000003d1u, ImmutableString("imageAtomicAdd(01J20D00D").mangledNameHash());
ASSERT_EQ(0x000003d2u, ImmutableString("imageAtomicAdd(01K20D00D").mangledNameHash());
ASSERT_EQ(0x000003d3u, ImmutableString("imageAtomicAdd(01g00D00D").mangledNameHash());
ASSERT_EQ(0x000003d4u, ImmutableString("imageAtomicAdd(01h00D00D").mangledNameHash());
ASSERT_EQ(0x000003d5u, ImmutableString("imageAtomicAdd(01i00D00D").mangledNameHash());
ASSERT_EQ(0x000003d3u, ImmutableString("imageAtomicAdd(01d00D00D").mangledNameHash());
ASSERT_EQ(0x000003d4u, ImmutableString("imageAtomicAdd(01e00D00D").mangledNameHash());
ASSERT_EQ(0x000003d5u, ImmutableString("imageAtomicAdd(01f00D00D").mangledNameHash());
ASSERT_EQ(0x000003d6u, ImmutableString("imageAtomicAdd(01F20D00D").mangledNameHash());
ASSERT_EQ(0x000003d7u, ImmutableString("imageAtomicAdd(01G20D00D").mangledNameHash());
ASSERT_EQ(0x000003d8u, ImmutableString("imageAtomicAdd(01H20D00D").mangledNameHash());
ASSERT_EQ(0x000003d9u, ImmutableString("imageAtomicAdd(01a20D00D").mangledNameHash());
ASSERT_EQ(0x000003dau, ImmutableString("imageAtomicAdd(01b20D00D").mangledNameHash());
ASSERT_EQ(0x000003dbu, ImmutableString("imageAtomicAdd(01c20D00D").mangledNameHash());
ASSERT_EQ(0x000003d9u, ImmutableString("imageAtomicAdd(01X20D00D").mangledNameHash());
ASSERT_EQ(0x000003dau, ImmutableString("imageAtomicAdd(01Y20D00D").mangledNameHash());
ASSERT_EQ(0x000003dbu, ImmutableString("imageAtomicAdd(01Z20D00D").mangledNameHash());
ASSERT_EQ(0x000003dcu, ImmutableString("imageAtomicAdd(01L00D00D").mangledNameHash());
ASSERT_EQ(0x000003ddu, ImmutableString("imageAtomicAdd(01M00D00D").mangledNameHash());
ASSERT_EQ(0x000003deu, ImmutableString("imageAtomicAdd(01N00D00D").mangledNameHash());
ASSERT_EQ(0x000003dfu, ImmutableString("imageAtomicAdd(01O10D00D").mangledNameHash());
ASSERT_EQ(0x000003e0u, ImmutableString("imageAtomicAdd(01P10D00D").mangledNameHash());
ASSERT_EQ(0x000003e1u, ImmutableString("imageAtomicAdd(01Q10D00D").mangledNameHash());
ASSERT_EQ(0x000003e2u, ImmutableString("imageAtomicAdd(01X10D00D").mangledNameHash());
ASSERT_EQ(0x000003e3u, ImmutableString("imageAtomicAdd(01Y10D00D").mangledNameHash());
ASSERT_EQ(0x000003e4u, ImmutableString("imageAtomicAdd(01Z10D00D").mangledNameHash());
ASSERT_EQ(0x000003e2u, ImmutableString("imageAtomicAdd(01a10D00D").mangledNameHash());
ASSERT_EQ(0x000003e3u, ImmutableString("imageAtomicAdd(01b10D00D").mangledNameHash());
ASSERT_EQ(0x000003e4u, ImmutableString("imageAtomicAdd(01c10D00D").mangledNameHash());
ASSERT_EQ(0x000003e5u, ImmutableString("imageAtomicAdd(01R10D00D00D").mangledNameHash());
ASSERT_EQ(0x000003e6u, ImmutableString("imageAtomicAdd(01S10D00D00D").mangledNameHash());
ASSERT_EQ(0x000003e7u, ImmutableString("imageAtomicAdd(01T10D00D00D").mangledNameHash());
......@@ -1046,24 +1046,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x000003f1u, ImmutableString("imageAtomicMin(01I20D00E").mangledNameHash());
ASSERT_EQ(0x000003f2u, ImmutableString("imageAtomicMin(01J20D00E").mangledNameHash());
ASSERT_EQ(0x000003f3u, ImmutableString("imageAtomicMin(01K20D00E").mangledNameHash());
ASSERT_EQ(0x000003f4u, ImmutableString("imageAtomicMin(01g00D00E").mangledNameHash());
ASSERT_EQ(0x000003f5u, ImmutableString("imageAtomicMin(01h00D00E").mangledNameHash());
ASSERT_EQ(0x000003f6u, ImmutableString("imageAtomicMin(01i00D00E").mangledNameHash());
ASSERT_EQ(0x000003f4u, ImmutableString("imageAtomicMin(01d00D00E").mangledNameHash());
ASSERT_EQ(0x000003f5u, ImmutableString("imageAtomicMin(01e00D00E").mangledNameHash());
ASSERT_EQ(0x000003f6u, ImmutableString("imageAtomicMin(01f00D00E").mangledNameHash());
ASSERT_EQ(0x000003f7u, ImmutableString("imageAtomicMin(01F20D00E").mangledNameHash());
ASSERT_EQ(0x000003f8u, ImmutableString("imageAtomicMin(01G20D00E").mangledNameHash());
ASSERT_EQ(0x000003f9u, ImmutableString("imageAtomicMin(01H20D00E").mangledNameHash());
ASSERT_EQ(0x000003fau, ImmutableString("imageAtomicMin(01a20D00E").mangledNameHash());
ASSERT_EQ(0x000003fbu, ImmutableString("imageAtomicMin(01b20D00E").mangledNameHash());
ASSERT_EQ(0x000003fcu, ImmutableString("imageAtomicMin(01c20D00E").mangledNameHash());
ASSERT_EQ(0x000003fau, ImmutableString("imageAtomicMin(01X20D00E").mangledNameHash());
ASSERT_EQ(0x000003fbu, ImmutableString("imageAtomicMin(01Y20D00E").mangledNameHash());
ASSERT_EQ(0x000003fcu, ImmutableString("imageAtomicMin(01Z20D00E").mangledNameHash());
ASSERT_EQ(0x000003fdu, ImmutableString("imageAtomicMin(01L00D00E").mangledNameHash());
ASSERT_EQ(0x000003feu, ImmutableString("imageAtomicMin(01M00D00E").mangledNameHash());
ASSERT_EQ(0x000003ffu, ImmutableString("imageAtomicMin(01N00D00E").mangledNameHash());
ASSERT_EQ(0x00000400u, ImmutableString("imageAtomicMin(01O10D00E").mangledNameHash());
ASSERT_EQ(0x00000401u, ImmutableString("imageAtomicMin(01P10D00E").mangledNameHash());
ASSERT_EQ(0x00000402u, ImmutableString("imageAtomicMin(01Q10D00E").mangledNameHash());
ASSERT_EQ(0x00000403u, ImmutableString("imageAtomicMin(01X10D00E").mangledNameHash());
ASSERT_EQ(0x00000404u, ImmutableString("imageAtomicMin(01Y10D00E").mangledNameHash());
ASSERT_EQ(0x00000405u, ImmutableString("imageAtomicMin(01Z10D00E").mangledNameHash());
ASSERT_EQ(0x00000403u, ImmutableString("imageAtomicMin(01a10D00E").mangledNameHash());
ASSERT_EQ(0x00000404u, ImmutableString("imageAtomicMin(01b10D00E").mangledNameHash());
ASSERT_EQ(0x00000405u, ImmutableString("imageAtomicMin(01c10D00E").mangledNameHash());
ASSERT_EQ(0x00000406u, ImmutableString("imageAtomicMin(01R10D00D00E").mangledNameHash());
ASSERT_EQ(0x00000407u, ImmutableString("imageAtomicMin(01S10D00D00E").mangledNameHash());
ASSERT_EQ(0x00000408u, ImmutableString("imageAtomicMin(01T10D00D00E").mangledNameHash());
......@@ -1079,24 +1079,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x00000412u, ImmutableString("imageAtomicMin(01I20D00D").mangledNameHash());
ASSERT_EQ(0x00000413u, ImmutableString("imageAtomicMin(01J20D00D").mangledNameHash());
ASSERT_EQ(0x00000414u, ImmutableString("imageAtomicMin(01K20D00D").mangledNameHash());
ASSERT_EQ(0x00000415u, ImmutableString("imageAtomicMin(01g00D00D").mangledNameHash());
ASSERT_EQ(0x00000416u, ImmutableString("imageAtomicMin(01h00D00D").mangledNameHash());
ASSERT_EQ(0x00000417u, ImmutableString("imageAtomicMin(01i00D00D").mangledNameHash());
ASSERT_EQ(0x00000415u, ImmutableString("imageAtomicMin(01d00D00D").mangledNameHash());
ASSERT_EQ(0x00000416u, ImmutableString("imageAtomicMin(01e00D00D").mangledNameHash());
ASSERT_EQ(0x00000417u, ImmutableString("imageAtomicMin(01f00D00D").mangledNameHash());
ASSERT_EQ(0x00000418u, ImmutableString("imageAtomicMin(01F20D00D").mangledNameHash());
ASSERT_EQ(0x00000419u, ImmutableString("imageAtomicMin(01G20D00D").mangledNameHash());
ASSERT_EQ(0x0000041au, ImmutableString("imageAtomicMin(01H20D00D").mangledNameHash());
ASSERT_EQ(0x0000041bu, ImmutableString("imageAtomicMin(01a20D00D").mangledNameHash());
ASSERT_EQ(0x0000041cu, ImmutableString("imageAtomicMin(01b20D00D").mangledNameHash());
ASSERT_EQ(0x0000041du, ImmutableString("imageAtomicMin(01c20D00D").mangledNameHash());
ASSERT_EQ(0x0000041bu, ImmutableString("imageAtomicMin(01X20D00D").mangledNameHash());
ASSERT_EQ(0x0000041cu, ImmutableString("imageAtomicMin(01Y20D00D").mangledNameHash());
ASSERT_EQ(0x0000041du, ImmutableString("imageAtomicMin(01Z20D00D").mangledNameHash());
ASSERT_EQ(0x0000041eu, ImmutableString("imageAtomicMin(01L00D00D").mangledNameHash());
ASSERT_EQ(0x0000041fu, ImmutableString("imageAtomicMin(01M00D00D").mangledNameHash());
ASSERT_EQ(0x00000420u, ImmutableString("imageAtomicMin(01N00D00D").mangledNameHash());
ASSERT_EQ(0x00000421u, ImmutableString("imageAtomicMin(01O10D00D").mangledNameHash());
ASSERT_EQ(0x00000422u, ImmutableString("imageAtomicMin(01P10D00D").mangledNameHash());
ASSERT_EQ(0x00000423u, ImmutableString("imageAtomicMin(01Q10D00D").mangledNameHash());
ASSERT_EQ(0x00000424u, ImmutableString("imageAtomicMin(01X10D00D").mangledNameHash());
ASSERT_EQ(0x00000425u, ImmutableString("imageAtomicMin(01Y10D00D").mangledNameHash());
ASSERT_EQ(0x00000426u, ImmutableString("imageAtomicMin(01Z10D00D").mangledNameHash());
ASSERT_EQ(0x00000424u, ImmutableString("imageAtomicMin(01a10D00D").mangledNameHash());
ASSERT_EQ(0x00000425u, ImmutableString("imageAtomicMin(01b10D00D").mangledNameHash());
ASSERT_EQ(0x00000426u, ImmutableString("imageAtomicMin(01c10D00D").mangledNameHash());
ASSERT_EQ(0x00000427u, ImmutableString("imageAtomicMin(01R10D00D00D").mangledNameHash());
ASSERT_EQ(0x00000428u, ImmutableString("imageAtomicMin(01S10D00D00D").mangledNameHash());
ASSERT_EQ(0x00000429u, ImmutableString("imageAtomicMin(01T10D00D00D").mangledNameHash());
......@@ -1112,24 +1112,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x00000433u, ImmutableString("imageAtomicMax(01I20D00E").mangledNameHash());
ASSERT_EQ(0x00000434u, ImmutableString("imageAtomicMax(01J20D00E").mangledNameHash());
ASSERT_EQ(0x00000435u, ImmutableString("imageAtomicMax(01K20D00E").mangledNameHash());
ASSERT_EQ(0x00000436u, ImmutableString("imageAtomicMax(01g00D00E").mangledNameHash());
ASSERT_EQ(0x00000437u, ImmutableString("imageAtomicMax(01h00D00E").mangledNameHash());
ASSERT_EQ(0x00000438u, ImmutableString("imageAtomicMax(01i00D00E").mangledNameHash());
ASSERT_EQ(0x00000436u, ImmutableString("imageAtomicMax(01d00D00E").mangledNameHash());
ASSERT_EQ(0x00000437u, ImmutableString("imageAtomicMax(01e00D00E").mangledNameHash());
ASSERT_EQ(0x00000438u, ImmutableString("imageAtomicMax(01f00D00E").mangledNameHash());
ASSERT_EQ(0x00000439u, ImmutableString("imageAtomicMax(01F20D00E").mangledNameHash());
ASSERT_EQ(0x0000043au, ImmutableString("imageAtomicMax(01G20D00E").mangledNameHash());
ASSERT_EQ(0x0000043bu, ImmutableString("imageAtomicMax(01H20D00E").mangledNameHash());
ASSERT_EQ(0x0000043cu, ImmutableString("imageAtomicMax(01a20D00E").mangledNameHash());
ASSERT_EQ(0x0000043du, ImmutableString("imageAtomicMax(01b20D00E").mangledNameHash());
ASSERT_EQ(0x0000043eu, ImmutableString("imageAtomicMax(01c20D00E").mangledNameHash());
ASSERT_EQ(0x0000043cu, ImmutableString("imageAtomicMax(01X20D00E").mangledNameHash());
ASSERT_EQ(0x0000043du, ImmutableString("imageAtomicMax(01Y20D00E").mangledNameHash());
ASSERT_EQ(0x0000043eu, ImmutableString("imageAtomicMax(01Z20D00E").mangledNameHash());
ASSERT_EQ(0x0000043fu, ImmutableString("imageAtomicMax(01L00D00E").mangledNameHash());
ASSERT_EQ(0x00000440u, ImmutableString("imageAtomicMax(01M00D00E").mangledNameHash());
ASSERT_EQ(0x00000441u, ImmutableString("imageAtomicMax(01N00D00E").mangledNameHash());
ASSERT_EQ(0x00000442u, ImmutableString("imageAtomicMax(01O10D00E").mangledNameHash());
ASSERT_EQ(0x00000443u, ImmutableString("imageAtomicMax(01P10D00E").mangledNameHash());
ASSERT_EQ(0x00000444u, ImmutableString("imageAtomicMax(01Q10D00E").mangledNameHash());
ASSERT_EQ(0x00000445u, ImmutableString("imageAtomicMax(01X10D00E").mangledNameHash());
ASSERT_EQ(0x00000446u, ImmutableString("imageAtomicMax(01Y10D00E").mangledNameHash());
ASSERT_EQ(0x00000447u, ImmutableString("imageAtomicMax(01Z10D00E").mangledNameHash());
ASSERT_EQ(0x00000445u, ImmutableString("imageAtomicMax(01a10D00E").mangledNameHash());
ASSERT_EQ(0x00000446u, ImmutableString("imageAtomicMax(01b10D00E").mangledNameHash());
ASSERT_EQ(0x00000447u, ImmutableString("imageAtomicMax(01c10D00E").mangledNameHash());
ASSERT_EQ(0x00000448u, ImmutableString("imageAtomicMax(01R10D00D00E").mangledNameHash());
ASSERT_EQ(0x00000449u, ImmutableString("imageAtomicMax(01S10D00D00E").mangledNameHash());
ASSERT_EQ(0x0000044au, ImmutableString("imageAtomicMax(01T10D00D00E").mangledNameHash());
......@@ -1145,24 +1145,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x00000454u, ImmutableString("imageAtomicMax(01I20D00D").mangledNameHash());
ASSERT_EQ(0x00000455u, ImmutableString("imageAtomicMax(01J20D00D").mangledNameHash());
ASSERT_EQ(0x00000456u, ImmutableString("imageAtomicMax(01K20D00D").mangledNameHash());
ASSERT_EQ(0x00000457u, ImmutableString("imageAtomicMax(01g00D00D").mangledNameHash());
ASSERT_EQ(0x00000458u, ImmutableString("imageAtomicMax(01h00D00D").mangledNameHash());
ASSERT_EQ(0x00000459u, ImmutableString("imageAtomicMax(01i00D00D").mangledNameHash());
ASSERT_EQ(0x00000457u, ImmutableString("imageAtomicMax(01d00D00D").mangledNameHash());
ASSERT_EQ(0x00000458u, ImmutableString("imageAtomicMax(01e00D00D").mangledNameHash());
ASSERT_EQ(0x00000459u, ImmutableString("imageAtomicMax(01f00D00D").mangledNameHash());
ASSERT_EQ(0x0000045au, ImmutableString("imageAtomicMax(01F20D00D").mangledNameHash());
ASSERT_EQ(0x0000045bu, ImmutableString("imageAtomicMax(01G20D00D").mangledNameHash());
ASSERT_EQ(0x0000045cu, ImmutableString("imageAtomicMax(01H20D00D").mangledNameHash());
ASSERT_EQ(0x0000045du, ImmutableString("imageAtomicMax(01a20D00D").mangledNameHash());
ASSERT_EQ(0x0000045eu, ImmutableString("imageAtomicMax(01b20D00D").mangledNameHash());
ASSERT_EQ(0x0000045fu, ImmutableString("imageAtomicMax(01c20D00D").mangledNameHash());
ASSERT_EQ(0x0000045du, ImmutableString("imageAtomicMax(01X20D00D").mangledNameHash());
ASSERT_EQ(0x0000045eu, ImmutableString("imageAtomicMax(01Y20D00D").mangledNameHash());
ASSERT_EQ(0x0000045fu, ImmutableString("imageAtomicMax(01Z20D00D").mangledNameHash());
ASSERT_EQ(0x00000460u, ImmutableString("imageAtomicMax(01L00D00D").mangledNameHash());
ASSERT_EQ(0x00000461u, ImmutableString("imageAtomicMax(01M00D00D").mangledNameHash());
ASSERT_EQ(0x00000462u, ImmutableString("imageAtomicMax(01N00D00D").mangledNameHash());
ASSERT_EQ(0x00000463u, ImmutableString("imageAtomicMax(01O10D00D").mangledNameHash());
ASSERT_EQ(0x00000464u, ImmutableString("imageAtomicMax(01P10D00D").mangledNameHash());
ASSERT_EQ(0x00000465u, ImmutableString("imageAtomicMax(01Q10D00D").mangledNameHash());
ASSERT_EQ(0x00000466u, ImmutableString("imageAtomicMax(01X10D00D").mangledNameHash());
ASSERT_EQ(0x00000467u, ImmutableString("imageAtomicMax(01Y10D00D").mangledNameHash());
ASSERT_EQ(0x00000468u, ImmutableString("imageAtomicMax(01Z10D00D").mangledNameHash());
ASSERT_EQ(0x00000466u, ImmutableString("imageAtomicMax(01a10D00D").mangledNameHash());
ASSERT_EQ(0x00000467u, ImmutableString("imageAtomicMax(01b10D00D").mangledNameHash());
ASSERT_EQ(0x00000468u, ImmutableString("imageAtomicMax(01c10D00D").mangledNameHash());
ASSERT_EQ(0x00000469u, ImmutableString("imageAtomicMax(01R10D00D00D").mangledNameHash());
ASSERT_EQ(0x0000046au, ImmutableString("imageAtomicMax(01S10D00D00D").mangledNameHash());
ASSERT_EQ(0x0000046bu, ImmutableString("imageAtomicMax(01T10D00D00D").mangledNameHash());
......@@ -1178,24 +1178,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x00000475u, ImmutableString("imageAtomicAnd(01I20D00E").mangledNameHash());
ASSERT_EQ(0x00000476u, ImmutableString("imageAtomicAnd(01J20D00E").mangledNameHash());
ASSERT_EQ(0x00000477u, ImmutableString("imageAtomicAnd(01K20D00E").mangledNameHash());
ASSERT_EQ(0x00000478u, ImmutableString("imageAtomicAnd(01g00D00E").mangledNameHash());
ASSERT_EQ(0x00000479u, ImmutableString("imageAtomicAnd(01h00D00E").mangledNameHash());
ASSERT_EQ(0x0000047au, ImmutableString("imageAtomicAnd(01i00D00E").mangledNameHash());
ASSERT_EQ(0x00000478u, ImmutableString("imageAtomicAnd(01d00D00E").mangledNameHash());
ASSERT_EQ(0x00000479u, ImmutableString("imageAtomicAnd(01e00D00E").mangledNameHash());
ASSERT_EQ(0x0000047au, ImmutableString("imageAtomicAnd(01f00D00E").mangledNameHash());
ASSERT_EQ(0x0000047bu, ImmutableString("imageAtomicAnd(01F20D00E").mangledNameHash());
ASSERT_EQ(0x0000047cu, ImmutableString("imageAtomicAnd(01G20D00E").mangledNameHash());
ASSERT_EQ(0x0000047du, ImmutableString("imageAtomicAnd(01H20D00E").mangledNameHash());
ASSERT_EQ(0x0000047eu, ImmutableString("imageAtomicAnd(01a20D00E").mangledNameHash());
ASSERT_EQ(0x0000047fu, ImmutableString("imageAtomicAnd(01b20D00E").mangledNameHash());
ASSERT_EQ(0x00000480u, ImmutableString("imageAtomicAnd(01c20D00E").mangledNameHash());
ASSERT_EQ(0x0000047eu, ImmutableString("imageAtomicAnd(01X20D00E").mangledNameHash());
ASSERT_EQ(0x0000047fu, ImmutableString("imageAtomicAnd(01Y20D00E").mangledNameHash());
ASSERT_EQ(0x00000480u, ImmutableString("imageAtomicAnd(01Z20D00E").mangledNameHash());
ASSERT_EQ(0x00000481u, ImmutableString("imageAtomicAnd(01L00D00E").mangledNameHash());
ASSERT_EQ(0x00000482u, ImmutableString("imageAtomicAnd(01M00D00E").mangledNameHash());
ASSERT_EQ(0x00000483u, ImmutableString("imageAtomicAnd(01N00D00E").mangledNameHash());
ASSERT_EQ(0x00000484u, ImmutableString("imageAtomicAnd(01O10D00E").mangledNameHash());
ASSERT_EQ(0x00000485u, ImmutableString("imageAtomicAnd(01P10D00E").mangledNameHash());
ASSERT_EQ(0x00000486u, ImmutableString("imageAtomicAnd(01Q10D00E").mangledNameHash());
ASSERT_EQ(0x00000487u, ImmutableString("imageAtomicAnd(01X10D00E").mangledNameHash());
ASSERT_EQ(0x00000488u, ImmutableString("imageAtomicAnd(01Y10D00E").mangledNameHash());
ASSERT_EQ(0x00000489u, ImmutableString("imageAtomicAnd(01Z10D00E").mangledNameHash());
ASSERT_EQ(0x00000487u, ImmutableString("imageAtomicAnd(01a10D00E").mangledNameHash());
ASSERT_EQ(0x00000488u, ImmutableString("imageAtomicAnd(01b10D00E").mangledNameHash());
ASSERT_EQ(0x00000489u, ImmutableString("imageAtomicAnd(01c10D00E").mangledNameHash());
ASSERT_EQ(0x0000048au, ImmutableString("imageAtomicAnd(01R10D00D00E").mangledNameHash());
ASSERT_EQ(0x0000048bu, ImmutableString("imageAtomicAnd(01S10D00D00E").mangledNameHash());
ASSERT_EQ(0x0000048cu, ImmutableString("imageAtomicAnd(01T10D00D00E").mangledNameHash());
......@@ -1211,24 +1211,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x00000496u, ImmutableString("imageAtomicAnd(01I20D00D").mangledNameHash());
ASSERT_EQ(0x00000497u, ImmutableString("imageAtomicAnd(01J20D00D").mangledNameHash());
ASSERT_EQ(0x00000498u, ImmutableString("imageAtomicAnd(01K20D00D").mangledNameHash());
ASSERT_EQ(0x00000499u, ImmutableString("imageAtomicAnd(01g00D00D").mangledNameHash());
ASSERT_EQ(0x0000049au, ImmutableString("imageAtomicAnd(01h00D00D").mangledNameHash());
ASSERT_EQ(0x0000049bu, ImmutableString("imageAtomicAnd(01i00D00D").mangledNameHash());
ASSERT_EQ(0x00000499u, ImmutableString("imageAtomicAnd(01d00D00D").mangledNameHash());
ASSERT_EQ(0x0000049au, ImmutableString("imageAtomicAnd(01e00D00D").mangledNameHash());
ASSERT_EQ(0x0000049bu, ImmutableString("imageAtomicAnd(01f00D00D").mangledNameHash());
ASSERT_EQ(0x0000049cu, ImmutableString("imageAtomicAnd(01F20D00D").mangledNameHash());
ASSERT_EQ(0x0000049du, ImmutableString("imageAtomicAnd(01G20D00D").mangledNameHash());
ASSERT_EQ(0x0000049eu, ImmutableString("imageAtomicAnd(01H20D00D").mangledNameHash());
ASSERT_EQ(0x0000049fu, ImmutableString("imageAtomicAnd(01a20D00D").mangledNameHash());
ASSERT_EQ(0x000004a0u, ImmutableString("imageAtomicAnd(01b20D00D").mangledNameHash());
ASSERT_EQ(0x000004a1u, ImmutableString("imageAtomicAnd(01c20D00D").mangledNameHash());
ASSERT_EQ(0x0000049fu, ImmutableString("imageAtomicAnd(01X20D00D").mangledNameHash());
ASSERT_EQ(0x000004a0u, ImmutableString("imageAtomicAnd(01Y20D00D").mangledNameHash());
ASSERT_EQ(0x000004a1u, ImmutableString("imageAtomicAnd(01Z20D00D").mangledNameHash());
ASSERT_EQ(0x000004a2u, ImmutableString("imageAtomicAnd(01L00D00D").mangledNameHash());
ASSERT_EQ(0x000004a3u, ImmutableString("imageAtomicAnd(01M00D00D").mangledNameHash());
ASSERT_EQ(0x000004a4u, ImmutableString("imageAtomicAnd(01N00D00D").mangledNameHash());
ASSERT_EQ(0x000004a5u, ImmutableString("imageAtomicAnd(01O10D00D").mangledNameHash());
ASSERT_EQ(0x000004a6u, ImmutableString("imageAtomicAnd(01P10D00D").mangledNameHash());
ASSERT_EQ(0x000004a7u, ImmutableString("imageAtomicAnd(01Q10D00D").mangledNameHash());
ASSERT_EQ(0x000004a8u, ImmutableString("imageAtomicAnd(01X10D00D").mangledNameHash());
ASSERT_EQ(0x000004a9u, ImmutableString("imageAtomicAnd(01Y10D00D").mangledNameHash());
ASSERT_EQ(0x000004aau, ImmutableString("imageAtomicAnd(01Z10D00D").mangledNameHash());
ASSERT_EQ(0x000004a8u, ImmutableString("imageAtomicAnd(01a10D00D").mangledNameHash());
ASSERT_EQ(0x000004a9u, ImmutableString("imageAtomicAnd(01b10D00D").mangledNameHash());
ASSERT_EQ(0x000004aau, ImmutableString("imageAtomicAnd(01c10D00D").mangledNameHash());
ASSERT_EQ(0x000004abu, ImmutableString("imageAtomicAnd(01R10D00D00D").mangledNameHash());
ASSERT_EQ(0x000004acu, ImmutableString("imageAtomicAnd(01S10D00D00D").mangledNameHash());
ASSERT_EQ(0x000004adu, ImmutableString("imageAtomicAnd(01T10D00D00D").mangledNameHash());
......@@ -1244,24 +1244,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x000004b7u, ImmutableString("imageAtomicOr(01I20D00E").mangledNameHash());
ASSERT_EQ(0x000004b8u, ImmutableString("imageAtomicOr(01J20D00E").mangledNameHash());
ASSERT_EQ(0x000004b9u, ImmutableString("imageAtomicOr(01K20D00E").mangledNameHash());
ASSERT_EQ(0x000004bau, ImmutableString("imageAtomicOr(01g00D00E").mangledNameHash());
ASSERT_EQ(0x000004bbu, ImmutableString("imageAtomicOr(01h00D00E").mangledNameHash());
ASSERT_EQ(0x000004bcu, ImmutableString("imageAtomicOr(01i00D00E").mangledNameHash());
ASSERT_EQ(0x000004bau, ImmutableString("imageAtomicOr(01d00D00E").mangledNameHash());
ASSERT_EQ(0x000004bbu, ImmutableString("imageAtomicOr(01e00D00E").mangledNameHash());
ASSERT_EQ(0x000004bcu, ImmutableString("imageAtomicOr(01f00D00E").mangledNameHash());
ASSERT_EQ(0x000004bdu, ImmutableString("imageAtomicOr(01F20D00E").mangledNameHash());
ASSERT_EQ(0x000004beu, ImmutableString("imageAtomicOr(01G20D00E").mangledNameHash());
ASSERT_EQ(0x000004bfu, ImmutableString("imageAtomicOr(01H20D00E").mangledNameHash());
ASSERT_EQ(0x000004c0u, ImmutableString("imageAtomicOr(01a20D00E").mangledNameHash());
ASSERT_EQ(0x000004c1u, ImmutableString("imageAtomicOr(01b20D00E").mangledNameHash());
ASSERT_EQ(0x000004c2u, ImmutableString("imageAtomicOr(01c20D00E").mangledNameHash());
ASSERT_EQ(0x000004c0u, ImmutableString("imageAtomicOr(01X20D00E").mangledNameHash());
ASSERT_EQ(0x000004c1u, ImmutableString("imageAtomicOr(01Y20D00E").mangledNameHash());
ASSERT_EQ(0x000004c2u, ImmutableString("imageAtomicOr(01Z20D00E").mangledNameHash());
ASSERT_EQ(0x000004c3u, ImmutableString("imageAtomicOr(01L00D00E").mangledNameHash());
ASSERT_EQ(0x000004c4u, ImmutableString("imageAtomicOr(01M00D00E").mangledNameHash());
ASSERT_EQ(0x000004c5u, ImmutableString("imageAtomicOr(01N00D00E").mangledNameHash());
ASSERT_EQ(0x000004c6u, ImmutableString("imageAtomicOr(01O10D00E").mangledNameHash());
ASSERT_EQ(0x000004c7u, ImmutableString("imageAtomicOr(01P10D00E").mangledNameHash());
ASSERT_EQ(0x000004c8u, ImmutableString("imageAtomicOr(01Q10D00E").mangledNameHash());
ASSERT_EQ(0x000004c9u, ImmutableString("imageAtomicOr(01X10D00E").mangledNameHash());
ASSERT_EQ(0x000004cau, ImmutableString("imageAtomicOr(01Y10D00E").mangledNameHash());
ASSERT_EQ(0x000004cbu, ImmutableString("imageAtomicOr(01Z10D00E").mangledNameHash());
ASSERT_EQ(0x000004c9u, ImmutableString("imageAtomicOr(01a10D00E").mangledNameHash());
ASSERT_EQ(0x000004cau, ImmutableString("imageAtomicOr(01b10D00E").mangledNameHash());
ASSERT_EQ(0x000004cbu, ImmutableString("imageAtomicOr(01c10D00E").mangledNameHash());
ASSERT_EQ(0x000004ccu, ImmutableString("imageAtomicOr(01R10D00D00E").mangledNameHash());
ASSERT_EQ(0x000004cdu, ImmutableString("imageAtomicOr(01S10D00D00E").mangledNameHash());
ASSERT_EQ(0x000004ceu, ImmutableString("imageAtomicOr(01T10D00D00E").mangledNameHash());
......@@ -1277,24 +1277,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x000004d8u, ImmutableString("imageAtomicOr(01I20D00D").mangledNameHash());
ASSERT_EQ(0x000004d9u, ImmutableString("imageAtomicOr(01J20D00D").mangledNameHash());
ASSERT_EQ(0x000004dau, ImmutableString("imageAtomicOr(01K20D00D").mangledNameHash());
ASSERT_EQ(0x000004dbu, ImmutableString("imageAtomicOr(01g00D00D").mangledNameHash());
ASSERT_EQ(0x000004dcu, ImmutableString("imageAtomicOr(01h00D00D").mangledNameHash());
ASSERT_EQ(0x000004ddu, ImmutableString("imageAtomicOr(01i00D00D").mangledNameHash());
ASSERT_EQ(0x000004dbu, ImmutableString("imageAtomicOr(01d00D00D").mangledNameHash());
ASSERT_EQ(0x000004dcu, ImmutableString("imageAtomicOr(01e00D00D").mangledNameHash());
ASSERT_EQ(0x000004ddu, ImmutableString("imageAtomicOr(01f00D00D").mangledNameHash());
ASSERT_EQ(0x000004deu, ImmutableString("imageAtomicOr(01F20D00D").mangledNameHash());
ASSERT_EQ(0x000004dfu, ImmutableString("imageAtomicOr(01G20D00D").mangledNameHash());
ASSERT_EQ(0x000004e0u, ImmutableString("imageAtomicOr(01H20D00D").mangledNameHash());
ASSERT_EQ(0x000004e1u, ImmutableString("imageAtomicOr(01a20D00D").mangledNameHash());
ASSERT_EQ(0x000004e2u, ImmutableString("imageAtomicOr(01b20D00D").mangledNameHash());
ASSERT_EQ(0x000004e3u, ImmutableString("imageAtomicOr(01c20D00D").mangledNameHash());
ASSERT_EQ(0x000004e1u, ImmutableString("imageAtomicOr(01X20D00D").mangledNameHash());
ASSERT_EQ(0x000004e2u, ImmutableString("imageAtomicOr(01Y20D00D").mangledNameHash());
ASSERT_EQ(0x000004e3u, ImmutableString("imageAtomicOr(01Z20D00D").mangledNameHash());
ASSERT_EQ(0x000004e4u, ImmutableString("imageAtomicOr(01L00D00D").mangledNameHash());
ASSERT_EQ(0x000004e5u, ImmutableString("imageAtomicOr(01M00D00D").mangledNameHash());
ASSERT_EQ(0x000004e6u, ImmutableString("imageAtomicOr(01N00D00D").mangledNameHash());
ASSERT_EQ(0x000004e7u, ImmutableString("imageAtomicOr(01O10D00D").mangledNameHash());
ASSERT_EQ(0x000004e8u, ImmutableString("imageAtomicOr(01P10D00D").mangledNameHash());
ASSERT_EQ(0x000004e9u, ImmutableString("imageAtomicOr(01Q10D00D").mangledNameHash());
ASSERT_EQ(0x000004eau, ImmutableString("imageAtomicOr(01X10D00D").mangledNameHash());
ASSERT_EQ(0x000004ebu, ImmutableString("imageAtomicOr(01Y10D00D").mangledNameHash());
ASSERT_EQ(0x000004ecu, ImmutableString("imageAtomicOr(01Z10D00D").mangledNameHash());
ASSERT_EQ(0x000004eau, ImmutableString("imageAtomicOr(01a10D00D").mangledNameHash());
ASSERT_EQ(0x000004ebu, ImmutableString("imageAtomicOr(01b10D00D").mangledNameHash());
ASSERT_EQ(0x000004ecu, ImmutableString("imageAtomicOr(01c10D00D").mangledNameHash());
ASSERT_EQ(0x000004edu, ImmutableString("imageAtomicOr(01R10D00D00D").mangledNameHash());
ASSERT_EQ(0x000004eeu, ImmutableString("imageAtomicOr(01S10D00D00D").mangledNameHash());
ASSERT_EQ(0x000004efu, ImmutableString("imageAtomicOr(01T10D00D00D").mangledNameHash());
......@@ -1310,24 +1310,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x000004f9u, ImmutableString("imageAtomicXor(01I20D00E").mangledNameHash());
ASSERT_EQ(0x000004fau, ImmutableString("imageAtomicXor(01J20D00E").mangledNameHash());
ASSERT_EQ(0x000004fbu, ImmutableString("imageAtomicXor(01K20D00E").mangledNameHash());
ASSERT_EQ(0x000004fcu, ImmutableString("imageAtomicXor(01g00D00E").mangledNameHash());
ASSERT_EQ(0x000004fdu, ImmutableString("imageAtomicXor(01h00D00E").mangledNameHash());
ASSERT_EQ(0x000004feu, ImmutableString("imageAtomicXor(01i00D00E").mangledNameHash());
ASSERT_EQ(0x000004fcu, ImmutableString("imageAtomicXor(01d00D00E").mangledNameHash());
ASSERT_EQ(0x000004fdu, ImmutableString("imageAtomicXor(01e00D00E").mangledNameHash());
ASSERT_EQ(0x000004feu, ImmutableString("imageAtomicXor(01f00D00E").mangledNameHash());
ASSERT_EQ(0x000004ffu, ImmutableString("imageAtomicXor(01F20D00E").mangledNameHash());
ASSERT_EQ(0x00000500u, ImmutableString("imageAtomicXor(01G20D00E").mangledNameHash());
ASSERT_EQ(0x00000501u, ImmutableString("imageAtomicXor(01H20D00E").mangledNameHash());
ASSERT_EQ(0x00000502u, ImmutableString("imageAtomicXor(01a20D00E").mangledNameHash());
ASSERT_EQ(0x00000503u, ImmutableString("imageAtomicXor(01b20D00E").mangledNameHash());
ASSERT_EQ(0x00000504u, ImmutableString("imageAtomicXor(01c20D00E").mangledNameHash());
ASSERT_EQ(0x00000502u, ImmutableString("imageAtomicXor(01X20D00E").mangledNameHash());
ASSERT_EQ(0x00000503u, ImmutableString("imageAtomicXor(01Y20D00E").mangledNameHash());
ASSERT_EQ(0x00000504u, ImmutableString("imageAtomicXor(01Z20D00E").mangledNameHash());
ASSERT_EQ(0x00000505u, ImmutableString("imageAtomicXor(01L00D00E").mangledNameHash());
ASSERT_EQ(0x00000506u, ImmutableString("imageAtomicXor(01M00D00E").mangledNameHash());
ASSERT_EQ(0x00000507u, ImmutableString("imageAtomicXor(01N00D00E").mangledNameHash());
ASSERT_EQ(0x00000508u, ImmutableString("imageAtomicXor(01O10D00E").mangledNameHash());
ASSERT_EQ(0x00000509u, ImmutableString("imageAtomicXor(01P10D00E").mangledNameHash());
ASSERT_EQ(0x0000050au, ImmutableString("imageAtomicXor(01Q10D00E").mangledNameHash());
ASSERT_EQ(0x0000050bu, ImmutableString("imageAtomicXor(01X10D00E").mangledNameHash());
ASSERT_EQ(0x0000050cu, ImmutableString("imageAtomicXor(01Y10D00E").mangledNameHash());
ASSERT_EQ(0x0000050du, ImmutableString("imageAtomicXor(01Z10D00E").mangledNameHash());
ASSERT_EQ(0x0000050bu, ImmutableString("imageAtomicXor(01a10D00E").mangledNameHash());
ASSERT_EQ(0x0000050cu, ImmutableString("imageAtomicXor(01b10D00E").mangledNameHash());
ASSERT_EQ(0x0000050du, ImmutableString("imageAtomicXor(01c10D00E").mangledNameHash());
ASSERT_EQ(0x0000050eu, ImmutableString("imageAtomicXor(01R10D00D00E").mangledNameHash());
ASSERT_EQ(0x0000050fu, ImmutableString("imageAtomicXor(01S10D00D00E").mangledNameHash());
ASSERT_EQ(0x00000510u, ImmutableString("imageAtomicXor(01T10D00D00E").mangledNameHash());
......@@ -1343,24 +1343,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x0000051au, ImmutableString("imageAtomicXor(01I20D00D").mangledNameHash());
ASSERT_EQ(0x0000051bu, ImmutableString("imageAtomicXor(01J20D00D").mangledNameHash());
ASSERT_EQ(0x0000051cu, ImmutableString("imageAtomicXor(01K20D00D").mangledNameHash());
ASSERT_EQ(0x0000051du, ImmutableString("imageAtomicXor(01g00D00D").mangledNameHash());
ASSERT_EQ(0x0000051eu, ImmutableString("imageAtomicXor(01h00D00D").mangledNameHash());
ASSERT_EQ(0x0000051fu, ImmutableString("imageAtomicXor(01i00D00D").mangledNameHash());
ASSERT_EQ(0x0000051du, ImmutableString("imageAtomicXor(01d00D00D").mangledNameHash());
ASSERT_EQ(0x0000051eu, ImmutableString("imageAtomicXor(01e00D00D").mangledNameHash());
ASSERT_EQ(0x0000051fu, ImmutableString("imageAtomicXor(01f00D00D").mangledNameHash());
ASSERT_EQ(0x00000520u, ImmutableString("imageAtomicXor(01F20D00D").mangledNameHash());
ASSERT_EQ(0x00000521u, ImmutableString("imageAtomicXor(01G20D00D").mangledNameHash());
ASSERT_EQ(0x00000522u, ImmutableString("imageAtomicXor(01H20D00D").mangledNameHash());
ASSERT_EQ(0x00000523u, ImmutableString("imageAtomicXor(01a20D00D").mangledNameHash());
ASSERT_EQ(0x00000524u, ImmutableString("imageAtomicXor(01b20D00D").mangledNameHash());
ASSERT_EQ(0x00000525u, ImmutableString("imageAtomicXor(01c20D00D").mangledNameHash());
ASSERT_EQ(0x00000523u, ImmutableString("imageAtomicXor(01X20D00D").mangledNameHash());
ASSERT_EQ(0x00000524u, ImmutableString("imageAtomicXor(01Y20D00D").mangledNameHash());
ASSERT_EQ(0x00000525u, ImmutableString("imageAtomicXor(01Z20D00D").mangledNameHash());
ASSERT_EQ(0x00000526u, ImmutableString("imageAtomicXor(01L00D00D").mangledNameHash());
ASSERT_EQ(0x00000527u, ImmutableString("imageAtomicXor(01M00D00D").mangledNameHash());
ASSERT_EQ(0x00000528u, ImmutableString("imageAtomicXor(01N00D00D").mangledNameHash());
ASSERT_EQ(0x00000529u, ImmutableString("imageAtomicXor(01O10D00D").mangledNameHash());
ASSERT_EQ(0x0000052au, ImmutableString("imageAtomicXor(01P10D00D").mangledNameHash());
ASSERT_EQ(0x0000052bu, ImmutableString("imageAtomicXor(01Q10D00D").mangledNameHash());
ASSERT_EQ(0x0000052cu, ImmutableString("imageAtomicXor(01X10D00D").mangledNameHash());
ASSERT_EQ(0x0000052du, ImmutableString("imageAtomicXor(01Y10D00D").mangledNameHash());
ASSERT_EQ(0x0000052eu, ImmutableString("imageAtomicXor(01Z10D00D").mangledNameHash());
ASSERT_EQ(0x0000052cu, ImmutableString("imageAtomicXor(01a10D00D").mangledNameHash());
ASSERT_EQ(0x0000052du, ImmutableString("imageAtomicXor(01b10D00D").mangledNameHash());
ASSERT_EQ(0x0000052eu, ImmutableString("imageAtomicXor(01c10D00D").mangledNameHash());
ASSERT_EQ(0x0000052fu, ImmutableString("imageAtomicXor(01R10D00D00D").mangledNameHash());
ASSERT_EQ(0x00000530u, ImmutableString("imageAtomicXor(01S10D00D00D").mangledNameHash());
ASSERT_EQ(0x00000531u, ImmutableString("imageAtomicXor(01T10D00D00D").mangledNameHash());
......@@ -1376,24 +1376,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x0000053bu, ImmutableString("imageAtomicExchange(01I20D00E").mangledNameHash());
ASSERT_EQ(0x0000053cu, ImmutableString("imageAtomicExchange(01J20D00E").mangledNameHash());
ASSERT_EQ(0x0000053du, ImmutableString("imageAtomicExchange(01K20D00E").mangledNameHash());
ASSERT_EQ(0x0000053eu, ImmutableString("imageAtomicExchange(01g00D00E").mangledNameHash());
ASSERT_EQ(0x0000053fu, ImmutableString("imageAtomicExchange(01h00D00E").mangledNameHash());
ASSERT_EQ(0x00000540u, ImmutableString("imageAtomicExchange(01i00D00E").mangledNameHash());
ASSERT_EQ(0x0000053eu, ImmutableString("imageAtomicExchange(01d00D00E").mangledNameHash());
ASSERT_EQ(0x0000053fu, ImmutableString("imageAtomicExchange(01e00D00E").mangledNameHash());
ASSERT_EQ(0x00000540u, ImmutableString("imageAtomicExchange(01f00D00E").mangledNameHash());
ASSERT_EQ(0x00000541u, ImmutableString("imageAtomicExchange(01F20D00E").mangledNameHash());
ASSERT_EQ(0x00000542u, ImmutableString("imageAtomicExchange(01G20D00E").mangledNameHash());
ASSERT_EQ(0x00000543u, ImmutableString("imageAtomicExchange(01H20D00E").mangledNameHash());
ASSERT_EQ(0x00000544u, ImmutableString("imageAtomicExchange(01a20D00E").mangledNameHash());
ASSERT_EQ(0x00000545u, ImmutableString("imageAtomicExchange(01b20D00E").mangledNameHash());
ASSERT_EQ(0x00000546u, ImmutableString("imageAtomicExchange(01c20D00E").mangledNameHash());
ASSERT_EQ(0x00000544u, ImmutableString("imageAtomicExchange(01X20D00E").mangledNameHash());
ASSERT_EQ(0x00000545u, ImmutableString("imageAtomicExchange(01Y20D00E").mangledNameHash());
ASSERT_EQ(0x00000546u, ImmutableString("imageAtomicExchange(01Z20D00E").mangledNameHash());
ASSERT_EQ(0x00000547u, ImmutableString("imageAtomicExchange(01L00D00E").mangledNameHash());
ASSERT_EQ(0x00000548u, ImmutableString("imageAtomicExchange(01M00D00E").mangledNameHash());
ASSERT_EQ(0x00000549u, ImmutableString("imageAtomicExchange(01N00D00E").mangledNameHash());
ASSERT_EQ(0x0000054au, ImmutableString("imageAtomicExchange(01O10D00E").mangledNameHash());
ASSERT_EQ(0x0000054bu, ImmutableString("imageAtomicExchange(01P10D00E").mangledNameHash());
ASSERT_EQ(0x0000054cu, ImmutableString("imageAtomicExchange(01Q10D00E").mangledNameHash());
ASSERT_EQ(0x0000054du, ImmutableString("imageAtomicExchange(01X10D00E").mangledNameHash());
ASSERT_EQ(0x0000054eu, ImmutableString("imageAtomicExchange(01Y10D00E").mangledNameHash());
ASSERT_EQ(0x0000054fu, ImmutableString("imageAtomicExchange(01Z10D00E").mangledNameHash());
ASSERT_EQ(0x0000054du, ImmutableString("imageAtomicExchange(01a10D00E").mangledNameHash());
ASSERT_EQ(0x0000054eu, ImmutableString("imageAtomicExchange(01b10D00E").mangledNameHash());
ASSERT_EQ(0x0000054fu, ImmutableString("imageAtomicExchange(01c10D00E").mangledNameHash());
ASSERT_EQ(0x00000550u, ImmutableString("imageAtomicExchange(01R10D00D00E").mangledNameHash());
ASSERT_EQ(0x00000551u, ImmutableString("imageAtomicExchange(01S10D00D00E").mangledNameHash());
ASSERT_EQ(0x00000552u, ImmutableString("imageAtomicExchange(01T10D00D00E").mangledNameHash());
......@@ -1409,24 +1409,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x0000055cu, ImmutableString("imageAtomicExchange(01I20D00D").mangledNameHash());
ASSERT_EQ(0x0000055du, ImmutableString("imageAtomicExchange(01J20D00D").mangledNameHash());
ASSERT_EQ(0x0000055eu, ImmutableString("imageAtomicExchange(01K20D00D").mangledNameHash());
ASSERT_EQ(0x0000055fu, ImmutableString("imageAtomicExchange(01g00D00D").mangledNameHash());
ASSERT_EQ(0x00000560u, ImmutableString("imageAtomicExchange(01h00D00D").mangledNameHash());
ASSERT_EQ(0x00000561u, ImmutableString("imageAtomicExchange(01i00D00D").mangledNameHash());
ASSERT_EQ(0x0000055fu, ImmutableString("imageAtomicExchange(01d00D00D").mangledNameHash());
ASSERT_EQ(0x00000560u, ImmutableString("imageAtomicExchange(01e00D00D").mangledNameHash());
ASSERT_EQ(0x00000561u, ImmutableString("imageAtomicExchange(01f00D00D").mangledNameHash());
ASSERT_EQ(0x00000562u, ImmutableString("imageAtomicExchange(01F20D00D").mangledNameHash());
ASSERT_EQ(0x00000563u, ImmutableString("imageAtomicExchange(01G20D00D").mangledNameHash());
ASSERT_EQ(0x00000564u, ImmutableString("imageAtomicExchange(01H20D00D").mangledNameHash());
ASSERT_EQ(0x00000565u, ImmutableString("imageAtomicExchange(01a20D00D").mangledNameHash());
ASSERT_EQ(0x00000566u, ImmutableString("imageAtomicExchange(01b20D00D").mangledNameHash());
ASSERT_EQ(0x00000567u, ImmutableString("imageAtomicExchange(01c20D00D").mangledNameHash());
ASSERT_EQ(0x00000565u, ImmutableString("imageAtomicExchange(01X20D00D").mangledNameHash());
ASSERT_EQ(0x00000566u, ImmutableString("imageAtomicExchange(01Y20D00D").mangledNameHash());
ASSERT_EQ(0x00000567u, ImmutableString("imageAtomicExchange(01Z20D00D").mangledNameHash());
ASSERT_EQ(0x00000568u, ImmutableString("imageAtomicExchange(01L00D00D").mangledNameHash());
ASSERT_EQ(0x00000569u, ImmutableString("imageAtomicExchange(01M00D00D").mangledNameHash());
ASSERT_EQ(0x0000056au, ImmutableString("imageAtomicExchange(01N00D00D").mangledNameHash());
ASSERT_EQ(0x0000056bu, ImmutableString("imageAtomicExchange(01O10D00D").mangledNameHash());
ASSERT_EQ(0x0000056cu, ImmutableString("imageAtomicExchange(01P10D00D").mangledNameHash());
ASSERT_EQ(0x0000056du, ImmutableString("imageAtomicExchange(01Q10D00D").mangledNameHash());
ASSERT_EQ(0x0000056eu, ImmutableString("imageAtomicExchange(01X10D00D").mangledNameHash());
ASSERT_EQ(0x0000056fu, ImmutableString("imageAtomicExchange(01Y10D00D").mangledNameHash());
ASSERT_EQ(0x00000570u, ImmutableString("imageAtomicExchange(01Z10D00D").mangledNameHash());
ASSERT_EQ(0x0000056eu, ImmutableString("imageAtomicExchange(01a10D00D").mangledNameHash());
ASSERT_EQ(0x0000056fu, ImmutableString("imageAtomicExchange(01b10D00D").mangledNameHash());
ASSERT_EQ(0x00000570u, ImmutableString("imageAtomicExchange(01c10D00D").mangledNameHash());
ASSERT_EQ(0x00000571u, ImmutableString("imageAtomicExchange(01R10D00D00D").mangledNameHash());
ASSERT_EQ(0x00000572u, ImmutableString("imageAtomicExchange(01S10D00D00D").mangledNameHash());
ASSERT_EQ(0x00000573u, ImmutableString("imageAtomicExchange(01T10D00D00D").mangledNameHash());
......@@ -1442,24 +1442,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x0000057du, ImmutableString("imageAtomicExchange(01I20D00B").mangledNameHash());
ASSERT_EQ(0x0000057eu, ImmutableString("imageAtomicExchange(01J20D00B").mangledNameHash());
ASSERT_EQ(0x0000057fu, ImmutableString("imageAtomicExchange(01K20D00B").mangledNameHash());
ASSERT_EQ(0x00000580u, ImmutableString("imageAtomicExchange(01g00D00B").mangledNameHash());
ASSERT_EQ(0x00000581u, ImmutableString("imageAtomicExchange(01h00D00B").mangledNameHash());
ASSERT_EQ(0x00000582u, ImmutableString("imageAtomicExchange(01i00D00B").mangledNameHash());
ASSERT_EQ(0x00000580u, ImmutableString("imageAtomicExchange(01d00D00B").mangledNameHash());
ASSERT_EQ(0x00000581u, ImmutableString("imageAtomicExchange(01e00D00B").mangledNameHash());
ASSERT_EQ(0x00000582u, ImmutableString("imageAtomicExchange(01f00D00B").mangledNameHash());
ASSERT_EQ(0x00000583u, ImmutableString("imageAtomicExchange(01F20D00B").mangledNameHash());
ASSERT_EQ(0x00000584u, ImmutableString("imageAtomicExchange(01G20D00B").mangledNameHash());
ASSERT_EQ(0x00000585u, ImmutableString("imageAtomicExchange(01H20D00B").mangledNameHash());
ASSERT_EQ(0x00000586u, ImmutableString("imageAtomicExchange(01a20D00B").mangledNameHash());
ASSERT_EQ(0x00000587u, ImmutableString("imageAtomicExchange(01b20D00B").mangledNameHash());
ASSERT_EQ(0x00000588u, ImmutableString("imageAtomicExchange(01c20D00B").mangledNameHash());
ASSERT_EQ(0x00000586u, ImmutableString("imageAtomicExchange(01X20D00B").mangledNameHash());
ASSERT_EQ(0x00000587u, ImmutableString("imageAtomicExchange(01Y20D00B").mangledNameHash());
ASSERT_EQ(0x00000588u, ImmutableString("imageAtomicExchange(01Z20D00B").mangledNameHash());
ASSERT_EQ(0x00000589u, ImmutableString("imageAtomicExchange(01L00D00B").mangledNameHash());
ASSERT_EQ(0x0000058au, ImmutableString("imageAtomicExchange(01M00D00B").mangledNameHash());
ASSERT_EQ(0x0000058bu, ImmutableString("imageAtomicExchange(01N00D00B").mangledNameHash());
ASSERT_EQ(0x0000058cu, ImmutableString("imageAtomicExchange(01O10D00B").mangledNameHash());
ASSERT_EQ(0x0000058du, ImmutableString("imageAtomicExchange(01P10D00B").mangledNameHash());
ASSERT_EQ(0x0000058eu, ImmutableString("imageAtomicExchange(01Q10D00B").mangledNameHash());
ASSERT_EQ(0x0000058fu, ImmutableString("imageAtomicExchange(01X10D00B").mangledNameHash());
ASSERT_EQ(0x00000590u, ImmutableString("imageAtomicExchange(01Y10D00B").mangledNameHash());
ASSERT_EQ(0x00000591u, ImmutableString("imageAtomicExchange(01Z10D00B").mangledNameHash());
ASSERT_EQ(0x0000058fu, ImmutableString("imageAtomicExchange(01a10D00B").mangledNameHash());
ASSERT_EQ(0x00000590u, ImmutableString("imageAtomicExchange(01b10D00B").mangledNameHash());
ASSERT_EQ(0x00000591u, ImmutableString("imageAtomicExchange(01c10D00B").mangledNameHash());
ASSERT_EQ(0x00000592u, ImmutableString("imageAtomicExchange(01R10D00D00B").mangledNameHash());
ASSERT_EQ(0x00000593u, ImmutableString("imageAtomicExchange(01S10D00D00B").mangledNameHash());
ASSERT_EQ(0x00000594u, ImmutableString("imageAtomicExchange(01T10D00D00B").mangledNameHash());
......@@ -1475,24 +1475,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x0000059eu, ImmutableString("imageAtomicCompSwap(01I20D00E00E").mangledNameHash());
ASSERT_EQ(0x0000059fu, ImmutableString("imageAtomicCompSwap(01J20D00E00E").mangledNameHash());
ASSERT_EQ(0x000005a0u, ImmutableString("imageAtomicCompSwap(01K20D00E00E").mangledNameHash());
ASSERT_EQ(0x000005a1u, ImmutableString("imageAtomicCompSwap(01g00D00E00E").mangledNameHash());
ASSERT_EQ(0x000005a2u, ImmutableString("imageAtomicCompSwap(01h00D00E00E").mangledNameHash());
ASSERT_EQ(0x000005a3u, ImmutableString("imageAtomicCompSwap(01i00D00E00E").mangledNameHash());
ASSERT_EQ(0x000005a1u, ImmutableString("imageAtomicCompSwap(01d00D00E00E").mangledNameHash());
ASSERT_EQ(0x000005a2u, ImmutableString("imageAtomicCompSwap(01e00D00E00E").mangledNameHash());
ASSERT_EQ(0x000005a3u, ImmutableString("imageAtomicCompSwap(01f00D00E00E").mangledNameHash());
ASSERT_EQ(0x000005a4u, ImmutableString("imageAtomicCompSwap(01F20D00E00E").mangledNameHash());
ASSERT_EQ(0x000005a5u, ImmutableString("imageAtomicCompSwap(01G20D00E00E").mangledNameHash());
ASSERT_EQ(0x000005a6u, ImmutableString("imageAtomicCompSwap(01H20D00E00E").mangledNameHash());
ASSERT_EQ(0x000005a7u, ImmutableString("imageAtomicCompSwap(01a20D00E00E").mangledNameHash());
ASSERT_EQ(0x000005a8u, ImmutableString("imageAtomicCompSwap(01b20D00E00E").mangledNameHash());
ASSERT_EQ(0x000005a9u, ImmutableString("imageAtomicCompSwap(01c20D00E00E").mangledNameHash());
ASSERT_EQ(0x000005a7u, ImmutableString("imageAtomicCompSwap(01X20D00E00E").mangledNameHash());
ASSERT_EQ(0x000005a8u, ImmutableString("imageAtomicCompSwap(01Y20D00E00E").mangledNameHash());
ASSERT_EQ(0x000005a9u, ImmutableString("imageAtomicCompSwap(01Z20D00E00E").mangledNameHash());
ASSERT_EQ(0x000005aau, ImmutableString("imageAtomicCompSwap(01L00D00E00E").mangledNameHash());
ASSERT_EQ(0x000005abu, ImmutableString("imageAtomicCompSwap(01M00D00E00E").mangledNameHash());
ASSERT_EQ(0x000005acu, ImmutableString("imageAtomicCompSwap(01N00D00E00E").mangledNameHash());
ASSERT_EQ(0x000005adu, ImmutableString("imageAtomicCompSwap(01O10D00E00E").mangledNameHash());
ASSERT_EQ(0x000005aeu, ImmutableString("imageAtomicCompSwap(01P10D00E00E").mangledNameHash());
ASSERT_EQ(0x000005afu, ImmutableString("imageAtomicCompSwap(01Q10D00E00E").mangledNameHash());
ASSERT_EQ(0x000005b0u, ImmutableString("imageAtomicCompSwap(01X10D00E00E").mangledNameHash());
ASSERT_EQ(0x000005b1u, ImmutableString("imageAtomicCompSwap(01Y10D00E00E").mangledNameHash());
ASSERT_EQ(0x000005b2u, ImmutableString("imageAtomicCompSwap(01Z10D00E00E").mangledNameHash());
ASSERT_EQ(0x000005b0u, ImmutableString("imageAtomicCompSwap(01a10D00E00E").mangledNameHash());
ASSERT_EQ(0x000005b1u, ImmutableString("imageAtomicCompSwap(01b10D00E00E").mangledNameHash());
ASSERT_EQ(0x000005b2u, ImmutableString("imageAtomicCompSwap(01c10D00E00E").mangledNameHash());
ASSERT_EQ(0x000005b3u,
ImmutableString("imageAtomicCompSwap(01R10D00D00E00E").mangledNameHash());
ASSERT_EQ(0x000005b4u,
......@@ -1514,24 +1514,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x000005bfu, ImmutableString("imageAtomicCompSwap(01I20D00D00D").mangledNameHash());
ASSERT_EQ(0x000005c0u, ImmutableString("imageAtomicCompSwap(01J20D00D00D").mangledNameHash());
ASSERT_EQ(0x000005c1u, ImmutableString("imageAtomicCompSwap(01K20D00D00D").mangledNameHash());
ASSERT_EQ(0x000005c2u, ImmutableString("imageAtomicCompSwap(01g00D00D00D").mangledNameHash());
ASSERT_EQ(0x000005c3u, ImmutableString("imageAtomicCompSwap(01h00D00D00D").mangledNameHash());
ASSERT_EQ(0x000005c4u, ImmutableString("imageAtomicCompSwap(01i00D00D00D").mangledNameHash());
ASSERT_EQ(0x000005c2u, ImmutableString("imageAtomicCompSwap(01d00D00D00D").mangledNameHash());
ASSERT_EQ(0x000005c3u, ImmutableString("imageAtomicCompSwap(01e00D00D00D").mangledNameHash());
ASSERT_EQ(0x000005c4u, ImmutableString("imageAtomicCompSwap(01f00D00D00D").mangledNameHash());
ASSERT_EQ(0x000005c5u, ImmutableString("imageAtomicCompSwap(01F20D00D00D").mangledNameHash());
ASSERT_EQ(0x000005c6u, ImmutableString("imageAtomicCompSwap(01G20D00D00D").mangledNameHash());
ASSERT_EQ(0x000005c7u, ImmutableString("imageAtomicCompSwap(01H20D00D00D").mangledNameHash());
ASSERT_EQ(0x000005c8u, ImmutableString("imageAtomicCompSwap(01a20D00D00D").mangledNameHash());
ASSERT_EQ(0x000005c9u, ImmutableString("imageAtomicCompSwap(01b20D00D00D").mangledNameHash());
ASSERT_EQ(0x000005cau, ImmutableString("imageAtomicCompSwap(01c20D00D00D").mangledNameHash());
ASSERT_EQ(0x000005c8u, ImmutableString("imageAtomicCompSwap(01X20D00D00D").mangledNameHash());
ASSERT_EQ(0x000005c9u, ImmutableString("imageAtomicCompSwap(01Y20D00D00D").mangledNameHash());
ASSERT_EQ(0x000005cau, ImmutableString("imageAtomicCompSwap(01Z20D00D00D").mangledNameHash());
ASSERT_EQ(0x000005cbu, ImmutableString("imageAtomicCompSwap(01L00D00D00D").mangledNameHash());
ASSERT_EQ(0x000005ccu, ImmutableString("imageAtomicCompSwap(01M00D00D00D").mangledNameHash());
ASSERT_EQ(0x000005cdu, ImmutableString("imageAtomicCompSwap(01N00D00D00D").mangledNameHash());
ASSERT_EQ(0x000005ceu, ImmutableString("imageAtomicCompSwap(01O10D00D00D").mangledNameHash());
ASSERT_EQ(0x000005cfu, ImmutableString("imageAtomicCompSwap(01P10D00D00D").mangledNameHash());
ASSERT_EQ(0x000005d0u, ImmutableString("imageAtomicCompSwap(01Q10D00D00D").mangledNameHash());
ASSERT_EQ(0x000005d1u, ImmutableString("imageAtomicCompSwap(01X10D00D00D").mangledNameHash());
ASSERT_EQ(0x000005d2u, ImmutableString("imageAtomicCompSwap(01Y10D00D00D").mangledNameHash());
ASSERT_EQ(0x000005d3u, ImmutableString("imageAtomicCompSwap(01Z10D00D00D").mangledNameHash());
ASSERT_EQ(0x000005d1u, ImmutableString("imageAtomicCompSwap(01a10D00D00D").mangledNameHash());
ASSERT_EQ(0x000005d2u, ImmutableString("imageAtomicCompSwap(01b10D00D00D").mangledNameHash());
ASSERT_EQ(0x000005d3u, ImmutableString("imageAtomicCompSwap(01c10D00D00D").mangledNameHash());
ASSERT_EQ(0x000005d4u,
ImmutableString("imageAtomicCompSwap(01R10D00D00D00D").mangledNameHash());
ASSERT_EQ(0x000005d5u,
......
......@@ -1424,18 +1424,18 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x00000559u, ImmutableString("imageSize(01I").mangledNameHash());
ASSERT_EQ(0x0000055au, ImmutableString("imageSize(01J").mangledNameHash());
ASSERT_EQ(0x0000055bu, ImmutableString("imageSize(01K").mangledNameHash());
ASSERT_EQ(0x0000055cu, ImmutableString("imageSize(01a").mangledNameHash());
ASSERT_EQ(0x0000055du, ImmutableString("imageSize(01b").mangledNameHash());
ASSERT_EQ(0x0000055eu, ImmutableString("imageSize(01c").mangledNameHash());
ASSERT_EQ(0x0000055fu, ImmutableString("imageSize(01g").mangledNameHash());
ASSERT_EQ(0x00000560u, ImmutableString("imageSize(01h").mangledNameHash());
ASSERT_EQ(0x00000561u, ImmutableString("imageSize(01i").mangledNameHash());
ASSERT_EQ(0x0000055cu, ImmutableString("imageSize(01X").mangledNameHash());
ASSERT_EQ(0x0000055du, ImmutableString("imageSize(01Y").mangledNameHash());
ASSERT_EQ(0x0000055eu, ImmutableString("imageSize(01Z").mangledNameHash());
ASSERT_EQ(0x0000055fu, ImmutableString("imageSize(01d").mangledNameHash());
ASSERT_EQ(0x00000560u, ImmutableString("imageSize(01e").mangledNameHash());
ASSERT_EQ(0x00000561u, ImmutableString("imageSize(01f").mangledNameHash());
ASSERT_EQ(0x00000562u, ImmutableString("imageSize(01L").mangledNameHash());
ASSERT_EQ(0x00000563u, ImmutableString("imageSize(01M").mangledNameHash());
ASSERT_EQ(0x00000564u, ImmutableString("imageSize(01N").mangledNameHash());
ASSERT_EQ(0x00000565u, ImmutableString("imageSize(01d").mangledNameHash());
ASSERT_EQ(0x00000566u, ImmutableString("imageSize(01e").mangledNameHash());
ASSERT_EQ(0x00000567u, ImmutableString("imageSize(01f").mangledNameHash());
ASSERT_EQ(0x00000565u, ImmutableString("imageSize(01a").mangledNameHash());
ASSERT_EQ(0x00000566u, ImmutableString("imageSize(01b").mangledNameHash());
ASSERT_EQ(0x00000567u, ImmutableString("imageSize(01c").mangledNameHash());
ASSERT_EQ(0x00000568u, ImmutableString("imageSize(01O").mangledNameHash());
ASSERT_EQ(0x00000569u, ImmutableString("imageSize(01P").mangledNameHash());
ASSERT_EQ(0x0000056au, ImmutableString("imageSize(01Q").mangledNameHash());
......@@ -1463,21 +1463,21 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x00000580u, ImmutableString("imageStore(01I20D30B").mangledNameHash());
ASSERT_EQ(0x00000581u, ImmutableString("imageStore(01J20D30D").mangledNameHash());
ASSERT_EQ(0x00000582u, ImmutableString("imageStore(01K20D30E").mangledNameHash());
ASSERT_EQ(0x00000583u, ImmutableString("imageStore(01a20D30B").mangledNameHash());
ASSERT_EQ(0x00000584u, ImmutableString("imageStore(01b20D30D").mangledNameHash());
ASSERT_EQ(0x00000585u, ImmutableString("imageStore(01c20D30E").mangledNameHash());
ASSERT_EQ(0x00000586u, ImmutableString("imageStore(01g00D30B").mangledNameHash());
ASSERT_EQ(0x00000587u, ImmutableString("imageStore(01h00D30D").mangledNameHash());
ASSERT_EQ(0x00000588u, ImmutableString("imageStore(01i00D30E").mangledNameHash());
ASSERT_EQ(0x00000583u, ImmutableString("imageStore(01X20D30B").mangledNameHash());
ASSERT_EQ(0x00000584u, ImmutableString("imageStore(01Y20D30D").mangledNameHash());
ASSERT_EQ(0x00000585u, ImmutableString("imageStore(01Z20D30E").mangledNameHash());
ASSERT_EQ(0x00000586u, ImmutableString("imageStore(01d00D30B").mangledNameHash());
ASSERT_EQ(0x00000587u, ImmutableString("imageStore(01e00D30D").mangledNameHash());
ASSERT_EQ(0x00000588u, ImmutableString("imageStore(01f00D30E").mangledNameHash());
ASSERT_EQ(0x00000589u, ImmutableString("imageStore(01L00D30B").mangledNameHash());
ASSERT_EQ(0x0000058au, ImmutableString("imageStore(01M00D30D").mangledNameHash());
ASSERT_EQ(0x0000058bu, ImmutableString("imageStore(01N00D30E").mangledNameHash());
ASSERT_EQ(0x0000058cu, ImmutableString("imageStore(01O10D30B").mangledNameHash());
ASSERT_EQ(0x0000058du, ImmutableString("imageStore(01P10D30D").mangledNameHash());
ASSERT_EQ(0x0000058eu, ImmutableString("imageStore(01Q10D30E").mangledNameHash());
ASSERT_EQ(0x0000058fu, ImmutableString("imageStore(01X10D30B").mangledNameHash());
ASSERT_EQ(0x00000590u, ImmutableString("imageStore(01Y10D30D").mangledNameHash());
ASSERT_EQ(0x00000591u, ImmutableString("imageStore(01Z10D30E").mangledNameHash());
ASSERT_EQ(0x0000058fu, ImmutableString("imageStore(01a10D30B").mangledNameHash());
ASSERT_EQ(0x00000590u, ImmutableString("imageStore(01b10D30D").mangledNameHash());
ASSERT_EQ(0x00000591u, ImmutableString("imageStore(01c10D30E").mangledNameHash());
ASSERT_EQ(0x00000592u, ImmutableString("imageStore(01R10D00D30B").mangledNameHash());
ASSERT_EQ(0x00000593u, ImmutableString("imageStore(01S10D00D30D").mangledNameHash());
ASSERT_EQ(0x00000594u, ImmutableString("imageStore(01T10D00D30E").mangledNameHash());
......@@ -1496,21 +1496,21 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x000005a1u, ImmutableString("imageLoad(01I20D").mangledNameHash());
ASSERT_EQ(0x000005a2u, ImmutableString("imageLoad(01J20D").mangledNameHash());
ASSERT_EQ(0x000005a3u, ImmutableString("imageLoad(01K20D").mangledNameHash());
ASSERT_EQ(0x000005a4u, ImmutableString("imageLoad(01a20D").mangledNameHash());
ASSERT_EQ(0x000005a5u, ImmutableString("imageLoad(01b20D").mangledNameHash());
ASSERT_EQ(0x000005a6u, ImmutableString("imageLoad(01c20D").mangledNameHash());
ASSERT_EQ(0x000005a7u, ImmutableString("imageLoad(01g00D").mangledNameHash());
ASSERT_EQ(0x000005a8u, ImmutableString("imageLoad(01h00D").mangledNameHash());
ASSERT_EQ(0x000005a9u, ImmutableString("imageLoad(01i00D").mangledNameHash());
ASSERT_EQ(0x000005a4u, ImmutableString("imageLoad(01X20D").mangledNameHash());
ASSERT_EQ(0x000005a5u, ImmutableString("imageLoad(01Y20D").mangledNameHash());
ASSERT_EQ(0x000005a6u, ImmutableString("imageLoad(01Z20D").mangledNameHash());
ASSERT_EQ(0x000005a7u, ImmutableString("imageLoad(01d00D").mangledNameHash());
ASSERT_EQ(0x000005a8u, ImmutableString("imageLoad(01e00D").mangledNameHash());
ASSERT_EQ(0x000005a9u, ImmutableString("imageLoad(01f00D").mangledNameHash());
ASSERT_EQ(0x000005aau, ImmutableString("imageLoad(01L00D").mangledNameHash());
ASSERT_EQ(0x000005abu, ImmutableString("imageLoad(01M00D").mangledNameHash());
ASSERT_EQ(0x000005acu, ImmutableString("imageLoad(01N00D").mangledNameHash());
ASSERT_EQ(0x000005adu, ImmutableString("imageLoad(01O10D").mangledNameHash());
ASSERT_EQ(0x000005aeu, ImmutableString("imageLoad(01P10D").mangledNameHash());
ASSERT_EQ(0x000005afu, ImmutableString("imageLoad(01Q10D").mangledNameHash());
ASSERT_EQ(0x000005b0u, ImmutableString("imageLoad(01X10D").mangledNameHash());
ASSERT_EQ(0x000005b1u, ImmutableString("imageLoad(01Y10D").mangledNameHash());
ASSERT_EQ(0x000005b2u, ImmutableString("imageLoad(01Z10D").mangledNameHash());
ASSERT_EQ(0x000005b0u, ImmutableString("imageLoad(01a10D").mangledNameHash());
ASSERT_EQ(0x000005b1u, ImmutableString("imageLoad(01b10D").mangledNameHash());
ASSERT_EQ(0x000005b2u, ImmutableString("imageLoad(01c10D").mangledNameHash());
ASSERT_EQ(0x000005b3u, ImmutableString("imageLoad(01R10D00D").mangledNameHash());
ASSERT_EQ(0x000005b4u, ImmutableString("imageLoad(01S10D00D").mangledNameHash());
ASSERT_EQ(0x000005b5u, ImmutableString("imageLoad(01T10D00D").mangledNameHash());
......@@ -1526,24 +1526,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x000005bfu, ImmutableString("imageAtomicAdd(01I20D00E").mangledNameHash());
ASSERT_EQ(0x000005c0u, ImmutableString("imageAtomicAdd(01J20D00E").mangledNameHash());
ASSERT_EQ(0x000005c1u, ImmutableString("imageAtomicAdd(01K20D00E").mangledNameHash());
ASSERT_EQ(0x000005c2u, ImmutableString("imageAtomicAdd(01g00D00E").mangledNameHash());
ASSERT_EQ(0x000005c3u, ImmutableString("imageAtomicAdd(01h00D00E").mangledNameHash());
ASSERT_EQ(0x000005c4u, ImmutableString("imageAtomicAdd(01i00D00E").mangledNameHash());
ASSERT_EQ(0x000005c2u, ImmutableString("imageAtomicAdd(01d00D00E").mangledNameHash());
ASSERT_EQ(0x000005c3u, ImmutableString("imageAtomicAdd(01e00D00E").mangledNameHash());
ASSERT_EQ(0x000005c4u, ImmutableString("imageAtomicAdd(01f00D00E").mangledNameHash());
ASSERT_EQ(0x000005c5u, ImmutableString("imageAtomicAdd(01F20D00E").mangledNameHash());
ASSERT_EQ(0x000005c6u, ImmutableString("imageAtomicAdd(01G20D00E").mangledNameHash());
ASSERT_EQ(0x000005c7u, ImmutableString("imageAtomicAdd(01H20D00E").mangledNameHash());
ASSERT_EQ(0x000005c8u, ImmutableString("imageAtomicAdd(01a20D00E").mangledNameHash());
ASSERT_EQ(0x000005c9u, ImmutableString("imageAtomicAdd(01b20D00E").mangledNameHash());
ASSERT_EQ(0x000005cau, ImmutableString("imageAtomicAdd(01c20D00E").mangledNameHash());
ASSERT_EQ(0x000005c8u, ImmutableString("imageAtomicAdd(01X20D00E").mangledNameHash());
ASSERT_EQ(0x000005c9u, ImmutableString("imageAtomicAdd(01Y20D00E").mangledNameHash());
ASSERT_EQ(0x000005cau, ImmutableString("imageAtomicAdd(01Z20D00E").mangledNameHash());
ASSERT_EQ(0x000005cbu, ImmutableString("imageAtomicAdd(01L00D00E").mangledNameHash());
ASSERT_EQ(0x000005ccu, ImmutableString("imageAtomicAdd(01M00D00E").mangledNameHash());
ASSERT_EQ(0x000005cdu, ImmutableString("imageAtomicAdd(01N00D00E").mangledNameHash());
ASSERT_EQ(0x000005ceu, ImmutableString("imageAtomicAdd(01O10D00E").mangledNameHash());
ASSERT_EQ(0x000005cfu, ImmutableString("imageAtomicAdd(01P10D00E").mangledNameHash());
ASSERT_EQ(0x000005d0u, ImmutableString("imageAtomicAdd(01Q10D00E").mangledNameHash());
ASSERT_EQ(0x000005d1u, ImmutableString("imageAtomicAdd(01X10D00E").mangledNameHash());
ASSERT_EQ(0x000005d2u, ImmutableString("imageAtomicAdd(01Y10D00E").mangledNameHash());
ASSERT_EQ(0x000005d3u, ImmutableString("imageAtomicAdd(01Z10D00E").mangledNameHash());
ASSERT_EQ(0x000005d1u, ImmutableString("imageAtomicAdd(01a10D00E").mangledNameHash());
ASSERT_EQ(0x000005d2u, ImmutableString("imageAtomicAdd(01b10D00E").mangledNameHash());
ASSERT_EQ(0x000005d3u, ImmutableString("imageAtomicAdd(01c10D00E").mangledNameHash());
ASSERT_EQ(0x000005d4u, ImmutableString("imageAtomicAdd(01R10D00D00E").mangledNameHash());
ASSERT_EQ(0x000005d5u, ImmutableString("imageAtomicAdd(01S10D00D00E").mangledNameHash());
ASSERT_EQ(0x000005d6u, ImmutableString("imageAtomicAdd(01T10D00D00E").mangledNameHash());
......@@ -1559,24 +1559,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x000005e0u, ImmutableString("imageAtomicAdd(01I20D00D").mangledNameHash());
ASSERT_EQ(0x000005e1u, ImmutableString("imageAtomicAdd(01J20D00D").mangledNameHash());
ASSERT_EQ(0x000005e2u, ImmutableString("imageAtomicAdd(01K20D00D").mangledNameHash());
ASSERT_EQ(0x000005e3u, ImmutableString("imageAtomicAdd(01g00D00D").mangledNameHash());
ASSERT_EQ(0x000005e4u, ImmutableString("imageAtomicAdd(01h00D00D").mangledNameHash());
ASSERT_EQ(0x000005e5u, ImmutableString("imageAtomicAdd(01i00D00D").mangledNameHash());
ASSERT_EQ(0x000005e3u, ImmutableString("imageAtomicAdd(01d00D00D").mangledNameHash());
ASSERT_EQ(0x000005e4u, ImmutableString("imageAtomicAdd(01e00D00D").mangledNameHash());
ASSERT_EQ(0x000005e5u, ImmutableString("imageAtomicAdd(01f00D00D").mangledNameHash());
ASSERT_EQ(0x000005e6u, ImmutableString("imageAtomicAdd(01F20D00D").mangledNameHash());
ASSERT_EQ(0x000005e7u, ImmutableString("imageAtomicAdd(01G20D00D").mangledNameHash());
ASSERT_EQ(0x000005e8u, ImmutableString("imageAtomicAdd(01H20D00D").mangledNameHash());
ASSERT_EQ(0x000005e9u, ImmutableString("imageAtomicAdd(01a20D00D").mangledNameHash());
ASSERT_EQ(0x000005eau, ImmutableString("imageAtomicAdd(01b20D00D").mangledNameHash());
ASSERT_EQ(0x000005ebu, ImmutableString("imageAtomicAdd(01c20D00D").mangledNameHash());
ASSERT_EQ(0x000005e9u, ImmutableString("imageAtomicAdd(01X20D00D").mangledNameHash());
ASSERT_EQ(0x000005eau, ImmutableString("imageAtomicAdd(01Y20D00D").mangledNameHash());
ASSERT_EQ(0x000005ebu, ImmutableString("imageAtomicAdd(01Z20D00D").mangledNameHash());
ASSERT_EQ(0x000005ecu, ImmutableString("imageAtomicAdd(01L00D00D").mangledNameHash());
ASSERT_EQ(0x000005edu, ImmutableString("imageAtomicAdd(01M00D00D").mangledNameHash());
ASSERT_EQ(0x000005eeu, ImmutableString("imageAtomicAdd(01N00D00D").mangledNameHash());
ASSERT_EQ(0x000005efu, ImmutableString("imageAtomicAdd(01O10D00D").mangledNameHash());
ASSERT_EQ(0x000005f0u, ImmutableString("imageAtomicAdd(01P10D00D").mangledNameHash());
ASSERT_EQ(0x000005f1u, ImmutableString("imageAtomicAdd(01Q10D00D").mangledNameHash());
ASSERT_EQ(0x000005f2u, ImmutableString("imageAtomicAdd(01X10D00D").mangledNameHash());
ASSERT_EQ(0x000005f3u, ImmutableString("imageAtomicAdd(01Y10D00D").mangledNameHash());
ASSERT_EQ(0x000005f4u, ImmutableString("imageAtomicAdd(01Z10D00D").mangledNameHash());
ASSERT_EQ(0x000005f2u, ImmutableString("imageAtomicAdd(01a10D00D").mangledNameHash());
ASSERT_EQ(0x000005f3u, ImmutableString("imageAtomicAdd(01b10D00D").mangledNameHash());
ASSERT_EQ(0x000005f4u, ImmutableString("imageAtomicAdd(01c10D00D").mangledNameHash());
ASSERT_EQ(0x000005f5u, ImmutableString("imageAtomicAdd(01R10D00D00D").mangledNameHash());
ASSERT_EQ(0x000005f6u, ImmutableString("imageAtomicAdd(01S10D00D00D").mangledNameHash());
ASSERT_EQ(0x000005f7u, ImmutableString("imageAtomicAdd(01T10D00D00D").mangledNameHash());
......@@ -1592,24 +1592,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x00000601u, ImmutableString("imageAtomicMin(01I20D00E").mangledNameHash());
ASSERT_EQ(0x00000602u, ImmutableString("imageAtomicMin(01J20D00E").mangledNameHash());
ASSERT_EQ(0x00000603u, ImmutableString("imageAtomicMin(01K20D00E").mangledNameHash());
ASSERT_EQ(0x00000604u, ImmutableString("imageAtomicMin(01g00D00E").mangledNameHash());
ASSERT_EQ(0x00000605u, ImmutableString("imageAtomicMin(01h00D00E").mangledNameHash());
ASSERT_EQ(0x00000606u, ImmutableString("imageAtomicMin(01i00D00E").mangledNameHash());
ASSERT_EQ(0x00000604u, ImmutableString("imageAtomicMin(01d00D00E").mangledNameHash());
ASSERT_EQ(0x00000605u, ImmutableString("imageAtomicMin(01e00D00E").mangledNameHash());
ASSERT_EQ(0x00000606u, ImmutableString("imageAtomicMin(01f00D00E").mangledNameHash());
ASSERT_EQ(0x00000607u, ImmutableString("imageAtomicMin(01F20D00E").mangledNameHash());
ASSERT_EQ(0x00000608u, ImmutableString("imageAtomicMin(01G20D00E").mangledNameHash());
ASSERT_EQ(0x00000609u, ImmutableString("imageAtomicMin(01H20D00E").mangledNameHash());
ASSERT_EQ(0x0000060au, ImmutableString("imageAtomicMin(01a20D00E").mangledNameHash());
ASSERT_EQ(0x0000060bu, ImmutableString("imageAtomicMin(01b20D00E").mangledNameHash());
ASSERT_EQ(0x0000060cu, ImmutableString("imageAtomicMin(01c20D00E").mangledNameHash());
ASSERT_EQ(0x0000060au, ImmutableString("imageAtomicMin(01X20D00E").mangledNameHash());
ASSERT_EQ(0x0000060bu, ImmutableString("imageAtomicMin(01Y20D00E").mangledNameHash());
ASSERT_EQ(0x0000060cu, ImmutableString("imageAtomicMin(01Z20D00E").mangledNameHash());
ASSERT_EQ(0x0000060du, ImmutableString("imageAtomicMin(01L00D00E").mangledNameHash());
ASSERT_EQ(0x0000060eu, ImmutableString("imageAtomicMin(01M00D00E").mangledNameHash());
ASSERT_EQ(0x0000060fu, ImmutableString("imageAtomicMin(01N00D00E").mangledNameHash());
ASSERT_EQ(0x00000610u, ImmutableString("imageAtomicMin(01O10D00E").mangledNameHash());
ASSERT_EQ(0x00000611u, ImmutableString("imageAtomicMin(01P10D00E").mangledNameHash());
ASSERT_EQ(0x00000612u, ImmutableString("imageAtomicMin(01Q10D00E").mangledNameHash());
ASSERT_EQ(0x00000613u, ImmutableString("imageAtomicMin(01X10D00E").mangledNameHash());
ASSERT_EQ(0x00000614u, ImmutableString("imageAtomicMin(01Y10D00E").mangledNameHash());
ASSERT_EQ(0x00000615u, ImmutableString("imageAtomicMin(01Z10D00E").mangledNameHash());
ASSERT_EQ(0x00000613u, ImmutableString("imageAtomicMin(01a10D00E").mangledNameHash());
ASSERT_EQ(0x00000614u, ImmutableString("imageAtomicMin(01b10D00E").mangledNameHash());
ASSERT_EQ(0x00000615u, ImmutableString("imageAtomicMin(01c10D00E").mangledNameHash());
ASSERT_EQ(0x00000616u, ImmutableString("imageAtomicMin(01R10D00D00E").mangledNameHash());
ASSERT_EQ(0x00000617u, ImmutableString("imageAtomicMin(01S10D00D00E").mangledNameHash());
ASSERT_EQ(0x00000618u, ImmutableString("imageAtomicMin(01T10D00D00E").mangledNameHash());
......@@ -1625,24 +1625,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x00000622u, ImmutableString("imageAtomicMin(01I20D00D").mangledNameHash());
ASSERT_EQ(0x00000623u, ImmutableString("imageAtomicMin(01J20D00D").mangledNameHash());
ASSERT_EQ(0x00000624u, ImmutableString("imageAtomicMin(01K20D00D").mangledNameHash());
ASSERT_EQ(0x00000625u, ImmutableString("imageAtomicMin(01g00D00D").mangledNameHash());
ASSERT_EQ(0x00000626u, ImmutableString("imageAtomicMin(01h00D00D").mangledNameHash());
ASSERT_EQ(0x00000627u, ImmutableString("imageAtomicMin(01i00D00D").mangledNameHash());
ASSERT_EQ(0x00000625u, ImmutableString("imageAtomicMin(01d00D00D").mangledNameHash());
ASSERT_EQ(0x00000626u, ImmutableString("imageAtomicMin(01e00D00D").mangledNameHash());
ASSERT_EQ(0x00000627u, ImmutableString("imageAtomicMin(01f00D00D").mangledNameHash());
ASSERT_EQ(0x00000628u, ImmutableString("imageAtomicMin(01F20D00D").mangledNameHash());
ASSERT_EQ(0x00000629u, ImmutableString("imageAtomicMin(01G20D00D").mangledNameHash());
ASSERT_EQ(0x0000062au, ImmutableString("imageAtomicMin(01H20D00D").mangledNameHash());
ASSERT_EQ(0x0000062bu, ImmutableString("imageAtomicMin(01a20D00D").mangledNameHash());
ASSERT_EQ(0x0000062cu, ImmutableString("imageAtomicMin(01b20D00D").mangledNameHash());
ASSERT_EQ(0x0000062du, ImmutableString("imageAtomicMin(01c20D00D").mangledNameHash());
ASSERT_EQ(0x0000062bu, ImmutableString("imageAtomicMin(01X20D00D").mangledNameHash());
ASSERT_EQ(0x0000062cu, ImmutableString("imageAtomicMin(01Y20D00D").mangledNameHash());
ASSERT_EQ(0x0000062du, ImmutableString("imageAtomicMin(01Z20D00D").mangledNameHash());
ASSERT_EQ(0x0000062eu, ImmutableString("imageAtomicMin(01L00D00D").mangledNameHash());
ASSERT_EQ(0x0000062fu, ImmutableString("imageAtomicMin(01M00D00D").mangledNameHash());
ASSERT_EQ(0x00000630u, ImmutableString("imageAtomicMin(01N00D00D").mangledNameHash());
ASSERT_EQ(0x00000631u, ImmutableString("imageAtomicMin(01O10D00D").mangledNameHash());
ASSERT_EQ(0x00000632u, ImmutableString("imageAtomicMin(01P10D00D").mangledNameHash());
ASSERT_EQ(0x00000633u, ImmutableString("imageAtomicMin(01Q10D00D").mangledNameHash());
ASSERT_EQ(0x00000634u, ImmutableString("imageAtomicMin(01X10D00D").mangledNameHash());
ASSERT_EQ(0x00000635u, ImmutableString("imageAtomicMin(01Y10D00D").mangledNameHash());
ASSERT_EQ(0x00000636u, ImmutableString("imageAtomicMin(01Z10D00D").mangledNameHash());
ASSERT_EQ(0x00000634u, ImmutableString("imageAtomicMin(01a10D00D").mangledNameHash());
ASSERT_EQ(0x00000635u, ImmutableString("imageAtomicMin(01b10D00D").mangledNameHash());
ASSERT_EQ(0x00000636u, ImmutableString("imageAtomicMin(01c10D00D").mangledNameHash());
ASSERT_EQ(0x00000637u, ImmutableString("imageAtomicMin(01R10D00D00D").mangledNameHash());
ASSERT_EQ(0x00000638u, ImmutableString("imageAtomicMin(01S10D00D00D").mangledNameHash());
ASSERT_EQ(0x00000639u, ImmutableString("imageAtomicMin(01T10D00D00D").mangledNameHash());
......@@ -1658,24 +1658,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x00000643u, ImmutableString("imageAtomicMax(01I20D00E").mangledNameHash());
ASSERT_EQ(0x00000644u, ImmutableString("imageAtomicMax(01J20D00E").mangledNameHash());
ASSERT_EQ(0x00000645u, ImmutableString("imageAtomicMax(01K20D00E").mangledNameHash());
ASSERT_EQ(0x00000646u, ImmutableString("imageAtomicMax(01g00D00E").mangledNameHash());
ASSERT_EQ(0x00000647u, ImmutableString("imageAtomicMax(01h00D00E").mangledNameHash());
ASSERT_EQ(0x00000648u, ImmutableString("imageAtomicMax(01i00D00E").mangledNameHash());
ASSERT_EQ(0x00000646u, ImmutableString("imageAtomicMax(01d00D00E").mangledNameHash());
ASSERT_EQ(0x00000647u, ImmutableString("imageAtomicMax(01e00D00E").mangledNameHash());
ASSERT_EQ(0x00000648u, ImmutableString("imageAtomicMax(01f00D00E").mangledNameHash());
ASSERT_EQ(0x00000649u, ImmutableString("imageAtomicMax(01F20D00E").mangledNameHash());
ASSERT_EQ(0x0000064au, ImmutableString("imageAtomicMax(01G20D00E").mangledNameHash());
ASSERT_EQ(0x0000064bu, ImmutableString("imageAtomicMax(01H20D00E").mangledNameHash());
ASSERT_EQ(0x0000064cu, ImmutableString("imageAtomicMax(01a20D00E").mangledNameHash());
ASSERT_EQ(0x0000064du, ImmutableString("imageAtomicMax(01b20D00E").mangledNameHash());
ASSERT_EQ(0x0000064eu, ImmutableString("imageAtomicMax(01c20D00E").mangledNameHash());
ASSERT_EQ(0x0000064cu, ImmutableString("imageAtomicMax(01X20D00E").mangledNameHash());
ASSERT_EQ(0x0000064du, ImmutableString("imageAtomicMax(01Y20D00E").mangledNameHash());
ASSERT_EQ(0x0000064eu, ImmutableString("imageAtomicMax(01Z20D00E").mangledNameHash());
ASSERT_EQ(0x0000064fu, ImmutableString("imageAtomicMax(01L00D00E").mangledNameHash());
ASSERT_EQ(0x00000650u, ImmutableString("imageAtomicMax(01M00D00E").mangledNameHash());
ASSERT_EQ(0x00000651u, ImmutableString("imageAtomicMax(01N00D00E").mangledNameHash());
ASSERT_EQ(0x00000652u, ImmutableString("imageAtomicMax(01O10D00E").mangledNameHash());
ASSERT_EQ(0x00000653u, ImmutableString("imageAtomicMax(01P10D00E").mangledNameHash());
ASSERT_EQ(0x00000654u, ImmutableString("imageAtomicMax(01Q10D00E").mangledNameHash());
ASSERT_EQ(0x00000655u, ImmutableString("imageAtomicMax(01X10D00E").mangledNameHash());
ASSERT_EQ(0x00000656u, ImmutableString("imageAtomicMax(01Y10D00E").mangledNameHash());
ASSERT_EQ(0x00000657u, ImmutableString("imageAtomicMax(01Z10D00E").mangledNameHash());
ASSERT_EQ(0x00000655u, ImmutableString("imageAtomicMax(01a10D00E").mangledNameHash());
ASSERT_EQ(0x00000656u, ImmutableString("imageAtomicMax(01b10D00E").mangledNameHash());
ASSERT_EQ(0x00000657u, ImmutableString("imageAtomicMax(01c10D00E").mangledNameHash());
ASSERT_EQ(0x00000658u, ImmutableString("imageAtomicMax(01R10D00D00E").mangledNameHash());
ASSERT_EQ(0x00000659u, ImmutableString("imageAtomicMax(01S10D00D00E").mangledNameHash());
ASSERT_EQ(0x0000065au, ImmutableString("imageAtomicMax(01T10D00D00E").mangledNameHash());
......@@ -1691,24 +1691,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x00000664u, ImmutableString("imageAtomicMax(01I20D00D").mangledNameHash());
ASSERT_EQ(0x00000665u, ImmutableString("imageAtomicMax(01J20D00D").mangledNameHash());
ASSERT_EQ(0x00000666u, ImmutableString("imageAtomicMax(01K20D00D").mangledNameHash());
ASSERT_EQ(0x00000667u, ImmutableString("imageAtomicMax(01g00D00D").mangledNameHash());
ASSERT_EQ(0x00000668u, ImmutableString("imageAtomicMax(01h00D00D").mangledNameHash());
ASSERT_EQ(0x00000669u, ImmutableString("imageAtomicMax(01i00D00D").mangledNameHash());
ASSERT_EQ(0x00000667u, ImmutableString("imageAtomicMax(01d00D00D").mangledNameHash());
ASSERT_EQ(0x00000668u, ImmutableString("imageAtomicMax(01e00D00D").mangledNameHash());
ASSERT_EQ(0x00000669u, ImmutableString("imageAtomicMax(01f00D00D").mangledNameHash());
ASSERT_EQ(0x0000066au, ImmutableString("imageAtomicMax(01F20D00D").mangledNameHash());
ASSERT_EQ(0x0000066bu, ImmutableString("imageAtomicMax(01G20D00D").mangledNameHash());
ASSERT_EQ(0x0000066cu, ImmutableString("imageAtomicMax(01H20D00D").mangledNameHash());
ASSERT_EQ(0x0000066du, ImmutableString("imageAtomicMax(01a20D00D").mangledNameHash());
ASSERT_EQ(0x0000066eu, ImmutableString("imageAtomicMax(01b20D00D").mangledNameHash());
ASSERT_EQ(0x0000066fu, ImmutableString("imageAtomicMax(01c20D00D").mangledNameHash());
ASSERT_EQ(0x0000066du, ImmutableString("imageAtomicMax(01X20D00D").mangledNameHash());
ASSERT_EQ(0x0000066eu, ImmutableString("imageAtomicMax(01Y20D00D").mangledNameHash());
ASSERT_EQ(0x0000066fu, ImmutableString("imageAtomicMax(01Z20D00D").mangledNameHash());
ASSERT_EQ(0x00000670u, ImmutableString("imageAtomicMax(01L00D00D").mangledNameHash());
ASSERT_EQ(0x00000671u, ImmutableString("imageAtomicMax(01M00D00D").mangledNameHash());
ASSERT_EQ(0x00000672u, ImmutableString("imageAtomicMax(01N00D00D").mangledNameHash());
ASSERT_EQ(0x00000673u, ImmutableString("imageAtomicMax(01O10D00D").mangledNameHash());
ASSERT_EQ(0x00000674u, ImmutableString("imageAtomicMax(01P10D00D").mangledNameHash());
ASSERT_EQ(0x00000675u, ImmutableString("imageAtomicMax(01Q10D00D").mangledNameHash());
ASSERT_EQ(0x00000676u, ImmutableString("imageAtomicMax(01X10D00D").mangledNameHash());
ASSERT_EQ(0x00000677u, ImmutableString("imageAtomicMax(01Y10D00D").mangledNameHash());
ASSERT_EQ(0x00000678u, ImmutableString("imageAtomicMax(01Z10D00D").mangledNameHash());
ASSERT_EQ(0x00000676u, ImmutableString("imageAtomicMax(01a10D00D").mangledNameHash());
ASSERT_EQ(0x00000677u, ImmutableString("imageAtomicMax(01b10D00D").mangledNameHash());
ASSERT_EQ(0x00000678u, ImmutableString("imageAtomicMax(01c10D00D").mangledNameHash());
ASSERT_EQ(0x00000679u, ImmutableString("imageAtomicMax(01R10D00D00D").mangledNameHash());
ASSERT_EQ(0x0000067au, ImmutableString("imageAtomicMax(01S10D00D00D").mangledNameHash());
ASSERT_EQ(0x0000067bu, ImmutableString("imageAtomicMax(01T10D00D00D").mangledNameHash());
......@@ -1724,24 +1724,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x00000685u, ImmutableString("imageAtomicAnd(01I20D00E").mangledNameHash());
ASSERT_EQ(0x00000686u, ImmutableString("imageAtomicAnd(01J20D00E").mangledNameHash());
ASSERT_EQ(0x00000687u, ImmutableString("imageAtomicAnd(01K20D00E").mangledNameHash());
ASSERT_EQ(0x00000688u, ImmutableString("imageAtomicAnd(01g00D00E").mangledNameHash());
ASSERT_EQ(0x00000689u, ImmutableString("imageAtomicAnd(01h00D00E").mangledNameHash());
ASSERT_EQ(0x0000068au, ImmutableString("imageAtomicAnd(01i00D00E").mangledNameHash());
ASSERT_EQ(0x00000688u, ImmutableString("imageAtomicAnd(01d00D00E").mangledNameHash());
ASSERT_EQ(0x00000689u, ImmutableString("imageAtomicAnd(01e00D00E").mangledNameHash());
ASSERT_EQ(0x0000068au, ImmutableString("imageAtomicAnd(01f00D00E").mangledNameHash());
ASSERT_EQ(0x0000068bu, ImmutableString("imageAtomicAnd(01F20D00E").mangledNameHash());
ASSERT_EQ(0x0000068cu, ImmutableString("imageAtomicAnd(01G20D00E").mangledNameHash());
ASSERT_EQ(0x0000068du, ImmutableString("imageAtomicAnd(01H20D00E").mangledNameHash());
ASSERT_EQ(0x0000068eu, ImmutableString("imageAtomicAnd(01a20D00E").mangledNameHash());
ASSERT_EQ(0x0000068fu, ImmutableString("imageAtomicAnd(01b20D00E").mangledNameHash());
ASSERT_EQ(0x00000690u, ImmutableString("imageAtomicAnd(01c20D00E").mangledNameHash());
ASSERT_EQ(0x0000068eu, ImmutableString("imageAtomicAnd(01X20D00E").mangledNameHash());
ASSERT_EQ(0x0000068fu, ImmutableString("imageAtomicAnd(01Y20D00E").mangledNameHash());
ASSERT_EQ(0x00000690u, ImmutableString("imageAtomicAnd(01Z20D00E").mangledNameHash());
ASSERT_EQ(0x00000691u, ImmutableString("imageAtomicAnd(01L00D00E").mangledNameHash());
ASSERT_EQ(0x00000692u, ImmutableString("imageAtomicAnd(01M00D00E").mangledNameHash());
ASSERT_EQ(0x00000693u, ImmutableString("imageAtomicAnd(01N00D00E").mangledNameHash());
ASSERT_EQ(0x00000694u, ImmutableString("imageAtomicAnd(01O10D00E").mangledNameHash());
ASSERT_EQ(0x00000695u, ImmutableString("imageAtomicAnd(01P10D00E").mangledNameHash());
ASSERT_EQ(0x00000696u, ImmutableString("imageAtomicAnd(01Q10D00E").mangledNameHash());
ASSERT_EQ(0x00000697u, ImmutableString("imageAtomicAnd(01X10D00E").mangledNameHash());
ASSERT_EQ(0x00000698u, ImmutableString("imageAtomicAnd(01Y10D00E").mangledNameHash());
ASSERT_EQ(0x00000699u, ImmutableString("imageAtomicAnd(01Z10D00E").mangledNameHash());
ASSERT_EQ(0x00000697u, ImmutableString("imageAtomicAnd(01a10D00E").mangledNameHash());
ASSERT_EQ(0x00000698u, ImmutableString("imageAtomicAnd(01b10D00E").mangledNameHash());
ASSERT_EQ(0x00000699u, ImmutableString("imageAtomicAnd(01c10D00E").mangledNameHash());
ASSERT_EQ(0x0000069au, ImmutableString("imageAtomicAnd(01R10D00D00E").mangledNameHash());
ASSERT_EQ(0x0000069bu, ImmutableString("imageAtomicAnd(01S10D00D00E").mangledNameHash());
ASSERT_EQ(0x0000069cu, ImmutableString("imageAtomicAnd(01T10D00D00E").mangledNameHash());
......@@ -1757,24 +1757,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x000006a6u, ImmutableString("imageAtomicAnd(01I20D00D").mangledNameHash());
ASSERT_EQ(0x000006a7u, ImmutableString("imageAtomicAnd(01J20D00D").mangledNameHash());
ASSERT_EQ(0x000006a8u, ImmutableString("imageAtomicAnd(01K20D00D").mangledNameHash());
ASSERT_EQ(0x000006a9u, ImmutableString("imageAtomicAnd(01g00D00D").mangledNameHash());
ASSERT_EQ(0x000006aau, ImmutableString("imageAtomicAnd(01h00D00D").mangledNameHash());
ASSERT_EQ(0x000006abu, ImmutableString("imageAtomicAnd(01i00D00D").mangledNameHash());
ASSERT_EQ(0x000006a9u, ImmutableString("imageAtomicAnd(01d00D00D").mangledNameHash());
ASSERT_EQ(0x000006aau, ImmutableString("imageAtomicAnd(01e00D00D").mangledNameHash());
ASSERT_EQ(0x000006abu, ImmutableString("imageAtomicAnd(01f00D00D").mangledNameHash());
ASSERT_EQ(0x000006acu, ImmutableString("imageAtomicAnd(01F20D00D").mangledNameHash());
ASSERT_EQ(0x000006adu, ImmutableString("imageAtomicAnd(01G20D00D").mangledNameHash());
ASSERT_EQ(0x000006aeu, ImmutableString("imageAtomicAnd(01H20D00D").mangledNameHash());
ASSERT_EQ(0x000006afu, ImmutableString("imageAtomicAnd(01a20D00D").mangledNameHash());
ASSERT_EQ(0x000006b0u, ImmutableString("imageAtomicAnd(01b20D00D").mangledNameHash());
ASSERT_EQ(0x000006b1u, ImmutableString("imageAtomicAnd(01c20D00D").mangledNameHash());
ASSERT_EQ(0x000006afu, ImmutableString("imageAtomicAnd(01X20D00D").mangledNameHash());
ASSERT_EQ(0x000006b0u, ImmutableString("imageAtomicAnd(01Y20D00D").mangledNameHash());
ASSERT_EQ(0x000006b1u, ImmutableString("imageAtomicAnd(01Z20D00D").mangledNameHash());
ASSERT_EQ(0x000006b2u, ImmutableString("imageAtomicAnd(01L00D00D").mangledNameHash());
ASSERT_EQ(0x000006b3u, ImmutableString("imageAtomicAnd(01M00D00D").mangledNameHash());
ASSERT_EQ(0x000006b4u, ImmutableString("imageAtomicAnd(01N00D00D").mangledNameHash());
ASSERT_EQ(0x000006b5u, ImmutableString("imageAtomicAnd(01O10D00D").mangledNameHash());
ASSERT_EQ(0x000006b6u, ImmutableString("imageAtomicAnd(01P10D00D").mangledNameHash());
ASSERT_EQ(0x000006b7u, ImmutableString("imageAtomicAnd(01Q10D00D").mangledNameHash());
ASSERT_EQ(0x000006b8u, ImmutableString("imageAtomicAnd(01X10D00D").mangledNameHash());
ASSERT_EQ(0x000006b9u, ImmutableString("imageAtomicAnd(01Y10D00D").mangledNameHash());
ASSERT_EQ(0x000006bau, ImmutableString("imageAtomicAnd(01Z10D00D").mangledNameHash());
ASSERT_EQ(0x000006b8u, ImmutableString("imageAtomicAnd(01a10D00D").mangledNameHash());
ASSERT_EQ(0x000006b9u, ImmutableString("imageAtomicAnd(01b10D00D").mangledNameHash());
ASSERT_EQ(0x000006bau, ImmutableString("imageAtomicAnd(01c10D00D").mangledNameHash());
ASSERT_EQ(0x000006bbu, ImmutableString("imageAtomicAnd(01R10D00D00D").mangledNameHash());
ASSERT_EQ(0x000006bcu, ImmutableString("imageAtomicAnd(01S10D00D00D").mangledNameHash());
ASSERT_EQ(0x000006bdu, ImmutableString("imageAtomicAnd(01T10D00D00D").mangledNameHash());
......@@ -1790,24 +1790,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x000006c7u, ImmutableString("imageAtomicOr(01I20D00E").mangledNameHash());
ASSERT_EQ(0x000006c8u, ImmutableString("imageAtomicOr(01J20D00E").mangledNameHash());
ASSERT_EQ(0x000006c9u, ImmutableString("imageAtomicOr(01K20D00E").mangledNameHash());
ASSERT_EQ(0x000006cau, ImmutableString("imageAtomicOr(01g00D00E").mangledNameHash());
ASSERT_EQ(0x000006cbu, ImmutableString("imageAtomicOr(01h00D00E").mangledNameHash());
ASSERT_EQ(0x000006ccu, ImmutableString("imageAtomicOr(01i00D00E").mangledNameHash());
ASSERT_EQ(0x000006cau, ImmutableString("imageAtomicOr(01d00D00E").mangledNameHash());
ASSERT_EQ(0x000006cbu, ImmutableString("imageAtomicOr(01e00D00E").mangledNameHash());
ASSERT_EQ(0x000006ccu, ImmutableString("imageAtomicOr(01f00D00E").mangledNameHash());
ASSERT_EQ(0x000006cdu, ImmutableString("imageAtomicOr(01F20D00E").mangledNameHash());
ASSERT_EQ(0x000006ceu, ImmutableString("imageAtomicOr(01G20D00E").mangledNameHash());
ASSERT_EQ(0x000006cfu, ImmutableString("imageAtomicOr(01H20D00E").mangledNameHash());
ASSERT_EQ(0x000006d0u, ImmutableString("imageAtomicOr(01a20D00E").mangledNameHash());
ASSERT_EQ(0x000006d1u, ImmutableString("imageAtomicOr(01b20D00E").mangledNameHash());
ASSERT_EQ(0x000006d2u, ImmutableString("imageAtomicOr(01c20D00E").mangledNameHash());
ASSERT_EQ(0x000006d0u, ImmutableString("imageAtomicOr(01X20D00E").mangledNameHash());
ASSERT_EQ(0x000006d1u, ImmutableString("imageAtomicOr(01Y20D00E").mangledNameHash());
ASSERT_EQ(0x000006d2u, ImmutableString("imageAtomicOr(01Z20D00E").mangledNameHash());
ASSERT_EQ(0x000006d3u, ImmutableString("imageAtomicOr(01L00D00E").mangledNameHash());
ASSERT_EQ(0x000006d4u, ImmutableString("imageAtomicOr(01M00D00E").mangledNameHash());
ASSERT_EQ(0x000006d5u, ImmutableString("imageAtomicOr(01N00D00E").mangledNameHash());
ASSERT_EQ(0x000006d6u, ImmutableString("imageAtomicOr(01O10D00E").mangledNameHash());
ASSERT_EQ(0x000006d7u, ImmutableString("imageAtomicOr(01P10D00E").mangledNameHash());
ASSERT_EQ(0x000006d8u, ImmutableString("imageAtomicOr(01Q10D00E").mangledNameHash());
ASSERT_EQ(0x000006d9u, ImmutableString("imageAtomicOr(01X10D00E").mangledNameHash());
ASSERT_EQ(0x000006dau, ImmutableString("imageAtomicOr(01Y10D00E").mangledNameHash());
ASSERT_EQ(0x000006dbu, ImmutableString("imageAtomicOr(01Z10D00E").mangledNameHash());
ASSERT_EQ(0x000006d9u, ImmutableString("imageAtomicOr(01a10D00E").mangledNameHash());
ASSERT_EQ(0x000006dau, ImmutableString("imageAtomicOr(01b10D00E").mangledNameHash());
ASSERT_EQ(0x000006dbu, ImmutableString("imageAtomicOr(01c10D00E").mangledNameHash());
ASSERT_EQ(0x000006dcu, ImmutableString("imageAtomicOr(01R10D00D00E").mangledNameHash());
ASSERT_EQ(0x000006ddu, ImmutableString("imageAtomicOr(01S10D00D00E").mangledNameHash());
ASSERT_EQ(0x000006deu, ImmutableString("imageAtomicOr(01T10D00D00E").mangledNameHash());
......@@ -1823,24 +1823,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x000006e8u, ImmutableString("imageAtomicOr(01I20D00D").mangledNameHash());
ASSERT_EQ(0x000006e9u, ImmutableString("imageAtomicOr(01J20D00D").mangledNameHash());
ASSERT_EQ(0x000006eau, ImmutableString("imageAtomicOr(01K20D00D").mangledNameHash());
ASSERT_EQ(0x000006ebu, ImmutableString("imageAtomicOr(01g00D00D").mangledNameHash());
ASSERT_EQ(0x000006ecu, ImmutableString("imageAtomicOr(01h00D00D").mangledNameHash());
ASSERT_EQ(0x000006edu, ImmutableString("imageAtomicOr(01i00D00D").mangledNameHash());
ASSERT_EQ(0x000006ebu, ImmutableString("imageAtomicOr(01d00D00D").mangledNameHash());
ASSERT_EQ(0x000006ecu, ImmutableString("imageAtomicOr(01e00D00D").mangledNameHash());
ASSERT_EQ(0x000006edu, ImmutableString("imageAtomicOr(01f00D00D").mangledNameHash());
ASSERT_EQ(0x000006eeu, ImmutableString("imageAtomicOr(01F20D00D").mangledNameHash());
ASSERT_EQ(0x000006efu, ImmutableString("imageAtomicOr(01G20D00D").mangledNameHash());
ASSERT_EQ(0x000006f0u, ImmutableString("imageAtomicOr(01H20D00D").mangledNameHash());
ASSERT_EQ(0x000006f1u, ImmutableString("imageAtomicOr(01a20D00D").mangledNameHash());
ASSERT_EQ(0x000006f2u, ImmutableString("imageAtomicOr(01b20D00D").mangledNameHash());
ASSERT_EQ(0x000006f3u, ImmutableString("imageAtomicOr(01c20D00D").mangledNameHash());
ASSERT_EQ(0x000006f1u, ImmutableString("imageAtomicOr(01X20D00D").mangledNameHash());
ASSERT_EQ(0x000006f2u, ImmutableString("imageAtomicOr(01Y20D00D").mangledNameHash());
ASSERT_EQ(0x000006f3u, ImmutableString("imageAtomicOr(01Z20D00D").mangledNameHash());
ASSERT_EQ(0x000006f4u, ImmutableString("imageAtomicOr(01L00D00D").mangledNameHash());
ASSERT_EQ(0x000006f5u, ImmutableString("imageAtomicOr(01M00D00D").mangledNameHash());
ASSERT_EQ(0x000006f6u, ImmutableString("imageAtomicOr(01N00D00D").mangledNameHash());
ASSERT_EQ(0x000006f7u, ImmutableString("imageAtomicOr(01O10D00D").mangledNameHash());
ASSERT_EQ(0x000006f8u, ImmutableString("imageAtomicOr(01P10D00D").mangledNameHash());
ASSERT_EQ(0x000006f9u, ImmutableString("imageAtomicOr(01Q10D00D").mangledNameHash());
ASSERT_EQ(0x000006fau, ImmutableString("imageAtomicOr(01X10D00D").mangledNameHash());
ASSERT_EQ(0x000006fbu, ImmutableString("imageAtomicOr(01Y10D00D").mangledNameHash());
ASSERT_EQ(0x000006fcu, ImmutableString("imageAtomicOr(01Z10D00D").mangledNameHash());
ASSERT_EQ(0x000006fau, ImmutableString("imageAtomicOr(01a10D00D").mangledNameHash());
ASSERT_EQ(0x000006fbu, ImmutableString("imageAtomicOr(01b10D00D").mangledNameHash());
ASSERT_EQ(0x000006fcu, ImmutableString("imageAtomicOr(01c10D00D").mangledNameHash());
ASSERT_EQ(0x000006fdu, ImmutableString("imageAtomicOr(01R10D00D00D").mangledNameHash());
ASSERT_EQ(0x000006feu, ImmutableString("imageAtomicOr(01S10D00D00D").mangledNameHash());
ASSERT_EQ(0x000006ffu, ImmutableString("imageAtomicOr(01T10D00D00D").mangledNameHash());
......@@ -1856,24 +1856,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x00000709u, ImmutableString("imageAtomicXor(01I20D00E").mangledNameHash());
ASSERT_EQ(0x0000070au, ImmutableString("imageAtomicXor(01J20D00E").mangledNameHash());
ASSERT_EQ(0x0000070bu, ImmutableString("imageAtomicXor(01K20D00E").mangledNameHash());
ASSERT_EQ(0x0000070cu, ImmutableString("imageAtomicXor(01g00D00E").mangledNameHash());
ASSERT_EQ(0x0000070du, ImmutableString("imageAtomicXor(01h00D00E").mangledNameHash());
ASSERT_EQ(0x0000070eu, ImmutableString("imageAtomicXor(01i00D00E").mangledNameHash());
ASSERT_EQ(0x0000070cu, ImmutableString("imageAtomicXor(01d00D00E").mangledNameHash());
ASSERT_EQ(0x0000070du, ImmutableString("imageAtomicXor(01e00D00E").mangledNameHash());
ASSERT_EQ(0x0000070eu, ImmutableString("imageAtomicXor(01f00D00E").mangledNameHash());
ASSERT_EQ(0x0000070fu, ImmutableString("imageAtomicXor(01F20D00E").mangledNameHash());
ASSERT_EQ(0x00000710u, ImmutableString("imageAtomicXor(01G20D00E").mangledNameHash());
ASSERT_EQ(0x00000711u, ImmutableString("imageAtomicXor(01H20D00E").mangledNameHash());
ASSERT_EQ(0x00000712u, ImmutableString("imageAtomicXor(01a20D00E").mangledNameHash());
ASSERT_EQ(0x00000713u, ImmutableString("imageAtomicXor(01b20D00E").mangledNameHash());
ASSERT_EQ(0x00000714u, ImmutableString("imageAtomicXor(01c20D00E").mangledNameHash());
ASSERT_EQ(0x00000712u, ImmutableString("imageAtomicXor(01X20D00E").mangledNameHash());
ASSERT_EQ(0x00000713u, ImmutableString("imageAtomicXor(01Y20D00E").mangledNameHash());
ASSERT_EQ(0x00000714u, ImmutableString("imageAtomicXor(01Z20D00E").mangledNameHash());
ASSERT_EQ(0x00000715u, ImmutableString("imageAtomicXor(01L00D00E").mangledNameHash());
ASSERT_EQ(0x00000716u, ImmutableString("imageAtomicXor(01M00D00E").mangledNameHash());
ASSERT_EQ(0x00000717u, ImmutableString("imageAtomicXor(01N00D00E").mangledNameHash());
ASSERT_EQ(0x00000718u, ImmutableString("imageAtomicXor(01O10D00E").mangledNameHash());
ASSERT_EQ(0x00000719u, ImmutableString("imageAtomicXor(01P10D00E").mangledNameHash());
ASSERT_EQ(0x0000071au, ImmutableString("imageAtomicXor(01Q10D00E").mangledNameHash());
ASSERT_EQ(0x0000071bu, ImmutableString("imageAtomicXor(01X10D00E").mangledNameHash());
ASSERT_EQ(0x0000071cu, ImmutableString("imageAtomicXor(01Y10D00E").mangledNameHash());
ASSERT_EQ(0x0000071du, ImmutableString("imageAtomicXor(01Z10D00E").mangledNameHash());
ASSERT_EQ(0x0000071bu, ImmutableString("imageAtomicXor(01a10D00E").mangledNameHash());
ASSERT_EQ(0x0000071cu, ImmutableString("imageAtomicXor(01b10D00E").mangledNameHash());
ASSERT_EQ(0x0000071du, ImmutableString("imageAtomicXor(01c10D00E").mangledNameHash());
ASSERT_EQ(0x0000071eu, ImmutableString("imageAtomicXor(01R10D00D00E").mangledNameHash());
ASSERT_EQ(0x0000071fu, ImmutableString("imageAtomicXor(01S10D00D00E").mangledNameHash());
ASSERT_EQ(0x00000720u, ImmutableString("imageAtomicXor(01T10D00D00E").mangledNameHash());
......@@ -1889,24 +1889,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x0000072au, ImmutableString("imageAtomicXor(01I20D00D").mangledNameHash());
ASSERT_EQ(0x0000072bu, ImmutableString("imageAtomicXor(01J20D00D").mangledNameHash());
ASSERT_EQ(0x0000072cu, ImmutableString("imageAtomicXor(01K20D00D").mangledNameHash());
ASSERT_EQ(0x0000072du, ImmutableString("imageAtomicXor(01g00D00D").mangledNameHash());
ASSERT_EQ(0x0000072eu, ImmutableString("imageAtomicXor(01h00D00D").mangledNameHash());
ASSERT_EQ(0x0000072fu, ImmutableString("imageAtomicXor(01i00D00D").mangledNameHash());
ASSERT_EQ(0x0000072du, ImmutableString("imageAtomicXor(01d00D00D").mangledNameHash());
ASSERT_EQ(0x0000072eu, ImmutableString("imageAtomicXor(01e00D00D").mangledNameHash());
ASSERT_EQ(0x0000072fu, ImmutableString("imageAtomicXor(01f00D00D").mangledNameHash());
ASSERT_EQ(0x00000730u, ImmutableString("imageAtomicXor(01F20D00D").mangledNameHash());
ASSERT_EQ(0x00000731u, ImmutableString("imageAtomicXor(01G20D00D").mangledNameHash());
ASSERT_EQ(0x00000732u, ImmutableString("imageAtomicXor(01H20D00D").mangledNameHash());
ASSERT_EQ(0x00000733u, ImmutableString("imageAtomicXor(01a20D00D").mangledNameHash());
ASSERT_EQ(0x00000734u, ImmutableString("imageAtomicXor(01b20D00D").mangledNameHash());
ASSERT_EQ(0x00000735u, ImmutableString("imageAtomicXor(01c20D00D").mangledNameHash());
ASSERT_EQ(0x00000733u, ImmutableString("imageAtomicXor(01X20D00D").mangledNameHash());
ASSERT_EQ(0x00000734u, ImmutableString("imageAtomicXor(01Y20D00D").mangledNameHash());
ASSERT_EQ(0x00000735u, ImmutableString("imageAtomicXor(01Z20D00D").mangledNameHash());
ASSERT_EQ(0x00000736u, ImmutableString("imageAtomicXor(01L00D00D").mangledNameHash());
ASSERT_EQ(0x00000737u, ImmutableString("imageAtomicXor(01M00D00D").mangledNameHash());
ASSERT_EQ(0x00000738u, ImmutableString("imageAtomicXor(01N00D00D").mangledNameHash());
ASSERT_EQ(0x00000739u, ImmutableString("imageAtomicXor(01O10D00D").mangledNameHash());
ASSERT_EQ(0x0000073au, ImmutableString("imageAtomicXor(01P10D00D").mangledNameHash());
ASSERT_EQ(0x0000073bu, ImmutableString("imageAtomicXor(01Q10D00D").mangledNameHash());
ASSERT_EQ(0x0000073cu, ImmutableString("imageAtomicXor(01X10D00D").mangledNameHash());
ASSERT_EQ(0x0000073du, ImmutableString("imageAtomicXor(01Y10D00D").mangledNameHash());
ASSERT_EQ(0x0000073eu, ImmutableString("imageAtomicXor(01Z10D00D").mangledNameHash());
ASSERT_EQ(0x0000073cu, ImmutableString("imageAtomicXor(01a10D00D").mangledNameHash());
ASSERT_EQ(0x0000073du, ImmutableString("imageAtomicXor(01b10D00D").mangledNameHash());
ASSERT_EQ(0x0000073eu, ImmutableString("imageAtomicXor(01c10D00D").mangledNameHash());
ASSERT_EQ(0x0000073fu, ImmutableString("imageAtomicXor(01R10D00D00D").mangledNameHash());
ASSERT_EQ(0x00000740u, ImmutableString("imageAtomicXor(01S10D00D00D").mangledNameHash());
ASSERT_EQ(0x00000741u, ImmutableString("imageAtomicXor(01T10D00D00D").mangledNameHash());
......@@ -1922,24 +1922,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x0000074bu, ImmutableString("imageAtomicExchange(01I20D00E").mangledNameHash());
ASSERT_EQ(0x0000074cu, ImmutableString("imageAtomicExchange(01J20D00E").mangledNameHash());
ASSERT_EQ(0x0000074du, ImmutableString("imageAtomicExchange(01K20D00E").mangledNameHash());
ASSERT_EQ(0x0000074eu, ImmutableString("imageAtomicExchange(01g00D00E").mangledNameHash());
ASSERT_EQ(0x0000074fu, ImmutableString("imageAtomicExchange(01h00D00E").mangledNameHash());
ASSERT_EQ(0x00000750u, ImmutableString("imageAtomicExchange(01i00D00E").mangledNameHash());
ASSERT_EQ(0x0000074eu, ImmutableString("imageAtomicExchange(01d00D00E").mangledNameHash());
ASSERT_EQ(0x0000074fu, ImmutableString("imageAtomicExchange(01e00D00E").mangledNameHash());
ASSERT_EQ(0x00000750u, ImmutableString("imageAtomicExchange(01f00D00E").mangledNameHash());
ASSERT_EQ(0x00000751u, ImmutableString("imageAtomicExchange(01F20D00E").mangledNameHash());
ASSERT_EQ(0x00000752u, ImmutableString("imageAtomicExchange(01G20D00E").mangledNameHash());
ASSERT_EQ(0x00000753u, ImmutableString("imageAtomicExchange(01H20D00E").mangledNameHash());
ASSERT_EQ(0x00000754u, ImmutableString("imageAtomicExchange(01a20D00E").mangledNameHash());
ASSERT_EQ(0x00000755u, ImmutableString("imageAtomicExchange(01b20D00E").mangledNameHash());
ASSERT_EQ(0x00000756u, ImmutableString("imageAtomicExchange(01c20D00E").mangledNameHash());
ASSERT_EQ(0x00000754u, ImmutableString("imageAtomicExchange(01X20D00E").mangledNameHash());
ASSERT_EQ(0x00000755u, ImmutableString("imageAtomicExchange(01Y20D00E").mangledNameHash());
ASSERT_EQ(0x00000756u, ImmutableString("imageAtomicExchange(01Z20D00E").mangledNameHash());
ASSERT_EQ(0x00000757u, ImmutableString("imageAtomicExchange(01L00D00E").mangledNameHash());
ASSERT_EQ(0x00000758u, ImmutableString("imageAtomicExchange(01M00D00E").mangledNameHash());
ASSERT_EQ(0x00000759u, ImmutableString("imageAtomicExchange(01N00D00E").mangledNameHash());
ASSERT_EQ(0x0000075au, ImmutableString("imageAtomicExchange(01O10D00E").mangledNameHash());
ASSERT_EQ(0x0000075bu, ImmutableString("imageAtomicExchange(01P10D00E").mangledNameHash());
ASSERT_EQ(0x0000075cu, ImmutableString("imageAtomicExchange(01Q10D00E").mangledNameHash());
ASSERT_EQ(0x0000075du, ImmutableString("imageAtomicExchange(01X10D00E").mangledNameHash());
ASSERT_EQ(0x0000075eu, ImmutableString("imageAtomicExchange(01Y10D00E").mangledNameHash());
ASSERT_EQ(0x0000075fu, ImmutableString("imageAtomicExchange(01Z10D00E").mangledNameHash());
ASSERT_EQ(0x0000075du, ImmutableString("imageAtomicExchange(01a10D00E").mangledNameHash());
ASSERT_EQ(0x0000075eu, ImmutableString("imageAtomicExchange(01b10D00E").mangledNameHash());
ASSERT_EQ(0x0000075fu, ImmutableString("imageAtomicExchange(01c10D00E").mangledNameHash());
ASSERT_EQ(0x00000760u, ImmutableString("imageAtomicExchange(01R10D00D00E").mangledNameHash());
ASSERT_EQ(0x00000761u, ImmutableString("imageAtomicExchange(01S10D00D00E").mangledNameHash());
ASSERT_EQ(0x00000762u, ImmutableString("imageAtomicExchange(01T10D00D00E").mangledNameHash());
......@@ -1955,24 +1955,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x0000076cu, ImmutableString("imageAtomicExchange(01I20D00D").mangledNameHash());
ASSERT_EQ(0x0000076du, ImmutableString("imageAtomicExchange(01J20D00D").mangledNameHash());
ASSERT_EQ(0x0000076eu, ImmutableString("imageAtomicExchange(01K20D00D").mangledNameHash());
ASSERT_EQ(0x0000076fu, ImmutableString("imageAtomicExchange(01g00D00D").mangledNameHash());
ASSERT_EQ(0x00000770u, ImmutableString("imageAtomicExchange(01h00D00D").mangledNameHash());
ASSERT_EQ(0x00000771u, ImmutableString("imageAtomicExchange(01i00D00D").mangledNameHash());
ASSERT_EQ(0x0000076fu, ImmutableString("imageAtomicExchange(01d00D00D").mangledNameHash());
ASSERT_EQ(0x00000770u, ImmutableString("imageAtomicExchange(01e00D00D").mangledNameHash());
ASSERT_EQ(0x00000771u, ImmutableString("imageAtomicExchange(01f00D00D").mangledNameHash());
ASSERT_EQ(0x00000772u, ImmutableString("imageAtomicExchange(01F20D00D").mangledNameHash());
ASSERT_EQ(0x00000773u, ImmutableString("imageAtomicExchange(01G20D00D").mangledNameHash());
ASSERT_EQ(0x00000774u, ImmutableString("imageAtomicExchange(01H20D00D").mangledNameHash());
ASSERT_EQ(0x00000775u, ImmutableString("imageAtomicExchange(01a20D00D").mangledNameHash());
ASSERT_EQ(0x00000776u, ImmutableString("imageAtomicExchange(01b20D00D").mangledNameHash());
ASSERT_EQ(0x00000777u, ImmutableString("imageAtomicExchange(01c20D00D").mangledNameHash());
ASSERT_EQ(0x00000775u, ImmutableString("imageAtomicExchange(01X20D00D").mangledNameHash());
ASSERT_EQ(0x00000776u, ImmutableString("imageAtomicExchange(01Y20D00D").mangledNameHash());
ASSERT_EQ(0x00000777u, ImmutableString("imageAtomicExchange(01Z20D00D").mangledNameHash());
ASSERT_EQ(0x00000778u, ImmutableString("imageAtomicExchange(01L00D00D").mangledNameHash());
ASSERT_EQ(0x00000779u, ImmutableString("imageAtomicExchange(01M00D00D").mangledNameHash());
ASSERT_EQ(0x0000077au, ImmutableString("imageAtomicExchange(01N00D00D").mangledNameHash());
ASSERT_EQ(0x0000077bu, ImmutableString("imageAtomicExchange(01O10D00D").mangledNameHash());
ASSERT_EQ(0x0000077cu, ImmutableString("imageAtomicExchange(01P10D00D").mangledNameHash());
ASSERT_EQ(0x0000077du, ImmutableString("imageAtomicExchange(01Q10D00D").mangledNameHash());
ASSERT_EQ(0x0000077eu, ImmutableString("imageAtomicExchange(01X10D00D").mangledNameHash());
ASSERT_EQ(0x0000077fu, ImmutableString("imageAtomicExchange(01Y10D00D").mangledNameHash());
ASSERT_EQ(0x00000780u, ImmutableString("imageAtomicExchange(01Z10D00D").mangledNameHash());
ASSERT_EQ(0x0000077eu, ImmutableString("imageAtomicExchange(01a10D00D").mangledNameHash());
ASSERT_EQ(0x0000077fu, ImmutableString("imageAtomicExchange(01b10D00D").mangledNameHash());
ASSERT_EQ(0x00000780u, ImmutableString("imageAtomicExchange(01c10D00D").mangledNameHash());
ASSERT_EQ(0x00000781u, ImmutableString("imageAtomicExchange(01R10D00D00D").mangledNameHash());
ASSERT_EQ(0x00000782u, ImmutableString("imageAtomicExchange(01S10D00D00D").mangledNameHash());
ASSERT_EQ(0x00000783u, ImmutableString("imageAtomicExchange(01T10D00D00D").mangledNameHash());
......@@ -1988,24 +1988,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x0000078du, ImmutableString("imageAtomicExchange(01I20D00B").mangledNameHash());
ASSERT_EQ(0x0000078eu, ImmutableString("imageAtomicExchange(01J20D00B").mangledNameHash());
ASSERT_EQ(0x0000078fu, ImmutableString("imageAtomicExchange(01K20D00B").mangledNameHash());
ASSERT_EQ(0x00000790u, ImmutableString("imageAtomicExchange(01g00D00B").mangledNameHash());
ASSERT_EQ(0x00000791u, ImmutableString("imageAtomicExchange(01h00D00B").mangledNameHash());
ASSERT_EQ(0x00000792u, ImmutableString("imageAtomicExchange(01i00D00B").mangledNameHash());
ASSERT_EQ(0x00000790u, ImmutableString("imageAtomicExchange(01d00D00B").mangledNameHash());
ASSERT_EQ(0x00000791u, ImmutableString("imageAtomicExchange(01e00D00B").mangledNameHash());
ASSERT_EQ(0x00000792u, ImmutableString("imageAtomicExchange(01f00D00B").mangledNameHash());
ASSERT_EQ(0x00000793u, ImmutableString("imageAtomicExchange(01F20D00B").mangledNameHash());
ASSERT_EQ(0x00000794u, ImmutableString("imageAtomicExchange(01G20D00B").mangledNameHash());
ASSERT_EQ(0x00000795u, ImmutableString("imageAtomicExchange(01H20D00B").mangledNameHash());
ASSERT_EQ(0x00000796u, ImmutableString("imageAtomicExchange(01a20D00B").mangledNameHash());
ASSERT_EQ(0x00000797u, ImmutableString("imageAtomicExchange(01b20D00B").mangledNameHash());
ASSERT_EQ(0x00000798u, ImmutableString("imageAtomicExchange(01c20D00B").mangledNameHash());
ASSERT_EQ(0x00000796u, ImmutableString("imageAtomicExchange(01X20D00B").mangledNameHash());
ASSERT_EQ(0x00000797u, ImmutableString("imageAtomicExchange(01Y20D00B").mangledNameHash());
ASSERT_EQ(0x00000798u, ImmutableString("imageAtomicExchange(01Z20D00B").mangledNameHash());
ASSERT_EQ(0x00000799u, ImmutableString("imageAtomicExchange(01L00D00B").mangledNameHash());
ASSERT_EQ(0x0000079au, ImmutableString("imageAtomicExchange(01M00D00B").mangledNameHash());
ASSERT_EQ(0x0000079bu, ImmutableString("imageAtomicExchange(01N00D00B").mangledNameHash());
ASSERT_EQ(0x0000079cu, ImmutableString("imageAtomicExchange(01O10D00B").mangledNameHash());
ASSERT_EQ(0x0000079du, ImmutableString("imageAtomicExchange(01P10D00B").mangledNameHash());
ASSERT_EQ(0x0000079eu, ImmutableString("imageAtomicExchange(01Q10D00B").mangledNameHash());
ASSERT_EQ(0x0000079fu, ImmutableString("imageAtomicExchange(01X10D00B").mangledNameHash());
ASSERT_EQ(0x000007a0u, ImmutableString("imageAtomicExchange(01Y10D00B").mangledNameHash());
ASSERT_EQ(0x000007a1u, ImmutableString("imageAtomicExchange(01Z10D00B").mangledNameHash());
ASSERT_EQ(0x0000079fu, ImmutableString("imageAtomicExchange(01a10D00B").mangledNameHash());
ASSERT_EQ(0x000007a0u, ImmutableString("imageAtomicExchange(01b10D00B").mangledNameHash());
ASSERT_EQ(0x000007a1u, ImmutableString("imageAtomicExchange(01c10D00B").mangledNameHash());
ASSERT_EQ(0x000007a2u, ImmutableString("imageAtomicExchange(01R10D00D00B").mangledNameHash());
ASSERT_EQ(0x000007a3u, ImmutableString("imageAtomicExchange(01S10D00D00B").mangledNameHash());
ASSERT_EQ(0x000007a4u, ImmutableString("imageAtomicExchange(01T10D00D00B").mangledNameHash());
......@@ -2021,24 +2021,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x000007aeu, ImmutableString("imageAtomicCompSwap(01I20D00E00E").mangledNameHash());
ASSERT_EQ(0x000007afu, ImmutableString("imageAtomicCompSwap(01J20D00E00E").mangledNameHash());
ASSERT_EQ(0x000007b0u, ImmutableString("imageAtomicCompSwap(01K20D00E00E").mangledNameHash());
ASSERT_EQ(0x000007b1u, ImmutableString("imageAtomicCompSwap(01g00D00E00E").mangledNameHash());
ASSERT_EQ(0x000007b2u, ImmutableString("imageAtomicCompSwap(01h00D00E00E").mangledNameHash());
ASSERT_EQ(0x000007b3u, ImmutableString("imageAtomicCompSwap(01i00D00E00E").mangledNameHash());
ASSERT_EQ(0x000007b1u, ImmutableString("imageAtomicCompSwap(01d00D00E00E").mangledNameHash());
ASSERT_EQ(0x000007b2u, ImmutableString("imageAtomicCompSwap(01e00D00E00E").mangledNameHash());
ASSERT_EQ(0x000007b3u, ImmutableString("imageAtomicCompSwap(01f00D00E00E").mangledNameHash());
ASSERT_EQ(0x000007b4u, ImmutableString("imageAtomicCompSwap(01F20D00E00E").mangledNameHash());
ASSERT_EQ(0x000007b5u, ImmutableString("imageAtomicCompSwap(01G20D00E00E").mangledNameHash());
ASSERT_EQ(0x000007b6u, ImmutableString("imageAtomicCompSwap(01H20D00E00E").mangledNameHash());
ASSERT_EQ(0x000007b7u, ImmutableString("imageAtomicCompSwap(01a20D00E00E").mangledNameHash());
ASSERT_EQ(0x000007b8u, ImmutableString("imageAtomicCompSwap(01b20D00E00E").mangledNameHash());
ASSERT_EQ(0x000007b9u, ImmutableString("imageAtomicCompSwap(01c20D00E00E").mangledNameHash());
ASSERT_EQ(0x000007b7u, ImmutableString("imageAtomicCompSwap(01X20D00E00E").mangledNameHash());
ASSERT_EQ(0x000007b8u, ImmutableString("imageAtomicCompSwap(01Y20D00E00E").mangledNameHash());
ASSERT_EQ(0x000007b9u, ImmutableString("imageAtomicCompSwap(01Z20D00E00E").mangledNameHash());
ASSERT_EQ(0x000007bau, ImmutableString("imageAtomicCompSwap(01L00D00E00E").mangledNameHash());
ASSERT_EQ(0x000007bbu, ImmutableString("imageAtomicCompSwap(01M00D00E00E").mangledNameHash());
ASSERT_EQ(0x000007bcu, ImmutableString("imageAtomicCompSwap(01N00D00E00E").mangledNameHash());
ASSERT_EQ(0x000007bdu, ImmutableString("imageAtomicCompSwap(01O10D00E00E").mangledNameHash());
ASSERT_EQ(0x000007beu, ImmutableString("imageAtomicCompSwap(01P10D00E00E").mangledNameHash());
ASSERT_EQ(0x000007bfu, ImmutableString("imageAtomicCompSwap(01Q10D00E00E").mangledNameHash());
ASSERT_EQ(0x000007c0u, ImmutableString("imageAtomicCompSwap(01X10D00E00E").mangledNameHash());
ASSERT_EQ(0x000007c1u, ImmutableString("imageAtomicCompSwap(01Y10D00E00E").mangledNameHash());
ASSERT_EQ(0x000007c2u, ImmutableString("imageAtomicCompSwap(01Z10D00E00E").mangledNameHash());
ASSERT_EQ(0x000007c0u, ImmutableString("imageAtomicCompSwap(01a10D00E00E").mangledNameHash());
ASSERT_EQ(0x000007c1u, ImmutableString("imageAtomicCompSwap(01b10D00E00E").mangledNameHash());
ASSERT_EQ(0x000007c2u, ImmutableString("imageAtomicCompSwap(01c10D00E00E").mangledNameHash());
ASSERT_EQ(0x000007c3u,
ImmutableString("imageAtomicCompSwap(01R10D00D00E00E").mangledNameHash());
ASSERT_EQ(0x000007c4u,
......@@ -2060,24 +2060,24 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x000007cfu, ImmutableString("imageAtomicCompSwap(01I20D00D00D").mangledNameHash());
ASSERT_EQ(0x000007d0u, ImmutableString("imageAtomicCompSwap(01J20D00D00D").mangledNameHash());
ASSERT_EQ(0x000007d1u, ImmutableString("imageAtomicCompSwap(01K20D00D00D").mangledNameHash());
ASSERT_EQ(0x000007d2u, ImmutableString("imageAtomicCompSwap(01g00D00D00D").mangledNameHash());
ASSERT_EQ(0x000007d3u, ImmutableString("imageAtomicCompSwap(01h00D00D00D").mangledNameHash());
ASSERT_EQ(0x000007d4u, ImmutableString("imageAtomicCompSwap(01i00D00D00D").mangledNameHash());
ASSERT_EQ(0x000007d2u, ImmutableString("imageAtomicCompSwap(01d00D00D00D").mangledNameHash());
ASSERT_EQ(0x000007d3u, ImmutableString("imageAtomicCompSwap(01e00D00D00D").mangledNameHash());
ASSERT_EQ(0x000007d4u, ImmutableString("imageAtomicCompSwap(01f00D00D00D").mangledNameHash());
ASSERT_EQ(0x000007d5u, ImmutableString("imageAtomicCompSwap(01F20D00D00D").mangledNameHash());
ASSERT_EQ(0x000007d6u, ImmutableString("imageAtomicCompSwap(01G20D00D00D").mangledNameHash());
ASSERT_EQ(0x000007d7u, ImmutableString("imageAtomicCompSwap(01H20D00D00D").mangledNameHash());
ASSERT_EQ(0x000007d8u, ImmutableString("imageAtomicCompSwap(01a20D00D00D").mangledNameHash());
ASSERT_EQ(0x000007d9u, ImmutableString("imageAtomicCompSwap(01b20D00D00D").mangledNameHash());
ASSERT_EQ(0x000007dau, ImmutableString("imageAtomicCompSwap(01c20D00D00D").mangledNameHash());
ASSERT_EQ(0x000007d8u, ImmutableString("imageAtomicCompSwap(01X20D00D00D").mangledNameHash());
ASSERT_EQ(0x000007d9u, ImmutableString("imageAtomicCompSwap(01Y20D00D00D").mangledNameHash());
ASSERT_EQ(0x000007dau, ImmutableString("imageAtomicCompSwap(01Z20D00D00D").mangledNameHash());
ASSERT_EQ(0x000007dbu, ImmutableString("imageAtomicCompSwap(01L00D00D00D").mangledNameHash());
ASSERT_EQ(0x000007dcu, ImmutableString("imageAtomicCompSwap(01M00D00D00D").mangledNameHash());
ASSERT_EQ(0x000007ddu, ImmutableString("imageAtomicCompSwap(01N00D00D00D").mangledNameHash());
ASSERT_EQ(0x000007deu, ImmutableString("imageAtomicCompSwap(01O10D00D00D").mangledNameHash());
ASSERT_EQ(0x000007dfu, ImmutableString("imageAtomicCompSwap(01P10D00D00D").mangledNameHash());
ASSERT_EQ(0x000007e0u, ImmutableString("imageAtomicCompSwap(01Q10D00D00D").mangledNameHash());
ASSERT_EQ(0x000007e1u, ImmutableString("imageAtomicCompSwap(01X10D00D00D").mangledNameHash());
ASSERT_EQ(0x000007e2u, ImmutableString("imageAtomicCompSwap(01Y10D00D00D").mangledNameHash());
ASSERT_EQ(0x000007e3u, ImmutableString("imageAtomicCompSwap(01Z10D00D00D").mangledNameHash());
ASSERT_EQ(0x000007e1u, ImmutableString("imageAtomicCompSwap(01a10D00D00D").mangledNameHash());
ASSERT_EQ(0x000007e2u, ImmutableString("imageAtomicCompSwap(01b10D00D00D").mangledNameHash());
ASSERT_EQ(0x000007e3u, ImmutableString("imageAtomicCompSwap(01c10D00D00D").mangledNameHash());
ASSERT_EQ(0x000007e4u,
ImmutableString("imageAtomicCompSwap(01R10D00D00D00D").mangledNameHash());
ASSERT_EQ(0x000007e5u,
......@@ -2117,12 +2117,12 @@ TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
ASSERT_EQ(0x00000802u, ImmutableString("EndPrimitive(").mangledNameHash());
ASSERT_EQ(0x00000803u, ImmutableString("EmitStreamVertex(00D").mangledNameHash());
ASSERT_EQ(0x00000804u, ImmutableString("EndStreamPrimitive(00D").mangledNameHash());
ASSERT_EQ(0x00000805u, ImmutableString("subpassLoad(01j").mangledNameHash());
ASSERT_EQ(0x00000806u, ImmutableString("subpassLoad(01k").mangledNameHash());
ASSERT_EQ(0x00000807u, ImmutableString("subpassLoad(01l").mangledNameHash());
ASSERT_EQ(0x00000808u, ImmutableString("subpassLoad(01m00D").mangledNameHash());
ASSERT_EQ(0x00000809u, ImmutableString("subpassLoad(01n00D").mangledNameHash());
ASSERT_EQ(0x0000080au, ImmutableString("subpassLoad(01o00D").mangledNameHash());
ASSERT_EQ(0x00000805u, ImmutableString("subpassLoad(01g").mangledNameHash());
ASSERT_EQ(0x00000806u, ImmutableString("subpassLoad(01h").mangledNameHash());
ASSERT_EQ(0x00000807u, ImmutableString("subpassLoad(01i").mangledNameHash());
ASSERT_EQ(0x00000808u, ImmutableString("subpassLoad(01j00D").mangledNameHash());
ASSERT_EQ(0x00000809u, ImmutableString("subpassLoad(01k00D").mangledNameHash());
ASSERT_EQ(0x0000080au, ImmutableString("subpassLoad(01l00D").mangledNameHash());
ASSERT_EQ(0x0000080bu, ImmutableString("anyInvocation(00F").mangledNameHash());
ASSERT_EQ(0x0000080cu, ImmutableString("allInvocations(00F").mangledNameHash());
ASSERT_EQ(0x0000080du, ImmutableString("allInvocationsEqual(00F").mangledNameHash());
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment