// GENERATED FILE - DO NOT EDIT.
// Generated by gen_builtin_symbols.py using data from builtin_variables.json and
// builtin_function_declarations.txt.
//
// Copyright 2020 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// ImmutableString_autogen.cpp: Wrapper for static or pool allocated char arrays, that are
// guaranteed to be valid and unchanged for the duration of the compilation. Implements
// mangledNameHash using perfect hash function from gen_builtin_symbols.py

#include "compiler/translator/ImmutableString.h"

namespace sh
{

std::ostream &operator<<(std::ostream &os, const ImmutableString &str)
{
    return os.write(str.data(), str.length());
}

}  // namespace sh

#if defined(_MSC_VER)
#    pragma warning(disable : 4309)  // truncation of constant value
#endif

namespace
{

constexpr int mangledkT1[] = {243,  1411, 674,  1682, 320,  3003, 2730, 1775, 2251, 2839,
                              595,  1906, 1991, 2897, 28,   445,  1551, 407,  1678, 521,
                              1582, 2176, 129,  680,  2437, 730,  1853, 2069, 185,  1985,
                              1590, 1097, 2679, 2497, 2228, 2674, 2592, 2671, 2686, 166};
constexpr int mangledkT2[] = {2703, 1866, 1948, 2198, 2747, 2641, 1286, 55,   1534, 94,
                              337,  1013, 2156, 238,  2760, 1952, 2355, 2323, 1244, 2345,
                              22,   2347, 888,  726,  1892, 782,  45,   2085, 1927, 3078,
                              1859, 1384, 2519, 407,  696,  2356, 2752, 2952, 1833, 1987};
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,    511,  0,    0,    0,    0,    2988, 0,    0,    433,  0,    0,    0,    0,    0,
    0,    0,    0,    0,    170,  0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
    0,    0,    1836, 0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
    0,    0,    0,    0,    0,    0,    0,    0,    79,   0,    0,    0,    0,    0,    0,    0,
    241,  0,    0,    0,    1063, 0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
    197,  0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    2309, 0,    0,    0,
    0,    0,    0,    0,    0,    0,    0,    0,    1369, 0,    0,    0,    0,    0,    0,    0,
    0,    0,    0,    0,    0,    0,    0,    0,    0,    2056, 2788, 2630, 370,  0,    0,    0,
    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
    619,  0,    0,    0,    0,    0,    0,    0,    0,    0,    2602, 0,    0,    0,    1257, 459,
    2666, 381,  0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
    0,    0,    1339, 0,    20,   0,    0,    0,    0,    0,    0,    532,  903,  668,  0,    0,
    0,    0,    2528, 0,    0,    0,    0,    0,    0,    0,    278,  2885, 0,    2906, 0,    0,
    0,    0,    1420, 0,    0,    0,    0,    0,    0,    0,    326,  0,    0,    1975, 587,  0,
    0,    0,    0,    0,    0,    0,    859,  289,  0,    0,    2227, 0,    0,    0,    830,  0,
    0,    0,    0,    0,    690,  24,   1006, 0,    0,    1022, 0,    2531, 0,    0,    0,    0,
    0,    0,    0,    1021, 0,    0,    0,    0,    0,    3050, 0,    0,    0,    0,    0,    0,
    0,    0,    1311, 0,    2856, 0,    92,   0,    0,    0,    2759, 0,    0,    2071, 0,    1013,
    977,  0,    0,    0,    1019, 366,  0,    0,    270,  0,    2877, 0,    488,  0,    0,    2928,
    2907, 777,  0,    0,    0,    0,    0,    2951, 0,    358,  0,    0,    2665, 1329, 0,    0,
    0,    0,    0,    0,    0,    184,  2072, 0,    0,    0,    0,    0,    0,    0,    2953, 0,
    0,    0,    0,    0,    0,    0,    1293, 0,    0,    0,    443,  0,    0,    0,    0,    903,
    1420, 0,    0,    2843, 0,    1430, 0,    0,    2088, 0,    1148, 0,    1980, 2475, 0,    315,
    0,    0,    530,  0,    763,  0,    0,    0,    0,    761,  0,    0,    373,  0,    0,    0,
    0,    0,    0,    0,    0,    1429, 0,    398,  0,    0,    0,    0,    641,  159,  0,    0,
    0,    1108, 0,    0,    695,  0,    0,    2145, 0,    0,    2819, 391,  0,    0,    2000, 0,
    0,    788,  0,    2089, 0,    0,    0,    0,    2779, 0,    0,    187,  2562, 569,  271,  0,
    0,    2061, 0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    1608, 0,    0,    0,
    0,    1368, 0,    0,    0,    2935, 0,    503,  0,    1189, 0,    0,    0,    1572, 216,  0,
    0,    0,    0,    0,    0,    525,  0,    0,    1084, 0,    590,  0,    0,    0,    964,  420,
    0,    0,    0,    0,    65,   0,    0,    937,  0,    0,    577,  145,  0,    0,    1285, 0,
    0,    139,  0,    0,    0,    0,    0,    0,    0,    0,    334,  0,    909,  0,    0,    2512,
    0,    420,  0,    0,    0,    0,    0,    0,    2456, 0,    0,    0,    0,    759,  961,  0,
    1283, 0,    668,  1067, 1159, 0,    2518, 1277, 0,    560,  2666, 0,    2661, 0,    260,  0,
    0,    0,    644,  0,    2454, 0,    997,  0,    0,    2160, 0,    0,    0,    2112, 2538, 1754,
    0,    972,  0,    0,    0,    7,    682,  0,    1042, 0,    87,   0,    0,    0,    0,    0,
    0,    0,    807,  1887, 0,    0,    0,    3015, 951,  2916, 977,  0,    0,    0,    2920, 2291,
    0,    0,    0,    0,    0,    2740, 0,    0,    0,    0,    135,  0,    0,    0,    0,    105,
    442,  2308, 346,  0,    0,    1020, 0,    405,  608,  172,  0,    1454, 1013, 0,    2811, 1143,
    1365, 0,    0,    0,    0,    0,    0,    1095, 0,    0,    0,    0,    0,    0,    1035, 0,
    535,  0,    0,    0,    0,    0,    0,    0,    0,    0,    2678, 2044, 0,    0,    0,    1423,
    853,  0,    0,    117,  1429, 0,    0,    0,    0,    0,    0,    2590, 0,    0,    470,  0,
    613,  0,    2959, 1195, 0,    0,    1008, 299,  940,  0,    2522, 393,  2290, 0,    0,    0,
    0,    1153, 891,  0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    267,  2926,
    0,    455,  0,    0,    0,    0,    863,  0,    688,  0,    0,    0,    0,    47,   0,    629,
    967,  1080, 0,    0,    1368, 0,    1379, 122,  254,  0,    0,    1176, 0,    0,    0,    0,
    0,    638,  0,    858,  0,    0,    107,  651,  631,  0,    0,    0,    1299, 0,    3010, 2543,
    42,   0,    2661, 0,    0,    31,   1339, 740,  2948, 0,    2930, 246,  1140, 0,    1309, 651,
    0,    1175, 930,  0,    0,    206,  537,  0,    0,    3080, 1178, 937,  0,    0,    0,    0,
    278,  0,    0,    0,    0,    0,    2216, 0,    516,  0,    0,    0,    749,  2675, 0,    0,
    1146, 0,    1408, 1094, 57,   0,    0,    36,   0,    312,  794,  2981, 0,    0,    0,    0,
    154,  828,  0,    171,  0,    0,    0,    271,  0,    0,    0,    0,    0,    0,    1655, 0,
    0,    0,    0,    0,    0,    777,  0,    0,    0,    0,    500,  624,  0,    0,    0,    21,
    1204, 223,  1181, 0,    1286, 1961, 0,    0,    0,    0,    844,  0,    2793, 2572, 1731, 1644,
    0,    0,    0,    647,  0,    0,    2899, 2168, 2784, 585,  0,    598,  0,    0,    0,    0,
    1072, 886,  0,    0,    0,    0,    1536, 0,    0,    0,    968,  0,    1655, 0,    732,  18,
    2967, 2413, 59,   0,    0,    0,    303,  0,    364,  215,  3082, 0,    727,  0,    2145, 1079,
    33,   994,  0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    908,  2387, 2405, 0,
    0,    1177, 431,  31,   0,    0,    243,  0,    0,    0,    0,    995,  0,    0,    0,    330,
    0,    538,  0,    0,    896,  0,    77,   0,    247,  402,  0,    225,  185,  0,    498,  316,
    0,    0,    529,  117,  580,  0,    0,    0,    0,    229,  0,    0,    1001, 0,    567,  0,
    0,    0,    0,    0,    0,    0,    2970, 934,  2921, 0,    1284, 0,    472,  1340, 2554, 0,
    0,    3074, 481,  0,    2311, 0,    0,    206,  2688, 2753, 2281, 812,  1379, 0,    0,    0,
    0,    2820, 0,    0,    0,    714,  0,    0,    300,  2591, 942,  0,    0,    0,    0,    0,
    0,    0,    47,   2289, 0,    2737, 485,  0,    3030, 0,    146,  0,    0,    1240, 0,    0,
    0,    0,    0,    2925, 0,    0,    0,    0,    0,    2233, 628,  0,    1115, 321,  0,    0,
    1746, 0,    1029, 2622, 0,    0,    0,    2256, 2545, 101,  0,    0,    362,  0,    654,  0,
    0,    1299, 0,    0,    0,    566,  0,    476,  0,    2532, 270,  466,  0,    0,    1103, 0,
    0,    2303, 0,    118,  69,   0,    2364, 0,    434,  0,    0,    2856, 0,    523,  264,  2387,
    2184, 2114, 0,    477,  0,    0,    0,    0,    686,  653,  392,  0,    0,    0,    717,  0,
    0,    1286, 1377, 0,    501,  2893, 0,    0,    0,    0,    1345, 0,    2126, 1277, 1228, 558,
    1319, 1310, 0,    675,  0,    0,    2046, 0,    0,    158,  582,  194,  0,    0,    2736, 1136,
    365,  2864, 0,    2931, 0,    0,    550,  247,  2133, 123,  0,    617,  0,    0,    859,  0,
    0,    0,    0,    1234, 0,    1358, 81,   2202, 871,  672,  0,    0,    836,  99,   1120, 0,
    205,  802,  139,  2317, 0,    0,    0,    0,    0,    337,  554,  1287, 0,    0,    0,    1431,
    0,    0,    0,    0,    0,    259,  0,    382,  0,    0,    2928, 3075, 568,  592,  0,    0,
    0,    309,  2212, 41,   2538, 0,    0,    0,    0,    67,   1510, 0,    0,    0,    371,  839,
    93,   2817, 0,    0,    0,    0,    1853, 0,    110,  0,    2912, 0,    0,    0,    589,  3039,
    0,    383,  1128, 849,  0,    0,    0,    1331, 2873, 1397, 0,    1450, 0,    0,    0,    0,
    10,   1316, 614,  0,    3092, 2300, 0,    0,    0,    0,    1028, 1021, 0,    0,    939,  2202,
    0,    1381, 2818, 2366, 2728, 0,    710,  1271, 0,    426,  0,    0,    1152, 0,    0,    0,
    0,    646,  0,    706,  865,  429,  1202, 0,    0,    0,    1383, 1586, 0,    474,  2135, 555,
    0,    2245, 991,  1124, 2777, 0,    280,  0,    1294, 0,    2979, 0,    0,    3082, 1604, 96,
    2939, 261,  1389, 0,    0,    0,    1239, 0,    0,    0,    0,    0,    0,    2130, 33,   0,
    338,  0,    1972, 320,  375,  88,   0,    498,  0,    872,  0,    0,    0,    2447, 0,    0,
    0,    0,    0,    928,  1032, 0,    0,    2787, 0,    815,  1012, 0,    0,    0,    0,    0,
    0,    97,   594,  0,    0,    0,    0,    0,    0,    573,  499,  462,  142,  511,  0,    0,
    0,    394,  855,  0,    0,    683,  0,    2814, 482,  1224, 2544, 0,    0,    735,  0,    0,
    623,  2316, 76,   2831, 0,    198,  1336, 0,    0,    0,    0,    0,    0,    2181, 0,    2366,
    0,    0,    674,  0,    0,    0,    0,    0,    656,  49,   0,    2150, 2685, 0,    363,  895,
    0,    0,    0,    182,  0,    0,    2974, 0,    2879, 533,  0,    0,    0,    0,    0,    0,
    722,  1158, 0,    0,    859,  0,    1274, 0,    0,    0,    0,    911,  1390, 1418, 2947, 0,
    2981, 0,    2163, 250,  3078, 0,    0,    0,    2952, 0,    0,    425,  2786, 0,    0,    0,
    0,    0,    0,    0,    880,  828,  741,  728,  2530, 112,  350,  1324, 0,    1134, 2894, 0,
    2945, 1497, 326,  0,    747,  147,  2952, 502,  0,    0,    0,    2721, 2322, 454,  0,    119,
    0,    0,    982,  1355, 0,    100,  0,    3028, 699,  0,    0,    0,    478,  1122, 0,    1191,
    0,    272,  0,    2442, 0,    0,    0,    0,    0,    432,  0,    0,    0,    1410, 0,    0,
    94,   0,    2611, 0,    2008, 1405, 0,    0,    2677, 0,    1243, 0,    0,    0,    0,    530,
    0,    2594, 787,  0,    2086, 1379, 0,    0,    0,    0,    0,    258,  1056, 739,  0,    799,
    411,  0,    0,    0,    0,    2188, 959,  48,   219,  976,  360,  1880, 0,    0,    0,    537,
    0,    40,   823,  2048, 0,    814,  701,  0,    0,    0,    1544, 1726, 0,    0,    2103, 2533,
    0,    2955, 2913, 435,  0,    1148, 1002, 2156, 0,    0,    0,    0,    11,   0,    457,  1207,
    0,    2177, 632,  0,    0,    45,   0,    1494, 0,    1815, 0,    0,    0,    0,    0,    492,
    0,    0,    1102, 2880, 0,    572,  77,   0,    0,    498,  0,    0,    0,    0,    379,  556,
    0,    0,    2392, 0,    0,    527,  0,    1905, 2202, 437,  2390, 2877, 0,    1312, 0,    292,
    363,  0,    634,  0,    2304, 0,    739,  0,    570,  0,    0,    2647, 912,  658,  0,    0,
    0,    0,    662,  935,  0,    5,    0,    1237, 0,    2222, 2986, 720,  0,    631,  0,    160,
    0,    74,   0,    817,  0,    600,  0,    0,    0,    1089, 12,   0,    1210, 2498, 0,    997,
    803,  0,    623,  0,    0,    2979, 716,  1060, 636,  2987, 0,    0,    0,    2733, 0,    3012,
    0,    0,    0,    41,   301,  0,    0,    246,  0,    0,    0,    2080, 313,  0,    0,    2937,
    0,    261,  0,    0,    0,    0,    0,    0,    0,    0,    822,  1505, 0,    1202, 0,    0,
    207,  1006, 0,    0,    0,    0,    1924, 0,    0,    662,  216,  0,    0,    0,    733,  0,
    0,    0,    0,    0,    419,  2223, 2755, 2554, 0,    692,  111,  65,   0,    0,    158,  2222,
    0,    0,    80,   1993, 0,    0,    640,  49,   2737, 192,  212,  1020, 0,    0,    0,    0,
    0,    0,    2400, 0,    1163, 0,    1236, 0,    1213, 0,    0,    0,    0,    63,   631,  0,
    0,    0,    0,    29,   1343, 2964, 1223, 709,  0,    0,    0,    396,  0,    0,    0,    2265,
    1151, 209,  0,    457,  746,  0,    999,  0,    250,  0,    0,    0,    0,    0,    210,  677,
    1781, 1542, 0,    0,    0,    758,  0,    0,    1166, 516,  0,    0,    0,    0,    284,  404,
    0,    371,  1486, 423,  2670, 0,    1494, 210,  2733, 0,    0,    2699, 0,    2766, 0,    77,
    526,  0,    0,    0,    0,    1038, 226,  2894, 1057, 1434, 0,    810,  0,    310,  462,  0,
    851,  0,    420,  1725, 894,  0,    0,    0,    0,    0,    0,    595,  267,  201,  0,    2398,
    858,  1181, 1624, 2881, 279,  3016, 281,  221,  0,    0,    302,  0,    0,    133,  97,   676,
    899,  0,    0,    1385, 0,    342,  233,  0,    0,    1240, 2865, 0,    0,    0,    0,    2349,
    0,    0,    269,  987,  1235, 2305, 0,    708,  1104, 0,    0,    2910, 0,    881,  108,  0,
    0,    1409, 776,  0,    1009, 0,    0,    0,    685,  1412, 0,    2399, 0,    682,  0,    0,
    749,  886,  0,    0,    820,  1466, 45,   0,    302,  474,  0,    0,    1438, 815,  348,  0,
    0,    0,    0,    0,    0,    1256, 1222, 887,  828,  274,  0,    612,  20,   0,    246,  2245,
    0,    0,    0,    1040, 2376, 1344, 0,    2643, 0,    0,    1189, 3097, 1394, 888,  1206, 1996,
    0,    313,  0,    0,    1405, 0,    0,    2643, 0,    832,  1315, 0,    154,  0,    2384, 1,
    941,  432,  83,   2988, 0,    0,    2448, 1181, 2407, 0,    3085, 0,    512,  190,  380,  817,
    0,    130,  35,   235,  0,    0,    0,    1313, 1414, 0,    58,   923,  0,    217,  1338, 391,
    0,    2173, 0,    915,  0,    0,    471,  0,    998,  0,    373,  38,   941,  386,  0,    2007,
    0,    741,  0,    0,    0,    0,    612,  891,  2959, 0,    2450, 0,    1169, 3019, 0,    69,
    0,    2864, 0,    2477, 6,    2987, 453,  580,  62,   891,  0,    417,  2669, 0,    519,  741,
    0,    1665, 2998, 0,    519,  0,    0,    16,   2454, 245,  0,    1558, 0,    0,    464,  0,
    1214, 0,    0,    123,  2219, 344,  0,    0,    30,   0,    151,  0,    0,    1201, 0,    1471,
    2747, 0,    481,  0,    34,   981,  2456, 2297, 1524, 0,    983,  942,  191,  0,    1193, 0,
    2238, 0,    1042, 0,    0,    215,  0,    0,    326,  0,    1776, 0,    1695, 37,   177,  0,
    2749, 0,    1338, 951,  141,  0,    1423, 890,  1107, 1025, 115,  350,  252,  0,    611,  382,
    834,  2829, 0,    0,    821,  1398, 0,    0,    2797, 0,    0,    1149, 2556, 0,    1337, 247,
    2303, 2554, 2139, 312,  522,  1218, 226,  1542, 0,    2971, 0,    0,    447,  0,    0,    2845,
    156,  0,    0,    0,    1955, 0,    81,   792,  0,    0,    0,    3038, 0,    591,  797,  0,
    827,  1133, 0,    111,  0,    531,  33,   293,  0,    0,    528,  0,    0,    0,    0,    175,
    389,  0,    0,    523,  0,    0,    0,    489,  0,    690,  0,    0,    315,  1307, 0,    2675,
    0,    2467, 126,  0,    0,    0,    0,    195,  2795, 206,  1131, 1026, 382,  1132, 947,  381,
    0,    0,    0,    0,    0,    2964, 0,    0,    940,  0,    2968, 1484, 0,    991,  984,  0,
    0,    0,    0,    162,  1276, 2750, 0,    659,  0,    1196, 0,    0,    1281, 2158, 356,  508,
    0,    0,    0,    0,    227,  0,    0,    1142, 80,   2020, 2349, 0,    0,    434,  0,    0,
    380,  0,    0,    490,  0,    1261, 925,  1119, 784,  409,  0,    179,  3032, 0,    0,    604,
    2809, 1233, 996,  0,    368,  448,  0,    897,  774,  664,  2435, 2545, 797,  0,    1513, 0,
    0,    326,  0,    0,    0,    0,    0,    2125, 486,  277,  2868, 134,  385,  768,  2992, 772,
    0,    0,    855,  2326, 2901, 0,    0,    0,    0,    2791, 0,    1908, 54,   0,    0,    0,
    0,    0,    0,    998,  2668, 658,  604,  0,    298,  97,   640,  820,  713,  314,  750,  1627,
    1408, 0,    0,    0,    1832, 2164, 461,  0,    1283, 1049, 0,    1737, 85,   602,  188,  0,
    2990, 2155, 2339, 113,  0,    150,  2510, 0,    0,    0,    2954, 1535, 0,    0,    1267, 613,
    0,    290,  573,  860,  2587, 3047, 0,    0,    757,  0,    2204, 0,    0,    328,  240,  524,
    0,    3030, 844,  1073, 333,  388,  0,    505,  0,    0,    303,  2477, 0,    0,    0,    594,
    0,    2895, 2307, 121,  0,    0,    0,    0,    2576, 349,  1819, 541,  765,  0,    777,  2619,
    814,  613,  2439, 0,    2341, 503,  334,  0,    0,    0,    2687, 576,  3093, 435,  0,    0,
    0,    558,  0,    521,  641,  0,    542,  2761, 2536, 0,    0,    708,  0,    0,    1741, 1209,
    0,    0,    0,    33,   801,  302,  0,    579,  0,    0,    1326, 0,    0,    0,    0,    0,
    1144, 925,  0,    0,    1180, 0,    2331, 2264, 0,    746,  0,    0,    0,    0,    1177, 618,
    0,    2485, 2190, 0,    2999, 0,    1272, 0,    986,  0,    607,  696,  1290, 0,    962,  1631,
    214,  2804, 496,  0,    0,    0,    750,  2741, 0,    1036, 0,    56,   0,    1262, 0,    1395,
    752,  1241, 1759, 838,  0,    0,    0,    1522, 837,  194,  0,    671,  652,  1798, 999,  0,
    571,  0,    73,   0,    697,  599,  1211, 811,  129,  1041, 0,    2502, 71,   0,    885,  0,
    2966, 0,    0,    1125, 333,  0,    668,  551,  0,    0,    33,   2076, 0,    874,  0,    0,
    0,    2832, 2023, 0,    0,    2575, 0,    550,  0,    2700, 403,  0,    798,  0,    1298, 0,
    1191, 0,    268,  553,  154,  0,    3032, 684,  0,    2407, 2821, 59,   0,    1065, 395,  0,
    1237, 0,    1313, 0,    255,  1454, 1238, 3034, 712,  823,  200,  0,    1027, 0,    0,    0,
    0,    1321, 0,    0,    875,  0,    0,    0,    390,  367,  2930, 408,  0,    0,    60,   1350,
    1133, 3012, 0,    0,    430,  0,    0,    2580, 1707, 2484, 131,  0,    1254, 0,    2883, 79,
    387,  1352, 0,    136,  884,  262,  0,    157,  2136, 2585, 0,    262,  99,   0,    0,    299,
    2592, 0,    0,    1101, 0,    0,    804,  542,  115,  0,    885,  3054, 0,    922,  0,    0,
    23,   0,    0,    0,    734,  1098, 1011, 577,  0,    0,    1361, 0,    0,    0,    0,    983,
    347,  910,  1003, 2912, 0,    1225, 557,  1376, 908,  0,    833,  0,    2106, 0,    517,  0,
    525,  716,  0,    580,  1024, 21,   1245, 0,    187,  317,  1589, 766,  0,    0,    10,   0,
    0,    747,  872,  116,  0,    0,    0,    1108, 0,    1027, 1020, 1014, 2922, 0,    0,    1487,
    115,  1447, 0,    0,    493,  0,    807,  582,  1082, 0,    0,    0,    407,  1874, 0,    1150,
    346,  1115, 0,    0,    432,  263,  0,    936,  0,    1832, 0,    0,    1886, 1263, 0,    0,
    0,    0,    2456, 922,  1387, 2827, 0,    2197, 0,    0,    0,    1294, 0,    0,    0,    2186,
    716,  42,   0,    0,    729,  323,  329,  2679, 0,    0,    1692, 2656, 0,    0,    454,  0,
    2182, 1074, 1362, 1255, 275,  273,  0,    0,    2313, 0,    0,    0,    0,    0,    0,    629,
    1402, 0,    0,    325,  1220, 0,    0,    0,    1404, 1415, 0,    0,    451,  320,  0,    77,
    0,    681,  0,    0,    0,    0,    3082, 0,    1890, 1062, 1104, 659,  103,  52,   957,  2324,
    0,    0,    358,  0,    0,    0,    251,  0,    130,  0,    0,    439,  0,    423,  0,    1737,
    0,    0,    0,    0,    688,  700,  728,  266,  1086, 473,  3059, 2562, 0,    0,    1359, 1159,
    230,  0,    0,    1008, 0,    663,  1242, 2653, 726,  0,    1610, 280,  0,    0,    1368, 995,
    376,  0,    770,  0,    983,  1155, 1301, 584,  786,  222,  0,    213,  0,    788,  0,    0,
    0,    2565, 835,  923,  944,  0,    0,    643,  1126, 0,    43,   0,    0,    603,  221,  0,
    0,    0,    880,  1972, 1161, 0,    0,    1200, 894,  0,    428,  1325, 1018, 0,    102,  385,
    2597, 1004, 637,  22,   1103, 1210, 0,    0,    1837, 1144, 2700, 1715, 0};

