// GENERATED FILE - DO NOT EDIT.
// Generated by gen_builtin_symbols.py using data from builtin_variables.json and
// builtin_function_declarations.txt.
//
// Copyright 2018 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.
//
// SymbolTable_autogen.cpp:
//   Compile-time initialized built-ins.

#include "compiler/translator/SymbolTable.h"

#include "angle_gl.h"
#include "compiler/translator/ImmutableString.h"
#include "compiler/translator/StaticType.h"
#include "compiler/translator/Symbol.h"
#include "compiler/translator/SymbolTable.h"
#include "compiler/translator/SymbolUniqueId.h"

namespace sh
{

class BuiltInId
{
  public:
    static constexpr const TSymbolUniqueId radians_0B                       = TSymbolUniqueId(0);
    static constexpr const TSymbolUniqueId pt0B                             = TSymbolUniqueId(1);
    static constexpr const TSymbolUniqueId radians_1B                       = TSymbolUniqueId(2);
    static constexpr const TSymbolUniqueId pt1B                             = TSymbolUniqueId(3);
    static constexpr const TSymbolUniqueId radians_2B                       = TSymbolUniqueId(4);
    static constexpr const TSymbolUniqueId pt2B                             = TSymbolUniqueId(5);
    static constexpr const TSymbolUniqueId radians_3B                       = TSymbolUniqueId(6);
    static constexpr const TSymbolUniqueId pt3B                             = TSymbolUniqueId(7);
    static constexpr const TSymbolUniqueId degrees_0B                       = TSymbolUniqueId(8);
    static constexpr const TSymbolUniqueId degrees_1B                       = TSymbolUniqueId(9);
    static constexpr const TSymbolUniqueId degrees_2B                       = TSymbolUniqueId(10);
    static constexpr const TSymbolUniqueId degrees_3B                       = TSymbolUniqueId(11);
    static constexpr const TSymbolUniqueId sin_0B                           = TSymbolUniqueId(12);
    static constexpr const TSymbolUniqueId sin_1B                           = TSymbolUniqueId(13);
    static constexpr const TSymbolUniqueId sin_2B                           = TSymbolUniqueId(14);
    static constexpr const TSymbolUniqueId sin_3B                           = TSymbolUniqueId(15);
    static constexpr const TSymbolUniqueId cos_0B                           = TSymbolUniqueId(16);
    static constexpr const TSymbolUniqueId cos_1B                           = TSymbolUniqueId(17);
    static constexpr const TSymbolUniqueId cos_2B                           = TSymbolUniqueId(18);
    static constexpr const TSymbolUniqueId cos_3B                           = TSymbolUniqueId(19);
    static constexpr const TSymbolUniqueId tan_0B                           = TSymbolUniqueId(20);
    static constexpr const TSymbolUniqueId tan_1B                           = TSymbolUniqueId(21);
    static constexpr const TSymbolUniqueId tan_2B                           = TSymbolUniqueId(22);
    static constexpr const TSymbolUniqueId tan_3B                           = TSymbolUniqueId(23);
    static constexpr const TSymbolUniqueId asin_0B                          = TSymbolUniqueId(24);
    static constexpr const TSymbolUniqueId asin_1B                          = TSymbolUniqueId(25);
    static constexpr const TSymbolUniqueId asin_2B                          = TSymbolUniqueId(26);
    static constexpr const TSymbolUniqueId asin_3B                          = TSymbolUniqueId(27);
    static constexpr const TSymbolUniqueId acos_0B                          = TSymbolUniqueId(28);
    static constexpr const TSymbolUniqueId acos_1B                          = TSymbolUniqueId(29);
    static constexpr const TSymbolUniqueId acos_2B                          = TSymbolUniqueId(30);
    static constexpr const TSymbolUniqueId acos_3B                          = TSymbolUniqueId(31);
    static constexpr const TSymbolUniqueId atan_0B0B                        = TSymbolUniqueId(32);
    static constexpr const TSymbolUniqueId atan_1B1B                        = TSymbolUniqueId(33);
    static constexpr const TSymbolUniqueId atan_2B2B                        = TSymbolUniqueId(34);
    static constexpr const TSymbolUniqueId atan_3B3B                        = TSymbolUniqueId(35);
    static constexpr const TSymbolUniqueId atan_0B                          = TSymbolUniqueId(36);
    static constexpr const TSymbolUniqueId atan_1B                          = TSymbolUniqueId(37);
    static constexpr const TSymbolUniqueId atan_2B                          = TSymbolUniqueId(38);
    static constexpr const TSymbolUniqueId atan_3B                          = TSymbolUniqueId(39);
    static constexpr const TSymbolUniqueId sinh_0B                          = TSymbolUniqueId(40);
    static constexpr const TSymbolUniqueId sinh_1B                          = TSymbolUniqueId(41);
    static constexpr const TSymbolUniqueId sinh_2B                          = TSymbolUniqueId(42);
    static constexpr const TSymbolUniqueId sinh_3B                          = TSymbolUniqueId(43);
    static constexpr const TSymbolUniqueId cosh_0B                          = TSymbolUniqueId(44);
    static constexpr const TSymbolUniqueId cosh_1B                          = TSymbolUniqueId(45);
    static constexpr const TSymbolUniqueId cosh_2B                          = TSymbolUniqueId(46);
    static constexpr const TSymbolUniqueId cosh_3B                          = TSymbolUniqueId(47);
    static constexpr const TSymbolUniqueId tanh_0B                          = TSymbolUniqueId(48);
    static constexpr const TSymbolUniqueId tanh_1B                          = TSymbolUniqueId(49);
    static constexpr const TSymbolUniqueId tanh_2B                          = TSymbolUniqueId(50);
    static constexpr const TSymbolUniqueId tanh_3B                          = TSymbolUniqueId(51);
    static constexpr const TSymbolUniqueId asinh_0B                         = TSymbolUniqueId(52);
    static constexpr const TSymbolUniqueId asinh_1B                         = TSymbolUniqueId(53);
    static constexpr const TSymbolUniqueId asinh_2B                         = TSymbolUniqueId(54);
    static constexpr const TSymbolUniqueId asinh_3B                         = TSymbolUniqueId(55);
    static constexpr const TSymbolUniqueId acosh_0B                         = TSymbolUniqueId(56);
    static constexpr const TSymbolUniqueId acosh_1B                         = TSymbolUniqueId(57);
    static constexpr const TSymbolUniqueId acosh_2B                         = TSymbolUniqueId(58);
    static constexpr const TSymbolUniqueId acosh_3B                         = TSymbolUniqueId(59);
    static constexpr const TSymbolUniqueId atanh_0B                         = TSymbolUniqueId(60);
    static constexpr const TSymbolUniqueId atanh_1B                         = TSymbolUniqueId(61);
    static constexpr const TSymbolUniqueId atanh_2B                         = TSymbolUniqueId(62);
    static constexpr const TSymbolUniqueId atanh_3B                         = TSymbolUniqueId(63);
    static constexpr const TSymbolUniqueId pow_0B0B                         = TSymbolUniqueId(64);
    static constexpr const TSymbolUniqueId pow_1B1B                         = TSymbolUniqueId(65);
    static constexpr const TSymbolUniqueId pow_2B2B                         = TSymbolUniqueId(66);
    static constexpr const TSymbolUniqueId pow_3B3B                         = TSymbolUniqueId(67);
    static constexpr const TSymbolUniqueId exp_0B                           = TSymbolUniqueId(68);
    static constexpr const TSymbolUniqueId exp_1B                           = TSymbolUniqueId(69);
    static constexpr const TSymbolUniqueId exp_2B                           = TSymbolUniqueId(70);
    static constexpr const TSymbolUniqueId exp_3B                           = TSymbolUniqueId(71);
    static constexpr const TSymbolUniqueId log_0B                           = TSymbolUniqueId(72);
    static constexpr const TSymbolUniqueId log_1B                           = TSymbolUniqueId(73);
    static constexpr const TSymbolUniqueId log_2B                           = TSymbolUniqueId(74);
    static constexpr const TSymbolUniqueId log_3B                           = TSymbolUniqueId(75);
    static constexpr const TSymbolUniqueId exp2_0B                          = TSymbolUniqueId(76);
    static constexpr const TSymbolUniqueId exp2_1B                          = TSymbolUniqueId(77);
    static constexpr const TSymbolUniqueId exp2_2B                          = TSymbolUniqueId(78);
    static constexpr const TSymbolUniqueId exp2_3B                          = TSymbolUniqueId(79);
    static constexpr const TSymbolUniqueId log2_0B                          = TSymbolUniqueId(80);
    static constexpr const TSymbolUniqueId log2_1B                          = TSymbolUniqueId(81);
    static constexpr const TSymbolUniqueId log2_2B                          = TSymbolUniqueId(82);
    static constexpr const TSymbolUniqueId log2_3B                          = TSymbolUniqueId(83);
    static constexpr const TSymbolUniqueId sqrt_0B                          = TSymbolUniqueId(84);
    static constexpr const TSymbolUniqueId sqrt_1B                          = TSymbolUniqueId(85);
    static constexpr const TSymbolUniqueId sqrt_2B                          = TSymbolUniqueId(86);
    static constexpr const TSymbolUniqueId sqrt_3B                          = TSymbolUniqueId(87);
    static constexpr const TSymbolUniqueId inversesqrt_0B                   = TSymbolUniqueId(88);
    static constexpr const TSymbolUniqueId inversesqrt_1B                   = TSymbolUniqueId(89);
    static constexpr const TSymbolUniqueId inversesqrt_2B                   = TSymbolUniqueId(90);
    static constexpr const TSymbolUniqueId inversesqrt_3B                   = TSymbolUniqueId(91);
    static constexpr const TSymbolUniqueId abs_0B                           = TSymbolUniqueId(92);
    static constexpr const TSymbolUniqueId abs_1B                           = TSymbolUniqueId(93);
    static constexpr const TSymbolUniqueId abs_2B                           = TSymbolUniqueId(94);
    static constexpr const TSymbolUniqueId abs_3B                           = TSymbolUniqueId(95);
    static constexpr const TSymbolUniqueId abs_0C                           = TSymbolUniqueId(96);
    static constexpr const TSymbolUniqueId pt0C                             = TSymbolUniqueId(97);
    static constexpr const TSymbolUniqueId abs_1C                           = TSymbolUniqueId(98);
    static constexpr const TSymbolUniqueId pt1C                             = TSymbolUniqueId(99);
    static constexpr const TSymbolUniqueId abs_2C                           = TSymbolUniqueId(100);
    static constexpr const TSymbolUniqueId pt2C                             = TSymbolUniqueId(101);
    static constexpr const TSymbolUniqueId abs_3C                           = TSymbolUniqueId(102);
    static constexpr const TSymbolUniqueId pt3C                             = TSymbolUniqueId(103);
    static constexpr const TSymbolUniqueId sign_0B                          = TSymbolUniqueId(104);
    static constexpr const TSymbolUniqueId sign_1B                          = TSymbolUniqueId(105);
    static constexpr const TSymbolUniqueId sign_2B                          = TSymbolUniqueId(106);
    static constexpr const TSymbolUniqueId sign_3B                          = TSymbolUniqueId(107);
    static constexpr const TSymbolUniqueId sign_0C                          = TSymbolUniqueId(108);
    static constexpr const TSymbolUniqueId sign_1C                          = TSymbolUniqueId(109);
    static constexpr const TSymbolUniqueId sign_2C                          = TSymbolUniqueId(110);
    static constexpr const TSymbolUniqueId sign_3C                          = TSymbolUniqueId(111);
    static constexpr const TSymbolUniqueId floor_0B                         = TSymbolUniqueId(112);
    static constexpr const TSymbolUniqueId floor_1B                         = TSymbolUniqueId(113);
    static constexpr const TSymbolUniqueId floor_2B                         = TSymbolUniqueId(114);
    static constexpr const TSymbolUniqueId floor_3B                         = TSymbolUniqueId(115);
    static constexpr const TSymbolUniqueId trunc_0B                         = TSymbolUniqueId(116);
    static constexpr const TSymbolUniqueId trunc_1B                         = TSymbolUniqueId(117);
    static constexpr const TSymbolUniqueId trunc_2B                         = TSymbolUniqueId(118);
    static constexpr const TSymbolUniqueId trunc_3B                         = TSymbolUniqueId(119);
    static constexpr const TSymbolUniqueId round_0B                         = TSymbolUniqueId(120);
    static constexpr const TSymbolUniqueId round_1B                         = TSymbolUniqueId(121);
    static constexpr const TSymbolUniqueId round_2B                         = TSymbolUniqueId(122);
    static constexpr const TSymbolUniqueId round_3B                         = TSymbolUniqueId(123);
    static constexpr const TSymbolUniqueId roundEven_0B                     = TSymbolUniqueId(124);
    static constexpr const TSymbolUniqueId roundEven_1B                     = TSymbolUniqueId(125);
    static constexpr const TSymbolUniqueId roundEven_2B                     = TSymbolUniqueId(126);
    static constexpr const TSymbolUniqueId roundEven_3B                     = TSymbolUniqueId(127);
    static constexpr const TSymbolUniqueId ceil_0B                          = TSymbolUniqueId(128);
    static constexpr const TSymbolUniqueId ceil_1B                          = TSymbolUniqueId(129);
    static constexpr const TSymbolUniqueId ceil_2B                          = TSymbolUniqueId(130);
    static constexpr const TSymbolUniqueId ceil_3B                          = TSymbolUniqueId(131);
    static constexpr const TSymbolUniqueId fract_0B                         = TSymbolUniqueId(132);
    static constexpr const TSymbolUniqueId fract_1B                         = TSymbolUniqueId(133);
    static constexpr const TSymbolUniqueId fract_2B                         = TSymbolUniqueId(134);
    static constexpr const TSymbolUniqueId fract_3B                         = TSymbolUniqueId(135);
    static constexpr const TSymbolUniqueId mod_0B0B                         = TSymbolUniqueId(136);
    static constexpr const TSymbolUniqueId mod_1B0B                         = TSymbolUniqueId(137);
    static constexpr const TSymbolUniqueId mod_2B0B                         = TSymbolUniqueId(138);
    static constexpr const TSymbolUniqueId mod_3B0B                         = TSymbolUniqueId(139);
    static constexpr const TSymbolUniqueId mod_1B1B                         = TSymbolUniqueId(140);
    static constexpr const TSymbolUniqueId mod_2B2B                         = TSymbolUniqueId(141);
    static constexpr const TSymbolUniqueId mod_3B3B                         = TSymbolUniqueId(142);
    static constexpr const TSymbolUniqueId min_0B0B                         = TSymbolUniqueId(143);
    static constexpr const TSymbolUniqueId min_1B0B                         = TSymbolUniqueId(144);
    static constexpr const TSymbolUniqueId min_2B0B                         = TSymbolUniqueId(145);
    static constexpr const TSymbolUniqueId min_3B0B                         = TSymbolUniqueId(146);
    static constexpr const TSymbolUniqueId min_1B1B                         = TSymbolUniqueId(147);
    static constexpr const TSymbolUniqueId min_2B2B                         = TSymbolUniqueId(148);
    static constexpr const TSymbolUniqueId min_3B3B                         = TSymbolUniqueId(149);
    static constexpr const TSymbolUniqueId min_0C0C                         = TSymbolUniqueId(150);
    static constexpr const TSymbolUniqueId min_1C1C                         = TSymbolUniqueId(151);
    static constexpr const TSymbolUniqueId min_2C2C                         = TSymbolUniqueId(152);
    static constexpr const TSymbolUniqueId min_3C3C                         = TSymbolUniqueId(153);
    static constexpr const TSymbolUniqueId min_1C0C                         = TSymbolUniqueId(154);
    static constexpr const TSymbolUniqueId min_2C0C                         = TSymbolUniqueId(155);
    static constexpr const TSymbolUniqueId min_3C0C                         = TSymbolUniqueId(156);
    static constexpr const TSymbolUniqueId min_0D0D                         = TSymbolUniqueId(157);
    static constexpr const TSymbolUniqueId pt0D                             = TSymbolUniqueId(158);
    static constexpr const TSymbolUniqueId min_1D1D                         = TSymbolUniqueId(159);
    static constexpr const TSymbolUniqueId pt1D                             = TSymbolUniqueId(160);
    static constexpr const TSymbolUniqueId min_2D2D                         = TSymbolUniqueId(161);
    static constexpr const TSymbolUniqueId pt2D                             = TSymbolUniqueId(162);
    static constexpr const TSymbolUniqueId min_3D3D                         = TSymbolUniqueId(163);
    static constexpr const TSymbolUniqueId pt3D                             = TSymbolUniqueId(164);
    static constexpr const TSymbolUniqueId min_1D0D                         = TSymbolUniqueId(165);
    static constexpr const TSymbolUniqueId min_2D0D                         = TSymbolUniqueId(166);
    static constexpr const TSymbolUniqueId min_3D0D                         = TSymbolUniqueId(167);
    static constexpr const TSymbolUniqueId max_0B0B                         = TSymbolUniqueId(168);
    static constexpr const TSymbolUniqueId max_1B0B                         = TSymbolUniqueId(169);
    static constexpr const TSymbolUniqueId max_2B0B                         = TSymbolUniqueId(170);
    static constexpr const TSymbolUniqueId max_3B0B                         = TSymbolUniqueId(171);
    static constexpr const TSymbolUniqueId max_1B1B                         = TSymbolUniqueId(172);
    static constexpr const TSymbolUniqueId max_2B2B                         = TSymbolUniqueId(173);
    static constexpr const TSymbolUniqueId max_3B3B                         = TSymbolUniqueId(174);
    static constexpr const TSymbolUniqueId max_0C0C                         = TSymbolUniqueId(175);
    static constexpr const TSymbolUniqueId max_1C1C                         = TSymbolUniqueId(176);
    static constexpr const TSymbolUniqueId max_2C2C                         = TSymbolUniqueId(177);
    static constexpr const TSymbolUniqueId max_3C3C                         = TSymbolUniqueId(178);
    static constexpr const TSymbolUniqueId max_1C0C                         = TSymbolUniqueId(179);
    static constexpr const TSymbolUniqueId max_2C0C                         = TSymbolUniqueId(180);
    static constexpr const TSymbolUniqueId max_3C0C                         = TSymbolUniqueId(181);
    static constexpr const TSymbolUniqueId max_0D0D                         = TSymbolUniqueId(182);
    static constexpr const TSymbolUniqueId max_1D1D                         = TSymbolUniqueId(183);
    static constexpr const TSymbolUniqueId max_2D2D                         = TSymbolUniqueId(184);
    static constexpr const TSymbolUniqueId max_3D3D                         = TSymbolUniqueId(185);
    static constexpr const TSymbolUniqueId max_1D0D                         = TSymbolUniqueId(186);
    static constexpr const TSymbolUniqueId max_2D0D                         = TSymbolUniqueId(187);
    static constexpr const TSymbolUniqueId max_3D0D                         = TSymbolUniqueId(188);
    static constexpr const TSymbolUniqueId clamp_0B0B0B                     = TSymbolUniqueId(189);
    static constexpr const TSymbolUniqueId clamp_1B0B0B                     = TSymbolUniqueId(190);
    static constexpr const TSymbolUniqueId clamp_2B0B0B                     = TSymbolUniqueId(191);
    static constexpr const TSymbolUniqueId clamp_3B0B0B                     = TSymbolUniqueId(192);
    static constexpr const TSymbolUniqueId clamp_1B1B1B                     = TSymbolUniqueId(193);
    static constexpr const TSymbolUniqueId clamp_2B2B2B                     = TSymbolUniqueId(194);
    static constexpr const TSymbolUniqueId clamp_3B3B3B                     = TSymbolUniqueId(195);
    static constexpr const TSymbolUniqueId clamp_0C0C0C                     = TSymbolUniqueId(196);
    static constexpr const TSymbolUniqueId clamp_1C0C0C                     = TSymbolUniqueId(197);
    static constexpr const TSymbolUniqueId clamp_2C0C0C                     = TSymbolUniqueId(198);
    static constexpr const TSymbolUniqueId clamp_3C0C0C                     = TSymbolUniqueId(199);
    static constexpr const TSymbolUniqueId clamp_1C1C1C                     = TSymbolUniqueId(200);
    static constexpr const TSymbolUniqueId clamp_2C2C2C                     = TSymbolUniqueId(201);
    static constexpr const TSymbolUniqueId clamp_3C3C3C                     = TSymbolUniqueId(202);
    static constexpr const TSymbolUniqueId clamp_0D0D0D                     = TSymbolUniqueId(203);
    static constexpr const TSymbolUniqueId clamp_1D0D0D                     = TSymbolUniqueId(204);
    static constexpr const TSymbolUniqueId clamp_2D0D0D                     = TSymbolUniqueId(205);
    static constexpr const TSymbolUniqueId clamp_3D0D0D                     = TSymbolUniqueId(206);
    static constexpr const TSymbolUniqueId clamp_1D1D1D                     = TSymbolUniqueId(207);
    static constexpr const TSymbolUniqueId clamp_2D2D2D                     = TSymbolUniqueId(208);
    static constexpr const TSymbolUniqueId clamp_3D3D3D                     = TSymbolUniqueId(209);
    static constexpr const TSymbolUniqueId mix_0B0B0B                       = TSymbolUniqueId(210);
    static constexpr const TSymbolUniqueId mix_1B1B0B                       = TSymbolUniqueId(211);
    static constexpr const TSymbolUniqueId mix_2B2B0B                       = TSymbolUniqueId(212);
    static constexpr const TSymbolUniqueId mix_3B3B0B                       = TSymbolUniqueId(213);
    static constexpr const TSymbolUniqueId mix_1B1B1B                       = TSymbolUniqueId(214);
    static constexpr const TSymbolUniqueId mix_2B2B2B                       = TSymbolUniqueId(215);
    static constexpr const TSymbolUniqueId mix_3B3B3B                       = TSymbolUniqueId(216);
    static constexpr const TSymbolUniqueId mix_0B0B0E                       = TSymbolUniqueId(217);
    static constexpr const TSymbolUniqueId pt0E                             = TSymbolUniqueId(218);
    static constexpr const TSymbolUniqueId mix_1B1B1E                       = TSymbolUniqueId(219);
    static constexpr const TSymbolUniqueId pt1E                             = TSymbolUniqueId(220);
    static constexpr const TSymbolUniqueId mix_2B2B2E                       = TSymbolUniqueId(221);
    static constexpr const TSymbolUniqueId pt2E                             = TSymbolUniqueId(222);
    static constexpr const TSymbolUniqueId mix_3B3B3E                       = TSymbolUniqueId(223);
    static constexpr const TSymbolUniqueId pt3E                             = TSymbolUniqueId(224);
    static constexpr const TSymbolUniqueId step_0B0B                        = TSymbolUniqueId(225);
    static constexpr const TSymbolUniqueId step_1B1B                        = TSymbolUniqueId(226);
    static constexpr const TSymbolUniqueId step_2B2B                        = TSymbolUniqueId(227);
    static constexpr const TSymbolUniqueId step_3B3B                        = TSymbolUniqueId(228);
    static constexpr const TSymbolUniqueId step_0B1B                        = TSymbolUniqueId(229);
    static constexpr const TSymbolUniqueId step_0B2B                        = TSymbolUniqueId(230);
    static constexpr const TSymbolUniqueId step_0B3B                        = TSymbolUniqueId(231);
    static constexpr const TSymbolUniqueId smoothstep_0B0B0B                = TSymbolUniqueId(232);
    static constexpr const TSymbolUniqueId smoothstep_1B1B1B                = TSymbolUniqueId(233);
    static constexpr const TSymbolUniqueId smoothstep_2B2B2B                = TSymbolUniqueId(234);
    static constexpr const TSymbolUniqueId smoothstep_3B3B3B                = TSymbolUniqueId(235);
    static constexpr const TSymbolUniqueId smoothstep_0B0B1B                = TSymbolUniqueId(236);
    static constexpr const TSymbolUniqueId smoothstep_0B0B2B                = TSymbolUniqueId(237);
    static constexpr const TSymbolUniqueId smoothstep_0B0B3B                = TSymbolUniqueId(238);
    static constexpr const TSymbolUniqueId modf_0B0B                        = TSymbolUniqueId(239);
    static constexpr const TSymbolUniqueId pt_o_0B                          = TSymbolUniqueId(240);
    static constexpr const TSymbolUniqueId modf_1B1B                        = TSymbolUniqueId(241);
    static constexpr const TSymbolUniqueId pt_o_1B                          = TSymbolUniqueId(242);
    static constexpr const TSymbolUniqueId modf_2B2B                        = TSymbolUniqueId(243);
    static constexpr const TSymbolUniqueId pt_o_2B                          = TSymbolUniqueId(244);
    static constexpr const TSymbolUniqueId modf_3B3B                        = TSymbolUniqueId(245);
    static constexpr const TSymbolUniqueId pt_o_3B                          = TSymbolUniqueId(246);
    static constexpr const TSymbolUniqueId isnan_0B                         = TSymbolUniqueId(247);
    static constexpr const TSymbolUniqueId isnan_1B                         = TSymbolUniqueId(248);
    static constexpr const TSymbolUniqueId isnan_2B                         = TSymbolUniqueId(249);
    static constexpr const TSymbolUniqueId isnan_3B                         = TSymbolUniqueId(250);
    static constexpr const TSymbolUniqueId isinf_0B                         = TSymbolUniqueId(251);
    static constexpr const TSymbolUniqueId isinf_1B                         = TSymbolUniqueId(252);
    static constexpr const TSymbolUniqueId isinf_2B                         = TSymbolUniqueId(253);
    static constexpr const TSymbolUniqueId isinf_3B                         = TSymbolUniqueId(254);
    static constexpr const TSymbolUniqueId floatBitsToInt_0B                = TSymbolUniqueId(255);
    static constexpr const TSymbolUniqueId floatBitsToInt_1B                = TSymbolUniqueId(256);
    static constexpr const TSymbolUniqueId floatBitsToInt_2B                = TSymbolUniqueId(257);
    static constexpr const TSymbolUniqueId floatBitsToInt_3B                = TSymbolUniqueId(258);
    static constexpr const TSymbolUniqueId floatBitsToUint_0B               = TSymbolUniqueId(259);
    static constexpr const TSymbolUniqueId floatBitsToUint_1B               = TSymbolUniqueId(260);
    static constexpr const TSymbolUniqueId floatBitsToUint_2B               = TSymbolUniqueId(261);
    static constexpr const TSymbolUniqueId floatBitsToUint_3B               = TSymbolUniqueId(262);
    static constexpr const TSymbolUniqueId intBitsToFloat_0C                = TSymbolUniqueId(263);
    static constexpr const TSymbolUniqueId intBitsToFloat_1C                = TSymbolUniqueId(264);
    static constexpr const TSymbolUniqueId intBitsToFloat_2C                = TSymbolUniqueId(265);
    static constexpr const TSymbolUniqueId intBitsToFloat_3C                = TSymbolUniqueId(266);
    static constexpr const TSymbolUniqueId uintBitsToFloat_0D               = TSymbolUniqueId(267);
    static constexpr const TSymbolUniqueId uintBitsToFloat_1D               = TSymbolUniqueId(268);
    static constexpr const TSymbolUniqueId uintBitsToFloat_2D               = TSymbolUniqueId(269);
    static constexpr const TSymbolUniqueId uintBitsToFloat_3D               = TSymbolUniqueId(270);
    static constexpr const TSymbolUniqueId frexp_0B0C                       = TSymbolUniqueId(271);
    static constexpr const TSymbolUniqueId pt_o_0C                          = TSymbolUniqueId(272);
    static constexpr const TSymbolUniqueId frexp_1B1C                       = TSymbolUniqueId(273);
    static constexpr const TSymbolUniqueId pt_o_1C                          = TSymbolUniqueId(274);
    static constexpr const TSymbolUniqueId frexp_2B2C                       = TSymbolUniqueId(275);
    static constexpr const TSymbolUniqueId pt_o_2C                          = TSymbolUniqueId(276);
    static constexpr const TSymbolUniqueId frexp_3B3C                       = TSymbolUniqueId(277);
    static constexpr const TSymbolUniqueId pt_o_3C                          = TSymbolUniqueId(278);
    static constexpr const TSymbolUniqueId ldexp_0B0C                       = TSymbolUniqueId(279);
    static constexpr const TSymbolUniqueId ldexp_1B1C                       = TSymbolUniqueId(280);
    static constexpr const TSymbolUniqueId ldexp_2B2C                       = TSymbolUniqueId(281);
    static constexpr const TSymbolUniqueId ldexp_3B3C                       = TSymbolUniqueId(282);
    static constexpr const TSymbolUniqueId packSnorm2x16_1B                 = TSymbolUniqueId(283);
    static constexpr const TSymbolUniqueId packUnorm2x16_1B                 = TSymbolUniqueId(284);
    static constexpr const TSymbolUniqueId packHalf2x16_1B                  = TSymbolUniqueId(285);
    static constexpr const TSymbolUniqueId unpackSnorm2x16_0D               = TSymbolUniqueId(286);
    static constexpr const TSymbolUniqueId unpackUnorm2x16_0D               = TSymbolUniqueId(287);
    static constexpr const TSymbolUniqueId unpackHalf2x16_0D                = TSymbolUniqueId(288);
    static constexpr const TSymbolUniqueId packUnorm4x8_3B                  = TSymbolUniqueId(289);
    static constexpr const TSymbolUniqueId packSnorm4x8_3B                  = TSymbolUniqueId(290);
    static constexpr const TSymbolUniqueId unpackUnorm4x8_0D                = TSymbolUniqueId(291);
    static constexpr const TSymbolUniqueId unpackSnorm4x8_0D                = TSymbolUniqueId(292);
    static constexpr const TSymbolUniqueId length_0B                        = TSymbolUniqueId(293);
    static constexpr const TSymbolUniqueId length_1B                        = TSymbolUniqueId(294);
    static constexpr const TSymbolUniqueId length_2B                        = TSymbolUniqueId(295);
    static constexpr const TSymbolUniqueId length_3B                        = TSymbolUniqueId(296);
    static constexpr const TSymbolUniqueId distance_0B0B                    = TSymbolUniqueId(297);
    static constexpr const TSymbolUniqueId distance_1B1B                    = TSymbolUniqueId(298);
    static constexpr const TSymbolUniqueId distance_2B2B                    = TSymbolUniqueId(299);
    static constexpr const TSymbolUniqueId distance_3B3B                    = TSymbolUniqueId(300);
    static constexpr const TSymbolUniqueId dot_0B0B                         = TSymbolUniqueId(301);
    static constexpr const TSymbolUniqueId dot_1B1B                         = TSymbolUniqueId(302);
    static constexpr const TSymbolUniqueId dot_2B2B                         = TSymbolUniqueId(303);
    static constexpr const TSymbolUniqueId dot_3B3B                         = TSymbolUniqueId(304);
    static constexpr const TSymbolUniqueId cross_2B2B                       = TSymbolUniqueId(305);
    static constexpr const TSymbolUniqueId normalize_0B                     = TSymbolUniqueId(306);
    static constexpr const TSymbolUniqueId normalize_1B                     = TSymbolUniqueId(307);
    static constexpr const TSymbolUniqueId normalize_2B                     = TSymbolUniqueId(308);
    static constexpr const TSymbolUniqueId normalize_3B                     = TSymbolUniqueId(309);
    static constexpr const TSymbolUniqueId faceforward_0B0B0B               = TSymbolUniqueId(310);
    static constexpr const TSymbolUniqueId faceforward_1B1B1B               = TSymbolUniqueId(311);
    static constexpr const TSymbolUniqueId faceforward_2B2B2B               = TSymbolUniqueId(312);
    static constexpr const TSymbolUniqueId faceforward_3B3B3B               = TSymbolUniqueId(313);
    static constexpr const TSymbolUniqueId reflect_0B0B                     = TSymbolUniqueId(314);
    static constexpr const TSymbolUniqueId reflect_1B1B                     = TSymbolUniqueId(315);
    static constexpr const TSymbolUniqueId reflect_2B2B                     = TSymbolUniqueId(316);
    static constexpr const TSymbolUniqueId reflect_3B3B                     = TSymbolUniqueId(317);
    static constexpr const TSymbolUniqueId refract_0B0B0B                   = TSymbolUniqueId(318);
    static constexpr const TSymbolUniqueId refract_1B1B0B                   = TSymbolUniqueId(319);
    static constexpr const TSymbolUniqueId refract_2B2B0B                   = TSymbolUniqueId(320);
    static constexpr const TSymbolUniqueId refract_3B3B0B                   = TSymbolUniqueId(321);
    static constexpr const TSymbolUniqueId matrixCompMult_5B5B              = TSymbolUniqueId(322);
    static constexpr const TSymbolUniqueId pt5B                             = TSymbolUniqueId(323);
    static constexpr const TSymbolUniqueId matrixCompMult_ABAB              = TSymbolUniqueId(324);
    static constexpr const TSymbolUniqueId ptAB                             = TSymbolUniqueId(325);
    static constexpr const TSymbolUniqueId matrixCompMult_FBFB              = TSymbolUniqueId(326);
    static constexpr const TSymbolUniqueId ptFB                             = TSymbolUniqueId(327);
    static constexpr const TSymbolUniqueId matrixCompMult_9B9B              = TSymbolUniqueId(328);
    static constexpr const TSymbolUniqueId pt9B                             = TSymbolUniqueId(329);
    static constexpr const TSymbolUniqueId matrixCompMult_6B6B              = TSymbolUniqueId(330);
    static constexpr const TSymbolUniqueId pt6B                             = TSymbolUniqueId(331);
    static constexpr const TSymbolUniqueId matrixCompMult_DBDB              = TSymbolUniqueId(332);
    static constexpr const TSymbolUniqueId ptDB                             = TSymbolUniqueId(333);
    static constexpr const TSymbolUniqueId matrixCompMult_7B7B              = TSymbolUniqueId(334);
    static constexpr const TSymbolUniqueId pt7B                             = TSymbolUniqueId(335);
    static constexpr const TSymbolUniqueId matrixCompMult_EBEB              = TSymbolUniqueId(336);
    static constexpr const TSymbolUniqueId ptEB                             = TSymbolUniqueId(337);
    static constexpr const TSymbolUniqueId matrixCompMult_BBBB              = TSymbolUniqueId(338);
    static constexpr const TSymbolUniqueId ptBB                             = TSymbolUniqueId(339);
    static constexpr const TSymbolUniqueId outerProduct_1B1B                = TSymbolUniqueId(340);
    static constexpr const TSymbolUniqueId outerProduct_2B2B                = TSymbolUniqueId(341);
    static constexpr const TSymbolUniqueId outerProduct_3B3B                = TSymbolUniqueId(342);
    static constexpr const TSymbolUniqueId outerProduct_2B1B                = TSymbolUniqueId(343);
    static constexpr const TSymbolUniqueId outerProduct_1B2B                = TSymbolUniqueId(344);
    static constexpr const TSymbolUniqueId outerProduct_3B1B                = TSymbolUniqueId(345);
    static constexpr const TSymbolUniqueId outerProduct_1B3B                = TSymbolUniqueId(346);
    static constexpr const TSymbolUniqueId outerProduct_3B2B                = TSymbolUniqueId(347);
    static constexpr const TSymbolUniqueId outerProduct_2B3B                = TSymbolUniqueId(348);
    static constexpr const TSymbolUniqueId transpose_5B                     = TSymbolUniqueId(349);
    static constexpr const TSymbolUniqueId transpose_AB                     = TSymbolUniqueId(350);
    static constexpr const TSymbolUniqueId transpose_FB                     = TSymbolUniqueId(351);
    static constexpr const TSymbolUniqueId transpose_6B                     = TSymbolUniqueId(352);
    static constexpr const TSymbolUniqueId transpose_9B                     = TSymbolUniqueId(353);
    static constexpr const TSymbolUniqueId transpose_7B                     = TSymbolUniqueId(354);
    static constexpr const TSymbolUniqueId transpose_DB                     = TSymbolUniqueId(355);
    static constexpr const TSymbolUniqueId transpose_BB                     = TSymbolUniqueId(356);
    static constexpr const TSymbolUniqueId transpose_EB                     = TSymbolUniqueId(357);
    static constexpr const TSymbolUniqueId determinant_5B                   = TSymbolUniqueId(358);
    static constexpr const TSymbolUniqueId determinant_AB                   = TSymbolUniqueId(359);
    static constexpr const TSymbolUniqueId determinant_FB                   = TSymbolUniqueId(360);
    static constexpr const TSymbolUniqueId inverse_5B                       = TSymbolUniqueId(361);
    static constexpr const TSymbolUniqueId inverse_AB                       = TSymbolUniqueId(362);
    static constexpr const TSymbolUniqueId inverse_FB                       = TSymbolUniqueId(363);
    static constexpr const TSymbolUniqueId lessThan_1B1B                    = TSymbolUniqueId(364);
    static constexpr const TSymbolUniqueId lessThan_2B2B                    = TSymbolUniqueId(365);
    static constexpr const TSymbolUniqueId lessThan_3B3B                    = TSymbolUniqueId(366);
    static constexpr const TSymbolUniqueId lessThan_1C1C                    = TSymbolUniqueId(367);
    static constexpr const TSymbolUniqueId lessThan_2C2C                    = TSymbolUniqueId(368);
    static constexpr const TSymbolUniqueId lessThan_3C3C                    = TSymbolUniqueId(369);
    static constexpr const TSymbolUniqueId lessThan_1D1D                    = TSymbolUniqueId(370);
    static constexpr const TSymbolUniqueId lessThan_2D2D                    = TSymbolUniqueId(371);
    static constexpr const TSymbolUniqueId lessThan_3D3D                    = TSymbolUniqueId(372);
    static constexpr const TSymbolUniqueId lessThanEqual_1B1B               = TSymbolUniqueId(373);
    static constexpr const TSymbolUniqueId lessThanEqual_2B2B               = TSymbolUniqueId(374);
    static constexpr const TSymbolUniqueId lessThanEqual_3B3B               = TSymbolUniqueId(375);
    static constexpr const TSymbolUniqueId lessThanEqual_1C1C               = TSymbolUniqueId(376);
    static constexpr const TSymbolUniqueId lessThanEqual_2C2C               = TSymbolUniqueId(377);
    static constexpr const TSymbolUniqueId lessThanEqual_3C3C               = TSymbolUniqueId(378);
    static constexpr const TSymbolUniqueId lessThanEqual_1D1D               = TSymbolUniqueId(379);
    static constexpr const TSymbolUniqueId lessThanEqual_2D2D               = TSymbolUniqueId(380);
    static constexpr const TSymbolUniqueId lessThanEqual_3D3D               = TSymbolUniqueId(381);
    static constexpr const TSymbolUniqueId greaterThan_1B1B                 = TSymbolUniqueId(382);
    static constexpr const TSymbolUniqueId greaterThan_2B2B                 = TSymbolUniqueId(383);
    static constexpr const TSymbolUniqueId greaterThan_3B3B                 = TSymbolUniqueId(384);
    static constexpr const TSymbolUniqueId greaterThan_1C1C                 = TSymbolUniqueId(385);
    static constexpr const TSymbolUniqueId greaterThan_2C2C                 = TSymbolUniqueId(386);
    static constexpr const TSymbolUniqueId greaterThan_3C3C                 = TSymbolUniqueId(387);
    static constexpr const TSymbolUniqueId greaterThan_1D1D                 = TSymbolUniqueId(388);
    static constexpr const TSymbolUniqueId greaterThan_2D2D                 = TSymbolUniqueId(389);
    static constexpr const TSymbolUniqueId greaterThan_3D3D                 = TSymbolUniqueId(390);
    static constexpr const TSymbolUniqueId greaterThanEqual_1B1B            = TSymbolUniqueId(391);
    static constexpr const TSymbolUniqueId greaterThanEqual_2B2B            = TSymbolUniqueId(392);
    static constexpr const TSymbolUniqueId greaterThanEqual_3B3B            = TSymbolUniqueId(393);
    static constexpr const TSymbolUniqueId greaterThanEqual_1C1C            = TSymbolUniqueId(394);
    static constexpr const TSymbolUniqueId greaterThanEqual_2C2C            = TSymbolUniqueId(395);
    static constexpr const TSymbolUniqueId greaterThanEqual_3C3C            = TSymbolUniqueId(396);
    static constexpr const TSymbolUniqueId greaterThanEqual_1D1D            = TSymbolUniqueId(397);
    static constexpr const TSymbolUniqueId greaterThanEqual_2D2D            = TSymbolUniqueId(398);
    static constexpr const TSymbolUniqueId greaterThanEqual_3D3D            = TSymbolUniqueId(399);
    static constexpr const TSymbolUniqueId equal_1B1B                       = TSymbolUniqueId(400);
    static constexpr const TSymbolUniqueId equal_2B2B                       = TSymbolUniqueId(401);
    static constexpr const TSymbolUniqueId equal_3B3B                       = TSymbolUniqueId(402);
    static constexpr const TSymbolUniqueId equal_1C1C                       = TSymbolUniqueId(403);
    static constexpr const TSymbolUniqueId equal_2C2C                       = TSymbolUniqueId(404);
    static constexpr const TSymbolUniqueId equal_3C3C                       = TSymbolUniqueId(405);
    static constexpr const TSymbolUniqueId equal_1D1D                       = TSymbolUniqueId(406);
    static constexpr const TSymbolUniqueId equal_2D2D                       = TSymbolUniqueId(407);
    static constexpr const TSymbolUniqueId equal_3D3D                       = TSymbolUniqueId(408);
    static constexpr const TSymbolUniqueId equal_1E1E                       = TSymbolUniqueId(409);
    static constexpr const TSymbolUniqueId equal_2E2E                       = TSymbolUniqueId(410);
    static constexpr const TSymbolUniqueId equal_3E3E                       = TSymbolUniqueId(411);
    static constexpr const TSymbolUniqueId notEqual_1B1B                    = TSymbolUniqueId(412);
    static constexpr const TSymbolUniqueId notEqual_2B2B                    = TSymbolUniqueId(413);
    static constexpr const TSymbolUniqueId notEqual_3B3B                    = TSymbolUniqueId(414);
    static constexpr const TSymbolUniqueId notEqual_1C1C                    = TSymbolUniqueId(415);
    static constexpr const TSymbolUniqueId notEqual_2C2C                    = TSymbolUniqueId(416);
    static constexpr const TSymbolUniqueId notEqual_3C3C                    = TSymbolUniqueId(417);
    static constexpr const TSymbolUniqueId notEqual_1D1D                    = TSymbolUniqueId(418);
    static constexpr const TSymbolUniqueId notEqual_2D2D                    = TSymbolUniqueId(419);
    static constexpr const TSymbolUniqueId notEqual_3D3D                    = TSymbolUniqueId(420);
    static constexpr const TSymbolUniqueId notEqual_1E1E                    = TSymbolUniqueId(421);
    static constexpr const TSymbolUniqueId notEqual_2E2E                    = TSymbolUniqueId(422);
    static constexpr const TSymbolUniqueId notEqual_3E3E                    = TSymbolUniqueId(423);
    static constexpr const TSymbolUniqueId any_1E                           = TSymbolUniqueId(424);
    static constexpr const TSymbolUniqueId any_2E                           = TSymbolUniqueId(425);
    static constexpr const TSymbolUniqueId any_3E                           = TSymbolUniqueId(426);
    static constexpr const TSymbolUniqueId all_1E                           = TSymbolUniqueId(427);
    static constexpr const TSymbolUniqueId all_2E                           = TSymbolUniqueId(428);
    static constexpr const TSymbolUniqueId all_3E                           = TSymbolUniqueId(429);
    static constexpr const TSymbolUniqueId notFunc_1E                       = TSymbolUniqueId(430);
    static constexpr const TSymbolUniqueId notFunc_2E                       = TSymbolUniqueId(431);
    static constexpr const TSymbolUniqueId notFunc_3E                       = TSymbolUniqueId(432);
    static constexpr const TSymbolUniqueId bitfieldExtract_0C0C0C           = TSymbolUniqueId(433);
    static constexpr const TSymbolUniqueId bitfieldExtract_1C0C0C           = TSymbolUniqueId(434);
    static constexpr const TSymbolUniqueId bitfieldExtract_2C0C0C           = TSymbolUniqueId(435);
    static constexpr const TSymbolUniqueId bitfieldExtract_3C0C0C           = TSymbolUniqueId(436);
    static constexpr const TSymbolUniqueId bitfieldExtract_0D0C0C           = TSymbolUniqueId(437);
    static constexpr const TSymbolUniqueId bitfieldExtract_1D0C0C           = TSymbolUniqueId(438);
    static constexpr const TSymbolUniqueId bitfieldExtract_2D0C0C           = TSymbolUniqueId(439);
    static constexpr const TSymbolUniqueId bitfieldExtract_3D0C0C           = TSymbolUniqueId(440);
    static constexpr const TSymbolUniqueId bitfieldInsert_0C0C0C0C          = TSymbolUniqueId(441);
    static constexpr const TSymbolUniqueId bitfieldInsert_1C1C0C0C          = TSymbolUniqueId(442);
    static constexpr const TSymbolUniqueId bitfieldInsert_2C2C0C0C          = TSymbolUniqueId(443);
    static constexpr const TSymbolUniqueId bitfieldInsert_3C3C0C0C          = TSymbolUniqueId(444);
    static constexpr const TSymbolUniqueId bitfieldInsert_0D0D0C0C          = TSymbolUniqueId(445);
    static constexpr const TSymbolUniqueId bitfieldInsert_1D1D0C0C          = TSymbolUniqueId(446);
    static constexpr const TSymbolUniqueId bitfieldInsert_2D2D0C0C          = TSymbolUniqueId(447);
    static constexpr const TSymbolUniqueId bitfieldInsert_3D3D0C0C          = TSymbolUniqueId(448);
    static constexpr const TSymbolUniqueId bitfieldReverse_0C               = TSymbolUniqueId(449);
    static constexpr const TSymbolUniqueId bitfieldReverse_1C               = TSymbolUniqueId(450);
    static constexpr const TSymbolUniqueId bitfieldReverse_2C               = TSymbolUniqueId(451);
    static constexpr const TSymbolUniqueId bitfieldReverse_3C               = TSymbolUniqueId(452);
    static constexpr const TSymbolUniqueId bitfieldReverse_0D               = TSymbolUniqueId(453);
    static constexpr const TSymbolUniqueId bitfieldReverse_1D               = TSymbolUniqueId(454);
    static constexpr const TSymbolUniqueId bitfieldReverse_2D               = TSymbolUniqueId(455);
    static constexpr const TSymbolUniqueId bitfieldReverse_3D               = TSymbolUniqueId(456);
    static constexpr const TSymbolUniqueId bitCount_0C                      = TSymbolUniqueId(457);
    static constexpr const TSymbolUniqueId bitCount_1C                      = TSymbolUniqueId(458);
    static constexpr const TSymbolUniqueId bitCount_2C                      = TSymbolUniqueId(459);
    static constexpr const TSymbolUniqueId bitCount_3C                      = TSymbolUniqueId(460);
    static constexpr const TSymbolUniqueId bitCount_0D                      = TSymbolUniqueId(461);
    static constexpr const TSymbolUniqueId bitCount_1D                      = TSymbolUniqueId(462);
    static constexpr const TSymbolUniqueId bitCount_2D                      = TSymbolUniqueId(463);
    static constexpr const TSymbolUniqueId bitCount_3D                      = TSymbolUniqueId(464);
    static constexpr const TSymbolUniqueId findLSB_0C                       = TSymbolUniqueId(465);
    static constexpr const TSymbolUniqueId findLSB_1C                       = TSymbolUniqueId(466);
    static constexpr const TSymbolUniqueId findLSB_2C                       = TSymbolUniqueId(467);
    static constexpr const TSymbolUniqueId findLSB_3C                       = TSymbolUniqueId(468);
    static constexpr const TSymbolUniqueId findLSB_0D                       = TSymbolUniqueId(469);
    static constexpr const TSymbolUniqueId findLSB_1D                       = TSymbolUniqueId(470);
    static constexpr const TSymbolUniqueId findLSB_2D                       = TSymbolUniqueId(471);
    static constexpr const TSymbolUniqueId findLSB_3D                       = TSymbolUniqueId(472);
    static constexpr const TSymbolUniqueId findMSB_0C                       = TSymbolUniqueId(473);
    static constexpr const TSymbolUniqueId findMSB_1C                       = TSymbolUniqueId(474);
    static constexpr const TSymbolUniqueId findMSB_2C                       = TSymbolUniqueId(475);
    static constexpr const TSymbolUniqueId findMSB_3C                       = TSymbolUniqueId(476);
    static constexpr const TSymbolUniqueId findMSB_0D                       = TSymbolUniqueId(477);
    static constexpr const TSymbolUniqueId findMSB_1D                       = TSymbolUniqueId(478);
    static constexpr const TSymbolUniqueId findMSB_2D                       = TSymbolUniqueId(479);
    static constexpr const TSymbolUniqueId findMSB_3D                       = TSymbolUniqueId(480);
    static constexpr const TSymbolUniqueId uaddCarry_0D0D0D                 = TSymbolUniqueId(481);
    static constexpr const TSymbolUniqueId pt_o_0D                          = TSymbolUniqueId(482);
    static constexpr const TSymbolUniqueId uaddCarry_1D1D1D                 = TSymbolUniqueId(483);
    static constexpr const TSymbolUniqueId pt_o_1D                          = TSymbolUniqueId(484);
    static constexpr const TSymbolUniqueId uaddCarry_2D2D2D                 = TSymbolUniqueId(485);
    static constexpr const TSymbolUniqueId pt_o_2D                          = TSymbolUniqueId(486);
    static constexpr const TSymbolUniqueId uaddCarry_3D3D3D                 = TSymbolUniqueId(487);
    static constexpr const TSymbolUniqueId pt_o_3D                          = TSymbolUniqueId(488);
    static constexpr const TSymbolUniqueId usubBorrow_0D0D0D                = TSymbolUniqueId(489);
    static constexpr const TSymbolUniqueId usubBorrow_1D1D1D                = TSymbolUniqueId(490);
    static constexpr const TSymbolUniqueId usubBorrow_2D2D2D                = TSymbolUniqueId(491);
    static constexpr const TSymbolUniqueId usubBorrow_3D3D3D                = TSymbolUniqueId(492);
    static constexpr const TSymbolUniqueId umulExtended_0D0D0D0D            = TSymbolUniqueId(493);
    static constexpr const TSymbolUniqueId umulExtended_1D1D1D1D            = TSymbolUniqueId(494);
    static constexpr const TSymbolUniqueId umulExtended_2D2D2D2D            = TSymbolUniqueId(495);
    static constexpr const TSymbolUniqueId umulExtended_3D3D3D3D            = TSymbolUniqueId(496);
    static constexpr const TSymbolUniqueId imulExtended_0C0C0C0C            = TSymbolUniqueId(497);
    static constexpr const TSymbolUniqueId imulExtended_1C1C1C1C            = TSymbolUniqueId(498);
    static constexpr const TSymbolUniqueId imulExtended_2C2C2C2C            = TSymbolUniqueId(499);
    static constexpr const TSymbolUniqueId imulExtended_3C3C3C3C            = TSymbolUniqueId(500);
    static constexpr const TSymbolUniqueId texture2D_0H1B                   = TSymbolUniqueId(501);
    static constexpr const TSymbolUniqueId pt0H                             = TSymbolUniqueId(502);
    static constexpr const TSymbolUniqueId texture2DProj_0H2B               = TSymbolUniqueId(503);
    static constexpr const TSymbolUniqueId texture2DProj_0H3B               = TSymbolUniqueId(504);
    static constexpr const TSymbolUniqueId textureCube_0J2B                 = TSymbolUniqueId(505);
    static constexpr const TSymbolUniqueId pt0J                             = TSymbolUniqueId(506);
    static constexpr const TSymbolUniqueId texture2D_0L1B                   = TSymbolUniqueId(507);
    static constexpr const TSymbolUniqueId pt0L                             = TSymbolUniqueId(508);
    static constexpr const TSymbolUniqueId texture2DProj_0L2B               = TSymbolUniqueId(509);
    static constexpr const TSymbolUniqueId texture2DProj_0L3B               = TSymbolUniqueId(510);
    static constexpr const TSymbolUniqueId texture2DRect_0N1B               = TSymbolUniqueId(511);
    static constexpr const TSymbolUniqueId pt0N                             = TSymbolUniqueId(512);
    static constexpr const TSymbolUniqueId texture2DRectProj_0N2B           = TSymbolUniqueId(513);
    static constexpr const TSymbolUniqueId texture2DRectProj_0N3B           = TSymbolUniqueId(514);
    static constexpr const TSymbolUniqueId texture_0N1B                     = TSymbolUniqueId(515);
    static constexpr const TSymbolUniqueId textureProj_0N2B                 = TSymbolUniqueId(516);
    static constexpr const TSymbolUniqueId textureProj_0N3B                 = TSymbolUniqueId(517);
    static constexpr const TSymbolUniqueId texture2DGradEXT_0H1B1B1B        = TSymbolUniqueId(518);
    static constexpr const TSymbolUniqueId texture2DProjGradEXT_0H2B1B1B    = TSymbolUniqueId(519);
    static constexpr const TSymbolUniqueId texture2DProjGradEXT_0H3B1B1B    = TSymbolUniqueId(520);
    static constexpr const TSymbolUniqueId textureCubeGradEXT_0J2B2B2B      = TSymbolUniqueId(521);
    static constexpr const TSymbolUniqueId texture2D_0H1B0B                 = TSymbolUniqueId(522);
    static constexpr const TSymbolUniqueId texture2DProj_0H2B0B             = TSymbolUniqueId(523);
    static constexpr const TSymbolUniqueId texture2DProj_0H3B0B             = TSymbolUniqueId(524);
    static constexpr const TSymbolUniqueId textureCube_0J2B0B               = TSymbolUniqueId(525);
    static constexpr const TSymbolUniqueId dFdxExt_0B                       = TSymbolUniqueId(526);
    static constexpr const TSymbolUniqueId dFdxExt_1B                       = TSymbolUniqueId(527);
    static constexpr const TSymbolUniqueId dFdxExt_2B                       = TSymbolUniqueId(528);
    static constexpr const TSymbolUniqueId dFdxExt_3B                       = TSymbolUniqueId(529);
    static constexpr const TSymbolUniqueId dFdyExt_0B                       = TSymbolUniqueId(530);
    static constexpr const TSymbolUniqueId dFdyExt_1B                       = TSymbolUniqueId(531);
    static constexpr const TSymbolUniqueId dFdyExt_2B                       = TSymbolUniqueId(532);
    static constexpr const TSymbolUniqueId dFdyExt_3B                       = TSymbolUniqueId(533);
    static constexpr const TSymbolUniqueId fwidthExt_0B                     = TSymbolUniqueId(534);
    static constexpr const TSymbolUniqueId fwidthExt_1B                     = TSymbolUniqueId(535);
    static constexpr const TSymbolUniqueId fwidthExt_2B                     = TSymbolUniqueId(536);
    static constexpr const TSymbolUniqueId fwidthExt_3B                     = TSymbolUniqueId(537);
    static constexpr const TSymbolUniqueId texture2DLodEXT_0H1B0B           = TSymbolUniqueId(538);
    static constexpr const TSymbolUniqueId texture2DProjLodEXT_0H2B0B       = TSymbolUniqueId(539);
    static constexpr const TSymbolUniqueId texture2DProjLodEXT_0H3B0B       = TSymbolUniqueId(540);
    static constexpr const TSymbolUniqueId textureCubeLodEXT_0J2B0B         = TSymbolUniqueId(541);
    static constexpr const TSymbolUniqueId texture2DLod_0H1B0B              = TSymbolUniqueId(542);
    static constexpr const TSymbolUniqueId texture2DProjLod_0H2B0B          = TSymbolUniqueId(543);
    static constexpr const TSymbolUniqueId texture2DProjLod_0H3B0B          = TSymbolUniqueId(544);
    static constexpr const TSymbolUniqueId textureCubeLod_0J2B0B            = TSymbolUniqueId(545);
    static constexpr const TSymbolUniqueId texture_0H1B                     = TSymbolUniqueId(546);
    static constexpr const TSymbolUniqueId texture_0P1B                     = TSymbolUniqueId(547);
    static constexpr const TSymbolUniqueId pt0P                             = TSymbolUniqueId(548);
    static constexpr const TSymbolUniqueId texture_0U1B                     = TSymbolUniqueId(549);
    static constexpr const TSymbolUniqueId pt0U                             = TSymbolUniqueId(550);
    static constexpr const TSymbolUniqueId texture_0I2B                     = TSymbolUniqueId(551);
    static constexpr const TSymbolUniqueId pt0I                             = TSymbolUniqueId(552);
    static constexpr const TSymbolUniqueId texture_0Q2B                     = TSymbolUniqueId(553);
    static constexpr const TSymbolUniqueId pt0Q                             = TSymbolUniqueId(554);
    static constexpr const TSymbolUniqueId texture_0V2B                     = TSymbolUniqueId(555);
    static constexpr const TSymbolUniqueId pt0V                             = TSymbolUniqueId(556);
    static constexpr const TSymbolUniqueId texture_0J2B                     = TSymbolUniqueId(557);
    static constexpr const TSymbolUniqueId texture_0R2B                     = TSymbolUniqueId(558);
    static constexpr const TSymbolUniqueId pt0R                             = TSymbolUniqueId(559);
    static constexpr const TSymbolUniqueId texture_0W2B                     = TSymbolUniqueId(560);
    static constexpr const TSymbolUniqueId pt0W                             = TSymbolUniqueId(561);
    static constexpr const TSymbolUniqueId texture_0K2B                     = TSymbolUniqueId(562);
    static constexpr const TSymbolUniqueId pt0K                             = TSymbolUniqueId(563);
    static constexpr const TSymbolUniqueId texture_0S2B                     = TSymbolUniqueId(564);
    static constexpr const TSymbolUniqueId pt0S                             = TSymbolUniqueId(565);
    static constexpr const TSymbolUniqueId texture_0X2B                     = TSymbolUniqueId(566);
    static constexpr const TSymbolUniqueId pt0X                             = TSymbolUniqueId(567);
    static constexpr const TSymbolUniqueId textureProj_0H2B                 = TSymbolUniqueId(568);
    static constexpr const TSymbolUniqueId textureProj_0P2B                 = TSymbolUniqueId(569);
    static constexpr const TSymbolUniqueId textureProj_0U2B                 = TSymbolUniqueId(570);
    static constexpr const TSymbolUniqueId textureProj_0H3B                 = TSymbolUniqueId(571);
    static constexpr const TSymbolUniqueId textureProj_0P3B                 = TSymbolUniqueId(572);
    static constexpr const TSymbolUniqueId textureProj_0U3B                 = TSymbolUniqueId(573);
    static constexpr const TSymbolUniqueId textureProj_0I3B                 = TSymbolUniqueId(574);
    static constexpr const TSymbolUniqueId textureProj_0Q3B                 = TSymbolUniqueId(575);
    static constexpr const TSymbolUniqueId textureProj_0V3B                 = TSymbolUniqueId(576);
    static constexpr const TSymbolUniqueId textureLod_0H1B0B                = TSymbolUniqueId(577);
    static constexpr const TSymbolUniqueId textureLod_0P1B0B                = TSymbolUniqueId(578);
    static constexpr const TSymbolUniqueId textureLod_0U1B0B                = TSymbolUniqueId(579);
    static constexpr const TSymbolUniqueId textureLod_0I2B0B                = TSymbolUniqueId(580);
    static constexpr const TSymbolUniqueId textureLod_0Q2B0B                = TSymbolUniqueId(581);
    static constexpr const TSymbolUniqueId textureLod_0V2B0B                = TSymbolUniqueId(582);
    static constexpr const TSymbolUniqueId textureLod_0J2B0B                = TSymbolUniqueId(583);
    static constexpr const TSymbolUniqueId textureLod_0R2B0B                = TSymbolUniqueId(584);
    static constexpr const TSymbolUniqueId textureLod_0W2B0B                = TSymbolUniqueId(585);
    static constexpr const TSymbolUniqueId textureLod_0K2B0B                = TSymbolUniqueId(586);
    static constexpr const TSymbolUniqueId textureLod_0S2B0B                = TSymbolUniqueId(587);
    static constexpr const TSymbolUniqueId textureLod_0X2B0B                = TSymbolUniqueId(588);
    static constexpr const TSymbolUniqueId texture_0Z2B                     = TSymbolUniqueId(589);
    static constexpr const TSymbolUniqueId pt0Z                             = TSymbolUniqueId(590);
    static constexpr const TSymbolUniqueId texture_0a3B                     = TSymbolUniqueId(591);
    static constexpr const TSymbolUniqueId pt0a                             = TSymbolUniqueId(592);
    static constexpr const TSymbolUniqueId texture_0b3B                     = TSymbolUniqueId(593);
    static constexpr const TSymbolUniqueId pt0b                             = TSymbolUniqueId(594);
    static constexpr const TSymbolUniqueId textureProj_0Z3B                 = TSymbolUniqueId(595);
    static constexpr const TSymbolUniqueId textureLod_0Z2B0B                = TSymbolUniqueId(596);
    static constexpr const TSymbolUniqueId textureSize_0H0C                 = TSymbolUniqueId(597);
    static constexpr const TSymbolUniqueId textureSize_0P0C                 = TSymbolUniqueId(598);
    static constexpr const TSymbolUniqueId textureSize_0U0C                 = TSymbolUniqueId(599);
    static constexpr const TSymbolUniqueId textureSize_0I0C                 = TSymbolUniqueId(600);
    static constexpr const TSymbolUniqueId textureSize_0Q0C                 = TSymbolUniqueId(601);
    static constexpr const TSymbolUniqueId textureSize_0V0C                 = TSymbolUniqueId(602);
    static constexpr const TSymbolUniqueId textureSize_0J0C                 = TSymbolUniqueId(603);
    static constexpr const TSymbolUniqueId textureSize_0R0C                 = TSymbolUniqueId(604);
    static constexpr const TSymbolUniqueId textureSize_0W0C                 = TSymbolUniqueId(605);
    static constexpr const TSymbolUniqueId textureSize_0K0C                 = TSymbolUniqueId(606);
    static constexpr const TSymbolUniqueId textureSize_0S0C                 = TSymbolUniqueId(607);
    static constexpr const TSymbolUniqueId textureSize_0X0C                 = TSymbolUniqueId(608);
    static constexpr const TSymbolUniqueId textureSize_0Z0C                 = TSymbolUniqueId(609);
    static constexpr const TSymbolUniqueId textureSize_0a0C                 = TSymbolUniqueId(610);
    static constexpr const TSymbolUniqueId textureSize_0b0C                 = TSymbolUniqueId(611);
    static constexpr const TSymbolUniqueId textureSize_0O                   = TSymbolUniqueId(612);
    static constexpr const TSymbolUniqueId pt0O                             = TSymbolUniqueId(613);
    static constexpr const TSymbolUniqueId textureSize_0T                   = TSymbolUniqueId(614);
    static constexpr const TSymbolUniqueId pt0T                             = TSymbolUniqueId(615);
    static constexpr const TSymbolUniqueId textureSize_0Y                   = TSymbolUniqueId(616);
    static constexpr const TSymbolUniqueId pt0Y                             = TSymbolUniqueId(617);
    static constexpr const TSymbolUniqueId textureProjLod_0H2B0B            = TSymbolUniqueId(618);
    static constexpr const TSymbolUniqueId textureProjLod_0P2B0B            = TSymbolUniqueId(619);
    static constexpr const TSymbolUniqueId textureProjLod_0U2B0B            = TSymbolUniqueId(620);
    static constexpr const TSymbolUniqueId textureProjLod_0H3B0B            = TSymbolUniqueId(621);
    static constexpr const TSymbolUniqueId textureProjLod_0P3B0B            = TSymbolUniqueId(622);
    static constexpr const TSymbolUniqueId textureProjLod_0U3B0B            = TSymbolUniqueId(623);
    static constexpr const TSymbolUniqueId textureProjLod_0I3B0B            = TSymbolUniqueId(624);
    static constexpr const TSymbolUniqueId textureProjLod_0Q3B0B            = TSymbolUniqueId(625);
    static constexpr const TSymbolUniqueId textureProjLod_0V3B0B            = TSymbolUniqueId(626);
    static constexpr const TSymbolUniqueId textureProjLod_0Z3B0B            = TSymbolUniqueId(627);
    static constexpr const TSymbolUniqueId texelFetch_0H1C0C                = TSymbolUniqueId(628);
    static constexpr const TSymbolUniqueId texelFetch_0P1C0C                = TSymbolUniqueId(629);
    static constexpr const TSymbolUniqueId texelFetch_0U1C0C                = TSymbolUniqueId(630);
    static constexpr const TSymbolUniqueId texelFetch_0I2C0C                = TSymbolUniqueId(631);
    static constexpr const TSymbolUniqueId texelFetch_0Q2C0C                = TSymbolUniqueId(632);
    static constexpr const TSymbolUniqueId texelFetch_0V2C0C                = TSymbolUniqueId(633);
    static constexpr const TSymbolUniqueId texelFetch_0K2C0C                = TSymbolUniqueId(634);
    static constexpr const TSymbolUniqueId texelFetch_0S2C0C                = TSymbolUniqueId(635);
    static constexpr const TSymbolUniqueId texelFetch_0X2C0C                = TSymbolUniqueId(636);
    static constexpr const TSymbolUniqueId textureGrad_0H1B1B1B             = TSymbolUniqueId(637);
    static constexpr const TSymbolUniqueId textureGrad_0P1B1B1B             = TSymbolUniqueId(638);
    static constexpr const TSymbolUniqueId textureGrad_0U1B1B1B             = TSymbolUniqueId(639);
    static constexpr const TSymbolUniqueId textureGrad_0I2B2B2B             = TSymbolUniqueId(640);
    static constexpr const TSymbolUniqueId textureGrad_0Q2B2B2B             = TSymbolUniqueId(641);
    static constexpr const TSymbolUniqueId textureGrad_0V2B2B2B             = TSymbolUniqueId(642);
    static constexpr const TSymbolUniqueId textureGrad_0J2B2B2B             = TSymbolUniqueId(643);
    static constexpr const TSymbolUniqueId textureGrad_0R2B2B2B             = TSymbolUniqueId(644);
    static constexpr const TSymbolUniqueId textureGrad_0W2B2B2B             = TSymbolUniqueId(645);
    static constexpr const TSymbolUniqueId textureGrad_0Z2B1B1B             = TSymbolUniqueId(646);
    static constexpr const TSymbolUniqueId textureGrad_0a3B2B2B             = TSymbolUniqueId(647);
    static constexpr const TSymbolUniqueId textureGrad_0K2B1B1B             = TSymbolUniqueId(648);
    static constexpr const TSymbolUniqueId textureGrad_0S2B1B1B             = TSymbolUniqueId(649);
    static constexpr const TSymbolUniqueId textureGrad_0X2B1B1B             = TSymbolUniqueId(650);
    static constexpr const TSymbolUniqueId textureGrad_0b3B1B1B             = TSymbolUniqueId(651);
    static constexpr const TSymbolUniqueId textureProjGrad_0H2B1B1B         = TSymbolUniqueId(652);
    static constexpr const TSymbolUniqueId textureProjGrad_0P2B1B1B         = TSymbolUniqueId(653);
    static constexpr const TSymbolUniqueId textureProjGrad_0U2B1B1B         = TSymbolUniqueId(654);
    static constexpr const TSymbolUniqueId textureProjGrad_0H3B1B1B         = TSymbolUniqueId(655);
    static constexpr const TSymbolUniqueId textureProjGrad_0P3B1B1B         = TSymbolUniqueId(656);
    static constexpr const TSymbolUniqueId textureProjGrad_0U3B1B1B         = TSymbolUniqueId(657);
    static constexpr const TSymbolUniqueId textureProjGrad_0I3B2B2B         = TSymbolUniqueId(658);
    static constexpr const TSymbolUniqueId textureProjGrad_0Q3B2B2B         = TSymbolUniqueId(659);
    static constexpr const TSymbolUniqueId textureProjGrad_0V3B2B2B         = TSymbolUniqueId(660);
    static constexpr const TSymbolUniqueId textureProjGrad_0Z3B1B1B         = TSymbolUniqueId(661);
    static constexpr const TSymbolUniqueId textureOffset_0H1B1C             = TSymbolUniqueId(662);
    static constexpr const TSymbolUniqueId textureOffset_0P1B1C             = TSymbolUniqueId(663);
    static constexpr const TSymbolUniqueId textureOffset_0U1B1C             = TSymbolUniqueId(664);
    static constexpr const TSymbolUniqueId textureOffset_0I2B2C             = TSymbolUniqueId(665);
    static constexpr const TSymbolUniqueId textureOffset_0Q2B2C             = TSymbolUniqueId(666);
    static constexpr const TSymbolUniqueId textureOffset_0V2B2C             = TSymbolUniqueId(667);
    static constexpr const TSymbolUniqueId textureOffset_0Z2B1C             = TSymbolUniqueId(668);
    static constexpr const TSymbolUniqueId textureOffset_0K2B1C             = TSymbolUniqueId(669);
    static constexpr const TSymbolUniqueId textureOffset_0S2B1C             = TSymbolUniqueId(670);
    static constexpr const TSymbolUniqueId textureOffset_0X2B1C             = TSymbolUniqueId(671);
    static constexpr const TSymbolUniqueId textureProjOffset_0H2B1C         = TSymbolUniqueId(672);
    static constexpr const TSymbolUniqueId textureProjOffset_0P2B1C         = TSymbolUniqueId(673);
    static constexpr const TSymbolUniqueId textureProjOffset_0U2B1C         = TSymbolUniqueId(674);
    static constexpr const TSymbolUniqueId textureProjOffset_0H3B1C         = TSymbolUniqueId(675);
    static constexpr const TSymbolUniqueId textureProjOffset_0P3B1C         = TSymbolUniqueId(676);
    static constexpr const TSymbolUniqueId textureProjOffset_0U3B1C         = TSymbolUniqueId(677);
    static constexpr const TSymbolUniqueId textureProjOffset_0I3B2C         = TSymbolUniqueId(678);
    static constexpr const TSymbolUniqueId textureProjOffset_0Q3B2C         = TSymbolUniqueId(679);
    static constexpr const TSymbolUniqueId textureProjOffset_0V3B2C         = TSymbolUniqueId(680);
    static constexpr const TSymbolUniqueId textureProjOffset_0Z3B1C         = TSymbolUniqueId(681);
    static constexpr const TSymbolUniqueId textureLodOffset_0H1B0B1C        = TSymbolUniqueId(682);
    static constexpr const TSymbolUniqueId textureLodOffset_0P1B0B1C        = TSymbolUniqueId(683);
    static constexpr const TSymbolUniqueId textureLodOffset_0U1B0B1C        = TSymbolUniqueId(684);
    static constexpr const TSymbolUniqueId textureLodOffset_0I2B0B2C        = TSymbolUniqueId(685);
    static constexpr const TSymbolUniqueId textureLodOffset_0Q2B0B2C        = TSymbolUniqueId(686);
    static constexpr const TSymbolUniqueId textureLodOffset_0V2B0B2C        = TSymbolUniqueId(687);
    static constexpr const TSymbolUniqueId textureLodOffset_0Z2B0B1C        = TSymbolUniqueId(688);
    static constexpr const TSymbolUniqueId textureLodOffset_0K2B0B1C        = TSymbolUniqueId(689);
    static constexpr const TSymbolUniqueId textureLodOffset_0S2B0B1C        = TSymbolUniqueId(690);
    static constexpr const TSymbolUniqueId textureLodOffset_0X2B0B1C        = TSymbolUniqueId(691);
    static constexpr const TSymbolUniqueId textureProjLodOffset_0H2B0B1C    = TSymbolUniqueId(692);
    static constexpr const TSymbolUniqueId textureProjLodOffset_0P2B0B1C    = TSymbolUniqueId(693);
    static constexpr const TSymbolUniqueId textureProjLodOffset_0U2B0B1C    = TSymbolUniqueId(694);
    static constexpr const TSymbolUniqueId textureProjLodOffset_0H3B0B1C    = TSymbolUniqueId(695);
    static constexpr const TSymbolUniqueId textureProjLodOffset_0P3B0B1C    = TSymbolUniqueId(696);
    static constexpr const TSymbolUniqueId textureProjLodOffset_0U3B0B1C    = TSymbolUniqueId(697);
    static constexpr const TSymbolUniqueId textureProjLodOffset_0I3B0B2C    = TSymbolUniqueId(698);
    static constexpr const TSymbolUniqueId textureProjLodOffset_0Q3B0B2C    = TSymbolUniqueId(699);
    static constexpr const TSymbolUniqueId textureProjLodOffset_0V3B0B2C    = TSymbolUniqueId(700);
    static constexpr const TSymbolUniqueId textureProjLodOffset_0Z3B0B1C    = TSymbolUniqueId(701);
    static constexpr const TSymbolUniqueId texelFetchOffset_0H1C0C1C        = TSymbolUniqueId(702);
    static constexpr const TSymbolUniqueId texelFetchOffset_0P1C0C1C        = TSymbolUniqueId(703);
    static constexpr const TSymbolUniqueId texelFetchOffset_0U1C0C1C        = TSymbolUniqueId(704);
    static constexpr const TSymbolUniqueId texelFetchOffset_0I2C0C2C        = TSymbolUniqueId(705);
    static constexpr const TSymbolUniqueId texelFetchOffset_0Q2C0C2C        = TSymbolUniqueId(706);
    static constexpr const TSymbolUniqueId texelFetchOffset_0V2C0C2C        = TSymbolUniqueId(707);
    static constexpr const TSymbolUniqueId texelFetchOffset_0K2C0C1C        = TSymbolUniqueId(708);
    static constexpr const TSymbolUniqueId texelFetchOffset_0S2C0C1C        = TSymbolUniqueId(709);
    static constexpr const TSymbolUniqueId texelFetchOffset_0X2C0C1C        = TSymbolUniqueId(710);
    static constexpr const TSymbolUniqueId textureGradOffset_0H1B1B1B1C     = TSymbolUniqueId(711);
    static constexpr const TSymbolUniqueId textureGradOffset_0P1B1B1B1C     = TSymbolUniqueId(712);
    static constexpr const TSymbolUniqueId textureGradOffset_0U1B1B1B1C     = TSymbolUniqueId(713);
    static constexpr const TSymbolUniqueId textureGradOffset_0I2B2B2B2C     = TSymbolUniqueId(714);
    static constexpr const TSymbolUniqueId textureGradOffset_0Q2B2B2B2C     = TSymbolUniqueId(715);
    static constexpr const TSymbolUniqueId textureGradOffset_0V2B2B2B2C     = TSymbolUniqueId(716);
    static constexpr const TSymbolUniqueId textureGradOffset_0Z2B1B1B1C     = TSymbolUniqueId(717);
    static constexpr const TSymbolUniqueId textureGradOffset_0K2B1B1B1C     = TSymbolUniqueId(718);
    static constexpr const TSymbolUniqueId textureGradOffset_0S2B1B1B1C     = TSymbolUniqueId(719);
    static constexpr const TSymbolUniqueId textureGradOffset_0X2B1B1B1C     = TSymbolUniqueId(720);
    static constexpr const TSymbolUniqueId textureGradOffset_0b3B1B1B1C     = TSymbolUniqueId(721);
    static constexpr const TSymbolUniqueId textureProjGradOffset_0H2B1B1B1C = TSymbolUniqueId(722);
    static constexpr const TSymbolUniqueId textureProjGradOffset_0P2B1B1B1C = TSymbolUniqueId(723);
    static constexpr const TSymbolUniqueId textureProjGradOffset_0U2B1B1B1C = TSymbolUniqueId(724);
    static constexpr const TSymbolUniqueId textureProjGradOffset_0H3B1B1B1C = TSymbolUniqueId(725);
    static constexpr const TSymbolUniqueId textureProjGradOffset_0P3B1B1B1C = TSymbolUniqueId(726);
    static constexpr const TSymbolUniqueId textureProjGradOffset_0U3B1B1B1C = TSymbolUniqueId(727);
    static constexpr const TSymbolUniqueId textureProjGradOffset_0I3B2B2B2C = TSymbolUniqueId(728);
    static constexpr const TSymbolUniqueId textureProjGradOffset_0Q3B2B2B2C = TSymbolUniqueId(729);
    static constexpr const TSymbolUniqueId textureProjGradOffset_0V3B2B2B2C = TSymbolUniqueId(730);
    static constexpr const TSymbolUniqueId textureProjGradOffset_0Z3B1B1B1C = TSymbolUniqueId(731);
    static constexpr const TSymbolUniqueId textureOffset_0H1B1C0B           = TSymbolUniqueId(732);
    static constexpr const TSymbolUniqueId textureOffset_0P1B1C0B           = TSymbolUniqueId(733);
    static constexpr const TSymbolUniqueId textureOffset_0U1B1C0B           = TSymbolUniqueId(734);
    static constexpr const TSymbolUniqueId textureOffset_0I2B2C0B           = TSymbolUniqueId(735);
    static constexpr const TSymbolUniqueId textureOffset_0Q2B2C0B           = TSymbolUniqueId(736);
    static constexpr const TSymbolUniqueId textureOffset_0V2B2C0B           = TSymbolUniqueId(737);
    static constexpr const TSymbolUniqueId textureOffset_0Z2B1C0B           = TSymbolUniqueId(738);
    static constexpr const TSymbolUniqueId textureOffset_0K2B1C0B           = TSymbolUniqueId(739);
    static constexpr const TSymbolUniqueId textureOffset_0S2B1C0B           = TSymbolUniqueId(740);
    static constexpr const TSymbolUniqueId textureOffset_0X2B1C0B           = TSymbolUniqueId(741);
    static constexpr const TSymbolUniqueId textureProjOffset_0H2B1C0B       = TSymbolUniqueId(742);
    static constexpr const TSymbolUniqueId textureProjOffset_0P2B1C0B       = TSymbolUniqueId(743);
    static constexpr const TSymbolUniqueId textureProjOffset_0U2B1C0B       = TSymbolUniqueId(744);
    static constexpr const TSymbolUniqueId textureProjOffset_0H3B1C0B       = TSymbolUniqueId(745);
    static constexpr const TSymbolUniqueId textureProjOffset_0P3B1C0B       = TSymbolUniqueId(746);
    static constexpr const TSymbolUniqueId textureProjOffset_0U3B1C0B       = TSymbolUniqueId(747);
    static constexpr const TSymbolUniqueId textureProjOffset_0I3B2C0B       = TSymbolUniqueId(748);
    static constexpr const TSymbolUniqueId textureProjOffset_0Q3B2C0B       = TSymbolUniqueId(749);
    static constexpr const TSymbolUniqueId textureProjOffset_0V3B2C0B       = TSymbolUniqueId(750);
    static constexpr const TSymbolUniqueId textureProjOffset_0Z3B1C0B       = TSymbolUniqueId(751);
    static constexpr const TSymbolUniqueId texture_0L1B                     = TSymbolUniqueId(752);
    static constexpr const TSymbolUniqueId textureProj_0L2B                 = TSymbolUniqueId(753);
    static constexpr const TSymbolUniqueId textureProj_0L3B                 = TSymbolUniqueId(754);
    static constexpr const TSymbolUniqueId textureSize_0L0C                 = TSymbolUniqueId(755);
    static constexpr const TSymbolUniqueId texelFetch_0L1C0C                = TSymbolUniqueId(756);
    static constexpr const TSymbolUniqueId texture_0M1B                     = TSymbolUniqueId(757);
    static constexpr const TSymbolUniqueId pt0M                             = TSymbolUniqueId(758);
    static constexpr const TSymbolUniqueId textureProj_0M2B                 = TSymbolUniqueId(759);
    static constexpr const TSymbolUniqueId textureProj_0M3B                 = TSymbolUniqueId(760);
    static constexpr const TSymbolUniqueId rgb_2_yuv_2B0G                   = TSymbolUniqueId(761);
    static constexpr const TSymbolUniqueId pt0G                             = TSymbolUniqueId(762);
    static constexpr const TSymbolUniqueId yuv_2_rgb_2B0G                   = TSymbolUniqueId(763);
    static constexpr const TSymbolUniqueId textureSize_0M0C                 = TSymbolUniqueId(764);
    static constexpr const TSymbolUniqueId texelFetch_0M1C0C                = TSymbolUniqueId(765);
    static constexpr const TSymbolUniqueId texture_0H1B0B                   = TSymbolUniqueId(766);
    static constexpr const TSymbolUniqueId texture_0P1B0B                   = TSymbolUniqueId(767);
    static constexpr const TSymbolUniqueId texture_0U1B0B                   = TSymbolUniqueId(768);
    static constexpr const TSymbolUniqueId texture_0I2B0B                   = TSymbolUniqueId(769);
    static constexpr const TSymbolUniqueId texture_0Q2B0B                   = TSymbolUniqueId(770);
    static constexpr const TSymbolUniqueId texture_0V2B0B                   = TSymbolUniqueId(771);
    static constexpr const TSymbolUniqueId texture_0J2B0B                   = TSymbolUniqueId(772);
    static constexpr const TSymbolUniqueId texture_0R2B0B                   = TSymbolUniqueId(773);
    static constexpr const TSymbolUniqueId texture_0W2B0B                   = TSymbolUniqueId(774);
    static constexpr const TSymbolUniqueId texture_0K2B0B                   = TSymbolUniqueId(775);
    static constexpr const TSymbolUniqueId texture_0S2B0B                   = TSymbolUniqueId(776);
    static constexpr const TSymbolUniqueId texture_0X2B0B                   = TSymbolUniqueId(777);
    static constexpr const TSymbolUniqueId textureProj_0H2B0B               = TSymbolUniqueId(778);
    static constexpr const TSymbolUniqueId textureProj_0P2B0B               = TSymbolUniqueId(779);
    static constexpr const TSymbolUniqueId textureProj_0U2B0B               = TSymbolUniqueId(780);
    static constexpr const TSymbolUniqueId textureProj_0H3B0B               = TSymbolUniqueId(781);
    static constexpr const TSymbolUniqueId textureProj_0P3B0B               = TSymbolUniqueId(782);
    static constexpr const TSymbolUniqueId textureProj_0U3B0B               = TSymbolUniqueId(783);
    static constexpr const TSymbolUniqueId textureProj_0I3B0B               = TSymbolUniqueId(784);
    static constexpr const TSymbolUniqueId textureProj_0Q3B0B               = TSymbolUniqueId(785);
    static constexpr const TSymbolUniqueId textureProj_0V3B0B               = TSymbolUniqueId(786);
    static constexpr const TSymbolUniqueId texture_0Z2B0B                   = TSymbolUniqueId(787);
    static constexpr const TSymbolUniqueId texture_0a3B0B                   = TSymbolUniqueId(788);
    static constexpr const TSymbolUniqueId textureProj_0Z3B0B               = TSymbolUniqueId(789);
    static constexpr const TSymbolUniqueId texture_0L1B0B                   = TSymbolUniqueId(790);
    static constexpr const TSymbolUniqueId textureProj_0L2B0B               = TSymbolUniqueId(791);
    static constexpr const TSymbolUniqueId textureProj_0L3B0B               = TSymbolUniqueId(792);
    static constexpr const TSymbolUniqueId texture_0M1B0B                   = TSymbolUniqueId(793);
    static constexpr const TSymbolUniqueId textureProj_0M2B0B               = TSymbolUniqueId(794);
    static constexpr const TSymbolUniqueId textureProj_0M3B0B               = TSymbolUniqueId(795);
    static constexpr const TSymbolUniqueId texelFetch_0O1C0C                = TSymbolUniqueId(796);
    static constexpr const TSymbolUniqueId texelFetch_0T1C0C                = TSymbolUniqueId(797);
    static constexpr const TSymbolUniqueId texelFetch_0Y1C0C                = TSymbolUniqueId(798);
    static constexpr const TSymbolUniqueId textureGather_0H1B               = TSymbolUniqueId(799);
    static constexpr const TSymbolUniqueId textureGather_0P1B               = TSymbolUniqueId(800);
    static constexpr const TSymbolUniqueId textureGather_0U1B               = TSymbolUniqueId(801);
    static constexpr const TSymbolUniqueId textureGather_0H1B0C             = TSymbolUniqueId(802);
    static constexpr const TSymbolUniqueId textureGather_0P1B0C             = TSymbolUniqueId(803);
    static constexpr const TSymbolUniqueId textureGather_0U1B0C             = TSymbolUniqueId(804);
    static constexpr const TSymbolUniqueId textureGather_0K2B               = TSymbolUniqueId(805);
    static constexpr const TSymbolUniqueId textureGather_0S2B               = TSymbolUniqueId(806);
    static constexpr const TSymbolUniqueId textureGather_0X2B               = TSymbolUniqueId(807);
    static constexpr const TSymbolUniqueId textureGather_0K2B0C             = TSymbolUniqueId(808);
    static constexpr const TSymbolUniqueId textureGather_0S2B0C             = TSymbolUniqueId(809);
    static constexpr const TSymbolUniqueId textureGather_0X2B0C             = TSymbolUniqueId(810);
    static constexpr const TSymbolUniqueId textureGather_0J2B               = TSymbolUniqueId(811);
    static constexpr const TSymbolUniqueId textureGather_0R2B               = TSymbolUniqueId(812);
    static constexpr const TSymbolUniqueId textureGather_0W2B               = TSymbolUniqueId(813);
    static constexpr const TSymbolUniqueId textureGather_0J2B0C             = TSymbolUniqueId(814);
    static constexpr const TSymbolUniqueId textureGather_0R2B0C             = TSymbolUniqueId(815);
    static constexpr const TSymbolUniqueId textureGather_0W2B0C             = TSymbolUniqueId(816);
    static constexpr const TSymbolUniqueId textureGather_0Z1B               = TSymbolUniqueId(817);
    static constexpr const TSymbolUniqueId textureGather_0Z1B0B             = TSymbolUniqueId(818);
    static constexpr const TSymbolUniqueId textureGather_0b2B               = TSymbolUniqueId(819);
    static constexpr const TSymbolUniqueId textureGather_0b2B0B             = TSymbolUniqueId(820);
    static constexpr const TSymbolUniqueId textureGather_0a2B               = TSymbolUniqueId(821);
    static constexpr const TSymbolUniqueId textureGather_0a2B0B             = TSymbolUniqueId(822);
    static constexpr const TSymbolUniqueId textureGatherOffset_0H1B1C       = TSymbolUniqueId(823);
    static constexpr const TSymbolUniqueId textureGatherOffset_0P1B1C       = TSymbolUniqueId(824);
    static constexpr const TSymbolUniqueId textureGatherOffset_0U1B1C       = TSymbolUniqueId(825);
    static constexpr const TSymbolUniqueId textureGatherOffset_0H1B1C0C     = TSymbolUniqueId(826);
    static constexpr const TSymbolUniqueId textureGatherOffset_0P1B1C0C     = TSymbolUniqueId(827);
    static constexpr const TSymbolUniqueId textureGatherOffset_0U1B1C0C     = TSymbolUniqueId(828);
    static constexpr const TSymbolUniqueId textureGatherOffset_0K2B1C       = TSymbolUniqueId(829);
    static constexpr const TSymbolUniqueId textureGatherOffset_0S2B1C       = TSymbolUniqueId(830);
    static constexpr const TSymbolUniqueId textureGatherOffset_0X2B1C       = TSymbolUniqueId(831);
    static constexpr const TSymbolUniqueId textureGatherOffset_0K2B1C0C     = TSymbolUniqueId(832);
    static constexpr const TSymbolUniqueId textureGatherOffset_0S2B1C0C     = TSymbolUniqueId(833);
    static constexpr const TSymbolUniqueId textureGatherOffset_0X2B1C0C     = TSymbolUniqueId(834);
    static constexpr const TSymbolUniqueId textureGatherOffset_0Z1B0B1C     = TSymbolUniqueId(835);
    static constexpr const TSymbolUniqueId textureGatherOffset_0b2B0B1C     = TSymbolUniqueId(836);
    static constexpr const TSymbolUniqueId dFdx_0B                          = TSymbolUniqueId(837);
    static constexpr const TSymbolUniqueId dFdx_1B                          = TSymbolUniqueId(838);
    static constexpr const TSymbolUniqueId dFdx_2B                          = TSymbolUniqueId(839);
    static constexpr const TSymbolUniqueId dFdx_3B                          = TSymbolUniqueId(840);
    static constexpr const TSymbolUniqueId dFdy_0B                          = TSymbolUniqueId(841);
    static constexpr const TSymbolUniqueId dFdy_1B                          = TSymbolUniqueId(842);
    static constexpr const TSymbolUniqueId dFdy_2B                          = TSymbolUniqueId(843);
    static constexpr const TSymbolUniqueId dFdy_3B                          = TSymbolUniqueId(844);
    static constexpr const TSymbolUniqueId fwidth_0B                        = TSymbolUniqueId(845);
    static constexpr const TSymbolUniqueId fwidth_1B                        = TSymbolUniqueId(846);
    static constexpr const TSymbolUniqueId fwidth_2B                        = TSymbolUniqueId(847);
    static constexpr const TSymbolUniqueId fwidth_3B                        = TSymbolUniqueId(848);
    static constexpr const TSymbolUniqueId atomicCounter_0F                 = TSymbolUniqueId(849);
    static constexpr const TSymbolUniqueId pt0F                             = TSymbolUniqueId(850);
    static constexpr const TSymbolUniqueId atomicCounterIncrement_0F        = TSymbolUniqueId(851);
    static constexpr const TSymbolUniqueId atomicCounterDecrement_0F        = TSymbolUniqueId(852);
    static constexpr const TSymbolUniqueId atomicAdd_0D0D                   = TSymbolUniqueId(853);
    static constexpr const TSymbolUniqueId pt_io_0D                         = TSymbolUniqueId(854);
    static constexpr const TSymbolUniqueId atomicAdd_0C0C                   = TSymbolUniqueId(855);
    static constexpr const TSymbolUniqueId pt_io_0C                         = TSymbolUniqueId(856);
    static constexpr const TSymbolUniqueId atomicMin_0D0D                   = TSymbolUniqueId(857);
    static constexpr const TSymbolUniqueId atomicMin_0C0C                   = TSymbolUniqueId(858);
    static constexpr const TSymbolUniqueId atomicMax_0D0D                   = TSymbolUniqueId(859);
    static constexpr const TSymbolUniqueId atomicMax_0C0C                   = TSymbolUniqueId(860);
    static constexpr const TSymbolUniqueId atomicAnd_0D0D                   = TSymbolUniqueId(861);
    static constexpr const TSymbolUniqueId atomicAnd_0C0C                   = TSymbolUniqueId(862);
    static constexpr const TSymbolUniqueId atomicOr_0D0D                    = TSymbolUniqueId(863);
    static constexpr const TSymbolUniqueId atomicOr_0C0C                    = TSymbolUniqueId(864);
    static constexpr const TSymbolUniqueId atomicXor_0D0D                   = TSymbolUniqueId(865);
    static constexpr const TSymbolUniqueId atomicXor_0C0C                   = TSymbolUniqueId(866);
    static constexpr const TSymbolUniqueId atomicExchange_0D0D              = TSymbolUniqueId(867);
    static constexpr const TSymbolUniqueId atomicExchange_0C0C              = TSymbolUniqueId(868);
    static constexpr const TSymbolUniqueId atomicCompSwap_0D0D0D            = TSymbolUniqueId(869);
    static constexpr const TSymbolUniqueId atomicCompSwap_0C0C0C            = TSymbolUniqueId(870);
    static constexpr const TSymbolUniqueId imageSize_0c                     = TSymbolUniqueId(871);
    static constexpr const TSymbolUniqueId pt0c                             = TSymbolUniqueId(872);
    static constexpr const TSymbolUniqueId imageSize_0d                     = TSymbolUniqueId(873);
    static constexpr const TSymbolUniqueId pt0d                             = TSymbolUniqueId(874);
    static constexpr const TSymbolUniqueId imageSize_0e                     = TSymbolUniqueId(875);
    static constexpr const TSymbolUniqueId pt0e                             = TSymbolUniqueId(876);
    static constexpr const TSymbolUniqueId imageSize_0f                     = TSymbolUniqueId(877);
    static constexpr const TSymbolUniqueId pt0f                             = TSymbolUniqueId(878);
    static constexpr const TSymbolUniqueId imageSize_0g                     = TSymbolUniqueId(879);
    static constexpr const TSymbolUniqueId pt0g                             = TSymbolUniqueId(880);
    static constexpr const TSymbolUniqueId imageSize_0h                     = TSymbolUniqueId(881);
    static constexpr const TSymbolUniqueId pt0h                             = TSymbolUniqueId(882);
    static constexpr const TSymbolUniqueId imageSize_0i                     = TSymbolUniqueId(883);
    static constexpr const TSymbolUniqueId pt0i                             = TSymbolUniqueId(884);
    static constexpr const TSymbolUniqueId imageSize_0j                     = TSymbolUniqueId(885);
    static constexpr const TSymbolUniqueId pt0j                             = TSymbolUniqueId(886);
    static constexpr const TSymbolUniqueId imageSize_0k                     = TSymbolUniqueId(887);
    static constexpr const TSymbolUniqueId pt0k                             = TSymbolUniqueId(888);
    static constexpr const TSymbolUniqueId imageSize_0l                     = TSymbolUniqueId(889);
    static constexpr const TSymbolUniqueId pt0l                             = TSymbolUniqueId(890);
    static constexpr const TSymbolUniqueId imageSize_0m                     = TSymbolUniqueId(891);
    static constexpr const TSymbolUniqueId pt0m                             = TSymbolUniqueId(892);
    static constexpr const TSymbolUniqueId imageSize_0n                     = TSymbolUniqueId(893);
    static constexpr const TSymbolUniqueId pt0n                             = TSymbolUniqueId(894);
    static constexpr const TSymbolUniqueId imageLoad_0c1C                   = TSymbolUniqueId(895);
    static constexpr const TSymbolUniqueId imageLoad_0d1C                   = TSymbolUniqueId(896);
    static constexpr const TSymbolUniqueId imageLoad_0e1C                   = TSymbolUniqueId(897);
    static constexpr const TSymbolUniqueId imageLoad_0f2C                   = TSymbolUniqueId(898);
    static constexpr const TSymbolUniqueId imageLoad_0g2C                   = TSymbolUniqueId(899);
    static constexpr const TSymbolUniqueId imageLoad_0h2C                   = TSymbolUniqueId(900);
    static constexpr const TSymbolUniqueId imageLoad_0i2C                   = TSymbolUniqueId(901);
    static constexpr const TSymbolUniqueId imageLoad_0j2C                   = TSymbolUniqueId(902);
    static constexpr const TSymbolUniqueId imageLoad_0k2C                   = TSymbolUniqueId(903);
    static constexpr const TSymbolUniqueId imageLoad_0l2C                   = TSymbolUniqueId(904);
    static constexpr const TSymbolUniqueId imageLoad_0m2C                   = TSymbolUniqueId(905);
    static constexpr const TSymbolUniqueId imageLoad_0n2C                   = TSymbolUniqueId(906);
    static constexpr const TSymbolUniqueId imageStore_0c1C3B                = TSymbolUniqueId(907);
    static constexpr const TSymbolUniqueId imageStore_0d1C3C                = TSymbolUniqueId(908);
    static constexpr const TSymbolUniqueId imageStore_0e1C3D                = TSymbolUniqueId(909);
    static constexpr const TSymbolUniqueId imageStore_0f2C3B                = TSymbolUniqueId(910);
    static constexpr const TSymbolUniqueId imageStore_0g2C3C                = TSymbolUniqueId(911);
    static constexpr const TSymbolUniqueId imageStore_0h2C3D                = TSymbolUniqueId(912);
    static constexpr const TSymbolUniqueId imageStore_0i2C3B                = TSymbolUniqueId(913);
    static constexpr const TSymbolUniqueId imageStore_0j2C3C                = TSymbolUniqueId(914);
    static constexpr const TSymbolUniqueId imageStore_0k2C3D                = TSymbolUniqueId(915);
    static constexpr const TSymbolUniqueId imageStore_0l2C3B                = TSymbolUniqueId(916);
    static constexpr const TSymbolUniqueId imageStore_0m2C3C                = TSymbolUniqueId(917);
    static constexpr const TSymbolUniqueId imageStore_0n2C3D                = TSymbolUniqueId(918);
    static constexpr const TSymbolUniqueId memoryBarrier_                   = TSymbolUniqueId(919);
    static constexpr const TSymbolUniqueId memoryBarrierAtomicCounter_      = TSymbolUniqueId(920);
    static constexpr const TSymbolUniqueId memoryBarrierBuffer_             = TSymbolUniqueId(921);
    static constexpr const TSymbolUniqueId memoryBarrierImage_              = TSymbolUniqueId(922);
    static constexpr const TSymbolUniqueId barrier_                         = TSymbolUniqueId(923);
    static constexpr const TSymbolUniqueId memoryBarrierShared_             = TSymbolUniqueId(924);
    static constexpr const TSymbolUniqueId groupMemoryBarrier_              = TSymbolUniqueId(925);
    static constexpr const TSymbolUniqueId EmitVertex_                      = TSymbolUniqueId(926);
    static constexpr const TSymbolUniqueId EndPrimitive_                    = TSymbolUniqueId(927);
    static constexpr const TSymbolUniqueId gl_DepthRangeParameters          = TSymbolUniqueId(928);
    static constexpr const TSymbolUniqueId gl_DepthRange                    = TSymbolUniqueId(929);
    static constexpr const TSymbolUniqueId gl_MaxVertexAttribs              = TSymbolUniqueId(930);
    static constexpr const TSymbolUniqueId gl_MaxVertexUniformVectors       = TSymbolUniqueId(931);
    static constexpr const TSymbolUniqueId gl_MaxVertexTextureImageUnits    = TSymbolUniqueId(932);
    static constexpr const TSymbolUniqueId gl_MaxCombinedTextureImageUnits  = TSymbolUniqueId(933);
    static constexpr const TSymbolUniqueId gl_MaxTextureImageUnits          = TSymbolUniqueId(934);
    static constexpr const TSymbolUniqueId gl_MaxFragmentUniformVectors     = TSymbolUniqueId(935);
    static constexpr const TSymbolUniqueId gl_MaxVaryingVectors             = TSymbolUniqueId(936);
    static constexpr const TSymbolUniqueId gl_MaxDrawBuffers                = TSymbolUniqueId(937);
    static constexpr const TSymbolUniqueId gl_MaxDualSourceDrawBuffersEXT   = TSymbolUniqueId(938);
    static constexpr const TSymbolUniqueId gl_MaxVertexOutputVectors        = TSymbolUniqueId(939);
    static constexpr const TSymbolUniqueId gl_MaxFragmentInputVectors       = TSymbolUniqueId(940);
    static constexpr const TSymbolUniqueId gl_MinProgramTexelOffset         = TSymbolUniqueId(941);
    static constexpr const TSymbolUniqueId gl_MaxProgramTexelOffset         = TSymbolUniqueId(942);
    static constexpr const TSymbolUniqueId gl_MaxImageUnits                 = TSymbolUniqueId(943);
    static constexpr const TSymbolUniqueId gl_MaxVertexImageUniforms        = TSymbolUniqueId(944);
    static constexpr const TSymbolUniqueId gl_MaxFragmentImageUniforms      = TSymbolUniqueId(945);
    static constexpr const TSymbolUniqueId gl_MaxComputeImageUniforms       = TSymbolUniqueId(946);
    static constexpr const TSymbolUniqueId gl_MaxCombinedImageUniforms      = TSymbolUniqueId(947);
    static constexpr const TSymbolUniqueId gl_MaxCombinedShaderOutputResources =
        TSymbolUniqueId(948);
    static constexpr const TSymbolUniqueId gl_MaxComputeWorkGroupCount       = TSymbolUniqueId(949);
    static constexpr const TSymbolUniqueId gl_MaxComputeWorkGroupSize        = TSymbolUniqueId(950);
    static constexpr const TSymbolUniqueId gl_MaxComputeUniformComponents    = TSymbolUniqueId(951);
    static constexpr const TSymbolUniqueId gl_MaxComputeTextureImageUnits    = TSymbolUniqueId(952);
    static constexpr const TSymbolUniqueId gl_MaxComputeAtomicCounters       = TSymbolUniqueId(953);
    static constexpr const TSymbolUniqueId gl_MaxComputeAtomicCounterBuffers = TSymbolUniqueId(954);
    static constexpr const TSymbolUniqueId gl_MaxVertexAtomicCounters        = TSymbolUniqueId(955);
    static constexpr const TSymbolUniqueId gl_MaxFragmentAtomicCounters      = TSymbolUniqueId(956);
    static constexpr const TSymbolUniqueId gl_MaxCombinedAtomicCounters      = TSymbolUniqueId(957);
    static constexpr const TSymbolUniqueId gl_MaxAtomicCounterBindings       = TSymbolUniqueId(958);
    static constexpr const TSymbolUniqueId gl_MaxVertexAtomicCounterBuffers  = TSymbolUniqueId(959);
    static constexpr const TSymbolUniqueId gl_MaxFragmentAtomicCounterBuffers =
        TSymbolUniqueId(960);
    static constexpr const TSymbolUniqueId gl_MaxCombinedAtomicCounterBuffers =
        TSymbolUniqueId(961);
    static constexpr const TSymbolUniqueId gl_MaxAtomicCounterBufferSize   = TSymbolUniqueId(962);
    static constexpr const TSymbolUniqueId gl_MaxGeometryInputComponents   = TSymbolUniqueId(963);
    static constexpr const TSymbolUniqueId gl_MaxGeometryOutputComponents  = TSymbolUniqueId(964);
    static constexpr const TSymbolUniqueId gl_MaxGeometryImageUniforms     = TSymbolUniqueId(965);
    static constexpr const TSymbolUniqueId gl_MaxGeometryTextureImageUnits = TSymbolUniqueId(966);
    static constexpr const TSymbolUniqueId gl_MaxGeometryOutputVertices    = TSymbolUniqueId(967);
    static constexpr const TSymbolUniqueId gl_MaxGeometryTotalOutputComponents =
        TSymbolUniqueId(968);
    static constexpr const TSymbolUniqueId gl_MaxGeometryUniformComponents = TSymbolUniqueId(969);
    static constexpr const TSymbolUniqueId gl_MaxGeometryAtomicCounters    = TSymbolUniqueId(970);
    static constexpr const TSymbolUniqueId gl_MaxGeometryAtomicCounterBuffers =
        TSymbolUniqueId(971);
    static constexpr const TSymbolUniqueId gl_FragCoord             = TSymbolUniqueId(972);
    static constexpr const TSymbolUniqueId gl_FrontFacing           = TSymbolUniqueId(973);
    static constexpr const TSymbolUniqueId gl_PointCoord            = TSymbolUniqueId(974);
    static constexpr const TSymbolUniqueId gl_FragColor             = TSymbolUniqueId(975);
    static constexpr const TSymbolUniqueId gl_FragData              = TSymbolUniqueId(976);
    static constexpr const TSymbolUniqueId gl_FragDepth             = TSymbolUniqueId(977);
    static constexpr const TSymbolUniqueId gl_SecondaryFragColorEXT = TSymbolUniqueId(978);
    static constexpr const TSymbolUniqueId gl_SecondaryFragDataEXT  = TSymbolUniqueId(979);
    static constexpr const TSymbolUniqueId gl_FragDepthEXT          = TSymbolUniqueId(980);
    static constexpr const TSymbolUniqueId gl_LastFragData          = TSymbolUniqueId(981);
    static constexpr const TSymbolUniqueId gl_LastFragColor         = TSymbolUniqueId(982);
    static constexpr const TSymbolUniqueId gl_LastFragDataNV        = TSymbolUniqueId(983);
    static constexpr const TSymbolUniqueId gl_LastFragColorARM      = TSymbolUniqueId(984);
    static constexpr const TSymbolUniqueId gl_PrimitiveID           = TSymbolUniqueId(985);
    static constexpr const TSymbolUniqueId gl_Layer                 = TSymbolUniqueId(986);
    static constexpr const TSymbolUniqueId gl_Position              = TSymbolUniqueId(987);
    static constexpr const TSymbolUniqueId gl_PointSize             = TSymbolUniqueId(988);
    static constexpr const TSymbolUniqueId gl_InstanceID            = TSymbolUniqueId(989);
    static constexpr const TSymbolUniqueId gl_VertexID              = TSymbolUniqueId(990);
    static constexpr const TSymbolUniqueId gl_ViewportIndex         = TSymbolUniqueId(991);
    static constexpr const TSymbolUniqueId gl_LayerVS               = TSymbolUniqueId(992);
    static constexpr const TSymbolUniqueId gl_NumWorkGroups         = TSymbolUniqueId(993);
    static constexpr const TSymbolUniqueId gl_WorkGroupSize         = TSymbolUniqueId(994);
    static constexpr const TSymbolUniqueId gl_WorkGroupID           = TSymbolUniqueId(995);
    static constexpr const TSymbolUniqueId gl_LocalInvocationID     = TSymbolUniqueId(996);
    static constexpr const TSymbolUniqueId gl_GlobalInvocationID    = TSymbolUniqueId(997);
    static constexpr const TSymbolUniqueId gl_LocalInvocationIndex  = TSymbolUniqueId(998);
    static constexpr const TSymbolUniqueId gl_PrimitiveIDIn         = TSymbolUniqueId(999);
    static constexpr const TSymbolUniqueId gl_InvocationID          = TSymbolUniqueId(1000);
    static constexpr const TSymbolUniqueId gl_PrimitiveIDGS         = TSymbolUniqueId(1001);
    static constexpr const TSymbolUniqueId gl_LayerGS               = TSymbolUniqueId(1002);
    static constexpr const TSymbolUniqueId gl_PerVertex             = TSymbolUniqueId(1003);
    static constexpr const TSymbolUniqueId gl_in                    = TSymbolUniqueId(1004);
    static constexpr const TSymbolUniqueId gl_PerVertexOutBlock     = TSymbolUniqueId(1005);
    static constexpr const TSymbolUniqueId gl_PositionGS            = TSymbolUniqueId(1006);
    static constexpr const TSymbolUniqueId gl_ViewID_OVR            = TSymbolUniqueId(1007);
    static constexpr const TSymbolUniqueId gl_ViewID_OVRESSL1       = TSymbolUniqueId(1008);

};  // namespace BuiltInId

// Since some of the BuiltInId declarations are used outside of constexpr expressions, we need to
// have these definitions without an initializer. C++17 should eventually remove the need for this.
constexpr const TSymbolUniqueId BuiltInId::gl_DepthRangeParameters;
constexpr const TSymbolUniqueId BuiltInId::gl_DepthRange;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxVertexAttribs;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxVertexUniformVectors;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxVertexTextureImageUnits;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxCombinedTextureImageUnits;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxTextureImageUnits;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxFragmentUniformVectors;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxVaryingVectors;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxDrawBuffers;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxDualSourceDrawBuffersEXT;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxVertexOutputVectors;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxFragmentInputVectors;
constexpr const TSymbolUniqueId BuiltInId::gl_MinProgramTexelOffset;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxProgramTexelOffset;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxImageUnits;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxVertexImageUniforms;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxFragmentImageUniforms;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxComputeImageUniforms;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxCombinedImageUniforms;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxCombinedShaderOutputResources;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxComputeWorkGroupCount;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxComputeWorkGroupSize;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxComputeUniformComponents;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxComputeTextureImageUnits;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxComputeAtomicCounters;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxComputeAtomicCounterBuffers;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxVertexAtomicCounters;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxFragmentAtomicCounters;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxCombinedAtomicCounters;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxAtomicCounterBindings;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxVertexAtomicCounterBuffers;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxFragmentAtomicCounterBuffers;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxCombinedAtomicCounterBuffers;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxAtomicCounterBufferSize;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxGeometryInputComponents;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxGeometryOutputComponents;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxGeometryImageUniforms;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxGeometryTextureImageUnits;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxGeometryOutputVertices;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxGeometryTotalOutputComponents;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxGeometryUniformComponents;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxGeometryAtomicCounters;
constexpr const TSymbolUniqueId BuiltInId::gl_MaxGeometryAtomicCounterBuffers;
constexpr const TSymbolUniqueId BuiltInId::gl_FragCoord;
constexpr const TSymbolUniqueId BuiltInId::gl_FrontFacing;
constexpr const TSymbolUniqueId BuiltInId::gl_PointCoord;
constexpr const TSymbolUniqueId BuiltInId::gl_FragColor;
constexpr const TSymbolUniqueId BuiltInId::gl_FragData;
constexpr const TSymbolUniqueId BuiltInId::gl_FragDepth;
constexpr const TSymbolUniqueId BuiltInId::gl_SecondaryFragColorEXT;
constexpr const TSymbolUniqueId BuiltInId::gl_SecondaryFragDataEXT;
constexpr const TSymbolUniqueId BuiltInId::gl_FragDepthEXT;
constexpr const TSymbolUniqueId BuiltInId::gl_LastFragData;
constexpr const TSymbolUniqueId BuiltInId::gl_LastFragColor;
constexpr const TSymbolUniqueId BuiltInId::gl_LastFragDataNV;
constexpr const TSymbolUniqueId BuiltInId::gl_LastFragColorARM;
constexpr const TSymbolUniqueId BuiltInId::gl_PrimitiveID;
constexpr const TSymbolUniqueId BuiltInId::gl_Layer;
constexpr const TSymbolUniqueId BuiltInId::gl_Position;
constexpr const TSymbolUniqueId BuiltInId::gl_PointSize;
constexpr const TSymbolUniqueId BuiltInId::gl_InstanceID;
constexpr const TSymbolUniqueId BuiltInId::gl_VertexID;
constexpr const TSymbolUniqueId BuiltInId::gl_ViewportIndex;
constexpr const TSymbolUniqueId BuiltInId::gl_LayerVS;
constexpr const TSymbolUniqueId BuiltInId::gl_NumWorkGroups;
constexpr const TSymbolUniqueId BuiltInId::gl_WorkGroupSize;
constexpr const TSymbolUniqueId BuiltInId::gl_WorkGroupID;
constexpr const TSymbolUniqueId BuiltInId::gl_LocalInvocationID;
constexpr const TSymbolUniqueId BuiltInId::gl_GlobalInvocationID;
constexpr const TSymbolUniqueId BuiltInId::gl_LocalInvocationIndex;
constexpr const TSymbolUniqueId BuiltInId::gl_PrimitiveIDIn;
constexpr const TSymbolUniqueId BuiltInId::gl_InvocationID;
constexpr const TSymbolUniqueId BuiltInId::gl_PrimitiveIDGS;
constexpr const TSymbolUniqueId BuiltInId::gl_LayerGS;
constexpr const TSymbolUniqueId BuiltInId::gl_PerVertex;
constexpr const TSymbolUniqueId BuiltInId::gl_in;
constexpr const TSymbolUniqueId BuiltInId::gl_PerVertexOutBlock;
constexpr const TSymbolUniqueId BuiltInId::gl_PositionGS;
constexpr const TSymbolUniqueId BuiltInId::gl_ViewID_OVR;
constexpr const TSymbolUniqueId BuiltInId::gl_ViewID_OVRESSL1;

const int TSymbolTable::kLastBuiltInId = 1008;

namespace BuiltInName
{

constexpr const ImmutableString _empty("");
constexpr const ImmutableString EmitVertex("EmitVertex");
constexpr const ImmutableString EmitVertex_("EmitVertex(");
constexpr const ImmutableString EndPrimitive("EndPrimitive");
constexpr const ImmutableString EndPrimitive_("EndPrimitive(");
constexpr const ImmutableString abs("abs");
constexpr const ImmutableString abs_0B("abs(0B");
constexpr const ImmutableString abs_0C("abs(0C");
constexpr const ImmutableString abs_1B("abs(1B");
constexpr const ImmutableString abs_1C("abs(1C");
constexpr const ImmutableString abs_2B("abs(2B");
constexpr const ImmutableString abs_2C("abs(2C");
constexpr const ImmutableString abs_3B("abs(3B");
constexpr const ImmutableString abs_3C("abs(3C");
constexpr const ImmutableString acos("acos");
constexpr const ImmutableString acos_0B("acos(0B");
constexpr const ImmutableString acos_1B("acos(1B");
constexpr const ImmutableString acos_2B("acos(2B");
constexpr const ImmutableString acos_3B("acos(3B");
constexpr const ImmutableString acosh("acosh");
constexpr const ImmutableString acosh_0B("acosh(0B");
constexpr const ImmutableString acosh_1B("acosh(1B");
constexpr const ImmutableString acosh_2B("acosh(2B");
constexpr const ImmutableString acosh_3B("acosh(3B");
constexpr const ImmutableString all("all");
constexpr const ImmutableString all_1E("all(1E");
constexpr const ImmutableString all_2E("all(2E");
constexpr const ImmutableString all_3E("all(3E");
constexpr const ImmutableString any("any");
constexpr const ImmutableString any_1E("any(1E");
constexpr const ImmutableString any_2E("any(2E");
constexpr const ImmutableString any_3E("any(3E");
constexpr const ImmutableString asin("asin");
constexpr const ImmutableString asin_0B("asin(0B");
constexpr const ImmutableString asin_1B("asin(1B");
constexpr const ImmutableString asin_2B("asin(2B");
constexpr const ImmutableString asin_3B("asin(3B");
constexpr const ImmutableString asinh("asinh");
constexpr const ImmutableString asinh_0B("asinh(0B");
constexpr const ImmutableString asinh_1B("asinh(1B");
constexpr const ImmutableString asinh_2B("asinh(2B");
constexpr const ImmutableString asinh_3B("asinh(3B");
constexpr const ImmutableString atan("atan");
constexpr const ImmutableString atan_0B("atan(0B");
constexpr const ImmutableString atan_0B0B("atan(0B0B");
constexpr const ImmutableString atan_1B("atan(1B");
constexpr const ImmutableString atan_1B1B("atan(1B1B");
constexpr const ImmutableString atan_2B("atan(2B");
constexpr const ImmutableString atan_2B2B("atan(2B2B");
constexpr const ImmutableString atan_3B("atan(3B");
constexpr const ImmutableString atan_3B3B("atan(3B3B");
constexpr const ImmutableString atanh("atanh");
constexpr const ImmutableString atanh_0B("atanh(0B");
constexpr const ImmutableString atanh_1B("atanh(1B");
constexpr const ImmutableString atanh_2B("atanh(2B");
constexpr const ImmutableString atanh_3B("atanh(3B");
constexpr const ImmutableString atomicAdd("atomicAdd");
constexpr const ImmutableString atomicAdd_0C0C("atomicAdd(0C0C");
constexpr const ImmutableString atomicAdd_0D0D("atomicAdd(0D0D");
constexpr const ImmutableString atomicAnd("atomicAnd");
constexpr const ImmutableString atomicAnd_0C0C("atomicAnd(0C0C");
constexpr const ImmutableString atomicAnd_0D0D("atomicAnd(0D0D");
constexpr const ImmutableString atomicCompSwap("atomicCompSwap");
constexpr const ImmutableString atomicCompSwap_0C0C0C("atomicCompSwap(0C0C0C");
constexpr const ImmutableString atomicCompSwap_0D0D0D("atomicCompSwap(0D0D0D");
constexpr const ImmutableString atomicCounter("atomicCounter");
constexpr const ImmutableString atomicCounterDecrement("atomicCounterDecrement");
constexpr const ImmutableString atomicCounterDecrement_0F("atomicCounterDecrement(0F");
constexpr const ImmutableString atomicCounterIncrement("atomicCounterIncrement");
constexpr const ImmutableString atomicCounterIncrement_0F("atomicCounterIncrement(0F");
constexpr const ImmutableString atomicCounter_0F("atomicCounter(0F");
constexpr const ImmutableString atomicExchange("atomicExchange");
constexpr const ImmutableString atomicExchange_0C0C("atomicExchange(0C0C");
constexpr const ImmutableString atomicExchange_0D0D("atomicExchange(0D0D");
constexpr const ImmutableString atomicMax("atomicMax");
constexpr const ImmutableString atomicMax_0C0C("atomicMax(0C0C");
constexpr const ImmutableString atomicMax_0D0D("atomicMax(0D0D");
constexpr const ImmutableString atomicMin("atomicMin");
constexpr const ImmutableString atomicMin_0C0C("atomicMin(0C0C");
constexpr const ImmutableString atomicMin_0D0D("atomicMin(0D0D");
constexpr const ImmutableString atomicOr("atomicOr");
constexpr const ImmutableString atomicOr_0C0C("atomicOr(0C0C");
constexpr const ImmutableString atomicOr_0D0D("atomicOr(0D0D");
constexpr const ImmutableString atomicXor("atomicXor");
constexpr const ImmutableString atomicXor_0C0C("atomicXor(0C0C");
constexpr const ImmutableString atomicXor_0D0D("atomicXor(0D0D");
constexpr const ImmutableString barrier("barrier");
constexpr const ImmutableString barrier_("barrier(");
constexpr const ImmutableString bitCount("bitCount");
constexpr const ImmutableString bitCount_0C("bitCount(0C");
constexpr const ImmutableString bitCount_0D("bitCount(0D");
constexpr const ImmutableString bitCount_1C("bitCount(1C");
constexpr const ImmutableString bitCount_1D("bitCount(1D");
constexpr const ImmutableString bitCount_2C("bitCount(2C");
constexpr const ImmutableString bitCount_2D("bitCount(2D");
constexpr const ImmutableString bitCount_3C("bitCount(3C");
constexpr const ImmutableString bitCount_3D("bitCount(3D");
constexpr const ImmutableString bitfieldExtract("bitfieldExtract");
constexpr const ImmutableString bitfieldExtract_0C0C0C("bitfieldExtract(0C0C0C");
constexpr const ImmutableString bitfieldExtract_0D0C0C("bitfieldExtract(0D0C0C");
constexpr const ImmutableString bitfieldExtract_1C0C0C("bitfieldExtract(1C0C0C");
constexpr const ImmutableString bitfieldExtract_1D0C0C("bitfieldExtract(1D0C0C");
constexpr const ImmutableString bitfieldExtract_2C0C0C("bitfieldExtract(2C0C0C");
constexpr const ImmutableString bitfieldExtract_2D0C0C("bitfieldExtract(2D0C0C");
constexpr const ImmutableString bitfieldExtract_3C0C0C("bitfieldExtract(3C0C0C");
constexpr const ImmutableString bitfieldExtract_3D0C0C("bitfieldExtract(3D0C0C");
constexpr const ImmutableString bitfieldInsert("bitfieldInsert");
constexpr const ImmutableString bitfieldInsert_0C0C0C0C("bitfieldInsert(0C0C0C0C");
constexpr const ImmutableString bitfieldInsert_0D0D0C0C("bitfieldInsert(0D0D0C0C");
constexpr const ImmutableString bitfieldInsert_1C1C0C0C("bitfieldInsert(1C1C0C0C");
constexpr const ImmutableString bitfieldInsert_1D1D0C0C("bitfieldInsert(1D1D0C0C");
constexpr const ImmutableString bitfieldInsert_2C2C0C0C("bitfieldInsert(2C2C0C0C");
constexpr const ImmutableString bitfieldInsert_2D2D0C0C("bitfieldInsert(2D2D0C0C");
constexpr const ImmutableString bitfieldInsert_3C3C0C0C("bitfieldInsert(3C3C0C0C");
constexpr const ImmutableString bitfieldInsert_3D3D0C0C("bitfieldInsert(3D3D0C0C");
constexpr const ImmutableString bitfieldReverse("bitfieldReverse");
constexpr const ImmutableString bitfieldReverse_0C("bitfieldReverse(0C");
constexpr const ImmutableString bitfieldReverse_0D("bitfieldReverse(0D");
constexpr const ImmutableString bitfieldReverse_1C("bitfieldReverse(1C");
constexpr const ImmutableString bitfieldReverse_1D("bitfieldReverse(1D");
constexpr const ImmutableString bitfieldReverse_2C("bitfieldReverse(2C");
constexpr const ImmutableString bitfieldReverse_2D("bitfieldReverse(2D");
constexpr const ImmutableString bitfieldReverse_3C("bitfieldReverse(3C");
constexpr const ImmutableString bitfieldReverse_3D("bitfieldReverse(3D");
constexpr const ImmutableString ceil("ceil");
constexpr const ImmutableString ceil_0B("ceil(0B");
constexpr const ImmutableString ceil_1B("ceil(1B");
constexpr const ImmutableString ceil_2B("ceil(2B");
constexpr const ImmutableString ceil_3B("ceil(3B");
constexpr const ImmutableString clamp("clamp");
constexpr const ImmutableString clamp_0B0B0B("clamp(0B0B0B");
constexpr const ImmutableString clamp_0C0C0C("clamp(0C0C0C");
constexpr const ImmutableString clamp_0D0D0D("clamp(0D0D0D");
constexpr const ImmutableString clamp_1B0B0B("clamp(1B0B0B");
constexpr const ImmutableString clamp_1B1B1B("clamp(1B1B1B");
constexpr const ImmutableString clamp_1C0C0C("clamp(1C0C0C");
constexpr const ImmutableString clamp_1C1C1C("clamp(1C1C1C");
constexpr const ImmutableString clamp_1D0D0D("clamp(1D0D0D");
constexpr const ImmutableString clamp_1D1D1D("clamp(1D1D1D");
constexpr const ImmutableString clamp_2B0B0B("clamp(2B0B0B");
constexpr const ImmutableString clamp_2B2B2B("clamp(2B2B2B");
constexpr const ImmutableString clamp_2C0C0C("clamp(2C0C0C");
constexpr const ImmutableString clamp_2C2C2C("clamp(2C2C2C");
constexpr const ImmutableString clamp_2D0D0D("clamp(2D0D0D");
constexpr const ImmutableString clamp_2D2D2D("clamp(2D2D2D");
constexpr const ImmutableString clamp_3B0B0B("clamp(3B0B0B");
constexpr const ImmutableString clamp_3B3B3B("clamp(3B3B3B");
constexpr const ImmutableString clamp_3C0C0C("clamp(3C0C0C");
constexpr const ImmutableString clamp_3C3C3C("clamp(3C3C3C");
constexpr const ImmutableString clamp_3D0D0D("clamp(3D0D0D");
constexpr const ImmutableString clamp_3D3D3D("clamp(3D3D3D");
constexpr const ImmutableString cos("cos");
constexpr const ImmutableString cos_0B("cos(0B");
constexpr const ImmutableString cos_1B("cos(1B");
constexpr const ImmutableString cos_2B("cos(2B");
constexpr const ImmutableString cos_3B("cos(3B");
constexpr const ImmutableString cosh("cosh");
constexpr const ImmutableString cosh_0B("cosh(0B");
constexpr const ImmutableString cosh_1B("cosh(1B");
constexpr const ImmutableString cosh_2B("cosh(2B");
constexpr const ImmutableString cosh_3B("cosh(3B");
constexpr const ImmutableString cross("cross");
constexpr const ImmutableString cross_2B2B("cross(2B2B");
constexpr const ImmutableString dFdx("dFdx");
constexpr const ImmutableString dFdxExt("dFdx");
constexpr const ImmutableString dFdxExt_0B("dFdx(0B");
constexpr const ImmutableString dFdxExt_1B("dFdx(1B");
constexpr const ImmutableString dFdxExt_2B("dFdx(2B");
constexpr const ImmutableString dFdxExt_3B("dFdx(3B");
constexpr const ImmutableString dFdx_0B("dFdx(0B");
constexpr const ImmutableString dFdx_1B("dFdx(1B");
constexpr const ImmutableString dFdx_2B("dFdx(2B");
constexpr const ImmutableString dFdx_3B("dFdx(3B");
constexpr const ImmutableString dFdy("dFdy");
constexpr const ImmutableString dFdyExt("dFdy");
constexpr const ImmutableString dFdyExt_0B("dFdy(0B");
constexpr const ImmutableString dFdyExt_1B("dFdy(1B");
constexpr const ImmutableString dFdyExt_2B("dFdy(2B");
constexpr const ImmutableString dFdyExt_3B("dFdy(3B");
constexpr const ImmutableString dFdy_0B("dFdy(0B");
constexpr const ImmutableString dFdy_1B("dFdy(1B");
constexpr const ImmutableString dFdy_2B("dFdy(2B");
constexpr const ImmutableString dFdy_3B("dFdy(3B");
constexpr const ImmutableString degrees("degrees");
constexpr const ImmutableString degrees_0B("degrees(0B");
constexpr const ImmutableString degrees_1B("degrees(1B");
constexpr const ImmutableString degrees_2B("degrees(2B");
constexpr const ImmutableString degrees_3B("degrees(3B");
constexpr const ImmutableString determinant("determinant");
constexpr const ImmutableString determinant_5B("determinant(5B");
constexpr const ImmutableString determinant_AB("determinant(AB");
constexpr const ImmutableString determinant_FB("determinant(FB");
constexpr const ImmutableString diff("diff");
constexpr const ImmutableString distance("distance");
constexpr const ImmutableString distance_0B0B("distance(0B0B");
constexpr const ImmutableString distance_1B1B("distance(1B1B");
constexpr const ImmutableString distance_2B2B("distance(2B2B");
constexpr const ImmutableString distance_3B3B("distance(3B3B");
constexpr const ImmutableString dot("dot");
constexpr const ImmutableString dot_0B0B("dot(0B0B");
constexpr const ImmutableString dot_1B1B("dot(1B1B");
constexpr const ImmutableString dot_2B2B("dot(2B2B");
constexpr const ImmutableString dot_3B3B("dot(3B3B");
constexpr const ImmutableString equal("equal");
constexpr const ImmutableString equal_1B1B("equal(1B1B");
constexpr const ImmutableString equal_1C1C("equal(1C1C");
constexpr const ImmutableString equal_1D1D("equal(1D1D");
constexpr const ImmutableString equal_1E1E("equal(1E1E");
constexpr const ImmutableString equal_2B2B("equal(2B2B");
constexpr const ImmutableString equal_2C2C("equal(2C2C");
constexpr const ImmutableString equal_2D2D("equal(2D2D");
constexpr const ImmutableString equal_2E2E("equal(2E2E");
constexpr const ImmutableString equal_3B3B("equal(3B3B");
constexpr const ImmutableString equal_3C3C("equal(3C3C");
constexpr const ImmutableString equal_3D3D("equal(3D3D");
constexpr const ImmutableString equal_3E3E("equal(3E3E");
constexpr const ImmutableString exp("exp");
constexpr const ImmutableString exp2("exp2");
constexpr const ImmutableString exp2_0B("exp2(0B");
constexpr const ImmutableString exp2_1B("exp2(1B");
constexpr const ImmutableString exp2_2B("exp2(2B");
constexpr const ImmutableString exp2_3B("exp2(3B");
constexpr const ImmutableString exp_0B("exp(0B");
constexpr const ImmutableString exp_1B("exp(1B");
constexpr const ImmutableString exp_2B("exp(2B");
constexpr const ImmutableString exp_3B("exp(3B");
constexpr const ImmutableString faceforward("faceforward");
constexpr const ImmutableString faceforward_0B0B0B("faceforward(0B0B0B");
constexpr const ImmutableString faceforward_1B1B1B("faceforward(1B1B1B");
constexpr const ImmutableString faceforward_2B2B2B("faceforward(2B2B2B");
constexpr const ImmutableString faceforward_3B3B3B("faceforward(3B3B3B");
constexpr const ImmutableString far("far");
constexpr const ImmutableString findLSB("findLSB");
constexpr const ImmutableString findLSB_0C("findLSB(0C");
constexpr const ImmutableString findLSB_0D("findLSB(0D");
constexpr const ImmutableString findLSB_1C("findLSB(1C");
constexpr const ImmutableString findLSB_1D("findLSB(1D");
constexpr const ImmutableString findLSB_2C("findLSB(2C");
constexpr const ImmutableString findLSB_2D("findLSB(2D");
constexpr const ImmutableString findLSB_3C("findLSB(3C");
constexpr const ImmutableString findLSB_3D("findLSB(3D");
constexpr const ImmutableString findMSB("findMSB");
constexpr const ImmutableString findMSB_0C("findMSB(0C");
constexpr const ImmutableString findMSB_0D("findMSB(0D");
constexpr const ImmutableString findMSB_1C("findMSB(1C");
constexpr const ImmutableString findMSB_1D("findMSB(1D");
constexpr const ImmutableString findMSB_2C("findMSB(2C");
constexpr const ImmutableString findMSB_2D("findMSB(2D");
constexpr const ImmutableString findMSB_3C("findMSB(3C");
constexpr const ImmutableString findMSB_3D("findMSB(3D");
constexpr const ImmutableString floatBitsToInt("floatBitsToInt");
constexpr const ImmutableString floatBitsToInt_0B("floatBitsToInt(0B");
constexpr const ImmutableString floatBitsToInt_1B("floatBitsToInt(1B");
constexpr const ImmutableString floatBitsToInt_2B("floatBitsToInt(2B");
constexpr const ImmutableString floatBitsToInt_3B("floatBitsToInt(3B");
constexpr const ImmutableString floatBitsToUint("floatBitsToUint");
constexpr const ImmutableString floatBitsToUint_0B("floatBitsToUint(0B");
constexpr const ImmutableString floatBitsToUint_1B("floatBitsToUint(1B");
constexpr const ImmutableString floatBitsToUint_2B("floatBitsToUint(2B");
constexpr const ImmutableString floatBitsToUint_3B("floatBitsToUint(3B");
constexpr const ImmutableString floor("floor");
constexpr const ImmutableString floor_0B("floor(0B");
constexpr const ImmutableString floor_1B("floor(1B");
constexpr const ImmutableString floor_2B("floor(2B");
constexpr const ImmutableString floor_3B("floor(3B");
constexpr const ImmutableString fract("fract");
constexpr const ImmutableString fract_0B("fract(0B");
constexpr const ImmutableString fract_1B("fract(1B");
constexpr const ImmutableString fract_2B("fract(2B");
constexpr const ImmutableString fract_3B("fract(3B");
constexpr const ImmutableString frexp("frexp");
constexpr const ImmutableString frexp_0B0C("frexp(0B0C");
constexpr const ImmutableString frexp_1B1C("frexp(1B1C");
constexpr const ImmutableString frexp_2B2C("frexp(2B2C");
constexpr const ImmutableString frexp_3B3C("frexp(3B3C");
constexpr const ImmutableString fwidth("fwidth");
constexpr const ImmutableString fwidthExt("fwidth");
constexpr const ImmutableString fwidthExt_0B("fwidth(0B");
constexpr const ImmutableString fwidthExt_1B("fwidth(1B");
constexpr const ImmutableString fwidthExt_2B("fwidth(2B");
constexpr const ImmutableString fwidthExt_3B("fwidth(3B");
constexpr const ImmutableString fwidth_0B("fwidth(0B");
constexpr const ImmutableString fwidth_1B("fwidth(1B");
constexpr const ImmutableString fwidth_2B("fwidth(2B");
constexpr const ImmutableString fwidth_3B("fwidth(3B");
constexpr const ImmutableString gl_DepthRange("gl_DepthRange");
constexpr const ImmutableString gl_DepthRangeParameters("gl_DepthRangeParameters");
constexpr const ImmutableString gl_FragColor("gl_FragColor");
constexpr const ImmutableString gl_FragCoord("gl_FragCoord");
constexpr const ImmutableString gl_FragData("gl_FragData");
constexpr const ImmutableString gl_FragDepth("gl_FragDepth");
constexpr const ImmutableString gl_FragDepthEXT("gl_FragDepthEXT");
constexpr const ImmutableString gl_FrontFacing("gl_FrontFacing");
constexpr const ImmutableString gl_GlobalInvocationID("gl_GlobalInvocationID");
constexpr const ImmutableString gl_InstanceID("gl_InstanceID");
constexpr const ImmutableString gl_InvocationID("gl_InvocationID");
constexpr const ImmutableString gl_LastFragColor("gl_LastFragColor");
constexpr const ImmutableString gl_LastFragColorARM("gl_LastFragColorARM");
constexpr const ImmutableString gl_LastFragData("gl_LastFragData");
constexpr const ImmutableString gl_Layer("gl_Layer");
constexpr const ImmutableString gl_LocalInvocationID("gl_LocalInvocationID");
constexpr const ImmutableString gl_LocalInvocationIndex("gl_LocalInvocationIndex");
constexpr const ImmutableString gl_MaxAtomicCounterBindings("gl_MaxAtomicCounterBindings");
constexpr const ImmutableString gl_MaxAtomicCounterBufferSize("gl_MaxAtomicCounterBufferSize");
constexpr const ImmutableString gl_MaxCombinedAtomicCounterBuffers(
    "gl_MaxCombinedAtomicCounterBuffers");
constexpr const ImmutableString gl_MaxCombinedAtomicCounters("gl_MaxCombinedAtomicCounters");
constexpr const ImmutableString gl_MaxCombinedImageUniforms("gl_MaxCombinedImageUniforms");
constexpr const ImmutableString gl_MaxCombinedShaderOutputResources(
    "gl_MaxCombinedShaderOutputResources");
constexpr const ImmutableString gl_MaxCombinedTextureImageUnits("gl_MaxCombinedTextureImageUnits");
constexpr const ImmutableString gl_MaxComputeAtomicCounterBuffers(
    "gl_MaxComputeAtomicCounterBuffers");
constexpr const ImmutableString gl_MaxComputeAtomicCounters("gl_MaxComputeAtomicCounters");
constexpr const ImmutableString gl_MaxComputeImageUniforms("gl_MaxComputeImageUniforms");
constexpr const ImmutableString gl_MaxComputeTextureImageUnits("gl_MaxComputeTextureImageUnits");
constexpr const ImmutableString gl_MaxComputeUniformComponents("gl_MaxComputeUniformComponents");
constexpr const ImmutableString gl_MaxComputeWorkGroupCount("gl_MaxComputeWorkGroupCount");
constexpr const ImmutableString gl_MaxComputeWorkGroupSize("gl_MaxComputeWorkGroupSize");
constexpr const ImmutableString gl_MaxDrawBuffers("gl_MaxDrawBuffers");
constexpr const ImmutableString gl_MaxDualSourceDrawBuffersEXT("gl_MaxDualSourceDrawBuffersEXT");
constexpr const ImmutableString gl_MaxFragmentAtomicCounterBuffers(
    "gl_MaxFragmentAtomicCounterBuffers");
constexpr const ImmutableString gl_MaxFragmentAtomicCounters("gl_MaxFragmentAtomicCounters");
constexpr const ImmutableString gl_MaxFragmentImageUniforms("gl_MaxFragmentImageUniforms");
constexpr const ImmutableString gl_MaxFragmentInputVectors("gl_MaxFragmentInputVectors");
constexpr const ImmutableString gl_MaxFragmentUniformVectors("gl_MaxFragmentUniformVectors");
constexpr const ImmutableString gl_MaxGeometryAtomicCounterBuffers(
    "gl_MaxGeometryAtomicCounterBuffers");
constexpr const ImmutableString gl_MaxGeometryAtomicCounters("gl_MaxGeometryAtomicCounters");
constexpr const ImmutableString gl_MaxGeometryImageUniforms("gl_MaxGeometryImageUniforms");
constexpr const ImmutableString gl_MaxGeometryInputComponents("gl_MaxGeometryInputComponents");
constexpr const ImmutableString gl_MaxGeometryOutputComponents("gl_MaxGeometryOutputComponents");
constexpr const ImmutableString gl_MaxGeometryOutputVertices("gl_MaxGeometryOutputVertices");
constexpr const ImmutableString gl_MaxGeometryTextureImageUnits("gl_MaxGeometryTextureImageUnits");
constexpr const ImmutableString gl_MaxGeometryTotalOutputComponents(
    "gl_MaxGeometryTotalOutputComponents");
constexpr const ImmutableString gl_MaxGeometryUniformComponents("gl_MaxGeometryUniformComponents");
constexpr const ImmutableString gl_MaxImageUnits("gl_MaxImageUnits");
constexpr const ImmutableString gl_MaxProgramTexelOffset("gl_MaxProgramTexelOffset");
constexpr const ImmutableString gl_MaxTextureImageUnits("gl_MaxTextureImageUnits");
constexpr const ImmutableString gl_MaxVaryingVectors("gl_MaxVaryingVectors");
constexpr const ImmutableString gl_MaxVertexAtomicCounterBuffers(
    "gl_MaxVertexAtomicCounterBuffers");
constexpr const ImmutableString gl_MaxVertexAtomicCounters("gl_MaxVertexAtomicCounters");
constexpr const ImmutableString gl_MaxVertexAttribs("gl_MaxVertexAttribs");
constexpr const ImmutableString gl_MaxVertexImageUniforms("gl_MaxVertexImageUniforms");
constexpr const ImmutableString gl_MaxVertexOutputVectors("gl_MaxVertexOutputVectors");
constexpr const ImmutableString gl_MaxVertexTextureImageUnits("gl_MaxVertexTextureImageUnits");
constexpr const ImmutableString gl_MaxVertexUniformVectors("gl_MaxVertexUniformVectors");
constexpr const ImmutableString gl_MinProgramTexelOffset("gl_MinProgramTexelOffset");
constexpr const ImmutableString gl_NumWorkGroups("gl_NumWorkGroups");
constexpr const ImmutableString gl_PerVertex("gl_PerVertex");
constexpr const ImmutableString gl_PointCoord("gl_PointCoord");
constexpr const ImmutableString gl_PointSize("gl_PointSize");
constexpr const ImmutableString gl_Position("gl_Position");
constexpr const ImmutableString gl_PrimitiveID("gl_PrimitiveID");
constexpr const ImmutableString gl_PrimitiveIDIn("gl_PrimitiveIDIn");
constexpr const ImmutableString gl_SecondaryFragColorEXT("gl_SecondaryFragColorEXT");
constexpr const ImmutableString gl_SecondaryFragDataEXT("gl_SecondaryFragDataEXT");
constexpr const ImmutableString gl_VertexID("gl_VertexID");
constexpr const ImmutableString gl_ViewID_OVR("gl_ViewID_OVR");
constexpr const ImmutableString gl_ViewportIndex("gl_ViewportIndex");
constexpr const ImmutableString gl_WorkGroupID("gl_WorkGroupID");
constexpr const ImmutableString gl_WorkGroupSize("gl_WorkGroupSize");
constexpr const ImmutableString gl_in("gl_in");
constexpr const ImmutableString greaterThan("greaterThan");
constexpr const ImmutableString greaterThanEqual("greaterThanEqual");
constexpr const ImmutableString greaterThanEqual_1B1B("greaterThanEqual(1B1B");
constexpr const ImmutableString greaterThanEqual_1C1C("greaterThanEqual(1C1C");
constexpr const ImmutableString greaterThanEqual_1D1D("greaterThanEqual(1D1D");
constexpr const ImmutableString greaterThanEqual_2B2B("greaterThanEqual(2B2B");
constexpr const ImmutableString greaterThanEqual_2C2C("greaterThanEqual(2C2C");
constexpr const ImmutableString greaterThanEqual_2D2D("greaterThanEqual(2D2D");
constexpr const ImmutableString greaterThanEqual_3B3B("greaterThanEqual(3B3B");
constexpr const ImmutableString greaterThanEqual_3C3C("greaterThanEqual(3C3C");
constexpr const ImmutableString greaterThanEqual_3D3D("greaterThanEqual(3D3D");
constexpr const ImmutableString greaterThan_1B1B("greaterThan(1B1B");
constexpr const ImmutableString greaterThan_1C1C("greaterThan(1C1C");
constexpr const ImmutableString greaterThan_1D1D("greaterThan(1D1D");
constexpr const ImmutableString greaterThan_2B2B("greaterThan(2B2B");
constexpr const ImmutableString greaterThan_2C2C("greaterThan(2C2C");
constexpr const ImmutableString greaterThan_2D2D("greaterThan(2D2D");
constexpr const ImmutableString greaterThan_3B3B("greaterThan(3B3B");
constexpr const ImmutableString greaterThan_3C3C("greaterThan(3C3C");
constexpr const ImmutableString greaterThan_3D3D("greaterThan(3D3D");
constexpr const ImmutableString groupMemoryBarrier("groupMemoryBarrier");
constexpr const ImmutableString groupMemoryBarrier_("groupMemoryBarrier(");
constexpr const ImmutableString imageLoad("imageLoad");
constexpr const ImmutableString imageLoad_0c1C("imageLoad(0c1C");
constexpr const ImmutableString imageLoad_0d1C("imageLoad(0d1C");
constexpr const ImmutableString imageLoad_0e1C("imageLoad(0e1C");
constexpr const ImmutableString imageLoad_0f2C("imageLoad(0f2C");
constexpr const ImmutableString imageLoad_0g2C("imageLoad(0g2C");
constexpr const ImmutableString imageLoad_0h2C("imageLoad(0h2C");
constexpr const ImmutableString imageLoad_0i2C("imageLoad(0i2C");
constexpr const ImmutableString imageLoad_0j2C("imageLoad(0j2C");
constexpr const ImmutableString imageLoad_0k2C("imageLoad(0k2C");
constexpr const ImmutableString imageLoad_0l2C("imageLoad(0l2C");
constexpr const ImmutableString imageLoad_0m2C("imageLoad(0m2C");
constexpr const ImmutableString imageLoad_0n2C("imageLoad(0n2C");
constexpr const ImmutableString imageSize("imageSize");
constexpr const ImmutableString imageSize_0c("imageSize(0c");
constexpr const ImmutableString imageSize_0d("imageSize(0d");
constexpr const ImmutableString imageSize_0e("imageSize(0e");
constexpr const ImmutableString imageSize_0f("imageSize(0f");
constexpr const ImmutableString imageSize_0g("imageSize(0g");
constexpr const ImmutableString imageSize_0h("imageSize(0h");
constexpr const ImmutableString imageSize_0i("imageSize(0i");
constexpr const ImmutableString imageSize_0j("imageSize(0j");
constexpr const ImmutableString imageSize_0k("imageSize(0k");
constexpr const ImmutableString imageSize_0l("imageSize(0l");
constexpr const ImmutableString imageSize_0m("imageSize(0m");
constexpr const ImmutableString imageSize_0n("imageSize(0n");
constexpr const ImmutableString imageStore("imageStore");
constexpr const ImmutableString imageStore_0c1C3B("imageStore(0c1C3B");
constexpr const ImmutableString imageStore_0d1C3C("imageStore(0d1C3C");
constexpr const ImmutableString imageStore_0e1C3D("imageStore(0e1C3D");
constexpr const ImmutableString imageStore_0f2C3B("imageStore(0f2C3B");
constexpr const ImmutableString imageStore_0g2C3C("imageStore(0g2C3C");
constexpr const ImmutableString imageStore_0h2C3D("imageStore(0h2C3D");
constexpr const ImmutableString imageStore_0i2C3B("imageStore(0i2C3B");
constexpr const ImmutableString imageStore_0j2C3C("imageStore(0j2C3C");
constexpr const ImmutableString imageStore_0k2C3D("imageStore(0k2C3D");
constexpr const ImmutableString imageStore_0l2C3B("imageStore(0l2C3B");
constexpr const ImmutableString imageStore_0m2C3C("imageStore(0m2C3C");
constexpr const ImmutableString imageStore_0n2C3D("imageStore(0n2C3D");
constexpr const ImmutableString imulExtended("imulExtended");
constexpr const ImmutableString imulExtended_0C0C0C0C("imulExtended(0C0C0C0C");
constexpr const ImmutableString imulExtended_1C1C1C1C("imulExtended(1C1C1C1C");
constexpr const ImmutableString imulExtended_2C2C2C2C("imulExtended(2C2C2C2C");
constexpr const ImmutableString imulExtended_3C3C3C3C("imulExtended(3C3C3C3C");
constexpr const ImmutableString intBitsToFloat("intBitsToFloat");
constexpr const ImmutableString intBitsToFloat_0C("intBitsToFloat(0C");
constexpr const ImmutableString intBitsToFloat_1C("intBitsToFloat(1C");
constexpr const ImmutableString intBitsToFloat_2C("intBitsToFloat(2C");
constexpr const ImmutableString intBitsToFloat_3C("intBitsToFloat(3C");
constexpr const ImmutableString inverse("inverse");
constexpr const ImmutableString inverse_5B("inverse(5B");
constexpr const ImmutableString inverse_AB("inverse(AB");
constexpr const ImmutableString inverse_FB("inverse(FB");
constexpr const ImmutableString inversesqrt("inversesqrt");
constexpr const ImmutableString inversesqrt_0B("inversesqrt(0B");
constexpr const ImmutableString inversesqrt_1B("inversesqrt(1B");
constexpr const ImmutableString inversesqrt_2B("inversesqrt(2B");
constexpr const ImmutableString inversesqrt_3B("inversesqrt(3B");
constexpr const ImmutableString isinf("isinf");
constexpr const ImmutableString isinf_0B("isinf(0B");
constexpr const ImmutableString isinf_1B("isinf(1B");
constexpr const ImmutableString isinf_2B("isinf(2B");
constexpr const ImmutableString isinf_3B("isinf(3B");
constexpr const ImmutableString isnan("isnan");
constexpr const ImmutableString isnan_0B("isnan(0B");
constexpr const ImmutableString isnan_1B("isnan(1B");
constexpr const ImmutableString isnan_2B("isnan(2B");
constexpr const ImmutableString isnan_3B("isnan(3B");
constexpr const ImmutableString ldexp("ldexp");
constexpr const ImmutableString ldexp_0B0C("ldexp(0B0C");
constexpr const ImmutableString ldexp_1B1C("ldexp(1B1C");
constexpr const ImmutableString ldexp_2B2C("ldexp(2B2C");
constexpr const ImmutableString ldexp_3B3C("ldexp(3B3C");
constexpr const ImmutableString length("length");
constexpr const ImmutableString length_0B("length(0B");
constexpr const ImmutableString length_1B("length(1B");
constexpr const ImmutableString length_2B("length(2B");
constexpr const ImmutableString length_3B("length(3B");
constexpr const ImmutableString lessThan("lessThan");
constexpr const ImmutableString lessThanEqual("lessThanEqual");
constexpr const ImmutableString lessThanEqual_1B1B("lessThanEqual(1B1B");
constexpr const ImmutableString lessThanEqual_1C1C("lessThanEqual(1C1C");
constexpr const ImmutableString lessThanEqual_1D1D("lessThanEqual(1D1D");
constexpr const ImmutableString lessThanEqual_2B2B("lessThanEqual(2B2B");
constexpr const ImmutableString lessThanEqual_2C2C("lessThanEqual(2C2C");
constexpr const ImmutableString lessThanEqual_2D2D("lessThanEqual(2D2D");
constexpr const ImmutableString lessThanEqual_3B3B("lessThanEqual(3B3B");
constexpr const ImmutableString lessThanEqual_3C3C("lessThanEqual(3C3C");
constexpr const ImmutableString lessThanEqual_3D3D("lessThanEqual(3D3D");
constexpr const ImmutableString lessThan_1B1B("lessThan(1B1B");
constexpr const ImmutableString lessThan_1C1C("lessThan(1C1C");
constexpr const ImmutableString lessThan_1D1D("lessThan(1D1D");
constexpr const ImmutableString lessThan_2B2B("lessThan(2B2B");
constexpr const ImmutableString lessThan_2C2C("lessThan(2C2C");
constexpr const ImmutableString lessThan_2D2D("lessThan(2D2D");
constexpr const ImmutableString lessThan_3B3B("lessThan(3B3B");
constexpr const ImmutableString lessThan_3C3C("lessThan(3C3C");
constexpr const ImmutableString lessThan_3D3D("lessThan(3D3D");
constexpr const ImmutableString log("log");
constexpr const ImmutableString log2("log2");
constexpr const ImmutableString log2_0B("log2(0B");
constexpr const ImmutableString log2_1B("log2(1B");
constexpr const ImmutableString log2_2B("log2(2B");
constexpr const ImmutableString log2_3B("log2(3B");
constexpr const ImmutableString log_0B("log(0B");
constexpr const ImmutableString log_1B("log(1B");
constexpr const ImmutableString log_2B("log(2B");
constexpr const ImmutableString log_3B("log(3B");
constexpr const ImmutableString matrixCompMult("matrixCompMult");
constexpr const ImmutableString matrixCompMult_5B5B("matrixCompMult(5B5B");
constexpr const ImmutableString matrixCompMult_6B6B("matrixCompMult(6B6B");
constexpr const ImmutableString matrixCompMult_7B7B("matrixCompMult(7B7B");
constexpr const ImmutableString matrixCompMult_9B9B("matrixCompMult(9B9B");
constexpr const ImmutableString matrixCompMult_ABAB("matrixCompMult(ABAB");
constexpr const ImmutableString matrixCompMult_BBBB("matrixCompMult(BBBB");
constexpr const ImmutableString matrixCompMult_DBDB("matrixCompMult(DBDB");
constexpr const ImmutableString matrixCompMult_EBEB("matrixCompMult(EBEB");
constexpr const ImmutableString matrixCompMult_FBFB("matrixCompMult(FBFB");
constexpr const ImmutableString max("max");
constexpr const ImmutableString max_0B0B("max(0B0B");
constexpr const ImmutableString max_0C0C("max(0C0C");
constexpr const ImmutableString max_0D0D("max(0D0D");
constexpr const ImmutableString max_1B0B("max(1B0B");
constexpr const ImmutableString max_1B1B("max(1B1B");
constexpr const ImmutableString max_1C0C("max(1C0C");
constexpr const ImmutableString max_1C1C("max(1C1C");
constexpr const ImmutableString max_1D0D("max(1D0D");
constexpr const ImmutableString max_1D1D("max(1D1D");
constexpr const ImmutableString max_2B0B("max(2B0B");
constexpr const ImmutableString max_2B2B("max(2B2B");
constexpr const ImmutableString max_2C0C("max(2C0C");
constexpr const ImmutableString max_2C2C("max(2C2C");
constexpr const ImmutableString max_2D0D("max(2D0D");
constexpr const ImmutableString max_2D2D("max(2D2D");
constexpr const ImmutableString max_3B0B("max(3B0B");
constexpr const ImmutableString max_3B3B("max(3B3B");
constexpr const ImmutableString max_3C0C("max(3C0C");
constexpr const ImmutableString max_3C3C("max(3C3C");
constexpr const ImmutableString max_3D0D("max(3D0D");
constexpr const ImmutableString max_3D3D("max(3D3D");
constexpr const ImmutableString memoryBarrier("memoryBarrier");
constexpr const ImmutableString memoryBarrierAtomicCounter("memoryBarrierAtomicCounter");
constexpr const ImmutableString memoryBarrierAtomicCounter_("memoryBarrierAtomicCounter(");
constexpr const ImmutableString memoryBarrierBuffer("memoryBarrierBuffer");
constexpr const ImmutableString memoryBarrierBuffer_("memoryBarrierBuffer(");
constexpr const ImmutableString memoryBarrierImage("memoryBarrierImage");
constexpr const ImmutableString memoryBarrierImage_("memoryBarrierImage(");
constexpr const ImmutableString memoryBarrierShared("memoryBarrierShared");
constexpr const ImmutableString memoryBarrierShared_("memoryBarrierShared(");
constexpr const ImmutableString memoryBarrier_("memoryBarrier(");
constexpr const ImmutableString min("min");
constexpr const ImmutableString min_0B0B("min(0B0B");
constexpr const ImmutableString min_0C0C("min(0C0C");
constexpr const ImmutableString min_0D0D("min(0D0D");
constexpr const ImmutableString min_1B0B("min(1B0B");
constexpr const ImmutableString min_1B1B("min(1B1B");
constexpr const ImmutableString min_1C0C("min(1C0C");
constexpr const ImmutableString min_1C1C("min(1C1C");
constexpr const ImmutableString min_1D0D("min(1D0D");
constexpr const ImmutableString min_1D1D("min(1D1D");
constexpr const ImmutableString min_2B0B("min(2B0B");
constexpr const ImmutableString min_2B2B("min(2B2B");
constexpr const ImmutableString min_2C0C("min(2C0C");
constexpr const ImmutableString min_2C2C("min(2C2C");
constexpr const ImmutableString min_2D0D("min(2D0D");
constexpr const ImmutableString min_2D2D("min(2D2D");
constexpr const ImmutableString min_3B0B("min(3B0B");
constexpr const ImmutableString min_3B3B("min(3B3B");
constexpr const ImmutableString min_3C0C("min(3C0C");
constexpr const ImmutableString min_3C3C("min(3C3C");
constexpr const ImmutableString min_3D0D("min(3D0D");
constexpr const ImmutableString min_3D3D("min(3D3D");
constexpr const ImmutableString mix("mix");
constexpr const ImmutableString mix_0B0B0B("mix(0B0B0B");
constexpr const ImmutableString mix_0B0B0E("mix(0B0B0E");
constexpr const ImmutableString mix_1B1B0B("mix(1B1B0B");
constexpr const ImmutableString mix_1B1B1B("mix(1B1B1B");
constexpr const ImmutableString mix_1B1B1E("mix(1B1B1E");
constexpr const ImmutableString mix_2B2B0B("mix(2B2B0B");
constexpr const ImmutableString mix_2B2B2B("mix(2B2B2B");
constexpr const ImmutableString mix_2B2B2E("mix(2B2B2E");
constexpr const ImmutableString mix_3B3B0B("mix(3B3B0B");
constexpr const ImmutableString mix_3B3B3B("mix(3B3B3B");
constexpr const ImmutableString mix_3B3B3E("mix(3B3B3E");
constexpr const ImmutableString mod("mod");
constexpr const ImmutableString mod_0B0B("mod(0B0B");
constexpr const ImmutableString mod_1B0B("mod(1B0B");
constexpr const ImmutableString mod_1B1B("mod(1B1B");
constexpr const ImmutableString mod_2B0B("mod(2B0B");
constexpr const ImmutableString mod_2B2B("mod(2B2B");
constexpr const ImmutableString mod_3B0B("mod(3B0B");
constexpr const ImmutableString mod_3B3B("mod(3B3B");
constexpr const ImmutableString modf("modf");
constexpr const ImmutableString modf_0B0B("modf(0B0B");
constexpr const ImmutableString modf_1B1B("modf(1B1B");
constexpr const ImmutableString modf_2B2B("modf(2B2B");
constexpr const ImmutableString modf_3B3B("modf(3B3B");
constexpr const ImmutableString near("near");
constexpr const ImmutableString normalize("normalize");
constexpr const ImmutableString normalize_0B("normalize(0B");
constexpr const ImmutableString normalize_1B("normalize(1B");
constexpr const ImmutableString normalize_2B("normalize(2B");
constexpr const ImmutableString normalize_3B("normalize(3B");
constexpr const ImmutableString notEqual("notEqual");
constexpr const ImmutableString notEqual_1B1B("notEqual(1B1B");
constexpr const ImmutableString notEqual_1C1C("notEqual(1C1C");
constexpr const ImmutableString notEqual_1D1D("notEqual(1D1D");
constexpr const ImmutableString notEqual_1E1E("notEqual(1E1E");
constexpr const ImmutableString notEqual_2B2B("notEqual(2B2B");
constexpr const ImmutableString notEqual_2C2C("notEqual(2C2C");
constexpr const ImmutableString notEqual_2D2D("notEqual(2D2D");
constexpr const ImmutableString notEqual_2E2E("notEqual(2E2E");
constexpr const ImmutableString notEqual_3B3B("notEqual(3B3B");
constexpr const ImmutableString notEqual_3C3C("notEqual(3C3C");
constexpr const ImmutableString notEqual_3D3D("notEqual(3D3D");
constexpr const ImmutableString notEqual_3E3E("notEqual(3E3E");
constexpr const ImmutableString notFunc("not");
constexpr const ImmutableString notFunc_1E("not(1E");
constexpr const ImmutableString notFunc_2E("not(2E");
constexpr const ImmutableString notFunc_3E("not(3E");
constexpr const ImmutableString outerProduct("outerProduct");
constexpr const ImmutableString outerProduct_1B1B("outerProduct(1B1B");
constexpr const ImmutableString outerProduct_1B2B("outerProduct(1B2B");
constexpr const ImmutableString outerProduct_1B3B("outerProduct(1B3B");
constexpr const ImmutableString outerProduct_2B1B("outerProduct(2B1B");
constexpr const ImmutableString outerProduct_2B2B("outerProduct(2B2B");
constexpr const ImmutableString outerProduct_2B3B("outerProduct(2B3B");
constexpr const ImmutableString outerProduct_3B1B("outerProduct(3B1B");
constexpr const ImmutableString outerProduct_3B2B("outerProduct(3B2B");
constexpr const ImmutableString outerProduct_3B3B("outerProduct(3B3B");
constexpr const ImmutableString packHalf2x16("packHalf2x16");
constexpr const ImmutableString packHalf2x16_1B("packHalf2x16(1B");
constexpr const ImmutableString packSnorm2x16("packSnorm2x16");
constexpr const ImmutableString packSnorm2x16_1B("packSnorm2x16(1B");
constexpr const ImmutableString packSnorm4x8("packSnorm4x8");
constexpr const ImmutableString packSnorm4x8_3B("packSnorm4x8(3B");
constexpr const ImmutableString packUnorm2x16("packUnorm2x16");
constexpr const ImmutableString packUnorm2x16_1B("packUnorm2x16(1B");
constexpr const ImmutableString packUnorm4x8("packUnorm4x8");
constexpr const ImmutableString packUnorm4x8_3B("packUnorm4x8(3B");
constexpr const ImmutableString pow("pow");
constexpr const ImmutableString pow_0B0B("pow(0B0B");
constexpr const ImmutableString pow_1B1B("pow(1B1B");
constexpr const ImmutableString pow_2B2B("pow(2B2B");
constexpr const ImmutableString pow_3B3B("pow(3B3B");
constexpr const ImmutableString radians("radians");
constexpr const ImmutableString radians_0B("radians(0B");
constexpr const ImmutableString radians_1B("radians(1B");
constexpr const ImmutableString radians_2B("radians(2B");
constexpr const ImmutableString radians_3B("radians(3B");
constexpr const ImmutableString reflect("reflect");
constexpr const ImmutableString reflect_0B0B("reflect(0B0B");
constexpr const ImmutableString reflect_1B1B("reflect(1B1B");
constexpr const ImmutableString reflect_2B2B("reflect(2B2B");
constexpr const ImmutableString reflect_3B3B("reflect(3B3B");
constexpr const ImmutableString refract("refract");
constexpr const ImmutableString refract_0B0B0B("refract(0B0B0B");
constexpr const ImmutableString refract_1B1B0B("refract(1B1B0B");
constexpr const ImmutableString refract_2B2B0B("refract(2B2B0B");
constexpr const ImmutableString refract_3B3B0B("refract(3B3B0B");
constexpr const ImmutableString rgb_2_yuv("rgb_2_yuv");
constexpr const ImmutableString rgb_2_yuv_2B0G("rgb_2_yuv(2B0G");
constexpr const ImmutableString round("round");
constexpr const ImmutableString roundEven("roundEven");
constexpr const ImmutableString roundEven_0B("roundEven(0B");
constexpr const ImmutableString roundEven_1B("roundEven(1B");
constexpr const ImmutableString roundEven_2B("roundEven(2B");
constexpr const ImmutableString roundEven_3B("roundEven(3B");
constexpr const ImmutableString round_0B("round(0B");
constexpr const ImmutableString round_1B("round(1B");
constexpr const ImmutableString round_2B("round(2B");
constexpr const ImmutableString round_3B("round(3B");
constexpr const ImmutableString sign("sign");
constexpr const ImmutableString sign_0B("sign(0B");
constexpr const ImmutableString sign_0C("sign(0C");
constexpr const ImmutableString sign_1B("sign(1B");
constexpr const ImmutableString sign_1C("sign(1C");
constexpr const ImmutableString sign_2B("sign(2B");
constexpr const ImmutableString sign_2C("sign(2C");
constexpr const ImmutableString sign_3B("sign(3B");
constexpr const ImmutableString sign_3C("sign(3C");
constexpr const ImmutableString sin("sin");
constexpr const ImmutableString sin_0B("sin(0B");
constexpr const ImmutableString sin_1B("sin(1B");
constexpr const ImmutableString sin_2B("sin(2B");
constexpr const ImmutableString sin_3B("sin(3B");
constexpr const ImmutableString sinh("sinh");
constexpr const ImmutableString sinh_0B("sinh(0B");
constexpr const ImmutableString sinh_1B("sinh(1B");
constexpr const ImmutableString sinh_2B("sinh(2B");
constexpr const ImmutableString sinh_3B("sinh(3B");
constexpr const ImmutableString smoothstep("smoothstep");
constexpr const ImmutableString smoothstep_0B0B0B("smoothstep(0B0B0B");
constexpr const ImmutableString smoothstep_0B0B1B("smoothstep(0B0B1B");
constexpr const ImmutableString smoothstep_0B0B2B("smoothstep(0B0B2B");
constexpr const ImmutableString smoothstep_0B0B3B("smoothstep(0B0B3B");
constexpr const ImmutableString smoothstep_1B1B1B("smoothstep(1B1B1B");
constexpr const ImmutableString smoothstep_2B2B2B("smoothstep(2B2B2B");
constexpr const ImmutableString smoothstep_3B3B3B("smoothstep(3B3B3B");
constexpr const ImmutableString sqrt("sqrt");
constexpr const ImmutableString sqrt_0B("sqrt(0B");
constexpr const ImmutableString sqrt_1B("sqrt(1B");
constexpr const ImmutableString sqrt_2B("sqrt(2B");
constexpr const ImmutableString sqrt_3B("sqrt(3B");
constexpr const ImmutableString step("step");
constexpr const ImmutableString step_0B0B("step(0B0B");
constexpr const ImmutableString step_0B1B("step(0B1B");
constexpr const ImmutableString step_0B2B("step(0B2B");
constexpr const ImmutableString step_0B3B("step(0B3B");
constexpr const ImmutableString step_1B1B("step(1B1B");
constexpr const ImmutableString step_2B2B("step(2B2B");
constexpr const ImmutableString step_3B3B("step(3B3B");
constexpr const ImmutableString tan("tan");
constexpr const ImmutableString tan_0B("tan(0B");
constexpr const ImmutableString tan_1B("tan(1B");
constexpr const ImmutableString tan_2B("tan(2B");
constexpr const ImmutableString tan_3B("tan(3B");
constexpr const ImmutableString tanh("tanh");
constexpr const ImmutableString tanh_0B("tanh(0B");
constexpr const ImmutableString tanh_1B("tanh(1B");
constexpr const ImmutableString tanh_2B("tanh(2B");
constexpr const ImmutableString tanh_3B("tanh(3B");
constexpr const ImmutableString texelFetch("texelFetch");
constexpr const ImmutableString texelFetchOffset("texelFetchOffset");
constexpr const ImmutableString texelFetchOffset_0H1C0C1C("texelFetchOffset(0H1C0C1C");
constexpr const ImmutableString texelFetchOffset_0I2C0C2C("texelFetchOffset(0I2C0C2C");
constexpr const ImmutableString texelFetchOffset_0K2C0C1C("texelFetchOffset(0K2C0C1C");
constexpr const ImmutableString texelFetchOffset_0P1C0C1C("texelFetchOffset(0P1C0C1C");
constexpr const ImmutableString texelFetchOffset_0Q2C0C2C("texelFetchOffset(0Q2C0C2C");
constexpr const ImmutableString texelFetchOffset_0S2C0C1C("texelFetchOffset(0S2C0C1C");
constexpr const ImmutableString texelFetchOffset_0U1C0C1C("texelFetchOffset(0U1C0C1C");
constexpr const ImmutableString texelFetchOffset_0V2C0C2C("texelFetchOffset(0V2C0C2C");
constexpr const ImmutableString texelFetchOffset_0X2C0C1C("texelFetchOffset(0X2C0C1C");
constexpr const ImmutableString texelFetch_0H1C0C("texelFetch(0H1C0C");
constexpr const ImmutableString texelFetch_0I2C0C("texelFetch(0I2C0C");
constexpr const ImmutableString texelFetch_0K2C0C("texelFetch(0K2C0C");
constexpr const ImmutableString texelFetch_0L1C0C("texelFetch(0L1C0C");
constexpr const ImmutableString texelFetch_0M1C0C("texelFetch(0M1C0C");
constexpr const ImmutableString texelFetch_0O1C0C("texelFetch(0O1C0C");
constexpr const ImmutableString texelFetch_0P1C0C("texelFetch(0P1C0C");
constexpr const ImmutableString texelFetch_0Q2C0C("texelFetch(0Q2C0C");
constexpr const ImmutableString texelFetch_0S2C0C("texelFetch(0S2C0C");
constexpr const ImmutableString texelFetch_0T1C0C("texelFetch(0T1C0C");
constexpr const ImmutableString texelFetch_0U1C0C("texelFetch(0U1C0C");
constexpr const ImmutableString texelFetch_0V2C0C("texelFetch(0V2C0C");
constexpr const ImmutableString texelFetch_0X2C0C("texelFetch(0X2C0C");
constexpr const ImmutableString texelFetch_0Y1C0C("texelFetch(0Y1C0C");
constexpr const ImmutableString texture("texture");
constexpr const ImmutableString texture2D("texture2D");
constexpr const ImmutableString texture2DGradEXT("texture2DGradEXT");
constexpr const ImmutableString texture2DGradEXT_0H1B1B1B("texture2DGradEXT(0H1B1B1B");
constexpr const ImmutableString texture2DLod("texture2DLod");
constexpr const ImmutableString texture2DLodEXT("texture2DLodEXT");
constexpr const ImmutableString texture2DLodEXT_0H1B0B("texture2DLodEXT(0H1B0B");
constexpr const ImmutableString texture2DLod_0H1B0B("texture2DLod(0H1B0B");
constexpr const ImmutableString texture2DProj("texture2DProj");
constexpr const ImmutableString texture2DProjGradEXT("texture2DProjGradEXT");
constexpr const ImmutableString texture2DProjGradEXT_0H2B1B1B("texture2DProjGradEXT(0H2B1B1B");
constexpr const ImmutableString texture2DProjGradEXT_0H3B1B1B("texture2DProjGradEXT(0H3B1B1B");
constexpr const ImmutableString texture2DProjLod("texture2DProjLod");
constexpr const ImmutableString texture2DProjLodEXT("texture2DProjLodEXT");
constexpr const ImmutableString texture2DProjLodEXT_0H2B0B("texture2DProjLodEXT(0H2B0B");
constexpr const ImmutableString texture2DProjLodEXT_0H3B0B("texture2DProjLodEXT(0H3B0B");
constexpr const ImmutableString texture2DProjLod_0H2B0B("texture2DProjLod(0H2B0B");
constexpr const ImmutableString texture2DProjLod_0H3B0B("texture2DProjLod(0H3B0B");
constexpr const ImmutableString texture2DProj_0H2B("texture2DProj(0H2B");
constexpr const ImmutableString texture2DProj_0H2B0B("texture2DProj(0H2B0B");
constexpr const ImmutableString texture2DProj_0H3B("texture2DProj(0H3B");
constexpr const ImmutableString texture2DProj_0H3B0B("texture2DProj(0H3B0B");
constexpr const ImmutableString texture2DProj_0L2B("texture2DProj(0L2B");
constexpr const ImmutableString texture2DProj_0L3B("texture2DProj(0L3B");
constexpr const ImmutableString texture2DRect("texture2DRect");
constexpr const ImmutableString texture2DRectProj("texture2DRectProj");
constexpr const ImmutableString texture2DRectProj_0N2B("texture2DRectProj(0N2B");
constexpr const ImmutableString texture2DRectProj_0N3B("texture2DRectProj(0N3B");
constexpr const ImmutableString texture2DRect_0N1B("texture2DRect(0N1B");
constexpr const ImmutableString texture2D_0H1B("texture2D(0H1B");
constexpr const ImmutableString texture2D_0H1B0B("texture2D(0H1B0B");
constexpr const ImmutableString texture2D_0L1B("texture2D(0L1B");
constexpr const ImmutableString textureCube("textureCube");
constexpr const ImmutableString textureCubeGradEXT("textureCubeGradEXT");
constexpr const ImmutableString textureCubeGradEXT_0J2B2B2B("textureCubeGradEXT(0J2B2B2B");
constexpr const ImmutableString textureCubeLod("textureCubeLod");
constexpr const ImmutableString textureCubeLodEXT("textureCubeLodEXT");
constexpr const ImmutableString textureCubeLodEXT_0J2B0B("textureCubeLodEXT(0J2B0B");
constexpr const ImmutableString textureCubeLod_0J2B0B("textureCubeLod(0J2B0B");
constexpr const ImmutableString textureCube_0J2B("textureCube(0J2B");
constexpr const ImmutableString textureCube_0J2B0B("textureCube(0J2B0B");
constexpr const ImmutableString textureGather("textureGather");
constexpr const ImmutableString textureGatherOffset("textureGatherOffset");
constexpr const ImmutableString textureGatherOffset_0H1B1C("textureGatherOffset(0H1B1C");
constexpr const ImmutableString textureGatherOffset_0H1B1C0C("textureGatherOffset(0H1B1C0C");
constexpr const ImmutableString textureGatherOffset_0K2B1C("textureGatherOffset(0K2B1C");
constexpr const ImmutableString textureGatherOffset_0K2B1C0C("textureGatherOffset(0K2B1C0C");
constexpr const ImmutableString textureGatherOffset_0P1B1C("textureGatherOffset(0P1B1C");
constexpr const ImmutableString textureGatherOffset_0P1B1C0C("textureGatherOffset(0P1B1C0C");
constexpr const ImmutableString textureGatherOffset_0S2B1C("textureGatherOffset(0S2B1C");
constexpr const ImmutableString textureGatherOffset_0S2B1C0C("textureGatherOffset(0S2B1C0C");
constexpr const ImmutableString textureGatherOffset_0U1B1C("textureGatherOffset(0U1B1C");
constexpr const ImmutableString textureGatherOffset_0U1B1C0C("textureGatherOffset(0U1B1C0C");
constexpr const ImmutableString textureGatherOffset_0X2B1C("textureGatherOffset(0X2B1C");
constexpr const ImmutableString textureGatherOffset_0X2B1C0C("textureGatherOffset(0X2B1C0C");
constexpr const ImmutableString textureGatherOffset_0Z1B0B1C("textureGatherOffset(0Z1B0B1C");
constexpr const ImmutableString textureGatherOffset_0b2B0B1C("textureGatherOffset(0b2B0B1C");
constexpr const ImmutableString textureGather_0H1B("textureGather(0H1B");
constexpr const ImmutableString textureGather_0H1B0C("textureGather(0H1B0C");
constexpr const ImmutableString textureGather_0J2B("textureGather(0J2B");
constexpr const ImmutableString textureGather_0J2B0C("textureGather(0J2B0C");
constexpr const ImmutableString textureGather_0K2B("textureGather(0K2B");
constexpr const ImmutableString textureGather_0K2B0C("textureGather(0K2B0C");
constexpr const ImmutableString textureGather_0P1B("textureGather(0P1B");
constexpr const ImmutableString textureGather_0P1B0C("textureGather(0P1B0C");
constexpr const ImmutableString textureGather_0R2B("textureGather(0R2B");
constexpr const ImmutableString textureGather_0R2B0C("textureGather(0R2B0C");
constexpr const ImmutableString textureGather_0S2B("textureGather(0S2B");
constexpr const ImmutableString textureGather_0S2B0C("textureGather(0S2B0C");
constexpr const ImmutableString textureGather_0U1B("textureGather(0U1B");
constexpr const ImmutableString textureGather_0U1B0C("textureGather(0U1B0C");
constexpr const ImmutableString textureGather_0W2B("textureGather(0W2B");
constexpr const ImmutableString textureGather_0W2B0C("textureGather(0W2B0C");
constexpr const ImmutableString textureGather_0X2B("textureGather(0X2B");
constexpr const ImmutableString textureGather_0X2B0C("textureGather(0X2B0C");
constexpr const ImmutableString textureGather_0Z1B("textureGather(0Z1B");
constexpr const ImmutableString textureGather_0Z1B0B("textureGather(0Z1B0B");
constexpr const ImmutableString textureGather_0a2B("textureGather(0a2B");
constexpr const ImmutableString textureGather_0a2B0B("textureGather(0a2B0B");
constexpr const ImmutableString textureGather_0b2B("textureGather(0b2B");
constexpr const ImmutableString textureGather_0b2B0B("textureGather(0b2B0B");
constexpr const ImmutableString textureGrad("textureGrad");
constexpr const ImmutableString textureGradOffset("textureGradOffset");
constexpr const ImmutableString textureGradOffset_0H1B1B1B1C("textureGradOffset(0H1B1B1B1C");
constexpr const ImmutableString textureGradOffset_0I2B2B2B2C("textureGradOffset(0I2B2B2B2C");
constexpr const ImmutableString textureGradOffset_0K2B1B1B1C("textureGradOffset(0K2B1B1B1C");
constexpr const ImmutableString textureGradOffset_0P1B1B1B1C("textureGradOffset(0P1B1B1B1C");
constexpr const ImmutableString textureGradOffset_0Q2B2B2B2C("textureGradOffset(0Q2B2B2B2C");
constexpr const ImmutableString textureGradOffset_0S2B1B1B1C("textureGradOffset(0S2B1B1B1C");
constexpr const ImmutableString textureGradOffset_0U1B1B1B1C("textureGradOffset(0U1B1B1B1C");
constexpr const ImmutableString textureGradOffset_0V2B2B2B2C("textureGradOffset(0V2B2B2B2C");
constexpr const ImmutableString textureGradOffset_0X2B1B1B1C("textureGradOffset(0X2B1B1B1C");
constexpr const ImmutableString textureGradOffset_0Z2B1B1B1C("textureGradOffset(0Z2B1B1B1C");
constexpr const ImmutableString textureGradOffset_0b3B1B1B1C("textureGradOffset(0b3B1B1B1C");
constexpr const ImmutableString textureGrad_0H1B1B1B("textureGrad(0H1B1B1B");
constexpr const ImmutableString textureGrad_0I2B2B2B("textureGrad(0I2B2B2B");
constexpr const ImmutableString textureGrad_0J2B2B2B("textureGrad(0J2B2B2B");
constexpr const ImmutableString textureGrad_0K2B1B1B("textureGrad(0K2B1B1B");
constexpr const ImmutableString textureGrad_0P1B1B1B("textureGrad(0P1B1B1B");
constexpr const ImmutableString textureGrad_0Q2B2B2B("textureGrad(0Q2B2B2B");
constexpr const ImmutableString textureGrad_0R2B2B2B("textureGrad(0R2B2B2B");
constexpr const ImmutableString textureGrad_0S2B1B1B("textureGrad(0S2B1B1B");
constexpr const ImmutableString textureGrad_0U1B1B1B("textureGrad(0U1B1B1B");
constexpr const ImmutableString textureGrad_0V2B2B2B("textureGrad(0V2B2B2B");
constexpr const ImmutableString textureGrad_0W2B2B2B("textureGrad(0W2B2B2B");
constexpr const ImmutableString textureGrad_0X2B1B1B("textureGrad(0X2B1B1B");
constexpr const ImmutableString textureGrad_0Z2B1B1B("textureGrad(0Z2B1B1B");
constexpr const ImmutableString textureGrad_0a3B2B2B("textureGrad(0a3B2B2B");
constexpr const ImmutableString textureGrad_0b3B1B1B("textureGrad(0b3B1B1B");
constexpr const ImmutableString textureLod("textureLod");
constexpr const ImmutableString textureLodOffset("textureLodOffset");
constexpr const ImmutableString textureLodOffset_0H1B0B1C("textureLodOffset(0H1B0B1C");
constexpr const ImmutableString textureLodOffset_0I2B0B2C("textureLodOffset(0I2B0B2C");
constexpr const ImmutableString textureLodOffset_0K2B0B1C("textureLodOffset(0K2B0B1C");
constexpr const ImmutableString textureLodOffset_0P1B0B1C("textureLodOffset(0P1B0B1C");
constexpr const ImmutableString textureLodOffset_0Q2B0B2C("textureLodOffset(0Q2B0B2C");
constexpr const ImmutableString textureLodOffset_0S2B0B1C("textureLodOffset(0S2B0B1C");
constexpr const ImmutableString textureLodOffset_0U1B0B1C("textureLodOffset(0U1B0B1C");
constexpr const ImmutableString textureLodOffset_0V2B0B2C("textureLodOffset(0V2B0B2C");
constexpr const ImmutableString textureLodOffset_0X2B0B1C("textureLodOffset(0X2B0B1C");
constexpr const ImmutableString textureLodOffset_0Z2B0B1C("textureLodOffset(0Z2B0B1C");
constexpr const ImmutableString textureLod_0H1B0B("textureLod(0H1B0B");
constexpr const ImmutableString textureLod_0I2B0B("textureLod(0I2B0B");
constexpr const ImmutableString textureLod_0J2B0B("textureLod(0J2B0B");
constexpr const ImmutableString textureLod_0K2B0B("textureLod(0K2B0B");
constexpr const ImmutableString textureLod_0P1B0B("textureLod(0P1B0B");
constexpr const ImmutableString textureLod_0Q2B0B("textureLod(0Q2B0B");
constexpr const ImmutableString textureLod_0R2B0B("textureLod(0R2B0B");
constexpr const ImmutableString textureLod_0S2B0B("textureLod(0S2B0B");
constexpr const ImmutableString textureLod_0U1B0B("textureLod(0U1B0B");
constexpr const ImmutableString textureLod_0V2B0B("textureLod(0V2B0B");
constexpr const ImmutableString textureLod_0W2B0B("textureLod(0W2B0B");
constexpr const ImmutableString textureLod_0X2B0B("textureLod(0X2B0B");
constexpr const ImmutableString textureLod_0Z2B0B("textureLod(0Z2B0B");
constexpr const ImmutableString textureOffset("textureOffset");
constexpr const ImmutableString textureOffset_0H1B1C("textureOffset(0H1B1C");
constexpr const ImmutableString textureOffset_0H1B1C0B("textureOffset(0H1B1C0B");
constexpr const ImmutableString textureOffset_0I2B2C("textureOffset(0I2B2C");
constexpr const ImmutableString textureOffset_0I2B2C0B("textureOffset(0I2B2C0B");
constexpr const ImmutableString textureOffset_0K2B1C("textureOffset(0K2B1C");
constexpr const ImmutableString textureOffset_0K2B1C0B("textureOffset(0K2B1C0B");
constexpr const ImmutableString textureOffset_0P1B1C("textureOffset(0P1B1C");
constexpr const ImmutableString textureOffset_0P1B1C0B("textureOffset(0P1B1C0B");
constexpr const ImmutableString textureOffset_0Q2B2C("textureOffset(0Q2B2C");
constexpr const ImmutableString textureOffset_0Q2B2C0B("textureOffset(0Q2B2C0B");
constexpr const ImmutableString textureOffset_0S2B1C("textureOffset(0S2B1C");
constexpr const ImmutableString textureOffset_0S2B1C0B("textureOffset(0S2B1C0B");
constexpr const ImmutableString textureOffset_0U1B1C("textureOffset(0U1B1C");
constexpr const ImmutableString textureOffset_0U1B1C0B("textureOffset(0U1B1C0B");
constexpr const ImmutableString textureOffset_0V2B2C("textureOffset(0V2B2C");
constexpr const ImmutableString textureOffset_0V2B2C0B("textureOffset(0V2B2C0B");
constexpr const ImmutableString textureOffset_0X2B1C("textureOffset(0X2B1C");
constexpr const ImmutableString textureOffset_0X2B1C0B("textureOffset(0X2B1C0B");
constexpr const ImmutableString textureOffset_0Z2B1C("textureOffset(0Z2B1C");
constexpr const ImmutableString textureOffset_0Z2B1C0B("textureOffset(0Z2B1C0B");
constexpr const ImmutableString textureProj("textureProj");
constexpr const ImmutableString textureProjGrad("textureProjGrad");
constexpr const ImmutableString textureProjGradOffset("textureProjGradOffset");
constexpr const ImmutableString textureProjGradOffset_0H2B1B1B1C(
    "textureProjGradOffset(0H2B1B1B1C");
constexpr const ImmutableString textureProjGradOffset_0H3B1B1B1C(
    "textureProjGradOffset(0H3B1B1B1C");
constexpr const ImmutableString textureProjGradOffset_0I3B2B2B2C(
    "textureProjGradOffset(0I3B2B2B2C");
constexpr const ImmutableString textureProjGradOffset_0P2B1B1B1C(
    "textureProjGradOffset(0P2B1B1B1C");
constexpr const ImmutableString textureProjGradOffset_0P3B1B1B1C(
    "textureProjGradOffset(0P3B1B1B1C");
constexpr const ImmutableString textureProjGradOffset_0Q3B2B2B2C(
    "textureProjGradOffset(0Q3B2B2B2C");
constexpr const ImmutableString textureProjGradOffset_0U2B1B1B1C(
    "textureProjGradOffset(0U2B1B1B1C");
constexpr const ImmutableString textureProjGradOffset_0U3B1B1B1C(
    "textureProjGradOffset(0U3B1B1B1C");
constexpr const ImmutableString textureProjGradOffset_0V3B2B2B2C(
    "textureProjGradOffset(0V3B2B2B2C");
constexpr const ImmutableString textureProjGradOffset_0Z3B1B1B1C(
    "textureProjGradOffset(0Z3B1B1B1C");
constexpr const ImmutableString textureProjGrad_0H2B1B1B("textureProjGrad(0H2B1B1B");
constexpr const ImmutableString textureProjGrad_0H3B1B1B("textureProjGrad(0H3B1B1B");
constexpr const ImmutableString textureProjGrad_0I3B2B2B("textureProjGrad(0I3B2B2B");
constexpr const ImmutableString textureProjGrad_0P2B1B1B("textureProjGrad(0P2B1B1B");
constexpr const ImmutableString textureProjGrad_0P3B1B1B("textureProjGrad(0P3B1B1B");
constexpr const ImmutableString textureProjGrad_0Q3B2B2B("textureProjGrad(0Q3B2B2B");
constexpr const ImmutableString textureProjGrad_0U2B1B1B("textureProjGrad(0U2B1B1B");
constexpr const ImmutableString textureProjGrad_0U3B1B1B("textureProjGrad(0U3B1B1B");
constexpr const ImmutableString textureProjGrad_0V3B2B2B("textureProjGrad(0V3B2B2B");
constexpr const ImmutableString textureProjGrad_0Z3B1B1B("textureProjGrad(0Z3B1B1B");
constexpr const ImmutableString textureProjLod("textureProjLod");
constexpr const ImmutableString textureProjLodOffset("textureProjLodOffset");
constexpr const ImmutableString textureProjLodOffset_0H2B0B1C("textureProjLodOffset(0H2B0B1C");
constexpr const ImmutableString textureProjLodOffset_0H3B0B1C("textureProjLodOffset(0H3B0B1C");
constexpr const ImmutableString textureProjLodOffset_0I3B0B2C("textureProjLodOffset(0I3B0B2C");
constexpr const ImmutableString textureProjLodOffset_0P2B0B1C("textureProjLodOffset(0P2B0B1C");
constexpr const ImmutableString textureProjLodOffset_0P3B0B1C("textureProjLodOffset(0P3B0B1C");
constexpr const ImmutableString textureProjLodOffset_0Q3B0B2C("textureProjLodOffset(0Q3B0B2C");
constexpr const ImmutableString textureProjLodOffset_0U2B0B1C("textureProjLodOffset(0U2B0B1C");
constexpr const ImmutableString textureProjLodOffset_0U3B0B1C("textureProjLodOffset(0U3B0B1C");
constexpr const ImmutableString textureProjLodOffset_0V3B0B2C("textureProjLodOffset(0V3B0B2C");
constexpr const ImmutableString textureProjLodOffset_0Z3B0B1C("textureProjLodOffset(0Z3B0B1C");
constexpr const ImmutableString textureProjLod_0H2B0B("textureProjLod(0H2B0B");
constexpr const ImmutableString textureProjLod_0H3B0B("textureProjLod(0H3B0B");
constexpr const ImmutableString textureProjLod_0I3B0B("textureProjLod(0I3B0B");
constexpr const ImmutableString textureProjLod_0P2B0B("textureProjLod(0P2B0B");
constexpr const ImmutableString textureProjLod_0P3B0B("textureProjLod(0P3B0B");
constexpr const ImmutableString textureProjLod_0Q3B0B("textureProjLod(0Q3B0B");
constexpr const ImmutableString textureProjLod_0U2B0B("textureProjLod(0U2B0B");
constexpr const ImmutableString textureProjLod_0U3B0B("textureProjLod(0U3B0B");
constexpr const ImmutableString textureProjLod_0V3B0B("textureProjLod(0V3B0B");
constexpr const ImmutableString textureProjLod_0Z3B0B("textureProjLod(0Z3B0B");
constexpr const ImmutableString textureProjOffset("textureProjOffset");
constexpr const ImmutableString textureProjOffset_0H2B1C("textureProjOffset(0H2B1C");
constexpr const ImmutableString textureProjOffset_0H2B1C0B("textureProjOffset(0H2B1C0B");
constexpr const ImmutableString textureProjOffset_0H3B1C("textureProjOffset(0H3B1C");
constexpr const ImmutableString textureProjOffset_0H3B1C0B("textureProjOffset(0H3B1C0B");
constexpr const ImmutableString textureProjOffset_0I3B2C("textureProjOffset(0I3B2C");
constexpr const ImmutableString textureProjOffset_0I3B2C0B("textureProjOffset(0I3B2C0B");
constexpr const ImmutableString textureProjOffset_0P2B1C("textureProjOffset(0P2B1C");
constexpr const ImmutableString textureProjOffset_0P2B1C0B("textureProjOffset(0P2B1C0B");
constexpr const ImmutableString textureProjOffset_0P3B1C("textureProjOffset(0P3B1C");
constexpr const ImmutableString textureProjOffset_0P3B1C0B("textureProjOffset(0P3B1C0B");
constexpr const ImmutableString textureProjOffset_0Q3B2C("textureProjOffset(0Q3B2C");
constexpr const ImmutableString textureProjOffset_0Q3B2C0B("textureProjOffset(0Q3B2C0B");
constexpr const ImmutableString textureProjOffset_0U2B1C("textureProjOffset(0U2B1C");
constexpr const ImmutableString textureProjOffset_0U2B1C0B("textureProjOffset(0U2B1C0B");
constexpr const ImmutableString textureProjOffset_0U3B1C("textureProjOffset(0U3B1C");
constexpr const ImmutableString textureProjOffset_0U3B1C0B("textureProjOffset(0U3B1C0B");
constexpr const ImmutableString textureProjOffset_0V3B2C("textureProjOffset(0V3B2C");
constexpr const ImmutableString textureProjOffset_0V3B2C0B("textureProjOffset(0V3B2C0B");
constexpr const ImmutableString textureProjOffset_0Z3B1C("textureProjOffset(0Z3B1C");
constexpr const ImmutableString textureProjOffset_0Z3B1C0B("textureProjOffset(0Z3B1C0B");
constexpr const ImmutableString textureProj_0H2B("textureProj(0H2B");
constexpr const ImmutableString textureProj_0H2B0B("textureProj(0H2B0B");
constexpr const ImmutableString textureProj_0H3B("textureProj(0H3B");
constexpr const ImmutableString textureProj_0H3B0B("textureProj(0H3B0B");
constexpr const ImmutableString textureProj_0I3B("textureProj(0I3B");
constexpr const ImmutableString textureProj_0I3B0B("textureProj(0I3B0B");
constexpr const ImmutableString textureProj_0L2B("textureProj(0L2B");
constexpr const ImmutableString textureProj_0L2B0B("textureProj(0L2B0B");
constexpr const ImmutableString textureProj_0L3B("textureProj(0L3B");
constexpr const ImmutableString textureProj_0L3B0B("textureProj(0L3B0B");
constexpr const ImmutableString textureProj_0M2B("textureProj(0M2B");
constexpr const ImmutableString textureProj_0M2B0B("textureProj(0M2B0B");
constexpr const ImmutableString textureProj_0M3B("textureProj(0M3B");
constexpr const ImmutableString textureProj_0M3B0B("textureProj(0M3B0B");
constexpr const ImmutableString textureProj_0N2B("textureProj(0N2B");
constexpr const ImmutableString textureProj_0N3B("textureProj(0N3B");
constexpr const ImmutableString textureProj_0P2B("textureProj(0P2B");
constexpr const ImmutableString textureProj_0P2B0B("textureProj(0P2B0B");
constexpr const ImmutableString textureProj_0P3B("textureProj(0P3B");
constexpr const ImmutableString textureProj_0P3B0B("textureProj(0P3B0B");
constexpr const ImmutableString textureProj_0Q3B("textureProj(0Q3B");
constexpr const ImmutableString textureProj_0Q3B0B("textureProj(0Q3B0B");
constexpr const ImmutableString textureProj_0U2B("textureProj(0U2B");
constexpr const ImmutableString textureProj_0U2B0B("textureProj(0U2B0B");
constexpr const ImmutableString textureProj_0U3B("textureProj(0U3B");
constexpr const ImmutableString textureProj_0U3B0B("textureProj(0U3B0B");
constexpr const ImmutableString textureProj_0V3B("textureProj(0V3B");
constexpr const ImmutableString textureProj_0V3B0B("textureProj(0V3B0B");
constexpr const ImmutableString textureProj_0Z3B("textureProj(0Z3B");
constexpr const ImmutableString textureProj_0Z3B0B("textureProj(0Z3B0B");
constexpr const ImmutableString textureSize("textureSize");
constexpr const ImmutableString textureSize_0H0C("textureSize(0H0C");
constexpr const ImmutableString textureSize_0I0C("textureSize(0I0C");
constexpr const ImmutableString textureSize_0J0C("textureSize(0J0C");
constexpr const ImmutableString textureSize_0K0C("textureSize(0K0C");
constexpr const ImmutableString textureSize_0L0C("textureSize(0L0C");
constexpr const ImmutableString textureSize_0M0C("textureSize(0M0C");
constexpr const ImmutableString textureSize_0O("textureSize(0O");
constexpr const ImmutableString textureSize_0P0C("textureSize(0P0C");
constexpr const ImmutableString textureSize_0Q0C("textureSize(0Q0C");
constexpr const ImmutableString textureSize_0R0C("textureSize(0R0C");
constexpr const ImmutableString textureSize_0S0C("textureSize(0S0C");
constexpr const ImmutableString textureSize_0T("textureSize(0T");
constexpr const ImmutableString textureSize_0U0C("textureSize(0U0C");
constexpr const ImmutableString textureSize_0V0C("textureSize(0V0C");
constexpr const ImmutableString textureSize_0W0C("textureSize(0W0C");
constexpr const ImmutableString textureSize_0X0C("textureSize(0X0C");
constexpr const ImmutableString textureSize_0Y("textureSize(0Y");
constexpr const ImmutableString textureSize_0Z0C("textureSize(0Z0C");
constexpr const ImmutableString textureSize_0a0C("textureSize(0a0C");
constexpr const ImmutableString textureSize_0b0C("textureSize(0b0C");
constexpr const ImmutableString texture_0H1B("texture(0H1B");
constexpr const ImmutableString texture_0H1B0B("texture(0H1B0B");
constexpr const ImmutableString texture_0I2B("texture(0I2B");
constexpr const ImmutableString texture_0I2B0B("texture(0I2B0B");
constexpr const ImmutableString texture_0J2B("texture(0J2B");
constexpr const ImmutableString texture_0J2B0B("texture(0J2B0B");
constexpr const ImmutableString texture_0K2B("texture(0K2B");
constexpr const ImmutableString texture_0K2B0B("texture(0K2B0B");
constexpr const ImmutableString texture_0L1B("texture(0L1B");
constexpr const ImmutableString texture_0L1B0B("texture(0L1B0B");
constexpr const ImmutableString texture_0M1B("texture(0M1B");
constexpr const ImmutableString texture_0M1B0B("texture(0M1B0B");
constexpr const ImmutableString texture_0N1B("texture(0N1B");
constexpr const ImmutableString texture_0P1B("texture(0P1B");
constexpr const ImmutableString texture_0P1B0B("texture(0P1B0B");
constexpr const ImmutableString texture_0Q2B("texture(0Q2B");
constexpr const ImmutableString texture_0Q2B0B("texture(0Q2B0B");
constexpr const ImmutableString texture_0R2B("texture(0R2B");
constexpr const ImmutableString texture_0R2B0B("texture(0R2B0B");
constexpr const ImmutableString texture_0S2B("texture(0S2B");
constexpr const ImmutableString texture_0S2B0B("texture(0S2B0B");
constexpr const ImmutableString texture_0U1B("texture(0U1B");
constexpr const ImmutableString texture_0U1B0B("texture(0U1B0B");
constexpr const ImmutableString texture_0V2B("texture(0V2B");
constexpr const ImmutableString texture_0V2B0B("texture(0V2B0B");
constexpr const ImmutableString texture_0W2B("texture(0W2B");
constexpr const ImmutableString texture_0W2B0B("texture(0W2B0B");
constexpr const ImmutableString texture_0X2B("texture(0X2B");
constexpr const ImmutableString texture_0X2B0B("texture(0X2B0B");
constexpr const ImmutableString texture_0Z2B("texture(0Z2B");
constexpr const ImmutableString texture_0Z2B0B("texture(0Z2B0B");
constexpr const ImmutableString texture_0a3B("texture(0a3B");
constexpr const ImmutableString texture_0a3B0B("texture(0a3B0B");
constexpr const ImmutableString texture_0b3B("texture(0b3B");
constexpr const ImmutableString transpose("transpose");
constexpr const ImmutableString transpose_5B("transpose(5B");
constexpr const ImmutableString transpose_6B("transpose(6B");
constexpr const ImmutableString transpose_7B("transpose(7B");
constexpr const ImmutableString transpose_9B("transpose(9B");
constexpr const ImmutableString transpose_AB("transpose(AB");
constexpr const ImmutableString transpose_BB("transpose(BB");
constexpr const ImmutableString transpose_DB("transpose(DB");
constexpr const ImmutableString transpose_EB("transpose(EB");
constexpr const ImmutableString transpose_FB("transpose(FB");
constexpr const ImmutableString trunc("trunc");
constexpr const ImmutableString trunc_0B("trunc(0B");
constexpr const ImmutableString trunc_1B("trunc(1B");
constexpr const ImmutableString trunc_2B("trunc(2B");
constexpr const ImmutableString trunc_3B("trunc(3B");
constexpr const ImmutableString uaddCarry("uaddCarry");
constexpr const ImmutableString uaddCarry_0D0D0D("uaddCarry(0D0D0D");
constexpr const ImmutableString uaddCarry_1D1D1D("uaddCarry(1D1D1D");
constexpr const ImmutableString uaddCarry_2D2D2D("uaddCarry(2D2D2D");
constexpr const ImmutableString uaddCarry_3D3D3D("uaddCarry(3D3D3D");
constexpr const ImmutableString uintBitsToFloat("uintBitsToFloat");
constexpr const ImmutableString uintBitsToFloat_0D("uintBitsToFloat(0D");
constexpr const ImmutableString uintBitsToFloat_1D("uintBitsToFloat(1D");
constexpr const ImmutableString uintBitsToFloat_2D("uintBitsToFloat(2D");
constexpr const ImmutableString uintBitsToFloat_3D("uintBitsToFloat(3D");
constexpr const ImmutableString umulExtended("umulExtended");
constexpr const ImmutableString umulExtended_0D0D0D0D("umulExtended(0D0D0D0D");
constexpr const ImmutableString umulExtended_1D1D1D1D("umulExtended(1D1D1D1D");
constexpr const ImmutableString umulExtended_2D2D2D2D("umulExtended(2D2D2D2D");
constexpr const ImmutableString umulExtended_3D3D3D3D("umulExtended(3D3D3D3D");
constexpr const ImmutableString unpackHalf2x16("unpackHalf2x16");
constexpr const ImmutableString unpackHalf2x16_0D("unpackHalf2x16(0D");
constexpr const ImmutableString unpackSnorm2x16("unpackSnorm2x16");
constexpr const ImmutableString unpackSnorm2x16_0D("unpackSnorm2x16(0D");
constexpr const ImmutableString unpackSnorm4x8("unpackSnorm4x8");
constexpr const ImmutableString unpackSnorm4x8_0D("unpackSnorm4x8(0D");
constexpr const ImmutableString unpackUnorm2x16("unpackUnorm2x16");
constexpr const ImmutableString unpackUnorm2x16_0D("unpackUnorm2x16(0D");
constexpr const ImmutableString unpackUnorm4x8("unpackUnorm4x8");
constexpr const ImmutableString unpackUnorm4x8_0D("unpackUnorm4x8(0D");
constexpr const ImmutableString usubBorrow("usubBorrow");
constexpr const ImmutableString usubBorrow_0D0D0D("usubBorrow(0D0D0D");
constexpr const ImmutableString usubBorrow_1D1D1D("usubBorrow(1D1D1D");
constexpr const ImmutableString usubBorrow_2D2D2D("usubBorrow(2D2D2D");
constexpr const ImmutableString usubBorrow_3D3D3D("usubBorrow(3D3D3D");
constexpr const ImmutableString yuv_2_rgb("yuv_2_rgb");
constexpr const ImmutableString yuv_2_rgb_2B0G("yuv_2_rgb(2B0G");

}  // namespace BuiltInName

// TODO(oetuaho): Would be nice to make this a class instead of a namespace so that we could friend
// this from TVariable. Now symbol constructors taking an id have to be public even though they're
// not supposed to be accessible from outside of here. http://anglebug.com/2390
namespace BuiltInVariable
{

constexpr const TVariable kVar_gl_FragColor(
    BuiltInId::gl_FragColor,
    BuiltInName::gl_FragColor,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtFloat, EbpMedium, EvqFragColor, 4, 1>());
constexpr const TVariable kVar_gl_FragCoord(
    BuiltInId::gl_FragCoord,
    BuiltInName::gl_FragCoord,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtFloat, EbpMedium, EvqFragCoord, 4, 1>());
constexpr const TVariable kVar_gl_FragDepth(
    BuiltInId::gl_FragDepth,
    BuiltInName::gl_FragDepth,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtFloat, EbpHigh, EvqFragDepth, 1, 1>());
constexpr const TVariable kVar_gl_FrontFacing(
    BuiltInId::gl_FrontFacing,
    BuiltInName::gl_FrontFacing,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtBool, EbpUndefined, EvqFrontFacing, 1, 1>());
constexpr const TVariable kVar_gl_GlobalInvocationID(
    BuiltInId::gl_GlobalInvocationID,
    BuiltInName::gl_GlobalInvocationID,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobalInvocationID, 3, 1>());
constexpr const TVariable kVar_gl_InstanceID(
    BuiltInId::gl_InstanceID,
    BuiltInName::gl_InstanceID,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtInt, EbpHigh, EvqInstanceID, 1, 1>());
constexpr const TVariable kVar_gl_InvocationID(
    BuiltInId::gl_InvocationID,
    BuiltInName::gl_InvocationID,
    SymbolType::BuiltIn,
    TExtension::EXT_geometry_shader,
    StaticType::Get<EbtInt, EbpHigh, EvqInvocationID, 1, 1>());
constexpr const TVariable kVar_gl_LastFragColor(
    BuiltInId::gl_LastFragColor,
    BuiltInName::gl_LastFragColor,
    SymbolType::BuiltIn,
    TExtension::NV_shader_framebuffer_fetch,
    StaticType::Get<EbtFloat, EbpMedium, EvqLastFragColor, 4, 1>());
constexpr const TVariable kVar_gl_LastFragColorARM(
    BuiltInId::gl_LastFragColorARM,
    BuiltInName::gl_LastFragColorARM,
    SymbolType::BuiltIn,
    TExtension::ARM_shader_framebuffer_fetch,
    StaticType::Get<EbtFloat, EbpMedium, EvqLastFragColor, 4, 1>());
constexpr const TVariable kVar_gl_Layer(BuiltInId::gl_Layer,
                                        BuiltInName::gl_Layer,
                                        SymbolType::BuiltIn,
                                        TExtension::EXT_geometry_shader,
                                        StaticType::Get<EbtInt, EbpHigh, EvqLayer, 1, 1>());
constexpr const TVariable kVar_gl_LayerGS(BuiltInId::gl_LayerGS,
                                          BuiltInName::gl_Layer,
                                          SymbolType::BuiltIn,
                                          TExtension::EXT_geometry_shader,
                                          StaticType::Get<EbtInt, EbpHigh, EvqLayer, 1, 1>());
constexpr const TVariable kVar_gl_LayerVS(BuiltInId::gl_LayerVS,
                                          BuiltInName::gl_Layer,
                                          SymbolType::BuiltIn,
                                          TExtension::UNDEFINED,
                                          StaticType::Get<EbtInt, EbpHigh, EvqLayer, 1, 1>());
constexpr const TVariable kVar_gl_LocalInvocationID(
    BuiltInId::gl_LocalInvocationID,
    BuiltInName::gl_LocalInvocationID,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtUInt, EbpUndefined, EvqLocalInvocationID, 3, 1>());
constexpr const TVariable kVar_gl_LocalInvocationIndex(
    BuiltInId::gl_LocalInvocationIndex,
    BuiltInName::gl_LocalInvocationIndex,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtUInt, EbpUndefined, EvqLocalInvocationIndex, 1, 1>());
constexpr const TVariable kVar_gl_NumWorkGroups(
    BuiltInId::gl_NumWorkGroups,
    BuiltInName::gl_NumWorkGroups,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtUInt, EbpUndefined, EvqNumWorkGroups, 3, 1>());
constexpr const TVariable kVar_gl_PointCoord(
    BuiltInId::gl_PointCoord,
    BuiltInName::gl_PointCoord,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtFloat, EbpMedium, EvqPointCoord, 2, 1>());
constexpr const TVariable kVar_gl_PointSize(
    BuiltInId::gl_PointSize,
    BuiltInName::gl_PointSize,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtFloat, EbpMedium, EvqPointSize, 1, 1>());
constexpr const TVariable kVar_gl_Position(BuiltInId::gl_Position,
                                           BuiltInName::gl_Position,
                                           SymbolType::BuiltIn,
                                           TExtension::UNDEFINED,
                                           StaticType::Get<EbtFloat, EbpHigh, EvqPosition, 4, 1>());
constexpr const TVariable kVar_gl_PrimitiveID(
    BuiltInId::gl_PrimitiveID,
    BuiltInName::gl_PrimitiveID,
    SymbolType::BuiltIn,
    TExtension::EXT_geometry_shader,
    StaticType::Get<EbtInt, EbpHigh, EvqPrimitiveID, 1, 1>());
constexpr const TVariable kVar_gl_PrimitiveIDGS(
    BuiltInId::gl_PrimitiveIDGS,
    BuiltInName::gl_PrimitiveID,
    SymbolType::BuiltIn,
    TExtension::EXT_geometry_shader,
    StaticType::Get<EbtInt, EbpHigh, EvqPrimitiveID, 1, 1>());
constexpr const TVariable kVar_gl_PrimitiveIDIn(
    BuiltInId::gl_PrimitiveIDIn,
    BuiltInName::gl_PrimitiveIDIn,
    SymbolType::BuiltIn,
    TExtension::EXT_geometry_shader,
    StaticType::Get<EbtInt, EbpHigh, EvqPrimitiveIDIn, 1, 1>());
constexpr const TVariable kVar_gl_SecondaryFragColorEXT(
    BuiltInId::gl_SecondaryFragColorEXT,
    BuiltInName::gl_SecondaryFragColorEXT,
    SymbolType::BuiltIn,
    TExtension::EXT_blend_func_extended,
    StaticType::Get<EbtFloat, EbpMedium, EvqSecondaryFragColorEXT, 4, 1>());
constexpr const TVariable kVar_gl_VertexID(BuiltInId::gl_VertexID,
                                           BuiltInName::gl_VertexID,
                                           SymbolType::BuiltIn,
                                           TExtension::UNDEFINED,
                                           StaticType::Get<EbtInt, EbpHigh, EvqVertexID, 1, 1>());
constexpr const TVariable kVar_gl_ViewID_OVR(
    BuiltInId::gl_ViewID_OVR,
    BuiltInName::gl_ViewID_OVR,
    SymbolType::BuiltIn,
    TExtension::OVR_multiview,
    StaticType::Get<EbtUInt, EbpHigh, EvqViewIDOVR, 1, 1>());
constexpr const TVariable kVar_gl_ViewID_OVRESSL1(
    BuiltInId::gl_ViewID_OVRESSL1,
    BuiltInName::gl_ViewID_OVR,
    SymbolType::BuiltIn,
    TExtension::OVR_multiview,
    StaticType::Get<EbtInt, EbpHigh, EvqViewIDOVR, 1, 1>());
constexpr const TVariable kVar_gl_ViewportIndex(
    BuiltInId::gl_ViewportIndex,
    BuiltInName::gl_ViewportIndex,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtInt, EbpHigh, EvqViewportIndex, 1, 1>());
constexpr const TVariable kVar_gl_WorkGroupID(
    BuiltInId::gl_WorkGroupID,
    BuiltInName::gl_WorkGroupID,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtUInt, EbpUndefined, EvqWorkGroupID, 3, 1>());
constexpr const TVariable kVar_gl_WorkGroupSize(
    BuiltInId::gl_WorkGroupSize,
    BuiltInName::gl_WorkGroupSize,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtUInt, EbpUndefined, EvqWorkGroupSize, 3, 1>());
constexpr const TVariable kVar_pt0B(BuiltInId::pt0B,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0C(BuiltInId::pt0C,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0D(BuiltInId::pt0D,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0E(BuiltInId::pt0E,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0F(
    BuiltInId::pt0F,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtAtomicCounter, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0G(
    BuiltInId::pt0G,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtYuvCscStandardEXT, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0H(BuiltInId::pt0H,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtSampler2D, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0I(BuiltInId::pt0I,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtSampler3D, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0J(
    BuiltInId::pt0J,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtSamplerCube, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0K(
    BuiltInId::pt0K,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtSampler2DArray, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0L(
    BuiltInId::pt0L,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtSamplerExternalOES, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0M(
    BuiltInId::pt0M,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtSamplerExternal2DY2YEXT, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0N(
    BuiltInId::pt0N,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtSampler2DRect, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0O(
    BuiltInId::pt0O,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtSampler2DMS, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0P(
    BuiltInId::pt0P,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtISampler2D, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0Q(
    BuiltInId::pt0Q,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtISampler3D, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0R(
    BuiltInId::pt0R,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtISamplerCube, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0S(
    BuiltInId::pt0S,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtISampler2DArray, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0T(
    BuiltInId::pt0T,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtISampler2DMS, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0U(
    BuiltInId::pt0U,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtUSampler2D, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0V(
    BuiltInId::pt0V,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtUSampler3D, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0W(
    BuiltInId::pt0W,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtUSamplerCube, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0X(
    BuiltInId::pt0X,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtUSampler2DArray, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0Y(
    BuiltInId::pt0Y,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtUSampler2DMS, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0Z(
    BuiltInId::pt0Z,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtSampler2DShadow, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0a(
    BuiltInId::pt0a,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtSamplerCubeShadow, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0b(
    BuiltInId::pt0b,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtSampler2DArrayShadow, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0c(BuiltInId::pt0c,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtImage2D, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0d(BuiltInId::pt0d,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtIImage2D, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0e(BuiltInId::pt0e,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtUImage2D, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0f(BuiltInId::pt0f,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtImage3D, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0g(BuiltInId::pt0g,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtIImage3D, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0h(BuiltInId::pt0h,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtUImage3D, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0i(
    BuiltInId::pt0i,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtImage2DArray, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0j(
    BuiltInId::pt0j,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtIImage2DArray, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0k(
    BuiltInId::pt0k,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtUImage2DArray, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0l(BuiltInId::pt0l,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtImageCube, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0m(
    BuiltInId::pt0m,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtIImageCube, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt0n(
    BuiltInId::pt0n,
    BuiltInName::_empty,
    SymbolType::BuiltIn,
    TExtension::UNDEFINED,
    StaticType::Get<EbtUImageCube, EbpUndefined, EvqGlobal, 1, 1>());
constexpr const TVariable kVar_pt1B(BuiltInId::pt1B,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>());
constexpr const TVariable kVar_pt1C(BuiltInId::pt1C,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>());
constexpr const TVariable kVar_pt1D(BuiltInId::pt1D,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>());
constexpr const TVariable kVar_pt1E(BuiltInId::pt1E,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>());
constexpr const TVariable kVar_pt2B(BuiltInId::pt2B,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>());
constexpr const TVariable kVar_pt2C(BuiltInId::pt2C,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>());
constexpr const TVariable kVar_pt2D(BuiltInId::pt2D,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>());
constexpr const TVariable kVar_pt2E(BuiltInId::pt2E,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>());
constexpr const TVariable kVar_pt3B(BuiltInId::pt3B,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>());
constexpr const TVariable kVar_pt3C(BuiltInId::pt3C,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>());
constexpr const TVariable kVar_pt3D(BuiltInId::pt3D,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>());
constexpr const TVariable kVar_pt3E(BuiltInId::pt3E,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>());
constexpr const TVariable kVar_pt5B(BuiltInId::pt5B,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 2>());
constexpr const TVariable kVar_pt6B(BuiltInId::pt6B,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 2>());
constexpr const TVariable kVar_pt7B(BuiltInId::pt7B,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 2>());
constexpr const TVariable kVar_pt9B(BuiltInId::pt9B,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 3>());
constexpr const TVariable kVar_ptAB(BuiltInId::ptAB,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 3>());
constexpr const TVariable kVar_ptBB(BuiltInId::ptBB,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 3>());
constexpr const TVariable kVar_ptDB(BuiltInId::ptDB,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 4>());
constexpr const TVariable kVar_ptEB(BuiltInId::ptEB,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 4>());
constexpr const TVariable kVar_ptFB(BuiltInId::ptFB,
                                    BuiltInName::_empty,
                                    SymbolType::BuiltIn,
                                    TExtension::UNDEFINED,
                                    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 4>());
constexpr const TVariable kVar_pt_io_0C(BuiltInId::pt_io_0C,
                                        BuiltInName::_empty,
                                        SymbolType::BuiltIn,
                                        TExtension::UNDEFINED,
                                        StaticType::Get<EbtInt, EbpUndefined, EvqInOut, 1, 1>());
constexpr const TVariable kVar_pt_io_0D(BuiltInId::pt_io_0D,
                                        BuiltInName::_empty,
                                        SymbolType::BuiltIn,
                                        TExtension::UNDEFINED,
                                        StaticType::Get<EbtUInt, EbpUndefined, EvqInOut, 1, 1>());
constexpr const TVariable kVar_pt_o_0B(BuiltInId::pt_o_0B,
                                       BuiltInName::_empty,
                                       SymbolType::BuiltIn,
                                       TExtension::UNDEFINED,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqOut, 1, 1>());
constexpr const TVariable kVar_pt_o_0C(BuiltInId::pt_o_0C,
                                       BuiltInName::_empty,
                                       SymbolType::BuiltIn,
                                       TExtension::UNDEFINED,
                                       StaticType::Get<EbtInt, EbpUndefined, EvqOut, 1, 1>());
constexpr const TVariable kVar_pt_o_0D(BuiltInId::pt_o_0D,
                                       BuiltInName::_empty,
                                       SymbolType::BuiltIn,
                                       TExtension::UNDEFINED,
                                       StaticType::Get<EbtUInt, EbpUndefined, EvqOut, 1, 1>());
constexpr const TVariable kVar_pt_o_1B(BuiltInId::pt_o_1B,
                                       BuiltInName::_empty,
                                       SymbolType::BuiltIn,
                                       TExtension::UNDEFINED,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqOut, 2, 1>());
constexpr const TVariable kVar_pt_o_1C(BuiltInId::pt_o_1C,
                                       BuiltInName::_empty,
                                       SymbolType::BuiltIn,
                                       TExtension::UNDEFINED,
                                       StaticType::Get<EbtInt, EbpUndefined, EvqOut, 2, 1>());
constexpr const TVariable kVar_pt_o_1D(BuiltInId::pt_o_1D,
                                       BuiltInName::_empty,
                                       SymbolType::BuiltIn,
                                       TExtension::UNDEFINED,
                                       StaticType::Get<EbtUInt, EbpUndefined, EvqOut, 2, 1>());
constexpr const TVariable kVar_pt_o_2B(BuiltInId::pt_o_2B,
                                       BuiltInName::_empty,
                                       SymbolType::BuiltIn,
                                       TExtension::UNDEFINED,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqOut, 3, 1>());
constexpr const TVariable kVar_pt_o_2C(BuiltInId::pt_o_2C,
                                       BuiltInName::_empty,
                                       SymbolType::BuiltIn,
                                       TExtension::UNDEFINED,
                                       StaticType::Get<EbtInt, EbpUndefined, EvqOut, 3, 1>());
constexpr const TVariable kVar_pt_o_2D(BuiltInId::pt_o_2D,
                                       BuiltInName::_empty,
                                       SymbolType::BuiltIn,
                                       TExtension::UNDEFINED,
                                       StaticType::Get<EbtUInt, EbpUndefined, EvqOut, 3, 1>());
constexpr const TVariable kVar_pt_o_3B(BuiltInId::pt_o_3B,
                                       BuiltInName::_empty,
                                       SymbolType::BuiltIn,
                                       TExtension::UNDEFINED,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqOut, 4, 1>());
constexpr const TVariable kVar_pt_o_3C(BuiltInId::pt_o_3C,
                                       BuiltInName::_empty,
                                       SymbolType::BuiltIn,
                                       TExtension::UNDEFINED,
                                       StaticType::Get<EbtInt, EbpUndefined, EvqOut, 4, 1>());
constexpr const TVariable kVar_pt_o_3D(BuiltInId::pt_o_3D,
                                       BuiltInName::_empty,
                                       SymbolType::BuiltIn,
                                       TExtension::UNDEFINED,
                                       StaticType::Get<EbtUInt, EbpUndefined, EvqOut, 4, 1>());

const TVariable *gl_FragColor()
{
    return &kVar_gl_FragColor;
}

const TVariable *gl_FragCoord()
{
    return &kVar_gl_FragCoord;
}

const TVariable *gl_FragDepth()
{
    return &kVar_gl_FragDepth;
}

const TVariable *gl_FrontFacing()
{
    return &kVar_gl_FrontFacing;
}

const TVariable *gl_GlobalInvocationID()
{
    return &kVar_gl_GlobalInvocationID;
}

const TVariable *gl_InstanceID()
{
    return &kVar_gl_InstanceID;
}

const TVariable *gl_InvocationID()
{
    return &kVar_gl_InvocationID;
}

const TVariable *gl_LastFragColor()
{
    return &kVar_gl_LastFragColor;
}

const TVariable *gl_LastFragColorARM()
{
    return &kVar_gl_LastFragColorARM;
}

const TVariable *gl_Layer()
{
    return &kVar_gl_Layer;
}

const TVariable *gl_LayerGS()
{
    return &kVar_gl_LayerGS;
}

const TVariable *gl_LayerVS()
{
    return &kVar_gl_LayerVS;
}

const TVariable *gl_LocalInvocationID()
{
    return &kVar_gl_LocalInvocationID;
}

const TVariable *gl_LocalInvocationIndex()
{
    return &kVar_gl_LocalInvocationIndex;
}

const TVariable *gl_NumWorkGroups()
{
    return &kVar_gl_NumWorkGroups;
}

const TVariable *gl_PointCoord()
{
    return &kVar_gl_PointCoord;
}

const TVariable *gl_PointSize()
{
    return &kVar_gl_PointSize;
}

const TVariable *gl_Position()
{
    return &kVar_gl_Position;
}

const TVariable *gl_PrimitiveID()
{
    return &kVar_gl_PrimitiveID;
}

const TVariable *gl_PrimitiveIDGS()
{
    return &kVar_gl_PrimitiveIDGS;
}

const TVariable *gl_PrimitiveIDIn()
{
    return &kVar_gl_PrimitiveIDIn;
}

const TVariable *gl_SecondaryFragColorEXT()
{
    return &kVar_gl_SecondaryFragColorEXT;
}

const TVariable *gl_VertexID()
{
    return &kVar_gl_VertexID;
}

const TVariable *gl_ViewID_OVR()
{
    return &kVar_gl_ViewID_OVR;
}

const TVariable *gl_ViewID_OVRESSL1()
{
    return &kVar_gl_ViewID_OVRESSL1;
}

const TVariable *gl_ViewportIndex()
{
    return &kVar_gl_ViewportIndex;
}

const TVariable *gl_WorkGroupID()
{
    return &kVar_gl_WorkGroupID;
}

const TVariable *gl_WorkGroupSize()
{
    return &kVar_gl_WorkGroupSize;
}

};  // namespace BuiltInVariable

namespace BuiltInParameters
{

constexpr const TVariable **empty      = nullptr;
constexpr const TVariable *p0B0B0B[3]  = {&BuiltInVariable::kVar_pt0B, &BuiltInVariable::kVar_pt0B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0B0B0E[3]  = {&BuiltInVariable::kVar_pt0B, &BuiltInVariable::kVar_pt0B,
                                         &BuiltInVariable::kVar_pt0E};
constexpr const TVariable *p0B0B1B[3]  = {&BuiltInVariable::kVar_pt0B, &BuiltInVariable::kVar_pt0B,
                                         &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0B0B2B[3]  = {&BuiltInVariable::kVar_pt0B, &BuiltInVariable::kVar_pt0B,
                                         &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0B0B3B[3]  = {&BuiltInVariable::kVar_pt0B, &BuiltInVariable::kVar_pt0B,
                                         &BuiltInVariable::kVar_pt3B};
constexpr const TVariable *p0B0B[2]    = {&BuiltInVariable::kVar_pt0B, &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0B0C[2]    = {&BuiltInVariable::kVar_pt0B, &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0B1B[2]    = {&BuiltInVariable::kVar_pt0B, &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0B2B[2]    = {&BuiltInVariable::kVar_pt0B, &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0B3B[2]    = {&BuiltInVariable::kVar_pt0B, &BuiltInVariable::kVar_pt3B};
constexpr const TVariable *p0B[1]      = {&BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0B_o_0B[2] = {&BuiltInVariable::kVar_pt0B,
                                          &BuiltInVariable::kVar_pt_o_0B};
constexpr const TVariable *p0B_o_0C[2] = {&BuiltInVariable::kVar_pt0B,
                                          &BuiltInVariable::kVar_pt_o_0C};
constexpr const TVariable *p0C0C0C0C[4] = {&BuiltInVariable::kVar_pt0C, &BuiltInVariable::kVar_pt0C,
                                           &BuiltInVariable::kVar_pt0C,
                                           &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0C0C0C[3]   = {&BuiltInVariable::kVar_pt0C, &BuiltInVariable::kVar_pt0C,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0C0C[2] = {&BuiltInVariable::kVar_pt0C, &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0C0C_o_0C_o_0C[4] = {
    &BuiltInVariable::kVar_pt0C, &BuiltInVariable::kVar_pt0C, &BuiltInVariable::kVar_pt_o_0C,
    &BuiltInVariable::kVar_pt_o_0C};
constexpr const TVariable *p0C[1]       = {&BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0D0C0C[3]   = {&BuiltInVariable::kVar_pt0D, &BuiltInVariable::kVar_pt0C,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0D0D0C0C[4] = {&BuiltInVariable::kVar_pt0D, &BuiltInVariable::kVar_pt0D,
                                           &BuiltInVariable::kVar_pt0C,
                                           &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0D0D0D[3]   = {&BuiltInVariable::kVar_pt0D, &BuiltInVariable::kVar_pt0D,
                                         &BuiltInVariable::kVar_pt0D};
constexpr const TVariable *p0D0D[2] = {&BuiltInVariable::kVar_pt0D, &BuiltInVariable::kVar_pt0D};
constexpr const TVariable *p0D0D_o_0D[3] = {
    &BuiltInVariable::kVar_pt0D, &BuiltInVariable::kVar_pt0D, &BuiltInVariable::kVar_pt_o_0D};
constexpr const TVariable *p0D0D_o_0D_o_0D[4] = {
    &BuiltInVariable::kVar_pt0D, &BuiltInVariable::kVar_pt0D, &BuiltInVariable::kVar_pt_o_0D,
    &BuiltInVariable::kVar_pt_o_0D};
constexpr const TVariable *p0D[1]   = {&BuiltInVariable::kVar_pt0D};
constexpr const TVariable *p0F[1]   = {&BuiltInVariable::kVar_pt0F};
constexpr const TVariable *p0H0C[2] = {&BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0H1B0B1C[4] = {&BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt0B,
                                           &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0H1B0B[3]   = {&BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt1B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0H1B0C[3]   = {&BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt1B,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0H1B1B1B1C[5] = {
    &BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt1B,
    &BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0H1B1B1B[4] = {&BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0H1B1C0B[4] = {&BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0H1B1C0C[4] = {&BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0H1B1C[3]   = {&BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt1B,
                                         &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0H1B[2] = {&BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0H1C0C1C[4] = {&BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0C,
                                           &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0H1C0C[3]   = {&BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt1C,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0H2B0B1C[4] = {&BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt0B,
                                           &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0H2B0B[3]   = {&BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0H2B1B1B1C[5] = {
    &BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt1B,
    &BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0H2B1B1B[4] = {&BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0H2B1C0B[4] = {&BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0H2B1C[3]   = {&BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0H2B[2] = {&BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0H3B0B1C[4] = {&BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt3B,
                                           &BuiltInVariable::kVar_pt0B,
                                           &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0H3B0B[3]   = {&BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt3B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0H3B1B1B1C[5] = {
    &BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt3B, &BuiltInVariable::kVar_pt1B,
    &BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0H3B1B1B[4] = {&BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt3B,
                                           &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0H3B1C0B[4] = {&BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt3B,
                                           &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0H3B1C[3]   = {&BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt3B,
                                         &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0H3B[2] = {&BuiltInVariable::kVar_pt0H, &BuiltInVariable::kVar_pt3B};
constexpr const TVariable *p0I0C[2] = {&BuiltInVariable::kVar_pt0I, &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0I2B0B2C[4] = {&BuiltInVariable::kVar_pt0I, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt0B,
                                           &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0I2B0B[3]   = {&BuiltInVariable::kVar_pt0I, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0I2B2B2B2C[5] = {
    &BuiltInVariable::kVar_pt0I, &BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt2B,
    &BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0I2B2B2B[4] = {&BuiltInVariable::kVar_pt0I, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0I2B2C0B[4] = {&BuiltInVariable::kVar_pt0I, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt2C,
                                           &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0I2B2C[3]   = {&BuiltInVariable::kVar_pt0I, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0I2B[2] = {&BuiltInVariable::kVar_pt0I, &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0I2C0C2C[4] = {&BuiltInVariable::kVar_pt0I, &BuiltInVariable::kVar_pt2C,
                                           &BuiltInVariable::kVar_pt0C,
                                           &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0I2C0C[3]   = {&BuiltInVariable::kVar_pt0I, &BuiltInVariable::kVar_pt2C,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0I3B0B2C[4] = {&BuiltInVariable::kVar_pt0I, &BuiltInVariable::kVar_pt3B,
                                           &BuiltInVariable::kVar_pt0B,
                                           &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0I3B0B[3]   = {&BuiltInVariable::kVar_pt0I, &BuiltInVariable::kVar_pt3B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0I3B2B2B2C[5] = {
    &BuiltInVariable::kVar_pt0I, &BuiltInVariable::kVar_pt3B, &BuiltInVariable::kVar_pt2B,
    &BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0I3B2B2B[4] = {&BuiltInVariable::kVar_pt0I, &BuiltInVariable::kVar_pt3B,
                                           &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0I3B2C0B[4] = {&BuiltInVariable::kVar_pt0I, &BuiltInVariable::kVar_pt3B,
                                           &BuiltInVariable::kVar_pt2C,
                                           &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0I3B2C[3]   = {&BuiltInVariable::kVar_pt0I, &BuiltInVariable::kVar_pt3B,
                                         &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0I3B[2]   = {&BuiltInVariable::kVar_pt0I, &BuiltInVariable::kVar_pt3B};
constexpr const TVariable *p0J0C[2]   = {&BuiltInVariable::kVar_pt0J, &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0J2B0B[3] = {&BuiltInVariable::kVar_pt0J, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0J2B0C[3] = {&BuiltInVariable::kVar_pt0J, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0J2B2B2B[4] = {&BuiltInVariable::kVar_pt0J, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0J2B[2] = {&BuiltInVariable::kVar_pt0J, &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0K0C[2] = {&BuiltInVariable::kVar_pt0K, &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0K2B0B1C[4] = {&BuiltInVariable::kVar_pt0K, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt0B,
                                           &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0K2B0B[3]   = {&BuiltInVariable::kVar_pt0K, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0K2B0C[3]   = {&BuiltInVariable::kVar_pt0K, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0K2B1B1B1C[5] = {
    &BuiltInVariable::kVar_pt0K, &BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt1B,
    &BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0K2B1B1B[4] = {&BuiltInVariable::kVar_pt0K, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0K2B1C0B[4] = {&BuiltInVariable::kVar_pt0K, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0K2B1C0C[4] = {&BuiltInVariable::kVar_pt0K, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0K2B1C[3]   = {&BuiltInVariable::kVar_pt0K, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0K2B[2] = {&BuiltInVariable::kVar_pt0K, &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0K2C0C1C[4] = {&BuiltInVariable::kVar_pt0K, &BuiltInVariable::kVar_pt2C,
                                           &BuiltInVariable::kVar_pt0C,
                                           &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0K2C0C[3]   = {&BuiltInVariable::kVar_pt0K, &BuiltInVariable::kVar_pt2C,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0L0C[2]   = {&BuiltInVariable::kVar_pt0L, &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0L1B0B[3] = {&BuiltInVariable::kVar_pt0L, &BuiltInVariable::kVar_pt1B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0L1B[2]   = {&BuiltInVariable::kVar_pt0L, &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0L1C0C[3] = {&BuiltInVariable::kVar_pt0L, &BuiltInVariable::kVar_pt1C,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0L2B0B[3] = {&BuiltInVariable::kVar_pt0L, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0L2B[2]   = {&BuiltInVariable::kVar_pt0L, &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0L3B0B[3] = {&BuiltInVariable::kVar_pt0L, &BuiltInVariable::kVar_pt3B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0L3B[2]   = {&BuiltInVariable::kVar_pt0L, &BuiltInVariable::kVar_pt3B};
constexpr const TVariable *p0M0C[2]   = {&BuiltInVariable::kVar_pt0M, &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0M1B0B[3] = {&BuiltInVariable::kVar_pt0M, &BuiltInVariable::kVar_pt1B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0M1B[2]   = {&BuiltInVariable::kVar_pt0M, &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0M1C0C[3] = {&BuiltInVariable::kVar_pt0M, &BuiltInVariable::kVar_pt1C,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0M2B0B[3] = {&BuiltInVariable::kVar_pt0M, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0M2B[2]   = {&BuiltInVariable::kVar_pt0M, &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0M3B0B[3] = {&BuiltInVariable::kVar_pt0M, &BuiltInVariable::kVar_pt3B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0M3B[2]   = {&BuiltInVariable::kVar_pt0M, &BuiltInVariable::kVar_pt3B};
constexpr const TVariable *p0N1B[2]   = {&BuiltInVariable::kVar_pt0N, &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0N2B[2]   = {&BuiltInVariable::kVar_pt0N, &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0N3B[2]   = {&BuiltInVariable::kVar_pt0N, &BuiltInVariable::kVar_pt3B};
constexpr const TVariable *p0O1C0C[3] = {&BuiltInVariable::kVar_pt0O, &BuiltInVariable::kVar_pt1C,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0O[1]     = {&BuiltInVariable::kVar_pt0O};
constexpr const TVariable *p0P0C[2]   = {&BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0P1B0B1C[4] = {&BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt0B,
                                           &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0P1B0B[3]   = {&BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt1B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0P1B0C[3]   = {&BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt1B,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0P1B1B1B1C[5] = {
    &BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt1B,
    &BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0P1B1B1B[4] = {&BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0P1B1C0B[4] = {&BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0P1B1C0C[4] = {&BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0P1B1C[3]   = {&BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt1B,
                                         &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0P1B[2] = {&BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0P1C0C1C[4] = {&BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0C,
                                           &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0P1C0C[3]   = {&BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt1C,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0P2B0B1C[4] = {&BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt0B,
                                           &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0P2B0B[3]   = {&BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0P2B1B1B1C[5] = {
    &BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt1B,
    &BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0P2B1B1B[4] = {&BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0P2B1C0B[4] = {&BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0P2B1C[3]   = {&BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0P2B[2] = {&BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0P3B0B1C[4] = {&BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt3B,
                                           &BuiltInVariable::kVar_pt0B,
                                           &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0P3B0B[3]   = {&BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt3B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0P3B1B1B1C[5] = {
    &BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt3B, &BuiltInVariable::kVar_pt1B,
    &BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0P3B1B1B[4] = {&BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt3B,
                                           &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0P3B1C0B[4] = {&BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt3B,
                                           &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0P3B1C[3]   = {&BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt3B,
                                         &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0P3B[2] = {&BuiltInVariable::kVar_pt0P, &BuiltInVariable::kVar_pt3B};
constexpr const TVariable *p0Q0C[2] = {&BuiltInVariable::kVar_pt0Q, &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0Q2B0B2C[4] = {&BuiltInVariable::kVar_pt0Q, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt0B,
                                           &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0Q2B0B[3]   = {&BuiltInVariable::kVar_pt0Q, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0Q2B2B2B2C[5] = {
    &BuiltInVariable::kVar_pt0Q, &BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt2B,
    &BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0Q2B2B2B[4] = {&BuiltInVariable::kVar_pt0Q, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0Q2B2C0B[4] = {&BuiltInVariable::kVar_pt0Q, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt2C,
                                           &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0Q2B2C[3]   = {&BuiltInVariable::kVar_pt0Q, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0Q2B[2] = {&BuiltInVariable::kVar_pt0Q, &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0Q2C0C2C[4] = {&BuiltInVariable::kVar_pt0Q, &BuiltInVariable::kVar_pt2C,
                                           &BuiltInVariable::kVar_pt0C,
                                           &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0Q2C0C[3]   = {&BuiltInVariable::kVar_pt0Q, &BuiltInVariable::kVar_pt2C,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0Q3B0B2C[4] = {&BuiltInVariable::kVar_pt0Q, &BuiltInVariable::kVar_pt3B,
                                           &BuiltInVariable::kVar_pt0B,
                                           &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0Q3B0B[3]   = {&BuiltInVariable::kVar_pt0Q, &BuiltInVariable::kVar_pt3B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0Q3B2B2B2C[5] = {
    &BuiltInVariable::kVar_pt0Q, &BuiltInVariable::kVar_pt3B, &BuiltInVariable::kVar_pt2B,
    &BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0Q3B2B2B[4] = {&BuiltInVariable::kVar_pt0Q, &BuiltInVariable::kVar_pt3B,
                                           &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0Q3B2C0B[4] = {&BuiltInVariable::kVar_pt0Q, &BuiltInVariable::kVar_pt3B,
                                           &BuiltInVariable::kVar_pt2C,
                                           &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0Q3B2C[3]   = {&BuiltInVariable::kVar_pt0Q, &BuiltInVariable::kVar_pt3B,
                                         &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0Q3B[2]   = {&BuiltInVariable::kVar_pt0Q, &BuiltInVariable::kVar_pt3B};
constexpr const TVariable *p0R0C[2]   = {&BuiltInVariable::kVar_pt0R, &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0R2B0B[3] = {&BuiltInVariable::kVar_pt0R, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0R2B0C[3] = {&BuiltInVariable::kVar_pt0R, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0R2B2B2B[4] = {&BuiltInVariable::kVar_pt0R, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0R2B[2] = {&BuiltInVariable::kVar_pt0R, &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0S0C[2] = {&BuiltInVariable::kVar_pt0S, &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0S2B0B1C[4] = {&BuiltInVariable::kVar_pt0S, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt0B,
                                           &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0S2B0B[3]   = {&BuiltInVariable::kVar_pt0S, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0S2B0C[3]   = {&BuiltInVariable::kVar_pt0S, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0S2B1B1B1C[5] = {
    &BuiltInVariable::kVar_pt0S, &BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt1B,
    &BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0S2B1B1B[4] = {&BuiltInVariable::kVar_pt0S, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0S2B1C0B[4] = {&BuiltInVariable::kVar_pt0S, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0S2B1C0C[4] = {&BuiltInVariable::kVar_pt0S, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0S2B1C[3]   = {&BuiltInVariable::kVar_pt0S, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0S2B[2] = {&BuiltInVariable::kVar_pt0S, &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0S2C0C1C[4] = {&BuiltInVariable::kVar_pt0S, &BuiltInVariable::kVar_pt2C,
                                           &BuiltInVariable::kVar_pt0C,
                                           &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0S2C0C[3]   = {&BuiltInVariable::kVar_pt0S, &BuiltInVariable::kVar_pt2C,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0T1C0C[3]   = {&BuiltInVariable::kVar_pt0T, &BuiltInVariable::kVar_pt1C,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0T[1]       = {&BuiltInVariable::kVar_pt0T};
constexpr const TVariable *p0U0C[2] = {&BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0U1B0B1C[4] = {&BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt0B,
                                           &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0U1B0B[3]   = {&BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt1B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0U1B0C[3]   = {&BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt1B,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0U1B1B1B1C[5] = {
    &BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt1B,
    &BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0U1B1B1B[4] = {&BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0U1B1C0B[4] = {&BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0U1B1C0C[4] = {&BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0U1B1C[3]   = {&BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt1B,
                                         &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0U1B[2] = {&BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0U1C0C1C[4] = {&BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0C,
                                           &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0U1C0C[3]   = {&BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt1C,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0U2B0B1C[4] = {&BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt0B,
                                           &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0U2B0B[3]   = {&BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0U2B1B1B1C[5] = {
    &BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt1B,
    &BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0U2B1B1B[4] = {&BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0U2B1C0B[4] = {&BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0U2B1C[3]   = {&BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0U2B[2] = {&BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0U3B0B1C[4] = {&BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt3B,
                                           &BuiltInVariable::kVar_pt0B,
                                           &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0U3B0B[3]   = {&BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt3B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0U3B1B1B1C[5] = {
    &BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt3B, &BuiltInVariable::kVar_pt1B,
    &BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0U3B1B1B[4] = {&BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt3B,
                                           &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0U3B1C0B[4] = {&BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt3B,
                                           &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0U3B1C[3]   = {&BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt3B,
                                         &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0U3B[2] = {&BuiltInVariable::kVar_pt0U, &BuiltInVariable::kVar_pt3B};
constexpr const TVariable *p0V0C[2] = {&BuiltInVariable::kVar_pt0V, &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0V2B0B2C[4] = {&BuiltInVariable::kVar_pt0V, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt0B,
                                           &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0V2B0B[3]   = {&BuiltInVariable::kVar_pt0V, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0V2B2B2B2C[5] = {
    &BuiltInVariable::kVar_pt0V, &BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt2B,
    &BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0V2B2B2B[4] = {&BuiltInVariable::kVar_pt0V, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0V2B2C0B[4] = {&BuiltInVariable::kVar_pt0V, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt2C,
                                           &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0V2B2C[3]   = {&BuiltInVariable::kVar_pt0V, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0V2B[2] = {&BuiltInVariable::kVar_pt0V, &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0V2C0C2C[4] = {&BuiltInVariable::kVar_pt0V, &BuiltInVariable::kVar_pt2C,
                                           &BuiltInVariable::kVar_pt0C,
                                           &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0V2C0C[3]   = {&BuiltInVariable::kVar_pt0V, &BuiltInVariable::kVar_pt2C,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0V3B0B2C[4] = {&BuiltInVariable::kVar_pt0V, &BuiltInVariable::kVar_pt3B,
                                           &BuiltInVariable::kVar_pt0B,
                                           &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0V3B0B[3]   = {&BuiltInVariable::kVar_pt0V, &BuiltInVariable::kVar_pt3B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0V3B2B2B2C[5] = {
    &BuiltInVariable::kVar_pt0V, &BuiltInVariable::kVar_pt3B, &BuiltInVariable::kVar_pt2B,
    &BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0V3B2B2B[4] = {&BuiltInVariable::kVar_pt0V, &BuiltInVariable::kVar_pt3B,
                                           &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0V3B2C0B[4] = {&BuiltInVariable::kVar_pt0V, &BuiltInVariable::kVar_pt3B,
                                           &BuiltInVariable::kVar_pt2C,
                                           &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0V3B2C[3]   = {&BuiltInVariable::kVar_pt0V, &BuiltInVariable::kVar_pt3B,
                                         &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0V3B[2]   = {&BuiltInVariable::kVar_pt0V, &BuiltInVariable::kVar_pt3B};
constexpr const TVariable *p0W0C[2]   = {&BuiltInVariable::kVar_pt0W, &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0W2B0B[3] = {&BuiltInVariable::kVar_pt0W, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0W2B0C[3] = {&BuiltInVariable::kVar_pt0W, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0W2B2B2B[4] = {&BuiltInVariable::kVar_pt0W, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0W2B[2] = {&BuiltInVariable::kVar_pt0W, &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0X0C[2] = {&BuiltInVariable::kVar_pt0X, &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0X2B0B1C[4] = {&BuiltInVariable::kVar_pt0X, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt0B,
                                           &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0X2B0B[3]   = {&BuiltInVariable::kVar_pt0X, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0X2B0C[3]   = {&BuiltInVariable::kVar_pt0X, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0X2B1B1B1C[5] = {
    &BuiltInVariable::kVar_pt0X, &BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt1B,
    &BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0X2B1B1B[4] = {&BuiltInVariable::kVar_pt0X, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0X2B1C0B[4] = {&BuiltInVariable::kVar_pt0X, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0X2B1C0C[4] = {&BuiltInVariable::kVar_pt0X, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0X2B1C[3]   = {&BuiltInVariable::kVar_pt0X, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0X2B[2] = {&BuiltInVariable::kVar_pt0X, &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0X2C0C1C[4] = {&BuiltInVariable::kVar_pt0X, &BuiltInVariable::kVar_pt2C,
                                           &BuiltInVariable::kVar_pt0C,
                                           &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0X2C0C[3]   = {&BuiltInVariable::kVar_pt0X, &BuiltInVariable::kVar_pt2C,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0Y1C0C[3]   = {&BuiltInVariable::kVar_pt0Y, &BuiltInVariable::kVar_pt1C,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0Y[1]       = {&BuiltInVariable::kVar_pt0Y};
constexpr const TVariable *p0Z0C[2] = {&BuiltInVariable::kVar_pt0Z, &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0Z1B0B1C[4] = {&BuiltInVariable::kVar_pt0Z, &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt0B,
                                           &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0Z1B0B[3]   = {&BuiltInVariable::kVar_pt0Z, &BuiltInVariable::kVar_pt1B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0Z1B[2] = {&BuiltInVariable::kVar_pt0Z, &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0Z2B0B1C[4] = {&BuiltInVariable::kVar_pt0Z, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt0B,
                                           &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0Z2B0B[3]   = {&BuiltInVariable::kVar_pt0Z, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0Z2B1B1B1C[5] = {
    &BuiltInVariable::kVar_pt0Z, &BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt1B,
    &BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0Z2B1B1B[4] = {&BuiltInVariable::kVar_pt0Z, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0Z2B1C0B[4] = {&BuiltInVariable::kVar_pt0Z, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0Z2B1C[3]   = {&BuiltInVariable::kVar_pt0Z, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0Z2B[2] = {&BuiltInVariable::kVar_pt0Z, &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0Z3B0B1C[4] = {&BuiltInVariable::kVar_pt0Z, &BuiltInVariable::kVar_pt3B,
                                           &BuiltInVariable::kVar_pt0B,
                                           &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0Z3B0B[3]   = {&BuiltInVariable::kVar_pt0Z, &BuiltInVariable::kVar_pt3B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0Z3B1B1B1C[5] = {
    &BuiltInVariable::kVar_pt0Z, &BuiltInVariable::kVar_pt3B, &BuiltInVariable::kVar_pt1B,
    &BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0Z3B1B1B[4] = {&BuiltInVariable::kVar_pt0Z, &BuiltInVariable::kVar_pt3B,
                                           &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0Z3B1C0B[4] = {&BuiltInVariable::kVar_pt0Z, &BuiltInVariable::kVar_pt3B,
                                           &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0Z3B1C[3]   = {&BuiltInVariable::kVar_pt0Z, &BuiltInVariable::kVar_pt3B,
                                         &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0Z3B[2]   = {&BuiltInVariable::kVar_pt0Z, &BuiltInVariable::kVar_pt3B};
constexpr const TVariable *p0a0C[2]   = {&BuiltInVariable::kVar_pt0a, &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0a2B0B[3] = {&BuiltInVariable::kVar_pt0a, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0a2B[2]   = {&BuiltInVariable::kVar_pt0a, &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0a3B0B[3] = {&BuiltInVariable::kVar_pt0a, &BuiltInVariable::kVar_pt3B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0a3B2B2B[4] = {&BuiltInVariable::kVar_pt0a, &BuiltInVariable::kVar_pt3B,
                                           &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0a3B[2] = {&BuiltInVariable::kVar_pt0a, &BuiltInVariable::kVar_pt3B};
constexpr const TVariable *p0b0C[2] = {&BuiltInVariable::kVar_pt0b, &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p0b2B0B1C[4] = {&BuiltInVariable::kVar_pt0b, &BuiltInVariable::kVar_pt2B,
                                           &BuiltInVariable::kVar_pt0B,
                                           &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0b2B0B[3]   = {&BuiltInVariable::kVar_pt0b, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p0b2B[2] = {&BuiltInVariable::kVar_pt0b, &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p0b3B1B1B1C[5] = {
    &BuiltInVariable::kVar_pt0b, &BuiltInVariable::kVar_pt3B, &BuiltInVariable::kVar_pt1B,
    &BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0b3B1B1B[4] = {&BuiltInVariable::kVar_pt0b, &BuiltInVariable::kVar_pt3B,
                                           &BuiltInVariable::kVar_pt1B,
                                           &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p0b3B[2]    = {&BuiltInVariable::kVar_pt0b, &BuiltInVariable::kVar_pt3B};
constexpr const TVariable *p0c1C3B[3]  = {&BuiltInVariable::kVar_pt0c, &BuiltInVariable::kVar_pt1C,
                                         &BuiltInVariable::kVar_pt3B};
constexpr const TVariable *p0c1C[2]    = {&BuiltInVariable::kVar_pt0c, &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0c[1]      = {&BuiltInVariable::kVar_pt0c};
constexpr const TVariable *p0d1C3C[3]  = {&BuiltInVariable::kVar_pt0d, &BuiltInVariable::kVar_pt1C,
                                         &BuiltInVariable::kVar_pt3C};
constexpr const TVariable *p0d1C[2]    = {&BuiltInVariable::kVar_pt0d, &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0d[1]      = {&BuiltInVariable::kVar_pt0d};
constexpr const TVariable *p0e1C3D[3]  = {&BuiltInVariable::kVar_pt0e, &BuiltInVariable::kVar_pt1C,
                                         &BuiltInVariable::kVar_pt3D};
constexpr const TVariable *p0e1C[2]    = {&BuiltInVariable::kVar_pt0e, &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p0e[1]      = {&BuiltInVariable::kVar_pt0e};
constexpr const TVariable *p0f2C3B[3]  = {&BuiltInVariable::kVar_pt0f, &BuiltInVariable::kVar_pt2C,
                                         &BuiltInVariable::kVar_pt3B};
constexpr const TVariable *p0f2C[2]    = {&BuiltInVariable::kVar_pt0f, &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0f[1]      = {&BuiltInVariable::kVar_pt0f};
constexpr const TVariable *p0g2C3C[3]  = {&BuiltInVariable::kVar_pt0g, &BuiltInVariable::kVar_pt2C,
                                         &BuiltInVariable::kVar_pt3C};
constexpr const TVariable *p0g2C[2]    = {&BuiltInVariable::kVar_pt0g, &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0g[1]      = {&BuiltInVariable::kVar_pt0g};
constexpr const TVariable *p0h2C3D[3]  = {&BuiltInVariable::kVar_pt0h, &BuiltInVariable::kVar_pt2C,
                                         &BuiltInVariable::kVar_pt3D};
constexpr const TVariable *p0h2C[2]    = {&BuiltInVariable::kVar_pt0h, &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0h[1]      = {&BuiltInVariable::kVar_pt0h};
constexpr const TVariable *p0i2C3B[3]  = {&BuiltInVariable::kVar_pt0i, &BuiltInVariable::kVar_pt2C,
                                         &BuiltInVariable::kVar_pt3B};
constexpr const TVariable *p0i2C[2]    = {&BuiltInVariable::kVar_pt0i, &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0i[1]      = {&BuiltInVariable::kVar_pt0i};
constexpr const TVariable *p0j2C3C[3]  = {&BuiltInVariable::kVar_pt0j, &BuiltInVariable::kVar_pt2C,
                                         &BuiltInVariable::kVar_pt3C};
constexpr const TVariable *p0j2C[2]    = {&BuiltInVariable::kVar_pt0j, &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0j[1]      = {&BuiltInVariable::kVar_pt0j};
constexpr const TVariable *p0k2C3D[3]  = {&BuiltInVariable::kVar_pt0k, &BuiltInVariable::kVar_pt2C,
                                         &BuiltInVariable::kVar_pt3D};
constexpr const TVariable *p0k2C[2]    = {&BuiltInVariable::kVar_pt0k, &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0k[1]      = {&BuiltInVariable::kVar_pt0k};
constexpr const TVariable *p0l2C3B[3]  = {&BuiltInVariable::kVar_pt0l, &BuiltInVariable::kVar_pt2C,
                                         &BuiltInVariable::kVar_pt3B};
constexpr const TVariable *p0l2C[2]    = {&BuiltInVariable::kVar_pt0l, &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0l[1]      = {&BuiltInVariable::kVar_pt0l};
constexpr const TVariable *p0m2C3C[3]  = {&BuiltInVariable::kVar_pt0m, &BuiltInVariable::kVar_pt2C,
                                         &BuiltInVariable::kVar_pt3C};
constexpr const TVariable *p0m2C[2]    = {&BuiltInVariable::kVar_pt0m, &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0m[1]      = {&BuiltInVariable::kVar_pt0m};
constexpr const TVariable *p0n2C3D[3]  = {&BuiltInVariable::kVar_pt0n, &BuiltInVariable::kVar_pt2C,
                                         &BuiltInVariable::kVar_pt3D};
constexpr const TVariable *p0n2C[2]    = {&BuiltInVariable::kVar_pt0n, &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p0n[1]      = {&BuiltInVariable::kVar_pt0n};
constexpr const TVariable *p1B0B0B[3]  = {&BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt0B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p1B0B[2]    = {&BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p1B1B0B[3]  = {&BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt1B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p1B1B1B[3]  = {&BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt1B,
                                         &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p1B1B1E[3]  = {&BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt1B,
                                         &BuiltInVariable::kVar_pt1E};
constexpr const TVariable *p1B1B[2]    = {&BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p1B1C[2]    = {&BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p1B2B[2]    = {&BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p1B3B[2]    = {&BuiltInVariable::kVar_pt1B, &BuiltInVariable::kVar_pt3B};
constexpr const TVariable *p1B[1]      = {&BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p1B_o_1B[2] = {&BuiltInVariable::kVar_pt1B,
                                          &BuiltInVariable::kVar_pt_o_1B};
constexpr const TVariable *p1B_o_1C[2] = {&BuiltInVariable::kVar_pt1B,
                                          &BuiltInVariable::kVar_pt_o_1C};
constexpr const TVariable *p1C0C0C[3]  = {&BuiltInVariable::kVar_pt1C, &BuiltInVariable::kVar_pt0C,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p1C0C[2]    = {&BuiltInVariable::kVar_pt1C, &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p1C1C0C0C[4] = {&BuiltInVariable::kVar_pt1C, &BuiltInVariable::kVar_pt1C,
                                           &BuiltInVariable::kVar_pt0C,
                                           &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p1C1C1C[3]   = {&BuiltInVariable::kVar_pt1C, &BuiltInVariable::kVar_pt1C,
                                         &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p1C1C[2] = {&BuiltInVariable::kVar_pt1C, &BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p1C1C_o_1C_o_1C[4] = {
    &BuiltInVariable::kVar_pt1C, &BuiltInVariable::kVar_pt1C, &BuiltInVariable::kVar_pt_o_1C,
    &BuiltInVariable::kVar_pt_o_1C};
constexpr const TVariable *p1C[1]     = {&BuiltInVariable::kVar_pt1C};
constexpr const TVariable *p1D0C0C[3] = {&BuiltInVariable::kVar_pt1D, &BuiltInVariable::kVar_pt0C,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p1D0D0D[3] = {&BuiltInVariable::kVar_pt1D, &BuiltInVariable::kVar_pt0D,
                                         &BuiltInVariable::kVar_pt0D};
constexpr const TVariable *p1D0D[2]   = {&BuiltInVariable::kVar_pt1D, &BuiltInVariable::kVar_pt0D};
constexpr const TVariable *p1D1D0C0C[4] = {&BuiltInVariable::kVar_pt1D, &BuiltInVariable::kVar_pt1D,
                                           &BuiltInVariable::kVar_pt0C,
                                           &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p1D1D1D[3]   = {&BuiltInVariable::kVar_pt1D, &BuiltInVariable::kVar_pt1D,
                                         &BuiltInVariable::kVar_pt1D};
constexpr const TVariable *p1D1D[2] = {&BuiltInVariable::kVar_pt1D, &BuiltInVariable::kVar_pt1D};
constexpr const TVariable *p1D1D_o_1D[3] = {
    &BuiltInVariable::kVar_pt1D, &BuiltInVariable::kVar_pt1D, &BuiltInVariable::kVar_pt_o_1D};
constexpr const TVariable *p1D1D_o_1D_o_1D[4] = {
    &BuiltInVariable::kVar_pt1D, &BuiltInVariable::kVar_pt1D, &BuiltInVariable::kVar_pt_o_1D,
    &BuiltInVariable::kVar_pt_o_1D};
constexpr const TVariable *p1D[1]      = {&BuiltInVariable::kVar_pt1D};
constexpr const TVariable *p1E1E[2]    = {&BuiltInVariable::kVar_pt1E, &BuiltInVariable::kVar_pt1E};
constexpr const TVariable *p1E[1]      = {&BuiltInVariable::kVar_pt1E};
constexpr const TVariable *p2B0B0B[3]  = {&BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt0B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p2B0B[2]    = {&BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p2B0G[2]    = {&BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt0G};
constexpr const TVariable *p2B1B[2]    = {&BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p2B2B0B[3]  = {&BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p2B2B2B[3]  = {&BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p2B2B2E[3]  = {&BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt2B,
                                         &BuiltInVariable::kVar_pt2E};
constexpr const TVariable *p2B2B[2]    = {&BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p2B2C[2]    = {&BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p2B3B[2]    = {&BuiltInVariable::kVar_pt2B, &BuiltInVariable::kVar_pt3B};
constexpr const TVariable *p2B[1]      = {&BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p2B_o_2B[2] = {&BuiltInVariable::kVar_pt2B,
                                          &BuiltInVariable::kVar_pt_o_2B};
constexpr const TVariable *p2B_o_2C[2] = {&BuiltInVariable::kVar_pt2B,
                                          &BuiltInVariable::kVar_pt_o_2C};
constexpr const TVariable *p2C0C0C[3]  = {&BuiltInVariable::kVar_pt2C, &BuiltInVariable::kVar_pt0C,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p2C0C[2]    = {&BuiltInVariable::kVar_pt2C, &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p2C2C0C0C[4] = {&BuiltInVariable::kVar_pt2C, &BuiltInVariable::kVar_pt2C,
                                           &BuiltInVariable::kVar_pt0C,
                                           &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p2C2C2C[3]   = {&BuiltInVariable::kVar_pt2C, &BuiltInVariable::kVar_pt2C,
                                         &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p2C2C[2] = {&BuiltInVariable::kVar_pt2C, &BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p2C2C_o_2C_o_2C[4] = {
    &BuiltInVariable::kVar_pt2C, &BuiltInVariable::kVar_pt2C, &BuiltInVariable::kVar_pt_o_2C,
    &BuiltInVariable::kVar_pt_o_2C};
constexpr const TVariable *p2C[1]     = {&BuiltInVariable::kVar_pt2C};
constexpr const TVariable *p2D0C0C[3] = {&BuiltInVariable::kVar_pt2D, &BuiltInVariable::kVar_pt0C,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p2D0D0D[3] = {&BuiltInVariable::kVar_pt2D, &BuiltInVariable::kVar_pt0D,
                                         &BuiltInVariable::kVar_pt0D};
constexpr const TVariable *p2D0D[2]   = {&BuiltInVariable::kVar_pt2D, &BuiltInVariable::kVar_pt0D};
constexpr const TVariable *p2D2D0C0C[4] = {&BuiltInVariable::kVar_pt2D, &BuiltInVariable::kVar_pt2D,
                                           &BuiltInVariable::kVar_pt0C,
                                           &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p2D2D2D[3]   = {&BuiltInVariable::kVar_pt2D, &BuiltInVariable::kVar_pt2D,
                                         &BuiltInVariable::kVar_pt2D};
constexpr const TVariable *p2D2D[2] = {&BuiltInVariable::kVar_pt2D, &BuiltInVariable::kVar_pt2D};
constexpr const TVariable *p2D2D_o_2D[3] = {
    &BuiltInVariable::kVar_pt2D, &BuiltInVariable::kVar_pt2D, &BuiltInVariable::kVar_pt_o_2D};
constexpr const TVariable *p2D2D_o_2D_o_2D[4] = {
    &BuiltInVariable::kVar_pt2D, &BuiltInVariable::kVar_pt2D, &BuiltInVariable::kVar_pt_o_2D,
    &BuiltInVariable::kVar_pt_o_2D};
constexpr const TVariable *p2D[1]      = {&BuiltInVariable::kVar_pt2D};
constexpr const TVariable *p2E2E[2]    = {&BuiltInVariable::kVar_pt2E, &BuiltInVariable::kVar_pt2E};
constexpr const TVariable *p2E[1]      = {&BuiltInVariable::kVar_pt2E};
constexpr const TVariable *p3B0B0B[3]  = {&BuiltInVariable::kVar_pt3B, &BuiltInVariable::kVar_pt0B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p3B0B[2]    = {&BuiltInVariable::kVar_pt3B, &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p3B1B[2]    = {&BuiltInVariable::kVar_pt3B, &BuiltInVariable::kVar_pt1B};
constexpr const TVariable *p3B2B[2]    = {&BuiltInVariable::kVar_pt3B, &BuiltInVariable::kVar_pt2B};
constexpr const TVariable *p3B3B0B[3]  = {&BuiltInVariable::kVar_pt3B, &BuiltInVariable::kVar_pt3B,
                                         &BuiltInVariable::kVar_pt0B};
constexpr const TVariable *p3B3B3B[3]  = {&BuiltInVariable::kVar_pt3B, &BuiltInVariable::kVar_pt3B,
                                         &BuiltInVariable::kVar_pt3B};
constexpr const TVariable *p3B3B3E[3]  = {&BuiltInVariable::kVar_pt3B, &BuiltInVariable::kVar_pt3B,
                                         &BuiltInVariable::kVar_pt3E};
constexpr const TVariable *p3B3B[2]    = {&BuiltInVariable::kVar_pt3B, &BuiltInVariable::kVar_pt3B};
constexpr const TVariable *p3B3C[2]    = {&BuiltInVariable::kVar_pt3B, &BuiltInVariable::kVar_pt3C};
constexpr const TVariable *p3B[1]      = {&BuiltInVariable::kVar_pt3B};
constexpr const TVariable *p3B_o_3B[2] = {&BuiltInVariable::kVar_pt3B,
                                          &BuiltInVariable::kVar_pt_o_3B};
constexpr const TVariable *p3B_o_3C[2] = {&BuiltInVariable::kVar_pt3B,
                                          &BuiltInVariable::kVar_pt_o_3C};
constexpr const TVariable *p3C0C0C[3]  = {&BuiltInVariable::kVar_pt3C, &BuiltInVariable::kVar_pt0C,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p3C0C[2]    = {&BuiltInVariable::kVar_pt3C, &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p3C3C0C0C[4] = {&BuiltInVariable::kVar_pt3C, &BuiltInVariable::kVar_pt3C,
                                           &BuiltInVariable::kVar_pt0C,
                                           &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p3C3C3C[3]   = {&BuiltInVariable::kVar_pt3C, &BuiltInVariable::kVar_pt3C,
                                         &BuiltInVariable::kVar_pt3C};
constexpr const TVariable *p3C3C[2] = {&BuiltInVariable::kVar_pt3C, &BuiltInVariable::kVar_pt3C};
constexpr const TVariable *p3C3C_o_3C_o_3C[4] = {
    &BuiltInVariable::kVar_pt3C, &BuiltInVariable::kVar_pt3C, &BuiltInVariable::kVar_pt_o_3C,
    &BuiltInVariable::kVar_pt_o_3C};
constexpr const TVariable *p3C[1]     = {&BuiltInVariable::kVar_pt3C};
constexpr const TVariable *p3D0C0C[3] = {&BuiltInVariable::kVar_pt3D, &BuiltInVariable::kVar_pt0C,
                                         &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p3D0D0D[3] = {&BuiltInVariable::kVar_pt3D, &BuiltInVariable::kVar_pt0D,
                                         &BuiltInVariable::kVar_pt0D};
constexpr const TVariable *p3D0D[2]   = {&BuiltInVariable::kVar_pt3D, &BuiltInVariable::kVar_pt0D};
constexpr const TVariable *p3D3D0C0C[4] = {&BuiltInVariable::kVar_pt3D, &BuiltInVariable::kVar_pt3D,
                                           &BuiltInVariable::kVar_pt0C,
                                           &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p3D3D3D[3]   = {&BuiltInVariable::kVar_pt3D, &BuiltInVariable::kVar_pt3D,
                                         &BuiltInVariable::kVar_pt3D};
constexpr const TVariable *p3D3D[2] = {&BuiltInVariable::kVar_pt3D, &BuiltInVariable::kVar_pt3D};
constexpr const TVariable *p3D3D_o_3D[3] = {
    &BuiltInVariable::kVar_pt3D, &BuiltInVariable::kVar_pt3D, &BuiltInVariable::kVar_pt_o_3D};
constexpr const TVariable *p3D3D_o_3D_o_3D[4] = {
    &BuiltInVariable::kVar_pt3D, &BuiltInVariable::kVar_pt3D, &BuiltInVariable::kVar_pt_o_3D,
    &BuiltInVariable::kVar_pt_o_3D};
constexpr const TVariable *p3D[1]   = {&BuiltInVariable::kVar_pt3D};
constexpr const TVariable *p3E3E[2] = {&BuiltInVariable::kVar_pt3E, &BuiltInVariable::kVar_pt3E};
constexpr const TVariable *p3E[1]   = {&BuiltInVariable::kVar_pt3E};
constexpr const TVariable *p5B5B[2] = {&BuiltInVariable::kVar_pt5B, &BuiltInVariable::kVar_pt5B};
constexpr const TVariable *p5B[1]   = {&BuiltInVariable::kVar_pt5B};
constexpr const TVariable *p6B6B[2] = {&BuiltInVariable::kVar_pt6B, &BuiltInVariable::kVar_pt6B};
constexpr const TVariable *p6B[1]   = {&BuiltInVariable::kVar_pt6B};
constexpr const TVariable *p7B7B[2] = {&BuiltInVariable::kVar_pt7B, &BuiltInVariable::kVar_pt7B};
constexpr const TVariable *p7B[1]   = {&BuiltInVariable::kVar_pt7B};
constexpr const TVariable *p9B9B[2] = {&BuiltInVariable::kVar_pt9B, &BuiltInVariable::kVar_pt9B};
constexpr const TVariable *p9B[1]   = {&BuiltInVariable::kVar_pt9B};
constexpr const TVariable *pABAB[2] = {&BuiltInVariable::kVar_ptAB, &BuiltInVariable::kVar_ptAB};
constexpr const TVariable *pAB[1]   = {&BuiltInVariable::kVar_ptAB};
constexpr const TVariable *pBBBB[2] = {&BuiltInVariable::kVar_ptBB, &BuiltInVariable::kVar_ptBB};
constexpr const TVariable *pBB[1]   = {&BuiltInVariable::kVar_ptBB};
constexpr const TVariable *pDBDB[2] = {&BuiltInVariable::kVar_ptDB, &BuiltInVariable::kVar_ptDB};
constexpr const TVariable *pDB[1]   = {&BuiltInVariable::kVar_ptDB};
constexpr const TVariable *pEBEB[2] = {&BuiltInVariable::kVar_ptEB, &BuiltInVariable::kVar_ptEB};
constexpr const TVariable *pEB[1]   = {&BuiltInVariable::kVar_ptEB};
constexpr const TVariable *pFBFB[2] = {&BuiltInVariable::kVar_ptFB, &BuiltInVariable::kVar_ptFB};
constexpr const TVariable *pFB[1]   = {&BuiltInVariable::kVar_ptFB};
constexpr const TVariable *p_io_0C0C0C[3] = {
    &BuiltInVariable::kVar_pt_io_0C, &BuiltInVariable::kVar_pt0C, &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p_io_0C0C[2]   = {&BuiltInVariable::kVar_pt_io_0C,
                                           &BuiltInVariable::kVar_pt0C};
constexpr const TVariable *p_io_0D0D0D[3] = {
    &BuiltInVariable::kVar_pt_io_0D, &BuiltInVariable::kVar_pt0D, &BuiltInVariable::kVar_pt0D};
constexpr const TVariable *p_io_0D0D[2] = {&BuiltInVariable::kVar_pt_io_0D,
                                           &BuiltInVariable::kVar_pt0D};

}  // namespace BuiltInParameters

namespace UnmangledBuiltIns
{

constexpr const UnmangledBuiltIn ARB_texture_rectangle(TExtension::ARB_texture_rectangle);
constexpr const UnmangledBuiltIn EXT_YUV_target(TExtension::EXT_YUV_target);
constexpr const UnmangledBuiltIn EXT_geometry_shader(TExtension::EXT_geometry_shader);
constexpr const UnmangledBuiltIn EXT_shader_texture_lod(TExtension::EXT_shader_texture_lod);
constexpr const UnmangledBuiltIn OES_standard_derivatives(TExtension::OES_standard_derivatives);
constexpr const UnmangledBuiltIn UNDEFINED(TExtension::UNDEFINED);

}  // namespace UnmangledBuiltIns

// TODO(oetuaho): Would be nice to make this a class instead of a namespace so that we could friend
// this from TFunction. Now symbol constructors taking an id have to be public even though they're
// not supposed to be accessible from outside of here. http://anglebug.com/2390
namespace BuiltInFunction
{

constexpr const TFunction kFunction_radians_0B(
    BuiltInId::radians_0B,
    BuiltInName::radians,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::radians_0B,
    EOpRadians,
    true);
constexpr const TFunction kFunction_radians_1B(
    BuiltInId::radians_1B,
    BuiltInName::radians,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::radians_1B,
    EOpRadians,
    true);
constexpr const TFunction kFunction_radians_2B(
    BuiltInId::radians_2B,
    BuiltInName::radians,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::radians_2B,
    EOpRadians,
    true);
constexpr const TFunction kFunction_radians_3B(
    BuiltInId::radians_3B,
    BuiltInName::radians,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::radians_3B,
    EOpRadians,
    true);
constexpr const TFunction kFunction_degrees_0B(
    BuiltInId::degrees_0B,
    BuiltInName::degrees,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::degrees_0B,
    EOpDegrees,
    true);
constexpr const TFunction kFunction_degrees_1B(
    BuiltInId::degrees_1B,
    BuiltInName::degrees,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::degrees_1B,
    EOpDegrees,
    true);
constexpr const TFunction kFunction_degrees_2B(
    BuiltInId::degrees_2B,
    BuiltInName::degrees,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::degrees_2B,
    EOpDegrees,
    true);
constexpr const TFunction kFunction_degrees_3B(
    BuiltInId::degrees_3B,
    BuiltInName::degrees,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::degrees_3B,
    EOpDegrees,
    true);
constexpr const TFunction kFunction_sin_0B(
    BuiltInId::sin_0B,
    BuiltInName::sin,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::sin_0B,
    EOpSin,
    true);
constexpr const TFunction kFunction_sin_1B(
    BuiltInId::sin_1B,
    BuiltInName::sin,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::sin_1B,
    EOpSin,
    true);
constexpr const TFunction kFunction_sin_2B(
    BuiltInId::sin_2B,
    BuiltInName::sin,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::sin_2B,
    EOpSin,
    true);
constexpr const TFunction kFunction_sin_3B(
    BuiltInId::sin_3B,
    BuiltInName::sin,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::sin_3B,
    EOpSin,
    true);
constexpr const TFunction kFunction_cos_0B(
    BuiltInId::cos_0B,
    BuiltInName::cos,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::cos_0B,
    EOpCos,
    true);
constexpr const TFunction kFunction_cos_1B(
    BuiltInId::cos_1B,
    BuiltInName::cos,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::cos_1B,
    EOpCos,
    true);
constexpr const TFunction kFunction_cos_2B(
    BuiltInId::cos_2B,
    BuiltInName::cos,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::cos_2B,
    EOpCos,
    true);
constexpr const TFunction kFunction_cos_3B(
    BuiltInId::cos_3B,
    BuiltInName::cos,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::cos_3B,
    EOpCos,
    true);
constexpr const TFunction kFunction_tan_0B(
    BuiltInId::tan_0B,
    BuiltInName::tan,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::tan_0B,
    EOpTan,
    true);
constexpr const TFunction kFunction_tan_1B(
    BuiltInId::tan_1B,
    BuiltInName::tan,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::tan_1B,
    EOpTan,
    true);
constexpr const TFunction kFunction_tan_2B(
    BuiltInId::tan_2B,
    BuiltInName::tan,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::tan_2B,
    EOpTan,
    true);
constexpr const TFunction kFunction_tan_3B(
    BuiltInId::tan_3B,
    BuiltInName::tan,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::tan_3B,
    EOpTan,
    true);
constexpr const TFunction kFunction_asin_0B(
    BuiltInId::asin_0B,
    BuiltInName::asin,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::asin_0B,
    EOpAsin,
    true);
constexpr const TFunction kFunction_asin_1B(
    BuiltInId::asin_1B,
    BuiltInName::asin,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::asin_1B,
    EOpAsin,
    true);
constexpr const TFunction kFunction_asin_2B(
    BuiltInId::asin_2B,
    BuiltInName::asin,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::asin_2B,
    EOpAsin,
    true);
constexpr const TFunction kFunction_asin_3B(
    BuiltInId::asin_3B,
    BuiltInName::asin,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::asin_3B,
    EOpAsin,
    true);
constexpr const TFunction kFunction_acos_0B(
    BuiltInId::acos_0B,
    BuiltInName::acos,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::acos_0B,
    EOpAcos,
    true);
constexpr const TFunction kFunction_acos_1B(
    BuiltInId::acos_1B,
    BuiltInName::acos,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::acos_1B,
    EOpAcos,
    true);
constexpr const TFunction kFunction_acos_2B(
    BuiltInId::acos_2B,
    BuiltInName::acos,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::acos_2B,
    EOpAcos,
    true);
constexpr const TFunction kFunction_acos_3B(
    BuiltInId::acos_3B,
    BuiltInName::acos,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::acos_3B,
    EOpAcos,
    true);
constexpr const TFunction kFunction_atan_0B0B(
    BuiltInId::atan_0B0B,
    BuiltInName::atan,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B0B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::atan_0B0B,
    EOpAtan,
    true);
constexpr const TFunction kFunction_atan_1B1B(
    BuiltInId::atan_1B1B,
    BuiltInName::atan,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::atan_1B1B,
    EOpAtan,
    true);
constexpr const TFunction kFunction_atan_2B2B(
    BuiltInId::atan_2B2B,
    BuiltInName::atan,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::atan_2B2B,
    EOpAtan,
    true);
constexpr const TFunction kFunction_atan_3B3B(
    BuiltInId::atan_3B3B,
    BuiltInName::atan,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::atan_3B3B,
    EOpAtan,
    true);
constexpr const TFunction kFunction_atan_0B(
    BuiltInId::atan_0B,
    BuiltInName::atan,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::atan_0B,
    EOpAtan,
    true);
constexpr const TFunction kFunction_atan_1B(
    BuiltInId::atan_1B,
    BuiltInName::atan,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::atan_1B,
    EOpAtan,
    true);
constexpr const TFunction kFunction_atan_2B(
    BuiltInId::atan_2B,
    BuiltInName::atan,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::atan_2B,
    EOpAtan,
    true);
constexpr const TFunction kFunction_atan_3B(
    BuiltInId::atan_3B,
    BuiltInName::atan,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::atan_3B,
    EOpAtan,
    true);
constexpr const TFunction kFunction_sinh_0B(
    BuiltInId::sinh_0B,
    BuiltInName::sinh,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::sinh_0B,
    EOpSinh,
    true);
constexpr const TFunction kFunction_sinh_1B(
    BuiltInId::sinh_1B,
    BuiltInName::sinh,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::sinh_1B,
    EOpSinh,
    true);
constexpr const TFunction kFunction_sinh_2B(
    BuiltInId::sinh_2B,
    BuiltInName::sinh,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::sinh_2B,
    EOpSinh,
    true);
constexpr const TFunction kFunction_sinh_3B(
    BuiltInId::sinh_3B,
    BuiltInName::sinh,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::sinh_3B,
    EOpSinh,
    true);
constexpr const TFunction kFunction_cosh_0B(
    BuiltInId::cosh_0B,
    BuiltInName::cosh,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::cosh_0B,
    EOpCosh,
    true);
constexpr const TFunction kFunction_cosh_1B(
    BuiltInId::cosh_1B,
    BuiltInName::cosh,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::cosh_1B,
    EOpCosh,
    true);
constexpr const TFunction kFunction_cosh_2B(
    BuiltInId::cosh_2B,
    BuiltInName::cosh,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::cosh_2B,
    EOpCosh,
    true);
constexpr const TFunction kFunction_cosh_3B(
    BuiltInId::cosh_3B,
    BuiltInName::cosh,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::cosh_3B,
    EOpCosh,
    true);
constexpr const TFunction kFunction_tanh_0B(
    BuiltInId::tanh_0B,
    BuiltInName::tanh,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::tanh_0B,
    EOpTanh,
    true);
constexpr const TFunction kFunction_tanh_1B(
    BuiltInId::tanh_1B,
    BuiltInName::tanh,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::tanh_1B,
    EOpTanh,
    true);
constexpr const TFunction kFunction_tanh_2B(
    BuiltInId::tanh_2B,
    BuiltInName::tanh,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::tanh_2B,
    EOpTanh,
    true);
constexpr const TFunction kFunction_tanh_3B(
    BuiltInId::tanh_3B,
    BuiltInName::tanh,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::tanh_3B,
    EOpTanh,
    true);
constexpr const TFunction kFunction_asinh_0B(
    BuiltInId::asinh_0B,
    BuiltInName::asinh,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::asinh_0B,
    EOpAsinh,
    true);
constexpr const TFunction kFunction_asinh_1B(
    BuiltInId::asinh_1B,
    BuiltInName::asinh,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::asinh_1B,
    EOpAsinh,
    true);
constexpr const TFunction kFunction_asinh_2B(
    BuiltInId::asinh_2B,
    BuiltInName::asinh,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::asinh_2B,
    EOpAsinh,
    true);
constexpr const TFunction kFunction_asinh_3B(
    BuiltInId::asinh_3B,
    BuiltInName::asinh,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::asinh_3B,
    EOpAsinh,
    true);
constexpr const TFunction kFunction_acosh_0B(
    BuiltInId::acosh_0B,
    BuiltInName::acosh,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::acosh_0B,
    EOpAcosh,
    true);
constexpr const TFunction kFunction_acosh_1B(
    BuiltInId::acosh_1B,
    BuiltInName::acosh,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::acosh_1B,
    EOpAcosh,
    true);
constexpr const TFunction kFunction_acosh_2B(
    BuiltInId::acosh_2B,
    BuiltInName::acosh,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::acosh_2B,
    EOpAcosh,
    true);
constexpr const TFunction kFunction_acosh_3B(
    BuiltInId::acosh_3B,
    BuiltInName::acosh,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::acosh_3B,
    EOpAcosh,
    true);
constexpr const TFunction kFunction_atanh_0B(
    BuiltInId::atanh_0B,
    BuiltInName::atanh,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::atanh_0B,
    EOpAtanh,
    true);
constexpr const TFunction kFunction_atanh_1B(
    BuiltInId::atanh_1B,
    BuiltInName::atanh,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::atanh_1B,
    EOpAtanh,
    true);
constexpr const TFunction kFunction_atanh_2B(
    BuiltInId::atanh_2B,
    BuiltInName::atanh,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::atanh_2B,
    EOpAtanh,
    true);
constexpr const TFunction kFunction_atanh_3B(
    BuiltInId::atanh_3B,
    BuiltInName::atanh,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::atanh_3B,
    EOpAtanh,
    true);
constexpr const TFunction kFunction_pow_0B0B(
    BuiltInId::pow_0B0B,
    BuiltInName::pow,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B0B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::pow_0B0B,
    EOpPow,
    true);
constexpr const TFunction kFunction_pow_1B1B(
    BuiltInId::pow_1B1B,
    BuiltInName::pow,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::pow_1B1B,
    EOpPow,
    true);
constexpr const TFunction kFunction_pow_2B2B(
    BuiltInId::pow_2B2B,
    BuiltInName::pow,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::pow_2B2B,
    EOpPow,
    true);
constexpr const TFunction kFunction_pow_3B3B(
    BuiltInId::pow_3B3B,
    BuiltInName::pow,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::pow_3B3B,
    EOpPow,
    true);
constexpr const TFunction kFunction_exp_0B(
    BuiltInId::exp_0B,
    BuiltInName::exp,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::exp_0B,
    EOpExp,
    true);
constexpr const TFunction kFunction_exp_1B(
    BuiltInId::exp_1B,
    BuiltInName::exp,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::exp_1B,
    EOpExp,
    true);
constexpr const TFunction kFunction_exp_2B(
    BuiltInId::exp_2B,
    BuiltInName::exp,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::exp_2B,
    EOpExp,
    true);
constexpr const TFunction kFunction_exp_3B(
    BuiltInId::exp_3B,
    BuiltInName::exp,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::exp_3B,
    EOpExp,
    true);
constexpr const TFunction kFunction_log_0B(
    BuiltInId::log_0B,
    BuiltInName::log,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::log_0B,
    EOpLog,
    true);
constexpr const TFunction kFunction_log_1B(
    BuiltInId::log_1B,
    BuiltInName::log,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::log_1B,
    EOpLog,
    true);
constexpr const TFunction kFunction_log_2B(
    BuiltInId::log_2B,
    BuiltInName::log,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::log_2B,
    EOpLog,
    true);
constexpr const TFunction kFunction_log_3B(
    BuiltInId::log_3B,
    BuiltInName::log,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::log_3B,
    EOpLog,
    true);
constexpr const TFunction kFunction_exp2_0B(
    BuiltInId::exp2_0B,
    BuiltInName::exp2,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::exp2_0B,
    EOpExp2,
    true);
constexpr const TFunction kFunction_exp2_1B(
    BuiltInId::exp2_1B,
    BuiltInName::exp2,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::exp2_1B,
    EOpExp2,
    true);
constexpr const TFunction kFunction_exp2_2B(
    BuiltInId::exp2_2B,
    BuiltInName::exp2,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::exp2_2B,
    EOpExp2,
    true);
constexpr const TFunction kFunction_exp2_3B(
    BuiltInId::exp2_3B,
    BuiltInName::exp2,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::exp2_3B,
    EOpExp2,
    true);
constexpr const TFunction kFunction_log2_0B(
    BuiltInId::log2_0B,
    BuiltInName::log2,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::log2_0B,
    EOpLog2,
    true);
constexpr const TFunction kFunction_log2_1B(
    BuiltInId::log2_1B,
    BuiltInName::log2,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::log2_1B,
    EOpLog2,
    true);
constexpr const TFunction kFunction_log2_2B(
    BuiltInId::log2_2B,
    BuiltInName::log2,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::log2_2B,
    EOpLog2,
    true);
constexpr const TFunction kFunction_log2_3B(
    BuiltInId::log2_3B,
    BuiltInName::log2,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::log2_3B,
    EOpLog2,
    true);
constexpr const TFunction kFunction_sqrt_0B(
    BuiltInId::sqrt_0B,
    BuiltInName::sqrt,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::sqrt_0B,
    EOpSqrt,
    true);
constexpr const TFunction kFunction_sqrt_1B(
    BuiltInId::sqrt_1B,
    BuiltInName::sqrt,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::sqrt_1B,
    EOpSqrt,
    true);
constexpr const TFunction kFunction_sqrt_2B(
    BuiltInId::sqrt_2B,
    BuiltInName::sqrt,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::sqrt_2B,
    EOpSqrt,
    true);
constexpr const TFunction kFunction_sqrt_3B(
    BuiltInId::sqrt_3B,
    BuiltInName::sqrt,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::sqrt_3B,
    EOpSqrt,
    true);
constexpr const TFunction kFunction_inversesqrt_0B(
    BuiltInId::inversesqrt_0B,
    BuiltInName::inversesqrt,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::inversesqrt_0B,
    EOpInversesqrt,
    true);
constexpr const TFunction kFunction_inversesqrt_1B(
    BuiltInId::inversesqrt_1B,
    BuiltInName::inversesqrt,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::inversesqrt_1B,
    EOpInversesqrt,
    true);
constexpr const TFunction kFunction_inversesqrt_2B(
    BuiltInId::inversesqrt_2B,
    BuiltInName::inversesqrt,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::inversesqrt_2B,
    EOpInversesqrt,
    true);
constexpr const TFunction kFunction_inversesqrt_3B(
    BuiltInId::inversesqrt_3B,
    BuiltInName::inversesqrt,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::inversesqrt_3B,
    EOpInversesqrt,
    true);
constexpr const TFunction kFunction_abs_0B(
    BuiltInId::abs_0B,
    BuiltInName::abs,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::abs_0B,
    EOpAbs,
    true);
constexpr const TFunction kFunction_abs_1B(
    BuiltInId::abs_1B,
    BuiltInName::abs,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::abs_1B,
    EOpAbs,
    true);
constexpr const TFunction kFunction_abs_2B(
    BuiltInId::abs_2B,
    BuiltInName::abs,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::abs_2B,
    EOpAbs,
    true);
constexpr const TFunction kFunction_abs_3B(
    BuiltInId::abs_3B,
    BuiltInName::abs,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::abs_3B,
    EOpAbs,
    true);
constexpr const TFunction kFunction_abs_0C(BuiltInId::abs_0C,
                                           BuiltInName::abs,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p0C,
                                           1,
                                           StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                           BuiltInName::abs_0C,
                                           EOpAbs,
                                           true);
constexpr const TFunction kFunction_abs_1C(BuiltInId::abs_1C,
                                           BuiltInName::abs,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p1C,
                                           1,
                                           StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                           BuiltInName::abs_1C,
                                           EOpAbs,
                                           true);
constexpr const TFunction kFunction_abs_2C(BuiltInId::abs_2C,
                                           BuiltInName::abs,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p2C,
                                           1,
                                           StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                           BuiltInName::abs_2C,
                                           EOpAbs,
                                           true);
constexpr const TFunction kFunction_abs_3C(BuiltInId::abs_3C,
                                           BuiltInName::abs,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p3C,
                                           1,
                                           StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                           BuiltInName::abs_3C,
                                           EOpAbs,
                                           true);
constexpr const TFunction kFunction_sign_0B(
    BuiltInId::sign_0B,
    BuiltInName::sign,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::sign_0B,
    EOpSign,
    true);
constexpr const TFunction kFunction_sign_1B(
    BuiltInId::sign_1B,
    BuiltInName::sign,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::sign_1B,
    EOpSign,
    true);
constexpr const TFunction kFunction_sign_2B(
    BuiltInId::sign_2B,
    BuiltInName::sign,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::sign_2B,
    EOpSign,
    true);
constexpr const TFunction kFunction_sign_3B(
    BuiltInId::sign_3B,
    BuiltInName::sign,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::sign_3B,
    EOpSign,
    true);
constexpr const TFunction kFunction_sign_0C(
    BuiltInId::sign_0C,
    BuiltInName::sign,
    TExtension::UNDEFINED,
    BuiltInParameters::p0C,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::sign_0C,
    EOpSign,
    true);
constexpr const TFunction kFunction_sign_1C(
    BuiltInId::sign_1C,
    BuiltInName::sign,
    TExtension::UNDEFINED,
    BuiltInParameters::p1C,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::sign_1C,
    EOpSign,
    true);
constexpr const TFunction kFunction_sign_2C(
    BuiltInId::sign_2C,
    BuiltInName::sign,
    TExtension::UNDEFINED,
    BuiltInParameters::p2C,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::sign_2C,
    EOpSign,
    true);
constexpr const TFunction kFunction_sign_3C(
    BuiltInId::sign_3C,
    BuiltInName::sign,
    TExtension::UNDEFINED,
    BuiltInParameters::p3C,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::sign_3C,
    EOpSign,
    true);
constexpr const TFunction kFunction_floor_0B(
    BuiltInId::floor_0B,
    BuiltInName::floor,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::floor_0B,
    EOpFloor,
    true);
constexpr const TFunction kFunction_floor_1B(
    BuiltInId::floor_1B,
    BuiltInName::floor,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::floor_1B,
    EOpFloor,
    true);
constexpr const TFunction kFunction_floor_2B(
    BuiltInId::floor_2B,
    BuiltInName::floor,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::floor_2B,
    EOpFloor,
    true);
constexpr const TFunction kFunction_floor_3B(
    BuiltInId::floor_3B,
    BuiltInName::floor,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::floor_3B,
    EOpFloor,
    true);
constexpr const TFunction kFunction_trunc_0B(
    BuiltInId::trunc_0B,
    BuiltInName::trunc,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::trunc_0B,
    EOpTrunc,
    true);
constexpr const TFunction kFunction_trunc_1B(
    BuiltInId::trunc_1B,
    BuiltInName::trunc,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::trunc_1B,
    EOpTrunc,
    true);
constexpr const TFunction kFunction_trunc_2B(
    BuiltInId::trunc_2B,
    BuiltInName::trunc,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::trunc_2B,
    EOpTrunc,
    true);
constexpr const TFunction kFunction_trunc_3B(
    BuiltInId::trunc_3B,
    BuiltInName::trunc,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::trunc_3B,
    EOpTrunc,
    true);
constexpr const TFunction kFunction_round_0B(
    BuiltInId::round_0B,
    BuiltInName::round,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::round_0B,
    EOpRound,
    true);
constexpr const TFunction kFunction_round_1B(
    BuiltInId::round_1B,
    BuiltInName::round,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::round_1B,
    EOpRound,
    true);
constexpr const TFunction kFunction_round_2B(
    BuiltInId::round_2B,
    BuiltInName::round,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::round_2B,
    EOpRound,
    true);
constexpr const TFunction kFunction_round_3B(
    BuiltInId::round_3B,
    BuiltInName::round,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::round_3B,
    EOpRound,
    true);
constexpr const TFunction kFunction_roundEven_0B(
    BuiltInId::roundEven_0B,
    BuiltInName::roundEven,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::roundEven_0B,
    EOpRoundEven,
    true);
constexpr const TFunction kFunction_roundEven_1B(
    BuiltInId::roundEven_1B,
    BuiltInName::roundEven,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::roundEven_1B,
    EOpRoundEven,
    true);
constexpr const TFunction kFunction_roundEven_2B(
    BuiltInId::roundEven_2B,
    BuiltInName::roundEven,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::roundEven_2B,
    EOpRoundEven,
    true);
constexpr const TFunction kFunction_roundEven_3B(
    BuiltInId::roundEven_3B,
    BuiltInName::roundEven,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::roundEven_3B,
    EOpRoundEven,
    true);
constexpr const TFunction kFunction_ceil_0B(
    BuiltInId::ceil_0B,
    BuiltInName::ceil,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::ceil_0B,
    EOpCeil,
    true);
constexpr const TFunction kFunction_ceil_1B(
    BuiltInId::ceil_1B,
    BuiltInName::ceil,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::ceil_1B,
    EOpCeil,
    true);
constexpr const TFunction kFunction_ceil_2B(
    BuiltInId::ceil_2B,
    BuiltInName::ceil,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::ceil_2B,
    EOpCeil,
    true);
constexpr const TFunction kFunction_ceil_3B(
    BuiltInId::ceil_3B,
    BuiltInName::ceil,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::ceil_3B,
    EOpCeil,
    true);
constexpr const TFunction kFunction_fract_0B(
    BuiltInId::fract_0B,
    BuiltInName::fract,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::fract_0B,
    EOpFract,
    true);
constexpr const TFunction kFunction_fract_1B(
    BuiltInId::fract_1B,
    BuiltInName::fract,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::fract_1B,
    EOpFract,
    true);
constexpr const TFunction kFunction_fract_2B(
    BuiltInId::fract_2B,
    BuiltInName::fract,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::fract_2B,
    EOpFract,
    true);
constexpr const TFunction kFunction_fract_3B(
    BuiltInId::fract_3B,
    BuiltInName::fract,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::fract_3B,
    EOpFract,
    true);
constexpr const TFunction kFunction_mod_0B0B(
    BuiltInId::mod_0B0B,
    BuiltInName::mod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B0B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::mod_0B0B,
    EOpMod,
    true);
constexpr const TFunction kFunction_mod_1B0B(
    BuiltInId::mod_1B0B,
    BuiltInName::mod,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B0B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::mod_1B0B,
    EOpMod,
    true);
constexpr const TFunction kFunction_mod_2B0B(
    BuiltInId::mod_2B0B,
    BuiltInName::mod,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B0B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::mod_2B0B,
    EOpMod,
    true);
constexpr const TFunction kFunction_mod_3B0B(
    BuiltInId::mod_3B0B,
    BuiltInName::mod,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B0B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::mod_3B0B,
    EOpMod,
    true);
constexpr const TFunction kFunction_mod_1B1B(
    BuiltInId::mod_1B1B,
    BuiltInName::mod,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::mod_1B1B,
    EOpMod,
    true);
constexpr const TFunction kFunction_mod_2B2B(
    BuiltInId::mod_2B2B,
    BuiltInName::mod,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::mod_2B2B,
    EOpMod,
    true);
constexpr const TFunction kFunction_mod_3B3B(
    BuiltInId::mod_3B3B,
    BuiltInName::mod,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::mod_3B3B,
    EOpMod,
    true);
constexpr const TFunction kFunction_min_0B0B(
    BuiltInId::min_0B0B,
    BuiltInName::min,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B0B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::min_0B0B,
    EOpMin,
    true);
constexpr const TFunction kFunction_min_1B0B(
    BuiltInId::min_1B0B,
    BuiltInName::min,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B0B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::min_1B0B,
    EOpMin,
    true);
constexpr const TFunction kFunction_min_2B0B(
    BuiltInId::min_2B0B,
    BuiltInName::min,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B0B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::min_2B0B,
    EOpMin,
    true);
constexpr const TFunction kFunction_min_3B0B(
    BuiltInId::min_3B0B,
    BuiltInName::min,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B0B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::min_3B0B,
    EOpMin,
    true);
constexpr const TFunction kFunction_min_1B1B(
    BuiltInId::min_1B1B,
    BuiltInName::min,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::min_1B1B,
    EOpMin,
    true);
constexpr const TFunction kFunction_min_2B2B(
    BuiltInId::min_2B2B,
    BuiltInName::min,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::min_2B2B,
    EOpMin,
    true);
constexpr const TFunction kFunction_min_3B3B(
    BuiltInId::min_3B3B,
    BuiltInName::min,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::min_3B3B,
    EOpMin,
    true);
constexpr const TFunction kFunction_min_0C0C(
    BuiltInId::min_0C0C,
    BuiltInName::min,
    TExtension::UNDEFINED,
    BuiltInParameters::p0C0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::min_0C0C,
    EOpMin,
    true);
constexpr const TFunction kFunction_min_1C1C(
    BuiltInId::min_1C1C,
    BuiltInName::min,
    TExtension::UNDEFINED,
    BuiltInParameters::p1C1C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::min_1C1C,
    EOpMin,
    true);
constexpr const TFunction kFunction_min_2C2C(
    BuiltInId::min_2C2C,
    BuiltInName::min,
    TExtension::UNDEFINED,
    BuiltInParameters::p2C2C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::min_2C2C,
    EOpMin,
    true);
constexpr const TFunction kFunction_min_3C3C(
    BuiltInId::min_3C3C,
    BuiltInName::min,
    TExtension::UNDEFINED,
    BuiltInParameters::p3C3C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::min_3C3C,
    EOpMin,
    true);
constexpr const TFunction kFunction_min_1C0C(
    BuiltInId::min_1C0C,
    BuiltInName::min,
    TExtension::UNDEFINED,
    BuiltInParameters::p1C0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::min_1C0C,
    EOpMin,
    true);
constexpr const TFunction kFunction_min_2C0C(
    BuiltInId::min_2C0C,
    BuiltInName::min,
    TExtension::UNDEFINED,
    BuiltInParameters::p2C0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::min_2C0C,
    EOpMin,
    true);
constexpr const TFunction kFunction_min_3C0C(
    BuiltInId::min_3C0C,
    BuiltInName::min,
    TExtension::UNDEFINED,
    BuiltInParameters::p3C0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::min_3C0C,
    EOpMin,
    true);
constexpr const TFunction kFunction_min_0D0D(
    BuiltInId::min_0D0D,
    BuiltInName::min,
    TExtension::UNDEFINED,
    BuiltInParameters::p0D0D,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::min_0D0D,
    EOpMin,
    true);
constexpr const TFunction kFunction_min_1D1D(
    BuiltInId::min_1D1D,
    BuiltInName::min,
    TExtension::UNDEFINED,
    BuiltInParameters::p1D1D,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::min_1D1D,
    EOpMin,
    true);
constexpr const TFunction kFunction_min_2D2D(
    BuiltInId::min_2D2D,
    BuiltInName::min,
    TExtension::UNDEFINED,
    BuiltInParameters::p2D2D,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::min_2D2D,
    EOpMin,
    true);
constexpr const TFunction kFunction_min_3D3D(
    BuiltInId::min_3D3D,
    BuiltInName::min,
    TExtension::UNDEFINED,
    BuiltInParameters::p3D3D,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::min_3D3D,
    EOpMin,
    true);
constexpr const TFunction kFunction_min_1D0D(
    BuiltInId::min_1D0D,
    BuiltInName::min,
    TExtension::UNDEFINED,
    BuiltInParameters::p1D0D,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::min_1D0D,
    EOpMin,
    true);
constexpr const TFunction kFunction_min_2D0D(
    BuiltInId::min_2D0D,
    BuiltInName::min,
    TExtension::UNDEFINED,
    BuiltInParameters::p2D0D,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::min_2D0D,
    EOpMin,
    true);
constexpr const TFunction kFunction_min_3D0D(
    BuiltInId::min_3D0D,
    BuiltInName::min,
    TExtension::UNDEFINED,
    BuiltInParameters::p3D0D,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::min_3D0D,
    EOpMin,
    true);
constexpr const TFunction kFunction_max_0B0B(
    BuiltInId::max_0B0B,
    BuiltInName::max,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B0B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::max_0B0B,
    EOpMax,
    true);
constexpr const TFunction kFunction_max_1B0B(
    BuiltInId::max_1B0B,
    BuiltInName::max,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B0B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::max_1B0B,
    EOpMax,
    true);
constexpr const TFunction kFunction_max_2B0B(
    BuiltInId::max_2B0B,
    BuiltInName::max,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B0B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::max_2B0B,
    EOpMax,
    true);
constexpr const TFunction kFunction_max_3B0B(
    BuiltInId::max_3B0B,
    BuiltInName::max,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B0B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::max_3B0B,
    EOpMax,
    true);
constexpr const TFunction kFunction_max_1B1B(
    BuiltInId::max_1B1B,
    BuiltInName::max,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::max_1B1B,
    EOpMax,
    true);
constexpr const TFunction kFunction_max_2B2B(
    BuiltInId::max_2B2B,
    BuiltInName::max,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::max_2B2B,
    EOpMax,
    true);
constexpr const TFunction kFunction_max_3B3B(
    BuiltInId::max_3B3B,
    BuiltInName::max,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::max_3B3B,
    EOpMax,
    true);
constexpr const TFunction kFunction_max_0C0C(
    BuiltInId::max_0C0C,
    BuiltInName::max,
    TExtension::UNDEFINED,
    BuiltInParameters::p0C0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::max_0C0C,
    EOpMax,
    true);
constexpr const TFunction kFunction_max_1C1C(
    BuiltInId::max_1C1C,
    BuiltInName::max,
    TExtension::UNDEFINED,
    BuiltInParameters::p1C1C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::max_1C1C,
    EOpMax,
    true);
constexpr const TFunction kFunction_max_2C2C(
    BuiltInId::max_2C2C,
    BuiltInName::max,
    TExtension::UNDEFINED,
    BuiltInParameters::p2C2C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::max_2C2C,
    EOpMax,
    true);
constexpr const TFunction kFunction_max_3C3C(
    BuiltInId::max_3C3C,
    BuiltInName::max,
    TExtension::UNDEFINED,
    BuiltInParameters::p3C3C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::max_3C3C,
    EOpMax,
    true);
constexpr const TFunction kFunction_max_1C0C(
    BuiltInId::max_1C0C,
    BuiltInName::max,
    TExtension::UNDEFINED,
    BuiltInParameters::p1C0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::max_1C0C,
    EOpMax,
    true);
constexpr const TFunction kFunction_max_2C0C(
    BuiltInId::max_2C0C,
    BuiltInName::max,
    TExtension::UNDEFINED,
    BuiltInParameters::p2C0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::max_2C0C,
    EOpMax,
    true);
constexpr const TFunction kFunction_max_3C0C(
    BuiltInId::max_3C0C,
    BuiltInName::max,
    TExtension::UNDEFINED,
    BuiltInParameters::p3C0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::max_3C0C,
    EOpMax,
    true);
constexpr const TFunction kFunction_max_0D0D(
    BuiltInId::max_0D0D,
    BuiltInName::max,
    TExtension::UNDEFINED,
    BuiltInParameters::p0D0D,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::max_0D0D,
    EOpMax,
    true);
constexpr const TFunction kFunction_max_1D1D(
    BuiltInId::max_1D1D,
    BuiltInName::max,
    TExtension::UNDEFINED,
    BuiltInParameters::p1D1D,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::max_1D1D,
    EOpMax,
    true);
constexpr const TFunction kFunction_max_2D2D(
    BuiltInId::max_2D2D,
    BuiltInName::max,
    TExtension::UNDEFINED,
    BuiltInParameters::p2D2D,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::max_2D2D,
    EOpMax,
    true);
constexpr const TFunction kFunction_max_3D3D(
    BuiltInId::max_3D3D,
    BuiltInName::max,
    TExtension::UNDEFINED,
    BuiltInParameters::p3D3D,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::max_3D3D,
    EOpMax,
    true);
constexpr const TFunction kFunction_max_1D0D(
    BuiltInId::max_1D0D,
    BuiltInName::max,
    TExtension::UNDEFINED,
    BuiltInParameters::p1D0D,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::max_1D0D,
    EOpMax,
    true);
constexpr const TFunction kFunction_max_2D0D(
    BuiltInId::max_2D0D,
    BuiltInName::max,
    TExtension::UNDEFINED,
    BuiltInParameters::p2D0D,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::max_2D0D,
    EOpMax,
    true);
constexpr const TFunction kFunction_max_3D0D(
    BuiltInId::max_3D0D,
    BuiltInName::max,
    TExtension::UNDEFINED,
    BuiltInParameters::p3D0D,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::max_3D0D,
    EOpMax,
    true);
constexpr const TFunction kFunction_clamp_0B0B0B(
    BuiltInId::clamp_0B0B0B,
    BuiltInName::clamp,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B0B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::clamp_0B0B0B,
    EOpClamp,
    true);
constexpr const TFunction kFunction_clamp_1B0B0B(
    BuiltInId::clamp_1B0B0B,
    BuiltInName::clamp,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B0B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::clamp_1B0B0B,
    EOpClamp,
    true);
constexpr const TFunction kFunction_clamp_2B0B0B(
    BuiltInId::clamp_2B0B0B,
    BuiltInName::clamp,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B0B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::clamp_2B0B0B,
    EOpClamp,
    true);
constexpr const TFunction kFunction_clamp_3B0B0B(
    BuiltInId::clamp_3B0B0B,
    BuiltInName::clamp,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B0B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::clamp_3B0B0B,
    EOpClamp,
    true);
constexpr const TFunction kFunction_clamp_1B1B1B(
    BuiltInId::clamp_1B1B1B,
    BuiltInName::clamp,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1B1B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::clamp_1B1B1B,
    EOpClamp,
    true);
constexpr const TFunction kFunction_clamp_2B2B2B(
    BuiltInId::clamp_2B2B2B,
    BuiltInName::clamp,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B2B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::clamp_2B2B2B,
    EOpClamp,
    true);
constexpr const TFunction kFunction_clamp_3B3B3B(
    BuiltInId::clamp_3B3B3B,
    BuiltInName::clamp,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3B3B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::clamp_3B3B3B,
    EOpClamp,
    true);
constexpr const TFunction kFunction_clamp_0C0C0C(
    BuiltInId::clamp_0C0C0C,
    BuiltInName::clamp,
    TExtension::UNDEFINED,
    BuiltInParameters::p0C0C0C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::clamp_0C0C0C,
    EOpClamp,
    true);
constexpr const TFunction kFunction_clamp_1C0C0C(
    BuiltInId::clamp_1C0C0C,
    BuiltInName::clamp,
    TExtension::UNDEFINED,
    BuiltInParameters::p1C0C0C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::clamp_1C0C0C,
    EOpClamp,
    true);
constexpr const TFunction kFunction_clamp_2C0C0C(
    BuiltInId::clamp_2C0C0C,
    BuiltInName::clamp,
    TExtension::UNDEFINED,
    BuiltInParameters::p2C0C0C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::clamp_2C0C0C,
    EOpClamp,
    true);
constexpr const TFunction kFunction_clamp_3C0C0C(
    BuiltInId::clamp_3C0C0C,
    BuiltInName::clamp,
    TExtension::UNDEFINED,
    BuiltInParameters::p3C0C0C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::clamp_3C0C0C,
    EOpClamp,
    true);
constexpr const TFunction kFunction_clamp_1C1C1C(
    BuiltInId::clamp_1C1C1C,
    BuiltInName::clamp,
    TExtension::UNDEFINED,
    BuiltInParameters::p1C1C1C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::clamp_1C1C1C,
    EOpClamp,
    true);
constexpr const TFunction kFunction_clamp_2C2C2C(
    BuiltInId::clamp_2C2C2C,
    BuiltInName::clamp,
    TExtension::UNDEFINED,
    BuiltInParameters::p2C2C2C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::clamp_2C2C2C,
    EOpClamp,
    true);
constexpr const TFunction kFunction_clamp_3C3C3C(
    BuiltInId::clamp_3C3C3C,
    BuiltInName::clamp,
    TExtension::UNDEFINED,
    BuiltInParameters::p3C3C3C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::clamp_3C3C3C,
    EOpClamp,
    true);
constexpr const TFunction kFunction_clamp_0D0D0D(
    BuiltInId::clamp_0D0D0D,
    BuiltInName::clamp,
    TExtension::UNDEFINED,
    BuiltInParameters::p0D0D0D,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::clamp_0D0D0D,
    EOpClamp,
    true);
constexpr const TFunction kFunction_clamp_1D0D0D(
    BuiltInId::clamp_1D0D0D,
    BuiltInName::clamp,
    TExtension::UNDEFINED,
    BuiltInParameters::p1D0D0D,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::clamp_1D0D0D,
    EOpClamp,
    true);
constexpr const TFunction kFunction_clamp_2D0D0D(
    BuiltInId::clamp_2D0D0D,
    BuiltInName::clamp,
    TExtension::UNDEFINED,
    BuiltInParameters::p2D0D0D,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::clamp_2D0D0D,
    EOpClamp,
    true);
constexpr const TFunction kFunction_clamp_3D0D0D(
    BuiltInId::clamp_3D0D0D,
    BuiltInName::clamp,
    TExtension::UNDEFINED,
    BuiltInParameters::p3D0D0D,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::clamp_3D0D0D,
    EOpClamp,
    true);
constexpr const TFunction kFunction_clamp_1D1D1D(
    BuiltInId::clamp_1D1D1D,
    BuiltInName::clamp,
    TExtension::UNDEFINED,
    BuiltInParameters::p1D1D1D,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::clamp_1D1D1D,
    EOpClamp,
    true);
constexpr const TFunction kFunction_clamp_2D2D2D(
    BuiltInId::clamp_2D2D2D,
    BuiltInName::clamp,
    TExtension::UNDEFINED,
    BuiltInParameters::p2D2D2D,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::clamp_2D2D2D,
    EOpClamp,
    true);
constexpr const TFunction kFunction_clamp_3D3D3D(
    BuiltInId::clamp_3D3D3D,
    BuiltInName::clamp,
    TExtension::UNDEFINED,
    BuiltInParameters::p3D3D3D,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::clamp_3D3D3D,
    EOpClamp,
    true);
constexpr const TFunction kFunction_mix_0B0B0B(
    BuiltInId::mix_0B0B0B,
    BuiltInName::mix,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B0B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::mix_0B0B0B,
    EOpMix,
    true);
constexpr const TFunction kFunction_mix_1B1B0B(
    BuiltInId::mix_1B1B0B,
    BuiltInName::mix,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::mix_1B1B0B,
    EOpMix,
    true);
constexpr const TFunction kFunction_mix_2B2B0B(
    BuiltInId::mix_2B2B0B,
    BuiltInName::mix,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::mix_2B2B0B,
    EOpMix,
    true);
constexpr const TFunction kFunction_mix_3B3B0B(
    BuiltInId::mix_3B3B0B,
    BuiltInName::mix,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::mix_3B3B0B,
    EOpMix,
    true);
constexpr const TFunction kFunction_mix_1B1B1B(
    BuiltInId::mix_1B1B1B,
    BuiltInName::mix,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1B1B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::mix_1B1B1B,
    EOpMix,
    true);
constexpr const TFunction kFunction_mix_2B2B2B(
    BuiltInId::mix_2B2B2B,
    BuiltInName::mix,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B2B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::mix_2B2B2B,
    EOpMix,
    true);
constexpr const TFunction kFunction_mix_3B3B3B(
    BuiltInId::mix_3B3B3B,
    BuiltInName::mix,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3B3B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::mix_3B3B3B,
    EOpMix,
    true);
constexpr const TFunction kFunction_mix_0B0B0E(
    BuiltInId::mix_0B0B0E,
    BuiltInName::mix,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B0B0E,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::mix_0B0B0E,
    EOpMix,
    true);
constexpr const TFunction kFunction_mix_1B1B1E(
    BuiltInId::mix_1B1B1E,
    BuiltInName::mix,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1B1E,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::mix_1B1B1E,
    EOpMix,
    true);
constexpr const TFunction kFunction_mix_2B2B2E(
    BuiltInId::mix_2B2B2E,
    BuiltInName::mix,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B2E,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::mix_2B2B2E,
    EOpMix,
    true);
constexpr const TFunction kFunction_mix_3B3B3E(
    BuiltInId::mix_3B3B3E,
    BuiltInName::mix,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3B3E,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::mix_3B3B3E,
    EOpMix,
    true);
constexpr const TFunction kFunction_step_0B0B(
    BuiltInId::step_0B0B,
    BuiltInName::step,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B0B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::step_0B0B,
    EOpStep,
    true);
constexpr const TFunction kFunction_step_1B1B(
    BuiltInId::step_1B1B,
    BuiltInName::step,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::step_1B1B,
    EOpStep,
    true);
constexpr const TFunction kFunction_step_2B2B(
    BuiltInId::step_2B2B,
    BuiltInName::step,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::step_2B2B,
    EOpStep,
    true);
constexpr const TFunction kFunction_step_3B3B(
    BuiltInId::step_3B3B,
    BuiltInName::step,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::step_3B3B,
    EOpStep,
    true);
constexpr const TFunction kFunction_step_0B1B(
    BuiltInId::step_0B1B,
    BuiltInName::step,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B1B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::step_0B1B,
    EOpStep,
    true);
constexpr const TFunction kFunction_step_0B2B(
    BuiltInId::step_0B2B,
    BuiltInName::step,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::step_0B2B,
    EOpStep,
    true);
constexpr const TFunction kFunction_step_0B3B(
    BuiltInId::step_0B3B,
    BuiltInName::step,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::step_0B3B,
    EOpStep,
    true);
constexpr const TFunction kFunction_smoothstep_0B0B0B(
    BuiltInId::smoothstep_0B0B0B,
    BuiltInName::smoothstep,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B0B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::smoothstep_0B0B0B,
    EOpSmoothstep,
    true);
constexpr const TFunction kFunction_smoothstep_1B1B1B(
    BuiltInId::smoothstep_1B1B1B,
    BuiltInName::smoothstep,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1B1B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::smoothstep_1B1B1B,
    EOpSmoothstep,
    true);
constexpr const TFunction kFunction_smoothstep_2B2B2B(
    BuiltInId::smoothstep_2B2B2B,
    BuiltInName::smoothstep,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B2B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::smoothstep_2B2B2B,
    EOpSmoothstep,
    true);
constexpr const TFunction kFunction_smoothstep_3B3B3B(
    BuiltInId::smoothstep_3B3B3B,
    BuiltInName::smoothstep,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3B3B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::smoothstep_3B3B3B,
    EOpSmoothstep,
    true);
constexpr const TFunction kFunction_smoothstep_0B0B1B(
    BuiltInId::smoothstep_0B0B1B,
    BuiltInName::smoothstep,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B0B1B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::smoothstep_0B0B1B,
    EOpSmoothstep,
    true);
constexpr const TFunction kFunction_smoothstep_0B0B2B(
    BuiltInId::smoothstep_0B0B2B,
    BuiltInName::smoothstep,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B0B2B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::smoothstep_0B0B2B,
    EOpSmoothstep,
    true);
constexpr const TFunction kFunction_smoothstep_0B0B3B(
    BuiltInId::smoothstep_0B0B3B,
    BuiltInName::smoothstep,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B0B3B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::smoothstep_0B0B3B,
    EOpSmoothstep,
    true);
constexpr const TFunction kFunction_modf_0B0B(
    BuiltInId::modf_0B0B,
    BuiltInName::modf,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B_o_0B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::modf_0B0B,
    EOpModf,
    false);
constexpr const TFunction kFunction_modf_1B1B(
    BuiltInId::modf_1B1B,
    BuiltInName::modf,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B_o_1B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::modf_1B1B,
    EOpModf,
    false);
constexpr const TFunction kFunction_modf_2B2B(
    BuiltInId::modf_2B2B,
    BuiltInName::modf,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B_o_2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::modf_2B2B,
    EOpModf,
    false);
constexpr const TFunction kFunction_modf_3B3B(
    BuiltInId::modf_3B3B,
    BuiltInName::modf,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B_o_3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::modf_3B3B,
    EOpModf,
    false);
constexpr const TFunction kFunction_isnan_0B(
    BuiltInId::isnan_0B,
    BuiltInName::isnan,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::isnan_0B,
    EOpIsnan,
    true);
constexpr const TFunction kFunction_isnan_1B(
    BuiltInId::isnan_1B,
    BuiltInName::isnan,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::isnan_1B,
    EOpIsnan,
    true);
constexpr const TFunction kFunction_isnan_2B(
    BuiltInId::isnan_2B,
    BuiltInName::isnan,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::isnan_2B,
    EOpIsnan,
    true);
constexpr const TFunction kFunction_isnan_3B(
    BuiltInId::isnan_3B,
    BuiltInName::isnan,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::isnan_3B,
    EOpIsnan,
    true);
constexpr const TFunction kFunction_isinf_0B(
    BuiltInId::isinf_0B,
    BuiltInName::isinf,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::isinf_0B,
    EOpIsinf,
    true);
constexpr const TFunction kFunction_isinf_1B(
    BuiltInId::isinf_1B,
    BuiltInName::isinf,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::isinf_1B,
    EOpIsinf,
    true);
constexpr const TFunction kFunction_isinf_2B(
    BuiltInId::isinf_2B,
    BuiltInName::isinf,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::isinf_2B,
    EOpIsinf,
    true);
constexpr const TFunction kFunction_isinf_3B(
    BuiltInId::isinf_3B,
    BuiltInName::isinf,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::isinf_3B,
    EOpIsinf,
    true);
constexpr const TFunction kFunction_floatBitsToInt_0B(
    BuiltInId::floatBitsToInt_0B,
    BuiltInName::floatBitsToInt,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::floatBitsToInt_0B,
    EOpFloatBitsToInt,
    true);
constexpr const TFunction kFunction_floatBitsToInt_1B(
    BuiltInId::floatBitsToInt_1B,
    BuiltInName::floatBitsToInt,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::floatBitsToInt_1B,
    EOpFloatBitsToInt,
    true);
constexpr const TFunction kFunction_floatBitsToInt_2B(
    BuiltInId::floatBitsToInt_2B,
    BuiltInName::floatBitsToInt,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::floatBitsToInt_2B,
    EOpFloatBitsToInt,
    true);
constexpr const TFunction kFunction_floatBitsToInt_3B(
    BuiltInId::floatBitsToInt_3B,
    BuiltInName::floatBitsToInt,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::floatBitsToInt_3B,
    EOpFloatBitsToInt,
    true);
constexpr const TFunction kFunction_floatBitsToUint_0B(
    BuiltInId::floatBitsToUint_0B,
    BuiltInName::floatBitsToUint,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::floatBitsToUint_0B,
    EOpFloatBitsToUint,
    true);
constexpr const TFunction kFunction_floatBitsToUint_1B(
    BuiltInId::floatBitsToUint_1B,
    BuiltInName::floatBitsToUint,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::floatBitsToUint_1B,
    EOpFloatBitsToUint,
    true);
constexpr const TFunction kFunction_floatBitsToUint_2B(
    BuiltInId::floatBitsToUint_2B,
    BuiltInName::floatBitsToUint,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::floatBitsToUint_2B,
    EOpFloatBitsToUint,
    true);
constexpr const TFunction kFunction_floatBitsToUint_3B(
    BuiltInId::floatBitsToUint_3B,
    BuiltInName::floatBitsToUint,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::floatBitsToUint_3B,
    EOpFloatBitsToUint,
    true);
constexpr const TFunction kFunction_intBitsToFloat_0C(
    BuiltInId::intBitsToFloat_0C,
    BuiltInName::intBitsToFloat,
    TExtension::UNDEFINED,
    BuiltInParameters::p0C,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::intBitsToFloat_0C,
    EOpIntBitsToFloat,
    true);
constexpr const TFunction kFunction_intBitsToFloat_1C(
    BuiltInId::intBitsToFloat_1C,
    BuiltInName::intBitsToFloat,
    TExtension::UNDEFINED,
    BuiltInParameters::p1C,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::intBitsToFloat_1C,
    EOpIntBitsToFloat,
    true);
constexpr const TFunction kFunction_intBitsToFloat_2C(
    BuiltInId::intBitsToFloat_2C,
    BuiltInName::intBitsToFloat,
    TExtension::UNDEFINED,
    BuiltInParameters::p2C,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::intBitsToFloat_2C,
    EOpIntBitsToFloat,
    true);
constexpr const TFunction kFunction_intBitsToFloat_3C(
    BuiltInId::intBitsToFloat_3C,
    BuiltInName::intBitsToFloat,
    TExtension::UNDEFINED,
    BuiltInParameters::p3C,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::intBitsToFloat_3C,
    EOpIntBitsToFloat,
    true);
constexpr const TFunction kFunction_uintBitsToFloat_0D(
    BuiltInId::uintBitsToFloat_0D,
    BuiltInName::uintBitsToFloat,
    TExtension::UNDEFINED,
    BuiltInParameters::p0D,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::uintBitsToFloat_0D,
    EOpUintBitsToFloat,
    true);
constexpr const TFunction kFunction_uintBitsToFloat_1D(
    BuiltInId::uintBitsToFloat_1D,
    BuiltInName::uintBitsToFloat,
    TExtension::UNDEFINED,
    BuiltInParameters::p1D,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::uintBitsToFloat_1D,
    EOpUintBitsToFloat,
    true);
constexpr const TFunction kFunction_uintBitsToFloat_2D(
    BuiltInId::uintBitsToFloat_2D,
    BuiltInName::uintBitsToFloat,
    TExtension::UNDEFINED,
    BuiltInParameters::p2D,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::uintBitsToFloat_2D,
    EOpUintBitsToFloat,
    true);
constexpr const TFunction kFunction_uintBitsToFloat_3D(
    BuiltInId::uintBitsToFloat_3D,
    BuiltInName::uintBitsToFloat,
    TExtension::UNDEFINED,
    BuiltInParameters::p3D,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::uintBitsToFloat_3D,
    EOpUintBitsToFloat,
    true);
constexpr const TFunction kFunction_frexp_0B0C(
    BuiltInId::frexp_0B0C,
    BuiltInName::frexp,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B_o_0C,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::frexp_0B0C,
    EOpFrexp,
    false);
constexpr const TFunction kFunction_frexp_1B1C(
    BuiltInId::frexp_1B1C,
    BuiltInName::frexp,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B_o_1C,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::frexp_1B1C,
    EOpFrexp,
    false);
constexpr const TFunction kFunction_frexp_2B2C(
    BuiltInId::frexp_2B2C,
    BuiltInName::frexp,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B_o_2C,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::frexp_2B2C,
    EOpFrexp,
    false);
constexpr const TFunction kFunction_frexp_3B3C(
    BuiltInId::frexp_3B3C,
    BuiltInName::frexp,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B_o_3C,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::frexp_3B3C,
    EOpFrexp,
    false);
constexpr const TFunction kFunction_ldexp_0B0C(
    BuiltInId::ldexp_0B0C,
    BuiltInName::ldexp,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B0C,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::ldexp_0B0C,
    EOpLdexp,
    true);
constexpr const TFunction kFunction_ldexp_1B1C(
    BuiltInId::ldexp_1B1C,
    BuiltInName::ldexp,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1C,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::ldexp_1B1C,
    EOpLdexp,
    true);
constexpr const TFunction kFunction_ldexp_2B2C(
    BuiltInId::ldexp_2B2C,
    BuiltInName::ldexp,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2C,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::ldexp_2B2C,
    EOpLdexp,
    true);
constexpr const TFunction kFunction_ldexp_3B3C(
    BuiltInId::ldexp_3B3C,
    BuiltInName::ldexp,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3C,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::ldexp_3B3C,
    EOpLdexp,
    true);
constexpr const TFunction kFunction_packSnorm2x16_1B(
    BuiltInId::packSnorm2x16_1B,
    BuiltInName::packSnorm2x16,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::packSnorm2x16_1B,
    EOpPackSnorm2x16,
    true);
constexpr const TFunction kFunction_packUnorm2x16_1B(
    BuiltInId::packUnorm2x16_1B,
    BuiltInName::packUnorm2x16,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::packUnorm2x16_1B,
    EOpPackUnorm2x16,
    true);
constexpr const TFunction kFunction_packHalf2x16_1B(
    BuiltInId::packHalf2x16_1B,
    BuiltInName::packHalf2x16,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::packHalf2x16_1B,
    EOpPackHalf2x16,
    true);
constexpr const TFunction kFunction_unpackSnorm2x16_0D(
    BuiltInId::unpackSnorm2x16_0D,
    BuiltInName::unpackSnorm2x16,
    TExtension::UNDEFINED,
    BuiltInParameters::p0D,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::unpackSnorm2x16_0D,
    EOpUnpackSnorm2x16,
    true);
constexpr const TFunction kFunction_unpackUnorm2x16_0D(
    BuiltInId::unpackUnorm2x16_0D,
    BuiltInName::unpackUnorm2x16,
    TExtension::UNDEFINED,
    BuiltInParameters::p0D,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::unpackUnorm2x16_0D,
    EOpUnpackUnorm2x16,
    true);
constexpr const TFunction kFunction_unpackHalf2x16_0D(
    BuiltInId::unpackHalf2x16_0D,
    BuiltInName::unpackHalf2x16,
    TExtension::UNDEFINED,
    BuiltInParameters::p0D,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::unpackHalf2x16_0D,
    EOpUnpackHalf2x16,
    true);
constexpr const TFunction kFunction_packUnorm4x8_3B(
    BuiltInId::packUnorm4x8_3B,
    BuiltInName::packUnorm4x8,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::packUnorm4x8_3B,
    EOpPackUnorm4x8,
    true);
constexpr const TFunction kFunction_packSnorm4x8_3B(
    BuiltInId::packSnorm4x8_3B,
    BuiltInName::packSnorm4x8,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::packSnorm4x8_3B,
    EOpPackSnorm4x8,
    true);
constexpr const TFunction kFunction_unpackUnorm4x8_0D(
    BuiltInId::unpackUnorm4x8_0D,
    BuiltInName::unpackUnorm4x8,
    TExtension::UNDEFINED,
    BuiltInParameters::p0D,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::unpackUnorm4x8_0D,
    EOpUnpackUnorm4x8,
    true);
constexpr const TFunction kFunction_unpackSnorm4x8_0D(
    BuiltInId::unpackSnorm4x8_0D,
    BuiltInName::unpackSnorm4x8,
    TExtension::UNDEFINED,
    BuiltInParameters::p0D,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::unpackSnorm4x8_0D,
    EOpUnpackSnorm4x8,
    true);
constexpr const TFunction kFunction_length_0B(
    BuiltInId::length_0B,
    BuiltInName::length,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::length_0B,
    EOpLength,
    true);
constexpr const TFunction kFunction_length_1B(
    BuiltInId::length_1B,
    BuiltInName::length,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::length_1B,
    EOpLength,
    true);
constexpr const TFunction kFunction_length_2B(
    BuiltInId::length_2B,
    BuiltInName::length,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::length_2B,
    EOpLength,
    true);
constexpr const TFunction kFunction_length_3B(
    BuiltInId::length_3B,
    BuiltInName::length,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::length_3B,
    EOpLength,
    true);
constexpr const TFunction kFunction_distance_0B0B(
    BuiltInId::distance_0B0B,
    BuiltInName::distance,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B0B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::distance_0B0B,
    EOpDistance,
    true);
constexpr const TFunction kFunction_distance_1B1B(
    BuiltInId::distance_1B1B,
    BuiltInName::distance,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::distance_1B1B,
    EOpDistance,
    true);
constexpr const TFunction kFunction_distance_2B2B(
    BuiltInId::distance_2B2B,
    BuiltInName::distance,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::distance_2B2B,
    EOpDistance,
    true);
constexpr const TFunction kFunction_distance_3B3B(
    BuiltInId::distance_3B3B,
    BuiltInName::distance,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::distance_3B3B,
    EOpDistance,
    true);
constexpr const TFunction kFunction_dot_0B0B(
    BuiltInId::dot_0B0B,
    BuiltInName::dot,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B0B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::dot_0B0B,
    EOpDot,
    true);
constexpr const TFunction kFunction_dot_1B1B(
    BuiltInId::dot_1B1B,
    BuiltInName::dot,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::dot_1B1B,
    EOpDot,
    true);
constexpr const TFunction kFunction_dot_2B2B(
    BuiltInId::dot_2B2B,
    BuiltInName::dot,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::dot_2B2B,
    EOpDot,
    true);
constexpr const TFunction kFunction_dot_3B3B(
    BuiltInId::dot_3B3B,
    BuiltInName::dot,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::dot_3B3B,
    EOpDot,
    true);
constexpr const TFunction kFunction_cross_2B2B(
    BuiltInId::cross_2B2B,
    BuiltInName::cross,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::cross_2B2B,
    EOpCross,
    true);
constexpr const TFunction kFunction_normalize_0B(
    BuiltInId::normalize_0B,
    BuiltInName::normalize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::normalize_0B,
    EOpNormalize,
    true);
constexpr const TFunction kFunction_normalize_1B(
    BuiltInId::normalize_1B,
    BuiltInName::normalize,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::normalize_1B,
    EOpNormalize,
    true);
constexpr const TFunction kFunction_normalize_2B(
    BuiltInId::normalize_2B,
    BuiltInName::normalize,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::normalize_2B,
    EOpNormalize,
    true);
constexpr const TFunction kFunction_normalize_3B(
    BuiltInId::normalize_3B,
    BuiltInName::normalize,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::normalize_3B,
    EOpNormalize,
    true);
constexpr const TFunction kFunction_faceforward_0B0B0B(
    BuiltInId::faceforward_0B0B0B,
    BuiltInName::faceforward,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B0B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::faceforward_0B0B0B,
    EOpFaceforward,
    true);
constexpr const TFunction kFunction_faceforward_1B1B1B(
    BuiltInId::faceforward_1B1B1B,
    BuiltInName::faceforward,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1B1B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::faceforward_1B1B1B,
    EOpFaceforward,
    true);
constexpr const TFunction kFunction_faceforward_2B2B2B(
    BuiltInId::faceforward_2B2B2B,
    BuiltInName::faceforward,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B2B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::faceforward_2B2B2B,
    EOpFaceforward,
    true);
constexpr const TFunction kFunction_faceforward_3B3B3B(
    BuiltInId::faceforward_3B3B3B,
    BuiltInName::faceforward,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3B3B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::faceforward_3B3B3B,
    EOpFaceforward,
    true);
constexpr const TFunction kFunction_reflect_0B0B(
    BuiltInId::reflect_0B0B,
    BuiltInName::reflect,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B0B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::reflect_0B0B,
    EOpReflect,
    true);
constexpr const TFunction kFunction_reflect_1B1B(
    BuiltInId::reflect_1B1B,
    BuiltInName::reflect,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::reflect_1B1B,
    EOpReflect,
    true);
constexpr const TFunction kFunction_reflect_2B2B(
    BuiltInId::reflect_2B2B,
    BuiltInName::reflect,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::reflect_2B2B,
    EOpReflect,
    true);
constexpr const TFunction kFunction_reflect_3B3B(
    BuiltInId::reflect_3B3B,
    BuiltInName::reflect,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::reflect_3B3B,
    EOpReflect,
    true);
constexpr const TFunction kFunction_refract_0B0B0B(
    BuiltInId::refract_0B0B0B,
    BuiltInName::refract,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B0B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::refract_0B0B0B,
    EOpRefract,
    true);
constexpr const TFunction kFunction_refract_1B1B0B(
    BuiltInId::refract_1B1B0B,
    BuiltInName::refract,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::refract_1B1B0B,
    EOpRefract,
    true);
constexpr const TFunction kFunction_refract_2B2B0B(
    BuiltInId::refract_2B2B0B,
    BuiltInName::refract,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::refract_2B2B0B,
    EOpRefract,
    true);
constexpr const TFunction kFunction_refract_3B3B0B(
    BuiltInId::refract_3B3B0B,
    BuiltInName::refract,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::refract_3B3B0B,
    EOpRefract,
    true);
constexpr const TFunction kFunction_matrixCompMult_5B5B(
    BuiltInId::matrixCompMult_5B5B,
    BuiltInName::matrixCompMult,
    TExtension::UNDEFINED,
    BuiltInParameters::p5B5B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 2>(),
    BuiltInName::matrixCompMult_5B5B,
    EOpMulMatrixComponentWise,
    true);
constexpr const TFunction kFunction_matrixCompMult_ABAB(
    BuiltInId::matrixCompMult_ABAB,
    BuiltInName::matrixCompMult,
    TExtension::UNDEFINED,
    BuiltInParameters::pABAB,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 3>(),
    BuiltInName::matrixCompMult_ABAB,
    EOpMulMatrixComponentWise,
    true);
constexpr const TFunction kFunction_matrixCompMult_FBFB(
    BuiltInId::matrixCompMult_FBFB,
    BuiltInName::matrixCompMult,
    TExtension::UNDEFINED,
    BuiltInParameters::pFBFB,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 4>(),
    BuiltInName::matrixCompMult_FBFB,
    EOpMulMatrixComponentWise,
    true);
constexpr const TFunction kFunction_matrixCompMult_9B9B(
    BuiltInId::matrixCompMult_9B9B,
    BuiltInName::matrixCompMult,
    TExtension::UNDEFINED,
    BuiltInParameters::p9B9B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 3>(),
    BuiltInName::matrixCompMult_9B9B,
    EOpMulMatrixComponentWise,
    true);
constexpr const TFunction kFunction_matrixCompMult_6B6B(
    BuiltInId::matrixCompMult_6B6B,
    BuiltInName::matrixCompMult,
    TExtension::UNDEFINED,
    BuiltInParameters::p6B6B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 2>(),
    BuiltInName::matrixCompMult_6B6B,
    EOpMulMatrixComponentWise,
    true);
constexpr const TFunction kFunction_matrixCompMult_DBDB(
    BuiltInId::matrixCompMult_DBDB,
    BuiltInName::matrixCompMult,
    TExtension::UNDEFINED,
    BuiltInParameters::pDBDB,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 4>(),
    BuiltInName::matrixCompMult_DBDB,
    EOpMulMatrixComponentWise,
    true);
constexpr const TFunction kFunction_matrixCompMult_7B7B(
    BuiltInId::matrixCompMult_7B7B,
    BuiltInName::matrixCompMult,
    TExtension::UNDEFINED,
    BuiltInParameters::p7B7B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 2>(),
    BuiltInName::matrixCompMult_7B7B,
    EOpMulMatrixComponentWise,
    true);
constexpr const TFunction kFunction_matrixCompMult_EBEB(
    BuiltInId::matrixCompMult_EBEB,
    BuiltInName::matrixCompMult,
    TExtension::UNDEFINED,
    BuiltInParameters::pEBEB,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 4>(),
    BuiltInName::matrixCompMult_EBEB,
    EOpMulMatrixComponentWise,
    true);
constexpr const TFunction kFunction_matrixCompMult_BBBB(
    BuiltInId::matrixCompMult_BBBB,
    BuiltInName::matrixCompMult,
    TExtension::UNDEFINED,
    BuiltInParameters::pBBBB,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 3>(),
    BuiltInName::matrixCompMult_BBBB,
    EOpMulMatrixComponentWise,
    true);
constexpr const TFunction kFunction_outerProduct_1B1B(
    BuiltInId::outerProduct_1B1B,
    BuiltInName::outerProduct,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 2>(),
    BuiltInName::outerProduct_1B1B,
    EOpOuterProduct,
    true);
constexpr const TFunction kFunction_outerProduct_2B2B(
    BuiltInId::outerProduct_2B2B,
    BuiltInName::outerProduct,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 3>(),
    BuiltInName::outerProduct_2B2B,
    EOpOuterProduct,
    true);
constexpr const TFunction kFunction_outerProduct_3B3B(
    BuiltInId::outerProduct_3B3B,
    BuiltInName::outerProduct,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 4>(),
    BuiltInName::outerProduct_3B3B,
    EOpOuterProduct,
    true);
constexpr const TFunction kFunction_outerProduct_2B1B(
    BuiltInId::outerProduct_2B1B,
    BuiltInName::outerProduct,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B1B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 3>(),
    BuiltInName::outerProduct_2B1B,
    EOpOuterProduct,
    true);
constexpr const TFunction kFunction_outerProduct_1B2B(
    BuiltInId::outerProduct_1B2B,
    BuiltInName::outerProduct,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 2>(),
    BuiltInName::outerProduct_1B2B,
    EOpOuterProduct,
    true);
constexpr const TFunction kFunction_outerProduct_3B1B(
    BuiltInId::outerProduct_3B1B,
    BuiltInName::outerProduct,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B1B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 4>(),
    BuiltInName::outerProduct_3B1B,
    EOpOuterProduct,
    true);
constexpr const TFunction kFunction_outerProduct_1B3B(
    BuiltInId::outerProduct_1B3B,
    BuiltInName::outerProduct,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 2>(),
    BuiltInName::outerProduct_1B3B,
    EOpOuterProduct,
    true);
constexpr const TFunction kFunction_outerProduct_3B2B(
    BuiltInId::outerProduct_3B2B,
    BuiltInName::outerProduct,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 4>(),
    BuiltInName::outerProduct_3B2B,
    EOpOuterProduct,
    true);
constexpr const TFunction kFunction_outerProduct_2B3B(
    BuiltInId::outerProduct_2B3B,
    BuiltInName::outerProduct,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 3>(),
    BuiltInName::outerProduct_2B3B,
    EOpOuterProduct,
    true);
constexpr const TFunction kFunction_transpose_5B(
    BuiltInId::transpose_5B,
    BuiltInName::transpose,
    TExtension::UNDEFINED,
    BuiltInParameters::p5B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 2>(),
    BuiltInName::transpose_5B,
    EOpTranspose,
    true);
constexpr const TFunction kFunction_transpose_AB(
    BuiltInId::transpose_AB,
    BuiltInName::transpose,
    TExtension::UNDEFINED,
    BuiltInParameters::pAB,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 3>(),
    BuiltInName::transpose_AB,
    EOpTranspose,
    true);
constexpr const TFunction kFunction_transpose_FB(
    BuiltInId::transpose_FB,
    BuiltInName::transpose,
    TExtension::UNDEFINED,
    BuiltInParameters::pFB,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 4>(),
    BuiltInName::transpose_FB,
    EOpTranspose,
    true);
constexpr const TFunction kFunction_transpose_6B(
    BuiltInId::transpose_6B,
    BuiltInName::transpose,
    TExtension::UNDEFINED,
    BuiltInParameters::p6B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 3>(),
    BuiltInName::transpose_6B,
    EOpTranspose,
    true);
constexpr const TFunction kFunction_transpose_9B(
    BuiltInId::transpose_9B,
    BuiltInName::transpose,
    TExtension::UNDEFINED,
    BuiltInParameters::p9B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 2>(),
    BuiltInName::transpose_9B,
    EOpTranspose,
    true);
constexpr const TFunction kFunction_transpose_7B(
    BuiltInId::transpose_7B,
    BuiltInName::transpose,
    TExtension::UNDEFINED,
    BuiltInParameters::p7B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 4>(),
    BuiltInName::transpose_7B,
    EOpTranspose,
    true);
constexpr const TFunction kFunction_transpose_DB(
    BuiltInId::transpose_DB,
    BuiltInName::transpose,
    TExtension::UNDEFINED,
    BuiltInParameters::pDB,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 2>(),
    BuiltInName::transpose_DB,
    EOpTranspose,
    true);
constexpr const TFunction kFunction_transpose_BB(
    BuiltInId::transpose_BB,
    BuiltInName::transpose,
    TExtension::UNDEFINED,
    BuiltInParameters::pBB,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 4>(),
    BuiltInName::transpose_BB,
    EOpTranspose,
    true);
constexpr const TFunction kFunction_transpose_EB(
    BuiltInId::transpose_EB,
    BuiltInName::transpose,
    TExtension::UNDEFINED,
    BuiltInParameters::pEB,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 3>(),
    BuiltInName::transpose_EB,
    EOpTranspose,
    true);
constexpr const TFunction kFunction_determinant_5B(
    BuiltInId::determinant_5B,
    BuiltInName::determinant,
    TExtension::UNDEFINED,
    BuiltInParameters::p5B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::determinant_5B,
    EOpDeterminant,
    true);
constexpr const TFunction kFunction_determinant_AB(
    BuiltInId::determinant_AB,
    BuiltInName::determinant,
    TExtension::UNDEFINED,
    BuiltInParameters::pAB,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::determinant_AB,
    EOpDeterminant,
    true);
constexpr const TFunction kFunction_determinant_FB(
    BuiltInId::determinant_FB,
    BuiltInName::determinant,
    TExtension::UNDEFINED,
    BuiltInParameters::pFB,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::determinant_FB,
    EOpDeterminant,
    true);
constexpr const TFunction kFunction_inverse_5B(
    BuiltInId::inverse_5B,
    BuiltInName::inverse,
    TExtension::UNDEFINED,
    BuiltInParameters::p5B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 2>(),
    BuiltInName::inverse_5B,
    EOpInverse,
    true);
constexpr const TFunction kFunction_inverse_AB(
    BuiltInId::inverse_AB,
    BuiltInName::inverse,
    TExtension::UNDEFINED,
    BuiltInParameters::pAB,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 3>(),
    BuiltInName::inverse_AB,
    EOpInverse,
    true);
constexpr const TFunction kFunction_inverse_FB(
    BuiltInId::inverse_FB,
    BuiltInName::inverse,
    TExtension::UNDEFINED,
    BuiltInParameters::pFB,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 4>(),
    BuiltInName::inverse_FB,
    EOpInverse,
    true);
constexpr const TFunction kFunction_lessThan_1B1B(
    BuiltInId::lessThan_1B1B,
    BuiltInName::lessThan,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1B,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::lessThan_1B1B,
    EOpLessThanComponentWise,
    true);
constexpr const TFunction kFunction_lessThan_2B2B(
    BuiltInId::lessThan_2B2B,
    BuiltInName::lessThan,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::lessThan_2B2B,
    EOpLessThanComponentWise,
    true);
constexpr const TFunction kFunction_lessThan_3B3B(
    BuiltInId::lessThan_3B3B,
    BuiltInName::lessThan,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3B,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::lessThan_3B3B,
    EOpLessThanComponentWise,
    true);
constexpr const TFunction kFunction_lessThan_1C1C(
    BuiltInId::lessThan_1C1C,
    BuiltInName::lessThan,
    TExtension::UNDEFINED,
    BuiltInParameters::p1C1C,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::lessThan_1C1C,
    EOpLessThanComponentWise,
    true);
constexpr const TFunction kFunction_lessThan_2C2C(
    BuiltInId::lessThan_2C2C,
    BuiltInName::lessThan,
    TExtension::UNDEFINED,
    BuiltInParameters::p2C2C,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::lessThan_2C2C,
    EOpLessThanComponentWise,
    true);
constexpr const TFunction kFunction_lessThan_3C3C(
    BuiltInId::lessThan_3C3C,
    BuiltInName::lessThan,
    TExtension::UNDEFINED,
    BuiltInParameters::p3C3C,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::lessThan_3C3C,
    EOpLessThanComponentWise,
    true);
constexpr const TFunction kFunction_lessThan_1D1D(
    BuiltInId::lessThan_1D1D,
    BuiltInName::lessThan,
    TExtension::UNDEFINED,
    BuiltInParameters::p1D1D,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::lessThan_1D1D,
    EOpLessThanComponentWise,
    true);
constexpr const TFunction kFunction_lessThan_2D2D(
    BuiltInId::lessThan_2D2D,
    BuiltInName::lessThan,
    TExtension::UNDEFINED,
    BuiltInParameters::p2D2D,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::lessThan_2D2D,
    EOpLessThanComponentWise,
    true);
constexpr const TFunction kFunction_lessThan_3D3D(
    BuiltInId::lessThan_3D3D,
    BuiltInName::lessThan,
    TExtension::UNDEFINED,
    BuiltInParameters::p3D3D,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::lessThan_3D3D,
    EOpLessThanComponentWise,
    true);
constexpr const TFunction kFunction_lessThanEqual_1B1B(
    BuiltInId::lessThanEqual_1B1B,
    BuiltInName::lessThanEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1B,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::lessThanEqual_1B1B,
    EOpLessThanEqualComponentWise,
    true);
constexpr const TFunction kFunction_lessThanEqual_2B2B(
    BuiltInId::lessThanEqual_2B2B,
    BuiltInName::lessThanEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::lessThanEqual_2B2B,
    EOpLessThanEqualComponentWise,
    true);
constexpr const TFunction kFunction_lessThanEqual_3B3B(
    BuiltInId::lessThanEqual_3B3B,
    BuiltInName::lessThanEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3B,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::lessThanEqual_3B3B,
    EOpLessThanEqualComponentWise,
    true);
constexpr const TFunction kFunction_lessThanEqual_1C1C(
    BuiltInId::lessThanEqual_1C1C,
    BuiltInName::lessThanEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p1C1C,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::lessThanEqual_1C1C,
    EOpLessThanEqualComponentWise,
    true);
constexpr const TFunction kFunction_lessThanEqual_2C2C(
    BuiltInId::lessThanEqual_2C2C,
    BuiltInName::lessThanEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p2C2C,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::lessThanEqual_2C2C,
    EOpLessThanEqualComponentWise,
    true);
constexpr const TFunction kFunction_lessThanEqual_3C3C(
    BuiltInId::lessThanEqual_3C3C,
    BuiltInName::lessThanEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p3C3C,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::lessThanEqual_3C3C,
    EOpLessThanEqualComponentWise,
    true);
constexpr const TFunction kFunction_lessThanEqual_1D1D(
    BuiltInId::lessThanEqual_1D1D,
    BuiltInName::lessThanEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p1D1D,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::lessThanEqual_1D1D,
    EOpLessThanEqualComponentWise,
    true);
constexpr const TFunction kFunction_lessThanEqual_2D2D(
    BuiltInId::lessThanEqual_2D2D,
    BuiltInName::lessThanEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p2D2D,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::lessThanEqual_2D2D,
    EOpLessThanEqualComponentWise,
    true);
constexpr const TFunction kFunction_lessThanEqual_3D3D(
    BuiltInId::lessThanEqual_3D3D,
    BuiltInName::lessThanEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p3D3D,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::lessThanEqual_3D3D,
    EOpLessThanEqualComponentWise,
    true);
constexpr const TFunction kFunction_greaterThan_1B1B(
    BuiltInId::greaterThan_1B1B,
    BuiltInName::greaterThan,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1B,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::greaterThan_1B1B,
    EOpGreaterThanComponentWise,
    true);
constexpr const TFunction kFunction_greaterThan_2B2B(
    BuiltInId::greaterThan_2B2B,
    BuiltInName::greaterThan,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::greaterThan_2B2B,
    EOpGreaterThanComponentWise,
    true);
constexpr const TFunction kFunction_greaterThan_3B3B(
    BuiltInId::greaterThan_3B3B,
    BuiltInName::greaterThan,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3B,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::greaterThan_3B3B,
    EOpGreaterThanComponentWise,
    true);
constexpr const TFunction kFunction_greaterThan_1C1C(
    BuiltInId::greaterThan_1C1C,
    BuiltInName::greaterThan,
    TExtension::UNDEFINED,
    BuiltInParameters::p1C1C,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::greaterThan_1C1C,
    EOpGreaterThanComponentWise,
    true);
constexpr const TFunction kFunction_greaterThan_2C2C(
    BuiltInId::greaterThan_2C2C,
    BuiltInName::greaterThan,
    TExtension::UNDEFINED,
    BuiltInParameters::p2C2C,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::greaterThan_2C2C,
    EOpGreaterThanComponentWise,
    true);
constexpr const TFunction kFunction_greaterThan_3C3C(
    BuiltInId::greaterThan_3C3C,
    BuiltInName::greaterThan,
    TExtension::UNDEFINED,
    BuiltInParameters::p3C3C,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::greaterThan_3C3C,
    EOpGreaterThanComponentWise,
    true);
constexpr const TFunction kFunction_greaterThan_1D1D(
    BuiltInId::greaterThan_1D1D,
    BuiltInName::greaterThan,
    TExtension::UNDEFINED,
    BuiltInParameters::p1D1D,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::greaterThan_1D1D,
    EOpGreaterThanComponentWise,
    true);
constexpr const TFunction kFunction_greaterThan_2D2D(
    BuiltInId::greaterThan_2D2D,
    BuiltInName::greaterThan,
    TExtension::UNDEFINED,
    BuiltInParameters::p2D2D,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::greaterThan_2D2D,
    EOpGreaterThanComponentWise,
    true);
constexpr const TFunction kFunction_greaterThan_3D3D(
    BuiltInId::greaterThan_3D3D,
    BuiltInName::greaterThan,
    TExtension::UNDEFINED,
    BuiltInParameters::p3D3D,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::greaterThan_3D3D,
    EOpGreaterThanComponentWise,
    true);
constexpr const TFunction kFunction_greaterThanEqual_1B1B(
    BuiltInId::greaterThanEqual_1B1B,
    BuiltInName::greaterThanEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1B,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::greaterThanEqual_1B1B,
    EOpGreaterThanEqualComponentWise,
    true);
constexpr const TFunction kFunction_greaterThanEqual_2B2B(
    BuiltInId::greaterThanEqual_2B2B,
    BuiltInName::greaterThanEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::greaterThanEqual_2B2B,
    EOpGreaterThanEqualComponentWise,
    true);
constexpr const TFunction kFunction_greaterThanEqual_3B3B(
    BuiltInId::greaterThanEqual_3B3B,
    BuiltInName::greaterThanEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3B,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::greaterThanEqual_3B3B,
    EOpGreaterThanEqualComponentWise,
    true);
constexpr const TFunction kFunction_greaterThanEqual_1C1C(
    BuiltInId::greaterThanEqual_1C1C,
    BuiltInName::greaterThanEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p1C1C,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::greaterThanEqual_1C1C,
    EOpGreaterThanEqualComponentWise,
    true);
constexpr const TFunction kFunction_greaterThanEqual_2C2C(
    BuiltInId::greaterThanEqual_2C2C,
    BuiltInName::greaterThanEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p2C2C,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::greaterThanEqual_2C2C,
    EOpGreaterThanEqualComponentWise,
    true);
constexpr const TFunction kFunction_greaterThanEqual_3C3C(
    BuiltInId::greaterThanEqual_3C3C,
    BuiltInName::greaterThanEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p3C3C,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::greaterThanEqual_3C3C,
    EOpGreaterThanEqualComponentWise,
    true);
constexpr const TFunction kFunction_greaterThanEqual_1D1D(
    BuiltInId::greaterThanEqual_1D1D,
    BuiltInName::greaterThanEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p1D1D,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::greaterThanEqual_1D1D,
    EOpGreaterThanEqualComponentWise,
    true);
constexpr const TFunction kFunction_greaterThanEqual_2D2D(
    BuiltInId::greaterThanEqual_2D2D,
    BuiltInName::greaterThanEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p2D2D,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::greaterThanEqual_2D2D,
    EOpGreaterThanEqualComponentWise,
    true);
constexpr const TFunction kFunction_greaterThanEqual_3D3D(
    BuiltInId::greaterThanEqual_3D3D,
    BuiltInName::greaterThanEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p3D3D,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::greaterThanEqual_3D3D,
    EOpGreaterThanEqualComponentWise,
    true);
constexpr const TFunction kFunction_equal_1B1B(
    BuiltInId::equal_1B1B,
    BuiltInName::equal,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1B,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::equal_1B1B,
    EOpEqualComponentWise,
    true);
constexpr const TFunction kFunction_equal_2B2B(
    BuiltInId::equal_2B2B,
    BuiltInName::equal,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::equal_2B2B,
    EOpEqualComponentWise,
    true);
constexpr const TFunction kFunction_equal_3B3B(
    BuiltInId::equal_3B3B,
    BuiltInName::equal,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3B,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::equal_3B3B,
    EOpEqualComponentWise,
    true);
constexpr const TFunction kFunction_equal_1C1C(
    BuiltInId::equal_1C1C,
    BuiltInName::equal,
    TExtension::UNDEFINED,
    BuiltInParameters::p1C1C,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::equal_1C1C,
    EOpEqualComponentWise,
    true);
constexpr const TFunction kFunction_equal_2C2C(
    BuiltInId::equal_2C2C,
    BuiltInName::equal,
    TExtension::UNDEFINED,
    BuiltInParameters::p2C2C,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::equal_2C2C,
    EOpEqualComponentWise,
    true);
constexpr const TFunction kFunction_equal_3C3C(
    BuiltInId::equal_3C3C,
    BuiltInName::equal,
    TExtension::UNDEFINED,
    BuiltInParameters::p3C3C,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::equal_3C3C,
    EOpEqualComponentWise,
    true);
constexpr const TFunction kFunction_equal_1D1D(
    BuiltInId::equal_1D1D,
    BuiltInName::equal,
    TExtension::UNDEFINED,
    BuiltInParameters::p1D1D,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::equal_1D1D,
    EOpEqualComponentWise,
    true);
constexpr const TFunction kFunction_equal_2D2D(
    BuiltInId::equal_2D2D,
    BuiltInName::equal,
    TExtension::UNDEFINED,
    BuiltInParameters::p2D2D,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::equal_2D2D,
    EOpEqualComponentWise,
    true);
constexpr const TFunction kFunction_equal_3D3D(
    BuiltInId::equal_3D3D,
    BuiltInName::equal,
    TExtension::UNDEFINED,
    BuiltInParameters::p3D3D,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::equal_3D3D,
    EOpEqualComponentWise,
    true);
constexpr const TFunction kFunction_equal_1E1E(
    BuiltInId::equal_1E1E,
    BuiltInName::equal,
    TExtension::UNDEFINED,
    BuiltInParameters::p1E1E,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::equal_1E1E,
    EOpEqualComponentWise,
    true);
constexpr const TFunction kFunction_equal_2E2E(
    BuiltInId::equal_2E2E,
    BuiltInName::equal,
    TExtension::UNDEFINED,
    BuiltInParameters::p2E2E,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::equal_2E2E,
    EOpEqualComponentWise,
    true);
constexpr const TFunction kFunction_equal_3E3E(
    BuiltInId::equal_3E3E,
    BuiltInName::equal,
    TExtension::UNDEFINED,
    BuiltInParameters::p3E3E,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::equal_3E3E,
    EOpEqualComponentWise,
    true);
constexpr const TFunction kFunction_notEqual_1B1B(
    BuiltInId::notEqual_1B1B,
    BuiltInName::notEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B1B,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::notEqual_1B1B,
    EOpNotEqualComponentWise,
    true);
constexpr const TFunction kFunction_notEqual_2B2B(
    BuiltInId::notEqual_2B2B,
    BuiltInName::notEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B2B,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::notEqual_2B2B,
    EOpNotEqualComponentWise,
    true);
constexpr const TFunction kFunction_notEqual_3B3B(
    BuiltInId::notEqual_3B3B,
    BuiltInName::notEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B3B,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::notEqual_3B3B,
    EOpNotEqualComponentWise,
    true);
constexpr const TFunction kFunction_notEqual_1C1C(
    BuiltInId::notEqual_1C1C,
    BuiltInName::notEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p1C1C,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::notEqual_1C1C,
    EOpNotEqualComponentWise,
    true);
constexpr const TFunction kFunction_notEqual_2C2C(
    BuiltInId::notEqual_2C2C,
    BuiltInName::notEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p2C2C,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::notEqual_2C2C,
    EOpNotEqualComponentWise,
    true);
constexpr const TFunction kFunction_notEqual_3C3C(
    BuiltInId::notEqual_3C3C,
    BuiltInName::notEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p3C3C,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::notEqual_3C3C,
    EOpNotEqualComponentWise,
    true);
constexpr const TFunction kFunction_notEqual_1D1D(
    BuiltInId::notEqual_1D1D,
    BuiltInName::notEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p1D1D,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::notEqual_1D1D,
    EOpNotEqualComponentWise,
    true);
constexpr const TFunction kFunction_notEqual_2D2D(
    BuiltInId::notEqual_2D2D,
    BuiltInName::notEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p2D2D,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::notEqual_2D2D,
    EOpNotEqualComponentWise,
    true);
constexpr const TFunction kFunction_notEqual_3D3D(
    BuiltInId::notEqual_3D3D,
    BuiltInName::notEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p3D3D,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::notEqual_3D3D,
    EOpNotEqualComponentWise,
    true);
constexpr const TFunction kFunction_notEqual_1E1E(
    BuiltInId::notEqual_1E1E,
    BuiltInName::notEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p1E1E,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::notEqual_1E1E,
    EOpNotEqualComponentWise,
    true);
constexpr const TFunction kFunction_notEqual_2E2E(
    BuiltInId::notEqual_2E2E,
    BuiltInName::notEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p2E2E,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::notEqual_2E2E,
    EOpNotEqualComponentWise,
    true);
constexpr const TFunction kFunction_notEqual_3E3E(
    BuiltInId::notEqual_3E3E,
    BuiltInName::notEqual,
    TExtension::UNDEFINED,
    BuiltInParameters::p3E3E,
    2,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::notEqual_3E3E,
    EOpNotEqualComponentWise,
    true);
constexpr const TFunction kFunction_any_1E(
    BuiltInId::any_1E,
    BuiltInName::any,
    TExtension::UNDEFINED,
    BuiltInParameters::p1E,
    1,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::any_1E,
    EOpAny,
    true);
constexpr const TFunction kFunction_any_2E(
    BuiltInId::any_2E,
    BuiltInName::any,
    TExtension::UNDEFINED,
    BuiltInParameters::p2E,
    1,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::any_2E,
    EOpAny,
    true);
constexpr const TFunction kFunction_any_3E(
    BuiltInId::any_3E,
    BuiltInName::any,
    TExtension::UNDEFINED,
    BuiltInParameters::p3E,
    1,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::any_3E,
    EOpAny,
    true);
constexpr const TFunction kFunction_all_1E(
    BuiltInId::all_1E,
    BuiltInName::all,
    TExtension::UNDEFINED,
    BuiltInParameters::p1E,
    1,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::all_1E,
    EOpAll,
    true);
constexpr const TFunction kFunction_all_2E(
    BuiltInId::all_2E,
    BuiltInName::all,
    TExtension::UNDEFINED,
    BuiltInParameters::p2E,
    1,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::all_2E,
    EOpAll,
    true);
constexpr const TFunction kFunction_all_3E(
    BuiltInId::all_3E,
    BuiltInName::all,
    TExtension::UNDEFINED,
    BuiltInParameters::p3E,
    1,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::all_3E,
    EOpAll,
    true);
constexpr const TFunction kFunction_notFunc_1E(
    BuiltInId::notFunc_1E,
    BuiltInName::notFunc,
    TExtension::UNDEFINED,
    BuiltInParameters::p1E,
    1,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::notFunc_1E,
    EOpLogicalNotComponentWise,
    true);
constexpr const TFunction kFunction_notFunc_2E(
    BuiltInId::notFunc_2E,
    BuiltInName::notFunc,
    TExtension::UNDEFINED,
    BuiltInParameters::p2E,
    1,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::notFunc_2E,
    EOpLogicalNotComponentWise,
    true);
constexpr const TFunction kFunction_notFunc_3E(
    BuiltInId::notFunc_3E,
    BuiltInName::notFunc,
    TExtension::UNDEFINED,
    BuiltInParameters::p3E,
    1,
    StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::notFunc_3E,
    EOpLogicalNotComponentWise,
    true);
constexpr const TFunction kFunction_bitfieldExtract_0C0C0C(
    BuiltInId::bitfieldExtract_0C0C0C,
    BuiltInName::bitfieldExtract,
    TExtension::UNDEFINED,
    BuiltInParameters::p0C0C0C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::bitfieldExtract_0C0C0C,
    EOpBitfieldExtract,
    true);
constexpr const TFunction kFunction_bitfieldExtract_1C0C0C(
    BuiltInId::bitfieldExtract_1C0C0C,
    BuiltInName::bitfieldExtract,
    TExtension::UNDEFINED,
    BuiltInParameters::p1C0C0C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::bitfieldExtract_1C0C0C,
    EOpBitfieldExtract,
    true);
constexpr const TFunction kFunction_bitfieldExtract_2C0C0C(
    BuiltInId::bitfieldExtract_2C0C0C,
    BuiltInName::bitfieldExtract,
    TExtension::UNDEFINED,
    BuiltInParameters::p2C0C0C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::bitfieldExtract_2C0C0C,
    EOpBitfieldExtract,
    true);
constexpr const TFunction kFunction_bitfieldExtract_3C0C0C(
    BuiltInId::bitfieldExtract_3C0C0C,
    BuiltInName::bitfieldExtract,
    TExtension::UNDEFINED,
    BuiltInParameters::p3C0C0C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::bitfieldExtract_3C0C0C,
    EOpBitfieldExtract,
    true);
constexpr const TFunction kFunction_bitfieldExtract_0D0C0C(
    BuiltInId::bitfieldExtract_0D0C0C,
    BuiltInName::bitfieldExtract,
    TExtension::UNDEFINED,
    BuiltInParameters::p0D0C0C,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::bitfieldExtract_0D0C0C,
    EOpBitfieldExtract,
    true);
constexpr const TFunction kFunction_bitfieldExtract_1D0C0C(
    BuiltInId::bitfieldExtract_1D0C0C,
    BuiltInName::bitfieldExtract,
    TExtension::UNDEFINED,
    BuiltInParameters::p1D0C0C,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::bitfieldExtract_1D0C0C,
    EOpBitfieldExtract,
    true);
constexpr const TFunction kFunction_bitfieldExtract_2D0C0C(
    BuiltInId::bitfieldExtract_2D0C0C,
    BuiltInName::bitfieldExtract,
    TExtension::UNDEFINED,
    BuiltInParameters::p2D0C0C,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::bitfieldExtract_2D0C0C,
    EOpBitfieldExtract,
    true);
constexpr const TFunction kFunction_bitfieldExtract_3D0C0C(
    BuiltInId::bitfieldExtract_3D0C0C,
    BuiltInName::bitfieldExtract,
    TExtension::UNDEFINED,
    BuiltInParameters::p3D0C0C,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::bitfieldExtract_3D0C0C,
    EOpBitfieldExtract,
    true);
constexpr const TFunction kFunction_bitfieldInsert_0C0C0C0C(
    BuiltInId::bitfieldInsert_0C0C0C0C,
    BuiltInName::bitfieldInsert,
    TExtension::UNDEFINED,
    BuiltInParameters::p0C0C0C0C,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::bitfieldInsert_0C0C0C0C,
    EOpBitfieldInsert,
    true);
constexpr const TFunction kFunction_bitfieldInsert_1C1C0C0C(
    BuiltInId::bitfieldInsert_1C1C0C0C,
    BuiltInName::bitfieldInsert,
    TExtension::UNDEFINED,
    BuiltInParameters::p1C1C0C0C,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::bitfieldInsert_1C1C0C0C,
    EOpBitfieldInsert,
    true);
constexpr const TFunction kFunction_bitfieldInsert_2C2C0C0C(
    BuiltInId::bitfieldInsert_2C2C0C0C,
    BuiltInName::bitfieldInsert,
    TExtension::UNDEFINED,
    BuiltInParameters::p2C2C0C0C,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::bitfieldInsert_2C2C0C0C,
    EOpBitfieldInsert,
    true);
constexpr const TFunction kFunction_bitfieldInsert_3C3C0C0C(
    BuiltInId::bitfieldInsert_3C3C0C0C,
    BuiltInName::bitfieldInsert,
    TExtension::UNDEFINED,
    BuiltInParameters::p3C3C0C0C,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::bitfieldInsert_3C3C0C0C,
    EOpBitfieldInsert,
    true);
constexpr const TFunction kFunction_bitfieldInsert_0D0D0C0C(
    BuiltInId::bitfieldInsert_0D0D0C0C,
    BuiltInName::bitfieldInsert,
    TExtension::UNDEFINED,
    BuiltInParameters::p0D0D0C0C,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::bitfieldInsert_0D0D0C0C,
    EOpBitfieldInsert,
    true);
constexpr const TFunction kFunction_bitfieldInsert_1D1D0C0C(
    BuiltInId::bitfieldInsert_1D1D0C0C,
    BuiltInName::bitfieldInsert,
    TExtension::UNDEFINED,
    BuiltInParameters::p1D1D0C0C,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::bitfieldInsert_1D1D0C0C,
    EOpBitfieldInsert,
    true);
constexpr const TFunction kFunction_bitfieldInsert_2D2D0C0C(
    BuiltInId::bitfieldInsert_2D2D0C0C,
    BuiltInName::bitfieldInsert,
    TExtension::UNDEFINED,
    BuiltInParameters::p2D2D0C0C,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::bitfieldInsert_2D2D0C0C,
    EOpBitfieldInsert,
    true);
constexpr const TFunction kFunction_bitfieldInsert_3D3D0C0C(
    BuiltInId::bitfieldInsert_3D3D0C0C,
    BuiltInName::bitfieldInsert,
    TExtension::UNDEFINED,
    BuiltInParameters::p3D3D0C0C,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::bitfieldInsert_3D3D0C0C,
    EOpBitfieldInsert,
    true);
constexpr const TFunction kFunction_bitfieldReverse_0C(
    BuiltInId::bitfieldReverse_0C,
    BuiltInName::bitfieldReverse,
    TExtension::UNDEFINED,
    BuiltInParameters::p0C,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::bitfieldReverse_0C,
    EOpBitfieldReverse,
    true);
constexpr const TFunction kFunction_bitfieldReverse_1C(
    BuiltInId::bitfieldReverse_1C,
    BuiltInName::bitfieldReverse,
    TExtension::UNDEFINED,
    BuiltInParameters::p1C,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::bitfieldReverse_1C,
    EOpBitfieldReverse,
    true);
constexpr const TFunction kFunction_bitfieldReverse_2C(
    BuiltInId::bitfieldReverse_2C,
    BuiltInName::bitfieldReverse,
    TExtension::UNDEFINED,
    BuiltInParameters::p2C,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::bitfieldReverse_2C,
    EOpBitfieldReverse,
    true);
constexpr const TFunction kFunction_bitfieldReverse_3C(
    BuiltInId::bitfieldReverse_3C,
    BuiltInName::bitfieldReverse,
    TExtension::UNDEFINED,
    BuiltInParameters::p3C,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::bitfieldReverse_3C,
    EOpBitfieldReverse,
    true);
constexpr const TFunction kFunction_bitfieldReverse_0D(
    BuiltInId::bitfieldReverse_0D,
    BuiltInName::bitfieldReverse,
    TExtension::UNDEFINED,
    BuiltInParameters::p0D,
    1,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::bitfieldReverse_0D,
    EOpBitfieldReverse,
    true);
constexpr const TFunction kFunction_bitfieldReverse_1D(
    BuiltInId::bitfieldReverse_1D,
    BuiltInName::bitfieldReverse,
    TExtension::UNDEFINED,
    BuiltInParameters::p1D,
    1,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::bitfieldReverse_1D,
    EOpBitfieldReverse,
    true);
constexpr const TFunction kFunction_bitfieldReverse_2D(
    BuiltInId::bitfieldReverse_2D,
    BuiltInName::bitfieldReverse,
    TExtension::UNDEFINED,
    BuiltInParameters::p2D,
    1,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::bitfieldReverse_2D,
    EOpBitfieldReverse,
    true);
constexpr const TFunction kFunction_bitfieldReverse_3D(
    BuiltInId::bitfieldReverse_3D,
    BuiltInName::bitfieldReverse,
    TExtension::UNDEFINED,
    BuiltInParameters::p3D,
    1,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::bitfieldReverse_3D,
    EOpBitfieldReverse,
    true);
constexpr const TFunction kFunction_bitCount_0C(
    BuiltInId::bitCount_0C,
    BuiltInName::bitCount,
    TExtension::UNDEFINED,
    BuiltInParameters::p0C,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::bitCount_0C,
    EOpBitCount,
    true);
constexpr const TFunction kFunction_bitCount_1C(
    BuiltInId::bitCount_1C,
    BuiltInName::bitCount,
    TExtension::UNDEFINED,
    BuiltInParameters::p1C,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::bitCount_1C,
    EOpBitCount,
    true);
constexpr const TFunction kFunction_bitCount_2C(
    BuiltInId::bitCount_2C,
    BuiltInName::bitCount,
    TExtension::UNDEFINED,
    BuiltInParameters::p2C,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::bitCount_2C,
    EOpBitCount,
    true);
constexpr const TFunction kFunction_bitCount_3C(
    BuiltInId::bitCount_3C,
    BuiltInName::bitCount,
    TExtension::UNDEFINED,
    BuiltInParameters::p3C,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::bitCount_3C,
    EOpBitCount,
    true);
constexpr const TFunction kFunction_bitCount_0D(
    BuiltInId::bitCount_0D,
    BuiltInName::bitCount,
    TExtension::UNDEFINED,
    BuiltInParameters::p0D,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::bitCount_0D,
    EOpBitCount,
    true);
constexpr const TFunction kFunction_bitCount_1D(
    BuiltInId::bitCount_1D,
    BuiltInName::bitCount,
    TExtension::UNDEFINED,
    BuiltInParameters::p1D,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::bitCount_1D,
    EOpBitCount,
    true);
constexpr const TFunction kFunction_bitCount_2D(
    BuiltInId::bitCount_2D,
    BuiltInName::bitCount,
    TExtension::UNDEFINED,
    BuiltInParameters::p2D,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::bitCount_2D,
    EOpBitCount,
    true);
constexpr const TFunction kFunction_bitCount_3D(
    BuiltInId::bitCount_3D,
    BuiltInName::bitCount,
    TExtension::UNDEFINED,
    BuiltInParameters::p3D,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::bitCount_3D,
    EOpBitCount,
    true);
constexpr const TFunction kFunction_findLSB_0C(
    BuiltInId::findLSB_0C,
    BuiltInName::findLSB,
    TExtension::UNDEFINED,
    BuiltInParameters::p0C,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::findLSB_0C,
    EOpFindLSB,
    true);
constexpr const TFunction kFunction_findLSB_1C(
    BuiltInId::findLSB_1C,
    BuiltInName::findLSB,
    TExtension::UNDEFINED,
    BuiltInParameters::p1C,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::findLSB_1C,
    EOpFindLSB,
    true);
constexpr const TFunction kFunction_findLSB_2C(
    BuiltInId::findLSB_2C,
    BuiltInName::findLSB,
    TExtension::UNDEFINED,
    BuiltInParameters::p2C,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::findLSB_2C,
    EOpFindLSB,
    true);
constexpr const TFunction kFunction_findLSB_3C(
    BuiltInId::findLSB_3C,
    BuiltInName::findLSB,
    TExtension::UNDEFINED,
    BuiltInParameters::p3C,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::findLSB_3C,
    EOpFindLSB,
    true);
constexpr const TFunction kFunction_findLSB_0D(
    BuiltInId::findLSB_0D,
    BuiltInName::findLSB,
    TExtension::UNDEFINED,
    BuiltInParameters::p0D,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::findLSB_0D,
    EOpFindLSB,
    true);
constexpr const TFunction kFunction_findLSB_1D(
    BuiltInId::findLSB_1D,
    BuiltInName::findLSB,
    TExtension::UNDEFINED,
    BuiltInParameters::p1D,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::findLSB_1D,
    EOpFindLSB,
    true);
constexpr const TFunction kFunction_findLSB_2D(
    BuiltInId::findLSB_2D,
    BuiltInName::findLSB,
    TExtension::UNDEFINED,
    BuiltInParameters::p2D,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::findLSB_2D,
    EOpFindLSB,
    true);
constexpr const TFunction kFunction_findLSB_3D(
    BuiltInId::findLSB_3D,
    BuiltInName::findLSB,
    TExtension::UNDEFINED,
    BuiltInParameters::p3D,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::findLSB_3D,
    EOpFindLSB,
    true);
constexpr const TFunction kFunction_findMSB_0C(
    BuiltInId::findMSB_0C,
    BuiltInName::findMSB,
    TExtension::UNDEFINED,
    BuiltInParameters::p0C,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::findMSB_0C,
    EOpFindMSB,
    true);
constexpr const TFunction kFunction_findMSB_1C(
    BuiltInId::findMSB_1C,
    BuiltInName::findMSB,
    TExtension::UNDEFINED,
    BuiltInParameters::p1C,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::findMSB_1C,
    EOpFindMSB,
    true);
constexpr const TFunction kFunction_findMSB_2C(
    BuiltInId::findMSB_2C,
    BuiltInName::findMSB,
    TExtension::UNDEFINED,
    BuiltInParameters::p2C,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::findMSB_2C,
    EOpFindMSB,
    true);
constexpr const TFunction kFunction_findMSB_3C(
    BuiltInId::findMSB_3C,
    BuiltInName::findMSB,
    TExtension::UNDEFINED,
    BuiltInParameters::p3C,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::findMSB_3C,
    EOpFindMSB,
    true);
constexpr const TFunction kFunction_findMSB_0D(
    BuiltInId::findMSB_0D,
    BuiltInName::findMSB,
    TExtension::UNDEFINED,
    BuiltInParameters::p0D,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::findMSB_0D,
    EOpFindMSB,
    true);
constexpr const TFunction kFunction_findMSB_1D(
    BuiltInId::findMSB_1D,
    BuiltInName::findMSB,
    TExtension::UNDEFINED,
    BuiltInParameters::p1D,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::findMSB_1D,
    EOpFindMSB,
    true);
constexpr const TFunction kFunction_findMSB_2D(
    BuiltInId::findMSB_2D,
    BuiltInName::findMSB,
    TExtension::UNDEFINED,
    BuiltInParameters::p2D,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::findMSB_2D,
    EOpFindMSB,
    true);
constexpr const TFunction kFunction_findMSB_3D(
    BuiltInId::findMSB_3D,
    BuiltInName::findMSB,
    TExtension::UNDEFINED,
    BuiltInParameters::p3D,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::findMSB_3D,
    EOpFindMSB,
    true);
constexpr const TFunction kFunction_uaddCarry_0D0D0D(
    BuiltInId::uaddCarry_0D0D0D,
    BuiltInName::uaddCarry,
    TExtension::UNDEFINED,
    BuiltInParameters::p0D0D_o_0D,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::uaddCarry_0D0D0D,
    EOpUaddCarry,
    false);
constexpr const TFunction kFunction_uaddCarry_1D1D1D(
    BuiltInId::uaddCarry_1D1D1D,
    BuiltInName::uaddCarry,
    TExtension::UNDEFINED,
    BuiltInParameters::p1D1D_o_1D,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::uaddCarry_1D1D1D,
    EOpUaddCarry,
    false);
constexpr const TFunction kFunction_uaddCarry_2D2D2D(
    BuiltInId::uaddCarry_2D2D2D,
    BuiltInName::uaddCarry,
    TExtension::UNDEFINED,
    BuiltInParameters::p2D2D_o_2D,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::uaddCarry_2D2D2D,
    EOpUaddCarry,
    false);
constexpr const TFunction kFunction_uaddCarry_3D3D3D(
    BuiltInId::uaddCarry_3D3D3D,
    BuiltInName::uaddCarry,
    TExtension::UNDEFINED,
    BuiltInParameters::p3D3D_o_3D,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::uaddCarry_3D3D3D,
    EOpUaddCarry,
    false);
constexpr const TFunction kFunction_usubBorrow_0D0D0D(
    BuiltInId::usubBorrow_0D0D0D,
    BuiltInName::usubBorrow,
    TExtension::UNDEFINED,
    BuiltInParameters::p0D0D_o_0D,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::usubBorrow_0D0D0D,
    EOpUsubBorrow,
    false);
constexpr const TFunction kFunction_usubBorrow_1D1D1D(
    BuiltInId::usubBorrow_1D1D1D,
    BuiltInName::usubBorrow,
    TExtension::UNDEFINED,
    BuiltInParameters::p1D1D_o_1D,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::usubBorrow_1D1D1D,
    EOpUsubBorrow,
    false);
constexpr const TFunction kFunction_usubBorrow_2D2D2D(
    BuiltInId::usubBorrow_2D2D2D,
    BuiltInName::usubBorrow,
    TExtension::UNDEFINED,
    BuiltInParameters::p2D2D_o_2D,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::usubBorrow_2D2D2D,
    EOpUsubBorrow,
    false);
constexpr const TFunction kFunction_usubBorrow_3D3D3D(
    BuiltInId::usubBorrow_3D3D3D,
    BuiltInName::usubBorrow,
    TExtension::UNDEFINED,
    BuiltInParameters::p3D3D_o_3D,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::usubBorrow_3D3D3D,
    EOpUsubBorrow,
    false);
constexpr const TFunction kFunction_umulExtended_0D0D0D0D(
    BuiltInId::umulExtended_0D0D0D0D,
    BuiltInName::umulExtended,
    TExtension::UNDEFINED,
    BuiltInParameters::p0D0D_o_0D_o_0D,
    4,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::umulExtended_0D0D0D0D,
    EOpUmulExtended,
    false);
constexpr const TFunction kFunction_umulExtended_1D1D1D1D(
    BuiltInId::umulExtended_1D1D1D1D,
    BuiltInName::umulExtended,
    TExtension::UNDEFINED,
    BuiltInParameters::p1D1D_o_1D_o_1D,
    4,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::umulExtended_1D1D1D1D,
    EOpUmulExtended,
    false);
constexpr const TFunction kFunction_umulExtended_2D2D2D2D(
    BuiltInId::umulExtended_2D2D2D2D,
    BuiltInName::umulExtended,
    TExtension::UNDEFINED,
    BuiltInParameters::p2D2D_o_2D_o_2D,
    4,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::umulExtended_2D2D2D2D,
    EOpUmulExtended,
    false);
constexpr const TFunction kFunction_umulExtended_3D3D3D3D(
    BuiltInId::umulExtended_3D3D3D3D,
    BuiltInName::umulExtended,
    TExtension::UNDEFINED,
    BuiltInParameters::p3D3D_o_3D_o_3D,
    4,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::umulExtended_3D3D3D3D,
    EOpUmulExtended,
    false);
constexpr const TFunction kFunction_imulExtended_0C0C0C0C(
    BuiltInId::imulExtended_0C0C0C0C,
    BuiltInName::imulExtended,
    TExtension::UNDEFINED,
    BuiltInParameters::p0C0C_o_0C_o_0C,
    4,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::imulExtended_0C0C0C0C,
    EOpImulExtended,
    false);
constexpr const TFunction kFunction_imulExtended_1C1C1C1C(
    BuiltInId::imulExtended_1C1C1C1C,
    BuiltInName::imulExtended,
    TExtension::UNDEFINED,
    BuiltInParameters::p1C1C_o_1C_o_1C,
    4,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::imulExtended_1C1C1C1C,
    EOpImulExtended,
    false);
constexpr const TFunction kFunction_imulExtended_2C2C2C2C(
    BuiltInId::imulExtended_2C2C2C2C,
    BuiltInName::imulExtended,
    TExtension::UNDEFINED,
    BuiltInParameters::p2C2C_o_2C_o_2C,
    4,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::imulExtended_2C2C2C2C,
    EOpImulExtended,
    false);
constexpr const TFunction kFunction_imulExtended_3C3C3C3C(
    BuiltInId::imulExtended_3C3C3C3C,
    BuiltInName::imulExtended,
    TExtension::UNDEFINED,
    BuiltInParameters::p3C3C_o_3C_o_3C,
    4,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::imulExtended_3C3C3C3C,
    EOpImulExtended,
    false);
constexpr const TFunction kFunction_texture2D_0H1B(
    BuiltInId::texture2D_0H1B,
    BuiltInName::texture2D,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H1B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture2D_0H1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture2DProj_0H2B(
    BuiltInId::texture2DProj_0H2B,
    BuiltInName::texture2DProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture2DProj_0H2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture2DProj_0H3B(
    BuiltInId::texture2DProj_0H3B,
    BuiltInName::texture2DProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture2DProj_0H3B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureCube_0J2B(
    BuiltInId::textureCube_0J2B,
    BuiltInName::textureCube,
    TExtension::UNDEFINED,
    BuiltInParameters::p0J2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureCube_0J2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture2D_0L1B(
    BuiltInId::texture2D_0L1B,
    BuiltInName::texture2D,
    TExtension::UNDEFINED,
    BuiltInParameters::p0L1B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture2D_0L1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture2DProj_0L2B(
    BuiltInId::texture2DProj_0L2B,
    BuiltInName::texture2DProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0L2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture2DProj_0L2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture2DProj_0L3B(
    BuiltInId::texture2DProj_0L3B,
    BuiltInName::texture2DProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0L3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture2DProj_0L3B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture2DRect_0N1B(
    BuiltInId::texture2DRect_0N1B,
    BuiltInName::texture2DRect,
    TExtension::ARB_texture_rectangle,
    BuiltInParameters::p0N1B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture2DRect_0N1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture2DRectProj_0N2B(
    BuiltInId::texture2DRectProj_0N2B,
    BuiltInName::texture2DRectProj,
    TExtension::ARB_texture_rectangle,
    BuiltInParameters::p0N2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture2DRectProj_0N2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture2DRectProj_0N3B(
    BuiltInId::texture2DRectProj_0N3B,
    BuiltInName::texture2DRectProj,
    TExtension::ARB_texture_rectangle,
    BuiltInParameters::p0N3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture2DRectProj_0N3B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0N1B(
    BuiltInId::texture_0N1B,
    BuiltInName::texture,
    TExtension::ARB_texture_rectangle,
    BuiltInParameters::p0N1B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0N1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0N2B(
    BuiltInId::textureProj_0N2B,
    BuiltInName::textureProj,
    TExtension::ARB_texture_rectangle,
    BuiltInParameters::p0N2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0N2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0N3B(
    BuiltInId::textureProj_0N3B,
    BuiltInName::textureProj,
    TExtension::ARB_texture_rectangle,
    BuiltInParameters::p0N3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0N3B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture2DGradEXT_0H1B1B1B(
    BuiltInId::texture2DGradEXT_0H1B1B1B,
    BuiltInName::texture2DGradEXT,
    TExtension::EXT_shader_texture_lod,
    BuiltInParameters::p0H1B1B1B,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture2DGradEXT_0H1B1B1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture2DProjGradEXT_0H2B1B1B(
    BuiltInId::texture2DProjGradEXT_0H2B1B1B,
    BuiltInName::texture2DProjGradEXT,
    TExtension::EXT_shader_texture_lod,
    BuiltInParameters::p0H2B1B1B,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture2DProjGradEXT_0H2B1B1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture2DProjGradEXT_0H3B1B1B(
    BuiltInId::texture2DProjGradEXT_0H3B1B1B,
    BuiltInName::texture2DProjGradEXT,
    TExtension::EXT_shader_texture_lod,
    BuiltInParameters::p0H3B1B1B,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture2DProjGradEXT_0H3B1B1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureCubeGradEXT_0J2B2B2B(
    BuiltInId::textureCubeGradEXT_0J2B2B2B,
    BuiltInName::textureCubeGradEXT,
    TExtension::EXT_shader_texture_lod,
    BuiltInParameters::p0J2B2B2B,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureCubeGradEXT_0J2B2B2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture2D_0H1B0B(
    BuiltInId::texture2D_0H1B0B,
    BuiltInName::texture2D,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H1B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture2D_0H1B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture2DProj_0H2B0B(
    BuiltInId::texture2DProj_0H2B0B,
    BuiltInName::texture2DProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H2B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture2DProj_0H2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture2DProj_0H3B0B(
    BuiltInId::texture2DProj_0H3B0B,
    BuiltInName::texture2DProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H3B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture2DProj_0H3B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureCube_0J2B0B(
    BuiltInId::textureCube_0J2B0B,
    BuiltInName::textureCube,
    TExtension::UNDEFINED,
    BuiltInParameters::p0J2B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureCube_0J2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_dFdxExt_0B(
    BuiltInId::dFdxExt_0B,
    BuiltInName::dFdxExt,
    TExtension::OES_standard_derivatives,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::dFdxExt_0B,
    EOpDFdx,
    false);
constexpr const TFunction kFunction_dFdxExt_1B(
    BuiltInId::dFdxExt_1B,
    BuiltInName::dFdxExt,
    TExtension::OES_standard_derivatives,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::dFdxExt_1B,
    EOpDFdx,
    false);
constexpr const TFunction kFunction_dFdxExt_2B(
    BuiltInId::dFdxExt_2B,
    BuiltInName::dFdxExt,
    TExtension::OES_standard_derivatives,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::dFdxExt_2B,
    EOpDFdx,
    false);
constexpr const TFunction kFunction_dFdxExt_3B(
    BuiltInId::dFdxExt_3B,
    BuiltInName::dFdxExt,
    TExtension::OES_standard_derivatives,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::dFdxExt_3B,
    EOpDFdx,
    false);
constexpr const TFunction kFunction_dFdyExt_0B(
    BuiltInId::dFdyExt_0B,
    BuiltInName::dFdyExt,
    TExtension::OES_standard_derivatives,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::dFdyExt_0B,
    EOpDFdy,
    false);
constexpr const TFunction kFunction_dFdyExt_1B(
    BuiltInId::dFdyExt_1B,
    BuiltInName::dFdyExt,
    TExtension::OES_standard_derivatives,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::dFdyExt_1B,
    EOpDFdy,
    false);
constexpr const TFunction kFunction_dFdyExt_2B(
    BuiltInId::dFdyExt_2B,
    BuiltInName::dFdyExt,
    TExtension::OES_standard_derivatives,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::dFdyExt_2B,
    EOpDFdy,
    false);
constexpr const TFunction kFunction_dFdyExt_3B(
    BuiltInId::dFdyExt_3B,
    BuiltInName::dFdyExt,
    TExtension::OES_standard_derivatives,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::dFdyExt_3B,
    EOpDFdy,
    false);
constexpr const TFunction kFunction_fwidthExt_0B(
    BuiltInId::fwidthExt_0B,
    BuiltInName::fwidthExt,
    TExtension::OES_standard_derivatives,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::fwidthExt_0B,
    EOpFwidth,
    false);
constexpr const TFunction kFunction_fwidthExt_1B(
    BuiltInId::fwidthExt_1B,
    BuiltInName::fwidthExt,
    TExtension::OES_standard_derivatives,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::fwidthExt_1B,
    EOpFwidth,
    false);
constexpr const TFunction kFunction_fwidthExt_2B(
    BuiltInId::fwidthExt_2B,
    BuiltInName::fwidthExt,
    TExtension::OES_standard_derivatives,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::fwidthExt_2B,
    EOpFwidth,
    false);
constexpr const TFunction kFunction_fwidthExt_3B(
    BuiltInId::fwidthExt_3B,
    BuiltInName::fwidthExt,
    TExtension::OES_standard_derivatives,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::fwidthExt_3B,
    EOpFwidth,
    false);
constexpr const TFunction kFunction_texture2DLodEXT_0H1B0B(
    BuiltInId::texture2DLodEXT_0H1B0B,
    BuiltInName::texture2DLodEXT,
    TExtension::EXT_shader_texture_lod,
    BuiltInParameters::p0H1B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture2DLodEXT_0H1B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture2DProjLodEXT_0H2B0B(
    BuiltInId::texture2DProjLodEXT_0H2B0B,
    BuiltInName::texture2DProjLodEXT,
    TExtension::EXT_shader_texture_lod,
    BuiltInParameters::p0H2B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture2DProjLodEXT_0H2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture2DProjLodEXT_0H3B0B(
    BuiltInId::texture2DProjLodEXT_0H3B0B,
    BuiltInName::texture2DProjLodEXT,
    TExtension::EXT_shader_texture_lod,
    BuiltInParameters::p0H3B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture2DProjLodEXT_0H3B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureCubeLodEXT_0J2B0B(
    BuiltInId::textureCubeLodEXT_0J2B0B,
    BuiltInName::textureCubeLodEXT,
    TExtension::EXT_shader_texture_lod,
    BuiltInParameters::p0J2B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureCubeLodEXT_0J2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture2DLod_0H1B0B(
    BuiltInId::texture2DLod_0H1B0B,
    BuiltInName::texture2DLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H1B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture2DLod_0H1B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture2DProjLod_0H2B0B(
    BuiltInId::texture2DProjLod_0H2B0B,
    BuiltInName::texture2DProjLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H2B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture2DProjLod_0H2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture2DProjLod_0H3B0B(
    BuiltInId::texture2DProjLod_0H3B0B,
    BuiltInName::texture2DProjLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H3B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture2DProjLod_0H3B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureCubeLod_0J2B0B(
    BuiltInId::textureCubeLod_0J2B0B,
    BuiltInName::textureCubeLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0J2B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureCubeLod_0J2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0H1B(
    BuiltInId::texture_0H1B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H1B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0H1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0P1B(
    BuiltInId::texture_0P1B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P1B,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0P1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0U1B(
    BuiltInId::texture_0U1B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U1B,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0U1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0I2B(
    BuiltInId::texture_0I2B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0I2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0I2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0Q2B(
    BuiltInId::texture_0Q2B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Q2B,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0Q2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0V2B(
    BuiltInId::texture_0V2B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0V2B,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0V2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0J2B(
    BuiltInId::texture_0J2B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0J2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0J2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0R2B(
    BuiltInId::texture_0R2B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0R2B,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0R2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0W2B(
    BuiltInId::texture_0W2B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0W2B,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0W2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0K2B(
    BuiltInId::texture_0K2B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0K2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0K2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0S2B(
    BuiltInId::texture_0S2B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0S2B,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0S2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0X2B(
    BuiltInId::texture_0X2B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0X2B,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0X2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0H2B(
    BuiltInId::textureProj_0H2B,
    BuiltInName::textureProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0H2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0P2B(
    BuiltInId::textureProj_0P2B,
    BuiltInName::textureProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P2B,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0P2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0U2B(
    BuiltInId::textureProj_0U2B,
    BuiltInName::textureProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U2B,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0U2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0H3B(
    BuiltInId::textureProj_0H3B,
    BuiltInName::textureProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0H3B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0P3B(
    BuiltInId::textureProj_0P3B,
    BuiltInName::textureProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P3B,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0P3B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0U3B(
    BuiltInId::textureProj_0U3B,
    BuiltInName::textureProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U3B,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0U3B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0I3B(
    BuiltInId::textureProj_0I3B,
    BuiltInName::textureProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0I3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0I3B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0Q3B(
    BuiltInId::textureProj_0Q3B,
    BuiltInName::textureProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Q3B,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0Q3B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0V3B(
    BuiltInId::textureProj_0V3B,
    BuiltInName::textureProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0V3B,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0V3B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureLod_0H1B0B(
    BuiltInId::textureLod_0H1B0B,
    BuiltInName::textureLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H1B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureLod_0H1B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureLod_0P1B0B(
    BuiltInId::textureLod_0P1B0B,
    BuiltInName::textureLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P1B0B,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureLod_0P1B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureLod_0U1B0B(
    BuiltInId::textureLod_0U1B0B,
    BuiltInName::textureLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U1B0B,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureLod_0U1B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureLod_0I2B0B(
    BuiltInId::textureLod_0I2B0B,
    BuiltInName::textureLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0I2B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureLod_0I2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureLod_0Q2B0B(
    BuiltInId::textureLod_0Q2B0B,
    BuiltInName::textureLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Q2B0B,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureLod_0Q2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureLod_0V2B0B(
    BuiltInId::textureLod_0V2B0B,
    BuiltInName::textureLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0V2B0B,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureLod_0V2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureLod_0J2B0B(
    BuiltInId::textureLod_0J2B0B,
    BuiltInName::textureLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0J2B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureLod_0J2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureLod_0R2B0B(
    BuiltInId::textureLod_0R2B0B,
    BuiltInName::textureLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0R2B0B,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureLod_0R2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureLod_0W2B0B(
    BuiltInId::textureLod_0W2B0B,
    BuiltInName::textureLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0W2B0B,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureLod_0W2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureLod_0K2B0B(
    BuiltInId::textureLod_0K2B0B,
    BuiltInName::textureLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0K2B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureLod_0K2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureLod_0S2B0B(
    BuiltInId::textureLod_0S2B0B,
    BuiltInName::textureLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0S2B0B,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureLod_0S2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureLod_0X2B0B(
    BuiltInId::textureLod_0X2B0B,
    BuiltInName::textureLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0X2B0B,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureLod_0X2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0Z2B(
    BuiltInId::texture_0Z2B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Z2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::texture_0Z2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0a3B(
    BuiltInId::texture_0a3B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0a3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::texture_0a3B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0b3B(
    BuiltInId::texture_0b3B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0b3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::texture_0b3B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0Z3B(
    BuiltInId::textureProj_0Z3B,
    BuiltInName::textureProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Z3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::textureProj_0Z3B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureLod_0Z2B0B(
    BuiltInId::textureLod_0Z2B0B,
    BuiltInName::textureLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Z2B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::textureLod_0Z2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureSize_0H0C(
    BuiltInId::textureSize_0H0C,
    BuiltInName::textureSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::textureSize_0H0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureSize_0P0C(
    BuiltInId::textureSize_0P0C,
    BuiltInName::textureSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::textureSize_0P0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureSize_0U0C(
    BuiltInId::textureSize_0U0C,
    BuiltInName::textureSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::textureSize_0U0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureSize_0I0C(
    BuiltInId::textureSize_0I0C,
    BuiltInName::textureSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0I0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::textureSize_0I0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureSize_0Q0C(
    BuiltInId::textureSize_0Q0C,
    BuiltInName::textureSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Q0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::textureSize_0Q0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureSize_0V0C(
    BuiltInId::textureSize_0V0C,
    BuiltInName::textureSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0V0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::textureSize_0V0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureSize_0J0C(
    BuiltInId::textureSize_0J0C,
    BuiltInName::textureSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0J0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::textureSize_0J0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureSize_0R0C(
    BuiltInId::textureSize_0R0C,
    BuiltInName::textureSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0R0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::textureSize_0R0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureSize_0W0C(
    BuiltInId::textureSize_0W0C,
    BuiltInName::textureSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0W0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::textureSize_0W0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureSize_0K0C(
    BuiltInId::textureSize_0K0C,
    BuiltInName::textureSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0K0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::textureSize_0K0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureSize_0S0C(
    BuiltInId::textureSize_0S0C,
    BuiltInName::textureSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0S0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::textureSize_0S0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureSize_0X0C(
    BuiltInId::textureSize_0X0C,
    BuiltInName::textureSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0X0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::textureSize_0X0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureSize_0Z0C(
    BuiltInId::textureSize_0Z0C,
    BuiltInName::textureSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Z0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::textureSize_0Z0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureSize_0a0C(
    BuiltInId::textureSize_0a0C,
    BuiltInName::textureSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0a0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::textureSize_0a0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureSize_0b0C(
    BuiltInId::textureSize_0b0C,
    BuiltInName::textureSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0b0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::textureSize_0b0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureSize_0O(
    BuiltInId::textureSize_0O,
    BuiltInName::textureSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0O,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::textureSize_0O,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureSize_0T(
    BuiltInId::textureSize_0T,
    BuiltInName::textureSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0T,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::textureSize_0T,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureSize_0Y(
    BuiltInId::textureSize_0Y,
    BuiltInName::textureSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Y,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::textureSize_0Y,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjLod_0H2B0B(
    BuiltInId::textureProjLod_0H2B0B,
    BuiltInName::textureProjLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H2B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjLod_0H2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjLod_0P2B0B(
    BuiltInId::textureProjLod_0P2B0B,
    BuiltInName::textureProjLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P2B0B,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjLod_0P2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjLod_0U2B0B(
    BuiltInId::textureProjLod_0U2B0B,
    BuiltInName::textureProjLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U2B0B,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjLod_0U2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjLod_0H3B0B(
    BuiltInId::textureProjLod_0H3B0B,
    BuiltInName::textureProjLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H3B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjLod_0H3B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjLod_0P3B0B(
    BuiltInId::textureProjLod_0P3B0B,
    BuiltInName::textureProjLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P3B0B,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjLod_0P3B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjLod_0U3B0B(
    BuiltInId::textureProjLod_0U3B0B,
    BuiltInName::textureProjLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U3B0B,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjLod_0U3B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjLod_0I3B0B(
    BuiltInId::textureProjLod_0I3B0B,
    BuiltInName::textureProjLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0I3B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjLod_0I3B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjLod_0Q3B0B(
    BuiltInId::textureProjLod_0Q3B0B,
    BuiltInName::textureProjLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Q3B0B,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjLod_0Q3B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjLod_0V3B0B(
    BuiltInId::textureProjLod_0V3B0B,
    BuiltInName::textureProjLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0V3B0B,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjLod_0V3B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjLod_0Z3B0B(
    BuiltInId::textureProjLod_0Z3B0B,
    BuiltInName::textureProjLod,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Z3B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::textureProjLod_0Z3B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texelFetch_0H1C0C(
    BuiltInId::texelFetch_0H1C0C,
    BuiltInName::texelFetch,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H1C0C,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texelFetch_0H1C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texelFetch_0P1C0C(
    BuiltInId::texelFetch_0P1C0C,
    BuiltInName::texelFetch,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P1C0C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texelFetch_0P1C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texelFetch_0U1C0C(
    BuiltInId::texelFetch_0U1C0C,
    BuiltInName::texelFetch,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U1C0C,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texelFetch_0U1C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texelFetch_0I2C0C(
    BuiltInId::texelFetch_0I2C0C,
    BuiltInName::texelFetch,
    TExtension::UNDEFINED,
    BuiltInParameters::p0I2C0C,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texelFetch_0I2C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texelFetch_0Q2C0C(
    BuiltInId::texelFetch_0Q2C0C,
    BuiltInName::texelFetch,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Q2C0C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texelFetch_0Q2C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texelFetch_0V2C0C(
    BuiltInId::texelFetch_0V2C0C,
    BuiltInName::texelFetch,
    TExtension::UNDEFINED,
    BuiltInParameters::p0V2C0C,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texelFetch_0V2C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texelFetch_0K2C0C(
    BuiltInId::texelFetch_0K2C0C,
    BuiltInName::texelFetch,
    TExtension::UNDEFINED,
    BuiltInParameters::p0K2C0C,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texelFetch_0K2C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texelFetch_0S2C0C(
    BuiltInId::texelFetch_0S2C0C,
    BuiltInName::texelFetch,
    TExtension::UNDEFINED,
    BuiltInParameters::p0S2C0C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texelFetch_0S2C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texelFetch_0X2C0C(
    BuiltInId::texelFetch_0X2C0C,
    BuiltInName::texelFetch,
    TExtension::UNDEFINED,
    BuiltInParameters::p0X2C0C,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texelFetch_0X2C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGrad_0H1B1B1B(
    BuiltInId::textureGrad_0H1B1B1B,
    BuiltInName::textureGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H1B1B1B,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGrad_0H1B1B1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGrad_0P1B1B1B(
    BuiltInId::textureGrad_0P1B1B1B,
    BuiltInName::textureGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P1B1B1B,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGrad_0P1B1B1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGrad_0U1B1B1B(
    BuiltInId::textureGrad_0U1B1B1B,
    BuiltInName::textureGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U1B1B1B,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGrad_0U1B1B1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGrad_0I2B2B2B(
    BuiltInId::textureGrad_0I2B2B2B,
    BuiltInName::textureGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0I2B2B2B,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGrad_0I2B2B2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGrad_0Q2B2B2B(
    BuiltInId::textureGrad_0Q2B2B2B,
    BuiltInName::textureGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Q2B2B2B,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGrad_0Q2B2B2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGrad_0V2B2B2B(
    BuiltInId::textureGrad_0V2B2B2B,
    BuiltInName::textureGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0V2B2B2B,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGrad_0V2B2B2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGrad_0J2B2B2B(
    BuiltInId::textureGrad_0J2B2B2B,
    BuiltInName::textureGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0J2B2B2B,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGrad_0J2B2B2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGrad_0R2B2B2B(
    BuiltInId::textureGrad_0R2B2B2B,
    BuiltInName::textureGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0R2B2B2B,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGrad_0R2B2B2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGrad_0W2B2B2B(
    BuiltInId::textureGrad_0W2B2B2B,
    BuiltInName::textureGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0W2B2B2B,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGrad_0W2B2B2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGrad_0Z2B1B1B(
    BuiltInId::textureGrad_0Z2B1B1B,
    BuiltInName::textureGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Z2B1B1B,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::textureGrad_0Z2B1B1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGrad_0a3B2B2B(
    BuiltInId::textureGrad_0a3B2B2B,
    BuiltInName::textureGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0a3B2B2B,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::textureGrad_0a3B2B2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGrad_0K2B1B1B(
    BuiltInId::textureGrad_0K2B1B1B,
    BuiltInName::textureGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0K2B1B1B,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGrad_0K2B1B1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGrad_0S2B1B1B(
    BuiltInId::textureGrad_0S2B1B1B,
    BuiltInName::textureGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0S2B1B1B,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGrad_0S2B1B1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGrad_0X2B1B1B(
    BuiltInId::textureGrad_0X2B1B1B,
    BuiltInName::textureGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0X2B1B1B,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGrad_0X2B1B1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGrad_0b3B1B1B(
    BuiltInId::textureGrad_0b3B1B1B,
    BuiltInName::textureGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0b3B1B1B,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::textureGrad_0b3B1B1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjGrad_0H2B1B1B(
    BuiltInId::textureProjGrad_0H2B1B1B,
    BuiltInName::textureProjGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H2B1B1B,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjGrad_0H2B1B1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjGrad_0P2B1B1B(
    BuiltInId::textureProjGrad_0P2B1B1B,
    BuiltInName::textureProjGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P2B1B1B,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjGrad_0P2B1B1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjGrad_0U2B1B1B(
    BuiltInId::textureProjGrad_0U2B1B1B,
    BuiltInName::textureProjGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U2B1B1B,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjGrad_0U2B1B1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjGrad_0H3B1B1B(
    BuiltInId::textureProjGrad_0H3B1B1B,
    BuiltInName::textureProjGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H3B1B1B,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjGrad_0H3B1B1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjGrad_0P3B1B1B(
    BuiltInId::textureProjGrad_0P3B1B1B,
    BuiltInName::textureProjGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P3B1B1B,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjGrad_0P3B1B1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjGrad_0U3B1B1B(
    BuiltInId::textureProjGrad_0U3B1B1B,
    BuiltInName::textureProjGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U3B1B1B,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjGrad_0U3B1B1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjGrad_0I3B2B2B(
    BuiltInId::textureProjGrad_0I3B2B2B,
    BuiltInName::textureProjGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0I3B2B2B,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjGrad_0I3B2B2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjGrad_0Q3B2B2B(
    BuiltInId::textureProjGrad_0Q3B2B2B,
    BuiltInName::textureProjGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Q3B2B2B,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjGrad_0Q3B2B2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjGrad_0V3B2B2B(
    BuiltInId::textureProjGrad_0V3B2B2B,
    BuiltInName::textureProjGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0V3B2B2B,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjGrad_0V3B2B2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjGrad_0Z3B1B1B(
    BuiltInId::textureProjGrad_0Z3B1B1B,
    BuiltInName::textureProjGrad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Z3B1B1B,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::textureProjGrad_0Z3B1B1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureOffset_0H1B1C(
    BuiltInId::textureOffset_0H1B1C,
    BuiltInName::textureOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H1B1C,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureOffset_0H1B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureOffset_0P1B1C(
    BuiltInId::textureOffset_0P1B1C,
    BuiltInName::textureOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P1B1C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureOffset_0P1B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureOffset_0U1B1C(
    BuiltInId::textureOffset_0U1B1C,
    BuiltInName::textureOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U1B1C,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureOffset_0U1B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureOffset_0I2B2C(
    BuiltInId::textureOffset_0I2B2C,
    BuiltInName::textureOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0I2B2C,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureOffset_0I2B2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureOffset_0Q2B2C(
    BuiltInId::textureOffset_0Q2B2C,
    BuiltInName::textureOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Q2B2C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureOffset_0Q2B2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureOffset_0V2B2C(
    BuiltInId::textureOffset_0V2B2C,
    BuiltInName::textureOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0V2B2C,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureOffset_0V2B2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureOffset_0Z2B1C(
    BuiltInId::textureOffset_0Z2B1C,
    BuiltInName::textureOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Z2B1C,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::textureOffset_0Z2B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureOffset_0K2B1C(
    BuiltInId::textureOffset_0K2B1C,
    BuiltInName::textureOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0K2B1C,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureOffset_0K2B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureOffset_0S2B1C(
    BuiltInId::textureOffset_0S2B1C,
    BuiltInName::textureOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0S2B1C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureOffset_0S2B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureOffset_0X2B1C(
    BuiltInId::textureOffset_0X2B1C,
    BuiltInName::textureOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0X2B1C,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureOffset_0X2B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjOffset_0H2B1C(
    BuiltInId::textureProjOffset_0H2B1C,
    BuiltInName::textureProjOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H2B1C,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjOffset_0H2B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjOffset_0P2B1C(
    BuiltInId::textureProjOffset_0P2B1C,
    BuiltInName::textureProjOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P2B1C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjOffset_0P2B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjOffset_0U2B1C(
    BuiltInId::textureProjOffset_0U2B1C,
    BuiltInName::textureProjOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U2B1C,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjOffset_0U2B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjOffset_0H3B1C(
    BuiltInId::textureProjOffset_0H3B1C,
    BuiltInName::textureProjOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H3B1C,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjOffset_0H3B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjOffset_0P3B1C(
    BuiltInId::textureProjOffset_0P3B1C,
    BuiltInName::textureProjOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P3B1C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjOffset_0P3B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjOffset_0U3B1C(
    BuiltInId::textureProjOffset_0U3B1C,
    BuiltInName::textureProjOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U3B1C,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjOffset_0U3B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjOffset_0I3B2C(
    BuiltInId::textureProjOffset_0I3B2C,
    BuiltInName::textureProjOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0I3B2C,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjOffset_0I3B2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjOffset_0Q3B2C(
    BuiltInId::textureProjOffset_0Q3B2C,
    BuiltInName::textureProjOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Q3B2C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjOffset_0Q3B2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjOffset_0V3B2C(
    BuiltInId::textureProjOffset_0V3B2C,
    BuiltInName::textureProjOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0V3B2C,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjOffset_0V3B2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjOffset_0Z3B1C(
    BuiltInId::textureProjOffset_0Z3B1C,
    BuiltInName::textureProjOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Z3B1C,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::textureProjOffset_0Z3B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureLodOffset_0H1B0B1C(
    BuiltInId::textureLodOffset_0H1B0B1C,
    BuiltInName::textureLodOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H1B0B1C,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureLodOffset_0H1B0B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureLodOffset_0P1B0B1C(
    BuiltInId::textureLodOffset_0P1B0B1C,
    BuiltInName::textureLodOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P1B0B1C,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureLodOffset_0P1B0B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureLodOffset_0U1B0B1C(
    BuiltInId::textureLodOffset_0U1B0B1C,
    BuiltInName::textureLodOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U1B0B1C,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureLodOffset_0U1B0B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureLodOffset_0I2B0B2C(
    BuiltInId::textureLodOffset_0I2B0B2C,
    BuiltInName::textureLodOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0I2B0B2C,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureLodOffset_0I2B0B2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureLodOffset_0Q2B0B2C(
    BuiltInId::textureLodOffset_0Q2B0B2C,
    BuiltInName::textureLodOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Q2B0B2C,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureLodOffset_0Q2B0B2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureLodOffset_0V2B0B2C(
    BuiltInId::textureLodOffset_0V2B0B2C,
    BuiltInName::textureLodOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0V2B0B2C,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureLodOffset_0V2B0B2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureLodOffset_0Z2B0B1C(
    BuiltInId::textureLodOffset_0Z2B0B1C,
    BuiltInName::textureLodOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Z2B0B1C,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::textureLodOffset_0Z2B0B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureLodOffset_0K2B0B1C(
    BuiltInId::textureLodOffset_0K2B0B1C,
    BuiltInName::textureLodOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0K2B0B1C,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureLodOffset_0K2B0B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureLodOffset_0S2B0B1C(
    BuiltInId::textureLodOffset_0S2B0B1C,
    BuiltInName::textureLodOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0S2B0B1C,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureLodOffset_0S2B0B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureLodOffset_0X2B0B1C(
    BuiltInId::textureLodOffset_0X2B0B1C,
    BuiltInName::textureLodOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0X2B0B1C,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureLodOffset_0X2B0B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjLodOffset_0H2B0B1C(
    BuiltInId::textureProjLodOffset_0H2B0B1C,
    BuiltInName::textureProjLodOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H2B0B1C,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjLodOffset_0H2B0B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjLodOffset_0P2B0B1C(
    BuiltInId::textureProjLodOffset_0P2B0B1C,
    BuiltInName::textureProjLodOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P2B0B1C,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjLodOffset_0P2B0B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjLodOffset_0U2B0B1C(
    BuiltInId::textureProjLodOffset_0U2B0B1C,
    BuiltInName::textureProjLodOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U2B0B1C,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjLodOffset_0U2B0B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjLodOffset_0H3B0B1C(
    BuiltInId::textureProjLodOffset_0H3B0B1C,
    BuiltInName::textureProjLodOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H3B0B1C,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjLodOffset_0H3B0B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjLodOffset_0P3B0B1C(
    BuiltInId::textureProjLodOffset_0P3B0B1C,
    BuiltInName::textureProjLodOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P3B0B1C,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjLodOffset_0P3B0B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjLodOffset_0U3B0B1C(
    BuiltInId::textureProjLodOffset_0U3B0B1C,
    BuiltInName::textureProjLodOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U3B0B1C,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjLodOffset_0U3B0B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjLodOffset_0I3B0B2C(
    BuiltInId::textureProjLodOffset_0I3B0B2C,
    BuiltInName::textureProjLodOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0I3B0B2C,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjLodOffset_0I3B0B2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjLodOffset_0Q3B0B2C(
    BuiltInId::textureProjLodOffset_0Q3B0B2C,
    BuiltInName::textureProjLodOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Q3B0B2C,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjLodOffset_0Q3B0B2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjLodOffset_0V3B0B2C(
    BuiltInId::textureProjLodOffset_0V3B0B2C,
    BuiltInName::textureProjLodOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0V3B0B2C,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjLodOffset_0V3B0B2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjLodOffset_0Z3B0B1C(
    BuiltInId::textureProjLodOffset_0Z3B0B1C,
    BuiltInName::textureProjLodOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Z3B0B1C,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::textureProjLodOffset_0Z3B0B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texelFetchOffset_0H1C0C1C(
    BuiltInId::texelFetchOffset_0H1C0C1C,
    BuiltInName::texelFetchOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H1C0C1C,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texelFetchOffset_0H1C0C1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texelFetchOffset_0P1C0C1C(
    BuiltInId::texelFetchOffset_0P1C0C1C,
    BuiltInName::texelFetchOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P1C0C1C,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texelFetchOffset_0P1C0C1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texelFetchOffset_0U1C0C1C(
    BuiltInId::texelFetchOffset_0U1C0C1C,
    BuiltInName::texelFetchOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U1C0C1C,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texelFetchOffset_0U1C0C1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texelFetchOffset_0I2C0C2C(
    BuiltInId::texelFetchOffset_0I2C0C2C,
    BuiltInName::texelFetchOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0I2C0C2C,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texelFetchOffset_0I2C0C2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texelFetchOffset_0Q2C0C2C(
    BuiltInId::texelFetchOffset_0Q2C0C2C,
    BuiltInName::texelFetchOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Q2C0C2C,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texelFetchOffset_0Q2C0C2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texelFetchOffset_0V2C0C2C(
    BuiltInId::texelFetchOffset_0V2C0C2C,
    BuiltInName::texelFetchOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0V2C0C2C,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texelFetchOffset_0V2C0C2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texelFetchOffset_0K2C0C1C(
    BuiltInId::texelFetchOffset_0K2C0C1C,
    BuiltInName::texelFetchOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0K2C0C1C,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texelFetchOffset_0K2C0C1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texelFetchOffset_0S2C0C1C(
    BuiltInId::texelFetchOffset_0S2C0C1C,
    BuiltInName::texelFetchOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0S2C0C1C,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texelFetchOffset_0S2C0C1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texelFetchOffset_0X2C0C1C(
    BuiltInId::texelFetchOffset_0X2C0C1C,
    BuiltInName::texelFetchOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0X2C0C1C,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texelFetchOffset_0X2C0C1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGradOffset_0H1B1B1B1C(
    BuiltInId::textureGradOffset_0H1B1B1B1C,
    BuiltInName::textureGradOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H1B1B1B1C,
    5,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGradOffset_0H1B1B1B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGradOffset_0P1B1B1B1C(
    BuiltInId::textureGradOffset_0P1B1B1B1C,
    BuiltInName::textureGradOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P1B1B1B1C,
    5,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGradOffset_0P1B1B1B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGradOffset_0U1B1B1B1C(
    BuiltInId::textureGradOffset_0U1B1B1B1C,
    BuiltInName::textureGradOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U1B1B1B1C,
    5,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGradOffset_0U1B1B1B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGradOffset_0I2B2B2B2C(
    BuiltInId::textureGradOffset_0I2B2B2B2C,
    BuiltInName::textureGradOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0I2B2B2B2C,
    5,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGradOffset_0I2B2B2B2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGradOffset_0Q2B2B2B2C(
    BuiltInId::textureGradOffset_0Q2B2B2B2C,
    BuiltInName::textureGradOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Q2B2B2B2C,
    5,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGradOffset_0Q2B2B2B2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGradOffset_0V2B2B2B2C(
    BuiltInId::textureGradOffset_0V2B2B2B2C,
    BuiltInName::textureGradOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0V2B2B2B2C,
    5,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGradOffset_0V2B2B2B2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGradOffset_0Z2B1B1B1C(
    BuiltInId::textureGradOffset_0Z2B1B1B1C,
    BuiltInName::textureGradOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Z2B1B1B1C,
    5,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::textureGradOffset_0Z2B1B1B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGradOffset_0K2B1B1B1C(
    BuiltInId::textureGradOffset_0K2B1B1B1C,
    BuiltInName::textureGradOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0K2B1B1B1C,
    5,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGradOffset_0K2B1B1B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGradOffset_0S2B1B1B1C(
    BuiltInId::textureGradOffset_0S2B1B1B1C,
    BuiltInName::textureGradOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0S2B1B1B1C,
    5,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGradOffset_0S2B1B1B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGradOffset_0X2B1B1B1C(
    BuiltInId::textureGradOffset_0X2B1B1B1C,
    BuiltInName::textureGradOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0X2B1B1B1C,
    5,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGradOffset_0X2B1B1B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGradOffset_0b3B1B1B1C(
    BuiltInId::textureGradOffset_0b3B1B1B1C,
    BuiltInName::textureGradOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0b3B1B1B1C,
    5,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::textureGradOffset_0b3B1B1B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjGradOffset_0H2B1B1B1C(
    BuiltInId::textureProjGradOffset_0H2B1B1B1C,
    BuiltInName::textureProjGradOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H2B1B1B1C,
    5,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjGradOffset_0H2B1B1B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjGradOffset_0P2B1B1B1C(
    BuiltInId::textureProjGradOffset_0P2B1B1B1C,
    BuiltInName::textureProjGradOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P2B1B1B1C,
    5,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjGradOffset_0P2B1B1B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjGradOffset_0U2B1B1B1C(
    BuiltInId::textureProjGradOffset_0U2B1B1B1C,
    BuiltInName::textureProjGradOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U2B1B1B1C,
    5,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjGradOffset_0U2B1B1B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjGradOffset_0H3B1B1B1C(
    BuiltInId::textureProjGradOffset_0H3B1B1B1C,
    BuiltInName::textureProjGradOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H3B1B1B1C,
    5,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjGradOffset_0H3B1B1B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjGradOffset_0P3B1B1B1C(
    BuiltInId::textureProjGradOffset_0P3B1B1B1C,
    BuiltInName::textureProjGradOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P3B1B1B1C,
    5,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjGradOffset_0P3B1B1B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjGradOffset_0U3B1B1B1C(
    BuiltInId::textureProjGradOffset_0U3B1B1B1C,
    BuiltInName::textureProjGradOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U3B1B1B1C,
    5,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjGradOffset_0U3B1B1B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjGradOffset_0I3B2B2B2C(
    BuiltInId::textureProjGradOffset_0I3B2B2B2C,
    BuiltInName::textureProjGradOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0I3B2B2B2C,
    5,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjGradOffset_0I3B2B2B2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjGradOffset_0Q3B2B2B2C(
    BuiltInId::textureProjGradOffset_0Q3B2B2B2C,
    BuiltInName::textureProjGradOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Q3B2B2B2C,
    5,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjGradOffset_0Q3B2B2B2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjGradOffset_0V3B2B2B2C(
    BuiltInId::textureProjGradOffset_0V3B2B2B2C,
    BuiltInName::textureProjGradOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0V3B2B2B2C,
    5,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjGradOffset_0V3B2B2B2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjGradOffset_0Z3B1B1B1C(
    BuiltInId::textureProjGradOffset_0Z3B1B1B1C,
    BuiltInName::textureProjGradOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Z3B1B1B1C,
    5,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::textureProjGradOffset_0Z3B1B1B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureOffset_0H1B1C0B(
    BuiltInId::textureOffset_0H1B1C0B,
    BuiltInName::textureOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H1B1C0B,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureOffset_0H1B1C0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureOffset_0P1B1C0B(
    BuiltInId::textureOffset_0P1B1C0B,
    BuiltInName::textureOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P1B1C0B,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureOffset_0P1B1C0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureOffset_0U1B1C0B(
    BuiltInId::textureOffset_0U1B1C0B,
    BuiltInName::textureOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U1B1C0B,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureOffset_0U1B1C0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureOffset_0I2B2C0B(
    BuiltInId::textureOffset_0I2B2C0B,
    BuiltInName::textureOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0I2B2C0B,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureOffset_0I2B2C0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureOffset_0Q2B2C0B(
    BuiltInId::textureOffset_0Q2B2C0B,
    BuiltInName::textureOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Q2B2C0B,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureOffset_0Q2B2C0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureOffset_0V2B2C0B(
    BuiltInId::textureOffset_0V2B2C0B,
    BuiltInName::textureOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0V2B2C0B,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureOffset_0V2B2C0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureOffset_0Z2B1C0B(
    BuiltInId::textureOffset_0Z2B1C0B,
    BuiltInName::textureOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Z2B1C0B,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::textureOffset_0Z2B1C0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureOffset_0K2B1C0B(
    BuiltInId::textureOffset_0K2B1C0B,
    BuiltInName::textureOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0K2B1C0B,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureOffset_0K2B1C0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureOffset_0S2B1C0B(
    BuiltInId::textureOffset_0S2B1C0B,
    BuiltInName::textureOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0S2B1C0B,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureOffset_0S2B1C0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureOffset_0X2B1C0B(
    BuiltInId::textureOffset_0X2B1C0B,
    BuiltInName::textureOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0X2B1C0B,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureOffset_0X2B1C0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjOffset_0H2B1C0B(
    BuiltInId::textureProjOffset_0H2B1C0B,
    BuiltInName::textureProjOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H2B1C0B,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjOffset_0H2B1C0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjOffset_0P2B1C0B(
    BuiltInId::textureProjOffset_0P2B1C0B,
    BuiltInName::textureProjOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P2B1C0B,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjOffset_0P2B1C0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjOffset_0U2B1C0B(
    BuiltInId::textureProjOffset_0U2B1C0B,
    BuiltInName::textureProjOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U2B1C0B,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjOffset_0U2B1C0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjOffset_0H3B1C0B(
    BuiltInId::textureProjOffset_0H3B1C0B,
    BuiltInName::textureProjOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H3B1C0B,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjOffset_0H3B1C0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjOffset_0P3B1C0B(
    BuiltInId::textureProjOffset_0P3B1C0B,
    BuiltInName::textureProjOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P3B1C0B,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjOffset_0P3B1C0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjOffset_0U3B1C0B(
    BuiltInId::textureProjOffset_0U3B1C0B,
    BuiltInName::textureProjOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U3B1C0B,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjOffset_0U3B1C0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjOffset_0I3B2C0B(
    BuiltInId::textureProjOffset_0I3B2C0B,
    BuiltInName::textureProjOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0I3B2C0B,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjOffset_0I3B2C0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjOffset_0Q3B2C0B(
    BuiltInId::textureProjOffset_0Q3B2C0B,
    BuiltInName::textureProjOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Q3B2C0B,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjOffset_0Q3B2C0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjOffset_0V3B2C0B(
    BuiltInId::textureProjOffset_0V3B2C0B,
    BuiltInName::textureProjOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0V3B2C0B,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProjOffset_0V3B2C0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProjOffset_0Z3B1C0B(
    BuiltInId::textureProjOffset_0Z3B1C0B,
    BuiltInName::textureProjOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Z3B1C0B,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::textureProjOffset_0Z3B1C0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0L1B(
    BuiltInId::texture_0L1B,
    BuiltInName::texture,
    TExtension::OES_EGL_image_external_essl3,
    BuiltInParameters::p0L1B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0L1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0L2B(
    BuiltInId::textureProj_0L2B,
    BuiltInName::textureProj,
    TExtension::OES_EGL_image_external_essl3,
    BuiltInParameters::p0L2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0L2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0L3B(
    BuiltInId::textureProj_0L3B,
    BuiltInName::textureProj,
    TExtension::OES_EGL_image_external_essl3,
    BuiltInParameters::p0L3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0L3B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureSize_0L0C(
    BuiltInId::textureSize_0L0C,
    BuiltInName::textureSize,
    TExtension::OES_EGL_image_external_essl3,
    BuiltInParameters::p0L0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::textureSize_0L0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texelFetch_0L1C0C(
    BuiltInId::texelFetch_0L1C0C,
    BuiltInName::texelFetch,
    TExtension::OES_EGL_image_external_essl3,
    BuiltInParameters::p0L1C0C,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texelFetch_0L1C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0M1B(
    BuiltInId::texture_0M1B,
    BuiltInName::texture,
    TExtension::EXT_YUV_target,
    BuiltInParameters::p0M1B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0M1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0M2B(
    BuiltInId::textureProj_0M2B,
    BuiltInName::textureProj,
    TExtension::EXT_YUV_target,
    BuiltInParameters::p0M2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0M2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0M3B(
    BuiltInId::textureProj_0M3B,
    BuiltInName::textureProj,
    TExtension::EXT_YUV_target,
    BuiltInParameters::p0M3B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0M3B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_rgb_2_yuv_2B0G(
    BuiltInId::rgb_2_yuv_2B0G,
    BuiltInName::rgb_2_yuv,
    TExtension::EXT_YUV_target,
    BuiltInParameters::p2B0G,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::rgb_2_yuv_2B0G,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_yuv_2_rgb_2B0G(
    BuiltInId::yuv_2_rgb_2B0G,
    BuiltInName::yuv_2_rgb,
    TExtension::EXT_YUV_target,
    BuiltInParameters::p2B0G,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::yuv_2_rgb_2B0G,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureSize_0M0C(
    BuiltInId::textureSize_0M0C,
    BuiltInName::textureSize,
    TExtension::EXT_YUV_target,
    BuiltInParameters::p0M0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::textureSize_0M0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texelFetch_0M1C0C(
    BuiltInId::texelFetch_0M1C0C,
    BuiltInName::texelFetch,
    TExtension::EXT_YUV_target,
    BuiltInParameters::p0M1C0C,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texelFetch_0M1C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0H1B0B(
    BuiltInId::texture_0H1B0B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H1B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0H1B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0P1B0B(
    BuiltInId::texture_0P1B0B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P1B0B,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0P1B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0U1B0B(
    BuiltInId::texture_0U1B0B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U1B0B,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0U1B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0I2B0B(
    BuiltInId::texture_0I2B0B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0I2B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0I2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0Q2B0B(
    BuiltInId::texture_0Q2B0B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Q2B0B,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0Q2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0V2B0B(
    BuiltInId::texture_0V2B0B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0V2B0B,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0V2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0J2B0B(
    BuiltInId::texture_0J2B0B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0J2B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0J2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0R2B0B(
    BuiltInId::texture_0R2B0B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0R2B0B,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0R2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0W2B0B(
    BuiltInId::texture_0W2B0B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0W2B0B,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0W2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0K2B0B(
    BuiltInId::texture_0K2B0B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0K2B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0K2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0S2B0B(
    BuiltInId::texture_0S2B0B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0S2B0B,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0S2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0X2B0B(
    BuiltInId::texture_0X2B0B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0X2B0B,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0X2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0H2B0B(
    BuiltInId::textureProj_0H2B0B,
    BuiltInName::textureProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H2B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0H2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0P2B0B(
    BuiltInId::textureProj_0P2B0B,
    BuiltInName::textureProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P2B0B,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0P2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0U2B0B(
    BuiltInId::textureProj_0U2B0B,
    BuiltInName::textureProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U2B0B,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0U2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0H3B0B(
    BuiltInId::textureProj_0H3B0B,
    BuiltInName::textureProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H3B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0H3B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0P3B0B(
    BuiltInId::textureProj_0P3B0B,
    BuiltInName::textureProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P3B0B,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0P3B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0U3B0B(
    BuiltInId::textureProj_0U3B0B,
    BuiltInName::textureProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U3B0B,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0U3B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0I3B0B(
    BuiltInId::textureProj_0I3B0B,
    BuiltInName::textureProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0I3B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0I3B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0Q3B0B(
    BuiltInId::textureProj_0Q3B0B,
    BuiltInName::textureProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Q3B0B,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0Q3B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0V3B0B(
    BuiltInId::textureProj_0V3B0B,
    BuiltInName::textureProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0V3B0B,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0V3B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0Z2B0B(
    BuiltInId::texture_0Z2B0B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Z2B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::texture_0Z2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0a3B0B(
    BuiltInId::texture_0a3B0B,
    BuiltInName::texture,
    TExtension::UNDEFINED,
    BuiltInParameters::p0a3B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::texture_0a3B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0Z3B0B(
    BuiltInId::textureProj_0Z3B0B,
    BuiltInName::textureProj,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Z3B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::textureProj_0Z3B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0L1B0B(
    BuiltInId::texture_0L1B0B,
    BuiltInName::texture,
    TExtension::OES_EGL_image_external_essl3,
    BuiltInParameters::p0L1B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0L1B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0L2B0B(
    BuiltInId::textureProj_0L2B0B,
    BuiltInName::textureProj,
    TExtension::OES_EGL_image_external_essl3,
    BuiltInParameters::p0L2B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0L2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0L3B0B(
    BuiltInId::textureProj_0L3B0B,
    BuiltInName::textureProj,
    TExtension::OES_EGL_image_external_essl3,
    BuiltInParameters::p0L3B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0L3B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texture_0M1B0B(
    BuiltInId::texture_0M1B0B,
    BuiltInName::texture,
    TExtension::EXT_YUV_target,
    BuiltInParameters::p0M1B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texture_0M1B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0M2B0B(
    BuiltInId::textureProj_0M2B0B,
    BuiltInName::textureProj,
    TExtension::EXT_YUV_target,
    BuiltInParameters::p0M2B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0M2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureProj_0M3B0B(
    BuiltInId::textureProj_0M3B0B,
    BuiltInName::textureProj,
    TExtension::EXT_YUV_target,
    BuiltInParameters::p0M3B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureProj_0M3B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texelFetch_0O1C0C(
    BuiltInId::texelFetch_0O1C0C,
    BuiltInName::texelFetch,
    TExtension::UNDEFINED,
    BuiltInParameters::p0O1C0C,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texelFetch_0O1C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texelFetch_0T1C0C(
    BuiltInId::texelFetch_0T1C0C,
    BuiltInName::texelFetch,
    TExtension::UNDEFINED,
    BuiltInParameters::p0T1C0C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texelFetch_0T1C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_texelFetch_0Y1C0C(
    BuiltInId::texelFetch_0Y1C0C,
    BuiltInName::texelFetch,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Y1C0C,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::texelFetch_0Y1C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0H1B(
    BuiltInId::textureGather_0H1B,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H1B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0H1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0P1B(
    BuiltInId::textureGather_0P1B,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P1B,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0P1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0U1B(
    BuiltInId::textureGather_0U1B,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U1B,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0U1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0H1B0C(
    BuiltInId::textureGather_0H1B0C,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H1B0C,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0H1B0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0P1B0C(
    BuiltInId::textureGather_0P1B0C,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P1B0C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0P1B0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0U1B0C(
    BuiltInId::textureGather_0U1B0C,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U1B0C,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0U1B0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0K2B(
    BuiltInId::textureGather_0K2B,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0K2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0K2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0S2B(
    BuiltInId::textureGather_0S2B,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0S2B,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0S2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0X2B(
    BuiltInId::textureGather_0X2B,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0X2B,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0X2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0K2B0C(
    BuiltInId::textureGather_0K2B0C,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0K2B0C,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0K2B0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0S2B0C(
    BuiltInId::textureGather_0S2B0C,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0S2B0C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0S2B0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0X2B0C(
    BuiltInId::textureGather_0X2B0C,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0X2B0C,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0X2B0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0J2B(
    BuiltInId::textureGather_0J2B,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0J2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0J2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0R2B(
    BuiltInId::textureGather_0R2B,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0R2B,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0R2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0W2B(
    BuiltInId::textureGather_0W2B,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0W2B,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0W2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0J2B0C(
    BuiltInId::textureGather_0J2B0C,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0J2B0C,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0J2B0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0R2B0C(
    BuiltInId::textureGather_0R2B0C,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0R2B0C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0R2B0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0W2B0C(
    BuiltInId::textureGather_0W2B0C,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0W2B0C,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0W2B0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0Z1B(
    BuiltInId::textureGather_0Z1B,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Z1B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0Z1B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0Z1B0B(
    BuiltInId::textureGather_0Z1B0B,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Z1B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0Z1B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0b2B(
    BuiltInId::textureGather_0b2B,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0b2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0b2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0b2B0B(
    BuiltInId::textureGather_0b2B0B,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0b2B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0b2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0a2B(
    BuiltInId::textureGather_0a2B,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0a2B,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0a2B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGather_0a2B0B(
    BuiltInId::textureGather_0a2B0B,
    BuiltInName::textureGather,
    TExtension::UNDEFINED,
    BuiltInParameters::p0a2B0B,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGather_0a2B0B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGatherOffset_0H1B1C(
    BuiltInId::textureGatherOffset_0H1B1C,
    BuiltInName::textureGatherOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H1B1C,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGatherOffset_0H1B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGatherOffset_0P1B1C(
    BuiltInId::textureGatherOffset_0P1B1C,
    BuiltInName::textureGatherOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P1B1C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGatherOffset_0P1B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGatherOffset_0U1B1C(
    BuiltInId::textureGatherOffset_0U1B1C,
    BuiltInName::textureGatherOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U1B1C,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGatherOffset_0U1B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGatherOffset_0H1B1C0C(
    BuiltInId::textureGatherOffset_0H1B1C0C,
    BuiltInName::textureGatherOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0H1B1C0C,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGatherOffset_0H1B1C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGatherOffset_0P1B1C0C(
    BuiltInId::textureGatherOffset_0P1B1C0C,
    BuiltInName::textureGatherOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0P1B1C0C,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGatherOffset_0P1B1C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGatherOffset_0U1B1C0C(
    BuiltInId::textureGatherOffset_0U1B1C0C,
    BuiltInName::textureGatherOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0U1B1C0C,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGatherOffset_0U1B1C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGatherOffset_0K2B1C(
    BuiltInId::textureGatherOffset_0K2B1C,
    BuiltInName::textureGatherOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0K2B1C,
    3,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGatherOffset_0K2B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGatherOffset_0S2B1C(
    BuiltInId::textureGatherOffset_0S2B1C,
    BuiltInName::textureGatherOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0S2B1C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGatherOffset_0S2B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGatherOffset_0X2B1C(
    BuiltInId::textureGatherOffset_0X2B1C,
    BuiltInName::textureGatherOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0X2B1C,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGatherOffset_0X2B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGatherOffset_0K2B1C0C(
    BuiltInId::textureGatherOffset_0K2B1C0C,
    BuiltInName::textureGatherOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0K2B1C0C,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGatherOffset_0K2B1C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGatherOffset_0S2B1C0C(
    BuiltInId::textureGatherOffset_0S2B1C0C,
    BuiltInName::textureGatherOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0S2B1C0C,
    4,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGatherOffset_0S2B1C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGatherOffset_0X2B1C0C(
    BuiltInId::textureGatherOffset_0X2B1C0C,
    BuiltInName::textureGatherOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0X2B1C0C,
    4,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGatherOffset_0X2B1C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGatherOffset_0Z1B0B1C(
    BuiltInId::textureGatherOffset_0Z1B0B1C,
    BuiltInName::textureGatherOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0Z1B0B1C,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGatherOffset_0Z1B0B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_textureGatherOffset_0b2B0B1C(
    BuiltInId::textureGatherOffset_0b2B0B1C,
    BuiltInName::textureGatherOffset,
    TExtension::UNDEFINED,
    BuiltInParameters::p0b2B0B1C,
    4,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::textureGatherOffset_0b2B0B1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_dFdx_0B(
    BuiltInId::dFdx_0B,
    BuiltInName::dFdx,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::dFdx_0B,
    EOpDFdx,
    false);
constexpr const TFunction kFunction_dFdx_1B(
    BuiltInId::dFdx_1B,
    BuiltInName::dFdx,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::dFdx_1B,
    EOpDFdx,
    false);
constexpr const TFunction kFunction_dFdx_2B(
    BuiltInId::dFdx_2B,
    BuiltInName::dFdx,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::dFdx_2B,
    EOpDFdx,
    false);
constexpr const TFunction kFunction_dFdx_3B(
    BuiltInId::dFdx_3B,
    BuiltInName::dFdx,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::dFdx_3B,
    EOpDFdx,
    false);
constexpr const TFunction kFunction_dFdy_0B(
    BuiltInId::dFdy_0B,
    BuiltInName::dFdy,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::dFdy_0B,
    EOpDFdy,
    false);
constexpr const TFunction kFunction_dFdy_1B(
    BuiltInId::dFdy_1B,
    BuiltInName::dFdy,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::dFdy_1B,
    EOpDFdy,
    false);
constexpr const TFunction kFunction_dFdy_2B(
    BuiltInId::dFdy_2B,
    BuiltInName::dFdy,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::dFdy_2B,
    EOpDFdy,
    false);
constexpr const TFunction kFunction_dFdy_3B(
    BuiltInId::dFdy_3B,
    BuiltInName::dFdy,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::dFdy_3B,
    EOpDFdy,
    false);
constexpr const TFunction kFunction_fwidth_0B(
    BuiltInId::fwidth_0B,
    BuiltInName::fwidth,
    TExtension::UNDEFINED,
    BuiltInParameters::p0B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::fwidth_0B,
    EOpFwidth,
    false);
constexpr const TFunction kFunction_fwidth_1B(
    BuiltInId::fwidth_1B,
    BuiltInName::fwidth,
    TExtension::UNDEFINED,
    BuiltInParameters::p1B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::fwidth_1B,
    EOpFwidth,
    false);
constexpr const TFunction kFunction_fwidth_2B(
    BuiltInId::fwidth_2B,
    BuiltInName::fwidth,
    TExtension::UNDEFINED,
    BuiltInParameters::p2B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::fwidth_2B,
    EOpFwidth,
    false);
constexpr const TFunction kFunction_fwidth_3B(
    BuiltInId::fwidth_3B,
    BuiltInName::fwidth,
    TExtension::UNDEFINED,
    BuiltInParameters::p3B,
    1,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::fwidth_3B,
    EOpFwidth,
    false);
constexpr const TFunction kFunction_atomicCounter_0F(
    BuiltInId::atomicCounter_0F,
    BuiltInName::atomicCounter,
    TExtension::UNDEFINED,
    BuiltInParameters::p0F,
    1,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::atomicCounter_0F,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_atomicCounterIncrement_0F(
    BuiltInId::atomicCounterIncrement_0F,
    BuiltInName::atomicCounterIncrement,
    TExtension::UNDEFINED,
    BuiltInParameters::p0F,
    1,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::atomicCounterIncrement_0F,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_atomicCounterDecrement_0F(
    BuiltInId::atomicCounterDecrement_0F,
    BuiltInName::atomicCounterDecrement,
    TExtension::UNDEFINED,
    BuiltInParameters::p0F,
    1,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::atomicCounterDecrement_0F,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_atomicAdd_0D0D(
    BuiltInId::atomicAdd_0D0D,
    BuiltInName::atomicAdd,
    TExtension::UNDEFINED,
    BuiltInParameters::p_io_0D0D,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::atomicAdd_0D0D,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_atomicAdd_0C0C(
    BuiltInId::atomicAdd_0C0C,
    BuiltInName::atomicAdd,
    TExtension::UNDEFINED,
    BuiltInParameters::p_io_0C0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::atomicAdd_0C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_atomicMin_0D0D(
    BuiltInId::atomicMin_0D0D,
    BuiltInName::atomicMin,
    TExtension::UNDEFINED,
    BuiltInParameters::p_io_0D0D,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::atomicMin_0D0D,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_atomicMin_0C0C(
    BuiltInId::atomicMin_0C0C,
    BuiltInName::atomicMin,
    TExtension::UNDEFINED,
    BuiltInParameters::p_io_0C0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::atomicMin_0C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_atomicMax_0D0D(
    BuiltInId::atomicMax_0D0D,
    BuiltInName::atomicMax,
    TExtension::UNDEFINED,
    BuiltInParameters::p_io_0D0D,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::atomicMax_0D0D,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_atomicMax_0C0C(
    BuiltInId::atomicMax_0C0C,
    BuiltInName::atomicMax,
    TExtension::UNDEFINED,
    BuiltInParameters::p_io_0C0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::atomicMax_0C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_atomicAnd_0D0D(
    BuiltInId::atomicAnd_0D0D,
    BuiltInName::atomicAnd,
    TExtension::UNDEFINED,
    BuiltInParameters::p_io_0D0D,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::atomicAnd_0D0D,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_atomicAnd_0C0C(
    BuiltInId::atomicAnd_0C0C,
    BuiltInName::atomicAnd,
    TExtension::UNDEFINED,
    BuiltInParameters::p_io_0C0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::atomicAnd_0C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_atomicOr_0D0D(
    BuiltInId::atomicOr_0D0D,
    BuiltInName::atomicOr,
    TExtension::UNDEFINED,
    BuiltInParameters::p_io_0D0D,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::atomicOr_0D0D,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_atomicOr_0C0C(
    BuiltInId::atomicOr_0C0C,
    BuiltInName::atomicOr,
    TExtension::UNDEFINED,
    BuiltInParameters::p_io_0C0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::atomicOr_0C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_atomicXor_0D0D(
    BuiltInId::atomicXor_0D0D,
    BuiltInName::atomicXor,
    TExtension::UNDEFINED,
    BuiltInParameters::p_io_0D0D,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::atomicXor_0D0D,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_atomicXor_0C0C(
    BuiltInId::atomicXor_0C0C,
    BuiltInName::atomicXor,
    TExtension::UNDEFINED,
    BuiltInParameters::p_io_0C0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::atomicXor_0C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_atomicExchange_0D0D(
    BuiltInId::atomicExchange_0D0D,
    BuiltInName::atomicExchange,
    TExtension::UNDEFINED,
    BuiltInParameters::p_io_0D0D,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::atomicExchange_0D0D,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_atomicExchange_0C0C(
    BuiltInId::atomicExchange_0C0C,
    BuiltInName::atomicExchange,
    TExtension::UNDEFINED,
    BuiltInParameters::p_io_0C0C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::atomicExchange_0C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_atomicCompSwap_0D0D0D(
    BuiltInId::atomicCompSwap_0D0D0D,
    BuiltInName::atomicCompSwap,
    TExtension::UNDEFINED,
    BuiltInParameters::p_io_0D0D0D,
    3,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::atomicCompSwap_0D0D0D,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_atomicCompSwap_0C0C0C(
    BuiltInId::atomicCompSwap_0C0C0C,
    BuiltInName::atomicCompSwap,
    TExtension::UNDEFINED,
    BuiltInParameters::p_io_0C0C0C,
    3,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::atomicCompSwap_0C0C0C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageSize_0c(
    BuiltInId::imageSize_0c,
    BuiltInName::imageSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0c,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::imageSize_0c,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageSize_0d(
    BuiltInId::imageSize_0d,
    BuiltInName::imageSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0d,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::imageSize_0d,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageSize_0e(
    BuiltInId::imageSize_0e,
    BuiltInName::imageSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0e,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::imageSize_0e,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageSize_0f(
    BuiltInId::imageSize_0f,
    BuiltInName::imageSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0f,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::imageSize_0f,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageSize_0g(
    BuiltInId::imageSize_0g,
    BuiltInName::imageSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0g,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::imageSize_0g,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageSize_0h(
    BuiltInId::imageSize_0h,
    BuiltInName::imageSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0h,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::imageSize_0h,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageSize_0i(
    BuiltInId::imageSize_0i,
    BuiltInName::imageSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0i,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::imageSize_0i,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageSize_0j(
    BuiltInId::imageSize_0j,
    BuiltInName::imageSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0j,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::imageSize_0j,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageSize_0k(
    BuiltInId::imageSize_0k,
    BuiltInName::imageSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0k,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
    BuiltInName::imageSize_0k,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageSize_0l(
    BuiltInId::imageSize_0l,
    BuiltInName::imageSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0l,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::imageSize_0l,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageSize_0m(
    BuiltInId::imageSize_0m,
    BuiltInName::imageSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0m,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::imageSize_0m,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageSize_0n(
    BuiltInId::imageSize_0n,
    BuiltInName::imageSize,
    TExtension::UNDEFINED,
    BuiltInParameters::p0n,
    1,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
    BuiltInName::imageSize_0n,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageLoad_0c1C(
    BuiltInId::imageLoad_0c1C,
    BuiltInName::imageLoad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0c1C,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::imageLoad_0c1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageLoad_0d1C(
    BuiltInId::imageLoad_0d1C,
    BuiltInName::imageLoad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0d1C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::imageLoad_0d1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageLoad_0e1C(
    BuiltInId::imageLoad_0e1C,
    BuiltInName::imageLoad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0e1C,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::imageLoad_0e1C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageLoad_0f2C(
    BuiltInId::imageLoad_0f2C,
    BuiltInName::imageLoad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0f2C,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::imageLoad_0f2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageLoad_0g2C(
    BuiltInId::imageLoad_0g2C,
    BuiltInName::imageLoad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0g2C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::imageLoad_0g2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageLoad_0h2C(
    BuiltInId::imageLoad_0h2C,
    BuiltInName::imageLoad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0h2C,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::imageLoad_0h2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageLoad_0i2C(
    BuiltInId::imageLoad_0i2C,
    BuiltInName::imageLoad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0i2C,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::imageLoad_0i2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageLoad_0j2C(
    BuiltInId::imageLoad_0j2C,
    BuiltInName::imageLoad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0j2C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::imageLoad_0j2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageLoad_0k2C(
    BuiltInId::imageLoad_0k2C,
    BuiltInName::imageLoad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0k2C,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::imageLoad_0k2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageLoad_0l2C(
    BuiltInId::imageLoad_0l2C,
    BuiltInName::imageLoad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0l2C,
    2,
    StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::imageLoad_0l2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageLoad_0m2C(
    BuiltInId::imageLoad_0m2C,
    BuiltInName::imageLoad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0m2C,
    2,
    StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::imageLoad_0m2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageLoad_0n2C(
    BuiltInId::imageLoad_0n2C,
    BuiltInName::imageLoad,
    TExtension::UNDEFINED,
    BuiltInParameters::p0n2C,
    2,
    StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
    BuiltInName::imageLoad_0n2C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageStore_0c1C3B(
    BuiltInId::imageStore_0c1C3B,
    BuiltInName::imageStore,
    TExtension::UNDEFINED,
    BuiltInParameters::p0c1C3B,
    3,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::imageStore_0c1C3B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageStore_0d1C3C(
    BuiltInId::imageStore_0d1C3C,
    BuiltInName::imageStore,
    TExtension::UNDEFINED,
    BuiltInParameters::p0d1C3C,
    3,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::imageStore_0d1C3C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageStore_0e1C3D(
    BuiltInId::imageStore_0e1C3D,
    BuiltInName::imageStore,
    TExtension::UNDEFINED,
    BuiltInParameters::p0e1C3D,
    3,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::imageStore_0e1C3D,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageStore_0f2C3B(
    BuiltInId::imageStore_0f2C3B,
    BuiltInName::imageStore,
    TExtension::UNDEFINED,
    BuiltInParameters::p0f2C3B,
    3,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::imageStore_0f2C3B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageStore_0g2C3C(
    BuiltInId::imageStore_0g2C3C,
    BuiltInName::imageStore,
    TExtension::UNDEFINED,
    BuiltInParameters::p0g2C3C,
    3,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::imageStore_0g2C3C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageStore_0h2C3D(
    BuiltInId::imageStore_0h2C3D,
    BuiltInName::imageStore,
    TExtension::UNDEFINED,
    BuiltInParameters::p0h2C3D,
    3,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::imageStore_0h2C3D,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageStore_0i2C3B(
    BuiltInId::imageStore_0i2C3B,
    BuiltInName::imageStore,
    TExtension::UNDEFINED,
    BuiltInParameters::p0i2C3B,
    3,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::imageStore_0i2C3B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageStore_0j2C3C(
    BuiltInId::imageStore_0j2C3C,
    BuiltInName::imageStore,
    TExtension::UNDEFINED,
    BuiltInParameters::p0j2C3C,
    3,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::imageStore_0j2C3C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageStore_0k2C3D(
    BuiltInId::imageStore_0k2C3D,
    BuiltInName::imageStore,
    TExtension::UNDEFINED,
    BuiltInParameters::p0k2C3D,
    3,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::imageStore_0k2C3D,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageStore_0l2C3B(
    BuiltInId::imageStore_0l2C3B,
    BuiltInName::imageStore,
    TExtension::UNDEFINED,
    BuiltInParameters::p0l2C3B,
    3,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::imageStore_0l2C3B,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageStore_0m2C3C(
    BuiltInId::imageStore_0m2C3C,
    BuiltInName::imageStore,
    TExtension::UNDEFINED,
    BuiltInParameters::p0m2C3C,
    3,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::imageStore_0m2C3C,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_imageStore_0n2C3D(
    BuiltInId::imageStore_0n2C3D,
    BuiltInName::imageStore,
    TExtension::UNDEFINED,
    BuiltInParameters::p0n2C3D,
    3,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::imageStore_0n2C3D,
    EOpCallBuiltInFunction,
    false);
constexpr const TFunction kFunction_memoryBarrier_(
    BuiltInId::memoryBarrier_,
    BuiltInName::memoryBarrier,
    TExtension::UNDEFINED,
    BuiltInParameters::empty,
    0,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::memoryBarrier_,
    EOpMemoryBarrier,
    false);
constexpr const TFunction kFunction_memoryBarrierAtomicCounter_(
    BuiltInId::memoryBarrierAtomicCounter_,
    BuiltInName::memoryBarrierAtomicCounter,
    TExtension::UNDEFINED,
    BuiltInParameters::empty,
    0,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::memoryBarrierAtomicCounter_,
    EOpMemoryBarrierAtomicCounter,
    false);
constexpr const TFunction kFunction_memoryBarrierBuffer_(
    BuiltInId::memoryBarrierBuffer_,
    BuiltInName::memoryBarrierBuffer,
    TExtension::UNDEFINED,
    BuiltInParameters::empty,
    0,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::memoryBarrierBuffer_,
    EOpMemoryBarrierBuffer,
    false);
constexpr const TFunction kFunction_memoryBarrierImage_(
    BuiltInId::memoryBarrierImage_,
    BuiltInName::memoryBarrierImage,
    TExtension::UNDEFINED,
    BuiltInParameters::empty,
    0,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::memoryBarrierImage_,
    EOpMemoryBarrierImage,
    false);
constexpr const TFunction kFunction_barrier_(
    BuiltInId::barrier_,
    BuiltInName::barrier,
    TExtension::UNDEFINED,
    BuiltInParameters::empty,
    0,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::barrier_,
    EOpBarrier,
    false);
constexpr const TFunction kFunction_memoryBarrierShared_(
    BuiltInId::memoryBarrierShared_,
    BuiltInName::memoryBarrierShared,
    TExtension::UNDEFINED,
    BuiltInParameters::empty,
    0,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::memoryBarrierShared_,
    EOpMemoryBarrierShared,
    false);
constexpr const TFunction kFunction_groupMemoryBarrier_(
    BuiltInId::groupMemoryBarrier_,
    BuiltInName::groupMemoryBarrier,
    TExtension::UNDEFINED,
    BuiltInParameters::empty,
    0,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::groupMemoryBarrier_,
    EOpGroupMemoryBarrier,
    false);
constexpr const TFunction kFunction_EmitVertex_(
    BuiltInId::EmitVertex_,
    BuiltInName::EmitVertex,
    TExtension::EXT_geometry_shader,
    BuiltInParameters::empty,
    0,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::EmitVertex_,
    EOpEmitVertex,
    false);
constexpr const TFunction kFunction_EndPrimitive_(
    BuiltInId::EndPrimitive_,
    BuiltInName::EndPrimitive,
    TExtension::EXT_geometry_shader,
    BuiltInParameters::empty,
    0,
    StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
    BuiltInName::EndPrimitive_,
    EOpEndPrimitive,
    false);

}  // namespace BuiltInFunction

void TSymbolTable::insertBuiltInVariables(sh::GLenum shaderType,
                                          ShShaderSpec spec,
                                          const ShBuiltInResources &resources)
{
    const TSourceLoc zeroSourceLoc             = {0, 0, 0, 0};
    TFieldList *fields_gl_DepthRangeParameters = new TFieldList();
    fields_gl_DepthRangeParameters->push_back(new TField(
        new TType(EbtFloat, EbpHigh, EvqGlobal, 1, 1), BuiltInName::near, zeroSourceLoc));
    fields_gl_DepthRangeParameters->push_back(
        new TField(new TType(EbtFloat, EbpHigh, EvqGlobal, 1, 1), BuiltInName::far, zeroSourceLoc));
    fields_gl_DepthRangeParameters->push_back(new TField(
        new TType(EbtFloat, EbpHigh, EvqGlobal, 1, 1), BuiltInName::diff, zeroSourceLoc));
    TStructure *gl_DepthRangeParameters =
        new TStructure(BuiltInId::gl_DepthRangeParameters, BuiltInName::gl_DepthRangeParameters,
                       TExtension::UNDEFINED, fields_gl_DepthRangeParameters);
    insertBuiltIn(COMMON_BUILTINS, gl_DepthRangeParameters);
    TType *type_gl_DepthRange = new TType(gl_DepthRangeParameters);
    type_gl_DepthRange->setQualifier(EvqUniform);
    type_gl_DepthRange->realize();
    TVariable *gl_DepthRange =
        new TVariable(BuiltInId::gl_DepthRange, BuiltInName::gl_DepthRange, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, type_gl_DepthRange);
    insertBuiltIn(COMMON_BUILTINS, gl_DepthRange);
    TVariable *gl_MaxVertexAttribs = new TVariable(
        BuiltInId::gl_MaxVertexAttribs, BuiltInName::gl_MaxVertexAttribs, SymbolType::BuiltIn,
        TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxVertexAttribs);
        gl_MaxVertexAttribs->shareConstPointer(unionArray);
    }
    insertBuiltIn(COMMON_BUILTINS, gl_MaxVertexAttribs);
    TVariable *gl_MaxVertexUniformVectors =
        new TVariable(BuiltInId::gl_MaxVertexUniformVectors,
                      BuiltInName::gl_MaxVertexUniformVectors, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxVertexUniformVectors);
        gl_MaxVertexUniformVectors->shareConstPointer(unionArray);
    }
    insertBuiltIn(COMMON_BUILTINS, gl_MaxVertexUniformVectors);
    TVariable *gl_MaxVertexTextureImageUnits =
        new TVariable(BuiltInId::gl_MaxVertexTextureImageUnits,
                      BuiltInName::gl_MaxVertexTextureImageUnits, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxVertexTextureImageUnits);
        gl_MaxVertexTextureImageUnits->shareConstPointer(unionArray);
    }
    insertBuiltIn(COMMON_BUILTINS, gl_MaxVertexTextureImageUnits);
    TVariable *gl_MaxCombinedTextureImageUnits =
        new TVariable(BuiltInId::gl_MaxCombinedTextureImageUnits,
                      BuiltInName::gl_MaxCombinedTextureImageUnits, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxCombinedTextureImageUnits);
        gl_MaxCombinedTextureImageUnits->shareConstPointer(unionArray);
    }
    insertBuiltIn(COMMON_BUILTINS, gl_MaxCombinedTextureImageUnits);
    TVariable *gl_MaxTextureImageUnits =
        new TVariable(BuiltInId::gl_MaxTextureImageUnits, BuiltInName::gl_MaxTextureImageUnits,
                      SymbolType::BuiltIn, TExtension::UNDEFINED,
                      StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxTextureImageUnits);
        gl_MaxTextureImageUnits->shareConstPointer(unionArray);
    }
    insertBuiltIn(COMMON_BUILTINS, gl_MaxTextureImageUnits);
    TVariable *gl_MaxFragmentUniformVectors =
        new TVariable(BuiltInId::gl_MaxFragmentUniformVectors,
                      BuiltInName::gl_MaxFragmentUniformVectors, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxFragmentUniformVectors);
        gl_MaxFragmentUniformVectors->shareConstPointer(unionArray);
    }
    insertBuiltIn(COMMON_BUILTINS, gl_MaxFragmentUniformVectors);
    TVariable *gl_MaxVaryingVectors = new TVariable(
        BuiltInId::gl_MaxVaryingVectors, BuiltInName::gl_MaxVaryingVectors, SymbolType::BuiltIn,
        TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxVaryingVectors);
        gl_MaxVaryingVectors->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL1_BUILTINS, gl_MaxVaryingVectors);
    TVariable *gl_MaxDrawBuffers = new TVariable(
        BuiltInId::gl_MaxDrawBuffers, BuiltInName::gl_MaxDrawBuffers, SymbolType::BuiltIn,
        TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxDrawBuffers);
        gl_MaxDrawBuffers->shareConstPointer(unionArray);
    }
    insertBuiltIn(COMMON_BUILTINS, gl_MaxDrawBuffers);
    TVariable *gl_MaxDualSourceDrawBuffersEXT = new TVariable(
        BuiltInId::gl_MaxDualSourceDrawBuffersEXT, BuiltInName::gl_MaxDualSourceDrawBuffersEXT,
        SymbolType::BuiltIn, TExtension::EXT_blend_func_extended,
        StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxDualSourceDrawBuffers);
        gl_MaxDualSourceDrawBuffersEXT->shareConstPointer(unionArray);
    }
    insertBuiltIn(COMMON_BUILTINS, gl_MaxDualSourceDrawBuffersEXT);
    TVariable *gl_MaxVertexOutputVectors =
        new TVariable(BuiltInId::gl_MaxVertexOutputVectors, BuiltInName::gl_MaxVertexOutputVectors,
                      SymbolType::BuiltIn, TExtension::UNDEFINED,
                      StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxVertexOutputVectors);
        gl_MaxVertexOutputVectors->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_BUILTINS, gl_MaxVertexOutputVectors);
    TVariable *gl_MaxFragmentInputVectors =
        new TVariable(BuiltInId::gl_MaxFragmentInputVectors,
                      BuiltInName::gl_MaxFragmentInputVectors, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxFragmentInputVectors);
        gl_MaxFragmentInputVectors->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_BUILTINS, gl_MaxFragmentInputVectors);
    TVariable *gl_MinProgramTexelOffset =
        new TVariable(BuiltInId::gl_MinProgramTexelOffset, BuiltInName::gl_MinProgramTexelOffset,
                      SymbolType::BuiltIn, TExtension::UNDEFINED,
                      StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MinProgramTexelOffset);
        gl_MinProgramTexelOffset->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_BUILTINS, gl_MinProgramTexelOffset);
    TVariable *gl_MaxProgramTexelOffset =
        new TVariable(BuiltInId::gl_MaxProgramTexelOffset, BuiltInName::gl_MaxProgramTexelOffset,
                      SymbolType::BuiltIn, TExtension::UNDEFINED,
                      StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxProgramTexelOffset);
        gl_MaxProgramTexelOffset->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_BUILTINS, gl_MaxProgramTexelOffset);
    TVariable *gl_MaxImageUnits = new TVariable(
        BuiltInId::gl_MaxImageUnits, BuiltInName::gl_MaxImageUnits, SymbolType::BuiltIn,
        TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxImageUnits);
        gl_MaxImageUnits->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxImageUnits);
    TVariable *gl_MaxVertexImageUniforms =
        new TVariable(BuiltInId::gl_MaxVertexImageUniforms, BuiltInName::gl_MaxVertexImageUniforms,
                      SymbolType::BuiltIn, TExtension::UNDEFINED,
                      StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxVertexImageUniforms);
        gl_MaxVertexImageUniforms->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxVertexImageUniforms);
    TVariable *gl_MaxFragmentImageUniforms =
        new TVariable(BuiltInId::gl_MaxFragmentImageUniforms,
                      BuiltInName::gl_MaxFragmentImageUniforms, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxFragmentImageUniforms);
        gl_MaxFragmentImageUniforms->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxFragmentImageUniforms);
    TVariable *gl_MaxComputeImageUniforms =
        new TVariable(BuiltInId::gl_MaxComputeImageUniforms,
                      BuiltInName::gl_MaxComputeImageUniforms, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxComputeImageUniforms);
        gl_MaxComputeImageUniforms->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxComputeImageUniforms);
    TVariable *gl_MaxCombinedImageUniforms =
        new TVariable(BuiltInId::gl_MaxCombinedImageUniforms,
                      BuiltInName::gl_MaxCombinedImageUniforms, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxCombinedImageUniforms);
        gl_MaxCombinedImageUniforms->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxCombinedImageUniforms);
    TVariable *gl_MaxCombinedShaderOutputResources =
        new TVariable(BuiltInId::gl_MaxCombinedShaderOutputResources,
                      BuiltInName::gl_MaxCombinedShaderOutputResources, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxCombinedShaderOutputResources);
        gl_MaxCombinedShaderOutputResources->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxCombinedShaderOutputResources);
    TVariable *gl_MaxComputeWorkGroupCount =
        new TVariable(BuiltInId::gl_MaxComputeWorkGroupCount,
                      BuiltInName::gl_MaxComputeWorkGroupCount, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpHigh, EvqConst, 3, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[3];
        for (size_t index = 0u; index < 3; ++index)
        {
            unionArray[index].setIConst(resources.MaxComputeWorkGroupCount[index]);
        }
        gl_MaxComputeWorkGroupCount->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxComputeWorkGroupCount);
    TVariable *gl_MaxComputeWorkGroupSize =
        new TVariable(BuiltInId::gl_MaxComputeWorkGroupSize,
                      BuiltInName::gl_MaxComputeWorkGroupSize, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpHigh, EvqConst, 3, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[3];
        for (size_t index = 0u; index < 3; ++index)
        {
            unionArray[index].setIConst(resources.MaxComputeWorkGroupSize[index]);
        }
        gl_MaxComputeWorkGroupSize->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxComputeWorkGroupSize);
    TVariable *gl_MaxComputeUniformComponents =
        new TVariable(BuiltInId::gl_MaxComputeUniformComponents,
                      BuiltInName::gl_MaxComputeUniformComponents, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxComputeUniformComponents);
        gl_MaxComputeUniformComponents->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxComputeUniformComponents);
    TVariable *gl_MaxComputeTextureImageUnits =
        new TVariable(BuiltInId::gl_MaxComputeTextureImageUnits,
                      BuiltInName::gl_MaxComputeTextureImageUnits, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxComputeTextureImageUnits);
        gl_MaxComputeTextureImageUnits->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxComputeTextureImageUnits);
    TVariable *gl_MaxComputeAtomicCounters =
        new TVariable(BuiltInId::gl_MaxComputeAtomicCounters,
                      BuiltInName::gl_MaxComputeAtomicCounters, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxComputeAtomicCounters);
        gl_MaxComputeAtomicCounters->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxComputeAtomicCounters);
    TVariable *gl_MaxComputeAtomicCounterBuffers =
        new TVariable(BuiltInId::gl_MaxComputeAtomicCounterBuffers,
                      BuiltInName::gl_MaxComputeAtomicCounterBuffers, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxComputeAtomicCounterBuffers);
        gl_MaxComputeAtomicCounterBuffers->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxComputeAtomicCounterBuffers);
    TVariable *gl_MaxVertexAtomicCounters =
        new TVariable(BuiltInId::gl_MaxVertexAtomicCounters,
                      BuiltInName::gl_MaxVertexAtomicCounters, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxVertexAtomicCounters);
        gl_MaxVertexAtomicCounters->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxVertexAtomicCounters);
    TVariable *gl_MaxFragmentAtomicCounters =
        new TVariable(BuiltInId::gl_MaxFragmentAtomicCounters,
                      BuiltInName::gl_MaxFragmentAtomicCounters, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxFragmentAtomicCounters);
        gl_MaxFragmentAtomicCounters->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxFragmentAtomicCounters);
    TVariable *gl_MaxCombinedAtomicCounters =
        new TVariable(BuiltInId::gl_MaxCombinedAtomicCounters,
                      BuiltInName::gl_MaxCombinedAtomicCounters, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxCombinedAtomicCounters);
        gl_MaxCombinedAtomicCounters->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxCombinedAtomicCounters);
    TVariable *gl_MaxAtomicCounterBindings =
        new TVariable(BuiltInId::gl_MaxAtomicCounterBindings,
                      BuiltInName::gl_MaxAtomicCounterBindings, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxAtomicCounterBindings);
        gl_MaxAtomicCounterBindings->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxAtomicCounterBindings);
    TVariable *gl_MaxVertexAtomicCounterBuffers =
        new TVariable(BuiltInId::gl_MaxVertexAtomicCounterBuffers,
                      BuiltInName::gl_MaxVertexAtomicCounterBuffers, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxVertexAtomicCounterBuffers);
        gl_MaxVertexAtomicCounterBuffers->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxVertexAtomicCounterBuffers);
    TVariable *gl_MaxFragmentAtomicCounterBuffers =
        new TVariable(BuiltInId::gl_MaxFragmentAtomicCounterBuffers,
                      BuiltInName::gl_MaxFragmentAtomicCounterBuffers, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxFragmentAtomicCounterBuffers);
        gl_MaxFragmentAtomicCounterBuffers->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxFragmentAtomicCounterBuffers);
    TVariable *gl_MaxCombinedAtomicCounterBuffers =
        new TVariable(BuiltInId::gl_MaxCombinedAtomicCounterBuffers,
                      BuiltInName::gl_MaxCombinedAtomicCounterBuffers, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxCombinedAtomicCounterBuffers);
        gl_MaxCombinedAtomicCounterBuffers->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxCombinedAtomicCounterBuffers);
    TVariable *gl_MaxAtomicCounterBufferSize =
        new TVariable(BuiltInId::gl_MaxAtomicCounterBufferSize,
                      BuiltInName::gl_MaxAtomicCounterBufferSize, SymbolType::BuiltIn,
                      TExtension::UNDEFINED, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxAtomicCounterBufferSize);
        gl_MaxAtomicCounterBufferSize->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxAtomicCounterBufferSize);
    TVariable *gl_MaxGeometryInputComponents = new TVariable(
        BuiltInId::gl_MaxGeometryInputComponents, BuiltInName::gl_MaxGeometryInputComponents,
        SymbolType::BuiltIn, TExtension::EXT_geometry_shader,
        StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxGeometryInputComponents);
        gl_MaxGeometryInputComponents->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxGeometryInputComponents);
    TVariable *gl_MaxGeometryOutputComponents = new TVariable(
        BuiltInId::gl_MaxGeometryOutputComponents, BuiltInName::gl_MaxGeometryOutputComponents,
        SymbolType::BuiltIn, TExtension::EXT_geometry_shader,
        StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxGeometryOutputComponents);
        gl_MaxGeometryOutputComponents->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxGeometryOutputComponents);
    TVariable *gl_MaxGeometryImageUniforms = new TVariable(
        BuiltInId::gl_MaxGeometryImageUniforms, BuiltInName::gl_MaxGeometryImageUniforms,
        SymbolType::BuiltIn, TExtension::EXT_geometry_shader,
        StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxGeometryImageUniforms);
        gl_MaxGeometryImageUniforms->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxGeometryImageUniforms);
    TVariable *gl_MaxGeometryTextureImageUnits = new TVariable(
        BuiltInId::gl_MaxGeometryTextureImageUnits, BuiltInName::gl_MaxGeometryTextureImageUnits,
        SymbolType::BuiltIn, TExtension::EXT_geometry_shader,
        StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxGeometryTextureImageUnits);
        gl_MaxGeometryTextureImageUnits->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxGeometryTextureImageUnits);
    TVariable *gl_MaxGeometryOutputVertices = new TVariable(
        BuiltInId::gl_MaxGeometryOutputVertices, BuiltInName::gl_MaxGeometryOutputVertices,
        SymbolType::BuiltIn, TExtension::EXT_geometry_shader,
        StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxGeometryOutputVertices);
        gl_MaxGeometryOutputVertices->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxGeometryOutputVertices);
    TVariable *gl_MaxGeometryTotalOutputComponents = new TVariable(
        BuiltInId::gl_MaxGeometryTotalOutputComponents,
        BuiltInName::gl_MaxGeometryTotalOutputComponents, SymbolType::BuiltIn,
        TExtension::EXT_geometry_shader, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxGeometryTotalOutputComponents);
        gl_MaxGeometryTotalOutputComponents->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxGeometryTotalOutputComponents);
    TVariable *gl_MaxGeometryUniformComponents = new TVariable(
        BuiltInId::gl_MaxGeometryUniformComponents, BuiltInName::gl_MaxGeometryUniformComponents,
        SymbolType::BuiltIn, TExtension::EXT_geometry_shader,
        StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxGeometryUniformComponents);
        gl_MaxGeometryUniformComponents->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxGeometryUniformComponents);
    TVariable *gl_MaxGeometryAtomicCounters = new TVariable(
        BuiltInId::gl_MaxGeometryAtomicCounters, BuiltInName::gl_MaxGeometryAtomicCounters,
        SymbolType::BuiltIn, TExtension::EXT_geometry_shader,
        StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxGeometryAtomicCounters);
        gl_MaxGeometryAtomicCounters->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxGeometryAtomicCounters);
    TVariable *gl_MaxGeometryAtomicCounterBuffers = new TVariable(
        BuiltInId::gl_MaxGeometryAtomicCounterBuffers,
        BuiltInName::gl_MaxGeometryAtomicCounterBuffers, SymbolType::BuiltIn,
        TExtension::EXT_geometry_shader, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
    {
        TConstantUnion *unionArray = new TConstantUnion[1];
        unionArray[0].setIConst(resources.MaxGeometryAtomicCounterBuffers);
        gl_MaxGeometryAtomicCounterBuffers->shareConstPointer(unionArray);
    }
    insertBuiltIn(ESSL3_1_BUILTINS, gl_MaxGeometryAtomicCounterBuffers);
    if (shaderType == GL_FRAGMENT_SHADER)
    {
        insertBuiltIn(COMMON_BUILTINS, &BuiltInVariable::kVar_gl_FragCoord);
        insertBuiltIn(COMMON_BUILTINS, &BuiltInVariable::kVar_gl_FrontFacing);
        insertBuiltIn(COMMON_BUILTINS, &BuiltInVariable::kVar_gl_PointCoord);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInVariable::kVar_gl_FragColor);
        TType *type_gl_FragData = new TType(EbtFloat, EbpMedium, EvqFragData, 4);
        if (spec != SH_WEBGL2_SPEC && spec != SH_WEBGL3_SPEC)
        {
            type_gl_FragData->makeArray(resources.MaxDrawBuffers);
        }
        else
        {
            type_gl_FragData->makeArray(1u);
        }
        type_gl_FragData->realize();
        TVariable *gl_FragData =
            new TVariable(BuiltInId::gl_FragData, BuiltInName::gl_FragData, SymbolType::BuiltIn,
                          TExtension::UNDEFINED, type_gl_FragData);
        insertBuiltIn(ESSL1_BUILTINS, gl_FragData);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInVariable::kVar_gl_FragDepth);
        if (resources.EXT_blend_func_extended)
        {
            insertBuiltIn(ESSL1_BUILTINS, &BuiltInVariable::kVar_gl_SecondaryFragColorEXT);
            TType *type_gl_SecondaryFragDataEXT =
                new TType(EbtFloat, EbpMedium, EvqSecondaryFragDataEXT, 4, 1);
            type_gl_SecondaryFragDataEXT->makeArray(resources.MaxDualSourceDrawBuffers);
            type_gl_SecondaryFragDataEXT->realize();
            TVariable *gl_SecondaryFragDataEXT =
                new TVariable(BuiltInId::gl_SecondaryFragDataEXT,
                              BuiltInName::gl_SecondaryFragDataEXT, SymbolType::BuiltIn,
                              TExtension::EXT_blend_func_extended, type_gl_SecondaryFragDataEXT);
            insertBuiltIn(ESSL1_BUILTINS, gl_SecondaryFragDataEXT);
        }
        if (resources.EXT_frag_depth)
        {
            TType *type_gl_FragDepthEXT =
                new TType(EbtFloat, resources.FragmentPrecisionHigh ? EbpHigh : EbpMedium,
                          EvqFragDepthEXT, 1);
            type_gl_FragDepthEXT->realize();
            TVariable *gl_FragDepthEXT = new TVariable(
                BuiltInId::gl_FragDepthEXT, BuiltInName::gl_FragDepthEXT, SymbolType::BuiltIn,
                TExtension::EXT_frag_depth, type_gl_FragDepthEXT);
            insertBuiltIn(ESSL1_BUILTINS, gl_FragDepthEXT);
        }
        if (resources.EXT_shader_framebuffer_fetch)
        {
            TType *type_gl_LastFragData = new TType(EbtFloat, EbpMedium, EvqLastFragData, 4, 1);
            type_gl_LastFragData->makeArray(resources.MaxDrawBuffers);
            type_gl_LastFragData->realize();
            TVariable *gl_LastFragData = new TVariable(
                BuiltInId::gl_LastFragData, BuiltInName::gl_LastFragData, SymbolType::BuiltIn,
                TExtension::EXT_shader_framebuffer_fetch, type_gl_LastFragData);
            insertBuiltIn(ESSL1_BUILTINS, gl_LastFragData);
        }
        if (resources.NV_shader_framebuffer_fetch)
        {
            insertBuiltIn(ESSL1_BUILTINS, &BuiltInVariable::kVar_gl_LastFragColor);
            TType *type_gl_LastFragDataNV = new TType(EbtFloat, EbpMedium, EvqLastFragData, 4, 1);
            type_gl_LastFragDataNV->makeArray(resources.MaxDrawBuffers);
            type_gl_LastFragDataNV->realize();
            TVariable *gl_LastFragDataNV = new TVariable(
                BuiltInId::gl_LastFragDataNV, BuiltInName::gl_LastFragData, SymbolType::BuiltIn,
                TExtension::NV_shader_framebuffer_fetch, type_gl_LastFragDataNV);
            insertBuiltIn(ESSL1_BUILTINS, gl_LastFragDataNV);
        }
        if (!resources.EXT_shader_framebuffer_fetch && !resources.NV_shader_framebuffer_fetch &&
            resources.ARM_shader_framebuffer_fetch)
        {
            insertBuiltIn(ESSL1_BUILTINS, &BuiltInVariable::kVar_gl_LastFragColorARM);
        }
        if (resources.EXT_geometry_shader)
        {
            insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInVariable::kVar_gl_PrimitiveID);
            insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInVariable::kVar_gl_Layer);
        }
    }
    if (shaderType == GL_VERTEX_SHADER)
    {
        insertBuiltIn(COMMON_BUILTINS, &BuiltInVariable::kVar_gl_Position);
        insertBuiltIn(COMMON_BUILTINS, &BuiltInVariable::kVar_gl_PointSize);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInVariable::kVar_gl_InstanceID);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInVariable::kVar_gl_VertexID);
        insertBuiltIn(GLSL_BUILTINS, &BuiltInVariable::kVar_gl_ViewportIndex);
        insertBuiltIn(GLSL_BUILTINS, &BuiltInVariable::kVar_gl_LayerVS);
    }
    if (shaderType == GL_COMPUTE_SHADER)
    {
        insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInVariable::kVar_gl_NumWorkGroups);
        insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInVariable::kVar_gl_WorkGroupSize);
        insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInVariable::kVar_gl_WorkGroupID);
        insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInVariable::kVar_gl_LocalInvocationID);
        insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInVariable::kVar_gl_GlobalInvocationID);
        insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInVariable::kVar_gl_LocalInvocationIndex);
    }
    if (shaderType == GL_GEOMETRY_SHADER_EXT)
    {
        insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInVariable::kVar_gl_PrimitiveIDIn);
        insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInVariable::kVar_gl_InvocationID);
        insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInVariable::kVar_gl_PrimitiveIDGS);
        insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInVariable::kVar_gl_LayerGS);
        TFieldList *fields_gl_PerVertex = new TFieldList();
        fields_gl_PerVertex->push_back(new TField(new TType(EbtFloat, EbpHigh, EvqPosition, 4, 1),
                                                  BuiltInName::gl_Position, zeroSourceLoc));
        TInterfaceBlock *gl_PerVertex =
            new TInterfaceBlock(BuiltInId::gl_PerVertex, BuiltInName::gl_PerVertex,
                                TExtension::EXT_geometry_shader, fields_gl_PerVertex);
        insertBuiltIn(ESSL3_1_BUILTINS, gl_PerVertex);
        TType *type_gl_in = new TType(gl_PerVertex, EvqPerVertexIn, TLayoutQualifier::Create());
        type_gl_in->makeArray(0u);
        type_gl_in->realize();
        TVariable *gl_in = new TVariable(BuiltInId::gl_in, BuiltInName::gl_in, SymbolType::BuiltIn,
                                         TExtension::EXT_geometry_shader, type_gl_in);
        insertBuiltIn(ESSL3_1_BUILTINS, gl_in);
        TFieldList *fields_gl_PerVertexOutBlock = new TFieldList();
        fields_gl_PerVertexOutBlock->push_back(
            new TField(new TType(EbtFloat, EbpHigh, EvqPosition, 4, 1), BuiltInName::gl_Position,
                       zeroSourceLoc));
        TInterfaceBlock *gl_PerVertexOutBlock =
            new TInterfaceBlock(BuiltInId::gl_PerVertexOutBlock, BuiltInName::gl_PerVertex,
                                TExtension::EXT_geometry_shader, fields_gl_PerVertexOutBlock);
        TType *type_gl_PositionGS = new TType(EbtFloat, EbpHigh, EvqPosition, 4);
        type_gl_PositionGS->setInterfaceBlock(gl_PerVertexOutBlock);
        type_gl_PositionGS->realize();
        TVariable *gl_PositionGS =
            new TVariable(BuiltInId::gl_PositionGS, BuiltInName::gl_Position, SymbolType::BuiltIn,
                          TExtension::EXT_geometry_shader, type_gl_PositionGS);
        insertBuiltIn(ESSL3_1_BUILTINS, gl_PositionGS);
    }
    if (resources.OVR_multiview && shaderType != GL_COMPUTE_SHADER)
    {
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInVariable::kVar_gl_ViewID_OVR);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInVariable::kVar_gl_ViewID_OVRESSL1);
    }
}

void TSymbolTable::insertBuiltInFunctions(sh::GLenum shaderType)
{
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_radians_0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_radians_1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_radians_2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_radians_3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_degrees_0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_degrees_1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_degrees_2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_degrees_3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_sin_0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_sin_1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_sin_2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_sin_3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_cos_0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_cos_1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_cos_2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_cos_3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_tan_0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_tan_1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_tan_2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_tan_3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_asin_0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_asin_1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_asin_2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_asin_3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_acos_0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_acos_1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_acos_2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_acos_3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_atan_0B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_atan_1B1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_atan_2B2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_atan_3B3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_atan_0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_atan_1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_atan_2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_atan_3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_sinh_0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_sinh_1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_sinh_2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_sinh_3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_cosh_0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_cosh_1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_cosh_2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_cosh_3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_tanh_0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_tanh_1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_tanh_2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_tanh_3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_asinh_0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_asinh_1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_asinh_2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_asinh_3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_acosh_0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_acosh_1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_acosh_2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_acosh_3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_atanh_0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_atanh_1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_atanh_2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_atanh_3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_pow_0B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_pow_1B1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_pow_2B2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_pow_3B3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_exp_0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_exp_1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_exp_2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_exp_3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_log_0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_log_1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_log_2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_log_3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_exp2_0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_exp2_1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_exp2_2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_exp2_3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_log2_0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_log2_1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_log2_2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_log2_3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_sqrt_0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_sqrt_1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_sqrt_2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_sqrt_3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_inversesqrt_0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_inversesqrt_1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_inversesqrt_2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_inversesqrt_3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_abs_0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_abs_1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_abs_2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_abs_3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_abs_0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_abs_1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_abs_2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_abs_3C);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_sign_0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_sign_1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_sign_2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_sign_3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_sign_0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_sign_1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_sign_2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_sign_3C);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_floor_0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_floor_1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_floor_2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_floor_3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_trunc_0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_trunc_1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_trunc_2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_trunc_3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_round_0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_round_1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_round_2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_round_3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_roundEven_0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_roundEven_1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_roundEven_2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_roundEven_3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_ceil_0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_ceil_1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_ceil_2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_ceil_3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_fract_0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_fract_1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_fract_2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_fract_3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_mod_0B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_mod_1B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_mod_2B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_mod_3B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_mod_1B1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_mod_2B2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_mod_3B3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_min_0B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_min_1B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_min_2B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_min_3B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_min_1B1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_min_2B2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_min_3B3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_min_0C0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_min_1C1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_min_2C2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_min_3C3C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_min_1C0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_min_2C0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_min_3C0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_min_0D0D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_min_1D1D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_min_2D2D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_min_3D3D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_min_1D0D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_min_2D0D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_min_3D0D);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_max_0B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_max_1B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_max_2B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_max_3B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_max_1B1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_max_2B2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_max_3B3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_max_0C0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_max_1C1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_max_2C2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_max_3C3C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_max_1C0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_max_2C0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_max_3C0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_max_0D0D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_max_1D1D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_max_2D2D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_max_3D3D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_max_1D0D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_max_2D0D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_max_3D0D);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_clamp_0B0B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_clamp_1B0B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_clamp_2B0B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_clamp_3B0B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_clamp_1B1B1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_clamp_2B2B2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_clamp_3B3B3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_clamp_0C0C0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_clamp_1C0C0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_clamp_2C0C0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_clamp_3C0C0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_clamp_1C1C1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_clamp_2C2C2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_clamp_3C3C3C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_clamp_0D0D0D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_clamp_1D0D0D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_clamp_2D0D0D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_clamp_3D0D0D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_clamp_1D1D1D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_clamp_2D2D2D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_clamp_3D3D3D);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_mix_0B0B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_mix_1B1B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_mix_2B2B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_mix_3B3B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_mix_1B1B1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_mix_2B2B2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_mix_3B3B3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_mix_0B0B0E);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_mix_1B1B1E);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_mix_2B2B2E);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_mix_3B3B3E);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_step_0B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_step_1B1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_step_2B2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_step_3B3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_step_0B1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_step_0B2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_step_0B3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_smoothstep_0B0B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_smoothstep_1B1B1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_smoothstep_2B2B2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_smoothstep_3B3B3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_smoothstep_0B0B1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_smoothstep_0B0B2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_smoothstep_0B0B3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_modf_0B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_modf_1B1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_modf_2B2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_modf_3B3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_isnan_0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_isnan_1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_isnan_2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_isnan_3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_isinf_0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_isinf_1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_isinf_2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_isinf_3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_floatBitsToInt_0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_floatBitsToInt_1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_floatBitsToInt_2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_floatBitsToInt_3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_floatBitsToUint_0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_floatBitsToUint_1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_floatBitsToUint_2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_floatBitsToUint_3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_intBitsToFloat_0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_intBitsToFloat_1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_intBitsToFloat_2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_intBitsToFloat_3C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_uintBitsToFloat_0D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_uintBitsToFloat_1D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_uintBitsToFloat_2D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_uintBitsToFloat_3D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_frexp_0B0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_frexp_1B1C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_frexp_2B2C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_frexp_3B3C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_ldexp_0B0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_ldexp_1B1C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_ldexp_2B2C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_ldexp_3B3C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_packSnorm2x16_1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_packUnorm2x16_1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_packHalf2x16_1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_unpackSnorm2x16_0D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_unpackUnorm2x16_0D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_unpackHalf2x16_0D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_packUnorm4x8_3B);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_packSnorm4x8_3B);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_unpackUnorm4x8_0D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_unpackSnorm4x8_0D);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_length_0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_length_1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_length_2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_length_3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_distance_0B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_distance_1B1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_distance_2B2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_distance_3B3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_dot_0B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_dot_1B1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_dot_2B2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_dot_3B3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_cross_2B2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_normalize_0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_normalize_1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_normalize_2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_normalize_3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_faceforward_0B0B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_faceforward_1B1B1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_faceforward_2B2B2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_faceforward_3B3B3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_reflect_0B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_reflect_1B1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_reflect_2B2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_reflect_3B3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_refract_0B0B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_refract_1B1B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_refract_2B2B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_refract_3B3B0B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_matrixCompMult_5B5B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_matrixCompMult_ABAB);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_matrixCompMult_FBFB);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_matrixCompMult_9B9B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_matrixCompMult_6B6B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_matrixCompMult_DBDB);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_matrixCompMult_7B7B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_matrixCompMult_EBEB);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_matrixCompMult_BBBB);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_outerProduct_1B1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_outerProduct_2B2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_outerProduct_3B3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_outerProduct_2B1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_outerProduct_1B2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_outerProduct_3B1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_outerProduct_1B3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_outerProduct_3B2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_outerProduct_2B3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_transpose_5B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_transpose_AB);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_transpose_FB);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_transpose_6B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_transpose_9B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_transpose_7B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_transpose_DB);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_transpose_BB);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_transpose_EB);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_determinant_5B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_determinant_AB);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_determinant_FB);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_inverse_5B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_inverse_AB);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_inverse_FB);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_lessThan_1B1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_lessThan_2B2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_lessThan_3B3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_lessThan_1C1C);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_lessThan_2C2C);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_lessThan_3C3C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_lessThan_1D1D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_lessThan_2D2D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_lessThan_3D3D);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_lessThanEqual_1B1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_lessThanEqual_2B2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_lessThanEqual_3B3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_lessThanEqual_1C1C);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_lessThanEqual_2C2C);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_lessThanEqual_3C3C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_lessThanEqual_1D1D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_lessThanEqual_2D2D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_lessThanEqual_3D3D);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_greaterThan_1B1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_greaterThan_2B2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_greaterThan_3B3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_greaterThan_1C1C);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_greaterThan_2C2C);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_greaterThan_3C3C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_greaterThan_1D1D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_greaterThan_2D2D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_greaterThan_3D3D);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_greaterThanEqual_1B1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_greaterThanEqual_2B2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_greaterThanEqual_3B3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_greaterThanEqual_1C1C);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_greaterThanEqual_2C2C);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_greaterThanEqual_3C3C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_greaterThanEqual_1D1D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_greaterThanEqual_2D2D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_greaterThanEqual_3D3D);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_equal_1B1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_equal_2B2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_equal_3B3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_equal_1C1C);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_equal_2C2C);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_equal_3C3C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_equal_1D1D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_equal_2D2D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_equal_3D3D);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_equal_1E1E);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_equal_2E2E);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_equal_3E3E);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_notEqual_1B1B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_notEqual_2B2B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_notEqual_3B3B);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_notEqual_1C1C);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_notEqual_2C2C);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_notEqual_3C3C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_notEqual_1D1D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_notEqual_2D2D);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_notEqual_3D3D);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_notEqual_1E1E);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_notEqual_2E2E);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_notEqual_3E3E);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_any_1E);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_any_2E);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_any_3E);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_all_1E);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_all_2E);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_all_3E);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_notFunc_1E);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_notFunc_2E);
    insertBuiltIn(COMMON_BUILTINS, &BuiltInFunction::kFunction_notFunc_3E);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldExtract_0C0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldExtract_1C0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldExtract_2C0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldExtract_3C0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldExtract_0D0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldExtract_1D0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldExtract_2D0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldExtract_3D0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldInsert_0C0C0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldInsert_1C1C0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldInsert_2C2C0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldInsert_3C3C0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldInsert_0D0D0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldInsert_1D1D0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldInsert_2D2D0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldInsert_3D3D0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldReverse_0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldReverse_1C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldReverse_2C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldReverse_3C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldReverse_0D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldReverse_1D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldReverse_2D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitfieldReverse_3D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitCount_0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitCount_1C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitCount_2C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitCount_3C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitCount_0D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitCount_1D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitCount_2D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_bitCount_3D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_findLSB_0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_findLSB_1C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_findLSB_2C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_findLSB_3C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_findLSB_0D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_findLSB_1D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_findLSB_2D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_findLSB_3D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_findMSB_0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_findMSB_1C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_findMSB_2C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_findMSB_3C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_findMSB_0D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_findMSB_1D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_findMSB_2D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_findMSB_3D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_uaddCarry_0D0D0D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_uaddCarry_1D1D1D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_uaddCarry_2D2D2D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_uaddCarry_3D3D3D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_usubBorrow_0D0D0D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_usubBorrow_1D1D1D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_usubBorrow_2D2D2D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_usubBorrow_3D3D3D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_umulExtended_0D0D0D0D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_umulExtended_1D1D1D1D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_umulExtended_2D2D2D2D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_umulExtended_3D3D3D3D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imulExtended_0C0C0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imulExtended_1C1C1C1C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imulExtended_2C2C2C2C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imulExtended_3C3C3C3C);
    insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_texture2D_0H1B);
    insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_texture2DProj_0H2B);
    insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_texture2DProj_0H3B);
    insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_textureCube_0J2B);
    insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_texture2D_0L1B);
    insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_texture2DProj_0L2B);
    insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_texture2DProj_0L3B);
    insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_texture2DRect_0N1B);
    insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_texture2DRectProj_0N2B);
    insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_texture2DRectProj_0N3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0N1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0N2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0N3B);
    insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_texture2DGradEXT_0H1B1B1B);
    insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_texture2DProjGradEXT_0H2B1B1B);
    insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_texture2DProjGradEXT_0H3B1B1B);
    insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_textureCubeGradEXT_0J2B2B2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0H1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0P1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0U1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0I2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0Q2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0V2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0J2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0R2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0W2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0K2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0S2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0X2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0H2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0P2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0U2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0H3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0P3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0U3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0I3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0Q3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0V3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureLod_0H1B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureLod_0P1B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureLod_0U1B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureLod_0I2B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureLod_0Q2B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureLod_0V2B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureLod_0J2B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureLod_0R2B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureLod_0W2B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureLod_0K2B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureLod_0S2B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureLod_0X2B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0Z2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0a3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0b3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0Z3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureLod_0Z2B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureSize_0H0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureSize_0P0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureSize_0U0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureSize_0I0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureSize_0Q0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureSize_0V0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureSize_0J0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureSize_0R0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureSize_0W0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureSize_0K0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureSize_0S0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureSize_0X0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureSize_0Z0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureSize_0a0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureSize_0b0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureSize_0O);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureSize_0T);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureSize_0Y);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjLod_0H2B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjLod_0P2B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjLod_0U2B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjLod_0H3B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjLod_0P3B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjLod_0U3B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjLod_0I3B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjLod_0Q3B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjLod_0V3B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjLod_0Z3B0B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texelFetch_0H1C0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texelFetch_0P1C0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texelFetch_0U1C0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texelFetch_0I2C0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texelFetch_0Q2C0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texelFetch_0V2C0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texelFetch_0K2C0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texelFetch_0S2C0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texelFetch_0X2C0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGrad_0H1B1B1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGrad_0P1B1B1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGrad_0U1B1B1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGrad_0I2B2B2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGrad_0Q2B2B2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGrad_0V2B2B2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGrad_0J2B2B2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGrad_0R2B2B2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGrad_0W2B2B2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGrad_0Z2B1B1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGrad_0a3B2B2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGrad_0K2B1B1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGrad_0S2B1B1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGrad_0X2B1B1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGrad_0b3B1B1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjGrad_0H2B1B1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjGrad_0P2B1B1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjGrad_0U2B1B1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjGrad_0H3B1B1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjGrad_0P3B1B1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjGrad_0U3B1B1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjGrad_0I3B2B2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjGrad_0Q3B2B2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjGrad_0V3B2B2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjGrad_0Z3B1B1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureOffset_0H1B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureOffset_0P1B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureOffset_0U1B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureOffset_0I2B2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureOffset_0Q2B2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureOffset_0V2B2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureOffset_0Z2B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureOffset_0K2B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureOffset_0S2B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureOffset_0X2B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjOffset_0H2B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjOffset_0P2B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjOffset_0U2B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjOffset_0H3B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjOffset_0P3B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjOffset_0U3B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjOffset_0I3B2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjOffset_0Q3B2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjOffset_0V3B2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjOffset_0Z3B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureLodOffset_0H1B0B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureLodOffset_0P1B0B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureLodOffset_0U1B0B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureLodOffset_0I2B0B2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureLodOffset_0Q2B0B2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureLodOffset_0V2B0B2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureLodOffset_0Z2B0B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureLodOffset_0K2B0B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureLodOffset_0S2B0B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureLodOffset_0X2B0B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjLodOffset_0H2B0B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjLodOffset_0P2B0B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjLodOffset_0U2B0B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjLodOffset_0H3B0B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjLodOffset_0P3B0B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjLodOffset_0U3B0B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjLodOffset_0I3B0B2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjLodOffset_0Q3B0B2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjLodOffset_0V3B0B2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjLodOffset_0Z3B0B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texelFetchOffset_0H1C0C1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texelFetchOffset_0P1C0C1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texelFetchOffset_0U1C0C1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texelFetchOffset_0I2C0C2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texelFetchOffset_0Q2C0C2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texelFetchOffset_0V2C0C2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texelFetchOffset_0K2C0C1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texelFetchOffset_0S2C0C1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texelFetchOffset_0X2C0C1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGradOffset_0H1B1B1B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGradOffset_0P1B1B1B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGradOffset_0U1B1B1B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGradOffset_0I2B2B2B2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGradOffset_0Q2B2B2B2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGradOffset_0V2B2B2B2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGradOffset_0Z2B1B1B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGradOffset_0K2B1B1B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGradOffset_0S2B1B1B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGradOffset_0X2B1B1B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureGradOffset_0b3B1B1B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjGradOffset_0H2B1B1B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjGradOffset_0P2B1B1B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjGradOffset_0U2B1B1B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjGradOffset_0H3B1B1B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjGradOffset_0P3B1B1B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjGradOffset_0U3B1B1B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjGradOffset_0I3B2B2B2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjGradOffset_0Q3B2B2B2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjGradOffset_0V3B2B2B2C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjGradOffset_0Z3B1B1B1C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0L1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0L2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0L3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureSize_0L0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texelFetch_0L1C0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0M1B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0M2B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0M3B);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_rgb_2_yuv_2B0G);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_yuv_2_rgb_2B0G);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureSize_0M0C);
    insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texelFetch_0M1C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_texelFetch_0O1C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_texelFetch_0T1C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_texelFetch_0Y1C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0H1B);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0P1B);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0U1B);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0H1B0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0P1B0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0U1B0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0K2B);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0S2B);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0X2B);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0K2B0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0S2B0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0X2B0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0J2B);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0R2B);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0W2B);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0J2B0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0R2B0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0W2B0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0Z1B);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0Z1B0B);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0b2B);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0b2B0B);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0a2B);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGather_0a2B0B);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGatherOffset_0H1B1C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGatherOffset_0P1B1C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGatherOffset_0U1B1C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGatherOffset_0H1B1C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGatherOffset_0P1B1C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGatherOffset_0U1B1C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGatherOffset_0K2B1C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGatherOffset_0S2B1C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGatherOffset_0X2B1C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGatherOffset_0K2B1C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGatherOffset_0S2B1C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGatherOffset_0X2B1C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGatherOffset_0Z1B0B1C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_textureGatherOffset_0b2B0B1C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_atomicCounter_0F);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_atomicCounterIncrement_0F);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_atomicCounterDecrement_0F);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_atomicAdd_0D0D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_atomicAdd_0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_atomicMin_0D0D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_atomicMin_0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_atomicMax_0D0D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_atomicMax_0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_atomicAnd_0D0D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_atomicAnd_0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_atomicOr_0D0D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_atomicOr_0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_atomicXor_0D0D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_atomicXor_0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_atomicExchange_0D0D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_atomicExchange_0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_atomicCompSwap_0D0D0D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_atomicCompSwap_0C0C0C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageSize_0c);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageSize_0d);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageSize_0e);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageSize_0f);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageSize_0g);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageSize_0h);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageSize_0i);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageSize_0j);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageSize_0k);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageSize_0l);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageSize_0m);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageSize_0n);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageLoad_0c1C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageLoad_0d1C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageLoad_0e1C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageLoad_0f2C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageLoad_0g2C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageLoad_0h2C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageLoad_0i2C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageLoad_0j2C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageLoad_0k2C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageLoad_0l2C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageLoad_0m2C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageLoad_0n2C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageStore_0c1C3B);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageStore_0d1C3C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageStore_0e1C3D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageStore_0f2C3B);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageStore_0g2C3C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageStore_0h2C3D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageStore_0i2C3B);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageStore_0j2C3C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageStore_0k2C3D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageStore_0l2C3B);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageStore_0m2C3C);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_imageStore_0n2C3D);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_memoryBarrier_);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_memoryBarrierAtomicCounter_);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_memoryBarrierBuffer_);
    insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_memoryBarrierImage_);
    if (shaderType == GL_FRAGMENT_SHADER)
    {
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_texture2D_0H1B0B);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_texture2DProj_0H2B0B);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_texture2DProj_0H3B0B);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_textureCube_0J2B0B);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_dFdxExt_0B);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_dFdxExt_1B);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_dFdxExt_2B);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_dFdxExt_3B);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_dFdyExt_0B);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_dFdyExt_1B);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_dFdyExt_2B);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_dFdyExt_3B);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_fwidthExt_0B);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_fwidthExt_1B);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_fwidthExt_2B);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_fwidthExt_3B);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_texture2DLodEXT_0H1B0B);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_texture2DProjLodEXT_0H2B0B);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_texture2DProjLodEXT_0H3B0B);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_textureCubeLodEXT_0J2B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureOffset_0H1B1C0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureOffset_0P1B1C0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureOffset_0U1B1C0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureOffset_0I2B2C0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureOffset_0Q2B2C0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureOffset_0V2B2C0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureOffset_0Z2B1C0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureOffset_0K2B1C0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureOffset_0S2B1C0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureOffset_0X2B1C0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjOffset_0H2B1C0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjOffset_0P2B1C0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjOffset_0U2B1C0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjOffset_0H3B1C0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjOffset_0P3B1C0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjOffset_0U3B1C0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjOffset_0I3B2C0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjOffset_0Q3B2C0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjOffset_0V3B2C0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProjOffset_0Z3B1C0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0H1B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0P1B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0U1B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0I2B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0Q2B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0V2B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0J2B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0R2B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0W2B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0K2B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0S2B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0X2B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0H2B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0P2B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0U2B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0H3B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0P3B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0U3B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0I3B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0Q3B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0V3B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0Z2B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0a3B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0Z3B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0L1B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0L2B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0L3B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_texture_0M1B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0M2B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_textureProj_0M3B0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_dFdx_0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_dFdx_1B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_dFdx_2B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_dFdx_3B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_dFdy_0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_dFdy_1B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_dFdy_2B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_dFdy_3B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_fwidth_0B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_fwidth_1B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_fwidth_2B);
        insertBuiltIn(ESSL3_BUILTINS, &BuiltInFunction::kFunction_fwidth_3B);
    }
    if (shaderType == GL_VERTEX_SHADER)
    {
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_texture2DLod_0H1B0B);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_texture2DProjLod_0H2B0B);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_texture2DProjLod_0H3B0B);
        insertBuiltIn(ESSL1_BUILTINS, &BuiltInFunction::kFunction_textureCubeLod_0J2B0B);
    }
    if (shaderType == GL_COMPUTE_SHADER)
    {
        insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_barrier_);
        insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_memoryBarrierShared_);
        insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_groupMemoryBarrier_);
    }
    if (shaderType == GL_GEOMETRY_SHADER_EXT)
    {
        insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_EmitVertex_);
        insertBuiltIn(ESSL3_1_BUILTINS, &BuiltInFunction::kFunction_EndPrimitive_);
    }
}

const UnmangledBuiltIn *TSymbolTable::getUnmangledBuiltInForShaderVersion(
    const ImmutableString &name,
    int shaderVersion)
{
    uint32_t nameHash = name.hash32();
    if (shaderVersion >= 310)
    {
        switch (nameHash)
        {
            case 0x26813a3u:
            {
                if (name == BuiltInName::atomicAdd)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x1150d92eu:
            {
                if (name == BuiltInName::atomicMax)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x23647d3cu:
            {
                if (name == BuiltInName::atomicMin)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x2568837fu:
            {
                if (name == BuiltInName::bitCount)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x310cbdf3u:
            {
                if (name == BuiltInName::findLSB)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x33b8cbf8u:
            {
                if (name == BuiltInName::unpackUnorm4x8)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x3815d075u:
            {
                if (name == BuiltInName::memoryBarrier)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x44a612d1u:
            {
                if (name == BuiltInName::texelFetch)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x493c8c52u:
            {
                if (name == BuiltInName::imageLoad)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x4d4a19b5u:
            {
                if (name == BuiltInName::packSnorm4x8)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x4dafa4aau:
            {
                if (name == BuiltInName::memoryBarrierImage)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x4f0e8e9bu:
            {
                if (name == BuiltInName::imageStore)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x55fde64fu:
            {
                if (name == BuiltInName::imulExtended)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x666490f9u:
            {
                if (name == BuiltInName::atomicCounterIncrement)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x6ef2b1c3u:
            {
                if (name == BuiltInName::imageSize)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x6fdf21cbu:
            {
                if (name == BuiltInName::memoryBarrierBuffer)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x7ba9e270u:
            {
                if (name == BuiltInName::findMSB)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x7c07f1eeu:
            {
                if (name == BuiltInName::unpackSnorm4x8)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x8c63f160u:
            {
                if (name == BuiltInName::ldexp)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xa30cdef4u:
            {
                if (name == BuiltInName::frexp)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xa3a03233u:
            {
                if (name == BuiltInName::textureGather)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xae0f4e53u:
            {
                if (name == BuiltInName::packUnorm4x8)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xb24338c0u:
            {
                if (name == BuiltInName::textureGatherOffset)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xb5e7ff54u:
            {
                if (name == BuiltInName::memoryBarrierAtomicCounter)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xb82cbfe3u:
            {
                if (name == BuiltInName::usubBorrow)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xb94d85ddu:
            {
                if (name == BuiltInName::atomicExchange)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xbfd854b5u:
            {
                if (name == BuiltInName::atomicXor)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xc1e02fa4u:
            {
                if (name == BuiltInName::atomicCounter)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xca0f40eeu:
            {
                if (name == BuiltInName::uaddCarry)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xd2b1c53du:
            {
                if (name == BuiltInName::atomicOr)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xd651bc5du:
            {
                if (name == BuiltInName::atomicCounterDecrement)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xe5c5029au:
            {
                if (name == BuiltInName::bitfieldReverse)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xe676f219u:
            {
                if (name == BuiltInName::atomicAnd)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xebfef903u:
            {
                if (name == BuiltInName::umulExtended)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xf3bd9210u:
            {
                if (name == BuiltInName::atomicCompSwap)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xf50788fdu:
            {
                if (name == BuiltInName::bitfieldExtract)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xf81301b9u:
            {
                if (name == BuiltInName::bitfieldInsert)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
        }
        if (mShaderType == GL_COMPUTE_SHADER)
        {
            switch (nameHash)
            {
                case 0x3d693fa0u:
                {
                    if (name == BuiltInName::barrier)
                    {
                        return &UnmangledBuiltIns::UNDEFINED;
                    }
                    break;
                }
                case 0x7afaf16eu:
                {
                    if (name == BuiltInName::groupMemoryBarrier)
                    {
                        return &UnmangledBuiltIns::UNDEFINED;
                    }
                    break;
                }
                case 0xe85fa9e4u:
                {
                    if (name == BuiltInName::memoryBarrierShared)
                    {
                        return &UnmangledBuiltIns::UNDEFINED;
                    }
                    break;
                }
            }
        }
        if (mShaderType == GL_GEOMETRY_SHADER_EXT)
        {
            switch (nameHash)
            {
                case 0xb413b257u:
                {
                    if (name == BuiltInName::EndPrimitive)
                    {
                        return &UnmangledBuiltIns::EXT_geometry_shader;
                    }
                    break;
                }
                case 0xb5d34358u:
                {
                    if (name == BuiltInName::EmitVertex)
                    {
                        return &UnmangledBuiltIns::EXT_geometry_shader;
                    }
                    break;
                }
            }
        }
    }
    if (shaderVersion >= 300)
    {
        switch (nameHash)
        {
            case 0x23feff3u:
            {
                if (name == BuiltInName::textureLod)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x4644cdeu:
            {
                if (name == BuiltInName::greaterThan)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x491f109u:
            {
                if (name == BuiltInName::lessThanEqual)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x5fc75c3u:
            {
                if (name == BuiltInName::lessThan)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x7275075u:
            {
                if (name == BuiltInName::atanh)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x92855d0u:
            {
                if (name == BuiltInName::tanh)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xcbc8ba4u:
            {
                if (name == BuiltInName::sign)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x10d2583fu:
            {
                if (name == BuiltInName::sinh)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x12b2640eu:
            {
                if (name == BuiltInName::texelFetchOffset)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x1535b7a5u:
            {
                if (name == BuiltInName::textureProjLodOffset)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x2485bbbeu:
            {
                if (name == BuiltInName::notEqual)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x25680679u:
            {
                if (name == BuiltInName::unpackUnorm2x16)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x26ac11d8u:
            {
                if (name == BuiltInName::isinf)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x28cedbc3u:
            {
                if (name == BuiltInName::unpackHalf2x16)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x2a48023bu:
            {
                if (name == BuiltInName::abs)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x2f7508efu:
            {
                if (name == BuiltInName::equal)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x33a56e6cu:
            {
                if (name == BuiltInName::textureGrad)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x39d34980u:
            {
                if (name == BuiltInName::textureLodOffset)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x3c6468f4u:
            {
                if (name == BuiltInName::texture)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x4326f80au:
            {
                if (name == BuiltInName::packSnorm2x16)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x44a612d1u:
            {
                if (name == BuiltInName::texelFetch)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x4f0be23bu:
            {
                if (name == BuiltInName::round)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x5bd36438u:
            {
                if (name == BuiltInName::packHalf2x16)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x6b0ca057u:
            {
                if (name == BuiltInName::textureGradOffset)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x6e02ba1bu:
            {
                if (name == BuiltInName::unpackSnorm2x16)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x6ff78d04u:
            {
                if (name == BuiltInName::packUnorm2x16)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x767e36c0u:
            {
                if (name == BuiltInName::determinant)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x7bf8de3bu:
            {
                if (name == BuiltInName::textureProjGrad)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x88c917cfu:
            {
                if (name == BuiltInName::textureOffset)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x8b45ed38u:
            {
                if (name == BuiltInName::textureProjGradOffset)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x8f8617abu:
            {
                if (name == BuiltInName::outerProduct)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x94b08f7fu:
            {
                if (name == BuiltInName::textureProj)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xa4639127u:
            {
                if (name == BuiltInName::roundEven)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xa5212424u:
            {
                if (name == BuiltInName::textureProjOffset)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xa6789406u:
            {
                if (name == BuiltInName::rgb_2_yuv)
                {
                    return &UnmangledBuiltIns::EXT_YUV_target;
                }
                break;
            }
            case 0xa82efcbcu:
            {
                if (name == BuiltInName::clamp)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xb15a3cc9u:
            {
                if (name == BuiltInName::floatBitsToInt)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xb1b3c06au:
            {
                if (name == BuiltInName::isnan)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xb201f283u:
            {
                if (name == BuiltInName::inverse)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xb755b482u:
            {
                if (name == BuiltInName::textureProjLod)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xbab19e4au:
            {
                if (name == BuiltInName::asinh)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xc03183c0u:
            {
                if (name == BuiltInName::transpose)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xc29ffa7eu:
            {
                if (name == BuiltInName::uintBitsToFloat)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xc73e788du:
            {
                if (name == BuiltInName::textureSize)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xc7818fa2u:
            {
                if (name == BuiltInName::yuv_2_rgb)
                {
                    return &UnmangledBuiltIns::EXT_YUV_target;
                }
                break;
            }
            case 0xc8575388u:
            {
                if (name == BuiltInName::floatBitsToUint)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xc98f4557u:
            {
                if (name == BuiltInName::min)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xd55e61e5u:
            {
                if (name == BuiltInName::trunc)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xd5f05125u:
            {
                if (name == BuiltInName::matrixCompMult)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xd78f5b61u:
            {
                if (name == BuiltInName::mix)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xd7a2e319u:
            {
                if (name == BuiltInName::max)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xeb6ede7fu:
            {
                if (name == BuiltInName::modf)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xed7dc722u:
            {
                if (name == BuiltInName::greaterThanEqual)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xedf2c855u:
            {
                if (name == BuiltInName::acosh)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xf45c461cu:
            {
                if (name == BuiltInName::cosh)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xfc501e17u:
            {
                if (name == BuiltInName::intBitsToFloat)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
        }
        if (mShaderType == GL_FRAGMENT_SHADER)
        {
            switch (nameHash)
            {
                case 0x4b6e55d3u:
                {
                    if (name == BuiltInName::fwidth)
                    {
                        return &UnmangledBuiltIns::UNDEFINED;
                    }
                    break;
                }
                case 0xc78598f8u:
                {
                    if (name == BuiltInName::dFdy)
                    {
                        return &UnmangledBuiltIns::UNDEFINED;
                    }
                    break;
                }
                case 0xc8859a8bu:
                {
                    if (name == BuiltInName::dFdx)
                    {
                        return &UnmangledBuiltIns::UNDEFINED;
                    }
                    break;
                }
            }
        }
    }
    if (shaderVersion == 100)
    {
        switch (nameHash)
        {
            case 0x18a9c042u:
            {
                if (name == BuiltInName::texture2D)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0x1d18f29cu:
            {
                if (name == BuiltInName::textureCubeGradEXT)
                {
                    return &UnmangledBuiltIns::EXT_shader_texture_lod;
                }
                break;
            }
            case 0x3d4abf10u:
            {
                if (name == BuiltInName::texture2DRect)
                {
                    return &UnmangledBuiltIns::ARB_texture_rectangle;
                }
                break;
            }
            case 0x4040698cu:
            {
                if (name == BuiltInName::texture2DProjGradEXT)
                {
                    return &UnmangledBuiltIns::EXT_shader_texture_lod;
                }
                break;
            }
            case 0x6dc0e8e3u:
            {
                if (name == BuiltInName::texture2DRectProj)
                {
                    return &UnmangledBuiltIns::ARB_texture_rectangle;
                }
                break;
            }
            case 0xc7cb8969u:
            {
                if (name == BuiltInName::texture2DProj)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
            case 0xd1836639u:
            {
                if (name == BuiltInName::texture2DGradEXT)
                {
                    return &UnmangledBuiltIns::EXT_shader_texture_lod;
                }
                break;
            }
            case 0xfece2a39u:
            {
                if (name == BuiltInName::textureCube)
                {
                    return &UnmangledBuiltIns::UNDEFINED;
                }
                break;
            }
        }
        if (mShaderType == GL_FRAGMENT_SHADER)
        {
            switch (nameHash)
            {
                case 0x4b6e55d3u:
                {
                    if (name == BuiltInName::fwidthExt)
                    {
                        return &UnmangledBuiltIns::OES_standard_derivatives;
                    }
                    break;
                }
                case 0x7150ceb8u:
                {
                    if (name == BuiltInName::texture2DLodEXT)
                    {
                        return &UnmangledBuiltIns::EXT_shader_texture_lod;
                    }
                    break;
                }
                case 0x7309b987u:
                {
                    if (name == BuiltInName::textureCubeLodEXT)
                    {
                        return &UnmangledBuiltIns::EXT_shader_texture_lod;
                    }
                    break;
                }
                case 0xbacaedf7u:
                {
                    if (name == BuiltInName::texture2DProjLodEXT)
                    {
                        return &UnmangledBuiltIns::EXT_shader_texture_lod;
                    }
                    break;
                }
                case 0xc78598f8u:
                {
                    if (name == BuiltInName::dFdyExt)
                    {
                        return &UnmangledBuiltIns::OES_standard_derivatives;
                    }
                    break;
                }
                case 0xc8859a8bu:
                {
                    if (name == BuiltInName::dFdxExt)
                    {
                        return &UnmangledBuiltIns::OES_standard_derivatives;
                    }
                    break;
                }
            }
        }
        if (mShaderType == GL_VERTEX_SHADER)
        {
            switch (nameHash)
            {
                case 0x30ed9cfcu:
                {
                    if (name == BuiltInName::texture2DProjLod)
                    {
                        return &UnmangledBuiltIns::UNDEFINED;
                    }
                    break;
                }
                case 0xb35e342cu:
                {
                    if (name == BuiltInName::textureCubeLod)
                    {
                        return &UnmangledBuiltIns::UNDEFINED;
                    }
                    break;
                }
                case 0xfa79f401u:
                {
                    if (name == BuiltInName::texture2DLod)
                    {
                        return &UnmangledBuiltIns::UNDEFINED;
                    }
                    break;
                }
            }
        }
    }
    switch (nameHash)
    {
        case 0x4644cdeu:
        {
            if (name == BuiltInName::greaterThan)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x491f109u:
        {
            if (name == BuiltInName::lessThanEqual)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x5fc75c3u:
        {
            if (name == BuiltInName::lessThan)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x66c705cu:
        {
            if (name == BuiltInName::refract)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x678cabfu:
        {
            if (name == BuiltInName::atan)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0xcbc8ba4u:
        {
            if (name == BuiltInName::sign)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x10031ed9u:
        {
            if (name == BuiltInName::log2)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x13254bc4u:
        {
            if (name == BuiltInName::all)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x2485bbbeu:
        {
            if (name == BuiltInName::notEqual)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x29b19c8au:
        {
            if (name == BuiltInName::notFunc)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x29f5189bu:
        {
            if (name == BuiltInName::cross)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x2a48023bu:
        {
            if (name == BuiltInName::abs)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x2c29f04du:
        {
            if (name == BuiltInName::any)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x2eb31462u:
        {
            if (name == BuiltInName::distance)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x2f7508efu:
        {
            if (name == BuiltInName::equal)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x3c01df1fu:
        {
            if (name == BuiltInName::acos)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x3f515151u:
        {
            if (name == BuiltInName::log)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x58336ad5u:
        {
            if (name == BuiltInName::pow)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x5fd55fe1u:
        {
            if (name == BuiltInName::faceforward)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x62e4e208u:
        {
            if (name == BuiltInName::ceil)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x72a68728u:
        {
            if (name == BuiltInName::exp)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x7dee3bcfu:
        {
            if (name == BuiltInName::sqrt)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x83d03615u:
        {
            if (name == BuiltInName::length)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x856a57e1u:
        {
            if (name == BuiltInName::radians)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x92c778aau:
        {
            if (name == BuiltInName::reflect)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x95964e7du:
        {
            if (name == BuiltInName::smoothstep)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x9626adeeu:
        {
            if (name == BuiltInName::exp2)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0x9cf73498u:
        {
            if (name == BuiltInName::tan)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0xa82efcbcu:
        {
            if (name == BuiltInName::clamp)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0xaf5442eeu:
        {
            if (name == BuiltInName::degrees)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0xb8e70c1du:
        {
            if (name == BuiltInName::floor)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0xc7441a0fu:
        {
            if (name == BuiltInName::step)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0xc98f4557u:
        {
            if (name == BuiltInName::min)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0xce79296cu:
        {
            if (name == BuiltInName::normalize)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0xd3689f20u:
        {
            if (name == BuiltInName::dot)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0xd5f05125u:
        {
            if (name == BuiltInName::matrixCompMult)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0xd78f5b61u:
        {
            if (name == BuiltInName::mix)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0xd7a2e319u:
        {
            if (name == BuiltInName::max)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0xdf9e7283u:
        {
            if (name == BuiltInName::mod)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0xe0302a4du:
        {
            if (name == BuiltInName::sin)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0xe8b548a5u:
        {
            if (name == BuiltInName::inversesqrt)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0xed7dc722u:
        {
            if (name == BuiltInName::greaterThanEqual)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0xeef29a67u:
        {
            if (name == BuiltInName::fract)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0xfb8de29cu:
        {
            if (name == BuiltInName::cos)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
        case 0xfeae7ea6u:
        {
            if (name == BuiltInName::asin)
            {
                return &UnmangledBuiltIns::UNDEFINED;
            }
            break;
        }
    }
    return nullptr;
}

}  // namespace sh