int MangledHashG(const char *key, const int *T)
{
    int sum = 0;

    for (int i = 0; key[i] != '\0'; i++)
    {
        sum += T[i] * key[i];
        sum %= 3101;
    }
    return mangledkG[sum];
}

int MangledPerfectHash(const char *key)
{
    if (strlen(key) > 40)
        return 0;

    return (MangledHashG(key, mangledkT1) + MangledHashG(key, mangledkT2)) % 3101;
}

constexpr int unmangledkT1[] = {28,  128, 1,   151, 144, 127, 90,  229, 212, 59,  3,
                                94,  198, 281, 244, 119, 155, 315, 28,  217, 287, 281,
                                241, 203, 130, 281, 49,  242, 34,  65,  171, 187};
constexpr int unmangledkT2[] = {152, 112, 286, 48,  97, 327, 119, 261, 66,  87,  49,
                                280, 100, 225, 100, 33, 68,  140, 149, 269, 138, 316,
                                172, 193, 38,  302, 35, 211, 141, 204, 92,  157};
constexpr int unmangledkG[]  = {
    0,   0,   0,   0,   0,   0,   0,   0,   27,  0,   59,  133, 0,   0,   34,  0,   0,   0,   0,
    94,  0,   0,   0,   237, 42,  0,   0,   0,   0,   307, 24,  0,   17,  17,  0,   238, 111, 0,
    0,   0,   116, 0,   150, 63,  0,   0,   0,   0,   0,   323, 81,  86,  297, 0,   0,   0,   0,
    0,   5,   37,  220, 0,   0,   73,  0,   0,   328, 40,  285, 301, 51,  39,  324, 175, 0,   173,
    116, 0,   88,  0,   23,  272, 0,   0,   109, 0,   30,  0,   0,   33,  59,  0,   108, 0,   20,
    273, 0,   0,   197, 0,   62,  0,   0,   0,   295, 0,   0,   117, 95,  0,   0,   254, 0,   295,
    0,   155, 137, 0,   107, 0,   50,  0,   0,   266, 0,   143, 0,   0,   272, 0,   154, 286, 122,
    129, 210, 179, 0,   63,  0,   0,   0,   20,  19,  0,   173, 0,   0,   55,  29,  115, 253, 0,
    0,   0,   228, 316, 0,   129, 0,   255, 0,   0,   53,  0,   26,  159, 103, 133, 46,  151, 0,
    79,  0,   0,   97,  0,   105, 1,   266, 0,   0,   0,   0,   0,   0,   72,  31,  0,   0,   0,
    67,  0,   15,  162, 115, 45,  109, 0,   166, 67,  64,  326, 11,  79,  0,   0,   0,   55,  64,
    0,   28,  0,   52,  0,   62,  0,   113, 4,   40,  0,   2,   156, 0,   0,   0,   164, 0,   123,
    19,  252, 198, 196, 0,   0,   305, 290, 80,  142, 56,  0,   0,   0,   87,  99,  0,   63,  42,
    0,   0,   32,  0,   73,  14,  0,   0,   128, 68,  0,   0,   13,  165, 0,   37,  177, 0,   0,
    259, 233, 320, 272, 0,   0,   114, 80,  157, 53,  0,   85,  0,   177, 0,   0,   60,  54,  0,
    117, 0,   0,   0,   318, 0,   0,   3,   65,  109, 96,  0,   0,   252, 85,  44,  0,   82,  0,
    112, 84,  30,  56,  96,  0,   91,  47,  120, 67,  0,   226, 0,   201, 23,  157, 57,  109, 0,
    67,  47,  89,  34,  0,   77,  232, 124};

int UnmangledHashG(const char *key, const int *T)
{
    int sum = 0;

    for (int i = 0; key[i] != '\0'; i++)
    {
        sum += T[i] * key[i];
        sum %= 331;
    }
    return unmangledkG[sum];
}

int UnmangledPerfectHash(const char *key)
{
    if (strlen(key) > 32)
        return 0;

    return (UnmangledHashG(key, unmangledkT1) + UnmangledHashG(key, unmangledkT2)) % 331;
}

}  // namespace

namespace sh
{

template <>
const size_t ImmutableString::FowlerNollVoHash<4>::kFnvPrime = 16777619u;

template <>
const size_t ImmutableString::FowlerNollVoHash<4>::kFnvOffsetBasis = 0x811c9dc5u;

template <>
const size_t ImmutableString::FowlerNollVoHash<8>::kFnvPrime =
    static_cast<size_t>(1099511628211ull);

template <>
const size_t ImmutableString::FowlerNollVoHash<8>::kFnvOffsetBasis =
    static_cast<size_t>(0xcbf29ce484222325ull);

uint32_t ImmutableString::mangledNameHash() const
{
    return MangledPerfectHash(data());
}

uint32_t ImmutableString::unmangledNameHash() const
{
    return UnmangledPerfectHash(data());
}

}  // namespace sh
